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]>
