aboutsummaryrefslogtreecommitdiff
path: root/include/llvm/CodeGen/LiveIntervalAnalysis.h
diff options
context:
space:
mode:
authorLang Hames <lhames@gmail.com>2012-01-27 22:36:19 +0000
committerLang Hames <lhames@gmail.com>2012-01-27 22:36:19 +0000
commit907cc8f38df212a87a6028682d91df01ba923f4f (patch)
tree8d80357d733e0bc70369c586de4f0a9e1f148f7f /include/llvm/CodeGen/LiveIntervalAnalysis.h
parentff21bb53ae9496b0e24d0ea0cb392fae1d49128b (diff)
Add a "moveInstr" method to LiveIntervals. This can be used to move instructions
around within a basic block while maintaining live-intervals. Updated ScheduleTopDownLive in MachineScheduler.cpp to use the moveInstr API when reordering MIs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149147 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/CodeGen/LiveIntervalAnalysis.h')
-rw-r--r--include/llvm/CodeGen/LiveIntervalAnalysis.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/include/llvm/CodeGen/LiveIntervalAnalysis.h b/include/llvm/CodeGen/LiveIntervalAnalysis.h
index e9acfbb570..92a8f5619e 100644
--- a/include/llvm/CodeGen/LiveIntervalAnalysis.h
+++ b/include/llvm/CodeGen/LiveIntervalAnalysis.h
@@ -273,6 +273,11 @@ namespace llvm {
/// register.
void addKillFlags();
+ /// moveInstr - Move MachineInstr mi to insertPt, updating the live
+ /// intervals of mi's operands to reflect the new position. The insertion
+ /// point can be above or below mi, but must be in the same basic block.
+ void moveInstr(MachineBasicBlock::iterator insertPt, MachineInstr* mi);
+
private:
/// computeIntervals - Compute live intervals.
void computeIntervals();