Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
138 commits
Select commit Hold shift + click to select a range
6e911d8
8368205: [TESTBUG] VectorMaskCompareNotTest.java crashes when MaxVect…
TheRealMDoerr Oct 16, 2025
d6c122b
8369982: ProblemList jdk/jfr/jvm/TestWaste.java
egahlin Oct 16, 2025
ead35a7
8358942: HttpClient adds Content-Length: 0 for a GET request with a B…
djelinski Oct 16, 2025
5fc3904
8369491: Temporarily revert default TIMEOUT_FACTOR back to 4
stefank Oct 16, 2025
1653999
8369505: jhsdb jstack cannot handle continuation stub
YaSuenag Oct 16, 2025
f475eb8
8368950: RISC-V: fail to catch out of order declarations among depend…
Oct 16, 2025
5dfe115
8369912: [TESTBUG] testlibrary_tests/template_framework/examples/Test…
eme64 Oct 16, 2025
f2a9983
8369804: TestGenerators.java fails with IllegalArgumentException: bou…
eme64 Oct 16, 2025
303eb10
8369573: Add missing compile commands help documentation for the sign…
Oct 16, 2025
87092ef
8183336: Better cleanup for jdk/test/java/lang/module/customfs/Module…
ArnoZeller Oct 16, 2025
95380e1
8362637: Convert java.nio.ByteOrder to an enum
Oct 16, 2025
e56db37
8369232: testlibrary_tests/ir_framework/tests/TestScenariosCrossProdu…
chhagedorn Oct 16, 2025
7e03240
8369858: Remove darcy author tags from jdk tests
jddarcy Oct 16, 2025
873666d
8369451: Debug agent support for USE_ITERATE_THROUGH_HEAP is broken a…
plummercj Oct 16, 2025
d7b525a
8364673: Remove duplicate font mapping for itcavantgarde in psfontj2d…
prrace Oct 16, 2025
844118a
8369146: java/awt/PrintJob/GetGraphicsTest.java: Parse Exception: Inv…
prrace Oct 16, 2025
d447297
8367709: GenShen: Dirty cards for objects that get promoted by safepo…
Oct 16, 2025
9589a29
8355752: Bump minimum boot jdk to JDK 25
vidmik Oct 16, 2025
3248aaf
8356548: Use ClassFile API instead of ASM to transform classes in tests
liach Oct 16, 2025
1392a0b
8368740: Serial: Swap eden and survivor spaces position in young gene…
albertnetymk Oct 16, 2025
18fd047
8369506: Bytecode rewriting causes Java heap corruption on AArch64
jcking Oct 16, 2025
0c1c86e
8370036: TestJhsdbJstackWithVirtualThread.java fails when run with -s…
pchilano Oct 16, 2025
0bdd6f0
8369734: JvmtiExport::post_class_file_load_hook return value is never…
fandreuz Oct 16, 2025
4d20f76
8370050: Shenandoah: Obsolete ShenandoahPacing option
Oct 17, 2025
bd73156
8369856: AOT map does not include unregistered classes
iklam Oct 17, 2025
55787fe
8342401: [TESTBUG] javax/swing/JSpinner/8223788/JSpinnerButtonFocusTe…
prsadhuk Oct 17, 2025
31beb7d
8068310: [TEST_BUG] Test javax/swing/JColorChooser/Test4234761.java f…
prsadhuk Oct 17, 2025
46c23bb
8341381: Random lines appear in graphic causing by the fix of JDK-829…
Oct 17, 2025
a22438d
8369924: Remove test/jdk/javax/management/remote/mandatory/loading/Mi…
kevinjwalls Oct 17, 2025
9b9559a
8369979: Flag UsePopCountInstruction was accidentally disabled on PPC64
dbriemann Oct 17, 2025
e62a7fa
8342659: Test vmTestbase/nsk/jdi/ObjectReference/referringObjects/ref…
albertnetymk Oct 17, 2025
0a97bef
8369814: G1: Relax card mark and store ordering
albertnetymk Oct 17, 2025
e8e2aad
8369685: RISC-V: refactor code related to RVFeatureValue::enabled
Oct 17, 2025
b159ca0
8369980: Use ThreadsClaimTokenScope in ShenandoahThreadRoots
fandreuz Oct 17, 2025
cc6f8f1
8369997: Tests that use custom scheduler should use jdk.test.lib.thre…
Oct 17, 2025
28bf917
8348844: Remove remaining JVMTI tests from ProblemList-Virtual, use r…
lmesnik Oct 17, 2025
1e5e17a
8369590: LocaleEnhanceTest has incorrectly passing test case
Oct 17, 2025
f84be36
8241066: Shenandoah: fix or cleanup SH::do_full_collection
Oct 17, 2025
a3e41ea
8368681: Shenandoah: Add documentation comments for ShenandoahAllocat…
kdnilsen Oct 17, 2025
0103f21
8365077: java.awt.font.NumericShaper violates equals/hashCode contract
prrace Oct 17, 2025
0cb8ccd
8369642: [ubsan] nmethod::nmethod null pointer passed as argument 2 t…
chadrako Oct 17, 2025
6cd7f30
8369742: Link AOT-linked classes at JVM bootstrap
iklam Oct 17, 2025
0cc88e4
8370028: Remove author tags from mathematical classes
jddarcy Oct 17, 2025
49b17dd
8356575: Test order in which jpackage fills app image
Oct 17, 2025
926f61f
8369447: GenShen: Regulator thread may observe inconsistent states
Oct 17, 2025
1816570
8321687: Test vmTestbase/nsk/jvmti/scenarios/contention/TC03/tc03t002…
lmesnik Oct 18, 2025
4625199
8369947: Bytecode rewriting causes Java heap corruption on RISC-V
feilongjiang Oct 18, 2025
b0af41d
8370134: Fix minor jpackage issues
Oct 18, 2025
eff6439
8370120: Make jpackage tests output more stable
Oct 18, 2025
c2fde51
8357390: java/awt/Toolkit/ScreenInsetsTest/ScreenInsetsTest.java Test…
anass-baya Oct 19, 2025
680414d
8369631: Assess and remedy any unsafe usage of the sr_semaphore Semap…
Oct 20, 2025
7e068cc
8343340: Swapping checking do not work for MetricsMemoryTester failcount
Oct 20, 2025
2148dbb
8370213: Add sun/misc/SunMiscSignalTest.java to ProblemList
Oct 20, 2025
39211e7
8369569: Rename methods in regmask.hpp to conform with HotSpot coding…
Oct 20, 2025
5609ee1
8370049: [s390x] G1 barrier compareAndExchange does not return old va…
Oct 20, 2025
f158451
8361366: Allow sorting of member details in lexicographical order
nizarbenalla Oct 20, 2025
8c775e2
8370074: Remove unused code in AbstractDebuggeeTest.java
albertnetymk Oct 20, 2025
ee35320
8370071: Clarify jcmd Thread.print help message
coffeys Oct 20, 2025
7392360
8369811: ZGC: Robust NUMA configuration detection
jsikstro Oct 20, 2025
c867971
8369527: NMT: print malloc-site when a malloc'd memory detected as co…
Oct 20, 2025
dc6858f
8370230: Bad copyright in NMTPrintMallocSiteOfCorruptedMemory.java af…
Oct 20, 2025
257bb2b
8370079: Re-enable vmTestbase/gc/vector/CircularListLow and LinearLis…
albertnetymk Oct 20, 2025
a1be297
8369854: (ch) Refine specification of behavior of {Gathering,Writable…
Oct 20, 2025
a1302e5
8365625: Can't change accelerator colors in Windows L&F
aivanov-jdk Oct 20, 2025
8145cfa
8352637: Enhance bytecode verification
Apr 17, 2025
d9dad57
8356294: Enhance Path Factories
JoeWang-Java Jun 26, 2025
c448505
8359454: Enhance String handling
rgiulietti Jul 3, 2025
e1d1fa9
8360937: Enhance certificate handling
seanjmullan Jul 9, 2025
c781a2f
8370136: Support async execution of jpackage tests
Oct 21, 2025
0522cf2
8370123: Minor jpackage refactoring
Oct 21, 2025
2de8d58
8366333: AArch64: Enhance SVE subword type implementation of vector c…
erifan Oct 21, 2025
eee2908
8370257: Remove ProblemListed tests from ProblemList.txt
Oct 21, 2025
207fe55
8369902: C2 SuperWord: wrong result because filterin NaN instead of z…
eme64 Oct 21, 2025
634746a
8369898: C2 SuperWord: assert(has_ctrl(i)) failed: should be control,…
eme64 Oct 21, 2025
2aa0efd
8370126: Improve jpackage signing testing
Oct 21, 2025
b6b0f05
8370262: Add jdk/javadoc/doccheck/checks/jdkCheckLinks.java to the Pr…
Oct 21, 2025
430041d
8367499: Refactor exhaustiveness computation from Flow into a separat…
lahodaj Oct 21, 2025
ec13c28
8366829: Add java.time.Duration constants MIN and MAX
pavelrappo Oct 21, 2025
2be273f
8346005: Parallel: Incorrect page size calculation with UseLargePages
albertnetymk Oct 21, 2025
a0c4124
8370078: Remove unnecessary argument in ContiguousSpace::initialize
albertnetymk Oct 21, 2025
ea7186a
8020207: jconsole fails connecting over SSL using service:jmx:rmi://.…
GennadiyKrivoshein Oct 21, 2025
d4c0239
8370240: [PPC64] jhsdb jstack cannot handle continuation stub
dbriemann Oct 21, 2025
517d543
8370234: Remove CardTableBarrierSet::write_region
albertnetymk Oct 21, 2025
2af4d20
8370031: Make RegMask copy constructor explicit and replace RegMask o…
Oct 21, 2025
0529a58
8370326: Parallel: Remove unused ParCompactionManager::push
albertnetymk Oct 21, 2025
b77b910
8369349: Add missing CPE headers
Oct 21, 2025
9a88d7f
8369211: AArch64: Devirtualize class RelocActions
Oct 21, 2025
d55e1b4
8370222: Wrong output for a command in jlink man page
ammbra Oct 21, 2025
b68fa43
Merge
Oct 21, 2025
43e036b
8366424: Missing type profiling in generated Record Object methods
liach Oct 21, 2025
aab3fc5
8370207: Test sun/misc/SunMiscSignalTest.java crashes after JDK-8369631
Oct 21, 2025
cac2519
8356578: Test --mac-entitlements
Oct 21, 2025
ed153ee
8369032: Add test to ensure serialized ICC_Profile stores only necess…
mrserb Oct 21, 2025
94c0611
8370122: jpackage test lib improvements
Oct 22, 2025
70e7861
8370248: AOTMapLogger should check if pointer is in AOTMetaspace
iklam Oct 22, 2025
eff4b11
8369322: Implement native stack printing for Windows-AArch64
swesonga Oct 22, 2025
8d9b2fa
8365072: Refactor tests to use PEM API (Phase 2)
myankelev Oct 22, 2025
27c83c7
8370225: RISC-V: cleanup verify_xxx in interp_masm_riscv.hpp
Oct 22, 2025
6bf3581
8369946: Bytecode rewriting causes Java heap corruption on PPC
TheRealMDoerr Oct 22, 2025
bdfd5e8
8367690: C2: Unneeded branch in reduce_phi
Oct 22, 2025
b8d3c90
8370229: Remove unused method declarations after JDK-8322630
fandreuz Oct 22, 2025
6010457
8370378: Some compiler tests inadvertently exclude particular platforms
TobiHartmann Oct 22, 2025
763d425
8368781: PerfMemory - make issues more transparent
MBaesken Oct 22, 2025
cbbb0a8
8367976: Validate and clamp jdk.httpclient.bufsize
vy Oct 22, 2025
65b3239
8370242: JFR: Clear event reference eagerly when using EventStream
egahlin Oct 22, 2025
92e380c
8361451: Test vmTestbase/metaspace/stressHierarchy/stressHierarchy012…
coleenp Oct 22, 2025
afba636
8369991: Thread blocking during JFR emergency dump must be in safepoi…
Oct 22, 2025
a925461
8370442: Compilation error in jpackage EntitlementsTest test
Oct 22, 2025
d8ebe38
8370377: Avoid resolving constant pool entries during preimage genera…
Oct 22, 2025
4377e7c
8367008: Algorithm identifiers for HmacSHA* should always have NULL a…
koushikthirupattur Oct 22, 2025
45e145f
8359057: AbstractInterpreter::is_not_reached returns incorrectly with…
Oct 22, 2025
2a8cbd9
8359472: JVM crashes when attaching a dynamic agent before JVMTI_PHAS…
fandreuz Oct 22, 2025
0744db8
8367002: Missing compiled exception handler for "recursive" exception
dean-long Oct 22, 2025
be18e7e
8064922: [macos] Test javax/swing/JTabbedPane/4624207/bug4624207.java…
Oct 22, 2025
3e20a93
8370156: Fix jpackage IconTest
Oct 22, 2025
8cf3b7a
Merge jdk
Oct 27, 2025
c3b382e
8314996: [lworld] java/lang/Thread/virtual/stress/PingPong.java fails…
coleenp Oct 27, 2025
ba1a305
8370509: [lworld] EnableValhalla is not needed for sync
coleenp Oct 27, 2025
8bd522b
Problem list compiler/valhalla/inlinetypes/TestNullableArrays.java
Arraying Oct 28, 2025
ef11682
8370687: Improve before constructor has been called error message
liach Oct 28, 2025
cf32b27
8369530: [lworld] Improve execution time of compiler tests
dafedafe Oct 29, 2025
8ad1f11
8367711: [lworld] JDI test updates
Oct 29, 2025
a60678c
8370217: [lworld] Crash in add_migrated_value_classes after merging J…
Oct 29, 2025
90c4979
Java ImageReader changes for preview mode
david-beaumont Sep 22, 2025
2cad494
Clarifying flag docs for /packages/xxx case
david-beaumont Sep 23, 2025
2a26c69
Add workaround until new image writing code is in
david-beaumont Sep 23, 2025
644d2e2
[[AUTOMATIC FORMATTING]]
david-beaumont Sep 23, 2025
0242d5a
Word smithing flags definitions.
david-beaumont Sep 23, 2025
b6031ec
Fixing unit tests to use new constructor.
david-beaumont Oct 8, 2025
dc319e3
Renaming slightly confusing "testEncoder" method.
david-beaumont Oct 8, 2025
b1b534c
Feedback changes, and fixing some comments.
david-beaumont Oct 8, 2025
0ce3451
Changing existing package flags during writing to match altered flag …
david-beaumont Oct 8, 2025
8f945ed
[[AUTOMATIC FORMATTING]]
david-beaumont Oct 8, 2025
94f93a2
Removing package root flag based on feedback.
david-beaumont Oct 9, 2025
9ef350a
feedback changes
david-beaumont Oct 24, 2025
05b4dd5
Reapplying feedback changes.
david-beaumont Oct 29, 2025
b211c23
remove preview only entries when completing directories
david-beaumont Oct 30, 2025
6ee44b1
Re-pushing PR after github mess.
david-beaumont Oct 31, 2025
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
  •  
  •  
  •  
20 changes: 10 additions & 10 deletions make/conf/github-actions.conf
Original file line number Diff line number Diff line change
Expand Up @@ -29,21 +29,21 @@ GTEST_VERSION=1.14.0
JTREG_VERSION=8.1+1

LINUX_X64_BOOT_JDK_EXT=tar.gz
LINUX_X64_BOOT_JDK_URL=https://download.java.net/java/GA/jdk24/1f9ff9062db4449d8ca828c504ffae90/36/GPL/openjdk-24_linux-x64_bin.tar.gz
LINUX_X64_BOOT_JDK_SHA256=88b090fa80c6c1d084ec9a755233967458788e2c0777ae2e172230c5c692d7ef
LINUX_X64_BOOT_JDK_URL=https://download.java.net/java/GA/jdk25/bd75d5f9689641da8e1daabeccb5528b/36/GPL/openjdk-25_linux-x64_bin.tar.gz
LINUX_X64_BOOT_JDK_SHA256=59cdcaf255add4721de38eb411d4ecfe779356b61fb671aee63c7dec78054c2b

ALPINE_LINUX_X64_BOOT_JDK_EXT=tar.gz
ALPINE_LINUX_X64_BOOT_JDK_URL=https://github.com/adoptium/temurin24-binaries/releases/download/jdk-24%2B36/OpenJDK24U-jdk_x64_alpine-linux_hotspot_24_36.tar.gz
ALPINE_LINUX_X64_BOOT_JDK_SHA256=a642608f0da78344ee6812fb1490b8bc1d7ad5a18064c70994d6f330568c51cb
ALPINE_LINUX_X64_BOOT_JDK_URL=https://github.com/adoptium/temurin25-binaries/releases/download/jdk-25%2B36/OpenJDK25U-jdk_x64_alpine-linux_hotspot_25_36.tar.gz
ALPINE_LINUX_X64_BOOT_JDK_SHA256=637e47474d411ed86134f413af7d5fef4180ddb0bf556347b7e74a88cf8904c8

MACOS_AARCH64_BOOT_JDK_EXT=tar.gz
MACOS_AARCH64_BOOT_JDK_URL=https://download.java.net/java/GA/jdk24/1f9ff9062db4449d8ca828c504ffae90/36/GPL/openjdk-24_macos-aarch64_bin.tar.gz
MACOS_AARCH64_BOOT_JDK_SHA256=f7133238a12714a62c5ad2bd4da6741130be1a82512065da9ca23dee26b2d3d3
MACOS_AARCH64_BOOT_JDK_URL=https://download.java.net/java/GA/jdk25/bd75d5f9689641da8e1daabeccb5528b/36/GPL/openjdk-25_macos-aarch64_bin.tar.gz
MACOS_AARCH64_BOOT_JDK_SHA256=2006337bf326fdfdf6117081751ba38c1c8706d63419ecac7ff102ff7c776876

MACOS_X64_BOOT_JDK_EXT=tar.gz
MACOS_X64_BOOT_JDK_URL=https://download.java.net/java/GA/jdk24/1f9ff9062db4449d8ca828c504ffae90/36/GPL/openjdk-24_macos-x64_bin.tar.gz
MACOS_X64_BOOT_JDK_SHA256=6bbfb1d01741cbe55ab90299cb91464b695de9a3ace85c15131aa2f50292f321
MACOS_X64_BOOT_JDK_URL=https://download.java.net/java/GA/jdk25/bd75d5f9689641da8e1daabeccb5528b/36/GPL/openjdk-25_macos-x64_bin.tar.gz
MACOS_X64_BOOT_JDK_SHA256=47482ad9888991ecac9b2bcc131e2b53ff78aff275104cef85f66252308e8a09

WINDOWS_X64_BOOT_JDK_EXT=zip
WINDOWS_X64_BOOT_JDK_URL=https://download.java.net/java/GA/jdk24/1f9ff9062db4449d8ca828c504ffae90/36/GPL/openjdk-24_windows-x64_bin.zip
WINDOWS_X64_BOOT_JDK_SHA256=11d1d9f6ac272d5361c8a0bef01894364081c7fb1a6914c2ad2fc312ae83d63b
WINDOWS_X64_BOOT_JDK_URL=https://download.java.net/java/GA/jdk25/bd75d5f9689641da8e1daabeccb5528b/36/GPL/openjdk-25_windows-x64_bin.zip
WINDOWS_X64_BOOT_JDK_SHA256=85bcc178461e2cb3c549ab9ca9dfa73afd54c09a175d6510d0884071867137d3
4 changes: 2 additions & 2 deletions make/conf/jib-profiles.js
Original file line number Diff line number Diff line change
Expand Up @@ -387,8 +387,8 @@ var getJibProfilesCommon = function (input, data) {
};
};

common.boot_jdk_version = "24";
common.boot_jdk_build_number = "36";
common.boot_jdk_version = "25";
common.boot_jdk_build_number = "37";
common.boot_jdk_home = input.get("boot_jdk", "install_path") + "/jdk-"
+ common.boot_jdk_version
+ (input.build_os == "macosx" ? ".jdk/Contents/Home" : "");
Expand Down
2 changes: 1 addition & 1 deletion make/conf/version-numbers.conf
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,6 @@ DEFAULT_VERSION_DATE=2026-03-17
DEFAULT_VERSION_CLASSFILE_MAJOR=70 # "`$EXPR $DEFAULT_VERSION_FEATURE + 44`"
DEFAULT_VERSION_CLASSFILE_MINOR=0
DEFAULT_VERSION_DOCS_API_SINCE=11
DEFAULT_ACCEPTABLE_BOOT_VERSIONS="24 25 26"
DEFAULT_ACCEPTABLE_BOOT_VERSIONS="25 26"
DEFAULT_JDK_SOURCE_TARGET_VERSION=26
DEFAULT_PROMOTED_VERSION_PRE=jep401ea2
60 changes: 30 additions & 30 deletions src/hotspot/cpu/aarch64/aarch64.ad
Original file line number Diff line number Diff line change
Expand Up @@ -1266,39 +1266,39 @@ source %{
// adlc register classes to make AArch64 rheapbase (r27) and rfp (r29)
// registers conditionally reserved.

_ANY_REG32_mask = _ALL_REG32_mask;
_ANY_REG32_mask.Remove(OptoReg::as_OptoReg(r31_sp->as_VMReg()));
_ANY_REG32_mask.assignFrom(_ALL_REG32_mask);
_ANY_REG32_mask.remove(OptoReg::as_OptoReg(r31_sp->as_VMReg()));

_ANY_REG_mask = _ALL_REG_mask;
_ANY_REG_mask.assignFrom(_ALL_REG_mask);

_PTR_REG_mask = _ALL_REG_mask;
_PTR_REG_mask.assignFrom(_ALL_REG_mask);

_NO_SPECIAL_REG32_mask = _ALL_REG32_mask;
_NO_SPECIAL_REG32_mask.SUBTRACT(_NON_ALLOCATABLE_REG32_mask);
_NO_SPECIAL_REG32_mask.assignFrom(_ALL_REG32_mask);
_NO_SPECIAL_REG32_mask.subtract(_NON_ALLOCATABLE_REG32_mask);

_NO_SPECIAL_REG_mask = _ALL_REG_mask;
_NO_SPECIAL_REG_mask.SUBTRACT(_NON_ALLOCATABLE_REG_mask);
_NO_SPECIAL_REG_mask.assignFrom(_ALL_REG_mask);
_NO_SPECIAL_REG_mask.subtract(_NON_ALLOCATABLE_REG_mask);

_NO_SPECIAL_PTR_REG_mask = _ALL_REG_mask;
_NO_SPECIAL_PTR_REG_mask.SUBTRACT(_NON_ALLOCATABLE_REG_mask);
_NO_SPECIAL_PTR_REG_mask.assignFrom(_ALL_REG_mask);
_NO_SPECIAL_PTR_REG_mask.subtract(_NON_ALLOCATABLE_REG_mask);

// r27 is not allocatable when compressed oops is on and heapbase is not
// zero, compressed klass pointers doesn't use r27 after JDK-8234794
if (UseCompressedOops && (CompressedOops::base() != nullptr)) {
_NO_SPECIAL_REG32_mask.Remove(OptoReg::as_OptoReg(r27->as_VMReg()));
_NO_SPECIAL_REG_mask.Remove(OptoReg::as_OptoReg(r27->as_VMReg()));
_NO_SPECIAL_PTR_REG_mask.Remove(OptoReg::as_OptoReg(r27->as_VMReg()));
_NO_SPECIAL_REG32_mask.remove(OptoReg::as_OptoReg(r27->as_VMReg()));
_NO_SPECIAL_REG_mask.remove(OptoReg::as_OptoReg(r27->as_VMReg()));
_NO_SPECIAL_PTR_REG_mask.remove(OptoReg::as_OptoReg(r27->as_VMReg()));
}

// r29 is not allocatable when PreserveFramePointer is on
if (PreserveFramePointer) {
_NO_SPECIAL_REG32_mask.Remove(OptoReg::as_OptoReg(r29->as_VMReg()));
_NO_SPECIAL_REG_mask.Remove(OptoReg::as_OptoReg(r29->as_VMReg()));
_NO_SPECIAL_PTR_REG_mask.Remove(OptoReg::as_OptoReg(r29->as_VMReg()));
_NO_SPECIAL_REG32_mask.remove(OptoReg::as_OptoReg(r29->as_VMReg()));
_NO_SPECIAL_REG_mask.remove(OptoReg::as_OptoReg(r29->as_VMReg()));
_NO_SPECIAL_PTR_REG_mask.remove(OptoReg::as_OptoReg(r29->as_VMReg()));
}

_NO_SPECIAL_NO_RFP_PTR_REG_mask = _NO_SPECIAL_PTR_REG_mask;
_NO_SPECIAL_NO_RFP_PTR_REG_mask.Remove(OptoReg::as_OptoReg(r29->as_VMReg()));
_NO_SPECIAL_NO_RFP_PTR_REG_mask.assignFrom(_NO_SPECIAL_PTR_REG_mask);
_NO_SPECIAL_NO_RFP_PTR_REG_mask.remove(OptoReg::as_OptoReg(r29->as_VMReg()));
}

// Optimizaton of volatile gets and puts
Expand Down Expand Up @@ -1737,7 +1737,7 @@ uint MachBreakpointNode::size(PhaseRegAlloc *ra_) const {
}

//=============================================================================
const RegMask& MachConstantBaseNode::_out_RegMask = RegMask::Empty;
const RegMask& MachConstantBaseNode::_out_RegMask = RegMask::EMPTY;

int ConstantTable::calculate_table_base_offset() const {
return 0; // absolute addressing, no offset
Expand Down Expand Up @@ -2511,10 +2511,10 @@ uint Matcher::int_pressure_limit()
// as a spilled LRG. Spilling heuristics(Spill-USE) explicitly skip
// derived pointers and lastly fail to spill after reaching maximum
// number of iterations. Lowering the default pressure threshold to
// (_NO_SPECIAL_REG32_mask.Size() minus 1) forces CallNode to become
// (_NO_SPECIAL_REG32_mask.size() minus 1) forces CallNode to become
// a high register pressure area of the code so that split_DEF can
// generate DefinitionSpillCopy for the derived pointer.
uint default_int_pressure_threshold = _NO_SPECIAL_REG32_mask.Size() - 1;
uint default_int_pressure_threshold = _NO_SPECIAL_REG32_mask.size() - 1;
if (!PreserveFramePointer) {
// When PreserveFramePointer is off, frame pointer is allocatable,
// but different from other SOC registers, it is excluded from
Expand All @@ -2529,34 +2529,34 @@ uint Matcher::int_pressure_limit()
uint Matcher::float_pressure_limit()
{
// _FLOAT_REG_mask is generated by adlc from the float_reg register class.
return (FLOATPRESSURE == -1) ? _FLOAT_REG_mask.Size() : FLOATPRESSURE;
return (FLOATPRESSURE == -1) ? _FLOAT_REG_mask.size() : FLOATPRESSURE;
}

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

RegMask Matcher::divI_proj_mask() {
const RegMask& Matcher::divI_proj_mask() {
ShouldNotReachHere();
return RegMask();
return RegMask::EMPTY;
}

// Register for MODI projection of divmodI.
RegMask Matcher::modI_proj_mask() {
const RegMask& Matcher::modI_proj_mask() {
ShouldNotReachHere();
return RegMask();
return RegMask::EMPTY;
}

// Register for DIVL projection of divmodL.
RegMask Matcher::divL_proj_mask() {
const RegMask& Matcher::divL_proj_mask() {
ShouldNotReachHere();
return RegMask();
return RegMask::EMPTY;
}

// Register for MODL projection of divmodL.
RegMask Matcher::modL_proj_mask() {
const RegMask& Matcher::modL_proj_mask() {
ShouldNotReachHere();
return RegMask();
return RegMask::EMPTY;
}

bool size_fits_all_mem_uses(AddPNode* addp, int shift) {
Expand Down
20 changes: 11 additions & 9 deletions src/hotspot/cpu/aarch64/aarch64_vector.ad
Original file line number Diff line number Diff line change
Expand Up @@ -7081,29 +7081,31 @@ instruct vcompress(vReg dst, vReg src, pRegGov pg) %{
%}

instruct vcompressB(vReg dst, vReg src, pReg pg, vReg tmp1, vReg tmp2,
vReg tmp3, vReg tmp4, pReg ptmp, pRegGov pgtmp) %{
vReg tmp3, pReg ptmp, pRegGov pgtmp) %{
predicate(UseSVE > 0 && Matcher::vector_element_basic_type(n) == T_BYTE);
effect(TEMP_DEF dst, TEMP tmp1, TEMP tmp2, TEMP tmp3, TEMP tmp4, TEMP ptmp, TEMP pgtmp);
effect(TEMP_DEF dst, TEMP tmp1, TEMP tmp2, TEMP tmp3, TEMP ptmp, TEMP pgtmp);
match(Set dst (CompressV src pg));
format %{ "vcompressB $dst, $src, $pg\t# KILL $tmp1, $tmp2, $tmp3, tmp4, $ptmp, $pgtmp" %}
format %{ "vcompressB $dst, $src, $pg\t# KILL $tmp1, $tmp2, $tmp3, $ptmp, $pgtmp" %}
ins_encode %{
uint length_in_bytes = Matcher::vector_length_in_bytes(this);
__ sve_compress_byte($dst$$FloatRegister, $src$$FloatRegister, $pg$$PRegister,
$tmp1$$FloatRegister,$tmp2$$FloatRegister,
$tmp3$$FloatRegister,$tmp4$$FloatRegister,
$ptmp$$PRegister, $pgtmp$$PRegister);
$tmp1$$FloatRegister, $tmp2$$FloatRegister, $tmp3$$FloatRegister,
$ptmp$$PRegister, $pgtmp$$PRegister, length_in_bytes);
%}
ins_pipe(pipe_slow);
%}

instruct vcompressS(vReg dst, vReg src, pReg pg,
vReg tmp1, vReg tmp2, pRegGov pgtmp) %{
instruct vcompressS(vReg dst, vReg src, pReg pg, vReg tmp1, vReg tmp2, pRegGov pgtmp) %{
predicate(UseSVE > 0 && Matcher::vector_element_basic_type(n) == T_SHORT);
effect(TEMP_DEF dst, TEMP tmp1, TEMP tmp2, TEMP pgtmp);
match(Set dst (CompressV src pg));
format %{ "vcompressS $dst, $src, $pg\t# KILL $tmp1, $tmp2, $pgtmp" %}
ins_encode %{
uint length_in_bytes = Matcher::vector_length_in_bytes(this);
__ sve_dup($tmp1$$FloatRegister, __ H, 0);
__ sve_compress_short($dst$$FloatRegister, $src$$FloatRegister, $pg$$PRegister,
$tmp1$$FloatRegister,$tmp2$$FloatRegister, $pgtmp$$PRegister);
$tmp1$$FloatRegister, $tmp2$$FloatRegister, $pgtmp$$PRegister,
length_in_bytes);
%}
ins_pipe(pipe_slow);
%}
Expand Down
20 changes: 11 additions & 9 deletions src/hotspot/cpu/aarch64/aarch64_vector_ad.m4
Original file line number Diff line number Diff line change
Expand Up @@ -5069,29 +5069,31 @@ instruct vcompress(vReg dst, vReg src, pRegGov pg) %{
%}

instruct vcompressB(vReg dst, vReg src, pReg pg, vReg tmp1, vReg tmp2,
vReg tmp3, vReg tmp4, pReg ptmp, pRegGov pgtmp) %{
vReg tmp3, pReg ptmp, pRegGov pgtmp) %{
predicate(UseSVE > 0 && Matcher::vector_element_basic_type(n) == T_BYTE);
effect(TEMP_DEF dst, TEMP tmp1, TEMP tmp2, TEMP tmp3, TEMP tmp4, TEMP ptmp, TEMP pgtmp);
effect(TEMP_DEF dst, TEMP tmp1, TEMP tmp2, TEMP tmp3, TEMP ptmp, TEMP pgtmp);
match(Set dst (CompressV src pg));
format %{ "vcompressB $dst, $src, $pg\t# KILL $tmp1, $tmp2, $tmp3, tmp4, $ptmp, $pgtmp" %}
format %{ "vcompressB $dst, $src, $pg\t# KILL $tmp1, $tmp2, $tmp3, $ptmp, $pgtmp" %}
ins_encode %{
uint length_in_bytes = Matcher::vector_length_in_bytes(this);
__ sve_compress_byte($dst$$FloatRegister, $src$$FloatRegister, $pg$$PRegister,
$tmp1$$FloatRegister,$tmp2$$FloatRegister,
$tmp3$$FloatRegister,$tmp4$$FloatRegister,
$ptmp$$PRegister, $pgtmp$$PRegister);
$tmp1$$FloatRegister, $tmp2$$FloatRegister, $tmp3$$FloatRegister,
$ptmp$$PRegister, $pgtmp$$PRegister, length_in_bytes);
%}
ins_pipe(pipe_slow);
%}

instruct vcompressS(vReg dst, vReg src, pReg pg,
vReg tmp1, vReg tmp2, pRegGov pgtmp) %{
instruct vcompressS(vReg dst, vReg src, pReg pg, vReg tmp1, vReg tmp2, pRegGov pgtmp) %{
predicate(UseSVE > 0 && Matcher::vector_element_basic_type(n) == T_SHORT);
effect(TEMP_DEF dst, TEMP tmp1, TEMP tmp2, TEMP pgtmp);
match(Set dst (CompressV src pg));
format %{ "vcompressS $dst, $src, $pg\t# KILL $tmp1, $tmp2, $pgtmp" %}
ins_encode %{
uint length_in_bytes = Matcher::vector_length_in_bytes(this);
__ sve_dup($tmp1$$FloatRegister, __ H, 0);
__ sve_compress_short($dst$$FloatRegister, $src$$FloatRegister, $pg$$PRegister,
$tmp1$$FloatRegister,$tmp2$$FloatRegister, $pgtmp$$PRegister);
$tmp1$$FloatRegister, $tmp2$$FloatRegister, $pgtmp$$PRegister,
length_in_bytes);
%}
ins_pipe(pipe_slow);
%}
Expand Down
1 change: 1 addition & 0 deletions src/hotspot/cpu/aarch64/assembler_aarch64.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -3486,6 +3486,7 @@ template<typename R, typename... Rx>
INSN(sve_smaxv, 0b00000100, 0b001000001); // signed maximum reduction to scalar
INSN(sve_smin, 0b00000100, 0b001010000); // signed minimum vectors
INSN(sve_sminv, 0b00000100, 0b001010001); // signed minimum reduction to scalar
INSN(sve_splice,0b00000101, 0b101100100); // splice two vectors under predicate control, destructive
INSN(sve_sub, 0b00000100, 0b000001000); // vector sub
INSN(sve_uaddv, 0b00000100, 0b000001001); // unsigned add reduction to scalar
INSN(sve_umax, 0b00000100, 0b001001000); // unsigned maximum vectors
Expand Down
Loading