RFR: 8319947: Recursive lightweight locking: s390x implementation

Amit Kumar amitkumar at openjdk.org
Tue May 21 12:28:02 UTC 2024


On Tue, 21 May 2024 12:06:08 GMT, Axel Boldt-Christmas <aboldtch at openjdk.org> wrote:

>> src/hotspot/cpu/s390/interp_masm_s390.cpp line 1013:
>> 
>>> 1011:     assert((JVM_ACC_IS_VALUE_BASED_CLASS & 0xFFFF) == 0, "or change following instruction");
>>> 1012:     z_nilh(tmp, JVM_ACC_IS_VALUE_BASED_CLASS >> 16);
>>> 1013:     z_brne(slow_case);
>> 
>> Is this change unrelated to recursive lightweight? If so should it be a separate RFE?
>
> I see you implemented it in `compiler_fast_lock_lightweight_object` and changed it in `compiler_fast_lock_object` as well. Maybe that answers my question.

Let's start from this one. I guess we made a mistake while pushing changes in https://github.com/openjdk/jdk/pull/18709. CC in case was being set to `true`. But we required it to be `EQ` or `NE`.  At that time the check which you have added were not there, to check the CC, and as a reason incorrect code was pushed :-( 

I wasn't sure whether I should open a separate PR to revert those change, Though I have opened the https://github.com/openjdk/jdk/pull/18987, but still I thought to ship it with this one.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/18878#discussion_r1608237237


More information about the hotspot-dev mailing list