https://gcc.gnu.org/bugzilla/show_bug.cgi?id=123745

            Bug ID: 123745
           Summary: ICE in verify_gimple_in_cfg at -O2 when building
                    kokkos
           Product: gcc
           Version: 16.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code, needs-bisection, needs-reduction
          Severity: normal
          Priority: P3
         Component: middle-end
          Assignee: unassigned at gcc dot gnu.org
          Reporter: jmelcr at gcc dot gnu.org
  Target Milestone: ---
              Host: x86_64-suse-linux
            Target: x86_64-suse-linux

Created attachment 63443
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=63443&action=edit
Large reproducer

Large reproducer attached.

 jmelcr@tumbleweed  ~/osc/home:rguenther:plgrnd/kokkos 
/var/tmp/build-root/openSUSE_Factory-x86_64/usr/bin/g++ -O2 -c
TestOpenMP_Other.cpp.ii
In file included from
/home/abuild/rpmbuild/BUILD/kokkos-4.6.01-build/kokkos-4.6.01/core/unit_test/TestOther.hpp:19,
                 from
/home/abuild/rpmbuild/BUILD/kokkos-4.6.01-build/kokkos-4.6.01/build/core/unit_test/openmp/TestOpenMP_Other.cpp:2:
/home/abuild/rpmbuild/BUILD/kokkos-4.6.01-build/kokkos-4.6.01/core/unit_test/TestMemoryPool.hpp:
In function ‘void TestMemoryPool::test_memory_pool_corners(bool, bool) [with
DeviceType = Kokkos::OpenMP]’:
/home/abuild/rpmbuild/BUILD/kokkos-4.6.01-build/kokkos-4.6.01/core/unit_test/TestMemoryPool.hpp:375:6:
error: conversion of register to a different size in ‘view_convert_expr’
VIEW_CONVERT_EXPR<vector(2) int>(_40);

_39 = VIEW_CONVERT_EXPR<vector(2) int>(_40);
/home/abuild/rpmbuild/BUILD/kokkos-4.6.01-build/kokkos-4.6.01/core/unit_test/TestMemoryPool.hpp:375:6:
error: conversion of register to a different size in ‘view_convert_expr’
VIEW_CONVERT_EXPR<vector(2) int>(_69);

_32 = VIEW_CONVERT_EXPR<vector(2) int>(_69);
during GIMPLE pass: forwprop
/home/abuild/rpmbuild/BUILD/kokkos-4.6.01-build/kokkos-4.6.01/core/unit_test/TestMemoryPool.hpp:375:6:
internal compiler error: verify_gimple failed
0x2f3427e diagnostics::context::diagnostic_impl(rich_location*,
diagnostics::metadata const*, diagnostics::option_id, char const*,
__va_list_tag (*) [1], diagnostics::kind)
        ???:0
0x2f369ff internal_error(char const*, ...)
        ???:0
0x1740a1e verify_gimple_in_cfg(function*, bool, bool)
        ???:0
Please submit a full bug report, with preprocessed source (by using
-freport-bug).
Please include the complete backtrace with any bug report.
See <https://bugs.opensuse.org/> for instructions.

Occurs only at -O2. I am having a hard time reproducing it outside of the
original build environment.

Configuration:
Using built-in specs.
Reading specs from
/var/tmp/build-root/openSUSE_Factory-x86_64/usr/bin/../lib64/gcc/x86_64-suse-linux/16/defaults.spec
COLLECT_GCC=/var/tmp/build-root/openSUSE_Factory-x86_64/usr/bin/g++
COLLECT_LTO_WRAPPER=/var/tmp/build-root/openSUSE_Factory-x86_64/usr/bin/../lib64/gcc/x86_64-suse-linux/16/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-suse-linux
Configured with: ../configure CFLAGS=' -O2 -funwind-tables
-fasynchronous-unwind-tables -fstack-clash-protection -Werror=return-type -g'
CXXFLAGS=' -O2 -funwind-tables -fasynchronous-unwind-tables
-fstack-clash-protection -Werror=return-type -g' XCFLAGS=' -O2 -funwind-tables
-fasynchronous-unwind-tables -fstack-clash-protection -Werror=return-type -g'
TCFLAGS=' -O2 -funwind-tables -fasynchronous-unwind-tables
-fstack-clash-protection -Werror=return-type -g' GDCFLAGS=' -O2 -funwind-tables
-fasynchronous-unwind-tables -fstack-clash-protection -g' --prefix=/usr
--infodir=/usr/share/info --mandir=/usr/share/man --libdir=/usr/lib64
--libexecdir=/usr/lib64
--enable-languages=c,c++,objc,fortran,obj-c++,ada,go,d,jit,rust,m2,cobol,algol68
--enable-offload-targets=nvptx-none,amdgcn-amdhsa, --enable-offload-defaulted
--without-cuda-driver --enable-host-shared --enable-checking=yes
--disable-werror --with-gxx-include-dir=/usr/include/c++/16
--with-libstdcxx-zoneinfo=/usr/share/zoneinfo --enable-ssp --disable-libssp
--disable-libvtv --enable-cet=auto --disable-libcc1 --enable-plugin
--with-bugurl=https://bugs.opensuse.org/ --with-pkgversion='SUSE Linux'
--with-slibdir=/lib64 --with-system-zlib --enable-libstdcxx-allocator=new
--disable-libstdcxx-pch --enable-libphobos
--enable-version-specific-runtime-libs --with-gcc-major-version-only
--enable-linker-build-id --enable-linux-futex --enable-gnu-indirect-function
--program-suffix=-16 --without-system-libunwind --enable-multilib
--with-arch-32=x86-64 --with-tune=generic
--with-build-config=bootstrap-lto-lean --enable-link-serialization
--build=x86_64-suse-linux --host=x86_64-suse-linux
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 16.0.1 20260113 (experimental) (SUSE Linux)

Reply via email to