From ff99e0ff3e221be96ef94b4c97fd103dd1f3e01b Mon Sep 17 00:00:00 2001 From: Andrew John Hughes Date: Mon, 28 Jan 2019 18:07:43 +0000 Subject: [PATCH] Update to shenandoah-jdk-11.0.2+7 (January 2019 CPU) Drop JDK-8211105/RH1628612/RH1630996 applied upstream. Drop JDK-8209639/RH1640127 applied upstream. Re-generate JDK-8210416/RH1632174 following JDK-8209786 --- .gitignore | 1 + java-11-openjdk.spec | 22 ++-- ...alesce_attempted_spill_non_spillable.patch | 114 ------------------ ...ffp_contract_off_on_gcc_clang_arches.patch | 6 +- ...4-disable_cos_sin_and_log_intrinsics.patch | 35 ------ sources | 2 +- 6 files changed, 15 insertions(+), 165 deletions(-) delete mode 100644 jdk8209639-rh1640127-02-coalesce_attempted_spill_non_spillable.patch delete mode 100644 jdk8211105-aarch64-disable_cos_sin_and_log_intrinsics.patch diff --git a/.gitignore b/.gitignore index f017ec9..a359e44 100644 --- a/.gitignore +++ b/.gitignore @@ -5,3 +5,4 @@ /shenandoah-jdk11-shenandoah-jdk-11+28.tar.xz /shenandoah-jdk11-shenandoah-jdk-11.0.1+13.tar.xz /shenandoah-jdk11-shenandoah-jdk-11.0.1+13-20190101.tar.xz +/shenandoah-jdk11-shenandoah-jdk-11.0.2+7.tar.xz diff --git a/java-11-openjdk.spec b/java-11-openjdk.spec index 872bd3b..a68d0a0 100644 --- a/java-11-openjdk.spec +++ b/java-11-openjdk.spec @@ -206,7 +206,7 @@ # New Version-String scheme-style defines %global majorver 11 -%global securityver 1 +%global securityver 2 # buildjdkver is usually same as %%{majorver}, # but in time of bootstrap of next jdk, it is majorver-1, # and this it is better to change it here, on single place @@ -228,8 +228,8 @@ %global origin_nice OpenJDK %global top_level_dir_name %{origin} %global minorver 0 -%global buildver 13 -%global tagsuffix 20190101 +%global buildver 7 +#%%global tagsuffix "" # priority must be 8 digits in total; untill openjdk 1.8 we were using 18..... so when moving to 11 we had to add another digit %if %is_system_jdk %global priority %( printf '%02d%02d%02d%02d' %{majorver} %{minorver} %{securityver} %{buildver} ) @@ -957,7 +957,7 @@ Provides: java-src%{?1} = %{epoch}:%{version}-%{release} Name: java-%{javaver}-%{origin} Version: %{newjavaver}.%{buildver} -Release: 11%{?dist} +Release: 0%{?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 @@ -1064,10 +1064,6 @@ Patch10: jdk8210647-rh1632174-libsaproc_is_being_compiled_without_optimizatio Patch11: jdk8210761-rh1632174-libjsig_is_being_compiled_without_optimization.patch # 8210703, RHBZ#1632174: vmStructs.cpp compiled with -O0 Patch12: jdk8210703-rh1632174-vmStructs_cpp_no_longer_compiled_with_o0 -# 8211105, RHBZ-1628612, RHBZ-1630996: Temporarily disable dsin/dcos/log -# intrinsics on aarch64, falling back to C code. Re-enable once JDK-8210461 -# is fixed and available in jdk11u. -Patch6: jdk8211105-aarch64-disable_cos_sin_and_log_intrinsics.patch ############################################# # @@ -1075,8 +1071,6 @@ Patch6: jdk8211105-aarch64-disable_cos_sin_and_log_intrinsics.patch # ############################################# -Patch584: jdk8209639-rh1640127-02-coalesce_attempted_spill_non_spillable.patch - BuildRequires: autoconf BuildRequires: automake BuildRequires: alsa-lib-devel @@ -1324,13 +1318,11 @@ pushd %{top_level_dir_name} %patch3 -p1 %patch4 -p1 %patch5 -p1 -%patch6 -p1 %patch8 -p1 %patch9 -p1 %patch10 -p1 %patch11 -p1 %patch12 -p1 -%patch584 -p1 %patch525 -p1 popd # openjdk @@ -1882,6 +1874,12 @@ require "copy_jdk_configs.lua" %changelog +* Tue Jan 15 2019 Andrew Hughes - 1:11.0.2.7-0 +- Update to shenandoah-jdk-11.0.2+7 (January 2019 CPU) +- Drop JDK-8211105/RH1628612/RH1630996 applied upstream. +- Drop JDK-8209639/RH1640127 applied upstream. +- Re-generate JDK-8210416/RH1632174 following JDK-8209786 + * Fri Jan 11 2019 Andrew Hughes - 1:11.0.1.13-11 - Update to shenandoah-jdk-11.0.1+13-20190101 - Update tarball generation script in preparation for PR3681/RH1656677 SunEC changes. diff --git a/jdk8209639-rh1640127-02-coalesce_attempted_spill_non_spillable.patch b/jdk8209639-rh1640127-02-coalesce_attempted_spill_non_spillable.patch deleted file mode 100644 index b3221f8..0000000 --- a/jdk8209639-rh1640127-02-coalesce_attempted_spill_non_spillable.patch +++ /dev/null @@ -1,114 +0,0 @@ - -# HG changeset patch -# User roland -# Date 1534518792 -7200 -# Node ID 690d9be191bf068b68c37bc835b355b1535e6075 -# Parent 5be470fb7a19293eb95fd33806413b94abca9724 -8209639: assert failure in coalesce.cpp: attempted to spill a non-spillable item -Reviewed-by: neliasso, kvn - -diff -r 5be470fb7a19 -r 690d9be191bf src/hotspot/share/opto/coalesce.cpp ---- a/src/hotspot/share/opto/coalesce.cpp Tue Oct 16 12:47:56 2018 +0100 -+++ b/src/hotspot/share/opto/coalesce.cpp Fri Aug 17 17:13:12 2018 +0200 -@@ -25,6 +25,7 @@ - #include "precompiled.hpp" - #include "memory/allocation.inline.hpp" - #include "opto/block.hpp" -+#include "opto/c2compiler.hpp" - #include "opto/cfgnode.hpp" - #include "opto/chaitin.hpp" - #include "opto/coalesce.hpp" -@@ -294,9 +295,13 @@ - } else { - uint ireg = m->ideal_reg(); - if (ireg == 0 || ireg == Op_RegFlags) { -- assert(false, "attempted to spill a non-spillable item: %d: %s, ireg = %u, spill_type: %s", -- m->_idx, m->Name(), ireg, MachSpillCopyNode::spill_type(MachSpillCopyNode::PhiInput)); -- C->record_method_not_compilable("attempted to spill a non-spillable item"); -+ if (C->subsume_loads()) { -+ C->record_failure(C2Compiler::retry_no_subsuming_loads()); -+ } else { -+ assert(false, "attempted to spill a non-spillable item: %d: %s, ireg = %u, spill_type: %s", -+ m->_idx, m->Name(), ireg, MachSpillCopyNode::spill_type(MachSpillCopyNode::PhiInput)); -+ C->record_method_not_compilable("attempted to spill a non-spillable item"); -+ } - return; - } - const RegMask *rm = C->matcher()->idealreg2spillmask[ireg]; -diff -r 5be470fb7a19 -r 690d9be191bf test/hotspot/jtreg/compiler/c2/SubsumingLoadsCauseFlagSpill.java ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ b/test/hotspot/jtreg/compiler/c2/SubsumingLoadsCauseFlagSpill.java Fri Aug 17 17:13:12 2018 +0200 -@@ -0,0 +1,72 @@ -+/* -+ * Copyright (c) 2018, Red Hat, Inc. All rights reserved. -+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+ * -+ * This code is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+ * or visit www.oracle.com if you need additional information or have any -+ * questions. -+ */ -+ -+/** -+ * @test -+ * @bug 8209639 -+ * @summary assert failure in coalesce.cpp: attempted to spill a non-spillable item -+ * -+ * @run main/othervm -XX:-BackgroundCompilation -XX:CompileCommand=dontinline,SubsumingLoadsCauseFlagSpill::not_inlined -Xmx1024m SubsumingLoadsCauseFlagSpill -+ * -+ */ -+ -+public class SubsumingLoadsCauseFlagSpill { -+ private static Object field; -+ private static boolean do_throw; -+ private static volatile boolean barrier; -+ -+ public static void main(String[] args) { -+ for (int i = 0; i < 20_000; i++) { -+ do_throw = true; -+ field = null; -+ test(0); -+ do_throw = false; -+ field = new Object(); -+ test(0); -+ } -+ } -+ -+ private static float test(float f) { -+ Object v = null; -+ try { -+ not_inlined(); -+ v = field; -+ } catch (MyException me) { -+ v = field; -+ barrier = true; -+ } -+ if (v == null) { -+ return f * f; -+ } -+ return f; -+ } -+ -+ private static void not_inlined() throws MyException{ -+ if (do_throw) { -+ throw new MyException(); -+ } -+ } -+ -+ private static class MyException extends Throwable { -+ } -+} - diff --git a/jdk8210416-rh1632174-compile_fdlibm_with_o2_ffp_contract_off_on_gcc_clang_arches.patch b/jdk8210416-rh1632174-compile_fdlibm_with_o2_ffp_contract_off_on_gcc_clang_arches.patch index 85428db..16eb4da 100644 --- a/jdk8210416-rh1632174-compile_fdlibm_with_o2_ffp_contract_off_on_gcc_clang_arches.patch +++ b/jdk8210416-rh1632174-compile_fdlibm_with_o2_ffp_contract_off_on_gcc_clang_arches.patch @@ -11,7 +11,7 @@ Reviewed-by: aph, erikj, dholmes, darcy diff --git a/make/autoconf/flags-cflags.m4 b/make/autoconf/flags-cflags.m4 --- a/make/autoconf/flags-cflags.m4 +++ b/make/autoconf/flags-cflags.m4 -@@ -373,6 +373,18 @@ +@@ -366,6 +366,18 @@ FLAGS_SETUP_CFLAGS_CPU_DEP([BUILD], [OPENJDK_BUILD_]) @@ -33,7 +33,7 @@ diff --git a/make/autoconf/flags-cflags.m4 b/make/autoconf/flags-cflags.m4 diff --git a/make/autoconf/spec.gmk.in b/make/autoconf/spec.gmk.in --- a/make/autoconf/spec.gmk.in +++ b/make/autoconf/spec.gmk.in -@@ -450,6 +450,7 @@ +@@ -444,6 +444,7 @@ LIBJSIG_HASHSTYLE_LDFLAGS := @LIBJSIG_HASHSTYLE_LDFLAGS@ LIBJSIG_NOEXECSTACK_LDFLAGS := @LIBJSIG_NOEXECSTACK_LDFLAGS@ @@ -79,6 +79,6 @@ diff --git a/make/lib/CoreLibraries.gmk b/make/lib/CoreLibraries.gmk - CFLAGS_linux_ppc64le := -ffp-contract=off, \ - CFLAGS_linux_s390x := -ffp-contract=off, \ - CFLAGS_linux_aarch64 := -ffp-contract=off, \ - DISABLED_WARNINGS_gcc := sign-compare misleading-indentation, \ + DISABLED_WARNINGS_gcc := sign-compare misleading-indentation array-bounds, \ DISABLED_WARNINGS_microsoft := 4146 4244 4018, \ ARFLAGS := $(ARFLAGS), \ diff --git a/jdk8211105-aarch64-disable_cos_sin_and_log_intrinsics.patch b/jdk8211105-aarch64-disable_cos_sin_and_log_intrinsics.patch deleted file mode 100644 index 734ee89..0000000 --- a/jdk8211105-aarch64-disable_cos_sin_and_log_intrinsics.patch +++ /dev/null @@ -1,35 +0,0 @@ -# HG changeset patch -# User adinn -# Date 1537977709 -3600 -# Wed Sep 26 17:01:49 2018 +0100 -# Node ID 18426968f11cd0c3b238dec365003798d07576fc -# Parent 0abe9de66ea9e1371bf35a2394daf31d8bfada98 -8211105: AArch64: Disable cos/sin and log intrinsics in jdk11u pending fix -Summary: AArch64 cos/sin and log intrinsics are currently broken so should be disabled -Reviewed-by: aph, shade - -diff --git a/src/hotspot/cpu/aarch64/stubGenerator_aarch64.cpp b/src/hotspot/cpu/aarch64/stubGenerator_aarch64.cpp ---- a/src/hotspot/cpu/aarch64/stubGenerator_aarch64.cpp -+++ b/src/hotspot/cpu/aarch64/stubGenerator_aarch64.cpp -@@ -5741,15 +5741,18 @@ - } - - if (vmIntrinsics::is_intrinsic_available(vmIntrinsics::_dlog)) { -- StubRoutines::_dlog = generate_dlog(); -+ // disabled pending fix and retest of generated code via JDK-8210858 -+ // StubRoutines::_dlog = generate_dlog(); - } - - if (vmIntrinsics::is_intrinsic_available(vmIntrinsics::_dsin)) { -- StubRoutines::_dsin = generate_dsin_dcos(/* isCos = */ false); -+ // disabled pending fix and retest of generated code via JDK-8210461 -+ // 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 via JDK-8210461 -+ // StubRoutines::_dcos = generate_dsin_dcos(/* isCos = */ true); - } - } - diff --git a/sources b/sources index 47da9ef..8440fbf 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (systemtap_3.2_tapsets_hg-icedtea8-9d464368e06d.tar.xz) = cf578221b77d8c7e019f69909bc86c419c5fb5e10bceba9592ff6e7f96887b0a7f07c9cefe90800975247a078785ca190fdec5c2d0f841bb447cee784b570f7d -SHA512 (shenandoah-jdk11-shenandoah-jdk-11.0.1+13-20190101.tar.xz) = 21e21a93ab0e5c1816af10b4d721014f051c36789467137224eeb3facf763d175dc5fb66d64060896c8a197abc54fc5dd9293bd6e61b584966cc4ce9894b7767 +SHA512 (shenandoah-jdk11-shenandoah-jdk-11.0.2+7.tar.xz) = 787c7795f4b8dc7dc1b72a66af7c409f8e3fee010d19173eab0832f4d6db5b5c6f31b36cefe7df1971258963653e6e2174b80c0db792ae7577404a6d055e635c