[llvm-commits] CVS: llvm/lib/Target/ARM/ARMISelLowering.cpp

Chris Lattner sabre at nondot.org
Thu Apr 12 23:51:12 PDT 2007



Changes in directory llvm/lib/Target/ARM:

ARMISelLowering.cpp updated: 1.43 -> 1.44
---
Log message:

arm has r+r*s and r+i addr modes, but no r+i+r*s addr modes.


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

 ARMISelLowering.cpp |    6 +++++-
 1 files changed, 5 insertions(+), 1 deletion(-)


Index: llvm/lib/Target/ARM/ARMISelLowering.cpp
diff -u llvm/lib/Target/ARM/ARMISelLowering.cpp:1.43 llvm/lib/Target/ARM/ARMISelLowering.cpp:1.44
--- llvm/lib/Target/ARM/ARMISelLowering.cpp:1.43	Wed Apr 11 11:17:12 2007
+++ llvm/lib/Target/ARM/ARMISelLowering.cpp	Fri Apr 13 01:50:55 2007
@@ -1370,8 +1370,12 @@
   case 1:
     if (Subtarget->isThumb())
       return false;
-
+    // FALL THROUGH.
   default:
+    // ARM doesn't support any R+R*scale+imm addr modes.
+    if (AM.BaseOffs)
+      return false;
+    
     int Scale = AM.Scale;
     switch (getValueType(Ty)) {
     default: return false;






More information about the llvm-commits mailing list