aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-ssa-alias.c
diff options
context:
space:
mode:
authorDiego Novillo <dnovillo@redhat.com>2005-07-26 19:53:54 +0000
committerDiego Novillo <dnovillo@gcc.gnu.org>2005-07-26 15:53:54 -0400
commit31521cd4e243e9108e23a6a0f668a7e958d0d05b (patch)
tree46ff1d955572ed4e58783492981e66c15ed5997c /gcc/tree-ssa-alias.c
parent4549941152a49defee9ee0208e646573299ce0e2 (diff)
downloadgcc-31521cd4e243e9108e23a6a0f668a7e958d0d05b.zip
gcc-31521cd4e243e9108e23a6a0f668a7e958d0d05b.tar.gz
gcc-31521cd4e243e9108e23a6a0f668a7e958d0d05b.tar.bz2
re PR tree-optimization/22591 (wrong alias information causes an incorrect redundant load elimination)
PR 22591 * tree-ssa-alias.c (may_alias_p): Remove shortcut that tests whether a pointer of type T * may point to objects of type T *. testsuite/ChangeLog PR 22591 * gcc.dg/tree-ssa/pr22591.c: New test. * gcc.dg/tree-ssa/20030807-7.c: XFAIL everywhere. From-SVN: r102393
Diffstat (limited to 'gcc/tree-ssa-alias.c')
-rw-r--r--gcc/tree-ssa-alias.c17
1 files changed, 0 insertions, 17 deletions
diff --git a/gcc/tree-ssa-alias.c b/gcc/tree-ssa-alias.c
index 62c741e..d207903 100644
--- a/gcc/tree-ssa-alias.c
+++ b/gcc/tree-ssa-alias.c
@@ -1511,23 +1511,6 @@ may_alias_p (tree ptr, HOST_WIDE_INT mem_alias_set,
alias_stats.tbaa_queries++;
- /* If VAR is a pointer with the same alias set as PTR, then dereferencing
- PTR can't possibly affect VAR. Note, that we are specifically testing
- for PTR's alias set here, not its pointed-to type. We also can't
- do this check with relaxed aliasing enabled. */
- if (POINTER_TYPE_P (TREE_TYPE (var))
- && var_alias_set != 0
- && mem_alias_set != 0)
- {
- HOST_WIDE_INT ptr_alias_set = get_alias_set (ptr);
- if (ptr_alias_set == var_alias_set)
- {
- alias_stats.alias_noalias++;
- alias_stats.tbaa_resolved++;
- return false;
- }
- }
-
/* If the alias sets don't conflict then MEM cannot alias VAR. */
if (!alias_sets_conflict_p (mem_alias_set, var_alias_set))
{