RFR 8166974: invokedynamic implementation should not wrap Errors

Paul Sandoz paul.sandoz at oracle.com
Tue Oct 18 00:09:13 UTC 2016


> On 17 Oct 2016, at 15:33, David Holmes <david.holmes at oracle.com> wrote:
> 
> Hi Paul,
> 
> Looking at hotspot changes only ...
> 
> On 15/10/2016 8:08 AM, Paul Sandoz wrote:
>> Hi,
>> 
>> Please review:
>> 
>>  http://cr.openjdk.java.net/~psandoz/jdk9/JDK-8166974-indy-errors-not-wrapped-jdk/webrev/
>>  http://cr.openjdk.java.net/~psandoz/jdk9/JDK-8166974-indy-errors-not-wrapped-hotspot/webrev/
> 
> src/share/vm/interpreter/linkResolver.cpp
> 
> Changes seem fine, but the existing tracing code - which was already somewhat incorrect - now appears even more incorrect. It either needs to be moved to after the return for the Error case - so that we really are going to throw BSME - or else two different trace statements are needed.
> 

Good catch. Updated in place.

http://cr.openjdk.java.net/~psandoz/jdk9/JDK-8166974-indy-errors-not-wrapped-hotspot/webrev/src/share/vm/interpreter/linkResolver.cpp.sdiff.html <http://cr.openjdk.java.net/~psandoz/jdk9/JDK-8166974-indy-errors-not-wrapped-hotspot/webrev/src/share/vm/interpreter/linkResolver.cpp.sdiff.html>

Given how CallSite behaves the VM wrapping in BSME is likely to be rare, i am unsure how it could actually occur.


> --
> 
> test/runtime/invokedynamic/BootstrapMethodErrorTest.java
> 
> 2  * Copyright (c) 2015, 2016 Oracle and/or its affiliates. All rights reserved.
> 
> Need comma after 2016.
> 

Updated.

Thanks,
Paul.

> Otherwise all good.
> 
> Thanks,
> David
> 


More information about the core-libs-dev mailing list