Should never see an indexed load / store with zero offset.

llvm-svn: 36714
This commit is contained in:
Evan Cheng 2007-05-03 23:30:36 +00:00
parent 3fbb18d1b6
commit 23040754b0
1 changed files with 7 additions and 5 deletions

View File

@ -433,10 +433,11 @@ void ARMAsmPrinter::printAddrMode2OffsetOperand(const MachineInstr *MI, int Op){
const MachineOperand &MO2 = MI->getOperand(Op+1); const MachineOperand &MO2 = MI->getOperand(Op+1);
if (!MO1.getReg()) { if (!MO1.getReg()) {
if (ARM_AM::getAM2Offset(MO2.getImm())) // Don't print +0. unsigned ImmOffs = ARM_AM::getAM2Offset(MO2.getImm());
O << "#" assert(ImmOffs && "Malformed indexed load / store!");
<< (char)ARM_AM::getAM2Op(MO2.getImm()) O << "#"
<< ARM_AM::getAM2Offset(MO2.getImm()); << (char)ARM_AM::getAM2Op(MO2.getImm())
<< ImmOffs;
return; return;
} }
@ -483,8 +484,9 @@ void ARMAsmPrinter::printAddrMode3OffsetOperand(const MachineInstr *MI, int Op){
} }
unsigned ImmOffs = ARM_AM::getAM3Offset(MO2.getImm()); unsigned ImmOffs = ARM_AM::getAM3Offset(MO2.getImm());
assert(ImmOffs && "Malformed indexed load / store!");
O << "#" O << "#"
<< (char)ARM_AM::getAM3Op(MO2.getImm()) << (char)ARM_AM::getAM3Op(MO2.getImm())
<< ImmOffs; << ImmOffs;
} }