RFR (S): Replace ShHeapRegionSet::get with get_fast

Aleksey Shipilev shade at redhat.com
Thu May 4 16:50:41 UTC 2017


Hi,

We knew from concmark performance work that the excess branch in get() costs us.
It returns NULL if (idx < active). Today I reviewed all the places in Shenandoah
where we call get(), and it seems almost everywhere NULL is not acceptable,
leading straight to SEGV. It makes sense to use get_fast there then, or indeed
rename get -> get_or_null, get_fast -> get.

Fix:
 http://cr.openjdk.java.net/~shade/shenandoah/hrs-get/webrev.01/

Testing: hotspot_gc_shenandoah

Thanks,
-Aleksey



More information about the shenandoah-dev mailing list