[llvm-commits] CVS: llvm/lib/CodeGen/PrologEpilogInserter.cpp
Chris Lattner
sabre at nondot.org
Sun Apr 8 17:46:27 PDT 2007
Changes in directory llvm/lib/CodeGen:
PrologEpilogInserter.cpp updated: 1.77 -> 1.78
---
Log message:
Fix CodeGen/Generic/2007-04-08-MultipleFrameIndices.ll and PR1308: http://llvm.org/PR1308 :
some instructions can have multiple frame indices in them. If this happens,
rewrite all of them.
---
Diffs of the changes: (+5 -1)
PrologEpilogInserter.cpp | 6 +++++-
1 files changed, 5 insertions(+), 1 deletion(-)
Index: llvm/lib/CodeGen/PrologEpilogInserter.cpp
diff -u llvm/lib/CodeGen/PrologEpilogInserter.cpp:1.77 llvm/lib/CodeGen/PrologEpilogInserter.cpp:1.78
--- llvm/lib/CodeGen/PrologEpilogInserter.cpp:1.77 Tue Mar 6 04:02:38 2007
+++ llvm/lib/CodeGen/PrologEpilogInserter.cpp Sun Apr 8 19:46:10 2007
@@ -504,7 +504,11 @@
// If this instruction has a FrameIndex operand, we need to use that
// target machine register info object to eliminate it.
MRI.eliminateFrameIndex(I, RS);
- break;
+
+ // Revisit the instruction in full. Some instructions (e.g. inline
+ // asm instructions) can have multiple frame indices.
+ e = I->getNumOperands();
+ i = -1U;
}
// Update register states.
if (RS) RS->forward(I);
More information about the llvm-commits
mailing list