summaryrefslogtreecommitdiff
path: root/lib/Transforms/Utils/BreakCriticalEdges.cpp
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2002-09-24 15:43:12 +0000
committerChris Lattner <sabre@nondot.org>2002-09-24 15:43:12 +0000
commit6de302bbdb0ac8a595ca35a06e5bbc1605e1da3e (patch)
tree61e8db13568e561fbf571314187bdef0a3c933ad /lib/Transforms/Utils/BreakCriticalEdges.cpp
parent87944916a4764dabc2f89cbec0a6c7e439c28530 (diff)
downloadllvm-6de302bbdb0ac8a595ca35a06e5bbc1605e1da3e.tar.gz
llvm-6de302bbdb0ac8a595ca35a06e5bbc1605e1da3e.tar.bz2
llvm-6de302bbdb0ac8a595ca35a06e5bbc1605e1da3e.tar.xz
- Expose passinfo from BreakCriticalEdges pass so that it may be "Required"
by other passes. Make BCE pass be in anonymous namespace now. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3907 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Transforms/Utils/BreakCriticalEdges.cpp')
-rw-r--r--lib/Transforms/Utils/BreakCriticalEdges.cpp31
1 files changed, 17 insertions, 14 deletions
diff --git a/lib/Transforms/Utils/BreakCriticalEdges.cpp b/lib/Transforms/Utils/BreakCriticalEdges.cpp
index 2222a04e1d..bba65ef4ed 100644
--- a/lib/Transforms/Utils/BreakCriticalEdges.cpp
+++ b/lib/Transforms/Utils/BreakCriticalEdges.cpp
@@ -15,21 +15,24 @@
#include "llvm/InstrTypes.h"
#include "Support/StatisticReporter.h"
-static Statistic<> NumBroken("break-crit-edges\t- Number of blocks inserted");
-
-class BreakCriticalEdges : public FunctionPass {
-public:
- virtual bool runOnFunction(Function &F);
-
- virtual void getAnalysisUsage(AnalysisUsage &AU) const {
- AU.addPreserved<DominatorSet>();
- AU.addPreserved<ImmediateDominators>();
- AU.addPreserved<DominatorTree>();
- }
-};
+namespace {
+ Statistic<> NumBroken("break-crit-edges\t- Number of blocks inserted");
+
+ struct BreakCriticalEdges : public FunctionPass {
+ virtual bool runOnFunction(Function &F);
+
+ virtual void getAnalysisUsage(AnalysisUsage &AU) const {
+ AU.addPreserved<DominatorSet>();
+ AU.addPreserved<ImmediateDominators>();
+ AU.addPreserved<DominatorTree>();
+ }
+ };
+
+ RegisterOpt<BreakCriticalEdges> X("break-crit-edges",
+ "Break critical edges in CFG");
+}
-static RegisterOpt<BreakCriticalEdges> X("break-crit-edges",
- "Break critical edges in CFG");
+const PassInfo *BreakCriticalEdgesID = X.getPassInfo();
Pass *createBreakCriticalEdgesPass() { return new BreakCriticalEdges(); }