diff options
author | Evan Cheng <evan.cheng@apple.com> | 2008-02-13 02:48:26 +0000 |
---|---|---|
committer | Evan Cheng <evan.cheng@apple.com> | 2008-02-13 02:48:26 +0000 |
commit | 49208cfe1821ff1821e2a30a1f3ecfe74d9d10e8 (patch) | |
tree | 0965152b9a18fa912b641d525450825ff073dcce /include | |
parent | b554e533a5a1574c93aaf3cd28b808feff9f4008 (diff) | |
download | external_llvm-49208cfe1821ff1821e2a30a1f3ecfe74d9d10e8.zip external_llvm-49208cfe1821ff1821e2a30a1f3ecfe74d9d10e8.tar.gz external_llvm-49208cfe1821ff1821e2a30a1f3ecfe74d9d10e8.tar.bz2 |
- Added removeValNo() to remove all live ranges of a particular value#.
- removeRange() can now update value# information.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47044 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include')
-rw-r--r-- | include/llvm/CodeGen/LiveInterval.h | 16 |
1 files changed, 7 insertions, 9 deletions
diff --git a/include/llvm/CodeGen/LiveInterval.h b/include/llvm/CodeGen/LiveInterval.h index 52bbf78..e7ebb51 100644 --- a/include/llvm/CodeGen/LiveInterval.h +++ b/include/llvm/CodeGen/LiveInterval.h @@ -299,12 +299,6 @@ namespace llvm { /// contains the specified index, or end() if there is none. iterator FindLiveRangeContaining(unsigned Idx); - /// getOverlapingRanges - Given another live interval which is defined as a - /// copy from this one, return a list of all of the live ranges where the - /// two overlap and have different value numbers. - void getOverlapingRanges(const LiveInterval &Other, unsigned CopyIdx, - std::vector<LiveRange*> &Ranges); - /// overlaps - Return true if the intersection of the two live intervals is /// not empty. bool overlaps(const LiveInterval& other) const { @@ -332,12 +326,16 @@ namespace llvm { /// removeRange - Remove the specified range from this interval. Note that /// the range must already be in this interval in its entirety. - void removeRange(unsigned Start, unsigned End); + void removeRange(unsigned Start, unsigned End, bool RemoveDeadValNo = false); - void removeRange(LiveRange LR) { - removeRange(LR.start, LR.end); + void removeRange(LiveRange LR, bool RemoveDeadValNo = false) { + removeRange(LR.start, LR.end, RemoveDeadValNo); } + /// removeValNo - Remove all the ranges defined by the specified value#. + /// Also remove the value# from value# list. + void removeValNo(VNInfo *ValNo); + /// getSize - Returns the sum of sizes of all the LiveRange's. /// unsigned getSize() const; |