Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge master #183

Closed
wants to merge 55 commits into from
Closed
Changes from all commits
Commits
Show all changes
55 commits
Select commit Hold shift + click to select a range
b2269be
8245623: Remove unused code in sun/nio/fs after Solaris removal
cl4es May 22, 2020
50f24ca
8227559: JFR: Slow dump with path-to-gc-roots=true
egahlin May 22, 2020
505d3da
8245569: Add jtreg tests for SO_INCOMING_NAPI_ID
IvaVladimir May 22, 2020
4aa0570
8245517: java/net/SocketOption/AfterClose.java fails with Invalid val…
IvaVladimir May 22, 2020
9dc6f10
8244203: sun/tools/jhsdb/HeapDumpTestWithActiveProcess.java fails wit…
plummercj May 22, 2020
2f80d69
8241389: URLConnection::getHeaderFields returns result inconsistent w…
Michael-Mc-Mahon May 22, 2020
ccd7d70
8245665: Test WeakAlg.java should only make sure no warning for weak …
May 23, 2020
8e01f3a
8244571: assert(!_thread->is_pending_jni_exception_check()) failed: P…
May 23, 2020
04e6b74
8243392: Remodel CDS/Metaspace storage reservation
tstuefe May 24, 2020
98cb95b
8245691: Add EdDSA certificstes to SSLSocketTemplate and CertUtils
May 25, 2020
008d69e
8245703: 32-bit build failures after JDK-8243392
shipilev May 25, 2020
4059e44
8244729: Shenandoah: remove resolve paths from SBSA::generate_shenand…
shipilev May 25, 2020
360554e
8245464: Shenandoah: allocate collection set bitmap at lower addresses
shipilev May 25, 2020
de4b15e
8245465: Shenandoah: test_in_cset can use more efficient encoding
shipilev May 25, 2020
9b94b9d
8244946: fatal error: memory leak: allocating without ResourceMark wi…
chhagedorn May 25, 2020
f3eb44a
8243491: Implementation of Foreign-Memory Access API (Second Incubator)
ChrisHegarty May 25, 2020
36c4b11
8245455: Remove alternative StringConcatFactory strategies
cl4es May 25, 2020
ad940d3
8245120: JFR: Parser unable to return typed version
egahlin May 25, 2020
ce4e780
8244949: [PPC64] Reengineer assembler stop function
TheRealMDoerr May 25, 2020
e04e052
8239013: java.util.logging.Logger catalog cache keeps strong referenc…
dfuch May 25, 2020
742d35e
8245677: Optimize lookups in empty HashMaps
dreis2211 May 25, 2020
bc822ff
8245678: Avoid allocations in Executable.getAllGenericParameterTypes
dreis2211 May 25, 2020
d3042cc
8245594: Remove volatile-qualified member functions and parameters fr…
May 25, 2020
039b259
8245761: [TESTBUG] runtime/logging/TestMethodHandlesVerbose.java fail…
DamonFool May 26, 2020
371a663
8244817: Add configuration logging similar to ZGCs to other GCs
kstefanj May 26, 2020
bf1f78b
8245087: Use ratios instead of percentages in G1HeapSizingPolicy::exp…
May 26, 2020
035d5df
8245088: Always provide logs for G1 heap expansion calculations
May 26, 2020
30b750d
8245722: 32-bit build failures after JDK-8243491
shipilev May 26, 2020
66f6c8c
8245726: Shenandoah: lift/cleanup ShenandoahHeuristics names and prop…
shipilev May 26, 2020
ad7f611
8245754: Shenandoah: ditch ShenandoahAlwaysPreTouch
shipilev May 26, 2020
1a8b2a7
8245755: Shenandoah: missing logging for CWR Roots
shipilev May 26, 2020
220061b
8245757: Shenandoah: AlwaysPreTouch should not disable heap resizing …
shipilev May 26, 2020
47be3b0
8245086: G1: Rename measured pause time ratios
May 26, 2020
c31cae7
8245720: Shenandoah: improve configuration logging
shipilev May 26, 2020
a689a11
8245773: Shenandoah: Windows assertion failure after JDK-8245464
shipilev May 26, 2020
6aa15ad
8166358: Re-enable String verification in java_lang_String::create_fr…
coleenp May 26, 2020
44a0a08
8245600: Clean up libjli
vidmik May 26, 2020
1401fe0
8245521: Remove STACK_BIAS
vidmik May 26, 2020
0400119
8245841: Remove unused com.sun.tools.javac.comp.Modules.XMODULES_PREFIX
pavelrappo May 26, 2020
aabcf9f
8245847: Update Profile.java to not require per-release updates
jonathan-gibbons May 26, 2020
5374383
8245582: j.net.URLConnection::getHeaderFieldKey(int) behavior does no…
Michael-Mc-Mahon May 26, 2020
846fd23
8245610: remove in-tree copy on gtest
iignatev May 26, 2020
8457999
8245134: test/lib/jdk/test/lib/security/KeyStoreUtils.java should all…
May 26, 2020
64c5823
8245870: GTEST_FRAMEWORK_SRC should go through UTIL_FIXUP_PATH
iignatev May 26, 2020
eb20ed7
8228692: BitMap::reallocate might not clear some bits
May 27, 2020
1357c01
8245392: Remove duplication in class redefinition and retransformatio…
May 27, 2020
bc669df
8243339: AArch64: Obsolete UseBarriersForVolatile option
May 27, 2020
d0294c3
8245812: Shenandoah: compute root phase parallelism
shipilev May 27, 2020
2ff952b
8245723: Remove PrintCompressedOopsMode and change gc+heap+coops info…
kstefanj May 27, 2020
6e14034
8245724: Move g1 periodic gc logging to G1InitLogger
kstefanj May 27, 2020
5200d16
8245756: Reduce bootstrap cost of StringConcatFactory prependers
cl4es May 27, 2020
76ac621
8245801: StressRecompilation triggers assert "redundunt OSR recompila…
TobiHartmann May 27, 2020
c145903
8245179: JvmciNotifyBootstrapFinishedEventTest.java fails with custom…
May 27, 2020
a6ce2a9
Merge remote-tracking branch 'remotes/jdk/master'
JornVernee May 27, 2020
5fd7509
Merge branch 'foreign-memaccess' into openjdk-bot-38
mcimadamore May 28, 2020
File filter
Filter by extension
Conversations
Failed to load comments.
Jump to
The table of contents is too big for display.
Diff view
Diff view
@@ -495,6 +495,11 @@ <h4 id="advanced-make-control-variables">Advanced Make Control Variables</h4>
<h2 id="running-tests">Running Tests</h2>
<p>Most of the JDK tests are using the <a href="http://openjdk.java.net/jtreg">JTReg</a> test framework. Make sure that your configuration knows where to find your installation of JTReg. If this is not picked up automatically, use the <code>--with-jtreg=&lt;path to jtreg home&gt;</code> option to point to the JTReg framework. Note that this option should point to the JTReg home, i.e. the top directory, containing <code>lib/jtreg.jar</code> etc.</p>
<p>The <a href="https://wiki.openjdk.java.net/display/Adoption">Adoption Group</a> provides recent builds of jtreg <a href="https://ci.adoptopenjdk.net/view/Dependencies/job/jtreg/lastSuccessfulBuild/artifact">here</a>. Download the latest <code>.tar.gz</code> file, unpack it, and point <code>--with-jtreg</code> to the <code>jtreg</code> directory that you just unpacked.</p>
<p>Building of Hotspot Gtest suite requires the source code of Google Test framework. The top directory, which contains both <code>googletest</code> and <code>googlemock</code> directories, should be specified via <code>--with-gtest</code>. The supported version of Google Test is 1.8.1, whose source code can be obtained:</p>
<ul>
<li>by downloading and unpacking the source bundle from <a href="https://github.com/google/googletest/releases/tag/release-1.8.1">here</a></li>
<li>or by checking out <code>release-1.8.1</code> tag of <code>googletest</code> project: <code>git clone -b release-1.8.1 https://github.com/google/googletest</code></li>
</ul>
<p>To execute the most basic tests (tier 1), use:</p>
<pre><code>make run-test-tier1</code></pre>
<p>For more details on how to run tests, please see the <a href="testing.html">Testing the JDK</a> document.</p>
@@ -829,6 +829,14 @@ https://ci.adoptopenjdk.net/view/Dependencies/job/jtreg/lastSuccessfulBuild/arti
Download the latest `.tar.gz` file, unpack it, and point `--with-jtreg` to the
`jtreg` directory that you just unpacked.

Building of Hotspot Gtest suite requires the source code of Google Test framework.
The top directory, which contains both `googletest` and `googlemock`
directories, should be specified via `--with-gtest`.
The supported version of Google Test is 1.8.1, whose source code can be obtained:

* by downloading and unpacking the source bundle from [here](https://github.com/google/googletest/releases/tag/release-1.8.1)
* or by checking out `release-1.8.1` tag of `googletest` project: `git clone -b release-1.8.1 https://github.com/google/googletest`

To execute the most basic tests (tier 1), use:
```
make run-test-tier1
@@ -652,7 +652,7 @@ $(eval $(call SetupTarget, test-image-hotspot-jtreg-graal, \
DEPS := build-test-hotspot-jtreg-graal, \
))

ifeq ($(BUILD_GTEST), true)
ifneq ($GTEST_FRAMEWORK_SRC), )
$(eval $(call SetupTarget, test-image-hotspot-gtest, \
MAKEFILE := hotspot/test/GtestImage, \
DEPS := hotspot, \
@@ -1109,7 +1109,7 @@ ifneq ($(JVM_TEST_IMAGE_TARGETS), )
test-image: $(JVM_TEST_IMAGE_TARGETS)
else
test-image: test-image-hotspot-jtreg-native
ifeq ($(BUILD_GTEST), true)
ifneq ($(GTEST_FRAMEWORK_SRC), )
test-image: test-image-hotspot-gtest
endif

@@ -82,7 +82,6 @@ SHELL := $(BASH) $(BASH_ARGS)
# Set some reasonable defaults for features
DEBUG_LEVEL := release
HOTSPOT_DEBUG_LEVEL := release
BUILD_GTEST := true
BUILD_FAILURE_HANDLER := true

################################################################################
@@ -91,9 +91,6 @@ DISABLE_WARNING_PREFIX := @BUILD_CC_DISABLE_WARNING_PREFIX@
# Save speed and disk space by not enabling debug symbols for the buildjdk
ENABLE_DEBUG_SYMBOLS := false

# Control whether Hotspot builds gtest tests
BUILD_GTEST := false

JVM_VARIANTS := server
JVM_VARIANT_MAIN := server
JVM_FEATURES_server := cds compiler1 compiler2 g1gc serialgc
@@ -234,7 +234,6 @@ LIB_SETUP_LIBRARIES
JVM_FEATURES_PARSE_OPTIONS
JVM_FEATURES_SETUP

HOTSPOT_ENABLE_DISABLE_GTEST
HOTSPOT_SETUP_MISC

###############################################################################
@@ -111,28 +111,6 @@ AC_DEFUN_ONCE([HOTSPOT_SETUP_JVM_VARIANTS],
AC_SUBST(JVM_VARIANT_MAIN)
])

###############################################################################
# Check if gtest should be built
#
AC_DEFUN_ONCE([HOTSPOT_ENABLE_DISABLE_GTEST],
[
GTEST_AVAILABLE=true
AC_MSG_CHECKING([if Hotspot gtest test source is present])
if test -e "${TOPDIR}/test/hotspot/gtest"; then
AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([no, cannot build gtest])
GTEST_AVAILABLE=false
fi
UTIL_ARG_ENABLE(NAME: hotspot-gtest, DEFAULT: auto,
RESULT: BUILD_GTEST, AVAILABLE: $GTEST_AVAILABLE,
DEFAULT_DESC: [enabled if possible to build],
DESC: [enable building of the Hotspot unit tests])
AC_SUBST(BUILD_GTEST)
])

###############################################################################
# Misc hotspot setup that does not fit elsewhere.
#
@@ -162,4 +140,7 @@ AC_DEFUN_ONCE([HOTSPOT_SETUP_MISC],
# --with-cpu-port is no longer supported
UTIL_DEPRECATED_ARG_WITH(with-cpu-port)
# in jdk15 hotspot-gtest was replaced with --with-gtest
UTIL_DEPRECATED_ARG_ENABLE(hotspot-gtest)
])
@@ -1,5 +1,5 @@
#
# Copyright (c) 2018, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2018, 2020, 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
@@ -55,6 +55,40 @@ AC_DEFUN_ONCE([LIB_TESTS_SETUP_GRAALUNIT],
AC_SUBST(GRAALUNIT_LIB)
])

###############################################################################
#
# Setup and check for gtest framework source files
#
AC_DEFUN_ONCE([LIB_TESTS_SETUP_GTEST],
[
AC_ARG_WITH(gtest, [AS_HELP_STRING([--with-gtest],
[specify prefix directory for the gtest framework])])
if test "x${with_gtest}" != x; then
AC_MSG_CHECKING([for gtest])
if test "x${with_gtest}" = xno; then
AC_MSG_RESULT([no, disabled])
elif test "x${with_gtest}" = xyes; then
AC_MSG_RESULT([no, error])
AC_MSG_ERROR([--with-gtest must have a value])
else
if ! test -s "${with_gtest}/googletest/include/gtest/gtest.h"; then
AC_MSG_RESULT([no])
AC_MSG_ERROR([Can't find 'googletest/include/gtest/gtest.h' under ${with_gtest} given with the --with-gtest option.])
elif ! test -s "${with_gtest}/googlemock/include/gmock/gmock.h"; then
AC_MSG_RESULT([no])
AC_MSG_ERROR([Can't find 'googlemock/include/gmock/gmock.h' under ${with_gtest} given with the --with-gtest option.])
else
GTEST_FRAMEWORK_SRC=${with_gtest}
AC_MSG_RESULT([$GTEST_FRAMEWORK_SRC])
UTIL_FIXUP_PATH([GTEST_FRAMEWORK_SRC])
fi
fi
fi
AC_SUBST(GTEST_FRAMEWORK_SRC)
])

###############################################################################
#
# Setup and check the Java Microbenchmark Harness
@@ -102,6 +102,7 @@ AC_DEFUN_ONCE([LIB_SETUP_LIBRARIES],
LIB_SETUP_BUNDLED_LIBS
LIB_SETUP_MISC_LIBS
LIB_TESTS_SETUP_GRAALUNIT
LIB_TESTS_SETUP_GTEST
BASIC_JDKLIB_LIBS=""
if test "x$TOOLCHAIN_TYPE" != xmicrosoft; then
@@ -292,9 +292,6 @@ JVM_FEATURES_custom := @JVM_FEATURES_custom@
VALID_JVM_FEATURES := @VALID_JVM_FEATURES@
VALID_JVM_VARIANTS := @VALID_JVM_VARIANTS@

# Control whether Hotspot builds gtest tests
BUILD_GTEST := @BUILD_GTEST@

# Allow overriding the default hotspot library path
HOTSPOT_OVERRIDE_LIBPATH := @HOTSPOT_OVERRIDE_LIBPATH@

@@ -392,6 +389,8 @@ JMH_JOPT_SIMPLE_JAR := @JMH_JOPT_SIMPLE_JAR@
JMH_COMMONS_MATH_JAR := @JMH_COMMONS_MATH_JAR@
JMH_VERSION := @JMH_VERSION@

GTEST_FRAMEWORK_SRC := @GTEST_FRAMEWORK_SRC@

# Source file for cacerts
CACERTS_FILE=@CACERTS_FILE@

@@ -404,7 +404,7 @@ var getJibProfilesProfiles = function (input, common, data) {
"linux-x64": {
target_os: "linux",
target_cpu: "x64",
dependencies: ["devkit", "graphviz", "pandoc", "graalunit_lib"],
dependencies: ["devkit", "gtest", "graphviz", "pandoc", "graalunit_lib"],
configure_args: concat(common.configure_args_64bit,
"--enable-full-docs", "--with-zlib=system",
(isWsl(input) ? [ "--host=x86_64-unknown-linux-gnu",
@@ -416,39 +416,39 @@ var getJibProfilesProfiles = function (input, common, data) {
target_os: "linux",
target_cpu: "x86",
build_cpu: "x64",
dependencies: ["devkit"],
dependencies: ["devkit", "gtest"],
configure_args: concat(common.configure_args_32bit,
"--with-jvm-variants=minimal,server", "--with-zlib=system"),
},

"macosx-x64": {
target_os: "macosx",
target_cpu: "x64",
dependencies: ["devkit", "pandoc", "graalunit_lib"],
dependencies: ["devkit", "gtest", "pandoc", "graalunit_lib"],
configure_args: concat(common.configure_args_64bit, "--with-zlib=system",
"--with-macosx-version-max=10.9.0"),
},

"windows-x64": {
target_os: "windows",
target_cpu: "x64",
dependencies: ["devkit", "pandoc", "graalunit_lib"],
dependencies: ["devkit", "gtest", "pandoc", "graalunit_lib"],
configure_args: concat(common.configure_args_64bit),
},

"windows-x86": {
target_os: "windows",
target_cpu: "x86",
build_cpu: "x64",
dependencies: ["devkit"],
dependencies: ["devkit", "gtest"],
configure_args: concat(common.configure_args_32bit),
},

"linux-aarch64": {
target_os: "linux",
target_cpu: "aarch64",
build_cpu: "x64",
dependencies: ["devkit", "build_devkit", "pandoc"],
dependencies: ["devkit", "gtest", "build_devkit", "pandoc"],
configure_args: [
"--openjdk-target=aarch64-linux-gnu",
"--disable-jvm-feature-jvmci",
@@ -461,7 +461,7 @@ var getJibProfilesProfiles = function (input, common, data) {
target_os: "linux",
target_cpu: "arm",
build_cpu: "x64",
dependencies: ["devkit", "build_devkit"],
dependencies: ["devkit", "gtest", "build_devkit"],
configure_args: [
"--openjdk-target=arm-linux-gnueabihf", "--with-freetype=bundled",
"--with-abi-profile=arm-vfp-hflt", "--disable-warnings-as-errors"
@@ -472,7 +472,7 @@ var getJibProfilesProfiles = function (input, common, data) {
target_os: "linux",
target_cpu: "ppc64le",
build_cpu: "x64",
dependencies: ["devkit", "build_devkit"],
dependencies: ["devkit", "gtest", "build_devkit"],
configure_args: [
"--openjdk-target=ppc64le-linux-gnu", "--with-freetype=bundled",
"--disable-warnings-as-errors"
@@ -483,7 +483,7 @@ var getJibProfilesProfiles = function (input, common, data) {
target_os: "linux",
target_cpu: "s390x",
build_cpu: "x64",
dependencies: ["devkit", "build_devkit"],
dependencies: ["devkit", "gtest", "build_devkit"],
configure_args: [
"--openjdk-target=s390x-linux-gnu", "--with-freetype=bundled",
"--disable-warnings-as-errors"
@@ -538,7 +538,7 @@ var getJibProfilesProfiles = function (input, common, data) {
"linux-x64-zero": {
target_os: "linux",
target_cpu: "x64",
dependencies: ["devkit"],
dependencies: ["devkit", "gtest"],
configure_args: concat(common.configure_args_64bit, [
"--with-zlib=system",
"--with-jvm-variants=zero",
@@ -550,7 +550,7 @@ var getJibProfilesProfiles = function (input, common, data) {
target_os: "linux",
target_cpu: "x86",
build_cpu: "x64",
dependencies: ["devkit"],
dependencies: ["devkit", "gtest"],
configure_args: concat(common.configure_args_32bit, [
"--with-zlib=system",
"--with-jvm-variants=zero",
@@ -573,7 +573,7 @@ var getJibProfilesProfiles = function (input, common, data) {
"linux-x64-debug-nopch": {
target_os: "linux",
target_cpu: "x64",
dependencies: ["devkit"],
dependencies: ["devkit", "gtest"],
configure_args: concat(common.configure_args_64bit,
"--with-zlib=system", "--disable-precompiled-headers"),
},
@@ -1148,6 +1148,12 @@ var getJibProfilesDependencies = function (input, common) {
configure_args: "--with-graalunit-lib=" + input.get("graalunit_lib", "install_path"),
environment_name: "GRAALUNIT_LIB"
},

gtest: {
organization: common.organization,
ext: "tar.gz",
revision: "1.8.1"
},
};

return dependencies;
@@ -461,16 +461,9 @@ JDWP "Java(tm) Debug Wire Protocol"
"<a href=\"#JDWP_StackFrame_PopFrames\">PopFrames</a> command can be used "
"to pop frames with obsolete methods."
"<p>"
"Unless the canUnrestrictedlyRedefineClasses capability is present the following "
"redefinitions are restricted: "
"<ul>"
"<li>changing the schema (the fields)</li>"
"<li>changing the hierarchy (superclasses, interfaces)</li>"
"<li>deleting a method</li>"
"<li>changing class modifiers</li>"
"<li>changing method modifiers</li>"
"<li>changing the <code>NestHost</code>, <code>NestMembers</code>, or <code>Record</code> class attributes</li>"
"</ul>"
"Unless the canUnrestrictedlyRedefineClasses capability is present "
"the redefinition must follow the restrictions described in "
"<a href=\"../jvmti.html#RedefineClasses\">JVM TI RedefineClasses</a>."
"<p>"
"Requires canRedefineClasses capability - see "
"<a href=\"#JDWP_VirtualMachine_CapabilitiesNew\">CapabilitiesNew</a>. "