RFR (XXS): 8058309: Unsafe.defineAnonymousClass deoptimization checks scale devastatingly poorly
vladimir.x.ivanov at oracle.com
Thu Sep 18 09:26:44 UTC 2014
I looked into the code and my understanding is that they don't have the
same problem as compiled LambdaForms.
Proxy doesn't have instance methods (only public/private static), so no
unique_concrete_method dependencies in Proxy context.
Similar situation with Method: SerializationConstructorAccessorImpl,
ConstructorAccessorImpl, MethodAccessorImpl, their supertypes, and
interfaces they implement declare megamorphic abstract instance methods.
So, I don't expect any unique_concrete_method dependencies in these
contexts as well.
But it's mostly an educated guess, it'd be great to see some data
confirming my observations.
On 9/17/14, 10:53 PM, Remi Forax wrote:
> On 09/17/2014 06:55 PM, Vladimir Ivanov wrote:
>> >> It's not specific to U.dAC(). Regular class loaders can hit similar
>>>> problem as well.
>>> Even better, this is even more generic.
>> Please, update bug synopsis then.
>>>> If you want to use 8058309 for dependency tracking improvments in VM,
>>>> let me know. So far, I got an impression it is about LFs & JSR292
>>> Yes, please commit the LF fix under the different bug ID, if that is not
>>> a hassle?
>> 8058661: Compiled LambdaForms should inherit from Object to
>> improve class loading performance
> I wonder if the Proxy generation code (j.l.r.Proxy) and the method
> accessor generation code (j.l.r.Method) doesn't have the very same issue.
>> Best regards,
>> Vladimir Ivanov
> mlvm-dev mailing list
> mlvm-dev at openjdk.java.net
More information about the core-libs-dev