RFR: 8270830: Aarch64: Use stp to initialize object on C1

Nick Gasson ngasson at openjdk.java.net
Mon Jul 19 04:08:54 UTC 2021


On Fri, 16 Jul 2021 11:14:07 GMT, Wang Huang <whuang at openjdk.org> wrote:

> Here is a trivail patch on aarch64. 
> It is found that in C1_MacroAssembler::initialize_object which we can use` stp `to replace` str`.
> ```c++
> @@ -250,13 +249,16 @@ void C1_MacroAssembler::initialize_object(Register obj, Register klass, Register
>         for (int i = -unroll; i < 0; i++) {
>           if (-i == remainder)
>             bind(entry_point);
> - str(zr, Address(rscratch1, i * wordSize));
> + stp(zr, zr, Address(rscratch1, i * 2 * BytesPerWord));

How have you tested this?

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

PR: https://git.openjdk.java.net/jdk/pull/4808


More information about the hotspot-compiler-dev mailing list