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

--- Comment #14 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Author: jakub
Date: Sat Oct 14 18:47:14 2017
New Revision: 253760

URL: https://gcc.gnu.org/viewcvs?rev=253760&root=gcc&view=rev
Log:
        PR middle-end/62263
        PR middle-end/82498
        * tree-ssa-forwprop.c (simplify_rotate): Allow def_arg1[N]
        to be any operand_equal_p operands.  For & (B - 1) require
        B to be power of 2.  Recognize
        (X << (Y & (B - 1))) | (X >> ((-Y) & (B - 1))) and similar patterns.

        * c-c++-common/rotate-5.c (f2): New function.  Move old
        function to ...
        (f4): ... this.  Use 127 instead of 128.
        (f3, f5, f6): New functions.
        (main): Test all f[1-6] functions, with both 0 and 1 as
        second arguments.
        * c-c++-common/rotate-6.c: New test.
        * c-c++-common/rotate-6a.c: New test.
        * c-c++-common/rotate-7.c: New test.
        * c-c++-common/rotate-7a.c: New test.
        * c-c++-common/rotate-8.c: New test.

Added:
    trunk/gcc/testsuite/c-c++-common/rotate-6.c
    trunk/gcc/testsuite/c-c++-common/rotate-6a.c
    trunk/gcc/testsuite/c-c++-common/rotate-7.c
    trunk/gcc/testsuite/c-c++-common/rotate-7a.c
    trunk/gcc/testsuite/c-c++-common/rotate-8.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/testsuite/c-c++-common/rotate-5.c
    trunk/gcc/tree-ssa-forwprop.c

Reply via email to