summaryrefslogtreecommitdiff
path: root/gcc/alias.c
diff options
context:
space:
mode:
authorrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>2010-08-04 15:35:21 +0000
committerrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>2010-08-04 15:35:21 +0000
commit33dda198dcc60f4424eab87083f2a8f378165f64 (patch)
treeecae90fdd0683290850fccab2a2609a6bd01fa2a /gcc/alias.c
parent27a4fa84f56e505c37b689cc22936159d61f5382 (diff)
downloadgcc-33dda198dcc60f4424eab87083f2a8f378165f64.tar.gz
2010-08-04 Richard Guenther <rguenther@suse.de>
* alias.c (rtx_refs_may_alias_p): Do not resort to TBAA if either alias-set is zero. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@162867 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/alias.c')
-rw-r--r--gcc/alias.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/gcc/alias.c b/gcc/alias.c
index 9b70bb86bb2..f5de4db9d75 100644
--- a/gcc/alias.c
+++ b/gcc/alias.c
@@ -354,7 +354,10 @@ rtx_refs_may_alias_p (const_rtx x, const_rtx mem, bool tbaa_p)
|| !ao_ref_from_mem (&ref2, mem))
return true;
- return refs_may_alias_p_1 (&ref1, &ref2, tbaa_p);
+ return refs_may_alias_p_1 (&ref1, &ref2,
+ tbaa_p
+ && MEM_ALIAS_SET (x) != 0
+ && MEM_ALIAS_SET (mem) != 0);
}
/* Returns a pointer to the alias set entry for ALIAS_SET, if there is