This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug tree-optimization/21643] GCC fails to merge ranges in comparison.


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21643

--- Comment #6 from Jakub Jelinek <jakub at gcc dot gnu.org> 2012-10-31 08:45:35 UTC ---
Author: jakub
Date: Wed Oct 31 08:45:27 2012
New Revision: 193028

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=193028
Log:
    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.

Added:
    trunk/gcc/testsuite/gcc.c-torture/execute/pr46309.c
    trunk/gcc/testsuite/gcc.dg/pr19105.c
    trunk/gcc/testsuite/gcc.dg/pr21643.c
    trunk/gcc/testsuite/gcc.dg/pr46309-2.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/tree-ssa-reassoc.c


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]