projects
/
oota-llvm.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
minor cleanups. Add provisions for a new standard BLOCKINFO_BLOCK
[oota-llvm.git]
/
include
/
llvm
/
ADT
/
EquivalenceClasses.h
diff --git
a/include/llvm/ADT/EquivalenceClasses.h
b/include/llvm/ADT/EquivalenceClasses.h
index a866cd67e172db455b98ad0b2bcb08906d058ebf..7d305cb74416a19ddde29a61787e4ef376bcff5e 100644
(file)
--- a/
include/llvm/ADT/EquivalenceClasses.h
+++ b/
include/llvm/ADT/EquivalenceClasses.h
@@
-1,15
+1,15
@@
//===-- llvm/ADT/EquivalenceClasses.h - Generic Equiv. Classes --*- C++ -*-===//
//===-- llvm/ADT/EquivalenceClasses.h - Generic Equiv. Classes --*- C++ -*-===//
-//
+//
// The LLVM Compiler Infrastructure
//
// This file was developed by the LLVM research group and is distributed under
// the University of Illinois Open Source License. See LICENSE.TXT for details.
// The LLVM Compiler Infrastructure
//
// This file was developed by the LLVM research group and is distributed under
// the University of Illinois Open Source License. See LICENSE.TXT for details.
-//
+//
//===----------------------------------------------------------------------===//
//===----------------------------------------------------------------------===//
-//
+//
// Generic implementation of equivalence classes through the use Tarjan's
// efficient union-find algorithm.
// Generic implementation of equivalence classes through the use Tarjan's
// efficient union-find algorithm.
-//
+//
//===----------------------------------------------------------------------===//
#ifndef LLVM_ADT_EQUIVALENCECLASSES_H
//===----------------------------------------------------------------------===//
#ifndef LLVM_ADT_EQUIVALENCECLASSES_H
@@
-43,8
+43,8
@@
namespace llvm {
/// if (!I->isLeader()) continue; // Ignore non-leader sets.
/// for (EquivalenceClasses<int>::member_iterator MI = EC.member_begin(I);
/// MI != EC.member_end(); ++MI) // Loop over members in this set.
/// if (!I->isLeader()) continue; // Ignore non-leader sets.
/// for (EquivalenceClasses<int>::member_iterator MI = EC.member_begin(I);
/// MI != EC.member_end(); ++MI) // Loop over members in this set.
-///
std::
cerr << *MI << " "; // Print member.
-///
std::
cerr << "\n"; // Finish set.
+/// cerr << *MI << " "; // Print member.
+/// cerr << "\n"; // Finish set.
/// }
///
/// This example prints:
/// }
///
/// This example prints:
@@
-128,7
+128,7
@@
public:
}
return *this;
}
}
return *this;
}
-
+
//===--------------------------------------------------------------------===//
// Inspection methods
//
//===--------------------------------------------------------------------===//
// Inspection methods
//
@@
-138,6
+138,8
@@
public:
iterator begin() const { return TheMapping.begin(); }
iterator end() const { return TheMapping.end(); }
iterator begin() const { return TheMapping.begin(); }
iterator end() const { return TheMapping.end(); }
+ bool empty() const { return TheMapping.empty(); }
+
/// member_* Iterate over the members of an equivalence class.
///
class member_iterator;
/// member_* Iterate over the members of an equivalence class.
///
class member_iterator;
@@
-220,7
+222,7
@@
public:
// point to the L2 leader node.
const ECValue &L1LV = *L1.Node, &L2LV = *L2.Node;
L1LV.getEndOfList()->setNext(&L2LV);
// point to the L2 leader node.
const ECValue &L1LV = *L1.Node, &L2LV = *L2.Node;
L1LV.getEndOfList()->setNext(&L2LV);
-
+
// Update L1LV's end of list pointer.
L1LV.Leader = L2LV.getEndOfList();
// Update L1LV's end of list pointer.
L1LV.Leader = L2LV.getEndOfList();