[14] RFR (M) 8231515: [Graal] Crash during exception throwing in InterpreterRuntime::resolve_invoke

Vladimir Kozlov vladimir.kozlov at oracle.com
Fri Jan 17 23:12:15 UTC 2020


Looks good.

Only small nitpick is spacing of '\' in new line in vmStructs_jvmci.cpp. No need for new webrev.

Note for records, it was reviewed by Dean already in Graal's PR.

Thanks,
Vladimir

On 1/17/20 1:10 PM, Tom Rodriguez wrote:
> This fixes two separate but related issues. The primary crash is the JVMTI crash when using the post on exceptions 
> support. In that case we use a FrameState which isn't suitable for deopt and we will crash if that deopt is taken. The 
> second issue is related but more rare where our support for explicit exception throwing uses a stub that has a 
> FrameState which is also not suitable for deopt. It's more rare because deoptimization in that path is much less likely. 
> New logic was added to Graal to verify the FrameStates used for deopt which caught both of these problems. Minor changes 
> to JVMCI were made to expose information to Graal but there are no changes that would affect anything besides Graal. New 
> unit tests exercise these paths explicitly and local kitchensink testing of the fix inidicates that there were no more 
> crashes with Graal. preliminary mach5 testing against 15 was clean but mach5 testing against jdk 14 is in progress.
> 
> http://cr.openjdk.java.net/~never/8231515/webrev
> https://bugs.openjdk.java.net/browse/JDK-8231515


More information about the hotspot-compiler-dev mailing list