RFR 8233500: Shenandoah: Shenandoah load barrier should save registers before calling keep alive barrier on x86
Aleksey Shipilev
shade at redhat.com
Mon Nov 4 18:39:33 UTC 2019
On 11/4/19 7:34 PM, Zhengyu Gu wrote:
>> SATB handling is similar to G1 is doing, where's the similar code in G1? The patch adds save/restore
>> at in SBSA::load_at, but there is a similar block in SBSA::store_at, why it is not needed there?
>
> Because we do self-fixing in LRB and have to reshuffle registers.
Okay. So AArch64 does enter()/leave(), why x86 needs the entire IU_state pushed/popped?
My concern is that pushing/popping the entire state explodes code size (we don't care about
performance much, but we do care about hitting the stub boundaries), and probably hides some bugs
with register shuffles.
--
Thanks,
-Aleksey
More information about the hotspot-gc-dev
mailing list