review request (M): 7056328: JSR 292 invocation sometimes fails in adapters for types not on boot class path

Tom Rodriguez tom.rodriguez at oracle.com
Wed Jun 22 23:11:59 PDT 2011


Overall this looks good.  It's unfortunate we have to jump through so many hoops for this.  What's with these new constants?

+    ETF_FORCE_DIRECT_HANDLE   = 64,
+    ETF_COMPILE_DIRECT_HANDLE = 65,

Are they used over in the JDK side?

tom

On Jun 22, 2011, at 5:37 PM, John Rose wrote:

> This is a possible fix for a JSR 292 bug in JDK 7.
> 
> http://cr.openjdk.java.net/~jrose/7056328/webrev.00/
> 
> Bytecodes produced by MethodHandleWalk will incorrectly scope names off the boot class path.  The fix is to specially process the constant pool of such bytecodes, by "pre-resolving" the affected entries.
> 
> The fix includes new stress test logic (debug build only) for running every method handle created through MHW and the JIT.
> 
> http://cr.openjdk.java.net/~jrose/7056328/webrev.00/
> 
> Testing so far:
> - JDK regression tests with and without the new stress modes
> - Tom's local tests (on previous version)
> - fixes customer problem (Ola Bini's NoClassDefFound error)
> 



More information about the hotspot-compiler-dev mailing list