re PR middle-end/40493 (New SRA miscompiled binutils)
authorMartin Jambor <mjambor@suse.cz>
Thu, 25 Jun 2009 10:38:13 +0000 (12:38 +0200)
committerMartin Jambor <jamborm@gcc.gnu.org>
Thu, 25 Jun 2009 10:38:13 +0000 (12:38 +0200)
commitfac52fdd5b2bcb8a8de17f11325137014a2da118
tree718da72732da433bf3f10ba2b58f028bd36e7d32
parent2a31c32ba59f8772f3bdf62b7f74523d0a0a4583
re PR middle-end/40493 (New SRA miscompiled binutils)

2009-06-25  Martin Jambor  <mjambor@suse.cz>

PR tree-optimization/40493
* tree-sra.c (sra_modify_expr): Correct BIT_FIELD_REF argument numbers.
(enum unscalarized_data_handling): New type.
(handle_unscalarized_data_in_subtree): Return what has been done.
(load_assign_lhs_subreplacements): Handle left flushes differently.
(sra_modify_assign): Use unscalarized_data_handling, simplified
condition determining whether to remove the statement.

* testsuite/gcc.c-torture/execute/pr40493.c: New test.

From-SVN: r148941
gcc/ChangeLog
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.c-torture/execute/pr40493.c [new file with mode: 0644]
gcc/tree-sra.c