This is a follow-up for https://gcc.gnu.org/pipermail/gcc-patches/2026-September/730218.html where the s390 target specific part is split into a separate patch. Furthermore, folding of zero test has been added in the last patch.
Bootstrapped and regtested on - aarch64-unknown-linux-gnu - powerpc64le-unknown-linux-gnu - s390x-ibm-linux-gnu - x86_64-pc-linux-gnu Ok for mainline? Stefan Schulze Frielinghaus (3): s390: Rework zero value behaviour for clz/ctz vect-patterns: Fix defined zero value for clz/ctz vect-patterns: Fold zero test for clz/ctz pattern gcc/config/i386/i386.h | 4 +- gcc/config/rs6000/rs6000.h | 4 +- gcc/config/s390/s390.h | 6 +- gcc/config/s390/s390.md | 3 + gcc/testsuite/gcc.dg/tree-ssa/pr123311-2.c | 1 + gcc/testsuite/gcc.target/s390/clz-ctz-1.c | 316 +++++++++++++++++++++ gcc/tree-vect-patterns.cc | 89 +++++- 7 files changed, 405 insertions(+), 18 deletions(-) create mode 100644 gcc/testsuite/gcc.target/s390/clz-ctz-1.c -- 2.55.0
