git: openjdk/loom: jom-master: 2 new changesets

duke duke at openjdk.org
Tue Aug 1 06:36:59 UTC 2023


Changeset: d293ae96
Author:    David Holmes <david.holmes at oracle.com>
Date:      2023-08-01 01:57:24 +0000
URL:       https://git.openjdk.org/loom/commit/d293ae962f7cb0f2f381b25e75c116316c7bd8a8

Reinstated the use of the BasicObjectLock structure and stopped using the caller frame id.
The new code sits along side the existing code switched by a new flag (UseBasicObjectLockWithJOM)
and with a new Java entry point (monitorExitAll) and related internal methods.
In remove_activation_java2() we count the number of lock records and call up to Object::monitorExitAll(count)
to then unlock the count most recent entries in the lock-stack.
The held_monitor_count logic had to be relocated to accommodate exitAll.
The same subset of test failures in tier1_runtime as already known but with the added bonus that:
a) The receiver null check for sync blocks is back in the interpreter so the NPE message test now pass
b) We once again see -locked xxx entries in the stack dump
The presence of the BOL entries in the frame do not seem to cause a problem for Loom i.e. virtual threads
don't get pinned, but testing there is truly minimal at the moment.

! src/hotspot/cpu/x86/interp_masm_x86.cpp
! src/hotspot/cpu/x86/interp_masm_x86.hpp
! src/hotspot/cpu/x86/templateInterpreterGenerator_x86.cpp
! src/hotspot/cpu/x86/templateTable_x86.cpp
! src/hotspot/share/classfile/javaClasses.cpp
! src/hotspot/share/classfile/vmSymbols.hpp
! src/hotspot/share/include/jvm.h
! src/hotspot/share/memory/universe.cpp
! src/hotspot/share/memory/universe.hpp
! src/hotspot/share/oops/generateOopMap.cpp
! src/hotspot/share/prims/jvm.cpp
! src/hotspot/share/runtime/arguments.cpp
! src/hotspot/share/runtime/globals.hpp
! src/java.base/share/classes/java/lang/Monitor.java
! src/java.base/share/classes/java/lang/MonitorSupport.java
! src/java.base/share/classes/java/lang/Object.java
! src/java.base/share/classes/java/lang/Thread.java

Changeset: 16461c65
Author:    David Holmes <david.holmes at oracle.com>
Date:      2023-08-01 02:34:20 +0000
URL:       https://git.openjdk.org/loom/commit/16461c65f404ee2bf538b8a61f573c1a24213b6d

Removed leftover debugging code

! src/java.base/share/classes/java/lang/Object.java



More information about the loom-dev mailing list