diff options
author | Richard Henderson <rth@redhat.com> | 2005-10-12 09:29:35 -0700 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 2005-10-12 09:29:35 -0700 |
commit | a4d25453fa85f413a7b1e61d989a90a32b6f7d09 (patch) | |
tree | b8ef13cc9f00276ccbe3c87c574a81b60275ae03 /gcc/cfgexpand.c | |
parent | 687d71b35f17d75284f39280d2ddd66a98c9b340 (diff) | |
download | gcc-a4d25453fa85f413a7b1e61d989a90a32b6f7d09.zip gcc-a4d25453fa85f413a7b1e61d989a90a32b6f7d09.tar.gz gcc-a4d25453fa85f413a7b1e61d989a90a32b6f7d09.tar.bz2 |
re PR rtl-optimization/23324 (unsigned bitfield in struct not accessed correctly at -O2 and above)
PR rtl-opt/23324
* cfgexpand.c (add_alias_set_conflicts): Use objects_must_conflict_p.
From-SVN: r105306
Diffstat (limited to 'gcc/cfgexpand.c')
-rw-r--r-- | gcc/cfgexpand.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/gcc/cfgexpand.c b/gcc/cfgexpand.c index 7c58e55..69546bf 100644 --- a/gcc/cfgexpand.c +++ b/gcc/cfgexpand.c @@ -285,14 +285,14 @@ add_alias_set_conflicts (void) for (i = 0; i < n; ++i) { - bool aggr_i = AGGREGATE_TYPE_P (TREE_TYPE (stack_vars[i].decl)); - HOST_WIDE_INT set_i = get_alias_set (stack_vars[i].decl); + tree type_i = TREE_TYPE (stack_vars[i].decl); + bool aggr_i = AGGREGATE_TYPE_P (type_i); for (j = 0; j < i; ++j) { - bool aggr_j = AGGREGATE_TYPE_P (TREE_TYPE (stack_vars[j].decl)); - HOST_WIDE_INT set_j = get_alias_set (stack_vars[j].decl); - if (aggr_i != aggr_j || !alias_sets_conflict_p (set_i, set_j)) + tree type_j = TREE_TYPE (stack_vars[j].decl); + bool aggr_j = AGGREGATE_TYPE_P (type_j); + if (aggr_i != aggr_j || !objects_must_conflict_p (type_i, type_j)) add_stack_var_conflict (i, j); } } |