Skip to content

Commit 7afc50c

Browse files
Merge branch 'master' into 8311530-depr-jsobject
2 parents d2ff851 + a45abf1 commit 7afc50c

File tree

906 files changed

+49895
-10863
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

906 files changed

+49895
-10863
lines changed

.github/scripts/gen-build-failure-report.sh

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,12 +24,19 @@
2424
# questions.
2525
#
2626

27+
# Import common utils
28+
. report-utils.sh
29+
2730
GITHUB_STEP_SUMMARY="$1"
2831
BUILD_DIR="$(ls -d build/*)"
2932

3033
# Send signal to the do-build action that we failed
3134
touch "$BUILD_DIR/build-failure"
3235

36+
# Collect hs_errs for build-time crashes, e.g. javac, jmod, jlink, CDS.
37+
# These usually land in make/
38+
hs_err_files=$(ls make/hs_err*.log 2> /dev/null || true)
39+
3340
(
3441
echo '### :boom: Build failure summary'
3542
echo ''
@@ -46,6 +53,20 @@ touch "$BUILD_DIR/build-failure"
4653
echo '</details>'
4754
echo ''
4855

56+
for hs_err in $hs_err_files; do
57+
echo "<details><summary><b>View HotSpot error log: "$hs_err"</b></summary>"
58+
echo ''
59+
echo '```'
60+
echo "$hs_err:"
61+
echo ''
62+
cat "$hs_err"
63+
echo '```'
64+
echo '</details>'
65+
echo ''
66+
done
67+
4968
echo ''
5069
echo ':arrow_right: To see the entire test log, click the job in the list to the left. To download logs, see the `failure-logs` [artifact above](#artifacts).'
5170
) >> $GITHUB_STEP_SUMMARY
71+
72+
truncate_summary

.github/scripts/gen-test-results.sh

Lines changed: 5 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,9 @@
2424
# questions.
2525
#
2626

27+
# Import common utils
28+
. report-utils.sh
29+
2730
GITHUB_STEP_SUMMARY="$1"
2831

2932
test_suite_name=$(cat build/run-test-prebuilt/test-support/test-last-ids.txt)
@@ -89,18 +92,6 @@ for test in $failures $errors; do
8992
fi
9093
done >> $GITHUB_STEP_SUMMARY
9194

92-
# With many failures, the summary can easily exceed 1024 kB, the limit set by Github
93-
# Trim it down if so.
94-
summary_size=$(wc -c < $GITHUB_STEP_SUMMARY)
95-
if [[ $summary_size -gt 1000000 ]]; then
96-
# Trim to below 1024 kB, and cut off after the last detail group
97-
head -c 1000000 $GITHUB_STEP_SUMMARY | tac | sed -n -e '/<\/details>/,$ p' | tac > $GITHUB_STEP_SUMMARY.tmp
98-
mv $GITHUB_STEP_SUMMARY.tmp $GITHUB_STEP_SUMMARY
99-
(
100-
echo ''
101-
echo ':x: **WARNING: Summary is too large and has been truncated.**'
102-
echo ''
103-
) >> $GITHUB_STEP_SUMMARY
104-
fi
105-
10695
echo ':arrow_right: To see the entire test log, click the job in the list to the left.' >> $GITHUB_STEP_SUMMARY
96+
97+
truncate_summary

.github/scripts/report-utils.sh

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
#!/bin/bash
2+
#
3+
# Copyright (c) 2024, Oracle and/or its affiliates. All rights reserved.
4+
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5+
#
6+
# This code is free software; you can redistribute it and/or modify it
7+
# under the terms of the GNU General Public License version 2 only, as
8+
# published by the Free Software Foundation. Oracle designates this
9+
# particular file as subject to the "Classpath" exception as provided
10+
# by Oracle in the LICENSE file that accompanied this code.
11+
#
12+
# This code is distributed in the hope that it will be useful, but WITHOUT
13+
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
14+
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
15+
# version 2 for more details (a copy is included in the LICENSE file that
16+
# accompanied this code).
17+
#
18+
# You should have received a copy of the GNU General Public License version
19+
# 2 along with this work; if not, write to the Free Software Foundation,
20+
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
21+
#
22+
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
23+
# or visit www.oracle.com if you need additional information or have any
24+
# questions.
25+
#
26+
27+
function truncate_summary() {
28+
# With large hs_errs, the summary can easily exceed 1024 kB, the limit set by Github
29+
# Trim it down if so.
30+
summary_size=$(wc -c < $GITHUB_STEP_SUMMARY)
31+
if [[ $summary_size -gt 1000000 ]]; then
32+
# Trim to below 1024 kB, and cut off after the last detail group
33+
head -c 1000000 $GITHUB_STEP_SUMMARY | tac | sed -n -e '/<\/details>/,$ p' | tac > $GITHUB_STEP_SUMMARY.tmp
34+
mv $GITHUB_STEP_SUMMARY.tmp $GITHUB_STEP_SUMMARY
35+
(
36+
echo ''
37+
echo ':x: **WARNING: Summary is too large and has been truncated.**'
38+
echo ''
39+
) >> $GITHUB_STEP_SUMMARY
40+
fi
41+
}

SECURITY.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# JDK Vulnerabilities
2+
3+
Please follow the process outlined in the [OpenJDK Vulnerability Policy](https://openjdk.org/groups/vulnerability/report) to disclose vulnerabilities in the JDK.

doc/building.html

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -614,10 +614,9 @@ <h3 id="clang">clang</h3>
614614
<code>--with-toolchain-type=clang</code>.</p>
615615
<h3 id="apple-xcode">Apple Xcode</h3>
616616
<p>The oldest supported version of Xcode is 13.0.</p>
617-
<p>You will need the Xcode command line developer tools to be able to
618-
build the JDK. (Actually, <em>only</em> the command line tools are
619-
needed, not the IDE.) The simplest way to install these is to run:</p>
620-
<pre><code>xcode-select --install</code></pre>
617+
<p>You will need to download Xcode either from the App Store or specific
618+
versions can be easily located via the <a
619+
href="https://xcodereleases.com">Xcode Releases</a> website.</p>
621620
<p>When updating Xcode, it is advisable to keep an older version for
622621
building the JDK. To use a specific version of Xcode you have multiple
623622
options:</p>

doc/building.md

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -422,13 +422,9 @@ To use clang instead of gcc on Linux, use `--with-toolchain-type=clang`.
422422

423423
The oldest supported version of Xcode is 13.0.
424424

425-
You will need the Xcode command line developer tools to be able to build the
426-
JDK. (Actually, *only* the command line tools are needed, not the IDE.) The
427-
simplest way to install these is to run:
428-
429-
```
430-
xcode-select --install
431-
```
425+
You will need to download Xcode either from the App Store or specific versions
426+
can be easily located via the [Xcode Releases](https://xcodereleases.com)
427+
website.
432428

433429
When updating Xcode, it is advisable to keep an older version for building the
434430
JDK. To use a specific version of Xcode you have multiple options:

make/conf/github-actions.conf

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -29,21 +29,21 @@ GTEST_VERSION=1.14.0
2929
JTREG_VERSION=7.4+1
3030

3131
LINUX_X64_BOOT_JDK_EXT=tar.gz
32-
LINUX_X64_BOOT_JDK_URL=https://download.java.net/java/GA/jdk22.0.2/c9ecb94cd31b495da20a27d4581645e8/9/GPL/openjdk-22.0.2_linux-x64_bin.tar.gz
33-
LINUX_X64_BOOT_JDK_SHA256=41536f115668308ecf4eba92aaf6acaeb0936225828b741efd83b6173ba82963
32+
LINUX_X64_BOOT_JDK_URL=https://download.java.net/java/GA/jdk23/3c5b90190c68498b986a97f276efd28a/37/GPL/openjdk-23_linux-x64_bin.tar.gz
33+
LINUX_X64_BOOT_JDK_SHA256=08fea92724127c6fa0f2e5ea0b07ff4951ccb1e2f22db3c21eebbd7347152a67
3434

3535
ALPINE_LINUX_X64_BOOT_JDK_EXT=tar.gz
36-
ALPINE_LINUX_X64_BOOT_JDK_URL=https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jdk_x64_alpine-linux_hotspot_22.0.2_9.tar.gz
37-
ALPINE_LINUX_X64_BOOT_JDK_SHA256=49f73414824b1a7c268a611225fa4d7ce5e25600201e0f1cd59f94d1040b5264
36+
ALPINE_LINUX_X64_BOOT_JDK_URL=https://github.com/adoptium/temurin23-binaries/releases/download/jdk-23%2B37/OpenJDK23U-jdk_x64_alpine-linux_hotspot_23_37.tar.gz
37+
ALPINE_LINUX_X64_BOOT_JDK_SHA256=bff4c78f30d8d173e622bf2f40c36113df47337fc6d1ee5105ed2459841165aa
3838

3939
MACOS_AARCH64_BOOT_JDK_EXT=tar.gz
40-
MACOS_AARCH64_BOOT_JDK_URL=https://download.java.net/java/GA/jdk22.0.2/c9ecb94cd31b495da20a27d4581645e8/9/GPL/openjdk-22.0.2_macos-aarch64_bin.tar.gz
41-
MACOS_AARCH64_BOOT_JDK_SHA256=3dab98730234e1a87aec14bcb8171d2cae101e96ff4eed1dab96abbb08e843fd
40+
MACOS_AARCH64_BOOT_JDK_URL=https://download.java.net/java/GA/jdk23/3c5b90190c68498b986a97f276efd28a/37/GPL/openjdk-23_macos-aarch64_bin.tar.gz
41+
MACOS_AARCH64_BOOT_JDK_SHA256=9527bf080a74ae6dca51df413aa826f0c011c6048885e4c8ad112172be8815f3
4242

4343
MACOS_X64_BOOT_JDK_EXT=tar.gz
44-
MACOS_X64_BOOT_JDK_URL=https://download.java.net/java/GA/jdk22.0.2/c9ecb94cd31b495da20a27d4581645e8/9/GPL/openjdk-22.0.2_macos-x64_bin.tar.gz
45-
MACOS_X64_BOOT_JDK_SHA256=e8b3ec7a7077711223d31156e771f11723cd7af31c2017f1bd2eda20855940fb
44+
MACOS_X64_BOOT_JDK_URL=https://download.java.net/java/GA/jdk23/3c5b90190c68498b986a97f276efd28a/37/GPL/openjdk-23_macos-x64_bin.tar.gz
45+
MACOS_X64_BOOT_JDK_SHA256=5c3a909fd2079d0e376dd43c85c4f7d02d08914866f196480bd47784b2a0121e
4646

4747
WINDOWS_X64_BOOT_JDK_EXT=zip
48-
WINDOWS_X64_BOOT_JDK_URL=https://download.java.net/java/GA/jdk22.0.2/c9ecb94cd31b495da20a27d4581645e8/9/GPL/openjdk-22.0.2_windows-x64_bin.zip
49-
WINDOWS_X64_BOOT_JDK_SHA256=f2a9b9ab944e71a64637fcdc6b13a1188cf02d4eb9ecf71dc927e98b3e45f5dc
48+
WINDOWS_X64_BOOT_JDK_URL=https://download.java.net/java/GA/jdk23/3c5b90190c68498b986a97f276efd28a/37/GPL/openjdk-23_windows-x64_bin.zip
49+
WINDOWS_X64_BOOT_JDK_SHA256=cba5013874ba50cae543c86fe6423453816c77281e2751a8a9a633d966f1dc04

make/conf/jib-profiles.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -390,8 +390,8 @@ var getJibProfilesCommon = function (input, data) {
390390
};
391391
};
392392

393-
common.boot_jdk_version = "22";
394-
common.boot_jdk_build_number = "36";
393+
common.boot_jdk_version = "23";
394+
common.boot_jdk_build_number = "37";
395395
common.boot_jdk_home = input.get("boot_jdk", "install_path") + "/jdk-"
396396
+ common.boot_jdk_version
397397
+ (input.build_os == "macosx" ? ".jdk/Contents/Home" : "");

make/conf/version-numbers.conf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,6 @@ DEFAULT_VERSION_DATE=2025-03-18
3737
DEFAULT_VERSION_CLASSFILE_MAJOR=68 # "`$EXPR $DEFAULT_VERSION_FEATURE + 44`"
3838
DEFAULT_VERSION_CLASSFILE_MINOR=0
3939
DEFAULT_VERSION_DOCS_API_SINCE=11
40-
DEFAULT_ACCEPTABLE_BOOT_VERSIONS="22 23 24"
40+
DEFAULT_ACCEPTABLE_BOOT_VERSIONS="23 24"
4141
DEFAULT_JDK_SOURCE_TARGET_VERSION=24
4242
DEFAULT_PROMOTED_VERSION_PRE=ea

make/hotspot/gensrc/GensrcAdlc.gmk

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -200,6 +200,13 @@ ifeq ($(call check-jvm-feature, compiler2), true)
200200
)))
201201
endif
202202

203+
ifeq ($(call check-jvm-feature, g1gc), true)
204+
AD_SRC_FILES += $(call uniq, $(wildcard $(foreach d, $(AD_SRC_ROOTS), \
205+
$d/cpu/$(HOTSPOT_TARGET_CPU_ARCH)/gc/g1/g1_$(HOTSPOT_TARGET_CPU).ad \
206+
$d/cpu/$(HOTSPOT_TARGET_CPU_ARCH)/gc/g1/g1_$(HOTSPOT_TARGET_CPU_ARCH).ad \
207+
)))
208+
endif
209+
203210
SINGLE_AD_SRCFILE := $(ADLC_SUPPORT_DIR)/all-ad-src.ad
204211

205212
INSERT_FILENAME_AWK_SCRIPT := \

make/jdk/src/classes/build/tools/tzdb/TzdbZoneRulesCompiler.java

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2012, 2019, Oracle and/or its affiliates. All rights reserved.
2+
* Copyright (c) 2012, 2024, Oracle and/or its affiliates. All rights reserved.
33
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
44
*
55
* This code is free software; you can redistribute it and/or modify it
@@ -273,16 +273,16 @@ private void outputFile(Path dstFile, String version,
273273
// link version-region-rules
274274
out.writeShort(builtZones.size());
275275
for (Map.Entry<String, ZoneRules> entry : builtZones.entrySet()) {
276-
int regionIndex = Arrays.binarySearch(regionArray, entry.getKey());
276+
int regionIndex = findRegionIndex(regionArray, entry.getKey());
277277
int rulesIndex = rulesList.indexOf(entry.getValue());
278278
out.writeShort(regionIndex);
279279
out.writeShort(rulesIndex);
280280
}
281281
// alias-region
282282
out.writeShort(links.size());
283283
for (Map.Entry<String, String> entry : links.entrySet()) {
284-
int aliasIndex = Arrays.binarySearch(regionArray, entry.getKey());
285-
int regionIndex = Arrays.binarySearch(regionArray, entry.getValue());
284+
int aliasIndex = findRegionIndex(regionArray, entry.getKey());
285+
int regionIndex = findRegionIndex(regionArray, entry.getValue());
286286
out.writeShort(aliasIndex);
287287
out.writeShort(regionIndex);
288288
}
@@ -294,6 +294,14 @@ private void outputFile(Path dstFile, String version,
294294
}
295295
}
296296

297+
private static int findRegionIndex(String[] regionArray, String region) {
298+
int index = Arrays.binarySearch(regionArray, region);
299+
if (index < 0) {
300+
throw new IllegalArgumentException("Unknown region: " + region);
301+
}
302+
return index;
303+
}
304+
297305
/** Whether to output verbose messages. */
298306
private boolean verbose;
299307

make/modules/jdk.incubator.vector/Lib.gmk

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,3 +37,21 @@ ifeq ($(call isTargetOs, linux windows)+$(call isTargetCpu, x86_64)+$(INCLUDE_CO
3737

3838
TARGETS += $(BUILD_LIBJSVML)
3939
endif
40+
41+
################################################################################
42+
## Build libsleef
43+
################################################################################
44+
45+
ifeq ($(call isTargetOs, linux)+$(call isTargetCpu, riscv64)+$(INCLUDE_COMPILER2), true+true+true)
46+
$(eval $(call SetupJdkLibrary, BUILD_LIBSLEEF, \
47+
NAME := sleef, \
48+
OPTIMIZATION := HIGH, \
49+
SRC := libsleef/lib, \
50+
EXTRA_SRC := libsleef/generated, \
51+
DISABLED_WARNINGS_gcc := unused-function sign-compare tautological-compare ignored-qualifiers, \
52+
DISABLED_WARNINGS_clang := unused-function sign-compare tautological-compare ignored-qualifiers, \
53+
CFLAGS := -march=rv64gcv, \
54+
))
55+
56+
TARGETS += $(BUILD_LIBSLEEF)
57+
endif

0 commit comments

Comments
 (0)