RFR: 8319801: Recursive lightweight locking: aarch64 implementation [v16]

Axel Boldt-Christmas aboldtch at openjdk.org
Tue Feb 13 12:41:38 UTC 2024


On Tue, 13 Feb 2024 12:35:48 GMT, Axel Boldt-Christmas <aboldtch at openjdk.org> wrote:

>> src/hotspot/cpu/aarch64/c2_MacroAssembler_aarch64.cpp line 243:
>> 
>>> 241:     ldrw(t1, Address(t1, Klass::access_flags_offset()));
>>> 242:     tstw(t1, JVM_ACC_IS_VALUE_BASED_CLASS);
>>> 243:     br(Assembler::NE, slow_path);
>> 
>> Suggestion:
>> 
>>     tbnz(t1, exact_log2(JVM_ACC_IS_VALUE_BASED_CLASS));
>
> The condition flags must be correct when leaving `fast_lock` and `fast_unlock`. The test is used to set the proper NE condition when jumping out.

The condition flags must be correct when leaving `fast_lock` and `fast_unlock`. The test is used to set the proper NE condition when jumping out.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/16608#discussion_r1487774869


More information about the hotspot-dev mailing list