RFR: Uses keep_alive_barrier to keep deduped char array alive
Aleksey Shipilev
shade at redhat.com
Wed Oct 11 20:01:15 UTC 2017
On 10/11/2017 09:56 PM, Zhengyu Gu wrote:
>>>>
>>>> java_lang_String::set_value(java_string, typeArrayOop(existing_value));
>>>>
>>>> which does the correct barrier (i.e. storeval-barrier). Everything should be fine.
>>> Okay, I see. Thanks for the explanation.
>>>
>>> Updated webrev: http://cr.openjdk.java.net/~zgu/shenandoah/strdedup_keep_alive/webrev.01/
>>
>> It is ok, but I'd just drop the if-else on UseShenandoahGC and unconditionally call
>> oopDesc::bs()->keep_alive_barrier(...) that will do the right thing for G1 too!
>
> But, is it the consensus, that we should always do UseShenandoahGC in shared code now?
keep_alive_barrier is kinda the part of GC interface. Commit this in your form.
-Aleksey
More information about the shenandoah-dev
mailing list