[llvm-commits] CVS: llvm/include/llvm/Analysis/DataStructure.h
Chris Lattner
lattner at cs.uiuc.edu
Tue Oct 22 10:59:03 PDT 2002
Changes in directory llvm/include/llvm/Analysis:
DataStructure.h updated: 1.46 -> 1.47
---
Log message:
We need to know the call sites each function hosts
---
Diffs of the changes:
Index: llvm/include/llvm/Analysis/DataStructure.h
diff -u llvm/include/llvm/Analysis/DataStructure.h:1.46 llvm/include/llvm/Analysis/DataStructure.h:1.47
--- llvm/include/llvm/Analysis/DataStructure.h:1.46 Mon Oct 21 14:47:14 2002
+++ llvm/include/llvm/Analysis/DataStructure.h Tue Oct 22 10:58:23 2002
@@ -65,7 +65,6 @@
// 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 @@
//
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(); }
More information about the llvm-commits
mailing list