summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--recipes-core/openjdk/openjdk-8-common.inc2
-rw-r--r--recipes-core/openjdk/openjdk-8-release-172b11-common.inc13
-rw-r--r--recipes-core/openjdk/patches-openjdk-8/0012-hotspot-aarch64-fix-undefined-behaviour-gcc-v8-fix.patch41
-rw-r--r--recipes-core/openjdk/patches-openjdk-8/0013-hotspot-aarch64-Fix-further-functions-with-a-missing.patch38
-rw-r--r--recipes-core/openjdk/patches-openjdk-8/0014-hotspot-zero-fix-undefined-behaviour-gcc-v8-fix.patch42
-rw-r--r--recipes-core/openjdk/patches-openjdk-8/0015-hotspot-fix-Wreturn-type-issues-introduced-by-806165.patch56
-rw-r--r--recipes-core/openjdk/patches-openjdk-8/0016-hotspot-Zero-build-requires-disabled-warnings.patch148
-rw-r--r--recipes-core/openjdk/patches-openjdk-8/0017-hotspot-Missing-return-statement-in-__sync_val_compa.patch53
-rw-r--r--recipes-core/openjdk/patches-openjdk-8/0018-hotspot-Fix-debug-build-after-8062808-Turn-on-the-Wr.patch47
-rw-r--r--recipes-core/openjdk/patches-openjdk-8/0019-hotspot-Turn-on-the-Wreturn-type-warning.patch233
-rw-r--r--recipes-core/openjdk/patches-openjdk-8/musl-0007-hotspot-os_linux_x86-remove-glibc-dependencies-fpu_c.patch2
11 files changed, 673 insertions, 2 deletions
diff --git a/recipes-core/openjdk/openjdk-8-common.inc b/recipes-core/openjdk/openjdk-8-common.inc
index 1c33a3b..7348657 100644
--- a/recipes-core/openjdk/openjdk-8-common.inc
+++ b/recipes-core/openjdk/openjdk-8-common.inc
@@ -217,7 +217,7 @@ EXTRA_OECONF_append = "\
217# of these changes. 217# of these changes.
218FLAGS_GCC6 = "-fno-lifetime-dse -fno-delete-null-pointer-checks" 218FLAGS_GCC6 = "-fno-lifetime-dse -fno-delete-null-pointer-checks"
219FLAGS_GCC7 = "-fno-lifetime-dse -fno-delete-null-pointer-checks" 219FLAGS_GCC7 = "-fno-lifetime-dse -fno-delete-null-pointer-checks"
220FLAGS_GCC8 = "-fno-lifetime-dse -fno-delete-null-pointer-checks -Wno-error=return-type" 220FLAGS_GCC8 = "-fno-lifetime-dse -fno-delete-null-pointer-checks"
221 221
222# flags for -native, and for bits that need a host-tool during -cross 222# flags for -native, and for bits that need a host-tool during -cross
223BUILD_CFLAGS_append = " ${@openjdk_build_helper_get_build_cflags(d)}" 223BUILD_CFLAGS_append = " ${@openjdk_build_helper_get_build_cflags(d)}"
diff --git a/recipes-core/openjdk/openjdk-8-release-172b11-common.inc b/recipes-core/openjdk/openjdk-8-release-172b11-common.inc
index 8b30c37..4bcecef 100644
--- a/recipes-core/openjdk/openjdk-8-release-172b11-common.inc
+++ b/recipes-core/openjdk/openjdk-8-release-172b11-common.inc
@@ -17,6 +17,19 @@ PATCHES_URI = "\
17 file://0009-jdk-disable-backtrace-musl-build-fix.patch \ 17 file://0009-jdk-disable-backtrace-musl-build-fix.patch \
18 file://0010-build-fix-build-on-as-needed-toolchains-generic.patch \ 18 file://0010-build-fix-build-on-as-needed-toolchains-generic.patch \
19 file://0011-hotspot-backport-patch-to-fix-misuses-of-strncpy-str.patch \ 19 file://0011-hotspot-backport-patch-to-fix-misuses-of-strncpy-str.patch \
20 ${HOTSPOT_UB_PATCH} \
21"
22HOTSPOT_UB_PATCH = "\
23 file://0014-hotspot-zero-fix-undefined-behaviour-gcc-v8-fix.patch \
24 file://0015-hotspot-fix-Wreturn-type-issues-introduced-by-806165.patch \
25 file://0016-hotspot-Zero-build-requires-disabled-warnings.patch \
26 file://0017-hotspot-Missing-return-statement-in-__sync_val_compa.patch \
27 file://0018-hotspot-Fix-debug-build-after-8062808-Turn-on-the-Wr.patch \
28 file://0019-hotspot-Turn-on-the-Wreturn-type-warning.patch \
29"
30HOTSPOT_UB_PATCH_prepend_aarch64 = "\
31 file://0012-hotspot-aarch64-fix-undefined-behaviour-gcc-v8-fix.patch \
32 file://0013-hotspot-aarch64-Fix-further-functions-with-a-missing.patch \
20" 33"
21# some patches extracted from http://cr.openjdk.java.net/~rkennke/shark-build-hotspot/webrev.01/hotspot.patch 34# some patches extracted from http://cr.openjdk.java.net/~rkennke/shark-build-hotspot/webrev.01/hotspot.patch
22# reported via http://mail.openjdk.java.net/pipermail/build-dev/2015-January/013972.html 35# reported via http://mail.openjdk.java.net/pipermail/build-dev/2015-January/013972.html
diff --git a/recipes-core/openjdk/patches-openjdk-8/0012-hotspot-aarch64-fix-undefined-behaviour-gcc-v8-fix.patch b/recipes-core/openjdk/patches-openjdk-8/0012-hotspot-aarch64-fix-undefined-behaviour-gcc-v8-fix.patch
new file mode 100644
index 0000000..e11c19c
--- /dev/null
+++ b/recipes-core/openjdk/patches-openjdk-8/0012-hotspot-aarch64-fix-undefined-behaviour-gcc-v8-fix.patch
@@ -0,0 +1,41 @@
1From 1fa1097d45afa2fe2bfd989fbd90578f5c5fc540 Mon Sep 17 00:00:00 2001
2From: =?UTF-8?q?Andr=C3=A9=20Draszik?= <andre.draszik@jci.com>
3Date: Mon, 13 Aug 2018 12:14:21 +0100
4Subject: [PATCH] hotspot/aarch64: fix undefined behaviour (gcc v8 fix)
5MIME-Version: 1.0
6Content-Type: text/plain; charset=UTF-8
7Content-Transfer-Encoding: 8bit
8
9Backport patch from
10 http://hg.openjdk.java.net/aarch64-port/jdk8u/hotspot/rev/253b0c304db6
11to address segfaults due to undefined behaviour.
12
13|# HG changeset patch
14|# User shade
15|# Date 1526068247 -7200
16|# Node ID 253b0c304db6d31be3d3d7cf7cf1b3561a16dc3a
17|# Parent 1ced2ae00e35e6f855175fc44500b37fbac9e314
18UB in os_linux_aarch64.cpp SpinPause
19Reviewed-by: aph, shade, adinn
20
21Signed-off-by: André Draszik <andre.draszik@jci.com>
22Upstream-Status: Backport [http://hg.openjdk.java.net/jdk8u/jdk8u/hotspot/rev/ca4663e58916]
23---
24 hotspot/src/os_cpu/linux_aarch64/vm/os_linux_aarch64.cpp | 1 +
25 1 file changed, 1 insertion(+)
26
27diff --git a/hotspot/src/os_cpu/linux_aarch64/vm/os_linux_aarch64.cpp b/hotspot/src/os_cpu/linux_aarch64/vm/os_linux_aarch64.cpp
28index 8b985693..f536817e 100644
29--- a/hotspot/src/os_cpu/linux_aarch64/vm/os_linux_aarch64.cpp
30+++ b/hotspot/src/os_cpu/linux_aarch64/vm/os_linux_aarch64.cpp
31@@ -699,6 +699,7 @@ void os::verify_stack_alignment() {
32
33 extern "C" {
34 int SpinPause() {
35+ return 0;
36 }
37
38 void _Copy_conjoint_jshorts_atomic(jshort* from, jshort* to, size_t count) {
39--
402.18.0
41
diff --git a/recipes-core/openjdk/patches-openjdk-8/0013-hotspot-aarch64-Fix-further-functions-with-a-missing.patch b/recipes-core/openjdk/patches-openjdk-8/0013-hotspot-aarch64-Fix-further-functions-with-a-missing.patch
new file mode 100644
index 0000000..0216c68
--- /dev/null
+++ b/recipes-core/openjdk/patches-openjdk-8/0013-hotspot-aarch64-Fix-further-functions-with-a-missing.patch
@@ -0,0 +1,38 @@
1From 3dffe06da016a959f1d8c3afc292ab92a9d4d137 Mon Sep 17 00:00:00 2001
2From: =?UTF-8?q?Andr=C3=A9=20Draszik?= <andre.draszik@jci.com>
3Date: Mon, 13 Aug 2018 17:03:56 +0100
4Subject: [PATCH] hotspot/aarch64: Fix further functions with a missing return
5 value.
6MIME-Version: 1.0
7Content-Type: text/plain; charset=UTF-8
8Content-Transfer-Encoding: 8bit
9
10|# HG changeset patch
11|# User andrew
12|# Date 1518669922 0
13|# Thu Feb 15 04:45:22 2018 +0000
14|# Node ID adaf109718c10888cce5b6e73af7f3e15a7ab0db
15|# Parent 3ade0115344b77e6d00462044e0cf68722685bfe
16PR3519: Fix further functions with a missing return value.
17
18Signed-off-by: André Draszik <andre.draszik@jci.com>
19Upstream-Status: Backport
20---
21 hotspot/src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp | 1 +
22 1 file changed, 1 insertion(+)
23
24diff --git a/hotspot/src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp b/hotspot/src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp
25index 4e98cb39..bbc81b4a 100644
26--- a/hotspot/src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp
27+++ b/hotspot/src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp
28@@ -205,6 +205,7 @@ Address LIR_Assembler::as_Address(LIR_Address* addr, Register tmp) {
29 return Address(base, tmp, Address::lsl(addr->scale()));
30 }
31 }
32+ return Address();
33 }
34
35 Address LIR_Assembler::as_Address_hi(LIR_Address* addr) {
36--
372.18.0
38
diff --git a/recipes-core/openjdk/patches-openjdk-8/0014-hotspot-zero-fix-undefined-behaviour-gcc-v8-fix.patch b/recipes-core/openjdk/patches-openjdk-8/0014-hotspot-zero-fix-undefined-behaviour-gcc-v8-fix.patch
new file mode 100644
index 0000000..467a1cd
--- /dev/null
+++ b/recipes-core/openjdk/patches-openjdk-8/0014-hotspot-zero-fix-undefined-behaviour-gcc-v8-fix.patch
@@ -0,0 +1,42 @@
1From 3bd88f93a90876f8ead05de40816da0bd1e39aac Mon Sep 17 00:00:00 2001
2From: =?UTF-8?q?Andr=C3=A9=20Draszik?= <andre.draszik@jci.com>
3Date: Mon, 13 Aug 2018 11:49:26 +0100
4Subject: [PATCH] hotspot/zero: fix undefined behaviour (gcc v8 fix)
5MIME-Version: 1.0
6Content-Type: text/plain; charset=UTF-8
7Content-Transfer-Encoding: 8bit
8
9Backport patch from
10 https://bugs.openjdk.java.net/browse/JDK-8202600
11 http://hg.openjdk.java.net/jdk8u/jdk8u/hotspot/rev/ca4663e58916
12to address segfaults due to undefined behaviour.
13
14|# HG changeset patch
15|# User sgehwolf
16|# Date 1525366788 -7200
17|# Node ID ca4663e589160509d6aef8ec890815e1330b97bc
18|# Parent a27880c1288ba776f65748b68c198df97427f950
198202600: [Zero] Undefined behaviour in src/os_cpu/linux_zero/vm/os_linux_zero.cpp
20Reviewed-by: stuefe, shade, dholmes
21
22Signed-off-by: André Draszik <andre.draszik@jci.com>
23Upstream-Status: Backport [http://hg.openjdk.java.net/jdk8u/jdk8u/hotspot/rev/ca4663e58916]
24---
25 hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.cpp | 1 +
26 1 file changed, 1 insertion(+)
27
28diff --git a/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.cpp b/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.cpp
29index 1d069c6d..8dcf9d44 100644
30--- a/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.cpp
31+++ b/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.cpp
32@@ -408,6 +408,7 @@ void os::print_register_info(outputStream *st, void *context) {
33
34 extern "C" {
35 int SpinPause() {
36+ return 0; // Shouldn't matter.
37 }
38
39
40--
412.18.0
42
diff --git a/recipes-core/openjdk/patches-openjdk-8/0015-hotspot-fix-Wreturn-type-issues-introduced-by-806165.patch b/recipes-core/openjdk/patches-openjdk-8/0015-hotspot-fix-Wreturn-type-issues-introduced-by-806165.patch
new file mode 100644
index 0000000..fb7bb59
--- /dev/null
+++ b/recipes-core/openjdk/patches-openjdk-8/0015-hotspot-fix-Wreturn-type-issues-introduced-by-806165.patch
@@ -0,0 +1,56 @@
1From f6424c46b4af08d0662eec1a5897d5502270a3b1 Mon Sep 17 00:00:00 2001
2From: =?UTF-8?q?Andr=C3=A9=20Draszik?= <andre.draszik@jci.com>
3Date: Mon, 13 Aug 2018 16:40:34 +0100
4Subject: [PATCH 1/5] hotspot: fix -Wreturn-type issues introduced by 8061651
5MIME-Version: 1.0
6Content-Type: text/plain; charset=UTF-8
7Content-Transfer-Encoding: 8bit
8
9|# HG changeset patch
10|# User andrew
11|# Date 1529475043 -3600
12|# Wed Jun 20 07:10:43 2018 +0100
13|# Node ID f6341f4635dacb56678264d29a88cd052b74036b
14|# Parent 30520d5018b509b0ae68f5fcc9a5c540e3e5b2de
15PR3601: Fix additional -Wreturn-type issues introduced by 8061651
16
17Signed-off-by: André Draszik <andre.draszik@jci.com>
18Upstream-Status: Backport
19---
20 hotspot/src/share/vm/prims/jvm.cpp | 6 +++---
21 1 file changed, 3 insertions(+), 3 deletions(-)
22
23diff --git a/hotspot/src/share/vm/prims/jvm.cpp b/hotspot/src/share/vm/prims/jvm.cpp
24index 07c36de8..067fd3ac 100644
25--- a/hotspot/src/share/vm/prims/jvm.cpp
26+++ b/hotspot/src/share/vm/prims/jvm.cpp
27@@ -835,7 +835,7 @@ JVM_END
28 JVM_ENTRY(jboolean, JVM_KnownToNotExist(JNIEnv *env, jobject loader, const char *classname))
29 JVMWrapper("JVM_KnownToNotExist");
30 #if INCLUDE_CDS
31- return ClassLoaderExt::known_to_not_exist(env, loader, classname, CHECK_(false));
32+ return ClassLoaderExt::known_to_not_exist(env, loader, classname, THREAD);
33 #else
34 return false;
35 #endif
36@@ -845,7 +845,7 @@ JVM_END
37 JVM_ENTRY(jobjectArray, JVM_GetResourceLookupCacheURLs(JNIEnv *env, jobject loader))
38 JVMWrapper("JVM_GetResourceLookupCacheURLs");
39 #if INCLUDE_CDS
40- return ClassLoaderExt::get_lookup_cache_urls(env, loader, CHECK_NULL);
41+ return ClassLoaderExt::get_lookup_cache_urls(env, loader, THREAD);
42 #else
43 return NULL;
44 #endif
45@@ -855,7 +855,7 @@ JVM_END
46 JVM_ENTRY(jintArray, JVM_GetResourceLookupCache(JNIEnv *env, jobject loader, const char *resource_name))
47 JVMWrapper("JVM_GetResourceLookupCache");
48 #if INCLUDE_CDS
49- return ClassLoaderExt::get_lookup_cache(env, loader, resource_name, CHECK_NULL);
50+ return ClassLoaderExt::get_lookup_cache(env, loader, resource_name, THREAD);
51 #else
52 return NULL;
53 #endif
54--
552.18.0
56
diff --git a/recipes-core/openjdk/patches-openjdk-8/0016-hotspot-Zero-build-requires-disabled-warnings.patch b/recipes-core/openjdk/patches-openjdk-8/0016-hotspot-Zero-build-requires-disabled-warnings.patch
new file mode 100644
index 0000000..d6bedbc
--- /dev/null
+++ b/recipes-core/openjdk/patches-openjdk-8/0016-hotspot-Zero-build-requires-disabled-warnings.patch
@@ -0,0 +1,148 @@
1From 43c1f744e5f6171df3158baf88dd0a64c4b5e439 Mon Sep 17 00:00:00 2001
2From: =?UTF-8?q?Andr=C3=A9=20Draszik?= <andre.draszik@jci.com>
3Date: Mon, 13 Aug 2018 16:45:24 +0100
4Subject: [PATCH 2/5] hotspot: Zero build requires disabled warnings
5MIME-Version: 1.0
6Content-Type: text/plain; charset=UTF-8
7Content-Transfer-Encoding: 8bit
8
9|# HG changeset patch
10|# User sgehwolf
11|# Date 1525714161 -3600
12|# Mon May 07 18:29:21 2018 +0100
13|# Node ID afb31413c73cbc06420fdb447aa90a7a38258904
14|# Parent bcbc64dfb629c5f188bbf59b8f986ad95963ed60
158143245, PR3548: Zero build requires disabled warnings
16Reviewed-by: dholmes, coleenp
17
18Signed-off-by: André Draszik <andre.draszik@jci.com>
19Upstream-Status: Backport
20---
21 hotspot/src/cpu/zero/vm/cppInterpreter_zero.cpp | 2 +-
22 hotspot/src/cpu/zero/vm/interpreterRT_zero.cpp | 4 ++--
23 .../src/os_cpu/linux_zero/vm/os_linux_zero.cpp | 16 +++++++++++++---
24 .../os_cpu/linux_zero/vm/thread_linux_zero.hpp | 3 ++-
25 4 files changed, 18 insertions(+), 7 deletions(-)
26
27diff --git a/hotspot/src/cpu/zero/vm/cppInterpreter_zero.cpp b/hotspot/src/cpu/zero/vm/cppInterpreter_zero.cpp
28index 242ce1cf..065471af 100644
29--- a/hotspot/src/cpu/zero/vm/cppInterpreter_zero.cpp
30+++ b/hotspot/src/cpu/zero/vm/cppInterpreter_zero.cpp
31@@ -100,7 +100,7 @@ intptr_t narrow(BasicType type, intptr_t result) {
32 case T_DOUBLE:
33 case T_VOID:
34 return result;
35- default : ShouldNotReachHere();
36+ default : ShouldNotReachHere(); return NULL_WORD;
37 }
38 }
39
40diff --git a/hotspot/src/cpu/zero/vm/interpreterRT_zero.cpp b/hotspot/src/cpu/zero/vm/interpreterRT_zero.cpp
41index e23e3eaa..061ed8ce 100644
42--- a/hotspot/src/cpu/zero/vm/interpreterRT_zero.cpp
43+++ b/hotspot/src/cpu/zero/vm/interpreterRT_zero.cpp
44@@ -1,5 +1,5 @@
45 /*
46- * Copyright (c) 2003, 2012, Oracle and/or its affiliates. All rights reserved.
47+ * Copyright (c) 2003, 2016, Oracle and/or its affiliates. All rights reserved.
48 * Copyright 2007, 2008, 2010 Red Hat, Inc.
49 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
50 *
51@@ -62,7 +62,7 @@ void InterpreterRuntime::SignatureHandlerGeneratorBase::pass_object() {
52 }
53
54 void InterpreterRuntime::SignatureHandlerGeneratorBase::push(BasicType type) {
55- ffi_type *ftype;
56+ ffi_type *ftype = NULL;
57 switch (type) {
58 case T_VOID:
59 ftype = &ffi_type_void;
60diff --git a/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.cpp b/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.cpp
61index 8dcf9d44..508eb172 100644
62--- a/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.cpp
63+++ b/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.cpp
64@@ -1,6 +1,6 @@
65 /*
66 * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
67- * Copyright 2007, 2008, 2009, 2010 Red Hat, Inc.
68+ * Copyright 2016 Red Hat, Inc.
69 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
70 *
71 * This code is free software; you can redistribute it and/or modify it
72@@ -61,6 +61,7 @@ address os::current_stack_pointer() {
73
74 frame os::get_sender_for_C_frame(frame* fr) {
75 ShouldNotCallThis();
76+ return frame(NULL, NULL); // silence compile warning.
77 }
78
79 frame os::current_frame() {
80@@ -98,16 +99,19 @@ void os::initialize_thread(Thread * thr){
81
82 address os::Linux::ucontext_get_pc(ucontext_t* uc) {
83 ShouldNotCallThis();
84+ return NULL; // silence compile warnings
85 }
86
87 ExtendedPC os::fetch_frame_from_context(void* ucVoid,
88 intptr_t** ret_sp,
89 intptr_t** ret_fp) {
90 ShouldNotCallThis();
91+ return NULL; // silence compile warnings
92 }
93
94 frame os::fetch_frame_from_context(void* ucVoid) {
95 ShouldNotCallThis();
96+ return frame(NULL, NULL); // silence compile warnings
97 }
98
99 extern "C" JNIEXPORT int
100@@ -247,11 +251,16 @@ JVM_handle_linux_signal(int sig,
101 }
102 #endif // !PRODUCT
103
104- const char *fmt = "caught unhandled signal %d";
105 char buf[64];
106
107- sprintf(buf, fmt, sig);
108+ sprintf(buf, "caught unhandled signal %d", sig);
109+
110+// Silence -Wformat-security warning for fatal()
111+PRAGMA_DIAG_PUSH
112+PRAGMA_FORMAT_NONLITERAL_IGNORED
113 fatal(buf);
114+PRAGMA_DIAG_POP
115+ return true; // silence compiler warnings
116 }
117
118 void os::Linux::init_thread_fpu_state(void) {
119@@ -260,6 +269,7 @@ void os::Linux::init_thread_fpu_state(void) {
120
121 int os::Linux::get_fpu_control_word() {
122 ShouldNotCallThis();
123+ return -1; // silence compile warnings
124 }
125
126 void os::Linux::set_fpu_control_word(int fpu) {
127diff --git a/hotspot/src/os_cpu/linux_zero/vm/thread_linux_zero.hpp b/hotspot/src/os_cpu/linux_zero/vm/thread_linux_zero.hpp
128index 39f77f85..b9c73dc4 100644
129--- a/hotspot/src/os_cpu/linux_zero/vm/thread_linux_zero.hpp
130+++ b/hotspot/src/os_cpu/linux_zero/vm/thread_linux_zero.hpp
131@@ -1,5 +1,5 @@
132 /*
133- * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
134+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
135 * Copyright 2007, 2008, 2009, 2010 Red Hat, Inc.
136 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
137 *
138@@ -110,6 +110,7 @@
139 void* ucontext,
140 bool isInJava) {
141 ShouldNotCallThis();
142+ return false; // silence compile warning
143 }
144
145 // These routines are only used on cpu architectures that
146--
1472.18.0
148
diff --git a/recipes-core/openjdk/patches-openjdk-8/0017-hotspot-Missing-return-statement-in-__sync_val_compa.patch b/recipes-core/openjdk/patches-openjdk-8/0017-hotspot-Missing-return-statement-in-__sync_val_compa.patch
new file mode 100644
index 0000000..001e905
--- /dev/null
+++ b/recipes-core/openjdk/patches-openjdk-8/0017-hotspot-Missing-return-statement-in-__sync_val_compa.patch
@@ -0,0 +1,53 @@
1From 6e1d92639787ac8f506f810776a3f1c35f2cd070 Mon Sep 17 00:00:00 2001
2From: =?UTF-8?q?Andr=C3=A9=20Draszik?= <andre.draszik@jci.com>
3Date: Mon, 13 Aug 2018 16:46:33 +0100
4Subject: [PATCH 3/5] hotspot: Missing return statement in
5 __sync_val_compare_and_swap_8
6MIME-Version: 1.0
7Content-Type: text/plain; charset=UTF-8
8Content-Transfer-Encoding: 8bit
9
10|# HG changeset patch
11|# User andrew
12|# Date 1518667645 0
13|# Thu Feb 15 04:07:25 2018 +0000
14|# Node ID 1d35411eb7bdf16191e220ffe3b1dc4d5d0c6041
15|# Parent 999983606f5c61b093c6f6316a7b26c4cd4ca79e
168197981, PR3548: Missing return statement in __sync_val_compare_and_swap_8
17Summary: Fix issue discovered by -Wreturn-type on systems without LP64.
18Reviewed-by: aph
19
20Signed-off-by: André Draszik <andre.draszik@jci.com>
21Upstream-Status: Backport
22---
23 hotspot/src/os_cpu/bsd_zero/vm/os_bsd_zero.cpp | 1 +
24 hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.cpp | 1 +
25 2 files changed, 2 insertions(+)
26
27diff --git a/hotspot/src/os_cpu/bsd_zero/vm/os_bsd_zero.cpp b/hotspot/src/os_cpu/bsd_zero/vm/os_bsd_zero.cpp
28index c857b552..4aaf78b1 100644
29--- a/hotspot/src/os_cpu/bsd_zero/vm/os_bsd_zero.cpp
30+++ b/hotspot/src/os_cpu/bsd_zero/vm/os_bsd_zero.cpp
31@@ -457,6 +457,7 @@ extern "C" {
32 long long unsigned int oldval,
33 long long unsigned int newval) {
34 ShouldNotCallThis();
35+ return 0;
36 }
37 };
38 #endif // !_LP64
39diff --git a/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.cpp b/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.cpp
40index 508eb172..bb8fa1f1 100644
41--- a/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.cpp
42+++ b/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.cpp
43@@ -498,6 +498,7 @@ extern "C" {
44 long long unsigned int oldval,
45 long long unsigned int newval) {
46 ShouldNotCallThis();
47+ return 0;
48 }
49 };
50 #endif // !_LP64
51--
522.18.0
53
diff --git a/recipes-core/openjdk/patches-openjdk-8/0018-hotspot-Fix-debug-build-after-8062808-Turn-on-the-Wr.patch b/recipes-core/openjdk/patches-openjdk-8/0018-hotspot-Fix-debug-build-after-8062808-Turn-on-the-Wr.patch
new file mode 100644
index 0000000..1421963
--- /dev/null
+++ b/recipes-core/openjdk/patches-openjdk-8/0018-hotspot-Fix-debug-build-after-8062808-Turn-on-the-Wr.patch
@@ -0,0 +1,47 @@
1From dbf31e2dfd00e20ab49af70f3533a348e8a6515e Mon Sep 17 00:00:00 2001
2From: =?UTF-8?q?Andr=C3=A9=20Draszik?= <andre.draszik@jci.com>
3Date: Mon, 13 Aug 2018 16:47:25 +0100
4Subject: [PATCH 4/5] hotspot: Fix debug build after 8062808: Turn on the
5 -Wreturn-type warning
6MIME-Version: 1.0
7Content-Type: text/plain; charset=UTF-8
8Content-Transfer-Encoding: 8bit
9
10|# HG changeset patch
11|# User goetz
12|# Date 1415873641 -3600
13|# Thu Nov 13 11:14:01 2014 +0100
14|# Node ID 1878c4c1d04e1f3c6f67a19d36c35863d6b5f906
15|# Parent 533473c67de6ff767710594639033c8e83523fe5
168064786, PR3599: Fix debug build after 8062808: Turn on the -Wreturn-type warning
17Reviewed-by: stefank, tschatzl
18
19Signed-off-by: André Draszik <andre.draszik@jci.com>
20Upstream-Status: Backport
21---
22 hotspot/src/share/vm/prims/jni.cpp | 2 ++
23 1 file changed, 2 insertions(+)
24
25diff --git a/hotspot/src/share/vm/prims/jni.cpp b/hotspot/src/share/vm/prims/jni.cpp
26index 6a6ab936..e2f2ad3b 100644
27--- a/hotspot/src/share/vm/prims/jni.cpp
28+++ b/hotspot/src/share/vm/prims/jni.cpp
29@@ -708,6 +708,7 @@ JNI_ENTRY(jint, jni_Throw(JNIEnv *env, jthrowable obj))
30
31 THROW_OOP_(JNIHandles::resolve(obj), JNI_OK);
32 ShouldNotReachHere();
33+ return 0; // Mute compiler.
34 JNI_END
35
36 #ifndef USDT2
37@@ -734,6 +735,7 @@ JNI_ENTRY(jint, jni_ThrowNew(JNIEnv *env, jclass clazz, const char *message))
38 Handle protection_domain (THREAD, k->protection_domain());
39 THROW_MSG_LOADER_(name, (char *)message, class_loader, protection_domain, JNI_OK);
40 ShouldNotReachHere();
41+ return 0; // Mute compiler.
42 JNI_END
43
44
45--
462.18.0
47
diff --git a/recipes-core/openjdk/patches-openjdk-8/0019-hotspot-Turn-on-the-Wreturn-type-warning.patch b/recipes-core/openjdk/patches-openjdk-8/0019-hotspot-Turn-on-the-Wreturn-type-warning.patch
new file mode 100644
index 0000000..0156978
--- /dev/null
+++ b/recipes-core/openjdk/patches-openjdk-8/0019-hotspot-Turn-on-the-Wreturn-type-warning.patch
@@ -0,0 +1,233 @@
1From cc0d371f17c0ab060eb1e6b42d4bf053a2cbc3ba Mon Sep 17 00:00:00 2001
2From: =?UTF-8?q?Andr=C3=A9=20Draszik?= <andre.draszik@jci.com>
3Date: Mon, 13 Aug 2018 16:48:32 +0100
4Subject: [PATCH 5/5] hotspot: Turn on the -Wreturn-type warning
5MIME-Version: 1.0
6Content-Type: text/plain; charset=UTF-8
7Content-Transfer-Encoding: 8bit
8
9|# HG changeset patch
10|# User stefank
11|# Date 1525453613 -3600
12|# Fri May 04 18:06:53 2018 +0100
13|# Node ID 07a1135a327362f157955d470fad5df07cc35164
14|# Parent de79964656fc652f2085dac4fe99bcc128b5a3b1
158062808, PR3548: Turn on the -Wreturn-type warning
16Reviewed-by: mgerdin, tschatzl, coleenp, jrose, kbarrett
17
18Signed-off-by: André Draszik <andre.draszik@jci.com>
19Upstream-Status: Backport
20---
21 hotspot/make/linux/makefiles/gcc.make | 2 +-
22 hotspot/src/cpu/x86/vm/x86_32.ad | 1 +
23 hotspot/src/os_cpu/linux_x86/vm/os_linux_x86.cpp | 1 +
24 hotspot/src/share/vm/classfile/defaultMethods.cpp | 4 ++--
25 hotspot/src/share/vm/classfile/symbolTable.cpp | 4 ++--
26 hotspot/src/share/vm/classfile/systemDictionary.cpp | 6 +++---
27 hotspot/src/share/vm/memory/heapInspection.hpp | 2 +-
28 hotspot/src/share/vm/memory/metaspaceShared.hpp | 2 +-
29 hotspot/src/share/vm/oops/constantPool.hpp | 2 +-
30 hotspot/src/share/vm/prims/jvm.cpp | 2 +-
31 hotspot/src/share/vm/runtime/reflection.cpp | 2 +-
32 hotspot/src/share/vm/runtime/sharedRuntime.cpp | 2 +-
33 hotspot/src/share/vm/services/memTracker.hpp | 2 +-
34 13 files changed, 17 insertions(+), 15 deletions(-)
35
36diff --git a/hotspot/make/linux/makefiles/gcc.make b/hotspot/make/linux/makefiles/gcc.make
37index 272afcea..157afff2 100644
38--- a/hotspot/make/linux/makefiles/gcc.make
39+++ b/hotspot/make/linux/makefiles/gcc.make
40@@ -207,7 +207,7 @@ ifeq ($(USE_CLANG), true)
41 WARNINGS_ARE_ERRORS += -Wno-return-type -Wno-empty-body
42 endif
43
44-WARNING_FLAGS = -Wpointer-arith -Wsign-compare -Wundef -Wunused-function -Wunused-value
45+WARNING_FLAGS = -Wpointer-arith -Wsign-compare -Wundef -Wunused-function -Wunused-value -Wreturn-type
46
47 ifeq ($(USE_CLANG),)
48 # Since GCC 4.3, -Wconversion has changed its meanings to warn these implicit
49diff --git a/hotspot/src/cpu/x86/vm/x86_32.ad b/hotspot/src/cpu/x86/vm/x86_32.ad
50index f42d1a28..c8f4ee16 100644
51--- a/hotspot/src/cpu/x86/vm/x86_32.ad
52+++ b/hotspot/src/cpu/x86/vm/x86_32.ad
53@@ -1250,6 +1250,7 @@ uint MachSpillCopyNode::implementation( CodeBuffer *cbuf, PhaseRegAlloc *ra_, bo
54
55
56 Unimplemented();
57+ return 0; // Mute compiler
58 }
59
60 #ifndef PRODUCT
61diff --git a/hotspot/src/os_cpu/linux_x86/vm/os_linux_x86.cpp b/hotspot/src/os_cpu/linux_x86/vm/os_linux_x86.cpp
62index fb96738a..4cdeb372 100644
63--- a/hotspot/src/os_cpu/linux_x86/vm/os_linux_x86.cpp
64+++ b/hotspot/src/os_cpu/linux_x86/vm/os_linux_x86.cpp
65@@ -541,6 +541,7 @@ JVM_handle_linux_signal(int sig,
66 err.report_and_die();
67
68 ShouldNotReachHere();
69+ return true; // Mute compiler
70 }
71
72 void os::Linux::init_thread_fpu_state(void) {
73diff --git a/hotspot/src/share/vm/classfile/defaultMethods.cpp b/hotspot/src/share/vm/classfile/defaultMethods.cpp
74index 0e3d5d7b..d3df1d15 100644
75--- a/hotspot/src/share/vm/classfile/defaultMethods.cpp
76+++ b/hotspot/src/share/vm/classfile/defaultMethods.cpp
77@@ -506,7 +506,7 @@ Symbol* MethodFamily::generate_method_message(Symbol *klass_name, Method* method
78 ss.write((const char*)name->bytes(), name->utf8_length());
79 ss.write((const char*)signature->bytes(), signature->utf8_length());
80 ss.print(" is abstract");
81- return SymbolTable::new_symbol(ss.base(), (int)ss.size(), CHECK_NULL);
82+ return SymbolTable::new_symbol(ss.base(), (int)ss.size(), THREAD);
83 }
84
85 Symbol* MethodFamily::generate_conflicts_message(GrowableArray<Method*>* methods, TRAPS) const {
86@@ -521,7 +521,7 @@ Symbol* MethodFamily::generate_conflicts_message(GrowableArray<Method*>* methods
87 ss.print(".");
88 ss.write((const char*)name->bytes(), name->utf8_length());
89 }
90- return SymbolTable::new_symbol(ss.base(), (int)ss.size(), CHECK_NULL);
91+ return SymbolTable::new_symbol(ss.base(), (int)ss.size(), THREAD);
92 }
93
94
95diff --git a/hotspot/src/share/vm/classfile/symbolTable.cpp b/hotspot/src/share/vm/classfile/symbolTable.cpp
96index ec97077b..2621a7d6 100644
97--- a/hotspot/src/share/vm/classfile/symbolTable.cpp
98+++ b/hotspot/src/share/vm/classfile/symbolTable.cpp
99@@ -249,7 +249,7 @@ Symbol* SymbolTable::lookup(const char* name, int len, TRAPS) {
100 MutexLocker ml(SymbolTable_lock, THREAD);
101
102 // Otherwise, add to symbol to table
103- return the_table()->basic_add(index, (u1*)name, len, hashValue, true, CHECK_NULL);
104+ return the_table()->basic_add(index, (u1*)name, len, hashValue, true, THREAD);
105 }
106
107 Symbol* SymbolTable::lookup(const Symbol* sym, int begin, int end, TRAPS) {
108@@ -288,7 +288,7 @@ Symbol* SymbolTable::lookup(const Symbol* sym, int begin, int end, TRAPS) {
109 // Grab SymbolTable_lock first.
110 MutexLocker ml(SymbolTable_lock, THREAD);
111
112- return the_table()->basic_add(index, (u1*)buffer, len, hashValue, true, CHECK_NULL);
113+ return the_table()->basic_add(index, (u1*)buffer, len, hashValue, true, THREAD);
114 }
115
116 Symbol* SymbolTable::lookup_only(const char* name, int len,
117diff --git a/hotspot/src/share/vm/classfile/systemDictionary.cpp b/hotspot/src/share/vm/classfile/systemDictionary.cpp
118index 8d2e7f49..62bdba3e 100644
119--- a/hotspot/src/share/vm/classfile/systemDictionary.cpp
120+++ b/hotspot/src/share/vm/classfile/systemDictionary.cpp
121@@ -229,15 +229,15 @@ Klass* SystemDictionary::resolve_or_null(Symbol* class_name, Handle class_loader
122 class_name->as_C_string(),
123 class_loader.is_null() ? "null" : class_loader->klass()->name()->as_C_string()));
124 if (FieldType::is_array(class_name)) {
125- return resolve_array_class_or_null(class_name, class_loader, protection_domain, CHECK_NULL);
126+ return resolve_array_class_or_null(class_name, class_loader, protection_domain, THREAD);
127 } else if (FieldType::is_obj(class_name)) {
128 ResourceMark rm(THREAD);
129 // Ignore wrapping L and ;.
130 TempNewSymbol name = SymbolTable::new_symbol(class_name->as_C_string() + 1,
131 class_name->utf8_length() - 2, CHECK_NULL);
132- return resolve_instance_class_or_null(name, class_loader, protection_domain, CHECK_NULL);
133+ return resolve_instance_class_or_null(name, class_loader, protection_domain, THREAD);
134 } else {
135- return resolve_instance_class_or_null(class_name, class_loader, protection_domain, CHECK_NULL);
136+ return resolve_instance_class_or_null(class_name, class_loader, protection_domain, THREAD);
137 }
138 }
139
140diff --git a/hotspot/src/share/vm/memory/heapInspection.hpp b/hotspot/src/share/vm/memory/heapInspection.hpp
141index 09ee6602..c5fec15c 100644
142--- a/hotspot/src/share/vm/memory/heapInspection.hpp
143+++ b/hotspot/src/share/vm/memory/heapInspection.hpp
144@@ -367,7 +367,7 @@ class HeapInspection : public StackObj {
145 _csv_format(csv_format), _print_help(print_help),
146 _print_class_stats(print_class_stats), _columns(columns) {}
147 void heap_inspection(outputStream* st) NOT_SERVICES_RETURN;
148- size_t populate_table(KlassInfoTable* cit, BoolObjectClosure* filter = NULL) NOT_SERVICES_RETURN;
149+ size_t populate_table(KlassInfoTable* cit, BoolObjectClosure* filter = NULL) NOT_SERVICES_RETURN_(0);
150 static void find_instances_at_safepoint(Klass* k, GrowableArray<oop>* result) NOT_SERVICES_RETURN;
151 private:
152 void iterate_over_heap(KlassInfoTable* cit, BoolObjectClosure* filter = NULL);
153diff --git a/hotspot/src/share/vm/memory/metaspaceShared.hpp b/hotspot/src/share/vm/memory/metaspaceShared.hpp
154index 2f3abae6..d58ebecb 100644
155--- a/hotspot/src/share/vm/memory/metaspaceShared.hpp
156+++ b/hotspot/src/share/vm/memory/metaspaceShared.hpp
157@@ -93,7 +93,7 @@ class MetaspaceShared : AllStatic {
158 static void preload_and_dump(TRAPS) NOT_CDS_RETURN;
159 static int preload_and_dump(const char * class_list_path,
160 GrowableArray<Klass*>* class_promote_order,
161- TRAPS) NOT_CDS_RETURN;
162+ TRAPS) NOT_CDS_RETURN_(0);
163
164 static ReservedSpace* shared_rs() {
165 CDS_ONLY(return _shared_rs);
166diff --git a/hotspot/src/share/vm/oops/constantPool.hpp b/hotspot/src/share/vm/oops/constantPool.hpp
167index f170decc..a1e168b2 100644
168--- a/hotspot/src/share/vm/oops/constantPool.hpp
169+++ b/hotspot/src/share/vm/oops/constantPool.hpp
170@@ -349,7 +349,7 @@ class ConstantPool : public Metadata {
171
172 Klass* klass_at(int which, TRAPS) {
173 constantPoolHandle h_this(THREAD, this);
174- return klass_at_impl(h_this, which, CHECK_NULL);
175+ return klass_at_impl(h_this, which, THREAD);
176 }
177
178 Symbol* klass_name_at(int which); // Returns the name, w/o resolving.
179diff --git a/hotspot/src/share/vm/prims/jvm.cpp b/hotspot/src/share/vm/prims/jvm.cpp
180index 067fd3ac..b9e5b322 100644
181--- a/hotspot/src/share/vm/prims/jvm.cpp
182+++ b/hotspot/src/share/vm/prims/jvm.cpp
183@@ -4280,7 +4280,7 @@ JVM_ENTRY(jlong,JVM_DTraceActivate(
184 JVM_DTraceProvider* providers))
185 JVMWrapper("JVM_DTraceActivate");
186 return DTraceJSDT::activate(
187- version, module_name, providers_count, providers, CHECK_0);
188+ version, module_name, providers_count, providers, THREAD);
189 JVM_END
190
191 JVM_ENTRY(jboolean,JVM_DTraceIsProbeEnabled(JNIEnv* env, jmethodID method))
192diff --git a/hotspot/src/share/vm/runtime/reflection.cpp b/hotspot/src/share/vm/runtime/reflection.cpp
193index e2f282ee..679e1775 100644
194--- a/hotspot/src/share/vm/runtime/reflection.cpp
195+++ b/hotspot/src/share/vm/runtime/reflection.cpp
196@@ -1093,7 +1093,7 @@ oop Reflection::invoke(instanceKlassHandle klass, methodHandle reflected_method,
197 } else {
198 if (rtype == T_BOOLEAN || rtype == T_BYTE || rtype == T_CHAR || rtype == T_SHORT)
199 narrow((jvalue*) result.get_value_addr(), rtype, CHECK_NULL);
200- return box((jvalue*) result.get_value_addr(), rtype, CHECK_NULL);
201+ return box((jvalue*) result.get_value_addr(), rtype, THREAD);
202 }
203 }
204
205diff --git a/hotspot/src/share/vm/runtime/sharedRuntime.cpp b/hotspot/src/share/vm/runtime/sharedRuntime.cpp
206index 8ffa8ab3..219bcd5c 100644
207--- a/hotspot/src/share/vm/runtime/sharedRuntime.cpp
208+++ b/hotspot/src/share/vm/runtime/sharedRuntime.cpp
209@@ -1038,7 +1038,7 @@ Handle SharedRuntime::find_callee_info(JavaThread* thread, Bytecodes::Code& bc,
210 // last java frame on stack (which includes native call frames)
211 vframeStream vfst(thread, true); // Do not skip and javaCalls
212
213- return find_callee_info_helper(thread, vfst, bc, callinfo, CHECK_(Handle()));
214+ return find_callee_info_helper(thread, vfst, bc, callinfo, THREAD);
215 }
216
217
218diff --git a/hotspot/src/share/vm/services/memTracker.hpp b/hotspot/src/share/vm/services/memTracker.hpp
219index 38a027ea..13436a4b 100644
220--- a/hotspot/src/share/vm/services/memTracker.hpp
221+++ b/hotspot/src/share/vm/services/memTracker.hpp
222@@ -64,7 +64,7 @@ class MemTracker : AllStatic {
223 const NativeCallStack& stack, MEMFLAGS flag = mtNone) { }
224 static inline void record_virtual_memory_commit(void* addr, size_t size, const NativeCallStack& stack) { }
225 static inline Tracker get_virtual_memory_uncommit_tracker() { return Tracker(); }
226- static inline Tracker get_virtual_memory_release_tracker() { }
227+ static inline Tracker get_virtual_memory_release_tracker() { return Tracker(); }
228 static inline void record_virtual_memory_type(void* addr, MEMFLAGS flag) { }
229 static inline void record_thread_stack(void* addr, size_t size) { }
230 static inline void release_thread_stack(void* addr, size_t size) { }
231--
2322.18.0
233
diff --git a/recipes-core/openjdk/patches-openjdk-8/musl-0007-hotspot-os_linux_x86-remove-glibc-dependencies-fpu_c.patch b/recipes-core/openjdk/patches-openjdk-8/musl-0007-hotspot-os_linux_x86-remove-glibc-dependencies-fpu_c.patch
index fcad102..7dcb889 100644
--- a/recipes-core/openjdk/patches-openjdk-8/musl-0007-hotspot-os_linux_x86-remove-glibc-dependencies-fpu_c.patch
+++ b/recipes-core/openjdk/patches-openjdk-8/musl-0007-hotspot-os_linux_x86-remove-glibc-dependencies-fpu_c.patch
@@ -32,7 +32,7 @@ index fb96738a..982ce84d 100644
32 #ifdef AMD64 32 #ifdef AMD64
33 #define REG_SP REG_RSP 33 #define REG_SP REG_RSP
34@@ -543,6 +542,9 @@ JVM_handle_linux_signal(int sig, 34@@ -543,6 +542,9 @@ JVM_handle_linux_signal(int sig,
35 ShouldNotReachHere(); 35 return true; // Mute compiler
36 } 36 }
37 37
38+#define _FPU_GETCW(cw) __asm__ __volatile__ ("fnstcw %0" : "=m" (*&cw)) 38+#define _FPU_GETCW(cw) __asm__ __volatile__ ("fnstcw %0" : "=m" (*&cw))