Changes in directory llvm/lib/Target/ARM:

ARMISelDAGToDAG.cpp updated: 1.89 -> 1.90
---
Log message:

don't use "ordinary" addressing mode 1 when mvn is appropriate


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

 ARMISelDAGToDAG.cpp |    2 ++
 1 files changed, 2 insertions(+)


Index: llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp
diff -u llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp:1.89 
llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp:1.90
--- llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp:1.89        Mon Dec 11 19:03:11 2006
+++ llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp     Tue Dec 12 08:03:29 2006
@@ -849,6 +849,8 @@
   case ISD::Constant: {
     uint32_t val = cast<ConstantSDNode>(N)->getValue();
     if(!isRotInt8Immediate(val)) {
+      if (isRotInt8Immediate(~val))
+        return false; //use MVN
       Constant    *C = ConstantInt::get(Type::UIntTy, val);
       int  alignment = 2;
       SDOperand Addr = CurDAG->getTargetConstantPool(C, MVT::i32, alignment);



_______________________________________________
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits

Reply via email to