RFR: 8366441: AArch64: Support WFET in OnSpinWait [v2]
Ruben
duke at openjdk.org
Thu Dec 18 16:31:04 UTC 2025
> Implement OnSpinWait based on WFET - wait for event with timeout:
> - introduce OnSpinWaitDelay - the OnSpinWait time in nanoseconds;
> - the OnSpinWaitInstCount is expected to be 1 when WFET is used;
> - the waiting loop is followed by SB - to ensure following instructions aren't speculated until wait is finished;
> - the timer register is read via the self-synchronized view CNTVCTSS_EL0 to prevent the read being hoisted out of the loop.
>
> The WFET and CNTVCTSS_EL0 read are added to aarch64-asmtest.py as hex values - using the instruction mnemonics would require support of -march=armv9-2.a, and consequently, the binutils 2.36+.
Ruben has updated the pull request incrementally with one additional commit since the last revision:
Fix bsd_aarch64 build
-------------
Changes:
- all: https://git.openjdk.org/jdk/pull/27030/files
- new: https://git.openjdk.org/jdk/pull/27030/files/55efce00..c41fb0da
Webrevs:
- full: https://webrevs.openjdk.org/?repo=jdk&pr=27030&range=01
- incr: https://webrevs.openjdk.org/?repo=jdk&pr=27030&range=00-01
Stats: 2 lines in 1 file changed: 2 ins; 0 del; 0 mod
Patch: https://git.openjdk.org/jdk/pull/27030.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/27030/head:pull/27030
PR: https://git.openjdk.org/jdk/pull/27030
More information about the hotspot-dev
mailing list