Hi,

Sorry for the regression. Looks like after the patch, the value gets folded to zero. Like following:

_gfortran_caf_atomic_define \\(caf_token.., 0, 1, &0, 0B, 1, 4\\);

If it is intended behavior, I will update the testcase tonight.

Yuao

2025年10月21日 10:23,"Jiang, Haochen" <[email protected]>写道:

On Linux/x86_64,

2c1949bf152f8fcadb0ef7a44113c41d18724691 is the first bad commit
commit 2c1949bf152f8fcadb0ef7a44113c41d18724691
Author: Yuao Ma <[email protected]>
Date:   Thu Oct 16 22:32:52 2025 +0800

    fortran: allow character in conditional _expression_

caused

FAIL: gfortran.dg/coarray_atomic_5.f90   -O   scan-tree-dump-times original "_gfortran_caf_atomic_define \\(caf_token.., 0, 1, &value.., 0B, 1, 4\\);" 1
FAIL: gfortran.dg/coarray_atomic_5.f90   -O   scan-tree-dump-times original "value.. = 0;" 1

with GCC configured with

../../gcc/configure --prefix=/export/users3/haochenj/src/gcc-bisect/master/master/r16-4474/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="dg.exp=gfortran.dg/coarray_atomic_5.f90 --target_board='unix{-m32}'"
$ cd {build_dir}/gcc && make check RUNTESTFLAGS="dg.exp=gfortran.dg/coarray_atomic_5.f90 --target_board='unix{-m32\ -march=cascadelake}'"
$ cd {build_dir}/gcc && make check RUNTESTFLAGS="dg.exp=gfortran.dg/coarray_atomic_5.f90 --target_board='unix{-m64}'"
$ cd {build_dir}/gcc && make check RUNTESTFLAGS="dg.exp=gfortran.dg/coarray_atomic_5.f90 --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.)


Reply via email to