aboutsummaryrefslogtreecommitdiff
path: root/include/llvm
diff options
context:
space:
mode:
authorMike Stump <mrs@apple.com>2009-05-04 18:40:41 +0000
committerMike Stump <mrs@apple.com>2009-05-04 18:40:41 +0000
commitfe095f39e7009c51d1c86769792ccbcad8cdd2ec (patch)
treec9883b04cd8a1416361a0b29a6a91bf2417bbf3e /include/llvm
parent04fa35ab13afbbc5b2f12437a256db84a27485d2 (diff)
Restore minor deletion.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70892 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm')
-rw-r--r--include/llvm/ADT/SmallSet.h6
-rw-r--r--include/llvm/CodeGen/MachineModuleInfo.h5
-rw-r--r--include/llvm/Transforms/Utils/BasicBlockUtils.h9
3 files changed, 14 insertions, 6 deletions
diff --git a/include/llvm/ADT/SmallSet.h b/include/llvm/ADT/SmallSet.h
index 75e8c64885..caaa96c045 100644
--- a/include/llvm/ADT/SmallSet.h
+++ b/include/llvm/ADT/SmallSet.h
@@ -76,6 +76,12 @@ public:
return true;
}
+ template <typename IterT>
+ void insert(IterT I, IterT E) {
+ for (; I != E; ++I)
+ insert(*I);
+ }
+
bool erase(const T &V) {
if (!isSmall())
return Set.erase(V);
diff --git a/include/llvm/CodeGen/MachineModuleInfo.h b/include/llvm/CodeGen/MachineModuleInfo.h
index e5f7c6a9a2..1872bd26d8 100644
--- a/include/llvm/CodeGen/MachineModuleInfo.h
+++ b/include/llvm/CodeGen/MachineModuleInfo.h
@@ -170,11 +170,6 @@ public:
return ID;
}
- /// RecordSourceLine - Records location information and associates it with a
- /// label. Returns a unique label ID used to generate a label and
- /// provide correspondence to the source line list.
- unsigned RecordSourceLine(unsigned Line, unsigned Column, unsigned Source);
-
/// InvalidateLabel - Inhibit use of the specified label # from
/// MachineModuleInfo, for example because the code was deleted.
void InvalidateLabel(unsigned LabelID) {
diff --git a/include/llvm/Transforms/Utils/BasicBlockUtils.h b/include/llvm/Transforms/Utils/BasicBlockUtils.h
index 6105416a40..367e4b4b06 100644
--- a/include/llvm/Transforms/Utils/BasicBlockUtils.h
+++ b/include/llvm/Transforms/Utils/BasicBlockUtils.h
@@ -89,7 +89,14 @@ Value *FindAvailableLoadedValue(Value *Ptr, BasicBlock *ScanBB,
BasicBlock::iterator &ScanFrom,
unsigned MaxInstsToScan = 6,
AliasAnalysis *AA = 0);
-
+
+/// FindFunctionBackedges - Analyze the specified function to find all of the
+/// loop backedges in the function and return them. This is a relatively cheap
+/// (compared to computing dominators and loop info) analysis.
+///
+/// The output is added to Result, as pairs of <from,to> edge info.
+void FindFunctionBackedges(const Function &F,
+ SmallVectorImpl<std::pair<const BasicBlock*,const BasicBlock*> > &Result);
// RemoveSuccessor - Change the specified terminator instruction such that its