re PR tree-optimization/52448 (cselim broken with calls)
authorMichael Matz <matz@suse.de>
Fri, 8 Feb 2013 12:31:19 +0000 (12:31 +0000)
committerMichael Matz <matz@gcc.gnu.org>
Fri, 8 Feb 2013 12:31:19 +0000 (12:31 +0000)
commitc1ca73d819136e8fee6af5b8a616840ee59594d6
tree99700408764ad5a20e6a73e2ec4fd9e31bc0b840
parent57548aa2498bf086d23cdc30993a65c36993542b
re PR tree-optimization/52448 (cselim broken with calls)

PR tree-optimization/52448

* tree-ssa-phiopt.c (struct name_to_bb): Add phase member.
(nt_call_phase): New static.
(add_or_mark_expr): Only mark accesses with newer phase than any
call seen.
(nonfreeing_call_p): New.
(nt_init_block): Update nt_call_phase, mark blocks as visited.
(nt_fini_block): Keep blocks marked as visited.
(get_non_trapping): Initialize nt_call_phase, and reset aux pointer.

testsuite/
PR tree-optimization/52448
* gcc.dg/pr52448.c: New test.

From-SVN: r195883
gcc/ChangeLog
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/pr52448.c [new file with mode: 0644]
gcc/tree-ssa-phiopt.c