diff options
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/tree-sra.c | 4 |
2 files changed, 9 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 8323062..15b1503 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2013-01-15 Martin Jambor <mjambor@suse.cz> + + PR tree-optimization/55920 + * tree-sra.c (analyze_access_subtree): Do not mark non-removable + accesses as grp_to_be_debug_replaced. + 2013-01-15 Jakub Jelinek <jakub@redhat.com> PR tree-optimization/55920 diff --git a/gcc/tree-sra.c b/gcc/tree-sra.c index e5fbcf2..234dde2 100644 --- a/gcc/tree-sra.c +++ b/gcc/tree-sra.c @@ -2199,7 +2199,9 @@ analyze_access_subtree (struct access *root, struct access *parent, { if (allow_replacements && scalar && !root->first_child - && (root->grp_scalar_write || root->grp_assignment_write)) + && (root->grp_scalar_write || root->grp_assignment_write) + && !bitmap_bit_p (cannot_scalarize_away_bitmap, + DECL_UID (root->base))) { gcc_checking_assert (!root->grp_scalar_read && !root->grp_assignment_read); |