RFR: 8232782: Shenandoah: streamline post-LRB CAS barrier (aarch64)
Florian Weimer
fweimer at redhat.com
Wed Jun 24 14:55:03 UTC 2020
* Roman Kennke:
> On Wed, 2020-06-24 at 15:29 +0100, Andrew Haley wrote:
>> On 24/06/2020 14:54, Nilsen, Kelvin wrote:
>> > Is this ok to merge?
>>
>> One thing:
>>
>> Some CPUs, in particular those based on Neoverse N1, can perform very
>> badly when using ldxr/stxr. For that reason, all code doing CAS
>>
>> I can't see any reason why your code needs to use ldxr/stxr. Is there
>> any?
>
> As far as I know, Shenandoah's AArch64-CAS-implementation always did it
> that way (don't remember why). If regular CAS is generally better, then
> we should go for it.
It's only better on CPUs that support it. 8-) CAS is only available if
the CPU supports ARMv8.1 LSE (HWCAP_ATOMICS is set in AT_HWCAP).
Thanks,
Florian
More information about the shenandoah-dev
mailing list