[llvm-commits] [llvm] r54315 - in /llvm/trunk/lib/Target/Mips: MipsISelLowering.cpp MipsInstrFPU.td

Bruno Cardoso Lopes bruno.cardoso at gmail.com
Sun Aug 3 23:44:33 PDT 2008


Author: bruno
Date: Mon Aug  4 01:44:31 2008
New Revision: 54315

URL: http://llvm.org/viewvc/llvm-project?rev=54315&view=rev
Log:
Handle i32->f32 bitconvert results.

Modified:
    llvm/trunk/lib/Target/Mips/MipsISelLowering.cpp
    llvm/trunk/lib/Target/Mips/MipsInstrFPU.td

Modified: llvm/trunk/lib/Target/Mips/MipsISelLowering.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Mips/MipsISelLowering.cpp?rev=54315&r1=54314&r2=54315&view=diff

==============================================================================
--- llvm/trunk/lib/Target/Mips/MipsISelLowering.cpp (original)
+++ llvm/trunk/lib/Target/Mips/MipsISelLowering.cpp Mon Aug  4 01:44:31 2008
@@ -138,7 +138,7 @@
   setOperationAction(ISD::STACKRESTORE,      MVT::Other, Expand);
   setOperationAction(ISD::MEMBARRIER,        MVT::Other, Expand);
 
-  if (Subtarget->isSingleFloat()) 
+  if (Subtarget->isSingleFloat())
     setOperationAction(ISD::SELECT_CC, MVT::f64, Expand);
 
   if (!Subtarget->hasSEInReg()) {

Modified: llvm/trunk/lib/Target/Mips/MipsInstrFPU.td
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Mips/MipsInstrFPU.td?rev=54315&r1=54314&r2=54315&view=diff

==============================================================================
--- llvm/trunk/lib/Target/Mips/MipsInstrFPU.td (original)
+++ llvm/trunk/lib/Target/Mips/MipsInstrFPU.td Mon Aug  4 01:44:31 2008
@@ -339,3 +339,8 @@
 
 def : Pat<(i32 (bitconvert FGR32:$src)),  (MFC1 FGR32:$src)>;
 def : Pat<(i32 (bitconvert AFGR32:$src)), (MFC1A AFGR32:$src)>;
+
+def : Pat<(f32 (bitconvert CPURegs:$src)), (MTC1 CPURegs:$src)>,
+      Requires<[IsSingleFloat]>;
+def : Pat<(f32 (bitconvert CPURegs:$src)), (MTC1A CPURegs:$src)>,
+      Requires<[In32BitMode]>;





More information about the llvm-commits mailing list