forked from OSchip/llvm-project
Fix FP elimination code to work for Thumb-2 addrmode AddrModeT2_so. This fixes SingleSource/Benchmarks/Stanford/Queens (among others).
llvm-svn: 75513
This commit is contained in:
parent
bf25a209dc
commit
160521095b
|
@ -1121,18 +1121,22 @@ eliminateFrameIndex(MachineBasicBlock::iterator II,
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case ARMII::AddrModeT2_i12: {
|
case ARMII::AddrModeT2_i12: {
|
||||||
ImmIdx = i+2;
|
ImmIdx = i+1;
|
||||||
InstrOffs = MI.getOperand(ImmIdx).getImm();
|
InstrOffs = MI.getOperand(ImmIdx).getImm();
|
||||||
NumBits = 12;
|
NumBits = 12;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case ARMII::AddrModeT2_so:
|
|
||||||
case ARMII::AddrModeT2_i8: {
|
case ARMII::AddrModeT2_i8: {
|
||||||
ImmIdx = i+2;
|
ImmIdx = i+1;
|
||||||
InstrOffs = MI.getOperand(ImmIdx).getImm();
|
InstrOffs = MI.getOperand(ImmIdx).getImm();
|
||||||
NumBits = 8;
|
NumBits = 8;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
case ARMII::AddrModeT2_so: {
|
||||||
|
ImmIdx = i+2;
|
||||||
|
InstrOffs = MI.getOperand(ImmIdx).getImm();
|
||||||
|
break;
|
||||||
|
}
|
||||||
default:
|
default:
|
||||||
LLVM_UNREACHABLE("Unsupported addressing mode!");
|
LLVM_UNREACHABLE("Unsupported addressing mode!");
|
||||||
break;
|
break;
|
||||||
|
|
Loading…
Reference in New Issue