--- old/src/hotspot/share/interpreter/templateInterpreterGenerator.cpp 2018-09-25 19:23:47.000000000 +0300 +++ new/src/hotspot/share/interpreter/templateInterpreterGenerator.cpp 2018-09-25 19:23:46.000000000 +0300 @@ -1,5 +1,6 @@ /* * Copyright (c) 1997, 2018, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2015-2018, Azul Systems, Inc. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -227,6 +228,29 @@ method_entry(java_lang_Double_longBitsToDouble); method_entry(java_lang_Double_doubleToRawLongBits); +#ifdef AARCH32 + if (UseAESIntrinsics) { + method_entry(com_sun_crypto_provider_AESCrypt_encryptBlock) + method_entry(com_sun_crypto_provider_AESCrypt_decryptBlock) + if (StubRoutines::cipherBlockChaining_encryptAESCrypt_special()) { + method_entry(com_sun_crypto_provider_CipherBlockChaining_encrypt) + } + if (StubRoutines::cipherBlockChaining_decryptAESCrypt_special()) { + method_entry(com_sun_crypto_provider_CipherBlockChaining_decrypt) + } + } + + if (UseSHA1Intrinsics) { + method_entry(sun_security_provider_SHA_implCompress) + } + if (UseSHA256Intrinsics) { + method_entry(sun_security_provider_SHA2_implCompress) + } + if (UseSHA512Intrinsics) { + method_entry(sun_security_provider_SHA5_implCompress) + } +#endif + #undef method_entry // Bytecodes @@ -460,6 +484,21 @@ native = true; break; #endif // !IA32 +#ifdef AARCH32 + case Interpreter::com_sun_crypto_provider_AESCrypt_encryptBlock: + case Interpreter::com_sun_crypto_provider_AESCrypt_decryptBlock: + entry_point = generate_aescrypt_block_entry(kind); + break; + case Interpreter::com_sun_crypto_provider_CipherBlockChaining_encrypt: + case Interpreter::com_sun_crypto_provider_CipherBlockChaining_decrypt: + // don't use AES CBC intrinsic in interpreter + break; + case Interpreter::sun_security_provider_SHA_implCompress: + case Interpreter::sun_security_provider_SHA2_implCompress: + case Interpreter::sun_security_provider_SHA5_implCompress: + entry_point = generate_SHA_implCompress_entry(kind); + break; +#endif default: fatal("unexpected method kind: %d", kind); break;