[llvm-commits] CVS: llvm/lib/CodeGen/LiveIntervalAnalysis.cpp
Evan Cheng
evan.cheng at apple.com
Sun Feb 25 01:42:16 PST 2007
Changes in directory llvm/lib/CodeGen:
LiveIntervalAnalysis.cpp updated: 1.213 -> 1.214
---
Log message:
If the liveinterval of the source instruction has been extended, remove the IsKill marker.
---
Diffs of the changes: (+6 -0)
LiveIntervalAnalysis.cpp | 6 ++++++
1 files changed, 6 insertions(+)
Index: llvm/lib/CodeGen/LiveIntervalAnalysis.cpp
diff -u llvm/lib/CodeGen/LiveIntervalAnalysis.cpp:1.213 llvm/lib/CodeGen/LiveIntervalAnalysis.cpp:1.214
--- llvm/lib/CodeGen/LiveIntervalAnalysis.cpp:1.213 Fri Feb 23 14:40:13 2007
+++ llvm/lib/CodeGen/LiveIntervalAnalysis.cpp Sun Feb 25 03:41:59 2007
@@ -828,6 +828,12 @@
IntB.MergeValueNumberInto(BValNo, ValLR->ValId);
DOUT << " result = "; IntB.print(DOUT, mri_);
DOUT << "\n";
+
+ // If the source instruction was killing the source register before the
+ // merge, unset the isKill marker given the live range has been extended.
+ MachineOperand *MOK = ValLREndInst->findRegisterUseOperand(IntB.reg, true);
+ if (MOK)
+ MOK->unsetIsKill();
// Finally, delete the copy instruction.
RemoveMachineInstrFromMaps(CopyMI);
More information about the llvm-commits
mailing list