aboutsummaryrefslogtreecommitdiff
path: root/gcc/alias.c
diff options
context:
space:
mode:
authorRichard Guenther <rguenther@suse.de>2010-08-04 15:35:21 +0000
committerRichard Biener <rguenth@gcc.gnu.org>2010-08-04 15:35:21 +0000
commit55e3bc4cec7595280c4a69b258cafd887b6d9684 (patch)
treeecae90fdd0683290850fccab2a2609a6bd01fa2a /gcc/alias.c
parent079e56d05c8f12be7596ba1d4b59e9e8b30f74a6 (diff)
downloadgcc-55e3bc4cec7595280c4a69b258cafd887b6d9684.zip
gcc-55e3bc4cec7595280c4a69b258cafd887b6d9684.tar.gz
gcc-55e3bc4cec7595280c4a69b258cafd887b6d9684.tar.bz2
alias.c (rtx_refs_may_alias_p): Do not resort to TBAA if either alias-set is zero.
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. From-SVN: r162867
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 9b70bb8..f5de4db 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