RFR: 8200238: Reduce number of exceptions created when calling MemberName$Factory::resolveOrNull
Claes Redestad
claes.redestad at oracle.com
Tue Mar 27 07:26:59 UTC 2018
On 2018-03-27 09:03, David Holmes wrote:
> Hi Claes,
>
> This seems reasonable. Clearing the exception only when speculatively
> resolving is reasonable (it's similar to compilation clearing
> exceptions and falling back to interpreted mode).
Thanks David!
For the record, it seems that in my (synthetic) tests we're often
hitting the case
where resolve_MemberName returns quickly due to the requested signature not
being known to exist anywhere in the VM (the class we're resolving into
is loaded
and all signatures that can exist should be known). In these cases the
linkResolver
isn't even called and MHN_resolve_Mem returns empty(). Thus explaining
why we
are hitting the if (speculative_resolve) in MHN_resolve_Mem so often and
confuse
everyone.
Thus for a certain type of speculative resolve, it seems we're actually
down to
throwing no exceptions at all, now.
/Claes
>
> Thanks,
> David
More information about the core-libs-dev
mailing list