RFR: Factor out keep-alive barrier
Roman Kennke
rkennke at redhat.com
Wed Sep 6 13:58:00 UTC 2017
Am 6. September 2017 15:41:15 MESZ schrieb Aleksey Shipilev <shade at redhat.com>:
>On 09/06/2017 01:44 PM, Roman Kennke wrote:
>> http://cr.openjdk.java.net/~rkennke/keepalivebarrier/webrev.00/
>
>*) This does not look correct with compressed references, used to be
>"oop obj = *p", because the
>argument is oop*, not HeapWord*:
>
> 448 void Klass::klass_update_barrier_set_pre(oop* p, oop v) {
> 449 oop obj = oopDesc::load_heap_oop(p);
It's exactly the same, but more readable :-) The field in Klass is never compressed.
>
>*) It is a bit worrying to remove the INCLUDE_ALL_GC blocks from the
>hotpaths in e.g. jni.cpp
>
OK, I will put it back in. It will all change with the GC interface anyway...
>*) ShenandoahSATBBarrier should be handled in
>ShenandoahBarrierSet::keep_alive_barrier?
>
How about guarding it with ShenandoahKeepAliveBarrier? It will not be an SATB barrier anymore with conc partial, this is purely an impl detail right now...
Roman
--
Diese Nachricht wurde von meinem Android-Gerät mit K-9 Mail gesendet.
More information about the shenandoah-dev
mailing list