[llvm-commits] CVS: llvm/lib/Target/X86/X86ISelLowering.cpp

Chris Lattner sabre at nondot.org
Tue Dec 5 10:22:37 PST 2006



Changes in directory llvm/lib/Target/X86:

X86ISelLowering.cpp updated: 1.302 -> 1.303
---
Log message:

Fix PR1033: http://llvm.org/PR1033  and CodeGen/X86/bitcast.ll, by expanding bitcast to a load/store pair.
This could be better, readme entry pending.


---
Diffs of the changes:  (+5 -0)

 X86ISelLowering.cpp |    5 +++++
 1 files changed, 5 insertions(+)


Index: llvm/lib/Target/X86/X86ISelLowering.cpp
diff -u llvm/lib/Target/X86/X86ISelLowering.cpp:1.302 llvm/lib/Target/X86/X86ISelLowering.cpp:1.303
--- llvm/lib/Target/X86/X86ISelLowering.cpp:1.302	Tue Dec  5 11:29:40 2006
+++ llvm/lib/Target/X86/X86ISelLowering.cpp	Tue Dec  5 12:22:22 2006
@@ -144,8 +144,13 @@
       setOperationAction(ISD::FP_TO_UINT   , MVT::i32  , Promote);
   }
 
+  // TODO: when we have SSE, these could be more efficient, by using movd/movq.
   setOperationAction(ISD::BIT_CONVERT      , MVT::f32  , Expand);
   setOperationAction(ISD::BIT_CONVERT      , MVT::i32  , Expand);
+  if (Subtarget->is64Bit()) {
+    setOperationAction(ISD::BIT_CONVERT      , MVT::f64  , Expand);
+    setOperationAction(ISD::BIT_CONVERT      , MVT::i64  , Expand);
+  }
 
   setOperationAction(ISD::BR_JT            , MVT::Other, Expand);
   setOperationAction(ISD::BRCOND           , MVT::Other, Custom);






More information about the llvm-commits mailing list