aboutsummaryrefslogtreecommitdiff
path: root/include/llvm/Analysis/DataStructure/DataStructure.h
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2002-10-22 15:58:23 +0000
committerChris Lattner <sabre@nondot.org>2002-10-22 15:58:23 +0000
commit3ec9a0a5cff423cab774cdbf28f0e68b6ca1ea17 (patch)
treed09c5b60f1443b55a454d65033372805324efdca /include/llvm/Analysis/DataStructure/DataStructure.h
parent0e6949fe1c33eb332d416f19410ddecb5c84af58 (diff)
We need to know the call sites each function hosts
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4258 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/Analysis/DataStructure/DataStructure.h')
-rw-r--r--include/llvm/Analysis/DataStructure/DataStructure.h10
1 files changed, 9 insertions, 1 deletions
diff --git a/include/llvm/Analysis/DataStructure/DataStructure.h b/include/llvm/Analysis/DataStructure/DataStructure.h
index d44732a486..ab140bac87 100644
--- a/include/llvm/Analysis/DataStructure/DataStructure.h
+++ b/include/llvm/Analysis/DataStructure/DataStructure.h
@@ -65,7 +65,6 @@ public:
// only performs a "Bottom Up" propogation (hence the name).
//
class BUDataStructures : public Pass {
-private:
// DSInfo, one graph for each function
std::map<const Function*, DSGraph*> DSInfo;
std::map<const Function*, std::vector<DSCallSite> > CallSites;
@@ -118,6 +117,15 @@ class TDDataStructures : public Pass {
//
typedef std::map<const DSNode*, DSNodeHandle> BUNodeMapTy;
std::map<const Function*, BUNodeMapTy> BUMaps;
+
+ // CallSitesForFunction - This is a temporary map that is only kept around
+ // when building the top-down closures for a program. It traverses all of the
+ // call sites in the BU graph and holds all of the call sites that each
+ // function is the "resolving caller" for.
+ //
+ std::map<const Function*,
+ std::vector<const DSCallSite*> > CallSitesForFunction;
+
public:
~TDDataStructures() { releaseMemory(); }