Files
ARMSX2/common
pstef 2e39fcc216 Optimization: wait on the address instead of spinning the pipeline
Each of the three spin-then-sleep semaphore loops watches a single
atomic word, but ShortSpin() has no way to know that: it spends its
share of SPIN_TIME_NS in batches of eight isb, and every one of those is
a pipeline flush. arm64 can watch the word itself, so ShortSpinOn()
does, and the loops that hold their whole predicate in one word take it.

Hosts that cannot watch an address keep the old spin.

Inspired by Whatcookie's work on arm64 for rpcs3.
2026-08-09 11:20:53 +02:00
..
2026-06-12 18:08:03 -04:00
2026-07-09 23:01:22 +02:00
2026-02-19 14:17:30 +01:00
2022-04-21 14:21:49 +01:00
2024-01-08 23:33:43 +10:00