# HG changeset patch # User bharadwaj # Date 1460133387 14400 # Node ID 75e0bcdcc5bc4df664fa6ba68686b2dd99866eb7 # Parent 820fef956a152e5a72a7b62a651413354dfc90fc# Parent f218fd1bb19efab38fb1b3bca7c630102f964f25 Merge diff -r 820fef956a15 -r 75e0bcdcc5bc jdk/src/java.base/share/classes/com/sun/crypto/provider/AESCrypt.java --- a/jdk/src/java.base/share/classes/com/sun/crypto/provider/AESCrypt.java Thu Apr 07 10:03:48 2016 -0700 +++ b/jdk/src/java.base/share/classes/com/sun/crypto/provider/AESCrypt.java Fri Apr 08 12:36:27 2016 -0400 @@ -56,7 +56,7 @@ private boolean ROUNDS_14 = false; /** Session and Sub keys */ - private Object[] sessionK = null; + private int[][] sessionK = null; private int[] K = null; /** Cipher encryption/decryption key */ @@ -99,7 +99,7 @@ } // set sub key to the corresponding session Key - this.K = (int[]) sessionK[(decrypting? 1:0)]; + this.K = sessionK[(decrypting? 1:0)]; } /** @@ -680,7 +680,7 @@ limit = ROUNDS*4; // store the expanded sub keys into 'sessionK' - sessionK = new Object[] { expandedKe, expandedKd }; + sessionK = new int[][] { expandedKe, expandedKd }; } diff -r 820fef956a15 -r 75e0bcdcc5bc jdk/src/java.base/share/classes/java/lang/invoke/InvokerBytecodeGenerator.java --- a/jdk/src/java.base/share/classes/java/lang/invoke/InvokerBytecodeGenerator.java Thu Apr 07 10:03:48 2016 -0700 +++ b/jdk/src/java.base/share/classes/java/lang/invoke/InvokerBytecodeGenerator.java Fri Apr 08 12:36:27 2016 -0400 @@ -655,6 +655,8 @@ mv.visitAnnotation(DONTINLINE_SIG, true); } + constantPlaceholder(lambdaForm); // keep LambdaForm instance & its compiled form lifetime tightly coupled. + if (lambdaForm.customized != null) { // Since LambdaForm is customized for a particular MethodHandle, it's safe to substitute // receiver MethodHandle (at slot #0) with an embedded constant and use it instead.