RFR: 8261027: AArch64: Support for LSE atomics C++ HotSpot code
Andrew Haley
aph at redhat.com
Mon Feb 8 17:36:35 UTC 2021
On 2/8/21 1:38 PM, Ludovic Henry wrote:
> On Mon, 8 Feb 2021 11:24:00 GMT, Andrew Haley <aph at openjdk.org> wrote:
>
>>> I suppose you could just move it to `os_cpu/linux_aarch64/` as these are only called from the Linux atomics?
>>
>> They're probably needed on Windows, or I'd have put them in linux_aarch64.
>
> I can confirm that assembly code targeted at Linux generally won't compile out of the box on Windows.
Generally, OK, but what's wrong with that specific file? It should run
just fine. We're getting an incomprehensible error message, but what
does it mean?
> For `windows_aarch64`, could we have simple fallbacks in C++ code that simply call `InterlockedAdd`, `InterlockedExchange`, and `InterlockedCompareExchange`? It would be similar to [atomic_windows_aarch64.hpp](https://github.com/openjdk/jdk/blob/master/src/hotspot/os_cpu/windows_aarch64/atomic_windows_aarch64.hpp)
Well, I don't know. Do InterlockedAdd and its friends generate good code?
You've got the machines there, so you can have a look, but I can't.
It's up to you to decide whether you care about code quality. I'm
trying my best to help, but without your assistance there's nothing I
can do.
--
Andrew Haley (he/him)
Java Platform Lead Engineer
Red Hat UK Ltd. <https://www.redhat.com>
https://keybase.io/andrewhaley
EAC8 43EB D3EF DB98 CC77 2FAD A5CD 6035 332F A671
More information about the hotspot-dev
mailing list