RFR(XS) : 8038240 : new WB API to get nmethod

John Rose john.r.rose at oracle.com
Tue Mar 25 21:01:02 UTC 2014


The boolean parameter is not expressive enough.  It will have to change as soon as we have more than two versions of a method.

(In fact, we already do:  There is potentially a different OSR method for each entry point BCI.  The formulation you have returns just one of them.)

I suggest you change "boolean isOsr" in the WB API to "long version" or even "Object version".  The version enumeration can be evolved over time.  Values 0 and 1 can be "normal at current compilation" and "first available OSR".

Also, put the version number into the NMethod structure, so it can be requeried.  For an OSR method, the entry BCI is important to know.

...But I see that there is already a use of booleans like this in the WB API.  So I guess you should consistent with what you have.

I filed a bug to track this issue of method versioning; there is technical debt here:
  https://bugs.openjdk.java.net/browse/JDK-8038356

— John


More information about the hotspot-dev mailing list