RFR: 8217874: Shenandoah: AArch64: Clobbered register in ShenandoahBarrierSetAssembler::cmpxchg_oop()
Roman Kennke
rkennke at redhat.com
Mon Jan 28 12:46:06 UTC 2019
In AArch64, when called from C2, in
ShenandoahBarrierSetAssembler::cmpxchg_oop() the result register may
overlap with other input argument registers and thus fail the leading
assert, and lead to clobbered registers. In the body of the code block,
a temporary register should be used instead, and result should only get
filled in at the end.
Bug:
https://bugs.openjdk.java.net/browse/JDK-8217874
Webrev:
http://cr.openjdk.java.net/~rkennke/JDK-8217874/webrev.00/
Testing: Some tests failed before (e.g. TestVerifyJCStress.java), those
are good now. No regressions in hotspot_gc_shenandoah either.
Can I get a review please?
Thanks, Roman
More information about the hotspot-compiler-dev
mailing list