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

Evan Cheng evan.cheng at apple.com
Mon May 14 14:10:29 PDT 2007



Changes in directory llvm/include/llvm/CodeGen:

LiveIntervalAnalysis.h updated: 1.84 -> 1.85
---
Log message:

Fix for PR1406: http://llvm.org/PR1406 :

v1 =
r2 = move v1
   = op r2<kill>
...
r2 = move v1
   = op r2<kill>

Clear the first r2 kill if v1 and r2 are joined.

---
Diffs of the changes:  (+5 -1)

 LiveIntervalAnalysis.h |    6 +++++-
 1 files changed, 5 insertions(+), 1 deletion(-)


Index: llvm/include/llvm/CodeGen/LiveIntervalAnalysis.h
diff -u llvm/include/llvm/CodeGen/LiveIntervalAnalysis.h:1.84 llvm/include/llvm/CodeGen/LiveIntervalAnalysis.h:1.85
--- llvm/include/llvm/CodeGen/LiveIntervalAnalysis.h:1.84	Sun May  6 08:37:16 2007
+++ llvm/include/llvm/CodeGen/LiveIntervalAnalysis.h	Mon May 14 16:10:05 2007
@@ -271,7 +271,7 @@
     /// lastRegisterUse - Returns the last use of the specific register between
     /// cycles Start and End. It also returns the use operand by reference. It
     /// returns NULL if there are no uses.
-    MachineInstr *lastRegisterUse(unsigned Reg, unsigned Start, unsigned End,
+    MachineInstr *lastRegisterUse(unsigned Start, unsigned End, unsigned Reg,
                                   MachineOperand *&MOU);
 
     /// findDefOperand - Returns the MachineOperand that is a def of the specific
@@ -282,6 +282,10 @@
     /// register of the specific instruction.
     void unsetRegisterKill(MachineInstr *MI, unsigned Reg);
 
+    /// unsetRegisterKills - Unset IsKill property of all uses of specific register
+    /// between cycles Start and End.
+    void unsetRegisterKills(unsigned Start, unsigned End, unsigned Reg);
+
     /// hasRegisterDef - True if the instruction defines the specific register.
     ///
     bool hasRegisterDef(MachineInstr *MI, unsigned Reg);






More information about the llvm-commits mailing list