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

            Bug ID: 116600
           Summary: internal compiler error: in maybe_record_trace_start,
                    at dwarf2cfi.cc:2584
           Product: gcc
           Version: 15.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: rtl-optimization
          Assignee: unassigned at gcc dot gnu.org
          Reporter: yury.khrustalev at arm dot com
  Target Milestone: ---
              Host: aarch64-none-linux-gnu
            Target: aarch64-none-linux-gnu
             Build: aarch64-none-linux-gnu

Created attachment 59049
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=59049&action=edit
Reduced reproducer from kernel/events/core.c

ICE when cross-compiling Linux kernel at v6.11-rc3 (7c626ce4bae1) for
aarch64-none-linux-gnu target.

GCC code at: e4d3e7f9add (exists in upstream master branch), however the same
or very similar error occurs with the provided reproducer using GCC 10, 11, 12,
13, 14 as well.

See attached reduced reproducer and command below along with the output
(replace $SRC with path to GCC sources):

$ aarch64-none-linux-gnu-gcc -c -O -Wfatal-errors testcase.i -O2 -o /dev/null

Output (warnings omitted):

during RTL pass: dwarf2
testcase.i: In function ‘__arm64_sys_perf_event_open’:
testcase.i:20:56: internal compiler error: in maybe_record_trace_start, at
dwarf2cfi.cc:2584
   20 | void __arm64_sys_perf_event_open() { perf_copy_attr(); }
      |                                                        ^
0x24d3b07 internal_error(char const*, ...)
        $SRC/gcc/diagnostic-global-context.cc:492
0x24c10ef fancy_abort(char const*, int, char const*)
        $SRC/gcc/diagnostic.cc:1658
0xad32d7 maybe_record_trace_start
        $SRC/gcc/dwarf2cfi.cc:2584
0xad3787 create_trace_edges
        $SRC/gcc/dwarf2cfi.cc:2680
0xad3b4b scan_trace
        $SRC/gcc/dwarf2cfi.cc:2911
0xad460b create_cfi_notes
        $SRC/gcc/dwarf2cfi.cc:2938
0xad460b execute_dwarf2_frame
        $SRC/gcc/dwarf2cfi.cc:3309
0xad460b execute
        $SRC/gcc/dwarf2cfi.cc:3797

GCC configured with:

$ aarch64-none-linux-gnu-gcc -v

Output:

Using built-in specs.
COLLECT_GCC=/path/to/toolchain/bin/aarch64-none-linux-gnu-gcc
COLLECT_LTO_WRAPPER=/path/to/toolchain/bin/../libexec/gcc/aarch64-none-linux-gnu/15.0.0/lto-wrapper
Target: aarch64-none-linux-gnu
Configured with: $SRC/configure --target=aarch64-none-linux-gnu --prefix=
--with-sysroot=/aarch64-none-linux-gnu/libc
--with-build-sysroot=/path/to/toolchain/aarch64-none-linux-gnu/libc
--enable-gnu-indirect-function --enable-shared --disable-libssp
--disable-libmudflap --enable-checking=yes --enable-languages=c,c++,fortran
--with-gmp=/path/to/host --with-mpfr=/path/to/host --with-mpc=/path/to/host
--with-isl=/path/to/host
Thread model: posix
Supported LTO compression algorithms: zlib
gcc version 15.0.0 20240902 (experimental) (GCC)


Dependencies:
 - gmp-6.2.1
 - mpfr-4.2.1
 - mpc-1.3.1
 - isl-0.24

Reply via email to