summaryrefslogtreecommitdiffstats
path: root/llvm/lib
diff options
context:
space:
mode:
authorNuno Lopes <nunoplopes@sapo.pt>2017-08-09 17:02:18 +0000
committerNuno Lopes <nunoplopes@sapo.pt>2017-08-09 17:02:18 +0000
commit78295067317093d31c8b2d5de087a565d2e9e8d3 (patch)
tree4865c9db33b4e0a938213aa943b0b3cd8ec3fb65 /llvm/lib
parentcd3b9fedc78e0399ff761ce8710b309197b76958 (diff)
downloadbcm5719-llvm-78295067317093d31c8b2d5de087a565d2e9e8d3.tar.gz
bcm5719-llvm-78295067317093d31c8b2d5de087a565d2e9e8d3.zip
CFLAA: return MustAlias when pointers p, q are equal, i.e.,
must-alias(p, sz_p, p, sz_q) irrespective of access sizes sz_p, sz_q As discussed a couple of weeks ago on the ML. This makes the behavior consistent with that of BasicAA. AA clients already check the obj size themselves and may not require the obj size to match exactly the access size (e.g., in case of store forwarding) llvm-svn: 310495
Diffstat (limited to 'llvm/lib')
-rw-r--r--llvm/lib/Analysis/CFLAndersAliasAnalysis.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/llvm/lib/Analysis/CFLAndersAliasAnalysis.cpp b/llvm/lib/Analysis/CFLAndersAliasAnalysis.cpp
index 0de7ad98af4..1a3998836cf 100644
--- a/llvm/lib/Analysis/CFLAndersAliasAnalysis.cpp
+++ b/llvm/lib/Analysis/CFLAndersAliasAnalysis.cpp
@@ -837,7 +837,7 @@ AliasResult CFLAndersAAResult::query(const MemoryLocation &LocA,
AliasResult CFLAndersAAResult::alias(const MemoryLocation &LocA,
const MemoryLocation &LocB) {
if (LocA.Ptr == LocB.Ptr)
- return LocA.Size == LocB.Size ? MustAlias : PartialAlias;
+ return MustAlias;
// Comparisons between global variables and other constants should be
// handled by BasicAA.
OpenPOWER on IntegriCloud