aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-ssa-alias.c
diff options
context:
space:
mode:
authorDiego Novillo <dnovillo@redhat.com>2005-01-18 03:54:38 +0000
committerDiego Novillo <dnovillo@gcc.gnu.org>2005-01-17 22:54:38 -0500
commite03a46f571d5c4144e326ec9965db0a539473090 (patch)
tree0905041f83c7d584e9670c50b9a13715c323e6d7 /gcc/tree-ssa-alias.c
parent696a2ca15ffb199bf85594121380dc0d7399e0c9 (diff)
downloadgcc-e03a46f571d5c4144e326ec9965db0a539473090.zip
gcc-e03a46f571d5c4144e326ec9965db0a539473090.tar.gz
gcc-e03a46f571d5c4144e326ec9965db0a539473090.tar.bz2
re PR tree-optimization/19121 (ICE: in merge_alias_info, at tree-ssa-copy.c:236)
PR tree-optimization/19121 * tree-ssa-alias.c (compute_flow_sensitive_aliasing): When adding aliases to a name tag, also add them to the pointer's type tag. * tree-ssa-copy.c (merge_alias_info): Do not merge flow sensitive alias info at all. Only check that the two pointers have compatible pointed-to sets. * tree-ssa.c (verify_name_tags): Verify that the alias set of a pointer's type tag is a superset of the alias set of the pointer's name tag. testsuite/ChangeLog: PR tree-optimization/19121 * gcc.c-torture/compile/pr19121.c: New test. From-SVN: r93810
Diffstat (limited to 'gcc/tree-ssa-alias.c')
-rw-r--r--gcc/tree-ssa-alias.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/tree-ssa-alias.c b/gcc/tree-ssa-alias.c
index 8df7b82..a410217 100644
--- a/gcc/tree-ssa-alias.c
+++ b/gcc/tree-ssa-alias.c
@@ -913,6 +913,7 @@ compute_flow_sensitive_aliasing (struct alias_info *ai)
EXECUTE_IF_SET_IN_BITMAP (pi->pt_vars, 0, j, bi)
{
add_may_alias (pi->name_mem_tag, referenced_var (j));
+ add_may_alias (v_ann->type_mem_tag, referenced_var (j));
}
/* If the name tag is call clobbered, so is the type tag