[llvm-commits] CVS: llvm/lib/CodeGen/PrologEpilogInserter.cpp
Evan Cheng
evan.cheng at apple.com
Tue Feb 27 16:17:53 PST 2007
Changes in directory llvm/lib/CodeGen:
PrologEpilogInserter.cpp updated: 1.71 -> 1.72
---
Log message:
MRegisterInfo disowns RegScavenger. It's immutable.
---
Diffs of the changes: (+2 -2)
PrologEpilogInserter.cpp | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
Index: llvm/lib/CodeGen/PrologEpilogInserter.cpp
diff -u llvm/lib/CodeGen/PrologEpilogInserter.cpp:1.71 llvm/lib/CodeGen/PrologEpilogInserter.cpp:1.72
--- llvm/lib/CodeGen/PrologEpilogInserter.cpp:1.71 Tue Feb 27 15:10:33 2007
+++ llvm/lib/CodeGen/PrologEpilogInserter.cpp Tue Feb 27 18:17:36 2007
@@ -442,7 +442,7 @@
const TargetMachine &TM = Fn.getTarget();
assert(TM.getRegisterInfo() && "TM::getRegisterInfo() must be implemented!");
const MRegisterInfo &MRI = *TM.getRegisterInfo();
- RegScavenger *RS = MRI.getRegScavenger();
+ RegScavenger *RS = MRI.requiresRegisterScavenging() ? new RegScavenger():NULL;
for (MachineFunction::iterator BB = Fn.begin(), E = Fn.end(); BB != E; ++BB) {
if (RS) RS->reset(BB);
@@ -451,7 +451,7 @@
if (I->getOperand(i).isFrameIndex()) {
// If this instruction has a FrameIndex operand, we need to use that
// target machine register info object to eliminate it.
- MRI.eliminateFrameIndex(I);
+ MRI.eliminateFrameIndex(I, RS);
break;
}
// Update register states.
More information about the llvm-commits
mailing list