Also set alignment of stack-based structs to 4 in thumb mode.
authorEvan Cheng <evan.cheng@apple.com>
Thu, 1 Feb 2007 02:18:36 +0000 (02:18 +0000)
committerEvan Cheng <evan.cheng@apple.com>
Thu, 1 Feb 2007 02:18:36 +0000 (02:18 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33741 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/ARM/ARMRegisterInfo.cpp
lib/Target/ARM/ARMTargetMachine.cpp

index 3b8dba3211b99c5e05deb8a269b02e1ddece3c10..9c9aef75990cc410b9874b056dfdbce683e28f75 100644 (file)
@@ -708,8 +708,7 @@ void ARMRegisterInfo::eliminateFrameIndex(MachineBasicBlock::iterator II) const{
     }
 
     Offset += InstrOffs * Scale;
-    assert((Scale == 1 || (Offset & (Scale-1)) == 0) &&
-           "Can't encode this offset!");
+    assert((Offset & (Scale-1)) == 0 && "Can't encode this offset!");
     if (Offset < 0) {
       Offset = -Offset;
       isSub = true;
index 41456ba73601cb132eec5c0b3141f12cd95bf750..0b7434872139fec6b3a56fcbed335ffb027eb53e 100644 (file)
@@ -35,12 +35,12 @@ namespace {
 ARMTargetMachine::ARMTargetMachine(const Module &M, const std::string &FS)
   : Subtarget(M, FS),
     DataLayout(Subtarget.isTargetDarwin() ?
-               (Subtarget.isThumb() ?
-                std::string("e-p:32:32-d:32:32-l:32:32-s:16:32-b:8:32-B:8:32") :
-                std::string("e-p:32:32-d:32:32-l:32:32")) :
-               (Subtarget.isThumb() ?
-                std::string("e-p:32:32-d:32:64-l:32:64-s:16:32-b:8:32-B:8:32") :
-                std::string("e-p:32:32-d:32:64-l:32:64"))),
+          (Subtarget.isThumb() ?
+           std::string("e-p:32:32-d:32:32-l:32:32-s:16:32-b:8:32-B:8:32-A:32") :
+           std::string("e-p:32:32-d:32:32-l:32:32")) :
+          (Subtarget.isThumb() ?
+           std::string("e-p:32:32-d:32:64-l:32:64-s:16:32-b:8:32-B:8:32-A:32") :
+           std::string("e-p:32:32-d:32:64-l:32:64"))),
     InstrInfo(Subtarget),
     FrameInfo(Subtarget) {}