From 44f340250e3648e4bab6623d1546a3f84f3b29ef Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Sun, 9 Feb 2003 19:27:21 +0000 Subject: [PATCH] - Fix BasicAA to correctly detect the non-aliasness of A[1] & A[2] git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5518 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Analysis/AliasAnalysis.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/Analysis/AliasAnalysis.cpp b/lib/Analysis/AliasAnalysis.cpp index 2dbff6aa5c7..510db5700e8 100644 --- a/lib/Analysis/AliasAnalysis.cpp +++ b/lib/Analysis/AliasAnalysis.cpp @@ -165,7 +165,7 @@ AliasAnalysis::Result BasicAliasAnalysis::alias(const Value *V1, if (const Instruction *I = dyn_cast(V1)) return alias(I->getOperand(0), V2); if (const Instruction *I = dyn_cast(V2)) - return alias(I->getOperand(0), V1); + return alias(V1, I->getOperand(0)); // If we have two gep instructions with identical indices, return an alias // result equal to the alias result of the original pointer... @@ -197,7 +197,7 @@ AliasAnalysis::Result BasicAliasAnalysis::alias(const Value *V1, // doesn't tell us anything. // if (AllConstant && - alias(GEP1->getOperand(0), GEP2->getOperand(1)) != MayAlias) + alias(GEP1->getOperand(0), GEP2->getOperand(0)) != MayAlias) return NoAlias; }