Revert r193251 : Use address-taken to disambiguate global variable and indirect memops.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193489 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Shuxin Yang
2013-10-27 03:08:44 +00:00
parent 2d60c09451
commit 69bd41dfe3
18 changed files with 11 additions and 72 deletions
-11
View File
@@ -1238,17 +1238,6 @@ BasicAliasAnalysis::aliasCheck(const Value *V1, uint64_t V1Size,
return NoAlias;
if (isEscapeSource(O2) && isNonEscapingLocalObject(O1))
return NoAlias;
// If one object is a global variable without address taken, the other one
// is a different object, they will not alias because the global variable
// in question cannot be indirectly accessed.
if (const GlobalVariable *GV = dyn_cast<GlobalVariable>(O1))
if (!GV->AddressMaybeTaken())
return NoAlias;
if (const GlobalVariable *GV = dyn_cast<GlobalVariable>(O2))
if (!GV->AddressMaybeTaken())
return NoAlias;
}
// If the size of one access is larger than the entire object on the other