This commit is contained in:
Bharadwaj Yadavalli 2016-04-08 12:36:27 -04:00
commit 3d214817a2
2 changed files with 5 additions and 3 deletions

View File

@ -56,7 +56,7 @@ final class AESCrypt extends SymmetricCipher implements AESConstants
private boolean ROUNDS_14 = false; private boolean ROUNDS_14 = false;
/** Session and Sub keys */ /** Session and Sub keys */
private Object[] sessionK = null; private int[][] sessionK = null;
private int[] K = null; private int[] K = null;
/** Cipher encryption/decryption key */ /** Cipher encryption/decryption key */
@ -99,7 +99,7 @@ final class AESCrypt extends SymmetricCipher implements AESConstants
} }
// set sub key to the corresponding session Key // 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 @@ final class AESCrypt extends SymmetricCipher implements AESConstants
limit = ROUNDS*4; limit = ROUNDS*4;
// store the expanded sub keys into 'sessionK' // store the expanded sub keys into 'sessionK'
sessionK = new Object[] { expandedKe, expandedKd }; sessionK = new int[][] { expandedKe, expandedKd };
} }

View File

@ -655,6 +655,8 @@ class InvokerBytecodeGenerator {
mv.visitAnnotation(DONTINLINE_SIG, true); mv.visitAnnotation(DONTINLINE_SIG, true);
} }
constantPlaceholder(lambdaForm); // keep LambdaForm instance & its compiled form lifetime tightly coupled.
if (lambdaForm.customized != null) { if (lambdaForm.customized != null) {
// Since LambdaForm is customized for a particular MethodHandle, it's safe to substitute // 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. // receiver MethodHandle (at slot #0) with an embedded constant and use it instead.