aboutsummaryrefslogtreecommitdiff
path: root/lib/Analysis/DataStructure/Local.cpp
diff options
context:
space:
mode:
authorVikram S. Adve <vadve@cs.uiuc.edu>2002-10-20 18:07:37 +0000
committerVikram S. Adve <vadve@cs.uiuc.edu>2002-10-20 18:07:37 +0000
commit42fd16931099f528228f020596f7fb5ef5ea8b7f (patch)
tree498b7b2b1e394707ab5e23938a63e2265c732c1a /lib/Analysis/DataStructure/Local.cpp
parent726bafda652754096ee4d3c8ceb07aa8d105f8b9 (diff)
Added a first-class representation for each call site that can be
used in the DS graphs. Essentially, what was vector<DSNodeHandle> before is now a DSCallSite with the same vector, plus pointers to the CallInst and the caller Function. The special-purpose class BUDataStructure::CallSite is no longer needed. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4228 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Analysis/DataStructure/Local.cpp')
-rw-r--r--lib/Analysis/DataStructure/Local.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/lib/Analysis/DataStructure/Local.cpp b/lib/Analysis/DataStructure/Local.cpp
index b27652379e..15b3a96b87 100644
--- a/lib/Analysis/DataStructure/Local.cpp
+++ b/lib/Analysis/DataStructure/Local.cpp
@@ -61,12 +61,12 @@ namespace {
vector<DSNode*> &Nodes;
DSNodeHandle &RetNode; // Node that gets returned...
map<Value*, DSNodeHandle> &ValueMap;
- vector<vector<DSNodeHandle> > &FunctionCalls;
+ vector<DSCallSite> &FunctionCalls;
public:
GraphBuilder(DSGraph &g, vector<DSNode*> &nodes, DSNodeHandle &retNode,
map<Value*, DSNodeHandle> &vm,
- vector<vector<DSNodeHandle> > &fc)
+ vector<DSCallSite> &fc)
: G(g), Nodes(nodes), RetNode(retNode), ValueMap(vm), FunctionCalls(fc) {
// Create scalar nodes for all pointer arguments...
@@ -356,8 +356,8 @@ void GraphBuilder::visitReturnInst(ReturnInst &RI) {
void GraphBuilder::visitCallInst(CallInst &CI) {
// Add a new function call entry...
- FunctionCalls.push_back(vector<DSNodeHandle>());
- vector<DSNodeHandle> &Args = FunctionCalls.back();
+ FunctionCalls.push_back(DSCallSite(G.getFunction(), CI));
+ DSCallSite &Args = FunctionCalls.back();
// Set up the return value...
if (isPointerType(CI.getType()))