OSDN Git Service

PR tree-optimization/19105
authorjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 31 Oct 2012 08:45:27 +0000 (08:45 +0000)
committerjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 31 Oct 2012 08:45:27 +0000 (08:45 +0000)
commit8a2c774414018bc26dd5a7516a7b4ed6ae4e15aa
tree260b507c59290539996f49c796ce84539ec8f3cc
parentb72fb85494e3eb7992cc6ff553524c61f399b923
PR tree-optimization/19105
PR tree-optimization/21643
PR tree-optimization/46309
* tree-ssa-reassoc.c (init_range_entry): Add STMT argument
and use it if EXP is NULL.
(update_range_test): Handle OPCODE equal to ERROR_MARK
and oe->op NULL.
(optimize_range_tests): Likewise.
(final_range_test_p, suitable_cond_bb, no_side_effect_bb, get_ops,
maybe_optimize_range_tests): New functions.
(reassociate_bb): Call maybe_optimize_range_tests if last
stmt of bb is GIMPLE_COND that hasn't been visited yet.

* gcc.dg/pr19105.c: New test.
* gcc.dg/pr21643.c: New test.
* gcc.dg/pr46309-2.c: New test.
* gcc.c-torture/execute/pr46309.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@193028 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.c-torture/execute/pr46309.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/pr19105.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/pr21643.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/pr46309-2.c [new file with mode: 0644]
gcc/tree-ssa-reassoc.c