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 | d2b8d7bc51b0e41d09b32aeaa550358ccb379009 (patch) | |
| tree | 0965152b9a18fa912b641d525450825ff073dcce /include | |
| parent | a4d16a1f0dcdd1ab2862737105f900e2c577532d (diff) | |
- 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 52bbf78e3b..e7ebb5157d 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; |
