aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEvan Cheng <evan.cheng@apple.com>2007-05-03 23:30:36 +0000
committerEvan Cheng <evan.cheng@apple.com>2007-05-03 23:30:36 +0000
commitbdc9869dbfa40579236405db73897a9fd19d1ed0 (patch)
treed63f750bd3635df037366d7165551fc93a4d3398
parent2acc7601650654d03cd53faeece8d7685a203105 (diff)
Should never see an indexed load / store with zero offset.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36714 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/Target/ARM/ARMAsmPrinter.cpp12
1 files changed, 7 insertions, 5 deletions
diff --git a/lib/Target/ARM/ARMAsmPrinter.cpp b/lib/Target/ARM/ARMAsmPrinter.cpp
index c35ef57c9c..9454fb717f 100644
--- a/lib/Target/ARM/ARMAsmPrinter.cpp
+++ b/lib/Target/ARM/ARMAsmPrinter.cpp
@@ -433,10 +433,11 @@ void ARMAsmPrinter::printAddrMode2OffsetOperand(const MachineInstr *MI, int Op){
const MachineOperand &MO2 = MI->getOperand(Op+1);
if (!MO1.getReg()) {
- if (ARM_AM::getAM2Offset(MO2.getImm())) // Don't print +0.
- O << "#"
- << (char)ARM_AM::getAM2Op(MO2.getImm())
- << ARM_AM::getAM2Offset(MO2.getImm());
+ unsigned ImmOffs = ARM_AM::getAM2Offset(MO2.getImm());
+ assert(ImmOffs && "Malformed indexed load / store!");
+ O << "#"
+ << (char)ARM_AM::getAM2Op(MO2.getImm())
+ << ImmOffs;
return;
}
@@ -483,8 +484,9 @@ void ARMAsmPrinter::printAddrMode3OffsetOperand(const MachineInstr *MI, int Op){
}
unsigned ImmOffs = ARM_AM::getAM3Offset(MO2.getImm());
+ assert(ImmOffs && "Malformed indexed load / store!");
O << "#"
- << (char)ARM_AM::getAM3Op(MO2.getImm())
+ << (char)ARM_AM::getAM3Op(MO2.getImm())
<< ImmOffs;
}