diff options
author | Chris Lattner <sabre@nondot.org> | 2004-02-08 01:27:18 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2004-02-08 01:27:18 +0000 |
commit | 4ff0b9636da3f753b143a3bc733ddcd39ebf8af2 (patch) | |
tree | 4d50d45b85ea2c38e809d276074f7c2d5cc725a9 /include/llvm/Analysis/DataStructure/DSGraph.h | |
parent | 9857c1a6ae46e51c8685907a0fc08166c2a71d71 (diff) |
Substantially improve the DSA code by removing 'forwarding' nodes from
DSGraphs while they are forwarding. When the last reference to the forwarding
node is dropped, the forwarding node is autodeleted. This should simplify
removeTriviallyDead nodes, and is only (efficiently) possible because we are
using an ilist of dsnodes now.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11175 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/Analysis/DataStructure/DSGraph.h')
-rw-r--r-- | include/llvm/Analysis/DataStructure/DSGraph.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/include/llvm/Analysis/DataStructure/DSGraph.h b/include/llvm/Analysis/DataStructure/DSGraph.h index 568a90bc60..1c10851848 100644 --- a/include/llvm/Analysis/DataStructure/DSGraph.h +++ b/include/llvm/Analysis/DataStructure/DSGraph.h @@ -182,6 +182,7 @@ public: /// addNode - Add a new node to the graph. /// void addNode(DSNode *N) { Nodes.push_back(N); } + void unlinkNode(DSNode *N) { Nodes.remove(N); } /// getScalarMap - Get a map that describes what the nodes the scalars in this /// function point to... |