updated to u102
This commit is contained in:
parent
3e33782eea
commit
57c769a539
2
.gitignore
vendored
2
.gitignore
vendored
@ -61,3 +61,5 @@
|
||||
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u92-b14.tar.xz
|
||||
/aarch64-port-jdk8u-aarch64-jdk8u101-b14.tar.xz
|
||||
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u101-b14-shenandoah-merge-2016-07-25.tar.xz
|
||||
/aarch64-port-jdk8u-aarch64-jdk8u102-b14.tar.xz
|
||||
/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u102-b14.tar.xz
|
||||
|
@ -1,21 +0,0 @@
|
||||
# HG changeset patch
|
||||
# User omajid
|
||||
# Date 1451403643 18000
|
||||
# Tue Dec 29 10:40:43 2015 -0500
|
||||
# Node ID 0be28a33e12dfc9ae1e4be381530643f691d351a
|
||||
# Parent f4c9545cd8a56a5fab74c95de3573623ba2b83c4
|
||||
6961123, PR2972: setWMClass fails to null-terminate WM_CLASS string
|
||||
Reviewed-by: serb
|
||||
|
||||
diff -r f4c9545cd8a5 -r 0be28a33e12d src/solaris/classes/sun/awt/X11/XBaseWindow.java
|
||||
--- openjdk/jdk/src/solaris/classes/sun/awt/X11/XBaseWindow.java Thu Aug 28 05:20:02 2014 -0700
|
||||
+++ openjdk/jdk/src/solaris/classes/sun/awt/X11/XBaseWindow.java Tue Dec 29 10:40:43 2015 -0500
|
||||
@@ -673,7 +673,7 @@
|
||||
XToolkit.awtLock();
|
||||
try {
|
||||
XAtom xa = XAtom.get(XAtom.XA_WM_CLASS);
|
||||
- xa.setProperty8(getWindow(), cl[0] + '\0' + cl[1]);
|
||||
+ xa.setProperty8(getWindow(), cl[0] + '\0' + cl[1] + '\0');
|
||||
} finally {
|
||||
XToolkit.awtUnlock();
|
||||
}
|
@ -1,114 +0,0 @@
|
||||
# HG changeset patch
|
||||
# User thartmann
|
||||
# Date 1455606693 -3600
|
||||
# Tue Feb 16 08:11:33 2016 +0100
|
||||
# Node ID 7bb48ba4de4fb35c10c526146f65da74a3a16c7a
|
||||
# Parent d15bc25b259dcffd2566f90ff09fd263e87e0304
|
||||
8148752, PR2943: Compiled StringBuilder code throws StringIndexOutOfBoundsException
|
||||
Summary: Fixed handling of long/double MH arguments in GraphBuilder::try_method_handle_inline().
|
||||
Reviewed-by: roland, shade, vlivanov, kvn, twisti
|
||||
|
||||
diff -r d15bc25b259d -r 7bb48ba4de4f src/share/vm/opto/callGenerator.cpp
|
||||
--- openjdk/hotspot/src/share/vm/opto/callGenerator.cpp Wed Apr 20 04:04:43 2016 +0100
|
||||
+++ openjdk/hotspot/src/share/vm/opto/callGenerator.cpp Tue Feb 16 08:11:33 2016 +0100
|
||||
@@ -829,17 +829,18 @@
|
||||
}
|
||||
}
|
||||
// Cast reference arguments to its type.
|
||||
- for (int i = 0; i < signature->count(); i++) {
|
||||
+ for (int i = 0, j = 0; i < signature->count(); i++) {
|
||||
ciType* t = signature->type_at(i);
|
||||
if (t->is_klass()) {
|
||||
- Node* arg = kit.argument(receiver_skip + i);
|
||||
+ Node* arg = kit.argument(receiver_skip + j);
|
||||
const TypeOopPtr* arg_type = arg->bottom_type()->isa_oopptr();
|
||||
const Type* sig_type = TypeOopPtr::make_from_klass(t->as_klass());
|
||||
if (arg_type != NULL && !arg_type->higher_equal(sig_type)) {
|
||||
Node* cast_obj = gvn.transform(new (C) CheckCastPPNode(kit.control(), arg, sig_type));
|
||||
- kit.set_argument(receiver_skip + i, cast_obj);
|
||||
+ kit.set_argument(receiver_skip + j, cast_obj);
|
||||
}
|
||||
}
|
||||
+ j += t->size(); // long and double take two slots
|
||||
}
|
||||
|
||||
// Try to get the most accurate receiver type
|
||||
diff -r d15bc25b259d -r 7bb48ba4de4f test/compiler/jsr292/LongReferenceCastingTest.java
|
||||
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
|
||||
+++ openjdk/hotspot/test/compiler/jsr292/LongReferenceCastingTest.java Tue Feb 16 08:11:33 2016 +0100
|
||||
@@ -0,0 +1,75 @@
|
||||
+/*
|
||||
+ * Copyright (c) 2016, Oracle and/or its affiliates. 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.
|
||||
+ *
|
||||
+ */
|
||||
+
|
||||
+import java.lang.invoke.*;
|
||||
+
|
||||
+/**
|
||||
+ * @test
|
||||
+ * @bug 8148752
|
||||
+ * @summary Test correct casting of MH arguments during inlining.
|
||||
+ * @run main LongReferenceCastingTest
|
||||
+ */
|
||||
+public class LongReferenceCastingTest {
|
||||
+ static final String MY_STRING = "myString";
|
||||
+ static final MethodHandle MH;
|
||||
+
|
||||
+ static {
|
||||
+ try {
|
||||
+ MethodHandles.Lookup lookup = MethodHandles.lookup();
|
||||
+ MethodType mt = MethodType.methodType(String.class, long.class, Object.class, String.class);
|
||||
+ MH = lookup.findVirtual(LongReferenceCastingTest.class, "myMethod", mt);
|
||||
+ } catch (Exception e) {
|
||||
+ throw new Error(e);
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ public String myMethod(long l, Object o, String s) {
|
||||
+ // The long argument occupies two stack slots, causing C2 to treat it as
|
||||
+ // two arguments and casting the fist one two long and the second one to Object.
|
||||
+ // As a result, Object o is casted to String and the o.toString() call is
|
||||
+ // inlined as String::toString(). We fail at runtime because 'o' is not a String.
|
||||
+ return o.toString();
|
||||
+ }
|
||||
+
|
||||
+ public String toString() {
|
||||
+ return MY_STRING;
|
||||
+ }
|
||||
+
|
||||
+ public static void main(String[] args) throws Exception {
|
||||
+ LongReferenceCastingTest test = new LongReferenceCastingTest();
|
||||
+ try {
|
||||
+ for (int i = 0; i < 20_000; ++i) {
|
||||
+ if (!test.invoke().equals(MY_STRING)) {
|
||||
+ throw new RuntimeException("Invalid string");
|
||||
+ }
|
||||
+ }
|
||||
+ } catch (Throwable t) {
|
||||
+ throw new RuntimeException("Test failed", t);
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ public String invoke() throws Throwable {
|
||||
+ return (String) MH.invokeExact(this, 0L, (Object)this, MY_STRING);
|
||||
+ }
|
||||
+}
|
@ -170,7 +170,7 @@
|
||||
# note, following three variables are sedded from update_sources if used correctly. Hardcode them rather there.
|
||||
%global project aarch64-port
|
||||
%global repo jdk8u
|
||||
%global revision aarch64-jdk8u101-b14
|
||||
%global revision aarch64-jdk8u102-b14
|
||||
# eg # jdk8u60-b27 -> jdk8u60 or # aarch64-jdk8u60-b27 -> aarch64-jdk8u60 (dont forget spec escape % by %%)
|
||||
%global whole_update %(VERSION=%{revision}; echo ${VERSION%%-*})
|
||||
# eg jdk8u60 -> 60 or aarch64-jdk8u60 -> 60
|
||||
@ -785,7 +785,7 @@ Obsoletes: java-1.7.0-openjdk-accessibility%1
|
||||
|
||||
Name: java-%{javaver}-%{origin}
|
||||
Version: %{javaver}.%{updatever}
|
||||
Release: 3.%{buildver}%{?dist}
|
||||
Release: 1.%{buildver}%{?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
|
||||
@ -841,7 +841,7 @@ Source20: repackReproduciblePolycies.sh
|
||||
Source100: config.guess
|
||||
Source101: config.sub
|
||||
# shenandoah hotpost
|
||||
Source999: aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u101-b14-shenandoah-merge-2016-07-25.tar.xz
|
||||
Source999: aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u102-b14.tar.xz
|
||||
|
||||
# RPM/distribution specific patches
|
||||
|
||||
@ -921,10 +921,6 @@ Patch531: 8157306-pr3121-rh1360863.patch
|
||||
Patch532: 8162384-pr3122-rh1358661.patch
|
||||
|
||||
# Patches upstream and appearing in 8u102
|
||||
# S8148752, PR2943, RH1330188: Compiled StringBuilder code throws StringIndexOutOfBoundsException
|
||||
Patch519: 8148752-pr2943-rh1330188.patch
|
||||
# S6961123, PR2972, RH1339740: Java application name in GNOME Shell contains funny characters
|
||||
Patch520: 6961123-pr2972-rh1339740.patch
|
||||
# S8159244, PR3074: Partially initialized string object created by C2's string concat optimization may escape
|
||||
Patch527: 8159244-pr3074.patch
|
||||
|
||||
@ -1271,9 +1267,7 @@ sh %{SOURCE12}
|
||||
%patch516
|
||||
%patch517
|
||||
%patch518
|
||||
%patch519
|
||||
%patch400
|
||||
%patch520
|
||||
%patch521
|
||||
%patch522
|
||||
%patch523
|
||||
@ -1873,6 +1867,13 @@ require "copy_jdk_configs.lua"
|
||||
%endif
|
||||
|
||||
%changelog
|
||||
* Thu Aug 25 2016 jvanek <jvanek@redhat.com> - 1:1.8.0.102-1.b14
|
||||
- updated to aarch64-jdk8u102-b14 (from aarch64-port/jdk8u)
|
||||
- updated to aarch64-shenandoah-jdk8u102-b14 (from aarch64-port/jdk8u-shenandoah) of hotspot
|
||||
- used aarch64-port-jdk8u-aarch64-jdk8u102-b14.tar.xz as new sources
|
||||
- used aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u102-b14.tar.xz as new sources for hotspot
|
||||
- removed upstreamed patches 519 and 520
|
||||
|
||||
* Mon Aug 01 2016 Andrew Hughes <gnu.andrew@redhat.com> - 1:1.8.0.101-3.b14
|
||||
- Replace patch for S8162384 with upstream version. Document correctly along with SystemTap RH1204159 patch.
|
||||
- Resolves: rhbz#1358661
|
||||
|
4
sources
4
sources
@ -1,3 +1,3 @@
|
||||
94ca5a45c3cb3b85c4577d0891166007 systemtap-tapset.tar.gz
|
||||
837e9490d2ffb85644e6b083f8006e7a aarch64-port-jdk8u-aarch64-jdk8u101-b14.tar.xz
|
||||
40b2e99945101cf8cd6cad5eafc47a82 aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u101-b14-shenandoah-merge-2016-07-25.tar.xz
|
||||
fd982589a6345c6dd3698256bed45d3d aarch64-port-jdk8u-aarch64-jdk8u102-b14.tar.xz
|
||||
76ebec7a595c567a66b9d15fdc530a56 aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u102-b14.tar.xz
|
||||
|
@ -24,7 +24,7 @@ if [ "x$REPO_NAME" = "x" ] ; then
|
||||
REPO_NAME="jdk8u"
|
||||
fi
|
||||
if [ "x$VERSION" = "x" ] ; then
|
||||
VERSION="aarch64-jdk8u101-b14"
|
||||
VERSION="aarch64-jdk8u102-b14"
|
||||
fi
|
||||
|
||||
if [ "x$COMPRESSION" = "x" ] ; then
|
||||
@ -102,7 +102,7 @@ if [ "x$VERSION" = "xtip" ] ; then
|
||||
VERSION="tip"
|
||||
else
|
||||
#hardcoding version for anything else except tip
|
||||
VERSION="aarch64-shenandoah-jdk8u101-b14-shenandoah-merge-2016-07-25"
|
||||
VERSION="aarch64-shenandoah-jdk8u102-b14"
|
||||
fi
|
||||
MAIN_REPO_NAME=$REPO_NAME
|
||||
REPO_NAME=jdk8u-shenandoah
|
||||
|
Loading…
Reference in New Issue
Block a user