RFR 8047737 Move array component mirror to instance of java/lang/Class
David Holmes
david.holmes at oracle.com
Mon Jun 30 05:55:59 UTC 2014
Hi Coleen,
Your webrev links are to internal locations.
David
On 28/06/2014 5:24 AM, Coleen Phillimore wrote:
> Summary: Add field in java.lang.Class for componentType to simplify oop
> processing and intrinsics in JVM
>
> This is part of ongoing work to clean up oop pointers in the metadata
> and simplify the interface between the JDK j.l.C and the JVM. There's a
> performance benefit at the end of all of this if we can remove all oop
> pointers from metadata. mirror in Klass is the only one left after
> this full change.
>
> See bug https://bugs.openjdk.java.net/browse/JDK-8047737
>
> There are a couple steps to this change because Hotspot testing is done
> with promoted JDKs. The first step is this webrev:
>
> http://oklahoma.us.oracle.com/~cphillim/webrev/8047737_jdk/
> http://oklahoma.us.oracle.com/~cphillim/webrev/8047737_hotspot/
>
> When the JDK is promoted, the code to remove
> ArrayKlass::_component_mirror will be changed under a new bug id.
>
> http://oklahoma.us.oracle.com/~cphillim/webrev/8047737_hotspot_full
>
> Finally, a compatibility request and licensee notification will occur to
> remove the function JVM_GetComponentType.
>
> Performance testing was done that shows no difference in performance.
> The isArray() call is a compiler intrinsic which is now called instead
> of getComponentType, which was recognized as a compiler intrinsic.
>
> JDK jtreg testing, hotspot jtreg testing, hotspot NSK testing and jck8
> tests were performed on both the change requested (1st one) and the full
> change.
>
> hotspot NSK tests were run on the hotspot-only change with a promoted JDK.
>
> Please send your comments.
>
> Thanks,
> Coleen
More information about the core-libs-dev
mailing list