No longer need local graph to find call sites.
authorVikram S. Adve <vadve@cs.uiuc.edu>
Wed, 27 Nov 2002 17:38:56 +0000 (17:38 +0000)
committerVikram S. Adve <vadve@cs.uiuc.edu>
Wed, 27 Nov 2002 17:38:56 +0000 (17:38 +0000)
Also some major fixes within IPModRef.cpp.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4834 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/Analysis/IPModRef.h

index 52d5c7edc454d25b93ef79d0e241a33382adc4ec..78da986268c7c0e21168a4b6592a63ed91f2e1ad 100644 (file)
@@ -96,7 +96,7 @@ public:
         BitSetVector&  getRefSet()        { return refNodeSet; }
 
   // Debugging support methods
-  void print(std::ostream &O) const;
+  void print(std::ostream &O, const std::string& prefix=std::string("")) const;
   void dump() const;
 };
 
@@ -114,8 +114,7 @@ public:
 class FunctionModRefInfo {
   const Function&       F;                  // The function
   IPModRef&             IPModRefObj;        // The IPModRef Object owning this
-  const DSGraph&        funcTDGraph;        // Top-down DS graph for function
-  const DSGraph&        funcLocalGraph;     // Local DS graph for function
+  DSGraph*              funcTDGraph;        // Top-down DS graph for function
   ModRefInfo            funcModRefInfo;     // ModRefInfo for the function body
   std::map<const CallInst*, ModRefInfo*>
                         callSiteModRefInfo; // ModRefInfo for each callsite
@@ -130,15 +129,14 @@ class FunctionModRefInfo {
 
 public:
   /* ctor */    FunctionModRefInfo      (const Function& func,
-                                         IPModRef& IPModRefObj,
-                                         const DSGraph& tdg,
-                                         const DSGraph& ldg);
+                                         IPModRef&       IPModRefObj,
+                                         DSGraph*        tdgClone);
   /* dtor */    ~FunctionModRefInfo     ();
 
   // Identify the function and its relevant DS graph
   // 
   const Function& getFunction() const   { return F; }
-  const DSGraph&  getFuncGraph() const  { return funcTDGraph; }
+  const DSGraph&  getFuncGraph() const  { return *funcTDGraph; }
 
   // Retrieve Mod/Ref results for a single call site and for the function body
   //