- May 16, 2013
-
-
Akira Hatanaka authored
invalid instruction sequence. Rather than emitting an int-to-FP move instruction and an int-to-FP conversion instruction during instruction selection, we emit a pseudo instruction which gets expanded post-RA. Without this change, register allocation can possibly insert a floating point register move instruction between the two instructions, which is not valid according to the ISA manual. mtc1 $f4, $4 # int-to-fp move instruction. mov.s $f2, $f4 # move contents of $f4 to $f2. cvt.s.w $f0, $f2 # int-to-fp conversion. llvm-svn: 182042
-
Akira Hatanaka authored
llvm-svn: 182036
-
- May 13, 2013
-
-
Akira Hatanaka authored
This option is used when the user wants to avoid emitting double precision FP loads and stores. Double precision FP loads and stores are expanded to single precision instructions after register allocation. llvm-svn: 181718
-
- Mar 30, 2013
-
-
Akira Hatanaka authored
llvm-svn: 178407
-
- Feb 15, 2013
-
-
Akira Hatanaka authored
functions. Set AddedComplexity to determine the order in which patterns are matched. This simplifies selection of floating point loads/stores. No functionality change intended. llvm-svn: 175300
-
- Jan 25, 2013
-
-
Akira Hatanaka authored
llvm-svn: 173401
-
- Jan 12, 2013
-
-
Jack Carter authored
register names in the standalone assembler llvm-mc. Registers such as $A1 can represent either a 32 or 64 bit register based on the instruction using it. In addition, based on the abi, $T0 can represent different 32 bit registers. The problem is resolved by the Mips specific AsmParser td definitions changing to work together. Many cases of RegisterClass parameters are now RegisterOperand. Contributer: Vladimir Medic llvm-svn: 172284
-
- Dec 20, 2012
-
-
Akira Hatanaka authored
parameter. llvm-svn: 170661
-
- Dec 13, 2012
-
-
Akira Hatanaka authored
No functionality change. llvm-svn: 170084
-
Akira Hatanaka authored
No functionality change. llvm-svn: 170077
-
Akira Hatanaka authored
No functionality change. llvm-svn: 170076
-
Akira Hatanaka authored
No functionality change. llvm-svn: 170075
-
Akira Hatanaka authored
No functionality change. llvm-svn: 170073
-
Akira Hatanaka authored
No functionality change. llvm-svn: 170072
-
Akira Hatanaka authored
No functionality change. llvm-svn: 170071
-
Akira Hatanaka authored
No functionality change. llvm-svn: 170069
-
Akira Hatanaka authored
and separate encoding information from the rest. llvm-svn: 170066
-
Akira Hatanaka authored
MipsInstrFPU.td. llvm-svn: 170061
-
Akira Hatanaka authored
llvm-svn: 170060
-
Akira Hatanaka authored
llvm-svn: 170057
-
Akira Hatanaka authored
FFR2P_M. llvm-svn: 170055
-
Akira Hatanaka authored
FFR1_W_M and FFR1P_M. The new instruction definitions have one-to-one correspondence with the instructions in the ISA manual. llvm-svn: 170053
-
- Dec 07, 2012
-
-
Akira Hatanaka authored
llvm-svn: 169579
-
- Nov 15, 2012
-
-
Akira Hatanaka authored
support and use it in place of HasMips32r2Or64. llvm-svn: 168089
-
- Nov 03, 2012
-
-
Akira Hatanaka authored
instructions. llvm-svn: 167348
-
- Sep 15, 2012
-
-
Akira Hatanaka authored
use load/store fragments defined in TargetSelectionDAG.td in place of them. Unaligned loads/stores are either expanded or lowered to target-specific nodes, so instruction selection should see only aligned load/store nodes. No changes in functionality. llvm-svn: 163960
-
- Aug 17, 2012
-
-
Akira Hatanaka authored
Patch by Vladimir Medic. llvm-svn: 162124
-
- Jul 31, 2012
-
-
Akira Hatanaka authored
or not it is in mips16 mode. Define MipsPseudo (mode-independant pseudo) and PseudoSE (mips32/64 pseudo) classes. llvm-svn: 161071
-
Akira Hatanaka authored
single-precision load and store. Also avoid selecting LUXC1 and SUXC1 instructions during isel. It is incorrect to map unaligned floating point load/store nodes to these instructions. llvm-svn: 161063
-
- Jun 14, 2012
-
-
Akira Hatanaka authored
being used by Mips16 or Micro Mips 2. clean up a few lines too long encountered Patch by Reed Kotler. llvm-svn: 158470
-
- May 22, 2012
-
-
Akira Hatanaka authored
instruction encodings can be excluded during mips16 processing. This revision fixes the issue raised by Jim Grosbach. bool hasStandardEncoding() const { return !inMips16Mode(); } When micromips is added it will be bool StandardEncoding() const { return !inMips16Mode()&& !inMicroMipsMode(); } No additional testing is needed other than to assure that there is no regression from this patch. Patch by Reed Kotler. llvm-svn: 157234
-
- Apr 17, 2012
-
-
Akira Hatanaka authored
Patch by Vladimir Medic. llvm-svn: 154935
-
- Apr 12, 2012
-
-
Akira Hatanaka authored
otherwise expand FNEG during legalization. llvm-svn: 154546
-
Akira Hatanaka authored
Invalid operation is signaled if the operand of these instructions is NaN. llvm-svn: 154545
-
- Apr 03, 2012
-
-
Akira Hatanaka authored
llvm-svn: 153925
-
Akira Hatanaka authored
Patch by Vladimir Medic. llvm-svn: 153924
-
- Mar 01, 2012
-
-
Akira Hatanaka authored
and stores was added. - SelectAddr should return false if Parent is an unaligned f32 load or store. - Only aligned load and store nodes should be matched to select reg+imm floating point instructions. - MIPS does not have support for f64 unaligned load or store instructions. llvm-svn: 151843
-
- Feb 28, 2012
-
-
Jia Liu authored
llvm-svn: 151625
-
Akira Hatanaka authored
load and store instructions. llvm-svn: 151611
-
- Feb 27, 2012
-
-
Akira Hatanaka authored
llvm-svn: 151540
-