Integrated: 8282049: AArch64: Use ZR for integer zero immediate volatile stores
Dmitry Chuyko
dchuyko at openjdk.java.net
Fri Feb 18 16:06:14 UTC 2022
On Thu, 17 Feb 2022 13:55:53 GMT, Dmitry Chuyko <dchuyko at openjdk.org> wrote:
> Rules and encodings for volatile stores of immediate zero byte, char, int, long and pointers were added in aarch64.ad. E.g. storeimmN0_volatile() and aarch64_enc_stlrw0(). They use stlr instructions with ZR similar to what is already done for non-volatile zero stores and str instructions.
>
> So for example
>
> mov x13, xzr
> stlr x13, [x11]
>
> turns into
>
> stlr xzr [x11]
>
> There's no direct effect in dedicated micro-benchmarks on N1 but 1 register and 1 instruction are saved.
>
> Testing: jtreg tier1, tier2, applications/jcstress on bare metal Graviton 2.
This pull request has now been integrated.
Changeset: 413bef68
Author: Dmitry Chuyko <dchuyko at openjdk.org>
URL: https://git.openjdk.java.net/jdk/commit/413bef6890e9ba820590aa48017c4c7b1d691d24
Stats: 91 lines in 1 file changed: 91 ins; 0 del; 0 mod
8282049: AArch64: Use ZR for integer zero immediate volatile stores
Reviewed-by: adinn, phh
-------------
PR: https://git.openjdk.java.net/jdk/pull/7515
More information about the hotspot-compiler-dev
mailing list