RFR: Cleanup ShenandoahBarrierSet::write_barrier

Aleksey Shipilev shade at redhat.com
Wed Jul 19 18:04:46 UTC 2017


On 07/19/2017 07:47 PM, Aleksey Shipilev wrote:
> There seems to be lots of single-use methods with weird names, related to
> SBS::write_barrier. They look like historical artifacts, in attempt to make
> interpreter code run faster? Nowadays it is cleaner to just inline all of them
> into the SBS::write_barrier:
>   http://cr.openjdk.java.net/~shade/shenandoah/sbs-wb-cleanup/webrev.01/

Ha, see! I did the inlining mechanically, but now I realize we are missing the
obvious check "obj == fwd" before trying to evac. Old code would just fail the
CAS inside evacuate_object, always producing excess garbage.

Better one:
  http://cr.openjdk.java.net/~shade/shenandoah/sbs-wb-cleanup/webrev.02/

Thanks,
-Aleksey




More information about the shenandoah-dev mailing list