- Jul 16, 2013
-
-
Vladimir Medic authored
This patch represents Mips utilization of r186388 code that alows asm matcher to emit mnemonics contain '.' characters. This makes asm parser code simpler and more efficient. llvm-svn: 186397
-
- Jul 02, 2013
-
-
Akira Hatanaka authored
floating point loads and stores. No changes in functionality. llvm-svn: 185399
-
- Jun 24, 2013
-
-
Vladimir Medic authored
This patch introduces RegisterOperand class into Mips FPU instruction definitions and adds dedicated parser methods to MipsAsmParser. It is the first in a series of patches that should fix the problems with parsing Mips FPU instructions and optimize the code in MipsAsmParser. llvm-svn: 184716
-
- May 16, 2013
-
-
Akira Hatanaka authored
Previously, three instructions were needed: trunc.w.s $f0, $f2 mfc1 $4, $f0 sw $4, 0($2) Now we need only two: trunc.w.s $f0, $f2 swc1 $f0, 0($2) llvm-svn: 182053
-
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
-