From e485f0600aa70ddbf2a7d37248277fd54b459cd8 Mon Sep 17 00:00:00 2001 From: Severin Gehwolf Date: Thu, 13 Sep 2018 16:07:29 +0200 Subject: [PATCH] Temporarily disable dcos/dsin math intrinsics on aarch64. Work-around for currently not fixed bug: https://bugs.openjdk.java.net/browse/JDK-8210461 --- ...-workaround-disable-aarch64-intrinsic.patch | 18 ++++++++++++++++++ java-11-openjdk.spec | 12 +++++++++++- 2 files changed, 29 insertions(+), 1 deletion(-) create mode 100644 RHBZ-1628612-JDK-8210461-workaround-disable-aarch64-intrinsic.patch diff --git a/RHBZ-1628612-JDK-8210461-workaround-disable-aarch64-intrinsic.patch b/RHBZ-1628612-JDK-8210461-workaround-disable-aarch64-intrinsic.patch new file mode 100644 index 0000000..7edc7a1 --- /dev/null +++ b/RHBZ-1628612-JDK-8210461-workaround-disable-aarch64-intrinsic.patch @@ -0,0 +1,18 @@ +diff -r 1ddf9a99e4ad src/hotspot/cpu/aarch64/stubGenerator_aarch64.cpp +--- a/src/hotspot/cpu/aarch64/stubGenerator_aarch64.cpp Wed Aug 22 21:50:12 2018 +0200 ++++ b/src/hotspot/cpu/aarch64/stubGenerator_aarch64.cpp Thu Sep 13 13:51:53 2018 +0100 +@@ -5745,11 +5745,13 @@ + } + + if (vmIntrinsics::is_intrinsic_available(vmIntrinsics::_dsin)) { +- StubRoutines::_dsin = generate_dsin_dcos(/* isCos = */ false); ++ // disabled pending fix and retest of generated code ++ // StubRoutines::_dsin = generate_dsin_dcos(/* isCos = */ false); + } + + if (vmIntrinsics::is_intrinsic_available(vmIntrinsics::_dcos)) { +- StubRoutines::_dcos = generate_dsin_dcos(/* isCos = */ true); ++ // disabled pending fix and retest of generated code ++ // StubRoutines::_dcos = generate_dsin_dcos(/* isCos = */ true); + } + } diff --git a/java-11-openjdk.spec b/java-11-openjdk.spec index eb61394..34313c5 100644 --- a/java-11-openjdk.spec +++ b/java-11-openjdk.spec @@ -838,7 +838,7 @@ Provides: java-%{javaver}-%{origin}-src%{?1} = %{epoch}:%{version}-%{release} Name: java-%{javaver}-%{origin} Version: %{newjavaver}.%{buildver} -Release: 4%{?dist} +Release: 5%{?dist} # java-1.5.0-ibm from jpackage.org set Epoch to 1 for unknown reasons # and this change was brought into RHEL-4. java-1.5.0-ibm packages # also included the epoch in their virtual provides. This created a @@ -910,6 +910,10 @@ Patch3: libjpeg-turbo-1.4-compat.patch Patch4: RHBZ-1249083-system-crypto-policy-PR3183.patch # System NSS via SunEC Provider Patch5: RHBZ-1565658-system-nss-SunEC.patch +# Temporarily disable dsin/dcos intrinsics on aarch64, falling +# back to C code. Re-enable once JDK-8210461 is fixed and +# available in jdk11u. +Patch6: RHBZ-1628612-JDK-8210461-workaround-disable-aarch64-intrinsic.patch ############################################# # @@ -1180,6 +1184,7 @@ pushd %{top_level_dir_name} %patch3 -p1 %patch4 -p1 %patch5 -p1 +%patch6 -p1 popd # openjdk @@ -1730,6 +1735,11 @@ require "copy_jdk_configs.lua" %changelog +* Thu Sep 13 2018 Severin Gehwolf - 1:11.0.ea.28-5 +- Add patch, RHBZ-1628612-JDK-8210461-workaround-disable-aarch64-intrinsic.patch, + so as to disable dsin/dcos math intrinsics on aarch64. Work-around for + JDK-8210461. + * Mon Sep 10 2018 Jiri Vanek - 1:11.0.ea.28-4 - link to jhsdb followed its file to ifarch jit_arches ifnarch s390x