re PR tree-optimization/48571 (Missed data-dependence for (bogus?) reconstructed...
authorRichard Guenther <rguenther@suse.de>
Tue, 30 Aug 2011 14:06:00 +0000 (14:06 +0000)
committerRichard Biener <rguenth@gcc.gnu.org>
Tue, 30 Aug 2011 14:06:00 +0000 (14:06 +0000)
commit315f5f1bfbcbc444e5853fb54fa37edae58e5f91
tree04e75f6b96cabc5abbb23cc93d17526c05e9e9f7
parent2ddd46d69b09a88fb82832285b69090fa08bddc2
re PR tree-optimization/48571 (Missed data-dependence for (bogus?) reconstructed array-refs)

2011-08-30  Richard Guenther  <rguenther@suse.de>

PR middle-end/48571
* gimple.h (maybe_fold_offset_to_address): Remove.
(maybe_fold_offset_to_reference): Likewise.
(maybe_fold_stmt_addition): Likewise.
(may_propagate_address_into_dereference): Likewise.
* tree-inline.c (remap_gimple_op_r): Do not reconstruct
array references.
* gimple-fold.c (canonicalize_constructor_val): Likewise.
Canonicalize invariant POINTER_PLUS_EXPRs to invariant MEM_REF
addresses instead.
(may_propagate_address_into_dereference): Remove.
(maybe_fold_offset_to_array_ref): Likewise.
(maybe_fold_offset_to_reference): Likewise.
(maybe_fold_offset_to_address): Likewise.
(maybe_fold_stmt_addition): Likewise.
(fold_gimple_assign): Do not reconstruct array references but
instead canonicalize invariant POINTER_PLUS_EXPRs to invariant
MEM_REF addresses.
(gimple_fold_stmt_to_constant_1): Likewise.
* tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Likewise.
* gimplify.c (gimplify_conversion): Likewise.
(gimplify_expr): Likewise.

* gcc.c-torture/execute/pr48571-1.c: New testcase.
* gcc.dg/tree-ssa/ssa-ccp-25.c: Remove.
* gcc.dg/tree-ssa/ssa-ccp-26.c: Likewise.
* gcc.dg/pr36902.c: XFAIL.

From-SVN: r178312
gcc/ChangeLog
gcc/gimple-fold.c
gcc/gimple.h
gcc/gimplify.c
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.c-torture/execute/pr48571-1.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/pr36902.c
gcc/testsuite/gcc.dg/tree-ssa/ssa-ccp-25.c [deleted file]
gcc/testsuite/gcc.dg/tree-ssa/ssa-ccp-26.c [deleted file]
gcc/tree-inline.c
gcc/tree-ssa-forwprop.c