RFR: 8362504: AArch64: Replace MOVZ+MOVK+MOVK with ADRP+ADD

Andrew Haley aph at openjdk.org
Thu Aug 7 16:52:14 UTC 2025


On Thu, 7 Aug 2025 16:17:09 GMT, Andrew Haley <aph at openjdk.org> wrote:

> Thanks for your review @theRealAph @adinn .
> 
> > It's certainly smaller, but whether it's more efficient is dependent on the circumstances. For example, on Firestorm we can do two ADRPs per cycle, but eight MOVZ/MOVKs.
> 
> @theRealAph That makes a lot of sense. On Neoverse N1/N2/V1, `ADRP` and `MOVZ/MOVK` have comparable latency and throughput and share the same pipeline,

I've done some modelling using llvm-mca and it looks like `adrp; add` is a win on recent Apple processors as well as on Arm processors, so go ahead with making this the default.

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

PR Comment: https://git.openjdk.org/jdk/pull/26653#issuecomment-3164998150


More information about the hotspot-dev mailing list