re PR tree-optimization/52548 (missed PRE optimization when function call follows...
authorRichard Guenther <rguenther@suse.de>
Thu, 22 Mar 2012 13:14:54 +0000 (13:14 +0000)
committerRichard Biener <rguenth@gcc.gnu.org>
Thu, 22 Mar 2012 13:14:54 +0000 (13:14 +0000)
commitcd32bb90f4f3bf158c2b7e22749660ce85e8f619
treefae650def4a7a28004b38754200328a15d3aac87
parent4b74f2b44da5f78d2621f5b7f1c6d774d6d498ac
re PR tree-optimization/52548 (missed PRE optimization when function call follows to-be hoisted variable)

2012-03-22  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/52548
* tree-ssa-pre.c (valid_in_sets): Remove handling of invalidation
because of clobbers.
(prune_clobbered_mems): New function.
(compute_antic_aux): Use it to prune ANTIC_OUT.
(compute_partial_antic_aux): Use it to prune PA_IN.
(compute_avail): Only insert expressions into EXP_GEN that
are not invalidated when translated up to the beginning of
the block.

* gcc.dg/tree-ssa/ssa-pre-29.c: New testcase.

From-SVN: r185691
gcc/ChangeLog
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/tree-ssa/ssa-pre-29.c [new file with mode: 0644]
gcc/tree-ssa-pre.c