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

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|---                         |FIXED

--- Comment #5 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Author: jakub
Date: Fri May 10 08:40:10 2013
New Revision: 198769

URL: http://gcc.gnu.org/viewcvs?rev=198769&root=gcc&view=rev
Log:
    PR tree-optimization/45216
    PR tree-optimization/57157
    * tree-ssa-forwprop.c (simplify_rotate): New function.
    (ssa_forward_propagate_and_combine): Call it.

    * c-c++-common/rotate-1.c: New test.
    * c-c++-common/rotate-1a.c: New test.
    * c-c++-common/rotate-2.c: New test.
    * c-c++-common/rotate-2a.c: New test.
    * c-c++-common/rotate-3.c: New test.
    * c-c++-common/rotate-3a.c: New test.
    * c-c++-common/rotate-4.c: New test.
    * c-c++-common/rotate-4a.c: New test.

Added:
    trunk/gcc/testsuite/c-c++-common/rotate-1.c
    trunk/gcc/testsuite/c-c++-common/rotate-1a.c
    trunk/gcc/testsuite/c-c++-common/rotate-2.c
    trunk/gcc/testsuite/c-c++-common/rotate-2a.c
    trunk/gcc/testsuite/c-c++-common/rotate-3.c
    trunk/gcc/testsuite/c-c++-common/rotate-3a.c
    trunk/gcc/testsuite/c-c++-common/rotate-4.c
    trunk/gcc/testsuite/c-c++-common/rotate-4a.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/tree-ssa-forwprop.c

Author: jakub
Date: Mon May 13 11:04:26 2013
New Revision: 198823

URL: http://gcc.gnu.org/viewcvs?rev=198823&root=gcc&view=rev
Log:
    PR tree-optimization/45216
    PR tree-optimization/57157
    * tree-ssa-forwprop.c (simplify_rotate): Only recognize
    the (-Y) & (B - 1) variant if OP is |.
    * expmed.c (expand_shift_1): For rotations by const0_rtx just
    return shifted.  Use (-op1) & (prec - 1) as other_amount
    instead of prec - op1.

    * c-c++-common/rotate-1.c: Add 32 tests with +.
    * c-c++-common/rotate-1a.c: Adjust.
    * c-c++-common/rotate-2.c: Add 32 tests with +, expect
    only 48 rotates.
    * c-c++-common/rotate-2b.c: New test.
    * c-c++-common/rotate-3.c: Add 32 tests with +.
    * c-c++-common/rotate-4.c: Add 32 tests with +, expect
    only 48 rotates.
    * c-c++-common/rotate-4b.c: New test.
    * c-c++-common/rotate-5.c: New test.

Added:
    trunk/gcc/testsuite/c-c++-common/rotate-5.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/expmed.c
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/testsuite/c-c++-common/rotate-1.c
    trunk/gcc/testsuite/c-c++-common/rotate-1a.c
    trunk/gcc/testsuite/c-c++-common/rotate-2.c
    trunk/gcc/testsuite/c-c++-common/rotate-3.c
    trunk/gcc/testsuite/c-c++-common/rotate-4.c
    trunk/gcc/tree-ssa-forwprop.c

Reply via email to