[llvm-commits] [llvm] r161301 - /llvm/trunk/lib/Target/ARM/ARMAsmPrinter.cpp
Anton Korobeynikov
asl at math.spbu.ru
Sat Aug 4 06:25:58 PDT 2012
Author: asl
Date: Sat Aug 4 08:25:58 2012
New Revision: 161301
URL: http://llvm.org/viewvc/llvm-project?rev=161301&view=rev
Log:
Skip impdef regs during eabi save/restore list emission to workaround PR11902
Modified:
llvm/trunk/lib/Target/ARM/ARMAsmPrinter.cpp
Modified: llvm/trunk/lib/Target/ARM/ARMAsmPrinter.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/ARM/ARMAsmPrinter.cpp?rev=161301&r1=161300&r2=161301&view=diff
==============================================================================
--- llvm/trunk/lib/Target/ARM/ARMAsmPrinter.cpp (original)
+++ llvm/trunk/lib/Target/ARM/ARMAsmPrinter.cpp Sat Aug 4 08:25:58 2012
@@ -1136,8 +1136,14 @@
assert(SrcReg == ARM::SP &&
"Only stack pointer as a source reg is supported");
for (unsigned i = StartOp, NumOps = MI->getNumOperands() - NumOffset;
- i != NumOps; ++i)
- RegList.push_back(MI->getOperand(i).getReg());
+ i != NumOps; ++i) {
+ const MachineOperand &MO = MI->getOperand(i);
+ // Actually, there should never be any impdef stuff here. Skip it
+ // temporary to workaround PR11902.
+ if (MO.isImplicit())
+ continue;
+ RegList.push_back(MO.getReg());
+ }
break;
case ARM::STR_PRE_IMM:
case ARM::STR_PRE_REG:
More information about the llvm-commits
mailing list