<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div>I have reviews from Christian and Tom; thanks.</div><div><br></div><div>For more accurate tracking, I have split out some of the changes into a different bug,&nbsp;7054590:</div><div>&nbsp;&nbsp;<a href="http://cr.openjdk.java.net/~jrose/7054590/webrev.00">http://cr.openjdk.java.net/~jrose/7054590/webrev.00</a></div><div><br></div><div>The updated webrev for the remaining changes is here:</div><div>&nbsp;&nbsp;<a href="http://cr.openjdk.java.net/~jrose/7052202/webrev.jdk.01">http://cr.openjdk.java.net/~jrose/7052202/webrev.jdk.01</a></div><div><br></div><div>Please give it a quick re-review.</div><div><br></div><div>Besides the split, I also simplified the adjustment in&nbsp;MethodHandleImpl.java to the GWT transformations, as follows:</div><div><br></div><div><div><font class="Apple-style-span" face="'Lucida Sans Typewriter'">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; static boolean preferRicochetFrame(MethodType type) {</font></div><div><font class="Apple-style-span" face="'Lucida Sans Typewriter'">- &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;return (type.parameterCount() &gt;= INVOKES.length || type.hasPrimitives());</font></div><div><font class="Apple-style-span" face="'Lucida Sans Typewriter'">+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;return true; &nbsp;// always use RF if available</font></div><div><font class="Apple-style-span" face="'Lucida Sans Typewriter'">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; }</font></div></div><div><br></div><div>This particular simplification has been "soaking" in the mlvm-dev builds since 6/03.</div><div><br></div><div>-- John</div><br><div><div>On Jun 13, 2011, at 9:22 PM, John Rose wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div>These are the JDK-side fixes for several crashes in method handle adapters.<br> &nbsp;<a href="http://cr.openjdk.java.net/~jrose/7052202/webrev.jdk.00/">http://cr.openjdk.java.net/~jrose/7052202/webrev.jdk.00/</a><br><br>Summary of changes:<br> - correct parameters of some rotate (OP_ROT_ARGS) permutation adapters<br> - communicate the rotation convention with the JVM via OP_ROT_ARGS_DOWN_LIMIT_BIAS<br> - adjust code in MethodHandleImpl for GWT transformations<br> - fix typo in SwitchPoint javadoc<br> - fix non-compliant logic in MethodHandleProxies<br> - fix invalid private classes in MethodHandlesTest<br><br>7052202: JSR 292: Crash in sun.invoke.util.ValueConversions.fillArray<br>Summary: Fix corner cases involving MethodHandles.permuteArguments with long or double argument lists.<br><br>This bug also has a set of JVM-side fixes, which will also be posted for review. &nbsp;A preview may be found in the mlvm patch repository:<br> &nbsp;<a href="http://hg.openjdk.java.net/mlvm/mlvm/hotspot/file/tip/meth-rot-7052202.patch">http://hg.openjdk.java.net/mlvm/mlvm/hotspot/file/tip/meth-rot-7052202.patch</a><br><br>Both change sets are required to fix the bug. &nbsp;Either change set is safe to apply by itself, and will cause no regression.<br><br>Thanks,<br>-- John<br><br><br></div></blockquote></div><br></body></html>