Global values also don't undead-ify pointers in our dead alloca's set.
authorOwen Anderson <resistor@mac.com>
Wed, 8 Aug 2007 19:12:31 +0000 (19:12 +0000)
committerOwen Anderson <resistor@mac.com>
Wed, 8 Aug 2007 19:12:31 +0000 (19:12 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40936 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Transforms/Scalar/DeadStoreElimination.cpp

index d740b655e57d8afdc3939c802f5591aceea41cba..283fcbc97a1a2d6400edffe1e4a3338ecdfd0720 100644 (file)
@@ -364,6 +364,9 @@ bool DSE::RemoveUndeadPointers(Value* killPointer,
     if (deadPointers.count(A))
       deadPointers.erase(A);
     return false;
+  } else if (isa<GlobalValue>(killPointer)) {
+    // A global can't be in the dead pointer set
+    return false;
   }
   
   bool MadeChange = false;