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

            Bug ID: 127557
           Summary: [16 Regression] LoongArch: ICE in gen_reg_rtx, at
                    emit-rtl.cc:1193
           Product: gcc
           Version: 16.2.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: bunk at stusta dot de
  Target Milestone: ---

Created attachment 65662
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=65662&action=edit
preprocessed source

The mixxx package fails to build in Debian on loong64 due to:

$ g++ -v -c TempoTrack.cpp.ii -O3 -funroll-loops -g
Using built-in specs.
COLLECT_GCC=g++
Target: loongarch64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Debian 16.2.0-3'
--with-bugurl=file:///usr/share/doc/gcc-16/README.Bugs
--enable-languages=c,ada,c++,d,fortran,objc,obj-c++,m2,rust,algol68
--prefix=/usr --with-gcc-major-version-only --program-suffix=-16
--program-prefix=loongarch64-linux-gnu- --enable-shared
--enable-linker-build-id --libexecdir=/usr/libexec --without-included-gettext
--enable-threads=posix --libdir=/usr/lib --enable-nls --enable-clocale=gnu
--enable-libstdcxx-debug --enable-libstdcxx-time=yes
--with-default-libstdcxx-abi=new --enable-libstdcxx-backtrace
--enable-gnu-unique-object --disable-libquadmath --disable-libquadmath-support
--enable-plugin --enable-default-pie --with-system-zlib
--enable-libphobos-checking=release --with-target-system-zlib=auto
--enable-objc-gc=auto --enable-multiarch --disable-werror --disable-multilib
--enable-checking=release --build=loongarch64-linux-gnu
--host=loongarch64-linux-gnu --target=loongarch64-linux-gnu
--with-build-config=bootstrap-lto-lean --enable-link-serialization=4
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 16.2.0 (Debian 16.2.0-3) 
COLLECT_GCC_OPTIONS='-v' '-c' '-O3' '-funroll-loops' '-g' '-shared-libgcc'
'-mabi=lp64d' '-march=la64v1.0' '-mfpu=64' '-msimd=lsx' '-mcmodel=medium'
'-mtune=generic'
 /usr/libexec/gcc/loongarch64-linux-gnu/16/cc1plus -fpreprocessed
TempoTrack.cpp.ii -quiet -dumpbase TempoTrack.cpp.ii -dumpbase-ext .ii
-mabi=lp64d -march=la64v1.0 -mfpu=64 -msimd=lsx -mcmodel=medium -mtune=generic
-g -O3 -version -funroll-loops -o /tmp/ccKOQLsF.s
GNU C++20 (Debian 16.2.0-3) version 16.2.0 (loongarch64-linux-gnu)
        compiled by GNU C version 16.2.0, GMP version 6.3.0, MPFR version
4.2.2, MPC version 1.3.1, isl version isl-0.28-GMP

GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
Compiler executable checksum: 81a738ab7504221c343aec96db7e2f9f
during RTL pass: vartrack
/home/bunk/build/mixxx-2.5.6+dfsg/lib/qm-dsp/dsp/tempotracking/TempoTrack.cpp:
In member function ‘double TempoTrack::tempoMM(double*, double*, int)’:
/home/bunk/build/mixxx-2.5.6+dfsg/lib/qm-dsp/dsp/tempotracking/TempoTrack.cpp:397:1:
internal compiler error: in gen_reg_rtx, at emit-rtl.cc:1193
  397 | }
      | ^
0x121cc31df diagnostics::context::diagnostic_impl(rich_location*,
diagnostics::metadata const*, diagnostics::option_id, char const*, void**,
diagnostics::kind)
        ???:0
0x121cafee7 internal_error(char const*, ...)
        ???:0
0x120208dd3 fancy_abort(char const*, int, char const*)
        ???:0
0x1207b9933 gen_reg_rtx(machine_mode)
        ???:0
0x1207d046b copy_to_reg(rtx_def*)
        ???:0
0x120cb28c7 gen_lowpart_general(machine_mode, rtx_def*)
        ???:0
0x120cf65f7 simplify_context::simplify_binary_operation_1(rtx_code,
machine_mode, rtx_def*, rtx_def*, rtx_def*, rtx_def*)
        ???:0
0x120cea87f simplify_context::simplify_binary_operation(rtx_code, machine_mode,
rtx_def*, rtx_def*)
        ???:0
0x120d05753 simplify_rtx(rtx_def const*)
        ???:0
0x121155bb3 emit_note_insn_var_location(variable**, emit_note_data*)
        ???:0
/usr/libexec/gcc/loongarch64-linux-gnu/16/cc1plus -fpreprocessed
TempoTrack.cpp.ii -quiet -dumpbase TempoTrack.cpp.ii -dumpbase-ext .ii
-mabi=lp64d -march=la64v1.0 -mfpu=64 -msimd=lsx -mcmodel=medium -mtune=generic
-g -O3 -version -funroll-loops -o /tmp/ccKOQLsF.s
Please submit a full bug report, with preprocessed source (by using
-freport-bug).
Please include the complete backtrace with any bug report.
See <file:///usr/share/doc/gcc-16/README.Bugs> for instructions.
$

mixxx builds with GCC 15 and with master from 20260902 (everything tested with
the Debian GCC packages).

Reply via email to