RFR: 8319570: Change to GCC 13.2.0 for building on Linux at Oracle

Mikael Vidstedt mikael at openjdk.org
Tue Nov 7 23:44:28 UTC 2023


Oracle is updating the version of GCC for building the JDK on Linux to 13.2.0.

Apart from the "obvious" changes, I'll add some color to the CompileJvm.gmk changes. In particular, I ran into two different types of new warnings with GCC 13.2.0:

1. linux-aarch64-debug + stringop-overflow

`src/hotspot/os_cpu/linux_aarch64/atomic_linux_aarch64.hpp:203:66: error: 'long unsigned int __atomic_load_8(const volatile void*, int)' writing 8 bytes into a region of size 0 overflows the destination [-Werror=stringop-overflow=]`

Only reproduces with fastdebug on linux-aarch64. I tried to understand why the warning is generated and how the code could be fixed but eventually had to give up.. I ended up disabling the warning for linux-aarch64-debug specifically but open to feedback and other alternatives.

2. linux + zero + dangling-pointer


`src/hotspot/share/runtime/thread.hpp:579:77: error: storing the address of local variable 'rm' in '*_thr_current.Thread::_current_resource_mark' [-Werror=dangling-pointer=]`

The linux/zero build generates lots and lots of dangling pointer warnings. As with the first warning I tried to understand why but also gave up in the end. Like the first warning I disabled it instead, for zero builds. Again appreciating feedback/suggestions.

-------------

Commit messages:
 - 8319570: Change to GCC 13.2.0 for building on Linux at Oracle

Changes: https://git.openjdk.org/jdk/pull/16550/files
 Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=16550&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8319570
  Stats: 34 lines in 5 files changed: 23 ins; 0 del; 11 mod
  Patch: https://git.openjdk.org/jdk/pull/16550.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/16550/head:pull/16550

PR: https://git.openjdk.org/jdk/pull/16550


More information about the build-dev mailing list