[llvm-commits] CVS: llvm/include/llvm/CodeGen/LiveIntervalAnalysis.h

Evan Cheng evan.cheng at apple.com
Thu Feb 22 15:04:03 PST 2007



Changes in directory llvm/include/llvm/CodeGen:

LiveIntervalAnalysis.h updated: 1.72 -> 1.73
---
Log message:

Remove unnecessary isKill properties if a live range has been lengthened due to coalescing.

---
Diffs of the changes:  (+11 -0)

 LiveIntervalAnalysis.h |   11 +++++++++++
 1 files changed, 11 insertions(+)


Index: llvm/include/llvm/CodeGen/LiveIntervalAnalysis.h
diff -u llvm/include/llvm/CodeGen/LiveIntervalAnalysis.h:1.72 llvm/include/llvm/CodeGen/LiveIntervalAnalysis.h:1.73
--- llvm/include/llvm/CodeGen/LiveIntervalAnalysis.h:1.72	Wed Feb 21 16:41:17 2007
+++ llvm/include/llvm/CodeGen/LiveIntervalAnalysis.h	Thu Feb 22 17:03:39 2007
@@ -172,6 +172,13 @@
     }
 
   private:
+    /// isRemoved - returns true if the specified machine instr has been
+    /// removed.
+    bool isRemoved(MachineInstr* instr) const {
+      Mi2IndexMap::const_iterator it = mi2iMap_.find(instr);
+      return it == mi2iMap_.end();
+    }
+
     /// RemoveMachineInstrFromMaps - This marks the specified machine instr as
     /// deleted.
     void RemoveMachineInstrFromMaps(MachineInstr *MI) {
@@ -256,6 +263,10 @@
     /// reg between indexes Start and End.
     bool hasRegisterUse(unsigned Reg, unsigned Start, unsigned End);
 
+    /// unsetRegisterKill - Unset IsKill property of all uses of specific
+    /// register of the specific instruction.
+    void unsetRegisterKill(MachineInstr *MI, unsigned Reg);
+
     static LiveInterval createInterval(unsigned Reg);
 
     void removeInterval(unsigned Reg) {






More information about the llvm-commits mailing list