Accepting request 845986 from Java:Factory

Add Shenandoah

OBS-URL: https://build.opensuse.org/request/show/845986
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/java-1_8_0-openjdk?expand=0&rev=75
This commit is contained in:
Dominique Leuenberger 2020-11-06 22:44:06 +00:00 committed by Git OBS Bridge
commit 79acdbd1df
5 changed files with 74 additions and 2 deletions

21
JDK-8250861.patch Normal file
View File

@ -0,0 +1,21 @@
--- openjdk/hotspot/src/share/vm/opto/addnode.cpp Fri Oct 30 08:13:31 2020 +0000
+++ openjdk/hotspot/src/share/vm/opto/addnode.cpp Thu Aug 06 08:10:56 2020 +0200
@@ -918,7 +918,7 @@
// Transform MIN2(x + c0, MIN2(x + c1, z)) into MIN2(x + MIN2(c0, c1), z)
// if x == y and the additions can't overflow.
- if (phase->eqv(x,y) &&
+ if (phase->eqv(x,y) && tx != NULL &&
!can_overflow(tx, x_off) &&
!can_overflow(tx, y_off)) {
return new (phase->C) MinINode(phase->transform(new (phase->C) AddINode(x, phase->intcon(MIN2(x_off, y_off)))), r->in(2));
@@ -926,7 +926,7 @@
} else {
// Transform MIN2(x + c0, y + c1) into x + MIN2(c0, c1)
// if x == y and the additions can't overflow.
- if (phase->eqv(x,y) &&
+ if (phase->eqv(x,y) && tx != NULL &&
!can_overflow(tx, x_off) &&
!can_overflow(tx, y_off)) {
return new (phase->C) AddINode(x,phase->intcon(MIN2(x_off,y_off)));

View File

@ -1,3 +1,23 @@
-------------------------------------------------------------------
Wed Nov 4 11:32:33 UTC 2020 - Fridrich Strba <fstrba@suse.com>
- Enable Shenandoah garbage collector on supported architectures
-------------------------------------------------------------------
Mon Nov 2 16:04:46 UTC 2020 - Fridrich Strba <fstrba@suse.com>
- Added patch:
* s390.patch
+ Fix build on s390 31bit
-------------------------------------------------------------------
Mon Nov 2 14:29:43 UTC 2020 - Fridrich Strba <fstrba@suse.com>
- Added patch:
* JDK-8250861.patch
+ Fix regression "8250861: Crash in MinINode::Ideal(PhaseGVN*,
bool)" introduced in October 2020 CPU
-------------------------------------------------------------------
Wed Oct 28 09:47:16 UTC 2020 - Fridrich Strba <fstrba@suse.com>

View File

@ -146,6 +146,7 @@
%else
%global with_systemtap 0
%endif
%global with_shenandoah 1
%if %{with_systemtap}
# Where to install systemtap tapset (links)
# We would like these to be in a package specific subdir,
@ -175,7 +176,8 @@ Source6: http://icedtea.wildebeest.org/download/drops/icedtea8/%{icedtea_
Source7: http://icedtea.wildebeest.org/download/drops/icedtea8/%{icedtea_version}/langtools.tar.xz
Source8: http://icedtea.wildebeest.org/download/drops/icedtea8/%{icedtea_version}/hotspot.tar.xz
Source9: http://icedtea.wildebeest.org/download/drops/icedtea8/%{icedtea_version}/aarch32.tar.xz
Source10: http://icedtea.wildebeest.org/download/drops/icedtea8/%{icedtea_version}/nashorn.tar.xz
Source10: http://icedtea.wildebeest.org/download/drops/icedtea8/%{icedtea_version}/shenandoah.tar.xz
Source11: http://icedtea.wildebeest.org/download/drops/icedtea8/%{icedtea_version}/nashorn.tar.xz
# RPM/distribution specific patches
# RHBZ 1015432
Patch2: 1015432.patch
@ -190,6 +192,10 @@ Patch14: zero-javadoc-verbose.patch
#
# Patch for PPC
Patch103: ppc-zero-hotspot.patch
# Patch for S390
Patch104: s390.patch
#
Patch200: JDK-8250861.patch
Patch1001: java-1_8_0-openjdk-suse-desktop-files.patch
Patch1002: icedtea-3.8.0-s390.patch
@ -507,9 +513,14 @@ sh autogen.sh
%ifarch %{arm}
--with-hotspot-src-zip=%{SOURCE9} \
%else
%if %{with zero} || %{without shenandoah}
--with-hotspot-src-zip=%{SOURCE8} \
%else
--with-hotspot-src-zip=%{SOURCE10} \
--with-hotspot-build=shenandoah \
%endif
--with-nashorn-src-zip=%{SOURCE10}
%endif
--with-nashorn-src-zip=%{SOURCE11}
make patch %{?_smp_mflags}
@ -526,6 +537,12 @@ patch -p0 -i %{PATCH14}
patch -p0 -i %{PATCH103}
%endif
%ifarch s390
patch -p0 -i %{PATCH104}
%endif
patch -p0 -i %{PATCH200}
patch -p0 -i %{PATCH2001}
patch -p0 -i %{PATCH2002}

11
s390.patch Normal file
View File

@ -0,0 +1,11 @@
--- openjdk/hotspot/src/share/vm/gc_implementation/g1/g1ConcurrentMarkObjArrayProcessor.cpp 2020-11-02 16:54:31.999787520 +0100
+++ openjdk/hotspot/src/share/vm/gc_implementation/g1/g1ConcurrentMarkObjArrayProcessor.cpp 2020-11-02 16:59:27.993852851 +0100
@@ -41,7 +41,7 @@
}
size_t G1CMObjArrayProcessor::process_array_slice(objArrayOop obj, HeapWord* start_from, size_t remaining) {
- size_t words_to_scan = MIN2(remaining, ObjArrayMarkingStride);
+ size_t words_to_scan = MIN2(remaining, (size_t) ObjArrayMarkingStride);
if (remaining > ObjArrayMarkingStride) {
push_array_slice(start_from + ObjArrayMarkingStride);

3
shenandoah.tar.xz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:1718e537f195adba5f98e30d115cc15db530d3f91e88cdbaaf307ea4220f7cc9
size 7277048