https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63464

--- Comment #13 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Author: jakub
Date: Fri Oct 17 10:54:54 2014
New Revision: 216393

URL: https://gcc.gnu.org/viewcvs?rev=216393&root=gcc&view=rev
Log:
    PR tree-optimization/63464
    * gimple.h (gimple_seq_discard): New prototype.
    * gimple.c: Include stringpool.h and tree-ssanames.h.
    (gimple_seq_discard): New function.
    * optabs.h (lshift_cheap_p): New prototype.
    * optabs.c (lshift_cheap_p): New function, moved from...
    * tree-switch-conversion.c (lshift_cheap_p): ... here.
    * tree-ssa-reassoc.c: Include gimplify.h and optabs.h.
    (reassoc_branch_fixups): New variable.
    (update_range_test): Add otherrangep and seq arguments.
    Unshare exp.  If otherrange is NULL, use for other ranges
    array of pointers pointed by otherrangep instead.
    Emit seq before gimplified statements for tem.
    (optimize_range_tests_diff): Adjust update_range_test
    caller.
    (optimize_range_tests_xor): Likewise.  Fix up comment.
    (extract_bit_test_mask, optimize_range_tests_to_bit_test): New
    functions.
    (optimize_range_tests): Adjust update_range_test caller.
    Call optimize_range_tests_to_bit_test.
    (branch_fixup): New function.
    (execute_reassoc): Call branch_fixup.

    * gcc.dg/torture/pr63464.c: New test.
    * gcc.dg/tree-ssa/reassoc-37.c: New test.
    * gcc.dg/tree-ssa/reassoc-38.c: New test.

Added:
    trunk/gcc/testsuite/gcc.dg/torture/pr63464.c
    trunk/gcc/testsuite/gcc.dg/tree-ssa/reassoc-37.c
    trunk/gcc/testsuite/gcc.dg/tree-ssa/reassoc-38.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/gimple.c
    trunk/gcc/gimple.h
    trunk/gcc/optabs.c
    trunk/gcc/optabs.h
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/tree-ssa-reassoc.c
    trunk/gcc/tree-switch-conversion.c

Reply via email to