RFR: 8373595: A new ObjectMonitorTable implementation [v2]

Fredrik Bredberg fbredberg at openjdk.org
Wed Feb 4 14:57:47 UTC 2026


On Mon, 2 Feb 2026 09:17:33 GMT, Amit Kumar <amitkumar at openjdk.org> wrote:

>> Fredrik Bredberg has updated the pull request incrementally with one additional commit since the last revision:
>> 
>>   Updated all platforms after review comments
>
> src/hotspot/cpu/s390/macroAssembler_s390.cpp line 6397:
> 
>> 6395: 
>> 6396:       // Get the hash code.
>> 6397:       z_srlg(hash, hash, markWord::hash_shift);
> 
> the monitor you are looking for is likely found in the first positions of the cache (it's sorted in most recently used order).
> 
> 
> Then would it be helpful to load the hash only just before extraction? If the `monitor_found` cases are frequent, the load would not be needed at all.

The registers for mark and monitor are the same (unfortunately), so I need to take a copy of the mark word before the om_cache code. This is because I speculatively set the monitor value in the om_cache code, and thereby overwrites the mark value.

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/29383#discussion_r2764418971


More information about the shenandoah-dev mailing list