RFR: [8u] 8141570: Fix Zero interpreter build for --disable-precompiled-headers

Severin Gehwolf sgehwolf at redhat.com
Thu Aug 22 08:52:38 UTC 2019

Hi Andrew,

On Wed, 2019-08-21 at 20:33 +0100, Andrew John Hughes wrote:
> This is the first of a series of four changes to support -Wreturn-type
> in OpenJDK 8u. The -Wreturn-type warning catches instances where control
> flow exits a non-void function without returning a value. This can
> combine with compiler optimisations in some cases to cause runtime
> crashes. The warning is turned on by default in GCC 8 [0], causing the
> build to fail if it is not explicitly disabled.
> The subsequent changes are JDK-8062808 to apply the warning and fix
> issues in the default build, JDK-8143245 to fix issues in the Zero build
> and JDK-8197981 to fix one remaining Zero issue on 32-bit platforms only.
> This change ensures the Zero build is not broken by 8062808 by disabling
> -Wreturn-type in the Zero makefile.
> Changes in the backport process:
> * The G1 changes are dropped as 8u does not contain JDK-8073013, which
> introduces g1EvacStats.*
> * I've changed the ifeq ($(USE_CLANG), true) to ifeq
> ($(JVM_VARIANT_ZEROSHARK), true). There seems to have been a mistake in
> the original patch which equated LLVM with clang. What is actually
> referred to by "some version of llvm do not like -Wundef" is the LLVM
> headers that Shark is built against, not the clang compiler which also
> uses LLVM. This made its way through to the new HotSpot build in OpenJDK
> 9 & 10, but is gone as of JDK-8198724 in OpenJDK 11 and later.
> This backport has been in IcedTea since 3.8.0 (2018-05-29) [1] and our
> RHEL RPMs since 2018-06-16 without issue. Builds of current 8u-dev on
> x86_64 with Zero release and Zero slowdebug succeeded.
> [0] https://gcc.gnu.org/gcc-8/changes.html
> [1] https://icedtea.classpath.org/bugzilla/show_bug.cgi?id=3548

I don't see any webrev. Did you forget to link to it?


More information about the jdk8u-dev mailing list