diff options
author | Jakub Jelinek <jakub@redhat.com> | 2012-10-31 09:45:27 +0100 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2012-10-31 09:45:27 +0100 |
commit | d578e863b08e64789f767c95f85acd10dc477bdf (patch) | |
tree | 260b507c59290539996f49c796ce84539ec8f3cc /gcc/expr.c | |
parent | c727fb67fb48a1f45675a2584b7fe41c4745a929 (diff) | |
download | gcc-d578e863b08e64789f767c95f85acd10dc477bdf.zip gcc-d578e863b08e64789f767c95f85acd10dc477bdf.tar.gz gcc-d578e863b08e64789f767c95f85acd10dc477bdf.tar.bz2 |
re PR tree-optimization/19105 (fold does not spot anti-range test)
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.
From-SVN: r193028
Diffstat (limited to 'gcc/expr.c')
0 files changed, 0 insertions, 0 deletions