https://gcc.gnu.org/bugzilla/show_bug.cgi?id=123109
--- Comment #4 from GCC Commits <cvs-commit at gcc dot gnu.org> --- The master branch has been updated by Pengxuan Zheng <[email protected]>: https://gcc.gnu.org/g:8d5eb4f6c1f248340f12adbe76882c3615343e8b commit r16-6753-g8d5eb4f6c1f248340f12adbe76882c3615343e8b Author: Pengxuan Zheng <[email protected]> Date: Fri Jan 9 10:49:45 2026 -0800 match: (X >> C) NE/EQ 0 -> X LT/GE 0 [PR123109] Implement (X >> C) NE/EQ 0 -> X LT/GE 0 in match.pd instead of fold-const.cc. Bootstrapped and tested on x86_64 and aarch64. PR tree-optimization/123109 gcc/ChangeLog: * fold-const.cc (fold_binary_loc): Remove (X >> C) NE/EQ 0 -> X LT/GE 0 folding. * match.pd (`(X >> C) NE/EQ 0 -> X LT/GE 0`): New pattern. gcc/testsuite/ChangeLog: * gcc.dg/tree-ssa/vrp99.c: Update test. * gcc.dg/pr123109.c: New test. Signed-off-by: Pengxuan Zheng <[email protected]>
