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 jdk #196

Closed
wants to merge 87 commits into from
Closed

Merge jdk #196

Changes from all commits
Commits
Show all changes
87 commits
Select commit Hold shift + click to select a range
9a7dcdc
8253261: Disable CDS full module graph until JDK-8253081 is fixed
iklam Sep 16, 2020
b87a159
8252100: NumberOverflow in class MemoryCache
jayathirthrao Sep 17, 2020
53a4ef2
8202473: A type variable with multiple bounds does not correctly plac…
raphw Sep 17, 2020
4ac6934
8253232: G1Analytics::compute_pause_time_ratios() uses wrong pause ti…
Sep 17, 2020
a9993f9
8253275: Remove unused methods after CMS removal
shipilev Sep 17, 2020
f972155
8252196: ZGC: TestUncommit.java fails due to "Exception: Uncommitted …
pliden Sep 17, 2020
a67f890
8253050: jfr disassemble command processes --max-chunks incorrectly
kvergizova Sep 17, 2020
a4c6a99
8252593: [TESTBUG] serviceability/jvmti/GetLocalVariable/GetLocalWith…
reinrich Sep 17, 2020
cca3a26
8252996: Thread safety problem in java.net.ProxySelector
dmlloyd Sep 17, 2020
81e2cf8
8251397: NPE on ClassValue.ClassValueMap.cacheArray
galderz Sep 17, 2020
24765e4
8253285: Some java/util/StringJoiner tests do not explicitly specify …
Sep 17, 2020
3570f5a
8252041: G1: Fix incorrect uses of HeapRegionManager::max_length
Sep 17, 2020
12dfe1c
8253262: Allocate in DumpRegion is not thread safe
yminqi Sep 17, 2020
1e39649
8243066: Move VM_INTRINSICS_DO into its own vmIntrinsics.hpp file
JohnTortugo Sep 17, 2020
0a1dc50
8253271: vm_version_x86.hpp should not include globals_extension.hpp
iklam Sep 17, 2020
6c3e483
8253313: xmlstream.hpp missing from vmIntrinsics.cpp
iklam Sep 17, 2020
d4269fd
8253028: SA core file tests still time out on OSX with "java.io.IOExc…
plummercj Sep 17, 2020
2c3a37c
8253314: precompiled.hpp missing from vmIntrinsics.cpp
iklam Sep 17, 2020
fd380d7
8253274: The CycleDMImagetest brokes the system
mrserb Sep 18, 2020
3ef2efb
8252721: Nested classes in Swing APIs rely on default constructors
prsadhuk Sep 18, 2020
73c9088
8249451: Unconditional exceptions clearing logic in compiler code sho…
jamsheedcm Sep 18, 2020
11c4ea9
8253278: Refactor/cleanup oopDesc::*_klass_addr
shipilev Sep 18, 2020
86a1640
8244505: G1 pause time ratio calculation does not consider Remark/Cle…
Sep 18, 2020
83b2411
8253342: Fix typos in String.transform
pavelrappo Sep 18, 2020
6e9efff
8253344: Remove unimplemented Arguments::check_gc_consistency
shipilev Sep 18, 2020
43019a0
8253345: Remove unimplemented Arguments::lookup_logging_aliases
shipilev Sep 18, 2020
05572e8
8253350: Remove unimplemented SharedRuntime::clean_*_entry
shipilev Sep 18, 2020
52c28b8
8253239: Disable VS warning C4307
MBaesken Sep 18, 2020
8904420
8253153: Mentioning of "hour-of-minute" in java.time.temporal.Tempora…
naotoj Sep 18, 2020
f37c34d
8253270: Limit fastdebug inlining in G1 evacuation
Sep 18, 2020
d35b117
8253361: Shenandoah: runtime barrier does not honor ShenandoahSelfFix…
zhengyu123 Sep 18, 2020
f55dd9d
8251548: Remove unnecessary explicit initialization of volatile varia…
stsypanov Sep 18, 2020
22f7af7
8253317: The "com/apple/eawt" is missed in the "othervm.dirs" config …
mrserb Sep 19, 2020
224a30f
8252311: AArch64: save two words in itable lookup stub
Sep 19, 2020
1438ce0
8252188: Crash in OrINode::Ideal(PhaseGVN*, bool)+0x8b9
Sep 19, 2020
d27835b
8249142: java/awt/FontClass/CreateFont/DeleteFont.sh is unstable
Sep 19, 2020
83b0537
8253291: bug7072653.java still failed "Popup window height ... is wrong"
mrserb Sep 19, 2020
3d88d38
8252070: Some platform-specific BLIT optimizations are not effective
mrserb Sep 20, 2020
cc7521c
8252199: Reimplement support of Type 1 fonts without MappedByteBuffer
Sep 20, 2020
bca9e55
8253167: ARM32 builds fail after JDK-8247910
Sep 21, 2020
388c8f2
8253348: Remove unimplemented JNIHandles::initialize
shipilev Sep 21, 2020
fdce055
8253253: Binutils tar ball extension update to gz
junyuan-z Sep 21, 2020
34ec1be
8252104: parallel heap inspection for ShenandoahHeap
Sep 21, 2020
955c2e6
8253303: G1: Move static initialization of G1FromCardCache to a prope…
Sep 21, 2020
bba948f
8253411: [BACKOUT] [REDO] G1 incorrectly limiting young gen size when…
Sep 21, 2020
edc14f9
8253286: Use expand_exact() instead of expand_at() for fixed requests…
kstefanj Sep 21, 2020
dad6edb
8253321: java.util.Locale.LanguageRange#equals is inconsistent after …
naotoj Sep 21, 2020
fbfb62d
8253332: ZGC: Make heap views reservation platform independent
stefank Sep 21, 2020
7e49eae
8253407: Move max_pow2 from test to src
stefank Sep 21, 2020
5a7390b
8253418: ZGC: Use pd_ prefix to denote platform dependent code
stefank Sep 21, 2020
43be5a3
8230652: Improve verbose output
Sep 21, 2020
2e30ff6
8253311: Cleanup relocInfo constructors
Sep 21, 2020
f800af9
8241390: 'Deadlock' with VM_RedefineClasses::lock_classes()
Sep 21, 2020
d8921ed
8247281: migrate ObjectMonitor::_object to OopStorage
Sep 21, 2020
d1f9b8a
8234808: jdb quoted option parsing broken
Sep 22, 2020
0e98fc1
8253237: [REDO] Improve large object handling during evacuation
Sep 22, 2020
282b9dc
8081833: Clean up JVMFlag getter/setter code
iklam Sep 22, 2020
f7b1ce4
8253447: Remove buggy code introduced by 8249451
jamsheedcm Sep 22, 2020
96f722c
8252114: Windows-AArch64: Enable and test ZGC and ShenandoahGC
Sep 22, 2020
a4affd5
8253412: Unsupported GC options passed in JAVA_TOOL_OPTIONS are silen…
shipilev Sep 22, 2020
284bbf0
8253079: DeterministicDump.java fails due to garbage in structure pad…
iklam Sep 22, 2020
b9729cb
8253284: Zero OrderAccess barrier mappings are incorrect
shipilev Sep 22, 2020
ae20dd6
8251496: Fix doclint warnings in jdk.net.httpserver
pconcannon Sep 22, 2020
aa38624
8248352: [TEST_BUG] Test test/jdk/java/awt/font/TextLayout/ArabicDiac…
skodanda Sep 22, 2020
0c287de
8253421: Initialize JFR trace-IDs with zero
rkennke Sep 22, 2020
8c02bdb
8252921: NMT overwrite memory type for region assert when building dy…
zhengyu123 Sep 22, 2020
3d5fea1
8253434: Shenandoah: Cleanup ShenandoahRootScanner
zhengyu123 Sep 22, 2020
24e12b3
8247251: Assert (_pcs_length == 0 || last_pc()->pc_offset() < pc_offs…
Sep 22, 2020
c1df13b
8253208: Move CDS related code to a separate class
yminqi Sep 22, 2020
0f26ab1
8252518: cache result of CompilerToVM.getComponentType
Sep 22, 2020
7b86012
8253492: Miss comma after second copyright year in FDBigInteger.java
yminqi Sep 22, 2020
581f0f2
8253493: Shenandoah: Remove ShenandoahSerialRoot definition
zhengyu123 Sep 22, 2020
65af837
8253496: [BACKOUT] JDK-8253208 Move CDS related code to a separate class
iklam Sep 22, 2020
426c904
8253392: remove PhaseCCP_DCE declaration
Sep 22, 2020
93a2018
8252195: AWT Accessibility API nested classes rely on default constru…
Sep 22, 2020
c68a31d
8253499: Problem list runtime/cds/DeterministicDump.java
iklam Sep 22, 2020
bddb822
8253240: No javadoc for DecimalFormatSymbols.hashCode()
naotoj Sep 22, 2020
bd67975
8253349: Remove unimplemented SharedRuntime::native_method_throw_unsu…
shipilev Sep 23, 2020
226faa5
8253241: Update comment on java_suspend_self_with_safepoint_check()
reinrich Sep 23, 2020
3fe5886
8252696: Loop unswitching may cause out of bound array load to be exe…
rwestrel Sep 23, 2020
e4d0e5a
8253516: ZGC: Remove card table functions
stefank Sep 23, 2020
b8ea80a
8253457: Remove unimplemented register stack functions
coleenp Sep 23, 2020
5f1d612
8253397: Ensure LogTag types are sorted
cl4es Sep 23, 2020
6cc343a
Merge tag 'jdk-16+17' into lworld_merge_jdk_16_17
MrSimms Sep 24, 2020
051b38b
No longer assert correct decode
MrSimms Sep 24, 2020
b80c487
Tag order matters
MrSimms Sep 24, 2020
004797e
Treat flatArrayKlass as object in G1's copy to survivor space
MrSimms Sep 24, 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
@@ -134,6 +134,10 @@ AC_DEFUN([FLAGS_SETUP_WARNINGS],
WARNINGS_ENABLE_ALL="-W3"
DISABLED_WARNINGS="4800"
if test "x$TOOLCHAIN_VERSION" = x2017; then
# VS2017 incorrectly triggers this warning for constexpr
DISABLED_WARNINGS+=" 4307"
fi
;;
gcc)
@@ -395,8 +395,14 @@ AC_DEFUN_ONCE([JVM_FEATURES_CHECK_ZGC],
AC_MSG_RESULT([no, $OPENJDK_TARGET_OS-$OPENJDK_TARGET_CPU])
AVAILABLE=false
fi
elif test "x$OPENJDK_TARGET_OS-$OPENJDK_TARGET_CPU" = "xlinux-aarch64"; then
AC_MSG_RESULT([yes])
elif test "x$OPENJDK_TARGET_CPU" = "xaarch64"; then
if test "x$OPENJDK_TARGET_OS" = "xlinux" || \
test "x$OPENJDK_TARGET_OS" = "xwindows"; then
AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([no, $OPENJDK_TARGET_OS-$OPENJDK_TARGET_CPU])
AVAILABLE=false
fi
else
AC_MSG_RESULT([no, $OPENJDK_TARGET_OS-$OPENJDK_TARGET_CPU])
AVAILABLE=false
@@ -125,7 +125,7 @@ else
endif

GCC := http://ftp.gnu.org/pub/gnu/gcc/$(gcc_ver)/$(gcc_ver).tar.xz
BINUTILS := http://ftp.gnu.org/pub/gnu/binutils/$(binutils_ver).tar.xz
BINUTILS := http://ftp.gnu.org/pub/gnu/binutils/$(binutils_ver).tar.gz
CCACHE := https://github.com/ccache/ccache/releases/download/v$(ccache_ver)/ccache-$(ccache_ver).tar.xz
MPFR := https://www.mpfr.org/${mpfr_ver}/${mpfr_ver}.tar.bz2
GMP := http://ftp.gnu.org/pub/gnu/gmp/${gmp_ver}.tar.bz2
@@ -1005,27 +1005,22 @@ void MacroAssembler::lookup_interface_method(Register recv_klass,
// }
Label search, found_method;

for (int peel = 1; peel >= 0; peel--) {
ldr(method_result, Address(scan_temp, itableOffsetEntry::interface_offset_in_bytes()));
cmp(intf_klass, method_result);

if (peel) {
br(Assembler::EQ, found_method);
} else {
br(Assembler::NE, search);
// (invert the test to fall through to found_method...)
}

if (!peel) break;

bind(search);

// Check that the previous entry is non-null. A null entry means that
// the receiver class doesn't implement the interface, and wasn't the
// same as when the caller was compiled.
cbz(method_result, L_no_such_interface);
ldr(method_result, Address(scan_temp, itableOffsetEntry::interface_offset_in_bytes()));
cmp(intf_klass, method_result);
br(Assembler::EQ, found_method);
bind(search);
// Check that the previous entry is non-null. A null entry means that
// the receiver class doesn't implement the interface, and wasn't the
// same as when the caller was compiled.
cbz(method_result, L_no_such_interface);
if (itableOffsetEntry::interface_offset_in_bytes() != 0) {
add(scan_temp, scan_temp, scan_step);
ldr(method_result, Address(scan_temp, itableOffsetEntry::interface_offset_in_bytes()));
} else {
ldr(method_result, Address(pre(scan_temp, scan_step)));
}
cmp(intf_klass, method_result);
br(Assembler::NE, search);

bind(found_method);

@@ -28,6 +28,7 @@
#include "asm/macroAssembler.inline.hpp"
#include "memory/resourceArea.hpp"
#include "runtime/arguments.hpp"
#include "runtime/globals_extension.hpp"
#include "runtime/java.hpp"
#include "runtime/os.hpp"
#include "runtime/stubCodeGenerator.hpp"
@@ -27,7 +27,6 @@
#define CPU_AARCH64_VM_VERSION_AARCH64_HPP

#include "runtime/abstract_vm_version.hpp"
#include "runtime/globals_extension.hpp"
#include "utilities/sizes.hpp"

class VM_Version : public Abstract_VM_Version {
@@ -55,11 +55,4 @@ const bool HaveVFP = true;
#define AD_MD_HPP "adfiles/ad_arm_32.hpp"
#define C1_LIRGENERATOR_MD_HPP "c1_LIRGenerator_arm.hpp"

#ifdef TARGET_COMPILER_gcc
#ifdef ARM32
#undef BREAKPOINT
#define BREAKPOINT __asm__ volatile ("bkpt")
#endif
#endif

#endif // CPU_ARM_GLOBALDEFINITIONS_ARM_HPP
@@ -27,6 +27,7 @@
#include "asm/macroAssembler.inline.hpp"
#include "memory/resourceArea.hpp"
#include "runtime/arguments.hpp"
#include "runtime/globals_extension.hpp"
#include "runtime/java.hpp"
#include "runtime/os.inline.hpp"
#include "runtime/stubCodeGenerator.hpp"
@@ -27,6 +27,7 @@
#include "opto/compile.hpp"
#include "opto/node.hpp"
#include "runtime/globals.hpp"
#include "runtime/globals_extension.hpp"
#include "utilities/debug.hpp"

// Processor dependent initialization of C2 compiler for ppc.
@@ -29,6 +29,7 @@
#include "asm/macroAssembler.inline.hpp"
#include "compiler/disassembler.hpp"
#include "memory/resourceArea.hpp"
#include "runtime/globals_extension.hpp"
#include "runtime/java.hpp"
#include "runtime/os.hpp"
#include "runtime/stubCodeGenerator.hpp"
@@ -29,6 +29,7 @@
#include "compiler/disassembler.hpp"
#include "code/compiledIC.hpp"
#include "memory/resourceArea.hpp"
#include "runtime/globals_extension.hpp"
#include "runtime/java.hpp"
#include "runtime/stubCodeGenerator.hpp"
#include "runtime/vm_version.hpp"
@@ -1,5 +1,5 @@
/*
* Copyright (c) 2013, 2019, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2013, 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
@@ -24,6 +24,7 @@

#include "precompiled.hpp"
#include "rdtsc_x86.hpp"
#include "runtime/globals_extension.hpp"
#include "runtime/orderAccess.hpp"
#include "runtime/thread.inline.hpp"
#include "vm_version_ext_x86.hpp"
@@ -29,6 +29,7 @@
#include "logging/log.hpp"
#include "logging/logStream.hpp"
#include "memory/resourceArea.hpp"
#include "runtime/globals_extension.hpp"
#include "runtime/java.hpp"
#include "runtime/os.hpp"
#include "runtime/stubCodeGenerator.hpp"
@@ -27,7 +27,6 @@

#include "memory/universe.hpp"
#include "runtime/abstract_vm_version.hpp"
#include "runtime/globals_extension.hpp"

class VM_Version : public Abstract_VM_Version {
friend class VMStructs;
@@ -1,5 +1,5 @@
/*
* Copyright (c) 1997, 2019, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1997, 2020, Oracle and/or its affiliates. All rights reserved.
* Copyright 2009 Red Hat, Inc.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
@@ -26,6 +26,7 @@
#include "precompiled.hpp"
#include "assembler_zero.inline.hpp"
#include "memory/resourceArea.hpp"
#include "runtime/globals_extension.hpp"
#include "runtime/java.hpp"
#include "runtime/stubCodeGenerator.hpp"
#include "runtime/vm_version.hpp"
@@ -54,6 +54,7 @@
#include "runtime/arguments.hpp"
#include "runtime/atomic.hpp"
#include "runtime/globals.hpp"
#include "runtime/globals_extension.hpp"
#include "runtime/interfaceSupport.inline.hpp"
#include "runtime/java.hpp"
#include "runtime/javaCalls.hpp"
@@ -25,7 +25,7 @@
#include "gc/z/zLargePages.hpp"
#include "runtime/globals.hpp"

void ZLargePages::initialize_platform() {
void ZLargePages::pd_initialize() {
if (UseLargePages) {
_state = Explicit;
} else {
@@ -24,7 +24,7 @@
#include "precompiled.hpp"
#include "gc/z/zNUMA.hpp"

void ZNUMA::initialize_platform() {
void ZNUMA::pd_initialize() {
_enabled = false;
}

@@ -45,6 +45,7 @@
#include "runtime/arguments.hpp"
#include "runtime/atomic.hpp"
#include "runtime/globals.hpp"
#include "runtime/globals_extension.hpp"
#include "runtime/interfaceSupport.inline.hpp"
#include "runtime/java.hpp"
#include "runtime/javaCalls.hpp"
@@ -25,7 +25,7 @@
#include "gc/z/zLargePages.hpp"
#include "runtime/globals.hpp"

void ZLargePages::initialize_platform() {
void ZLargePages::pd_initialize() {
if (UseLargePages) {
if (UseTransparentHugePages) {
_state = Transparent;
@@ -29,7 +29,7 @@
#include "runtime/os.hpp"
#include "utilities/debug.hpp"

void ZNUMA::initialize_platform() {
void ZNUMA::pd_initialize() {
_enabled = UseNUMA;
}

@@ -46,6 +46,7 @@
#include "runtime/arguments.hpp"
#include "runtime/atomic.hpp"
#include "runtime/globals.hpp"
#include "runtime/globals_extension.hpp"
#include "runtime/interfaceSupport.inline.hpp"
#include "runtime/init.hpp"
#include "runtime/java.hpp"
@@ -24,6 +24,6 @@
#include "precompiled.hpp"
#include "gc/z/zInitialize.hpp"

void ZInitialize::initialize_os() {
void ZInitialize::pd_initialize() {
// Does nothing
}
@@ -29,57 +29,28 @@
#include <sys/mman.h>
#include <sys/types.h>

void ZVirtualMemoryManager::initialize_os() {
void ZVirtualMemoryManager::pd_initialize() {
// Does nothing
}

static void unmap(uintptr_t start, size_t size) {
const int res = munmap((void*)start, size);
assert(res == 0, "Failed to unmap memory");
}

static bool map(uintptr_t start, size_t size) {
const void* const res = mmap((void*)start, size, PROT_NONE, MAP_ANONYMOUS|MAP_PRIVATE|MAP_NORESERVE, -1, 0);
if (res == MAP_FAILED) {
bool ZVirtualMemoryManager::pd_reserve(uintptr_t addr, size_t size) {
const uintptr_t res = (uintptr_t)mmap((void*)addr, size, PROT_NONE, MAP_ANONYMOUS|MAP_PRIVATE|MAP_NORESERVE, -1, 0);
if (res == (uintptr_t)MAP_FAILED) {
// Failed to reserve memory
return false;
}

if ((uintptr_t)res != start) {
if (res != addr) {
// Failed to reserve memory at the requested address
unmap((uintptr_t)res, size);
munmap((void*)res, size);
return false;
}

// Success
return true;
}

bool ZVirtualMemoryManager::reserve_contiguous_platform(uintptr_t start, size_t size) {
// Reserve address views
const uintptr_t marked0 = ZAddress::marked0(start);
const uintptr_t marked1 = ZAddress::marked1(start);
const uintptr_t remapped = ZAddress::remapped(start);

if (!map(marked0, size)) {
return false;
}

if (!map(marked1, size)) {
unmap(marked0, size);
return false;
}

if (!map(remapped, size)) {
unmap(marked0, size);
unmap(marked1, size);
return false;
}

// Register address views with native memory tracker
nmt_reserve(marked0, size);
nmt_reserve(marked1, size);
nmt_reserve(remapped, size);

return true;
void ZVirtualMemoryManager::pd_unreserve(uintptr_t addr, size_t size) {
const int res = munmap((void*)addr, size);
assert(res == 0, "Failed to unmap memory");
}
@@ -26,6 +26,7 @@
#include "logging/log.hpp"
#include "memory/allocation.inline.hpp"
#include "os_posix.inline.hpp"
#include "runtime/globals_extension.hpp"
#include "utilities/globalDefinitions.hpp"
#include "runtime/frame.inline.hpp"
#include "runtime/interfaceSupport.inline.hpp"
@@ -25,6 +25,6 @@
#include "gc/z/zInitialize.hpp"
#include "gc/z/zSyscall_windows.hpp"

void ZInitialize::initialize_os() {
void ZInitialize::pd_initialize() {
ZSyscall::initialize();
}
@@ -24,6 +24,6 @@
#include "precompiled.hpp"
#include "gc/z/zLargePages.hpp"

void ZLargePages::initialize_platform() {
void ZLargePages::pd_initialize() {
_state = Disabled;
}
@@ -24,7 +24,7 @@
#include "precompiled.hpp"
#include "gc/z/zNUMA.hpp"

void ZNUMA::initialize_platform() {
void ZNUMA::pd_initialize() {
_enabled = false;
}