Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
113 commits
Select commit Hold shift + click to select a range
f306968
8380303: Obsolete unused flag UseXMMForArrayCopy
Mar 18, 2026
4f2debe
8380033: Test java/util/jar/Manifest/IncludeInExceptionsTest.java cou…
RealCLanger Mar 18, 2026
30145a4
8379952: Revert JDK-8365711: Restore protected visibility of menuBarH…
mrserb Mar 18, 2026
37cdc79
8380228: JNI primitive type mismatch in Java_com_sun_java_swing_plaf_…
Mar 18, 2026
27a4ed5
8375568: Shenandoah: Abbreviate thread names in display when length c…
rgithubli Mar 18, 2026
deccad2
8377907: (process) Race in ProcessBuilder can cause JVM hangs
tstuefe Mar 19, 2026
7c0da67
8380041: PPC: remove POWER6 remnants
reinrich Mar 19, 2026
d0e62e1
8351847: C2: Add "TraceSplitIf" flag to get more information about th…
IntegralPilot Mar 19, 2026
0200156
8379425: Windows and macOS should not allow unsupported headless-only…
MBaesken Mar 19, 2026
a0c8fce
8379511: G1: G1CollectorState should derive concurrent cycle state fr…
Mar 19, 2026
75b2ee2
8376591: TestLoopNestTooManyTraps fails with various stress flags
rwestrel Mar 19, 2026
1de0322
8378764: fileStream::fileSize() fails for >2GB files on Windows
schmelter-sap Mar 19, 2026
4e9b35f
8323792: ThreadSnapshot::initialize can cause assert in Thread::check…
zhengyu123 Mar 19, 2026
347aae6
8380011: Path-to-gcroots search should not trigger stack overflows
tstuefe Mar 19, 2026
3ad5321
8380150: JavaCallArguments defined too late
Mar 19, 2026
c715a45
8380298: Rename _pagesizes and _pre_allocated_pagesizes in hugepages.cpp
lkorinth Mar 19, 2026
28e7243
8379707: UserAuthWithAuthenticator::h3Test fails intermittentently
dfuch Mar 19, 2026
5a22b64
8278857: C2: optimize (x << 2) & -4 to x (and similar patterns) -> Kn…
raneashay Mar 19, 2026
1b924bf
8380204: java/io/File/EmptyPath.java fails due to unexpected listRoot…
Mar 19, 2026
76e7c9e
8380078: Update GIFlib to 6.1.2
Mar 19, 2026
876a68a
8378884: Migrate jdk/jdk/nio/zipfs tests to use JUnit
Mar 19, 2026
9ea893d
8380223: Refactor test/jdk/sun/util/resources TestNG tests to JUnit
naotoj Mar 19, 2026
13b954b
8380407: GenShen: Problem with com/sun/jdi/ThreadMemoryLeakTest
kdnilsen Mar 19, 2026
cdd64db
8379433: Throwing proper exception for invalid encapsulation length i…
Mar 19, 2026
80fb1f7
8379824: Refactor java/io tests to use JUnit
Mar 19, 2026
615aba8
8374304: MultiResolutionSplashTest.java fails in CI: "Image with wron…
aivanov-jdk Mar 19, 2026
96f6ffb
8278591: Jpackage post installation information message
Mar 19, 2026
3c09c2c
8267961: JInternalFrame.getNormalBounds() returns normalBounds when m…
prsadhuk Mar 20, 2026
b79449f
8379431: [macos] jpackage issues unexpected warning when bundling an …
Mar 20, 2026
7e943e7
8380474: Crash SEGV in ThreadIdTable::lazy_initialize after JDK-8323792
Mar 20, 2026
f2550e8
8378906: NPE from javac thrown when encountering abstract synthetic b…
dbalek Mar 20, 2026
f5fbb6a
8380428: ProblemList containers/docker/TestJcmdWithSideCar.java on li…
ArnoZeller Mar 20, 2026
f7c427f
8379182: [test] java/lang/ProcessBuilder/PipelineLeaksFD.java fails
Mar 20, 2026
396cc0a
8380534: Use loopback address in java/net/DatagramPacket/ReuseBuf.jav…
jaikiran Mar 20, 2026
b32e9b0
8378806: Genshen: Add scope of collection to end of cycle message in …
Mar 20, 2026
26c4b5f
8379367: GenShen: Replace atomic promotion failure counters with thre…
Mar 20, 2026
54c5e41
8380085: jpackage (Linux) launcher crashes with SIGSEGV when input co…
sseu-buhzzi Mar 20, 2026
d0841c6
8379688: GenShen: Skip promotions when marking finds enough immediate…
Mar 20, 2026
137d971
8378935: C2 crash in PhaseOutput::fill_buffer: wrong size of mach node
Mar 20, 2026
d610ace
8380562: GenShen: GC notification event may see invalid values
Mar 20, 2026
e58e576
8369181: InflaterOutputStream: writing after finish() results in Ille…
jaikiran Mar 21, 2026
9a3b850
8380416: Enable CmpUNodeValueTests.java IR tests for RISC-V
DingliZhang Mar 21, 2026
2cdf617
8372649: C2 compilation fails with "there should be an oop in OopMap …
hgqxjj Mar 21, 2026
e042467
8378440: ASAN build fails on Windows due to missing dlfcn.h file
Mar 22, 2026
aba5d31
8378605: Remove AppContext from the Swing TimerQueue implementation
prrace Mar 22, 2026
fae345c
8378918: Remove AppContext from some DnD classes
prrace Mar 22, 2026
d64ea29
8378919: Remove AppContext from the java.awt.Desktop class
prrace Mar 22, 2026
a26d613
8378898: Remove AppContext from sun/awt/windows/WWindowPeer.java
prrace Mar 22, 2026
ea464b1
8379018: Remove AppContext from two input method related classes
prrace Mar 22, 2026
8897239
8380427: Revert JDK-8380292Confusing "reverted *" messages during tr…
Mar 23, 2026
a6f59ba
8378749: Early GC crash with unresolved AOT FMG subgraph classes
iklam Mar 23, 2026
f1cb3b4
8379792: UBSAN runtime error: signed integer overflow during compress…
Mar 23, 2026
8e906dd
8379019: Remove AppContext from WindowEvent
prrace Mar 23, 2026
206c9cd
8378923: Remove AppContext from datatransfer classes
prrace Mar 23, 2026
db49e8d
8378243: [IR Framework] Create separate VMInfo and ApplicableIRRules …
chhagedorn Mar 23, 2026
4df61ce
8380532: Parallel: Rename allocate to cas_allocate in PSYoungGen
albertnetymk Mar 23, 2026
caf37ad
8374789: C2: refactor GraphKit code that create AddP nodes for raw me…
hgqxjj Mar 23, 2026
700a385
8080226: G1: Replace collector state booleans with explicit state var…
Mar 23, 2026
1741837
8380281: Remove the client emulation mode
jsikstro Mar 23, 2026
9a0fde4
8367765: G1: Merge G1UpdateRegionLivenessAndSelectForRebuild task and…
Mar 23, 2026
c436802
8380168: Obsolete unused flag UseNewLongLShift
Mar 23, 2026
890d62b
8380564: Parallel: Rename allocate to cas_allocate_with_expansion in …
albertnetymk Mar 23, 2026
00ee63e
8380475: C2: Improve AndNode::Identity with KnownBits
raneashay Mar 23, 2026
2a64074
8374706: HttpClient: Ensure that request body publishers support mult…
vy Mar 23, 2026
60a141c
8380441: G1: Move G1GCPauseType to G1CollectorState
Mar 23, 2026
5c2ef74
8380316: Test runtime/os/AvailableProcessors.java fails Invalid argument
Mar 23, 2026
0798dd1
8379551: sun/text/IntHashtable/Bug4705389.java timed out
naotoj Mar 23, 2026
c6a2017
8378615: FFM Bound up call stub keeps JNI Global Ref to bound parameter
prrace Mar 23, 2026
2095051
8380219: Interpreter debugging would be easier if InterpreterCodelets…
fparain Mar 23, 2026
f1169bf
8378195: guarantee(static_cast<int>(_oops_size) == align_up(code_buff…
Mar 23, 2026
d85fbd3
8370138: C2: clean up Matcher::use_asm_for_ldiv_by_con can
SirYwell Mar 23, 2026
e0fe86b
8371924: --mac-app-store should be accepted option for app image signing
Mar 24, 2026
e6c870e
8378731: Move AOT-inited classes to initialized state in early VM boo…
iklam Mar 24, 2026
105d526
8377921: Add anchors to the options in the Core Libs tool man pages
calnan Mar 24, 2026
cc29010
8380664: Remove stub entries used in x86-32
Mar 24, 2026
fd2ef1b
8380665: (dc) java/nio/channels/DatagramChannel/SendReceiveMaxSize.ja…
dfuch Mar 24, 2026
90eebaa
8380516: HotSpot has two different ways of making Windows strtok_s av…
kevinjwalls Mar 24, 2026
d0d85cd
8380526: G1: Remove "last young" use for the Prepare Mixed GC
Mar 24, 2026
9658c19
8378713: C2: performance regression due to missing constant folding f…
tabjy Mar 24, 2026
7b7f40b
8380561: Refactor java/nio/channels/DatagramChannel TestNG tests to u…
dfuch Mar 24, 2026
4a9903b
8380431: Shenandoah: Concurrent modification of stack-chunk objects d…
Mar 24, 2026
6b156ab
8357037: Verifier rejects method ending in switch instruction
Mar 24, 2026
2afd7b8
8379672: jdk/internal/misc/VM/RuntimeArguments.java test still fails …
Mar 24, 2026
18fdbd2
8314258: Add integer_cast for checking conversions don't change the v…
Mar 24, 2026
4b38e7b
8346133: Refactor java.time.ZoneOffset caching
naotoj Mar 24, 2026
4e79015
8380846: GenShen: Remove the experimental option to disable adaptive …
Mar 24, 2026
e8ce930
8379020: GenShen: Promote all objects when whitebox full GC is requested
Mar 25, 2026
5688595
8380408: GenShen: Fix regression with vmTestbase/gc/memory/Churn/Chur…
kdnilsen Mar 25, 2026
4408e1c
8380580: Enable TestCombineAddPWithConstantOffsets.java IR tests for …
DingliZhang Mar 25, 2026
274f8e6
8371182: [macos] Improve error messages for "invalid mac bundle ident…
Mar 25, 2026
ec8bcf7
8352567: [s390x] ProblemList JFR tests requiring JFR stubs
vpa1977 Mar 25, 2026
51ea257
8379782: Implement Object Monitor Table enabled by default
fbredber Mar 25, 2026
0c60c9c
8376185: NoSuchFieldError thrown after a record with type annotation …
Mar 25, 2026
0423483
8380772: Rename _total_allocations to _total_allocated_size in Thread…
albertnetymk Mar 25, 2026
3bf5022
8380641: Thread dump parsing and test improvements
Mar 25, 2026
1faee07
8379362: C2: Buffer overrun in VectorSupport::lanetype2name
Mar 25, 2026
7d24a09
8380824: java/net/DatagramSocket/SendReceiveMaxSize.java could also t…
dfuch Mar 25, 2026
3737cad
8370947: Mitigate Neoverse-N1 erratum 1542419 negative impact on GCs …
Mar 25, 2026
46e6b26
8372646: C2: Stress Counted Loop creation
sarannat Mar 25, 2026
6466d98
8380776: No longer necessary to disable calloc-transposed-args warnin…
fthevenet Mar 25, 2026
4dca6e4
8380903: [BACKOUT] Mitigate Neoverse-N1 erratum 1542419 negative impa…
jsikstro Mar 25, 2026
2a6d92f
8380703: Assertion failure in TestCodeEntryAlignment.java
Mar 25, 2026
ca0bee7
8374915: Move assertion in GenericTaskQueue<>::pop_global()
Mar 25, 2026
cf42448
8375275: Error handling to raise illegal_parameter or internal_error …
Mar 25, 2026
02972a5
8379549: sun/security/ssl/SSLSocketImpl/SSLSocketSSLEngineCloseInboun…
Mar 25, 2026
331c754
8380523: Refactor TLAB slow allocation naming
albertnetymk Mar 25, 2026
2852928
8380663: Update jcmd man page to include AOT.end_recording diagnostic…
ammbra Mar 25, 2026
88bdbb7
8380472: Clean up test/jdk/jdk/nio/zipfs/PathOps.java shared file sys…
Mar 25, 2026
3588fb7
8380825: AOT tests should run in two step training mode by default
iklam Mar 25, 2026
a55656d
8380789: RISC-V: TestOpaqueConstantBoolNodes.java fails when running …
DingliZhang Mar 26, 2026
ceb109f
8380081: jpackage: Incorrect descriptions of win-specific options
Mar 26, 2026
69deec2
8378985: serviceability/sa/TestJhsdbJstackMixedWithXComp.java failed …
YaSuenag Mar 26, 2026
703660b
Merge branch 'sapmachine' into pr-jdk-27+15
RealCLanger Mar 31, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
7 changes: 7 additions & 0 deletions make/autoconf/jdk-options.m4
Original file line number Diff line number Diff line change
Expand Up @@ -102,6 +102,13 @@ AC_DEFUN_ONCE([JDKOPT_SETUP_JDK_OPTIONS],
CHECKING_MSG: [if we should build headless-only (no GUI)])
AC_SUBST(ENABLE_HEADLESS_ONLY)

# Avoid headless-only on macOS and Windows, it is not supported there
if test "x$ENABLE_HEADLESS_ONLY" = xtrue; then
if test "x$OPENJDK_TARGET_OS" = xwindows || test "x$OPENJDK_TARGET_OS" = xmacosx; then
AC_MSG_ERROR([headless-only is not supported on macOS and Windows])
fi
fi

# should we linktime gc unused code sections in the JDK build ?
if test "x$OPENJDK_TARGET_OS" = "xlinux"; then
if test "x$OPENJDK_TARGET_CPU" = "xs390x" || test "x$OPENJDK_TARGET_CPU" = "xppc64le"; then
Expand Down
5 changes: 1 addition & 4 deletions make/modules/java.desktop/lib/ClientLibraries.gmk
Original file line number Diff line number Diff line change
Expand Up @@ -338,11 +338,8 @@ else
# noexcept-type required for GCC 7 builds. Not required for GCC 8+.
# expansion-to-defined required for GCC 9 builds. Not required for GCC 10+.
# maybe-uninitialized required for GCC 8 builds. Not required for GCC 9+.
# calloc-transposed-args required for GCC 14 builds. (fixed upstream in
# Harfbuzz 032c931e1c0cfb20f18e5acb8ba005775242bd92)
HARFBUZZ_DISABLED_WARNINGS_CXX_gcc := class-memaccess noexcept-type \
expansion-to-defined dangling-reference maybe-uninitialized \
calloc-transposed-args
expansion-to-defined dangling-reference maybe-uninitialized
HARFBUZZ_DISABLED_WARNINGS_clang := missing-field-initializers \
range-loop-analysis unused-variable
HARFBUZZ_DISABLED_WARNINGS_microsoft := 4267 4244
Expand Down
4 changes: 2 additions & 2 deletions make/modules/jdk.jpackage/Java.gmk
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#
# Copyright (c) 2020, 2025, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2020, 2026, 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
Expand Down Expand Up @@ -29,7 +29,7 @@ DISABLED_WARNINGS_java += dangling-doc-comments

COPY += .gif .png .txt .spec .script .prerm .preinst \
.postrm .postinst .list .sh .desktop .copyright .control .plist .template \
.icns .scpt .wxs .wxl .wxi .wxf .ico .bmp .tiff .service .xsl
.icns .scpt .wxs .wxl .wxi .wxf .ico .bmp .tiff .service .xsl .js

CLEAN += .properties

Expand Down
8 changes: 6 additions & 2 deletions make/test/JtregNativeJdk.gmk
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#
# Copyright (c) 2015, 2025, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2015, 2026, 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
Expand Down Expand Up @@ -63,7 +63,8 @@ ifeq ($(call isTargetOs, windows), true)
BUILD_JDK_JTREG_EXCLUDE += libDirectIO.c libInheritedChannel.c \
libExplicitAttach.c libImplicitAttach.c \
exelauncher.c libFDLeaker.c exeFDLeakTester.c \
libChangeSignalDisposition.c exePrintSignalDisposition.c
libChangeSignalDisposition.c exePrintSignalDisposition.c \
libConcNativeFork.c libPipesCloseOnExec.c

#SapMachine 2024-06-12: Exclude libCreateNewProcessGroupOnSpawnTest.c from native compilation on Windows
BUILD_JDK_JTREG_EXCLUDE += libCreateNewProcessGroupOnSpawnTest.c
Expand All @@ -80,6 +81,9 @@ else
BUILD_JDK_JTREG_LIBRARIES_LDFLAGS_libLinkerInvokerUnnamed := -pthread
BUILD_JDK_JTREG_LIBRARIES_LDFLAGS_libLinkerInvokerModule := -pthread
BUILD_JDK_JTREG_LIBRARIES_LDFLAGS_libLoaderLookupInvoker := -pthread
BUILD_JDK_JTREG_LIBRARIES_LDFLAGS_libConcNativeFork := -pthread
BUILD_JDK_JTREG_LIBRARIES_LDFLAGS_libPipesCloseOnExec := -pthread
BUILD_JDK_JTREG_LIBRARIES_LDFLAGS_libLoaderLookupInvoker := -pthread

BUILD_JDK_JTREG_LIBRARIES_LDFLAGS_libExplicitAttach := -pthread
BUILD_JDK_JTREG_LIBRARIES_LDFLAGS_libImplicitAttach := -pthread
Expand Down
4 changes: 0 additions & 4 deletions src/hotspot/cpu/aarch64/aarch64.ad
Original file line number Diff line number Diff line change
Expand Up @@ -2524,10 +2524,6 @@ uint Matcher::float_pressure_limit()
return (FLOATPRESSURE == -1) ? _FLOAT_REG_mask.size() : FLOATPRESSURE;
}

bool Matcher::use_asm_for_ldiv_by_con(jlong divisor) {
return false;
}

const RegMask& Matcher::divI_proj_mask() {
ShouldNotReachHere();
return RegMask::EMPTY;
Expand Down
6 changes: 1 addition & 5 deletions src/hotspot/cpu/arm/arm.ad
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
//
// Copyright (c) 2008, 2025, Oracle and/or its affiliates. All rights reserved.
// Copyright (c) 2008, 2026, 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
Expand Down Expand Up @@ -1112,10 +1112,6 @@ uint Matcher::float_pressure_limit()
return (FLOATPRESSURE == -1) ? 30 : FLOATPRESSURE;
}

bool Matcher::use_asm_for_ldiv_by_con( jlong divisor ) {
return false;
}

// Register for DIVI projection of divmodI
const RegMask& Matcher::divI_proj_mask() {
ShouldNotReachHere();
Expand Down
7 changes: 0 additions & 7 deletions src/hotspot/cpu/ppc/assembler_ppc.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -1580,10 +1580,6 @@ class Assembler : public AbstractAssembler {
static bool is_nop(int x) {
return x == 0x60000000;
}
// endgroup opcode for Power6
static bool is_endgroup(int x) {
return is_ori(x) && inv_ra_field(x) == 1 && inv_rs_field(x) == 1 && inv_d1_field(x) == 0;
}


private:
Expand Down Expand Up @@ -1659,9 +1655,6 @@ class Assembler : public AbstractAssembler {
inline void ori_opt( Register d, int ui16);
inline void oris_opt(Register d, int ui16);

// endgroup opcode for Power6
inline void endgroup();

// count instructions
inline void cntlzw( Register a, Register s);
inline void cntlzw_( Register a, Register s);
Expand Down
2 changes: 0 additions & 2 deletions src/hotspot/cpu/ppc/assembler_ppc.inline.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -253,8 +253,6 @@ inline void Assembler::mr( Register d, Register s) { Assembler::orr(d, s,
inline void Assembler::ori_opt( Register d, int ui16) { if (ui16!=0) Assembler::ori( d, d, ui16); }
inline void Assembler::oris_opt(Register d, int ui16) { if (ui16!=0) Assembler::oris(d, d, ui16); }

inline void Assembler::endgroup() { Assembler::ori(R1, R1, 0); }

// count instructions
inline void Assembler::cntlzw( Register a, Register s) { emit_int32(CNTLZW_OPCODE | rta(a) | rs(s) | rc(0)); }
inline void Assembler::cntlzw_( Register a, Register s) { emit_int32(CNTLZW_OPCODE | rta(a) | rs(s) | rc(1)); }
Expand Down
3 changes: 0 additions & 3 deletions src/hotspot/cpu/ppc/disassembler_ppc.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -119,9 +119,6 @@ address Disassembler::decode_instruction0(address here, outputStream * st, addre
} else if (instruction == 0xbadbabe) {
st->print(".data 0xbadbabe");
next = here + Assembler::instr_len(here);
} else if (Assembler::is_endgroup(instruction)) {
st->print("endgroup");
next = here + Assembler::instr_len(here);
} else {
next = here;
}
Expand Down
4 changes: 2 additions & 2 deletions src/hotspot/cpu/ppc/macroAssembler_ppc.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -483,7 +483,7 @@ void MacroAssembler::set_dest_of_bc_far_at(address instruction_addr, address des
// variant 3, far cond branch to the next instruction, already patched to nops:
//
// nop
// endgroup
// nop
// SKIP/DEST:
//
return;
Expand All @@ -500,7 +500,7 @@ void MacroAssembler::set_dest_of_bc_far_at(address instruction_addr, address des
if (is_bc_far_variant2_at(instruction_addr) && dest == instruction_addr + 8) {
// Far branch to next instruction: Optimize it by patching nops (produce variant 3).
masm.nop();
masm.endgroup();
masm.nop();
} else {
if (is_bc_far_variant1_at(instruction_addr)) {
// variant 1, the 1st instruction contains the destination address:
Expand Down
8 changes: 0 additions & 8 deletions src/hotspot/cpu/ppc/macroAssembler_ppc.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -70,14 +70,6 @@ class MacroAssembler: public Assembler {
// Move register if destination register and target register are different
inline void mr_if_needed(Register rd, Register rs, bool allow_invalid = false);
inline void fmr_if_needed(FloatRegister rd, FloatRegister rs);
// This is dedicated for emitting scheduled mach nodes. For better
// readability of the ad file I put it here.
// Endgroups are not needed if
// - the scheduler is off
// - the scheduler found that there is a natural group end, in that
// case it reduced the size of the instruction used in the test
// yielding 'needed'.
inline void endgroup_if_needed(bool needed);

// Memory barriers.
inline void membar(int bits);
Expand Down
13 changes: 4 additions & 9 deletions src/hotspot/cpu/ppc/macroAssembler_ppc.inline.hpp
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
/*
* Copyright (c) 2002, 2025, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2012, 2025 SAP SE. All rights reserved.
* Copyright (c) 2002, 2026, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2012, 2026 SAP SE. 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
Expand Down Expand Up @@ -72,11 +72,6 @@ inline void MacroAssembler::mr_if_needed(Register rd, Register rs, bool allow_no
inline void MacroAssembler::fmr_if_needed(FloatRegister rd, FloatRegister rs) {
if (rs != rd) fmr(rd, rs);
}
inline void MacroAssembler::endgroup_if_needed(bool needed) {
if (needed) {
endgroup();
}
}

inline void MacroAssembler::membar(int bits) {
// Comment: Usage of elemental_membar(bits) is not recommended for Power 8.
Expand Down Expand Up @@ -240,13 +235,13 @@ inline bool MacroAssembler::is_bc_far_variant3_at(address instruction_addr) {
// Variant 3, far cond branch to the next instruction, already patched to nops:
//
// nop
// endgroup
// nop
// SKIP/DEST:
//
const int instruction_1 = *(int*)(instruction_addr);
const int instruction_2 = *(int*)(instruction_addr + 4);
return is_nop(instruction_1) &&
is_endgroup(instruction_2);
is_nop(instruction_2);
}

// set dst to -1, 0, +1 as follows: if CR0bi is "greater than", dst is set to 1,
Expand Down
18 changes: 0 additions & 18 deletions src/hotspot/cpu/ppc/ppc.ad
Original file line number Diff line number Diff line change
Expand Up @@ -2457,10 +2457,6 @@ uint Matcher::float_pressure_limit()
return (FLOATPRESSURE == -1) ? 28 : FLOATPRESSURE;
}

bool Matcher::use_asm_for_ldiv_by_con(jlong divisor) {
return false;
}

// Register for DIVI projection of divmodI.
const RegMask& Matcher::divI_proj_mask() {
ShouldNotReachHere();
Expand Down Expand Up @@ -14362,20 +14358,6 @@ instruct tlsLoadP(threadRegP dst) %{

//---Some PPC specific nodes---------------------------------------------------

// Stop a group.
instruct endGroup() %{
ins_cost(0);

ins_is_nop(true);

format %{ "End Bundle (ori r1, r1, 0)" %}
size(4);
ins_encode %{
__ endgroup();
%}
ins_pipe(pipe_class_default);
%}

// Nop instructions

instruct fxNop() %{
Expand Down
4 changes: 0 additions & 4 deletions src/hotspot/cpu/riscv/riscv.ad
Original file line number Diff line number Diff line change
Expand Up @@ -2111,10 +2111,6 @@ uint Matcher::float_pressure_limit()
return (FLOATPRESSURE == -1) ? _FLOAT_REG_mask.size() : FLOATPRESSURE;
}

bool Matcher::use_asm_for_ldiv_by_con(jlong divisor) {
return false;
}

const RegMask& Matcher::divI_proj_mask() {
ShouldNotReachHere();
return RegMask::EMPTY;
Expand Down
2 changes: 1 addition & 1 deletion src/hotspot/cpu/riscv/vm_version_riscv.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ class VM_Version : public Abstract_VM_Version {

public:
RVFeatureValue(const char* pretty, int linux_bit_num, bool fstring) :
_pretty(pretty), _feature_string(fstring), _linux_feature_bit(nth_bit(linux_bit_num)) {
_pretty(pretty), _feature_string(fstring), _linux_feature_bit(nth_bit<uint64_t>(linux_bit_num)) {
}
virtual void enable_feature(int64_t value = 0) = 0;
virtual void disable_feature() = 0;
Expand Down
4 changes: 0 additions & 4 deletions src/hotspot/cpu/s390/s390.ad
Original file line number Diff line number Diff line change
Expand Up @@ -1929,10 +1929,6 @@ uint Matcher::float_pressure_limit()
return (FLOATPRESSURE == -1) ? 15 : FLOATPRESSURE;
}

bool Matcher::use_asm_for_ldiv_by_con(jlong divisor) {
return false;
}

// Register for DIVI projection of divmodI
const RegMask& Matcher::divI_proj_mask() {
return _Z_RARG4_INT_REG_mask;
Expand Down
3 changes: 0 additions & 3 deletions src/hotspot/cpu/x86/globals_x86.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -117,9 +117,6 @@ define_pd_global(intx, InitArrayShortSize, 8*BytesPerLong);
product(bool, UseIncDec, true, DIAGNOSTIC, \
"Use INC, DEC instructions on x86") \
\
product(bool, UseNewLongLShift, false, \
"Use optimized bitwise shift left") \
\
product(bool, UseAddressNop, false, \
"Use '0F 1F [addr]' NOP instructions on x86 cpus") \
\
Expand Down
17 changes: 0 additions & 17 deletions src/hotspot/cpu/x86/vm_version_x86.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1508,9 +1508,6 @@ void VM_Version::get_processor_features() {
MaxLoopPad = 11;
}
#endif // COMPILER2
if (FLAG_IS_DEFAULT(UseXMMForArrayCopy)) {
UseXMMForArrayCopy = true; // use SSE2 movq on new ZX cpus
}
if (supports_sse4_2()) { // new ZX cpus
if (FLAG_IS_DEFAULT(UseUnalignedLoadStores)) {
UseUnalignedLoadStores = true; // use movdqu on newest ZX cpus
Expand All @@ -1528,10 +1525,6 @@ void VM_Version::get_processor_features() {
// Use it on new AMD cpus starting from Opteron.
UseAddressNop = true;
}
if (supports_sse2() && FLAG_IS_DEFAULT(UseNewLongLShift)) {
// Use it on new AMD cpus starting from Opteron.
UseNewLongLShift = true;
}
if (FLAG_IS_DEFAULT(UseXmmLoadAndClearUpper)) {
if (supports_sse4a()) {
UseXmmLoadAndClearUpper = true; // use movsd only on '10h' Opteron
Expand Down Expand Up @@ -1571,10 +1564,6 @@ void VM_Version::get_processor_features() {
if (FLAG_IS_DEFAULT(AllocatePrefetchInstr)) {
FLAG_SET_DEFAULT(AllocatePrefetchInstr, 3);
}
// On family 15h processors use XMM and UnalignedLoadStores for Array Copy
if (supports_sse2() && FLAG_IS_DEFAULT(UseXMMForArrayCopy)) {
FLAG_SET_DEFAULT(UseXMMForArrayCopy, true);
}
if (supports_sse2() && FLAG_IS_DEFAULT(UseUnalignedLoadStores)) {
FLAG_SET_DEFAULT(UseUnalignedLoadStores, true);
}
Expand All @@ -1591,9 +1580,6 @@ void VM_Version::get_processor_features() {
if (cpu_family() >= 0x17) {
// On family >=17h processors use XMM and UnalignedLoadStores
// for Array Copy
if (supports_sse2() && FLAG_IS_DEFAULT(UseXMMForArrayCopy)) {
FLAG_SET_DEFAULT(UseXMMForArrayCopy, true);
}
if (supports_sse2() && FLAG_IS_DEFAULT(UseUnalignedLoadStores)) {
FLAG_SET_DEFAULT(UseUnalignedLoadStores, true);
}
Expand Down Expand Up @@ -1640,9 +1626,6 @@ void VM_Version::get_processor_features() {
}
#endif // COMPILER2

if (FLAG_IS_DEFAULT(UseXMMForArrayCopy)) {
UseXMMForArrayCopy = true; // use SSE2 movq on new Intel cpus
}
if ((supports_sse4_2() && supports_ht()) || supports_avx()) { // Newest Intel cpus
if (FLAG_IS_DEFAULT(UseUnalignedLoadStores)) {
UseUnalignedLoadStores = true; // use movdqu on newest Intel cpus
Expand Down
7 changes: 0 additions & 7 deletions src/hotspot/cpu/x86/x86.ad
Original file line number Diff line number Diff line change
Expand Up @@ -2763,13 +2763,6 @@ uint Matcher::float_pressure_limit()
return (FLOATPRESSURE == -1) ? default_float_pressure_threshold : FLOATPRESSURE;
}

bool Matcher::use_asm_for_ldiv_by_con( jlong divisor ) {
// In 64 bit mode a code which use multiply when
// devisor is constant is faster than hardware
// DIV instruction (it uses MulHiL).
return false;
}

// Register for DIVI projection of divmodI
const RegMask& Matcher::divI_proj_mask() {
return INT_RAX_REG_mask();
Expand Down
18 changes: 9 additions & 9 deletions src/hotspot/os/linux/hugepages.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -35,16 +35,16 @@
#include <dirent.h>

ExplicitHugePageSupport::ExplicitHugePageSupport() :
_initialized(false), _pagesizes(), _pre_allocated_pagesizes(), _default_hugepage_size(SIZE_MAX), _inconsistent(false) {}
_initialized{false}, _os_supported{}, _pre_allocated{}, _default_hugepage_size{SIZE_MAX}, _inconsistent{false} {}

os::PageSizes ExplicitHugePageSupport::pagesizes() const {
os::PageSizes ExplicitHugePageSupport::os_supported() const {
assert(_initialized, "Not initialized");
return _pagesizes;
return _os_supported;
}

os::PageSizes ExplicitHugePageSupport::pre_allocated_pagesizes() const {
os::PageSizes ExplicitHugePageSupport::pre_allocated() const {
assert(_initialized, "Not initialized");
return _pre_allocated_pagesizes;
return _pre_allocated;
}

size_t ExplicitHugePageSupport::default_hugepage_size() const {
Expand Down Expand Up @@ -151,7 +151,7 @@ static os::PageSizes filter_pre_allocated_hugepages(os::PageSizes pagesizes) {
void ExplicitHugePageSupport::print_on(outputStream* os) {
if (_initialized) {
os->print_cr("Explicit hugepage support:");
for (size_t s = _pagesizes.smallest(); s != 0; s = _pagesizes.next_larger(s)) {
for (size_t s = _os_supported.smallest(); s != 0; s = _os_supported.next_larger(s)) {
os->print_cr(" hugepage size: " EXACTFMT, EXACTFMTARGS(s));
}
os->print_cr(" default hugepage size: " EXACTFMT, EXACTFMTARGS(_default_hugepage_size));
Expand All @@ -166,13 +166,13 @@ void ExplicitHugePageSupport::print_on(outputStream* os) {
void ExplicitHugePageSupport::scan_os() {
_default_hugepage_size = scan_default_hugepagesize();
if (_default_hugepage_size > 0) {
_pagesizes = scan_hugepages();
_pre_allocated_pagesizes = filter_pre_allocated_hugepages(_pagesizes);
_os_supported = scan_hugepages();
_pre_allocated = filter_pre_allocated_hugepages(_os_supported);
// See https://www.kernel.org/doc/Documentation/vm/hugetlbpage.txt: /proc/meminfo should match
// /sys/kernel/mm/hugepages/hugepages-xxxx. However, we may run on a broken kernel (e.g. on WSL)
// that only exposes /proc/meminfo but not /sys/kernel/mm/hugepages. In that case, we are not
// sure about the state of hugepage support by the kernel, so we won't use explicit hugepages.
if (!_pagesizes.contains(_default_hugepage_size)) {
if (!_os_supported.contains(_default_hugepage_size)) {
log_info(pagesize)("Unexpected configuration: default pagesize (%zu) "
"has no associated directory in /sys/kernel/mm/hugepages.", _default_hugepage_size);
_inconsistent = true;
Expand Down
Loading
Loading