RFR: JDK-8222537: Avoid fetching _klass twice in TypeArrayOop::size()

Roman Kennke rkennke at redhat.com
Fri May 3 16:59:18 UTC 2019


Ping?

Roman

> Currently, when calling TypeArrayOop::size(), we end up calling klass()
> twice: once before calling into size_given_klass() and then again before
> calling TypeArrayOop::object_size().
> 
> This is currently only a minor performance nuisance.
> 
> With upcoming Shenandoah's elimination of forwarding pointer, loading
> klass like this is not safe anymore, and therefore we only call
> size_given_klass(), and must avoid calling naked klass() altogether.
> 
> Bug:
> https://bugs.openjdk.java.net/browse/JDK-8222537
> Webrev:
> http://cr.openjdk.java.net/~rkennke/JDK-8222537/webrev.00/
> Testing:
> hotspot_gc_shenandoah with and without the prototype, hotspot/tier1
> 
> Can I please get reviews?
> 
> Thanks,
> Roman
> 


More information about the hotspot-runtime-dev mailing list