diff options
author | Chris Lattner <sabre@nondot.org> | 2002-04-09 19:48:49 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2002-04-09 19:48:49 +0000 |
commit | 73e214244f2403b5ba0ef81b8839600f3c8ffebc (patch) | |
tree | 245e635c686ace9b5ebbcaf39d622a92f9db594e /lib/Analysis/DataStructure/FunctionRepBuilder.cpp | |
parent | b62fc4a9b11662ec2c5fa190b513eae0a0810ce1 (diff) |
Move FunctionArgument out of iOther.h into Argument.h and rename class to
be 'Argument' instead of FunctionArgument.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2216 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Analysis/DataStructure/FunctionRepBuilder.cpp')
-rw-r--r-- | lib/Analysis/DataStructure/FunctionRepBuilder.cpp | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/lib/Analysis/DataStructure/FunctionRepBuilder.cpp b/lib/Analysis/DataStructure/FunctionRepBuilder.cpp index 965185a344..eda16bc694 100644 --- a/lib/Analysis/DataStructure/FunctionRepBuilder.cpp +++ b/lib/Analysis/DataStructure/FunctionRepBuilder.cpp @@ -143,26 +143,28 @@ void FunctionRepBuilder::initializeWorkList(Function *Func) { // the worklists... // for (Function::ArgumentListType::iterator I = Func->getArgumentList().begin(), - E = Func->getArgumentList().end(); I != E; ++I) + E = Func->getArgumentList().end(); I != E; ++I) { + Value *Arg = (Value*)(*I); // Only process arguments that are of pointer type... - if (PointerType *PT = dyn_cast<PointerType>((*I)->getType())) { - ArgDSNode *Arg = new ArgDSNode(*I); - ArgNodes.push_back(Arg); + if (PointerType *PT = dyn_cast<PointerType>(Arg->getType())) { + ArgDSNode *ArgNode = new ArgDSNode(*I); + ArgNodes.push_back(ArgNode); // Add a critical shadow value for it to represent what it is pointing // to and add this to the value map... ShadowDSNode *Shad = new ShadowDSNode(PT->getElementType(), Func->getParent(), true); ShadowNodes.push_back(Shad); - ValueMap[*I].add(PointerVal(Shad), *I); + ValueMap[Arg].add(PointerVal(Shad), Arg); // The value of the argument is the shadow value... - Arg->getLink(0).add(Shad); + ArgNode->getLink(0).add(Shad); // Make sure that all users of the argument are processed... - addAllUsesToWorkList(*I); + addAllUsesToWorkList(Arg); } - + } + // Iterate over the instructions in the method. Create nodes for malloc and // call instructions. Add all uses of these to the worklist of instructions // to process. |