diff options
author | Chris Lattner <sabre@nondot.org> | 2003-06-28 22:14:55 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2003-06-28 22:14:55 +0000 |
commit | 312edd330fb70f7b0f476b253b5073cf7d01def3 (patch) | |
tree | d244c70c963ac182162cf0aae7984650972522e9 | |
parent | 5e459dbc529d60a6e2c57e8448006ad0d2a8116a (diff) | |
download | external_llvm-312edd330fb70f7b0f476b253b5073cf7d01def3.zip external_llvm-312edd330fb70f7b0f476b253b5073cf7d01def3.tar.gz external_llvm-312edd330fb70f7b0f476b253b5073cf7d01def3.tar.bz2 |
Propagate globals graph from the local to bu to td globals graphs. This
fixes bug: DSGraph/buglobals.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6947 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/Analysis/DataStructure/BottomUpClosure.cpp | 5 | ||||
-rw-r--r-- | lib/Analysis/DataStructure/TopDownClosure.cpp | 4 |
2 files changed, 5 insertions, 4 deletions
diff --git a/lib/Analysis/DataStructure/BottomUpClosure.cpp b/lib/Analysis/DataStructure/BottomUpClosure.cpp index 9f50436..4592867 100644 --- a/lib/Analysis/DataStructure/BottomUpClosure.cpp +++ b/lib/Analysis/DataStructure/BottomUpClosure.cpp @@ -17,7 +17,7 @@ namespace { Statistic<> MaxSCC("budatastructure", "Maximum SCC Size in Call Graph"); RegisterAnalysis<BUDataStructures> - X("budatastructure", "Bottom-up Data Structure Analysis Closure"); + X("budatastructure", "Bottom-up Data Structure Analysis"); } using namespace DS; @@ -120,7 +120,8 @@ public: // program. // bool BUDataStructures::run(Module &M) { - GlobalsGraph = new DSGraph(); + LocalDataStructures &LocalDSA = getAnalysis<LocalDataStructures>(); + GlobalsGraph = new DSGraph(LocalDSA.getGlobalsGraph()); GlobalsGraph->setPrintAuxCalls(); Function *MainFunc = M.getMainFunction(); diff --git a/lib/Analysis/DataStructure/TopDownClosure.cpp b/lib/Analysis/DataStructure/TopDownClosure.cpp index 3138ada..4058348 100644 --- a/lib/Analysis/DataStructure/TopDownClosure.cpp +++ b/lib/Analysis/DataStructure/TopDownClosure.cpp @@ -15,7 +15,7 @@ namespace { RegisterAnalysis<TDDataStructures> // Register the pass - Y("tddatastructure", "Top-down Data Structure Analysis Closure"); + Y("tddatastructure", "Top-down Data Structure Analysis"); } // run - Calculate the top down data structure graphs for each function in the @@ -23,7 +23,7 @@ namespace { // bool TDDataStructures::run(Module &M) { BUDataStructures &BU = getAnalysis<BUDataStructures>(); - GlobalsGraph = new DSGraph(); + GlobalsGraph = new DSGraph(BU.getGlobalsGraph()); // Calculate top-down from main... if (Function *F = M.getMainFunction()) |