Allow LiveIntervalMap to be reused by resetting the current live interval.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113815 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Jakob Stoklund Olesen
2010-09-13 23:29:09 +00:00
parent 8466fa1842
commit 9ca2aeb2d2
2 changed files with 33 additions and 18 deletions

View File

@@ -151,7 +151,7 @@ class LiveIntervalMap {
const LiveInterval &parentli_;
// The child interval's values are fully contained inside parentli_ values.
LiveInterval &li_;
LiveInterval *li_;
typedef DenseMap<const VNInfo*, VNInfo*> ValueMap;
@@ -172,9 +172,14 @@ class LiveIntervalMap {
public:
LiveIntervalMap(LiveIntervals &lis,
const LiveInterval &parentli,
LiveInterval &li)
: lis_(lis), parentli_(parentli), li_(li) {}
const LiveInterval &parentli)
: lis_(lis), parentli_(parentli), li_(0) {}
/// reset - clear all data structures and start a new live interval.
void reset(LiveInterval *);
/// getLI - return the current live interval.
LiveInterval *getLI() const { return li_; }
/// defValue - define a value in li_ from the parentli_ value VNI and Idx.
/// Idx does not have to be ParentVNI->def, but it must be contained within