RFR: 8165492: Reduce number of lambda forms generated by MethodHandleInlineCopyStrategy

Aleksey Shipilev shade at redhat.com
Thu Sep 8 20:33:46 UTC 2016

On 09/08/2016 11:31 PM, Paul Sandoz wrote:
>> On 8 Sep 2016, at 12:37, Claes Redestad <claes.redestad at oracle.com> wrote:
>>>> On 09/08/2016 09:21 PM, Paul Sandoz wrote:
>>>> Did you consider replacing the if block with an assert? presumably if
>>>> it is non-zero it is an internal error?
>>> The original check was to guard against Unsafe.allocateUnitializedArray
>>> usage, and so I would like to keep the code that checks the index
>>> unconditionally. asserts can be disabled.
>> I have been down the road of trying to make this an assertion to get
>> rid of the LF shapes and was dissuaded.
>> Having found another (better?) way to get rid of the startup cost of
>> having this check my concerns are resolved. Also, dropping the check
>> entirely from this patch doesn't show a significant improvement on
>> micros (at least for C2).
> Ok, but is the IllegalStateException the right type to throw? should it be InternalError instead?

Yes, InternalError should be more fitting. This should indicate a fatal
bug in JDK.


More information about the core-libs-dev mailing list