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

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


On Thu, 19 Nov 2020 09:13:42 GMT, Andrew Haley <aph 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`.
>
> Marked as reviewed by aph (Reviewer).

Thanks.

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

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


More information about the hotspot-compiler-dev mailing list