https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99746
--- Comment #15 from Arseny Solokha <asolokha at gmx dot com> --- (In reply to Tamar Christina from comment #13) > (In reply to Arseny Solokha from comment #10) > > (In reply to Tamar Christina from comment #9) > > > I wonder if whatever you're compiling is open source. I'd love to fix > > > some > > > of these cases properly in GCC 12. > > > > These Fortran snippets I've been filing this week are from SCALAPACK 2.0.2 > > as found on Netlib[1]. > > > > [1] https://www.netlib.org/scalapack > > Thanks! This looks like a useful target to improve this with in GCC 12. But > am I missing an option here?: > > CC=~/gcc-base/install/bin/gcc \ > FC=~/gcc-base/install/bin/gfortran \ > CXX=~/gcc-base/install/bin/g++ \ > CFLAGS="-march=armv8.3-a -ftree-vectorize -O2" \ > CXXFLAGS="-march=armv8.3-a -ftree-vectorize -O2" \ > FFLAGS="-march=armv8.3-a -ftree-vectorize -O2" \ > cmake .. && make -j > > I can't seem to get it to trigger the crash (or even detect the pattern). I actually don't build the library as a library, I only use individual source files in my test corpus. I run (somewhat) automated gcc fuzz testing for several years by now. I briefly explained it in the first paragraph of PR92115 comment 4 (and likely elsewhere), but can discuss it in more details if so desired. As an approximation, you can do something as simple as > ~/scalapack-2.1.0/SRC % for i in *.f; do echo "Compiling $i"; > aarch64-linux-gnu-gfortran-11.0.1 -march=armv8.3-a -O2 -ftree-vectorize -c > $i; done which gives me two instances of an ICE filed in this PR w/ the last weekly snapshot, though my test harness works somewhat differently. % aarch64-linux-gnu-gfortran-11.0.1 -v Using built-in specs. COLLECT_GCC=aarch64-linux-gnu-gfortran-11.0.1 COLLECT_LTO_WRAPPER=/usr/libexec/gcc/aarch64-linux-gnu/11.0.1/lto-wrapper Target: aarch64-linux-gnu Configured with: /var/tmp/portage/cross-aarch64-linux-gnu/gcc-11.0.1_alpha20210321/work/gcc-11-20210321/configure --host=x86_64-pc-linux-gnu --target=aarch64-linux-gnu --build=x86_64-pc-linux-gnu --prefix=/usr --bindir=/usr/x86_64-pc-linux-gnu/aarch64-linux-gnu/gcc-bin/11.0.1 --includedir=/usr/lib/gcc/aarch64-linux-gnu/11.0.1/include --datadir=/usr/share/gcc-data/aarch64-linux-gnu/11.0.1 --mandir=/usr/share/gcc-data/aarch64-linux-gnu/11.0.1/man --infodir=/usr/share/gcc-data/aarch64-linux-gnu/11.0.1/info --with-gxx-include-dir=/usr/lib/gcc/aarch64-linux-gnu/11.0.1/include/g++-v11 --with-python-dir=/share/gcc-data/aarch64-linux-gnu/11.0.1/python --enable-languages=c,c++,fortran --enable-obsolete --enable-secureplt --disable-werror --with-system-zlib --disable-nls --enable-checking=yes --disable-esp --enable-libstdcxx-time --disable-libstdcxx-pch --enable-poison-system-directories --with-sysroot=/usr/aarch64-linux-gnu --disable-bootstrap --enable-__cxa_atexit --enable-clocale=gnu --disable-multilib --disable-fixed-point --enable-libgomp --disable-libssp --disable-libada --disable-systemtap --enable-valgrind-annotations --disable-vtable-verify --disable-libvtv --without-zstd --enable-lto --with-isl --disable-isl-version-check --enable-default-pie --enable-default-ssp Thread model: posix Supported LTO compression algorithms: zlib gcc version 11.0.1 20210321 (experimental) (GCC)