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

--- Comment #6 from GCC Commits <cvs-commit at gcc dot gnu.org> ---
The trunk branch has been updated by Andrew Pinski <pins...@gcc.gnu.org>:

https://gcc.gnu.org/g:ed88bc2344321ee21e92afdd83b50699c4e4df79

commit r15-5064-ged88bc2344321ee21e92afdd83b50699c4e4df79
Author: Andrew Pinski <quic_apin...@quicinc.com>
Date:   Fri Nov 8 14:46:18 2024 -0800

    fold: Remove (rrotate (rrotate A CST) CST) folding [PR117492]

    This removes an (broken) simplification from fold which is already handled
in match.
    The reason why it was broken is because of the use of wi::to_wide on the
RHS of the
    rotate which could be 2 different types even though the LHS was the same
type.
    Since it is already handled in match (by the patterns for
    `Turn (a OP c1) OP c2 into a OP (c1+c2).`). It can be removed without
losing any optimizations.

    Bootstrapped and tested on x86_64-linux-gnu.

            PR middle-end/117492

    gcc/ChangeLog:

            * fold-const.cc (fold_binary_loc): Remove `Two consecutive rotates
adding up
            to the some integer` simplifcation.

    gcc/testsuite/ChangeLog:

            * gcc.dg/torture/pr117492-1.c: New test.

    Signed-off-by: Andrew Pinski <quic_apin...@quicinc.com>

Reply via email to