RFR: 8242301: Shenandoah: Inline LRB runtime call

Roman Kennke rkennke at redhat.com
Tue Apr 7 20:06:20 UTC 2020


Currently, the LRB slow-path call does 2-3 calls in a row:
compiled code -> runtime entry
runtime entry -> ShBS::load_reference_barrier_mutator()
ShBS::lrb_mutator() -> ShBS::lrb_mutator_work()

The first in unavoidable, but none of the other two are marked inlined
and are in a separate compilation-unit. Further, the middle-call is not
needed. We can call straight from ShRuntime into the templated-inlined
lrb_mutator() method.

Issue:
https://bugs.openjdk.java.net/browse/JDK-8242301
Webrev:
http://cr.openjdk.java.net/~rkennke/JDK-8242301/webrev.00/

Testing: hotspot_gc_shenandoah (fastdebug/release)

Ok?

Roman



More information about the shenandoah-dev mailing list