summaryrefslogtreecommitdiffstats
path: root/llvm/tools/analyze/analyze.cpp
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2002-07-18 06:40:56 +0000
committerChris Lattner <sabre@nondot.org>2002-07-18 06:40:56 +0000
commit93dc95fc7d6a4cfdbec470efbd9f7a37b38241ea (patch)
treed209b8d657680e035f18f0f2a2ca4a9bb5ca6bfc /llvm/tools/analyze/analyze.cpp
parentf2fbd008047f236ab9792fa15916cd592365404a (diff)
downloadbcm5719-llvm-93dc95fc7d6a4cfdbec470efbd9f7a37b38241ea.tar.gz
bcm5719-llvm-93dc95fc7d6a4cfdbec470efbd9f7a37b38241ea.zip
Add support for bottom up closure of ds analysis
llvm-svn: 2963
Diffstat (limited to 'llvm/tools/analyze/analyze.cpp')
-rw-r--r--llvm/tools/analyze/analyze.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/llvm/tools/analyze/analyze.cpp b/llvm/tools/analyze/analyze.cpp
index 02ee6457196..f22f7346c3c 100644
--- a/llvm/tools/analyze/analyze.cpp
+++ b/llvm/tools/analyze/analyze.cpp
@@ -57,6 +57,10 @@ template<>
static void printPass(LocalDataStructures &P, ostream &O, Module &M) {
P.print(O, &M);
}
+template<>
+static void printPass(BUDataStructures &P, ostream &O, Module &M) {
+ P.print(O, &M);
+}
template<>
static void printPass(FindUsedTypes &FUT, ostream &O, Module &M) {
@@ -227,7 +231,8 @@ enum Ans {
print, intervals, exprs, instforest, loops, indvars,
// ip analyses
- printmodule, callgraph, datastructure, printusedtypes, unsafepointertypes,
+ printmodule, callgraph, datastructure, budatastructure,
+ printusedtypes, unsafepointertypes,
domset, idom, domtree, domfrontier,
postdomset, postidom, postdomtree, postdomfrontier,
@@ -247,6 +252,7 @@ cl::EnumList<enum Ans> AnalysesList(cl::NoFlags,
clEnumVal(printmodule , "Print entire module"),
clEnumVal(callgraph , "Print Call Graph"),
clEnumVal(datastructure , "Print data structure information"),
+ clEnumVal(budatastructure, "Print bottom-up data structure information"),
clEnumVal(printusedtypes , "Print types used by module"),
clEnumVal(unsafepointertypes, "Print unsafe pointer types"),
@@ -279,6 +285,7 @@ struct {
{ printusedtypes , New<Pass, FindUsedTypes> },
{ callgraph , New<Pass, CallGraph> },
{ datastructure , New<Pass, LocalDataStructures> },
+ { budatastructure , New<Pass, BUDataStructures> },
{ unsafepointertypes, New<Pass, FindUnsafePointerTypes> },
// Dominator analyses
OpenPOWER on IntegriCloud