< prev index next >

src/hotspot/share/opto/c2compiler.cpp

Print this page

771   case vmIntrinsics::_montgomeryMultiply:
772   case vmIntrinsics::_montgomerySquare:
773   case vmIntrinsics::_vectorizedMismatch:
774   case vmIntrinsics::_ghash_processBlocks:
775   case vmIntrinsics::_chacha20Block:
776   case vmIntrinsics::_base64_encodeBlock:
777   case vmIntrinsics::_base64_decodeBlock:
778   case vmIntrinsics::_poly1305_processBlocks:
779   case vmIntrinsics::_updateCRC32:
780   case vmIntrinsics::_updateBytesCRC32:
781   case vmIntrinsics::_updateByteBufferCRC32:
782   case vmIntrinsics::_updateBytesCRC32C:
783   case vmIntrinsics::_updateDirectByteBufferCRC32C:
784   case vmIntrinsics::_updateBytesAdler32:
785   case vmIntrinsics::_updateByteBufferAdler32:
786   case vmIntrinsics::_profileBoolean:
787   case vmIntrinsics::_isCompileConstant:
788   case vmIntrinsics::_Preconditions_checkIndex:
789   case vmIntrinsics::_Preconditions_checkLongIndex:
790   case vmIntrinsics::_getObjectSize:


791     break;
792   case vmIntrinsics::_VectorCompressExpand:
793   case vmIntrinsics::_VectorUnaryOp:
794   case vmIntrinsics::_VectorBinaryOp:
795   case vmIntrinsics::_VectorTernaryOp:
796   case vmIntrinsics::_VectorFromBitsCoerced:
797   case vmIntrinsics::_VectorShuffleIota:
798   case vmIntrinsics::_VectorShuffleToVector:
799   case vmIntrinsics::_VectorLoadOp:
800   case vmIntrinsics::_VectorLoadMaskedOp:
801   case vmIntrinsics::_VectorStoreOp:
802   case vmIntrinsics::_VectorStoreMaskedOp:
803   case vmIntrinsics::_VectorGatherOp:
804   case vmIntrinsics::_VectorScatterOp:
805   case vmIntrinsics::_VectorReductionCoerced:
806   case vmIntrinsics::_VectorTest:
807   case vmIntrinsics::_VectorBlend:
808   case vmIntrinsics::_VectorRearrange:
809   case vmIntrinsics::_VectorCompare:
810   case vmIntrinsics::_VectorBroadcastInt:
811   case vmIntrinsics::_VectorConvert:
812   case vmIntrinsics::_VectorInsert:
813   case vmIntrinsics::_VectorExtract:
814   case vmIntrinsics::_VectorMaskOp:
815   case vmIntrinsics::_IndexVector:
816   case vmIntrinsics::_IndexPartiallyInUpperRange:
817     return EnableVectorSupport;
818   case vmIntrinsics::_blackhole:
819 #if INCLUDE_JVMTI
820   case vmIntrinsics::_notifyJvmtiVThreadStart:
821   case vmIntrinsics::_notifyJvmtiVThreadEnd:
822   case vmIntrinsics::_notifyJvmtiVThreadMount:
823   case vmIntrinsics::_notifyJvmtiVThreadUnmount:
824   case vmIntrinsics::_notifyJvmtiVThreadHideFrames:
825 #endif
826     break;
827 



828   default:
829     return false;
830   }
831   return true;
832 }
833 
834 int C2Compiler::initial_code_buffer_size(int const_size) {
835   // See Compile::init_scratch_buffer_blob
836   int locs_size = sizeof(relocInfo) * PhaseOutput::MAX_locs_size;
837   int slop = 2 * CodeSection::end_slop(); // space between sections
838   return PhaseOutput::MAX_inst_size + PhaseOutput::MAX_stubs_size + const_size + slop + locs_size;
839 }

771   case vmIntrinsics::_montgomeryMultiply:
772   case vmIntrinsics::_montgomerySquare:
773   case vmIntrinsics::_vectorizedMismatch:
774   case vmIntrinsics::_ghash_processBlocks:
775   case vmIntrinsics::_chacha20Block:
776   case vmIntrinsics::_base64_encodeBlock:
777   case vmIntrinsics::_base64_decodeBlock:
778   case vmIntrinsics::_poly1305_processBlocks:
779   case vmIntrinsics::_updateCRC32:
780   case vmIntrinsics::_updateBytesCRC32:
781   case vmIntrinsics::_updateByteBufferCRC32:
782   case vmIntrinsics::_updateBytesCRC32C:
783   case vmIntrinsics::_updateDirectByteBufferCRC32C:
784   case vmIntrinsics::_updateBytesAdler32:
785   case vmIntrinsics::_updateByteBufferAdler32:
786   case vmIntrinsics::_profileBoolean:
787   case vmIntrinsics::_isCompileConstant:
788   case vmIntrinsics::_Preconditions_checkIndex:
789   case vmIntrinsics::_Preconditions_checkLongIndex:
790   case vmIntrinsics::_getObjectSize:
791   case vmIntrinsics::_shipilev_magic_sizeOf:
792   case vmIntrinsics::_shipilev_magic_addressOf:
793     break;
794   case vmIntrinsics::_VectorCompressExpand:
795   case vmIntrinsics::_VectorUnaryOp:
796   case vmIntrinsics::_VectorBinaryOp:
797   case vmIntrinsics::_VectorTernaryOp:
798   case vmIntrinsics::_VectorFromBitsCoerced:
799   case vmIntrinsics::_VectorShuffleIota:
800   case vmIntrinsics::_VectorShuffleToVector:
801   case vmIntrinsics::_VectorLoadOp:
802   case vmIntrinsics::_VectorLoadMaskedOp:
803   case vmIntrinsics::_VectorStoreOp:
804   case vmIntrinsics::_VectorStoreMaskedOp:
805   case vmIntrinsics::_VectorGatherOp:
806   case vmIntrinsics::_VectorScatterOp:
807   case vmIntrinsics::_VectorReductionCoerced:
808   case vmIntrinsics::_VectorTest:
809   case vmIntrinsics::_VectorBlend:
810   case vmIntrinsics::_VectorRearrange:
811   case vmIntrinsics::_VectorCompare:
812   case vmIntrinsics::_VectorBroadcastInt:
813   case vmIntrinsics::_VectorConvert:
814   case vmIntrinsics::_VectorInsert:
815   case vmIntrinsics::_VectorExtract:
816   case vmIntrinsics::_VectorMaskOp:
817   case vmIntrinsics::_IndexVector:
818   case vmIntrinsics::_IndexPartiallyInUpperRange:
819     return EnableVectorSupport;
820   case vmIntrinsics::_blackhole:
821 #if INCLUDE_JVMTI
822   case vmIntrinsics::_notifyJvmtiVThreadStart:
823   case vmIntrinsics::_notifyJvmtiVThreadEnd:
824   case vmIntrinsics::_notifyJvmtiVThreadMount:
825   case vmIntrinsics::_notifyJvmtiVThreadUnmount:
826   case vmIntrinsics::_notifyJvmtiVThreadHideFrames:
827 #endif
828     break;
829   case vmIntrinsics::_shipilev_magic_timestamp:
830     return Matcher::match_rule_supported(Op_Timestamp);
831   case vmIntrinsics::_shipilev_magic_timestamp_serial:
832     return Matcher::match_rule_supported(Op_TimestampSerial);
833   default:
834     return false;
835   }
836   return true;
837 }
838 
839 int C2Compiler::initial_code_buffer_size(int const_size) {
840   // See Compile::init_scratch_buffer_blob
841   int locs_size = sizeof(relocInfo) * PhaseOutput::MAX_locs_size;
842   int slop = 2 * CodeSection::end_slop(); // space between sections
843   return PhaseOutput::MAX_inst_size + PhaseOutput::MAX_stubs_size + const_size + slop + locs_size;
844 }
< prev index next >