RFR: JDK-8221751: Shenandoah: Improve SATB enqueueing
Roman Kennke
rkennke at redhat.com
Tue Apr 2 15:41:53 UTC 2019
>> http://cr.openjdk.java.net/~rkennke/JDK-8221751/webrev.02/
>>
>> Testing: Passes hotspot_gc_shenandoah both x86 and aarch64
>>
>> Ok?
>
> 54 __ cmp(count, zr);
> 55 __ br(Assembler::EQ, done);
>
> should be
>
> cbz(count, done);
>
> and this
>
> 60 __ mov(rscratch2, ShenandoahHeap::MARKING);
> 61 __ tst(rscratch1, rscratch2);
> 62 __ br(Assembler::EQ, done);
>
> should be
>
> 62 __ tbz(rscratch1, ShenandoahHeap::MARKING_BITPOS, done);
>
Very nice!
http://cr.openjdk.java.net/~rkennke/JDK-8221751/webrev.03/
Is there also a short version of this check:
__ mov(rscratch2, ShenandoahHeap::MARKING | ShenandoahHeap::TRAVERSAL);
__ tst(rscratch1, rscratch2);
__ br(Assembler::EQ, done);
because I need this too in a couple of places.
Roman
More information about the shenandoah-dev
mailing list