RFR: 8339783: Implementation of JEP 479: Remove the Windows 32-bit x86 Port [v4]

Julian Waters jwaters at openjdk.org
Tue Oct 29 14:58:50 UTC 2024


On Tue, 29 Oct 2024 14:37:43 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:

>> @shipilev There _is_ a way to implement SpinPause on Windows/x64 though, if support is really as simple as a single pause instruction. Should I help implement this separately (After this PR is integrated, to avoid conflicts)? Although, the way SpinPause can be implemented is honestly so simple and trivial that @magicus could simply replace the entire body of this SpinPause with it in this PR
>
> Submit a separate PR and implement this :) Pretty sure you'll get into some dark territories in Windows/AArch64, see how Linux/AArch64 does this. But honestly, this whole `extern "C"` mess should probably be cleaned up in favor of arch-specific stubs or something like that...

Oh, I was thinking about Windows/x64, but I guess I can consider Windows/ARM64 too. I had a look at Linux/ARM64 actually, and it seems like it doesn't actually properly support SpinPause? It seems like it uses the overhead of a method call to "implement" SpinPause. I had a look at some example assembly that could potentially be used to implement it for Windows/ARM64, but I don't know if it's correct. If you want, we could continue this discussion elsewhere

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

PR Review Comment: https://git.openjdk.org/jdk/pull/21744#discussion_r1820959571


More information about the build-dev mailing list