From 38e05395acc76a5e8052abae6333c8a2ffb6008d Mon Sep 17 00:00:00 2001 From: Diego Novillo Date: Tue, 28 Sep 2004 13:45:05 +0000 Subject: [PATCH] tree-ssa-alias.c (create_name_tags): If PTR points to a volatile type, mark the tag volatile. * tree-ssa-alias.c (create_name_tags): If PTR points to a volatile type, mark the tag volatile. (get_tmt_for): If TAG_TYPE is a volatile type, mark the tag volatile. From-SVN: r88232 --- gcc/ChangeLog | 7 +++++++ gcc/tree-ssa-alias.c | 5 ++++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index cfe0b00612a..5f482cce104 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2004-09-28 Diego Novillo + + * tree-ssa-alias.c (create_name_tags): If PTR points to a + volatile type, mark the tag volatile. + (get_tmt_for): If TAG_TYPE is a volatile type, mark the tag + volatile. + 2004-09-28 Andrew Pinski * tree.def (vec_cond_expr): Fix. Change 'e' diff --git a/gcc/tree-ssa-alias.c b/gcc/tree-ssa-alias.c index 883c53d935e..17f2dc98948 100644 --- a/gcc/tree-ssa-alias.c +++ b/gcc/tree-ssa-alias.c @@ -809,6 +809,9 @@ create_name_tags (struct alias_info *ai) continue; } + TREE_THIS_VOLATILE (pi->name_mem_tag) + |= TREE_THIS_VOLATILE (TREE_TYPE (TREE_TYPE (ptr))); + /* Mark the new name tag for renaming. */ bitmap_set_bit (vars_to_rename, var_ann (pi->name_mem_tag)->uid); } @@ -2138,7 +2141,7 @@ get_tmt_for (tree ptr, struct alias_info *ai) } /* If the pointed-to type is volatile, so is the tag. */ - TREE_THIS_VOLATILE (tag) = TREE_THIS_VOLATILE (tag_type); + TREE_THIS_VOLATILE (tag) |= TREE_THIS_VOLATILE (tag_type); /* Make sure that the type tag has the same alias set as the pointed-to type. */ -- 2.30.2