- Sep 07, 2013
-
-
Akira Hatanaka authored
precision loads and stores as well as reg+imm double precision loads and stores. Previously, expansion of loads and stores was done after register allocation, but now it takes place during legalization. As a result, users will see double precision stores and loads being emitted to spill and restore 64-bit FP registers. llvm-svn: 190235
-
Akira Hatanaka authored
llvm-svn: 190234
-
Akira Hatanaka authored
llvm-svn: 190232
-
Akira Hatanaka authored
into a 5-bit or 6-bit field. llvm-svn: 190226
-
Akira Hatanaka authored
llvm-svn: 190224
-
Akira Hatanaka authored
llvm-svn: 190221
-
Akira Hatanaka authored
equivalent to "beq $zero, $zero, offset". llvm-svn: 190220
-
Akira Hatanaka authored
llvm-svn: 190219
-
- Sep 06, 2013
-
-
Daniel Sanders authored
llvm-svn: 190156
-
Daniel Sanders authored
Tested with 'llvm-tblgen -print-records' which outputs identical records before and after this patch. llvm-svn: 190155
-
Vladimir Medic authored
This patch adds support for microMIPS Multiply and Add/Sub instructions. Test cases are included in patch. llvm-svn: 190154
-
Daniel Sanders authored
Their default is to be the same as the result register set. No functional change llvm-svn: 190153
-
Vladimir Medic authored
This patch adds support for microMIPS Move to/from HI/LO instructions. Test cases are included in patch. llvm-svn: 190152
-
Daniel Sanders authored
Their default is to be the same as the result register set. No functional change llvm-svn: 190151
-
Daniel Sanders authored
Their default is to be the same as the result register set. No functional change llvm-svn: 190150
-
Vladimir Medic authored
This patch adds support for microMIPS Move Conditional instructions. Test cases are included in patch. llvm-svn: 190148
-
Daniel Sanders authored
Their default is to be the same as the result register set. No functional change llvm-svn: 190146
-
Daniel Sanders authored
Their default is to be the same as the result register set. No functional change llvm-svn: 190145
-
Vladimir Medic authored
llvm-svn: 190144
-
Daniel Sanders authored
Their default is to be the same as the result register set. No functional change llvm-svn: 190143
-
Daniel Sanders authored
Their default is to be the same as the result register set. No functional change llvm-svn: 190142
-
Daniel Sanders authored
Their default is to be the same as the result register set. No functional change llvm-svn: 190141
-
Daniel Sanders authored
Their default is to be the same as the result register set. No functional change llvm-svn: 190140
-
Daniel Sanders authored
No functional change llvm-svn: 190134
-
Daniel Sanders authored
Their default is to be the same as the result register set. No functional change llvm-svn: 190133
-
Daniel Sanders authored
No functional change llvm-svn: 190131
-
- Sep 01, 2013
-
-
Reed Kotler authored
don't exist in libc. This is really not the right way to solve this problem; but it's not clear to me at this time exactly what is the right way. If we create stubs here, they will cause link errors because these functions do not exist in libc. llvm-svn: 189727
-
- Aug 30, 2013
-
-
Reed Kotler authored
has hard float, when you compile the mips32 code you have to make sure that it knows to compile any mips32 routines as hard float. I need to clean up the way mips16 hard float is specified but I need to first think through all the details. Mips16 always has a form of soft float, the difference being whether the underlying hardware has floating point. So it's not really necessary to pass the -soft-float to llvm since soft-float is always true for mips16 by virtue of the fact that it will not register floating point registers. By using this fact, I can simplify the way this is all handled. llvm-svn: 189690
-
- Aug 28, 2013
-
-
Daniel Sanders authored
These intrinsics are legalized to V(ALL|ANY)_(NON)?ZERO nodes, are matched as SN?Z_[BHWDV]_PSEUDO pseudo's, and emitted as a branch/mov sequence to evaluate to 0 or 1. Note: The resulting code is sub-optimal since it doesnt seem to be possible to feed the result of an intrinsic directly into a brcond. At the moment it uses (SETCC (VALL_ZERO $ws), 0, SETEQ) and similar which unnecessarily evaluates the boolean twice. llvm-svn: 189478
-
Daniel Sanders authored
llvm-svn: 189476
-
Daniel Sanders authored
llvm-svn: 189471
-
Daniel Sanders authored
The MSA control registers have been added as reserved registers, and are only used via ISD::Copy(To|From)Reg. The intrinsics are lowered into these nodes. llvm-svn: 189468
-
Daniel Sanders authored
[mips][msa] Added f[cs]af, f[cs]or, f[cs]ueq, f[cs]ul[et], f[cs]une, fsun, ftrunc_[su], hadd_[su], hsub_[su], sr[al]r, sr[al]ri llvm-svn: 189467
-
Akira Hatanaka authored
Also, fix predicates. llvm-svn: 189432
-
Akira Hatanaka authored
No functionality change. llvm-svn: 189431
-
Akira Hatanaka authored
llvm-svn: 189430
-
- Aug 27, 2013
-
-
Jack Carter authored
llvm-svn: 189396
-
Daniel Sanders authored
llvm-svn: 189332
-
Daniel Sanders authored
llvm-svn: 189330
-
- Aug 26, 2013
-
-
Vladimir Medic authored
llvm-svn: 189213
-