RFR (sh/jdk11): Unbreak Aarch64 build

Roman Kennke rkennke at redhat.com
Thu Jan 30 22:33:19 UTC 2020


- src/hotspot/cpu/aarch64/c1_LIRAssembler_aarch64.cpp:
workaround lack of support for patching in leal instruction by by
planting a deopt. This is taken from the much larger jdk/jdk patch
"8214527: ZGC for Aarch64", and confirmed by Andrew Haley to be sane.

-
src/hotspot/cpu/aarch64/gc/shenandoah/shenandoahBarrierSetAssembler_aarch64.cpp
-
src/hotspot/cpu/aarch64/gc/shenandoah/shenandoahBarrierSetAssembler_aarch64.hpp

Fix arraycopy_prologue() and load_reference_barrierX() signatures.

- src/hotspot/cpu/aarch64/templateInterpreterGenerator_aarch64.cpp

use r10 instead of rscratch1 for load_mirror(). This avoids a register
clash in our LRB (it happens now because we use the addr). This is taken
from the much larger upstream change "8226515: AArch64: float point
register corruption in ZBarrierSetAssembler::load_at"

We don't want/can't backport the larger upstream changes, but need to
pick those small bits. I intend to upstream this to jdk11u together with
the larger Shenandoah GC backport.

Ok to push to sh/jdk11?

Testing: build+test hotspot_gc_shenandoah on aarch64

Roman



More information about the shenandoah-dev mailing list