[llvm-commits] [llvm] r44437 - /llvm/trunk/lib/Transforms/Scalar/GVN.cpp
Owen Anderson
resistor at mac.com
Thu Nov 29 10:02:23 PST 2007
Author: resistor
Date: Thu Nov 29 12:02:22 2007
New Revision: 44437
URL: http://llvm.org/viewvc/llvm-project?rev=44437&view=rev
Log:
Fix a miscompilation in spiff on PPC.
Modified:
llvm/trunk/lib/Transforms/Scalar/GVN.cpp
Modified: llvm/trunk/lib/Transforms/Scalar/GVN.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Transforms/Scalar/GVN.cpp?rev=44437&r1=44436&r2=44437&view=diff
==============================================================================
--- llvm/trunk/lib/Transforms/Scalar/GVN.cpp (original)
+++ llvm/trunk/lib/Transforms/Scalar/GVN.cpp Thu Nov 29 12:02:22 2007
@@ -1054,7 +1054,8 @@
if (CI->getCalledFunction() &&
!AA.doesNotAccessMemory(CI->getCalledFunction())) {
MemoryDependenceAnalysis& MD = getAnalysis<MemoryDependenceAnalysis>();
- if (MD.getDependency(CI) != MD.getDependency(cast<CallInst>(repl))) {
+ if (cast<Instruction>(repl)->getParent() != CI->getParent() ||
+ MD.getDependency(CI) != MD.getDependency(cast<CallInst>(repl))) {
// There must be an intervening may-alias store, so nothing from
// this point on will be able to be replaced with the preceding call
currAvail.erase(repl);
More information about the llvm-commits
mailing list