Internal compiler error for slowdebug build with gcc 7.5.0 on Ubuntu 18.04

Volker Simonis volker.simonis at gmail.com
Mon Feb 14 13:42:15 UTC 2022


I found the root cause of this issue. On my machine it was caused by
the fact that I've installed version `release-4.6` of systemtap like
so:
```
$ git clone git://sourceware.org/git/systemtap.git
$ cd systemtap/
$ git checkout release-4.6
$ ./configure && make         // no errors
$ sudo make install
```

This leads to the described GCC internal error (even with GCC 10.3.0):
```
gcc version 10.3.0 (Ubuntu 10.3.0-1ubuntu1~18.04~1)
...
during RTL pass: reload
/OpenJDK/Git/jdk/src/hotspot/share/compiler/compileBroker.cpp: In
static member function ‘static void
CompileBroker::invoke_compiler_on_method(CompileTask*)’:
/OpenJDK/Git/jdk/src/hotspot/share/compiler/compileBroker.cpp:2415:1:
internal compiler error: maximum number of generated reload insns per
insn achieved (90)
 2415 | }
      | ^
Please submit a full bug report,
```

By uninstalling systemtap or by upgrading to a newer version (after
`sys/sdt.h fp constraints cont'd, x86-64 edition` [1]) the problem
goes away. That systemtap change works around the yet unfixed GCC bug
`2028798 - gcc: reload failures on x86-64 after Systemtap 4.6 upgrade
` [2] described before.

All very strange and maybe another argument for deprecating DTRACE support [3]?

[1] https://sourceware.org/git/?p=systemtap.git;a=commit;h=1d3653936fc1fd13135a723a27e6c7e959793ad0
[2] https://bugzilla.redhat.com/show_bug.cgi?id=2028798
[3] https://bugs.openjdk.java.net/browse/JDK-8278423

On Thu, Feb 10, 2022 at 4:08 PM Volker Simonis <volker.simonis at gmail.com> wrote:
>
> Hi,
>
> When compiling the latest HS sources in slowdebug mode with gcc 7.5.0
> (the default compiler on Ubuntu 18.04) I get the following internal
> compiler error for the file compileBroker.cpp:
>
> /OpenJDK/Git/jdk/src/hotspot/share/compiler/compileBroker.cpp: In
> static member function 'static voi
> d CompileBroker::invoke_compiler_on_method(CompileTask*)':
> /OpenJDK/Git/jdk/src/hotspot/share/compiler/compileBroker.cpp:2393:1:
> internal compiler error: Max. number of generated reload insns per
> insn is achieved (90)
>
>  }
>  ^
> Please submit a full bug report,
> with preprocessed source if appropriate.
> See <file:///usr/share/doc/gcc-7/README.Bugs> for instructions.
>
> I know that gcc 7.5.0 isn't officially supported but was just curious
> if somebody has seen this before? Googling around shows that this
> issue seems to have been fixed several times in gcc 4.9 and
> specifically for ppc/rs6000.
>
> I've installed and tried gcc 8.4.0 but the error remains the same:
>
> GNU C++14 (Ubuntu 8.4.0-1ubuntu1~18.04) version 8.4.0 (x86_64-linux-gnu)
>     compiled by GNU C version 8.4.0, GMP version 6.1.2, MPFR version
> 4.0.1, MPC version 1.1.0, isl version isl-0.19-GMP
>
> GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
> GNU assembler version 2.30 (x86_64-linux-gnu) using BFD version (GNU
> Binutils for Ubuntu) 2.30
> Compiler executable checksum: 67fba09f596cc8a67df33f8529603bfb
> during RTL pass: reload
> /OpenJDK/Git/jdk/src/hotspot/share/compiler/compileBroker.cpp: In
> static member function ‘static void
> CompileBroker::invoke_compiler_on_method(CompileTask*)’:
> /OpenJDK/Git/jdk/src/hotspot/share/compiler/compileBroker.cpp:2393:1:
> internal compiler error: Max. number of generated reload insns per
> insn is achieved (90)
>
>  }
>  ^
> Please submit a full bug report,
> with preprocessed source if appropriate.
> See <file:///usr/share/doc/gcc-8/README.Bugs> for instructions.
>
> According to the "Supported Build Platforms" Wiki [1] it seems that at
> least SAP is using gcc 8. Have you run into this issue as well? Any
> ideas how to fix it without upgrading to gcc 10?
>
> Thank you and best regards,
> Volker
>
> PS: the release build works perfectly fine with gcc 7.5.0
>
> [1] https://wiki.openjdk.java.net/display/Build/Supported+Build+Platforms


More information about the hotspot-dev mailing list