@@ -190,6 +190,10 @@ void C2Compiler::print_timers() {
190190
191191bool C2Compiler::is_intrinsic_supported (const methodHandle& method) {
192192 vmIntrinsics::ID id = method->intrinsic_id ();
193+ return C2Compiler::is_intrinsic_supported (id);
194+ }
195+
196+ bool C2Compiler::is_intrinsic_supported (vmIntrinsics::ID id) {
193197 assert (id != vmIntrinsics::_none, " must be a VM intrinsic" );
194198
195199 if (id < vmIntrinsics::FIRST_ID || id > vmIntrinsics::LAST_COMPILER_INLINE) {
@@ -225,6 +229,21 @@ bool C2Compiler::is_intrinsic_supported(const methodHandle& method) {
225229 case vmIntrinsics::_copyMemory:
226230 if (StubRoutines::unsafe_arraycopy () == nullptr ) return false ;
227231 break ;
232+ case vmIntrinsics::_electronicCodeBook_encryptAESCrypt:
233+ if (StubRoutines::electronicCodeBook_encryptAESCrypt () == nullptr ) return false ;
234+ break ;
235+ case vmIntrinsics::_electronicCodeBook_decryptAESCrypt:
236+ if (StubRoutines::electronicCodeBook_decryptAESCrypt () == nullptr ) return false ;
237+ break ;
238+ case vmIntrinsics::_galoisCounterMode_AESCrypt:
239+ if (StubRoutines::galoisCounterMode_AESCrypt () == nullptr ) return false ;
240+ break ;
241+ case vmIntrinsics::_bigIntegerRightShiftWorker:
242+ if (StubRoutines::bigIntegerRightShift () == nullptr ) return false ;
243+ break ;
244+ case vmIntrinsics::_bigIntegerLeftShiftWorker:
245+ if (StubRoutines::bigIntegerLeftShift () == nullptr ) return false ;
246+ break ;
228247 case vmIntrinsics::_encodeAsciiArray:
229248 if (!Matcher::match_rule_supported (Op_EncodeISOArray) || !Matcher::supports_encode_ascii_array) return false ;
230249 break ;
@@ -716,10 +735,7 @@ bool C2Compiler::is_intrinsic_supported(const methodHandle& method) {
716735 case vmIntrinsics::_aescrypt_decryptBlock:
717736 case vmIntrinsics::_cipherBlockChaining_encryptAESCrypt:
718737 case vmIntrinsics::_cipherBlockChaining_decryptAESCrypt:
719- case vmIntrinsics::_electronicCodeBook_encryptAESCrypt:
720- case vmIntrinsics::_electronicCodeBook_decryptAESCrypt:
721738 case vmIntrinsics::_counterMode_AESCrypt:
722- case vmIntrinsics::_galoisCounterMode_AESCrypt:
723739 case vmIntrinsics::_md5_implCompress:
724740 case vmIntrinsics::_sha_implCompress:
725741 case vmIntrinsics::_sha2_implCompress:
@@ -731,8 +747,6 @@ bool C2Compiler::is_intrinsic_supported(const methodHandle& method) {
731747 case vmIntrinsics::_mulAdd:
732748 case vmIntrinsics::_montgomeryMultiply:
733749 case vmIntrinsics::_montgomerySquare:
734- case vmIntrinsics::_bigIntegerRightShiftWorker:
735- case vmIntrinsics::_bigIntegerLeftShiftWorker:
736750 case vmIntrinsics::_vectorizedMismatch:
737751 case vmIntrinsics::_ghash_processBlocks:
738752 case vmIntrinsics::_chacha20Block:
@@ -752,7 +766,6 @@ bool C2Compiler::is_intrinsic_supported(const methodHandle& method) {
752766 case vmIntrinsics::_Preconditions_checkLongIndex:
753767 case vmIntrinsics::_getObjectSize:
754768 break ;
755-
756769 case vmIntrinsics::_VectorCompressExpand:
757770 case vmIntrinsics::_VectorUnaryOp:
758771 case vmIntrinsics::_VectorBinaryOp:
0 commit comments