RFR: Remove obsolete and unused reduce-storeval-barrier optimization code
Roman Kennke
rkennke at redhat.com
Sat Sep 16 09:37:57 UTC 2017
Ok. I fixed one place in library_call.cpp in the cmpxchg intrinsics.
Everything else should be ok:
http://cr.openjdk.java.net/~rkennke/remove-reduce-storeval/webrev.01/
<http://cr.openjdk.java.net/%7Erkennke/remove-reduce-storeval/webrev.01/>
Ok?
Roman
> Don't bother reviewing this. I made a mistake. I removed the newval in
> some cases, but we do need it for the matrix barrier that is part of
> our C2 pre-barrier code path. I'll post an updated webrev soon (not
> today I guess... it's late here and almost weekend...)
>
> Roman
>
>> This is an almost 1:1 revert of an earlier changeset that attempted
>> to optimize storeval barriers. The idea back then was that when we
>> check for conc-mark-in-progress anyway, we could just as well only
>> invoke the storeval (i.e. read) - barrier if conc-mark is active. It
>> never worked very well (and we never turned it on by default) and
>> gained us anything significant. But now it's even worse:
>> updating-refs now also happens outside conc-mark, and thus the whole
>> idea is obsolete. In fact, maybe we can do something smarter once all
>> the X_in_progress flags have been folded into the gc-phase-field
>> (need to see this when it's there). The patch removes the code, and
>> thus reduces our upstream diff.
>>
>> Test: hotspot_gc_shenandoah
>>
>> http://cr.openjdk.java.net/~rkennke/remove-reduce-storeval/webrev.00/
>> <http://cr.openjdk.java.net/%7Erkennke/remove-reduce-storeval/webrev.00/>
>>
>> Ok?
>>
>
More information about the shenandoah-dev
mailing list