Re: [r16-4464 Regression] FAIL: gcc.dg/vect/pr104116-round-umod-2.c scan-tree-dump-times vect "optimized: loop vectorized" 1 on Linux/x86_64

Avinash Jayakar via Gcc-regression <[email protected]>
Newsgroups gmane.comp.gcc.regression,gmane.comp.gcc.patches
Message-ID <[email protected]>
On Tue, 2025-10-21 at 02:22 +0000, Jiang, Haochen wrote:
> On Linux/x86_64,
> 
> 6883d51304f1aa852da3f2b4eb26bdf2e12bbcb9 is the first bad commit
> commit 6883d51304f1aa852da3f2b4eb26bdf2e12bbcb9
> Author: Avinash Jayakar <[email protected]>
> Date:   Fri Oct 17 12:38:59 2025 +0530
> 
>     vect: Add pattern recognition for vectorizing
> {FLOOR,CEIL,ROUND}_{MOD, DIV}_EXPR
> 
> caused
> 
> FAIL: gcc.dg/vect/pr104116-ceil-umod-2.c -flto -ffat-lto-objects 
> scan-tree-dump-times vect "optimized: loop vectorized" 1
> FAIL: gcc.dg/vect/pr104116-ceil-umod-2.c scan-tree-dump-times vect
> "optimized: loop vectorized" 1
> FAIL: gcc.dg/vect/pr104116-ceil-umod-pow2.c -flto -ffat-lto-objects 
> scan-tree-dump-times vect "optimized: loop vectorized" 1
> FAIL: gcc.dg/vect/pr104116-ceil-umod-pow2.c scan-tree-dump-times vect
> "optimized: loop vectorized" 1
> FAIL: gcc.dg/vect/pr104116-round-umod-2.c -flto -ffat-lto-objects 
> scan-tree-dump-times vect "optimized: loop vectorized" 1
> FAIL: gcc.dg/vect/pr104116-round-umod-2.c scan-tree-dump-times vect
> "optimized: loop vectorized" 1
> 
> with GCC configured with
> 
> ../../gcc/configure --prefix=/export/users3/haochenj/src/gcc-
> bisect/master/master/r16-4464/usr --enable-clocale=gnu --with-system-
> zlib --with-demangler-in-ld --with-fpmath=sse --enable-
> languages=c,c++,fortran --enable-cet --without-isl --enable-libmpx
> x86_64-linux --disable-bootstrap
> 
> To reproduce:
> 
> $ cd {build_dir}/gcc && make check
> RUNTESTFLAGS="vect.exp=gcc.dg/vect/pr104116-ceil-umod-2.c --
> target_board='unix{-m32\ -march=cascadelake}'"
> $ cd {build_dir}/gcc && make check
> RUNTESTFLAGS="vect.exp=gcc.dg/vect/pr104116-ceil-umod-2.c --
> target_board='unix{-m64\ -march=cascadelake}'"
> $ cd {build_dir}/gcc && make check
> RUNTESTFLAGS="vect.exp=gcc.dg/vect/pr104116-ceil-umod-pow2.c --
> target_board='unix{-m32\ -march=cascadelake}'"
> $ cd {build_dir}/gcc && make check
> RUNTESTFLAGS="vect.exp=gcc.dg/vect/pr104116-ceil-umod-pow2.c --
> target_board='unix{-m64\ -march=cascadelake}'"
> $ cd {build_dir}/gcc && make check
> RUNTESTFLAGS="vect.exp=gcc.dg/vect/pr104116-round-umod-2.c --
> target_board='unix{-m32\ -march=cascadelake}'"
> $ cd {build_dir}/gcc && make check
> RUNTESTFLAGS="vect.exp=gcc.dg/vect/pr104116-round-umod-2.c --
> target_board='unix{-m64\ -march=cascadelake}'"
> 
> (Please directly reply to this email for question about this report.)
> (If you met problems with cascadelake related, disabling AVX512F in
> command line might save that.)
> (However, please make sure that there is no potential problems with
> AVX512.)


Looks like an extra loop is also vectorized, I will disable
optimization for all those loops and send a patch. 
aarch64 also has similar failure:
https://linaro.atlassian.net/browse/GNU-1707

Thanks,
Avinash
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.