summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Transforms/IPO/GlobalDCE.cpp
diff options
context:
space:
mode:
authorDuncan Sands <baldrick@free.fr>2009-01-05 20:47:56 +0000
committerDuncan Sands <baldrick@free.fr>2009-01-05 20:47:56 +0000
commit52e5deece5b99ff5d2ca5547c4c894397da1be41 (patch)
tree38994b4aae18db8eb72218e8abfeb38216d46ac3 /llvm/lib/Transforms/IPO/GlobalDCE.cpp
parent821d13cf789ddfb25cf942155670bb0fd23cce9c (diff)
downloadbcm5719-llvm-52e5deece5b99ff5d2ca5547c4c894397da1be41.tar.gz
bcm5719-llvm-52e5deece5b99ff5d2ca5547c4c894397da1be41.zip
Not having an aliasee is a theoretical possibility.
llvm-svn: 61745
Diffstat (limited to 'llvm/lib/Transforms/IPO/GlobalDCE.cpp')
-rw-r--r--llvm/lib/Transforms/IPO/GlobalDCE.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/llvm/lib/Transforms/IPO/GlobalDCE.cpp b/llvm/lib/Transforms/IPO/GlobalDCE.cpp
index a9c9ec0fd84..654a5095d06 100644
--- a/llvm/lib/Transforms/IPO/GlobalDCE.cpp
+++ b/llvm/lib/Transforms/IPO/GlobalDCE.cpp
@@ -161,7 +161,8 @@ void GlobalDCE::GlobalIsNeeded(GlobalValue *G) {
MarkUsedGlobalsAsNeeded(GV->getInitializer());
} else if (GlobalAlias *GA = dyn_cast<GlobalAlias>(G)) {
// The target of a global alias is needed.
- MarkUsedGlobalsAsNeeded(GA->getAliasee());
+ if (Constant *Aliasee = GA->getAliasee())
+ MarkUsedGlobalsAsNeeded(Aliasee);
} else {
// Otherwise this must be a function object. We have to scan the body of
// the function looking for constants and global values which are used as
OpenPOWER on IntegriCloud