aboutsummaryrefslogtreecommitdiff
path: root/lib/Analysis/DataStructure
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2002-10-21 13:51:30 +0000
committerChris Lattner <sabre@nondot.org>2002-10-21 13:51:30 +0000
commit448f4949dc686d22feb81281560f1c43bca15639 (patch)
tree47b0d856bb3405ad9e9f5aac174ed612c6105cb9 /lib/Analysis/DataStructure
parent482b651cf8d6f77caf3a79d47dd1ec468035d891 (diff)
Don't create a new node for every reference to a global. This caused a huge
node explosion that doesn't help anything at all. In previous versions of the representation this DID help, but not anymore. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4249 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Analysis/DataStructure')
-rw-r--r--lib/Analysis/DataStructure/Local.cpp7
1 files changed, 2 insertions, 5 deletions
diff --git a/lib/Analysis/DataStructure/Local.cpp b/lib/Analysis/DataStructure/Local.cpp
index 0e17d7232f..210bbec023 100644
--- a/lib/Analysis/DataStructure/Local.cpp
+++ b/lib/Analysis/DataStructure/Local.cpp
@@ -186,12 +186,9 @@ DSNodeHandle &GraphBuilder::getGlobalNode(GlobalValue &V) {
//
DSNodeHandle GraphBuilder::getValueNode(Value &V) {
assert(isPointerType(V.getType()) && "Should only use pointer scalars!");
- // Do not share the pointer value to globals... this would cause way too much
- // false merging.
- //
+
DSNodeHandle &NH = ValueMap[&V];
- if (!isa<GlobalValue>(V) && NH.getNode())
- return NH; // Already have a node? Just return it...
+ if (NH.getNode()) return NH; // Already have a node? Just return it...
// Otherwise we need to create a new scalar node...
DSNode *N = createNode(DSNode::ScalarNode, V.getType());