[aarch64-port-dev ] RFR(XS): 8242905: AArch64: Client build failed

Yang Zhang Yang.Zhang at arm.com
Thu Apr 23 02:39:26 UTC 2020


Hi,

Could you please help to review this patch?

JBS: https://bugs.openjdk.java.net/browse/JDK-8242905
Webrev: http://cr.openjdk.java.net/~yzhang/8242905/webrev.00/

This issue is introduced by [1]. In this commit, pop_CPU_state(restore
_vectors) and leave() are included under COMPILER2_OR_JVMCI check in
AArc64 restore_live_registers[2].

But restore_live_registers is used in generate_resolve_blob[3] which
might be called from c1. In x86 restore_live_registers, pop_CPU_state()
and pop(rbp) are always done [4].

To fix this issue, pop_CPU_state(restore_vectors) and leave()
are also moved outside of COMPILER2_OR_JVMCI check in AArch64
restore_live_registers.

Testing on AArch64 platform:
tier1 test with server build
server build with configuring --with-jvm-features=-compiler2
client build and ran HelloWorld

[1] https://bugs.openjdk.java.net/browse/JDK-8241665
[2] https://hg.openjdk.java.net/jdk/jdk/rev/53568400fec3#l1.23
[3] http://hg.openjdk.java.net/jdk/jdk/file/55c4283a7606/src/hotspot/cpu/aarch64/sharedRuntime_aarch64.cpp#l2850
[4] http://hg.openjdk.java.net/jdk/jdk/file/55c4283a7606/src/hotspot/cpu/x86/sharedRuntime_x86_64.cpp#l378


More information about the aarch64-port-dev mailing list