LVI: Fix use-of-uninitialized-value after r294463
BlockValueStack can be reallocated making reference e invalid.
llvm-svn: 294572
diff --git a/llvm/lib/Analysis/LazyValueInfo.cpp b/llvm/lib/Analysis/LazyValueInfo.cpp
index e8f2d53..877fc05 100644
--- a/llvm/lib/Analysis/LazyValueInfo.cpp
+++ b/llvm/lib/Analysis/LazyValueInfo.cpp
@@ -677,7 +677,7 @@
BlockValueStack.clear();
return;
}
- std::pair<BasicBlock *, Value *> &e = BlockValueStack.back();
+ std::pair<BasicBlock *, Value *> e = BlockValueStack.back();
assert(BlockValueSet.count(e) && "Stack value should be in BlockValueSet!");
if (solveBlockValue(e.second, e.first)) {