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

--- Comment #5 from GCC Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Jeff Law <[email protected]>:

https://gcc.gnu.org/g:1df48a01e07e30592e0119232b1aaf3d41be03f4

commit r17-2312-g1df48a01e07e30592e0119232b1aaf3d41be03f4
Author: Kael Andrew Franco <[email protected]>
Date:   Fri Jul 10 08:28:13 2026 -0600

    [PATCH] match: Use tree_expr_nonnegative_p for (X / Y) (==, !=) 0 -> X
(<,>=) Y [PR125738]

    TYPE_UNSIGNED did not cover non-negative X and Y so use
tree_expr_nonnegative_p
    to relax condition on optimizations.
    gcc/testsuite/gcc.dg/tree-ssa/pr64130.c fails because match.pd optimize
funsigned () before
    evrp pass. Fix this by removing funsigned () and one scan-tree-dump.

    Bootstrapped and tested on x86_64-pc-linux-gnu.

            PR tree-optimization/125738
            PR tree-optimization/64130

    gcc/ChangeLog:

            * match.pd: Use tree_expr_nonnegative_p for (X / Y) (==,!=) 0 -> X
(<,>=) Y.

    gcc/testsuite/ChangeLog:

            * gcc.dg/pr125738.c: New test.
            * gcc.dg/tree-ssa/pr64130.c: Remove scan-tree-dump [2, 8589934591].
            (funsigned): Remove.
            (funsigned2): Rename to funsigned.

    Signed-off-by: Kael Franco <[email protected]>

Reply via email to