Eclipse OpenJ9 v0.54.0
Eclipse release plan: https://projects.eclipse.org/projects/technology.openj9/releases/0.54.0
Release notes: https://eclipse.dev/openj9/docs/version0.54
Project release notes, known issues: https://github.com/eclipse-openj9/openj9/blob/master/doc/release-notes/0.54/0.54.md
Works with: 24.0.2
Release details:
Branch name: v0.54.0-release
Tag: openj9-0.54.0
Repo SHAs:
OpenJ9: c5589d1
OMR: eclipse-openj9/openj9-omr@3f1d7c8
Security Vulnerabilities Resolved
N/A
JITServer Helm Chart - Easier deployment of JITServer technology in a Kubernetes or OpenShift cluster
https://github.com/eclipse/openj9-utils/tree/master/helm-chart/openj9-jitserver-chart
For details about the release and release candidates, please see: https://github.com/eclipse/openj9/blob/master/doc/processes/release_process.md
For the list of OMR changes see https://github.com/eclipse/openj9-omr/releases/tag/openj9-0.54.0
OpenJ9 Changes from 0.53.0
017819f..c5589d1
c5589d1 (v0.54.0) Undefine conflicting macro in header file Jack Lu #22417
f1f9fee (v0.54.0) Add -XX:[+|-]UnblockerTimedWait option Jack Lu #22404
25c9689 (0.54) Adjust maxFrames in jvmtiInternalGetStackTrace for skipped frames Peter Shipton #22393
925f855 (0.54) Add J2I check in stackoverflow handling v2 tajila #22385
0164375 (0.54) Add notify to carrier thread wait path tajila #22355
9c3589a (0.54) Add J2I sync method enter continuation transition tajila #22356
d8d053f (0.54) Use r11 instead of r0 for non-local return Julian #22346
56ff711 (0.54) Use AArch64 IPC register for indirect branches in JIT runtime Daryl Maier #22342
f83d542 (0.54) Z: disable iTable check in jit Ehsan Kiani Far #22347
c38655d (0.54) Add spill registers in walkTransitionFrame() Ehsan Kiani Far #22333
f8df009 (0.54) Update J9SP register on interp exit tajila #22327
b81ab77 (0.54) Use new lock word to check for lock owner Hang Shao #22319
dc62d23 [0.54] Detect any monitorenter before point of dynamic loop transfers Henry Zongaro #22317
18edba7 (0.54) Modify objectMonitorExit to use OBJECT_HEADER_LOCK_FLC instead of 0x02 Hang Shao #22307
51f0d4b (0.54) Guard peeking behaviour for invokedynamic/handle with an env option Nazim Bhuiyan #22290
f6940e2 Insert iTableWalk in _interfaceSlotsUnavailable Abdulrahman Alattas #22171
36f7bf0 Prevent non-root accessible objects from poisoning the cache Chris Dennis #22247
f4c006a Set known object index for condy and method type table entry symrefs Devin Papineau #22235
b66536d Add missing VectorSupport intrinsics Gita Koblents #22174
780b0e6 Implement jdk25 VectorSupport_getCPUFeatures Peter Shipton #22251
0c18207 Use bigger buffers for getting CPU features so they aren't truncated Peter Shipton #22253
523e36c Pass correct value of isUnsafeGet from createUnsafeGetWithOffset() Devin Papineau #22249
4e833a5 RAM Class Persistence: restore the application class loader Lige Zhou #22241
24fce8e Do not disclaim on tmpfs/ramfs/nfs Marius #22246
4d70258 Include java_lang_Class_getClassFileVersion0 native for jdk20+ Peter Shipton #22248
1146953 Remove TR_X87_Mask guarded code Spencer Comin #22103
8de6c46 Add GC pause info for use in JFR Peter Shipton #22211
06bd7c7 Remove unused definition of J9OBJECT_FROM_JOBJECT Keith W. Campbell #22245
c96994b Fix trivial array indexing error in reflect caching debug code Chris Dennis #22243
995f04d Enable peeking ILGen for methods with invokedynamic/invokehandle Nazim Bhuiyan #22227
b867e08 Remove dead IL generator path for invokehandle method types Devin Papineau #22234
5d5ec61 Stop modifying r13 on LinuxPPC64 Graham Chapman #22210
6987049 Update RasapiTest dump file pattern LongyuZhang #22239
d4c09d4 Don't write tabs to java dumps Keith W. Campbell #22238
709d671 Call getDependentLibs in lockWordAlignment Lan Xia #22233
915e62c Refactor the Deserializer to use a helper struct Irwin D'Souza #22135
c456da8 Bump to newer jdk24 aix build for bootjdk Adam Brousseau #22229
79ff7a1 Add AOTCache datastructure diagram Irwin D'Souza #22170
d78a902 Generate inline superclass test for Class.isAssignableFrom on Z Matthew Hall #20855
705f1cd Z: implement lastITable cache Ehsan Kiani Far #21969
565e525 Set blockPermit for BLOCKING thread when lock is free Theresa Mammarella #22215
22de641 RAM Class Persistence: Remove redundant call to initializeSnapshotClassObject Lige Zhou #22214
25d54f3 Apply fixes in VectorAPIExpansion Gita Koblents #22221
3c301f8 Enable JFR SystemProcess test on z/OS Harshitha #22217
1c17e42 Fix Vector API boxing defects Gita Koblents #22175
9ecca4e AArch64: Revert #22192 partially KONNO Kazuhiro #22213
f8bcc26 Modify scavenger GC count Adrian Popescu #22180
fee0a52 Enable bigCallee size adjustment during ECS for JDK8 and 11 Nazim Bhuiyan #21978
ccedbe5 Update DDR compile options for OpenXL Keith W. Campbell #22207
52244ba Fix JNI return types Jason Feng #22199
2f546a6 AArch64: Add support for off-heap arrays in some intrinsics KONNO Kazuhiro #22192
aa9f103 AArch64: Inline StringLatin1.indexOf([BI[BII)I KONNO Kazuhiro #22188
672797d Support using newer versions of cmake Keith W. Campbell #22202
15f9fbf Handle decompile paths when mounting a vthread tajila #22191
1ed6b9d Fix a whitespace error in znathelp.m4 David Lynch #22119
b1bd9ac Fix spelling of "supress" KONNO Kazuhiro #21934
f731c87 Avoid core creation for intentional OOM by testSoftMxLocal Peter Shipton #22200
47a6dd1 jdk26: remove references to jdk.internal.ref.Cleaner Keith W. Campbell #22198
0bc5edf RAM Class Persistence: Introducing Frozen Classes Lige Zhou #22063
2a31e30 Enable JFR SystemProcess test on macOS Harshitha #22194
53e098e Update Java 24 bootjdk for AIX Keith W. Campbell #22196
5869929 Update the cmake minimum version to 3.5 Peter Shipton #22154
14761c7 Generate binary Mask opcodes Gita Koblents #22178
e9485c7 JDK26 migrates away from jdk.internal.ref.Cleaner Jason Feng #22193
ec3ef9e Enable JFR NativeLibrary event test for MacOS and Windows Aditi Srinivas #22183
e370a06 Fix crash under -Xaot: Irwin D'Souza #22166
3ddd099 Parse Large Code Cache Page Sizes Options Correctly Luke Li #22190
0e97c96 Fold calls to Invokers.checkVarHandleGenericType into its result Nazim Bhuiyan #21998
a966ec1 Enable JFR SystemProcess test on AIX Harshitha #22173
6053fe9 Temporarily exclude xlpCodeCacheTests on AIX Peter Shipton #22189
52d159d Correct arguments to virtual thread un/mount trace points Devin Papineau #22187
704dd4b Support MODE_BROADCAST for masks Gita Koblents #22064
b6335ae Add JFR ModuleExport event Gengchen Tuo #22140
47c1bc0 Z: Remove bitwise compress/expand recognition Spencer Comin #21613
f5aaff4 Update the FindValidPageSize Tests for Power Luke Li #22176
0c97886 x86: Inline StringLatin1.indexOf([BI[BII)I KONNO Kazuhiro #22126
8cda338 Revert "Remove unused DDR tool and test" Peter Shipton #22185
501cc26 Remove unused DDR tool and test Keith W. Campbell #22179
4e87513 Update to OpenSSL 3.5.1 Keith W. Campbell #22172
e0d3af6 Update to the latest NLS translations Peter Shipton #22177
0476489 Inline checkcast of references to elements of j/l/O arrays on x86 Daryl Maier #21253
40e4ddb Build a graph of class loaders based on lifetime relationships Devin Papineau #22100
2c544ac Z: Restore Non Volatile GPRs in jitExitInterpreter0RestoreAll Rahil Shah #22128
536067d Remove MemberName Object Ref from Stack in OpenJDK MethodHandle linkTo* INL Methods Matthew Hall #22112
f5ad9f2 Use a "defaultMonitorSpinCount1" value of 1 when running on a single CPU Marius #22142
f4ae3c7 Revert "Support using newer versions of cmake" Peter Shipton #22169
86a2139 Support using newer versions of cmake Keith W. Campbell #22161
5f5516d Handle Block Split in vectorizedMismatch Transformer Luke Li #22073
3b0ae38 Set the notify bool before calling notify() tajila #22162
997149c Restrict virtual unblocker thread signal definitions to Java 24+ Devin Papineau #22160
71f8dca Update references to -Xdump NLS tags Keith W. Campbell #22159
c3c851f Add pending notify to compensate for missed notify Tobi Ajila #22144
b9c60ce Fix 'bad integer narrowing constraint' assertion fails occurring with OpenJDK MethodHandle implementation on X86_32 Matthew Hall #22124
786e2d5 Include time and duration in dump completion messages Keith W. Campbell #22148
3c250eb Add missing header include required by __atoe Gaurav Chaudhari #22149
892ee80 Add documentation about docker AOT issue on Linux on IBM Z® Rahil Shah #22088
7bd6410 Update NLS translation Peter Shipton #22146
465b057 Use Atomics to update platformThreadWaitCount Jack Lu #22137
ddf7709 Remove transitional flag J9VM_OPT_FRAGMENT_RAM_CLASSES Dmitri Pivkine #22141
2ad6b24 Avoid internal compiler error on AIX Keith W. Campbell #22134
5f6a02d Copy over current_exclude_8 into openj9 Anna Babu Palathingal #22139
9b0afe9 Set BLOCKED state with CAS to prevent race conditions Theresa Mammarella #22122
0c4993f Convert system mbeans to DynamicMBean type Theresa Mammarella #21954
b0b2559 Ensure method symbol is a resolved method before requesting it Irwin D'Souza #22127
afbdb8a Fix -XX:[+|-]CacheMaps processing Graham Chapman #22133
889a5e4 Correct spelling of "outside" Keith W. Campbell #22132
2d955b7 Avoid touching the SCC as much as possible during stack walk Graham Chapman #21972
a812a2a Use the full (canonical) MXBean object name in GC notifications Keith W. Campbell #22125
dc6cded P: Insert nop at the end of compilation body if last instr has GCMap Abdulrahman Alattas #22123
0dcff38 Refactor wasDeserialized flag Irwin D'Souza #22101
f91146b Improve IllegalAccessError with specific exception messages Jason Feng #22118
bf661c2 JITServer shared fanin cache Marius Pirvu #22099
8a50acd Revert "Improve IllegalAccessError with specific exception messages" Keith W. Campbell #22117
ecc3f63 Set vthread BLOCKED state that could be missed in notifyVirtualThread Theresa Mammarella #22095
fefa54a Add missing method names in Test_JITHelpers.java KONNO Kazuhiro #22076
07dd54a Remove Hard-Coded Restrictions to CodeCache Page Sizes on P Luke Li #22086
f264582 Use the correct return state for synchronized method Hang Shao #22094
1bec753 Delete unused methods related to class ramStatics addresses Devin Papineau #22102
4002a6f Improve IllegalAccessError with specific exception messages Jason Feng #22075
ab4834f Correct source type in vector compare opcode Gita Koblents #22108
87d0bd8 Accelerate StringCoding.hasNegatives for JDK 11, 17, StringCoding.countPositives for JDK 21+ on x86 Dylan Tuttle #21121
e6f7928 Move SharedClassAPI test native code into openj9 Anna Babu Palathingal #21636
d5a2273 Add a test for JFR ModuleRequire event Gengchen Tuo #22097
d0829ec Remove a redundant semicolon Gengchen Tuo #22106
cf3179c Improve build failure patterns Keith W. Campbell #22092
cf92035 Add JFR ModuleRequire Event Gengchen Tuo #22087
f255919 Eliminate VM_compiledAsDLTBefore message for JITServer Marius Pirvu #22071
e7e733f Fix VmArgumentTests Keith W. Campbell #22091
a6abd7e Identify MutableCallSite for guards based on known object index Devin Papineau #22009
c6a5459 Ignore -Xjcl options Keith W. Campbell #22066
762d4ac Remove unnecessary bootjdk urls from defaults.yml Peter Shipton #22084
84ca3ed Infrastructure to segregate code caches Irwin D'Souza #22045
7103757 Pass VENDOR_CODE parameters to build jobs Peter Shipton #22049
df2f4b5 Refactor to support jdk8 JCL compilation with and without OpenJDK Peter Shipton #21967
abffac3 JDK26 JavaLangAccess adds decodeASCII(), removes uncheckedDecodeASCII() Jason Feng #22072
877cec2 Rename JFR BuildResult to JfrBuildResult Keith W. Campbell #22065
d6f33d7 Add build support for jdk25 and 26 Peter Shipton #22067
0cf42bd Fix crash with -Xjit:disableKnownObjectTable Marius #22062
e5dbdc3 Box and unbox all types in VectorAPIExpansion: restore and fix compile error Gita Koblents #22058
89ce909 Support MODE_BITS_COERCED_LONG_TO_MASK Vector API opcode Gita Koblents #22011
e8abf20 Remove setCallCount()/getCallCount() Marius #22048
dcb100f Remove FPBinaryArithmeticAnalyser from Makefile Spencer Comin #22033
06451de Fix prepareForUnmount logic on blocking flatlocks Jack Lu #22041
7aa9aa4 x86: Reduce AVX-SSE mixing penalties Bradley Wood #21963
a1a59c3 Defer generating dereference of vft-symbol in JProfilingValue Henry Zongaro #22028
2723d36 Prevent request too large virtual memory for heap for ZOS31 Dmitri Pivkine #22046
f2e93f6 Revert "Box and unbox all types in VectorAPIExpansion" Peter Shipton #22051
d01df7a Do not re-detach a monitor that is already detached Hang Shao #22020
42b37ca Box and unbox all types in VectorAPIExpansion Gita Koblents #22003
4c38ff3 Suppress getDeclaringClassFromFieldOrStatic() in JITServer non-SVM AOT Devin Papineau #21992
126d915 Separate side-effects from tracepoint use Keith W. Campbell #22036
8ea0210 Use the actual declaring class for static final field folding Devin Papineau #21994
8da8ef9 Add Guards to the OffHeap-exclusive Code for vectorizedMismatch Transformer Luke Li #22037
856e27b Fix type mismatch on 32-bit Adrian Popescu #22030
6b8a51b Add NULL check for moduleObject in GC Dmitri Pivkine #21960
4abdfcc JDK25 adds JVM_CreateThreadSnapshot, removes isCarrierThreadLocalPresent Jason Feng #22025
b295153 Match operation with the type Aleksandar Micic #22027
32d2c09 Delete unused JITServer message KnownObjectTable_getReferenceField Devin Papineau #22007
ee99618 Read Barrier bytes stats Aleksandar Micic #21975
aae0599 Support Accelerating ArraysSupport.vectorizedMismatch for OffHeap Luke Li #21097
029811a Add API for GC ID to use in JFR events Adrian Popescu #21987
46fa77d Fix add module read JNI return type tajila #22016
c350fa9 Add trace points for important vitrual thread events Hang Shao #22017
889e972 Enable JFR NativeLibrary event test for AIX Aditi Srinivas #22005
5c59998 Add Setup stage between Queue and Get Source Adam Brousseau #22018
3413d76 Fix continuation return from Object::wait tajila #21982
4dbf6fa Fix jvmtiGetOwnedMonitorInfo for yielded vthread Jack Lu #21933
647966b Add NIAI instruction during monent/monexit in z/codegen Dhruv Chopra #18036
0389870 setWarmCallGraphTooBig() creates IProfiler entry if needed Marius #22006
a702e12 Remove TR::Options::INLINE_failedToDevirtualize usage Marius #22008
e572b22 Clean up comp->cg() KONNO Kazuhiro #21622
735bf81 Replace isdigit with OMR_ISDIGIT Gaurav Chaudhari #21555
7848c44 Return branch counters info only for branches Marius #21980
35ecdd7 Remove obsolete gcc11 build specs Peter Shipton #21993
55540f2 Revert "Make the extension and application loaders available via TR_J9VMBase" Devin Papineau #21991
4771699 Pop extra args on BootstrapMethodError for invokedynamic Matthew Hall #21961
24d6a5e Skip strip step for libjvmtitest.so when building on AIX with OpenXL midronij #21689
6404875 Correct Mask boxing in VectorAPIExpansion Gita Koblents #21848
7468433 Prevent double-free of pointer Lige Zhou #21839
a47ab7f Add _AE_BIMODAL to support OMR_ISDIGIT macro Gaurav Chaudhari #21937
1867566 Recognize SingleByte$Decoder.decodeToLatin1 in the JIT Dhruv Chopra #21927
e87ae0f Ignore new automatically created eclipse metadata files Keith W. Campbell #21976
9a6df9f Refactor objectMonitorExit code format Jack Lu #21941
d8aa2b3 Perform NULL check when a limited doPrivileged method is in the main() Jason Feng #21974
2a5262b Remove JCL preprocessor config SIDECAR18-TOOLS-OPENJ9 Peter Shipton #21973
8be07bf Revert "x86: Reduce AVX-SSE mixing penalties" Peter Shipton #21965
a03fa40 Fix a Typo in the vectorizedHashCode Intrinsic in P Luke Li #21858
a788cc1 Do not add Own.Sync. object to the list if scan wasn't successful Dmitri Pivkine #21915
d30b122 Add an assertion for current continuation in detachMonitorInfo() Hang Shao #21950
426df98 Disable System.nanoTime acceleration under AOT on Z Rahil Shah #21938
da73705 Introduce SupportsInlineStringIndexOfString flag KONNO Kazuhiro #21932
3dff8df Prevent data corruption on class redefinition tajila #21940
4f64191 x86: Reduce AVX-SSE mixing penalties Bradley Wood #21924