Integrated: 8256375: AArch64: aarch64-asmtest.py may generate undefined register r18

Dong Bo dongbo at openjdk.java.net
Thu Nov 19 09:51:06 UTC 2020


On Thu, 19 Nov 2020 02:40:47 GMT, Dong Bo <dongbo at openjdk.org> wrote:

> In aarch64-asmtest.py, register `r18` is not generated for all the GeneralRegister instructions, except `LoadStoreOp` and `LoadStorePairOp`.
> So when adding new instructions to the script before `LoadStoreOp` or `LoadStorePairOp`,
> assembler smoke test may fail with undefined register `r18`, like:
> Creating javadoc element list
> .../jdk/src/hotspot/cpu/aarch64/assembler_aarch64.cpp: In function 'void entry(CodeBuffer*)':
> .../jdk/src/hotspot/cpu/aarch64/assembler_aarch64.cpp:580:37: error: 'r18' was not declared in this scope; did you mean 'z18'?
>   580 | __ ldp(r28, r22, Address(__ pre(r18, 16))); // ldp x28, x22, [x18, #16]!
>       | ^~~
>       | z18
> gmake[3]: *** [lib/CompileJvm.gmk:143: .../jdk/build/linux-aarch64-server-fastdebug/hotspot/variant-server/libjvm/objs/assembler_aarch64.o] Error 1
> gmake[3]: *** Waiting for unfinished jobs....
> Compiling 89 properties into resource bundles for java.desktop
> 
> This excludes `r18` from the random list of `LoadStoreOp` and `LoadStorePairOp`.

This pull request has now been integrated.

Changeset: 6702910b
Author:    Dong Bo <dongbo at openjdk.org>
Committer: Fei Yang <fyang at openjdk.org>
URL:       https://git.openjdk.java.net/jdk/commit/6702910b
Stats:     32 lines in 2 files changed: 0 ins; 0 del; 32 mod

8256375: AArch64: aarch64-asmtest.py may generate undefined register r18

Reviewed-by: aph

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

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


More information about the hotspot-compiler-dev mailing list