< prev index next >

src/hotspot/share/opto/c2compiler.cpp

Print this page

734   case vmIntrinsics::_montgomeryMultiply:
735   case vmIntrinsics::_montgomerySquare:
736   case vmIntrinsics::_bigIntegerRightShiftWorker:
737   case vmIntrinsics::_bigIntegerLeftShiftWorker:
738   case vmIntrinsics::_vectorizedMismatch:
739   case vmIntrinsics::_ghash_processBlocks:
740   case vmIntrinsics::_base64_encodeBlock:
741   case vmIntrinsics::_base64_decodeBlock:
742   case vmIntrinsics::_updateCRC32:
743   case vmIntrinsics::_updateBytesCRC32:
744   case vmIntrinsics::_updateByteBufferCRC32:
745   case vmIntrinsics::_updateBytesCRC32C:
746   case vmIntrinsics::_updateDirectByteBufferCRC32C:
747   case vmIntrinsics::_updateBytesAdler32:
748   case vmIntrinsics::_updateByteBufferAdler32:
749   case vmIntrinsics::_profileBoolean:
750   case vmIntrinsics::_isCompileConstant:
751   case vmIntrinsics::_Preconditions_checkIndex:
752   case vmIntrinsics::_Preconditions_checkLongIndex:
753   case vmIntrinsics::_getObjectSize:


754     break;
755 
756   case vmIntrinsics::_VectorCompressExpand:
757   case vmIntrinsics::_VectorUnaryOp:
758   case vmIntrinsics::_VectorBinaryOp:
759   case vmIntrinsics::_VectorTernaryOp:
760   case vmIntrinsics::_VectorFromBitsCoerced:
761   case vmIntrinsics::_VectorShuffleIota:
762   case vmIntrinsics::_VectorShuffleToVector:
763   case vmIntrinsics::_VectorLoadOp:
764   case vmIntrinsics::_VectorLoadMaskedOp:
765   case vmIntrinsics::_VectorStoreOp:
766   case vmIntrinsics::_VectorStoreMaskedOp:
767   case vmIntrinsics::_VectorGatherOp:
768   case vmIntrinsics::_VectorScatterOp:
769   case vmIntrinsics::_VectorReductionCoerced:
770   case vmIntrinsics::_VectorTest:
771   case vmIntrinsics::_VectorBlend:
772   case vmIntrinsics::_VectorRearrange:
773   case vmIntrinsics::_VectorCompare:
774   case vmIntrinsics::_VectorBroadcastInt:
775   case vmIntrinsics::_VectorConvert:
776   case vmIntrinsics::_VectorInsert:
777   case vmIntrinsics::_VectorExtract:
778   case vmIntrinsics::_VectorMaskOp:
779   case vmIntrinsics::_IndexVector:
780     return EnableVectorSupport;
781   case vmIntrinsics::_blackhole:
782     break;
783 



784   default:
785     return false;
786   }
787   return true;
788 }
789 
790 int C2Compiler::initial_code_buffer_size(int const_size) {
791   // See Compile::init_scratch_buffer_blob
792   int locs_size = sizeof(relocInfo) * PhaseOutput::MAX_locs_size;
793   int slop = 2 * CodeSection::end_slop(); // space between sections
794   return PhaseOutput::MAX_inst_size + PhaseOutput::MAX_stubs_size + const_size + slop + locs_size;
795 }

734   case vmIntrinsics::_montgomeryMultiply:
735   case vmIntrinsics::_montgomerySquare:
736   case vmIntrinsics::_bigIntegerRightShiftWorker:
737   case vmIntrinsics::_bigIntegerLeftShiftWorker:
738   case vmIntrinsics::_vectorizedMismatch:
739   case vmIntrinsics::_ghash_processBlocks:
740   case vmIntrinsics::_base64_encodeBlock:
741   case vmIntrinsics::_base64_decodeBlock:
742   case vmIntrinsics::_updateCRC32:
743   case vmIntrinsics::_updateBytesCRC32:
744   case vmIntrinsics::_updateByteBufferCRC32:
745   case vmIntrinsics::_updateBytesCRC32C:
746   case vmIntrinsics::_updateDirectByteBufferCRC32C:
747   case vmIntrinsics::_updateBytesAdler32:
748   case vmIntrinsics::_updateByteBufferAdler32:
749   case vmIntrinsics::_profileBoolean:
750   case vmIntrinsics::_isCompileConstant:
751   case vmIntrinsics::_Preconditions_checkIndex:
752   case vmIntrinsics::_Preconditions_checkLongIndex:
753   case vmIntrinsics::_getObjectSize:
754   case vmIntrinsics::_shipilev_magic_sizeOf:
755   case vmIntrinsics::_shipilev_magic_addressOf:
756     break;
757 
758   case vmIntrinsics::_VectorCompressExpand:
759   case vmIntrinsics::_VectorUnaryOp:
760   case vmIntrinsics::_VectorBinaryOp:
761   case vmIntrinsics::_VectorTernaryOp:
762   case vmIntrinsics::_VectorFromBitsCoerced:
763   case vmIntrinsics::_VectorShuffleIota:
764   case vmIntrinsics::_VectorShuffleToVector:
765   case vmIntrinsics::_VectorLoadOp:
766   case vmIntrinsics::_VectorLoadMaskedOp:
767   case vmIntrinsics::_VectorStoreOp:
768   case vmIntrinsics::_VectorStoreMaskedOp:
769   case vmIntrinsics::_VectorGatherOp:
770   case vmIntrinsics::_VectorScatterOp:
771   case vmIntrinsics::_VectorReductionCoerced:
772   case vmIntrinsics::_VectorTest:
773   case vmIntrinsics::_VectorBlend:
774   case vmIntrinsics::_VectorRearrange:
775   case vmIntrinsics::_VectorCompare:
776   case vmIntrinsics::_VectorBroadcastInt:
777   case vmIntrinsics::_VectorConvert:
778   case vmIntrinsics::_VectorInsert:
779   case vmIntrinsics::_VectorExtract:
780   case vmIntrinsics::_VectorMaskOp:
781   case vmIntrinsics::_IndexVector:
782     return EnableVectorSupport;
783   case vmIntrinsics::_blackhole:
784     break;
785   case vmIntrinsics::_shipilev_magic_timestamp:
786     return Matcher::match_rule_supported(Op_Timestamp);
787   case vmIntrinsics::_shipilev_magic_timestamp_serial:
788     return Matcher::match_rule_supported(Op_TimestampSerial);
789   default:
790     return false;
791   }
792   return true;
793 }
794 
795 int C2Compiler::initial_code_buffer_size(int const_size) {
796   // See Compile::init_scratch_buffer_blob
797   int locs_size = sizeof(relocInfo) * PhaseOutput::MAX_locs_size;
798   int slop = 2 * CodeSection::end_slop(); // space between sections
799   return PhaseOutput::MAX_inst_size + PhaseOutput::MAX_stubs_size + const_size + slop + locs_size;
800 }
< prev index next >