aboutsummaryrefslogtreecommitdiff
path: root/include/llvm/ADT/IntEqClasses.h
diff options
context:
space:
mode:
authorJakob Stoklund Olesen <stoklund@2pi.dk>2010-12-21 00:48:17 +0000
committerJakob Stoklund Olesen <stoklund@2pi.dk>2010-12-21 00:48:17 +0000
commitb907e8a2d40dc546f21ff7e122a80b121653851a (patch)
treeaae2803590bfa885b3e4aa4b99b3b6ca31c73bc9 /include/llvm/ADT/IntEqClasses.h
parent2a6899c5391a9aada02686dee29f9b56218ed1d3 (diff)
Use IntEqClasses to compute connected components of live intervals.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122296 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/ADT/IntEqClasses.h')
-rw-r--r--include/llvm/ADT/IntEqClasses.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/include/llvm/ADT/IntEqClasses.h b/include/llvm/ADT/IntEqClasses.h
index 00d042695a..8e75c48e37 100644
--- a/include/llvm/ADT/IntEqClasses.h
+++ b/include/llvm/ADT/IntEqClasses.h
@@ -39,13 +39,20 @@ class IntEqClasses {
public:
/// IntEqClasses - Create an equivalence class mapping for 0 .. N-1.
- IntEqClasses(unsigned N) : NumClasses(0) { grow(N); }
+ IntEqClasses(unsigned N = 0) : NumClasses(0) { grow(N); }
/// grow - Increase capacity to hold 0 .. N-1, putting new integers in unique
/// equivalence classes.
/// This requires an uncompressed map.
void grow(unsigned N);
+ /// clear - Clear all classes so that grow() will assign a unique class to
+ /// every integer.
+ void clear() {
+ EC.clear();
+ NumClasses = 0;
+ }
+
/// join - Join the equivalence classes of a and b. After joining classes,
/// findLeader(a) == findLeader(b).
/// This requires an uncompressed map.