RFR: 8186670: Implement _onSpinWait() intrinsic for AArch64 [v2]

Evgeny Astigeevich github.com+42899633+eastig at openjdk.java.net
Tue Sep 21 22:22:54 UTC 2021


On Tue, 21 Sep 2021 08:04:15 GMT, Andrew Haley <aph at openjdk.org> wrote:

>> Evgeny Astigeevich has updated the pull request incrementally with one additional commit since the last revision:
>> 
>>   Replace 'for' loops with macros
>
> src/hotspot/cpu/aarch64/aarch64.ad line 14392:
> 
>> 14390:         ShouldNotReachHere();
>> 14391:     }
>> 14392:   %}
> 
> Please let the MacroAssembler do this. Just call `MacroAssembler::spin_wait()`.

Done

> src/hotspot/cpu/aarch64/c1_LIRAssembler_aarch64.cpp line 2999:
> 
>> 2997:       break;
>> 2998:     default:
>> 2999:       ShouldNotReachHere();
> 
> Same here. Please just call `MacroAssembler::spin_wait()`.

Done

> src/hotspot/cpu/aarch64/globals_aarch64.hpp line 114:
> 
>> 112:           "Value -1 means off.")                                        \
>> 113:           range(-1, 4096)                                               \
>> 114:   product(ccstr, UsePauseImpl, "none",                                  \
> 
> The name "UsePauseImpl" fails to make the connection with `onSpinWait`. If you called it something like `OnSpinWaitImpl` that would make the connection.

Done

> src/hotspot/cpu/aarch64/globals_aarch64.hpp line 115:
> 
>> 113:           range(-1, 4096)                                               \
>> 114:   product(ccstr, UsePauseImpl, "none",                                  \
>> 115:           "Use instructions to implement pauses."                       \
> 
> Suggestion:
> 
>           "Use instructions to implement java.lang.Thread.onSpinWait() ."                       \

Done

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

PR: https://git.openjdk.java.net/jdk/pull/5562


More information about the hotspot-dev mailing list