< prev index next >

src/hotspot/share/opto/c2compiler.cpp

Print this page

748   case vmIntrinsics::_montgomeryMultiply:
749   case vmIntrinsics::_montgomerySquare:
750   case vmIntrinsics::_vectorizedMismatch:
751   case vmIntrinsics::_ghash_processBlocks:
752   case vmIntrinsics::_chacha20Block:
753   case vmIntrinsics::_base64_encodeBlock:
754   case vmIntrinsics::_base64_decodeBlock:
755   case vmIntrinsics::_poly1305_processBlocks:
756   case vmIntrinsics::_updateCRC32:
757   case vmIntrinsics::_updateBytesCRC32:
758   case vmIntrinsics::_updateByteBufferCRC32:
759   case vmIntrinsics::_updateBytesCRC32C:
760   case vmIntrinsics::_updateDirectByteBufferCRC32C:
761   case vmIntrinsics::_updateBytesAdler32:
762   case vmIntrinsics::_updateByteBufferAdler32:
763   case vmIntrinsics::_profileBoolean:
764   case vmIntrinsics::_isCompileConstant:
765   case vmIntrinsics::_Preconditions_checkIndex:
766   case vmIntrinsics::_Preconditions_checkLongIndex:
767   case vmIntrinsics::_getObjectSize:


768     break;
769   case vmIntrinsics::_VectorCompressExpand:
770   case vmIntrinsics::_VectorUnaryOp:
771   case vmIntrinsics::_VectorBinaryOp:
772   case vmIntrinsics::_VectorTernaryOp:
773   case vmIntrinsics::_VectorFromBitsCoerced:
774   case vmIntrinsics::_VectorShuffleIota:
775   case vmIntrinsics::_VectorShuffleToVector:
776   case vmIntrinsics::_VectorLoadOp:
777   case vmIntrinsics::_VectorLoadMaskedOp:
778   case vmIntrinsics::_VectorStoreOp:
779   case vmIntrinsics::_VectorStoreMaskedOp:
780   case vmIntrinsics::_VectorGatherOp:
781   case vmIntrinsics::_VectorScatterOp:
782   case vmIntrinsics::_VectorReductionCoerced:
783   case vmIntrinsics::_VectorTest:
784   case vmIntrinsics::_VectorBlend:
785   case vmIntrinsics::_VectorRearrange:
786   case vmIntrinsics::_VectorCompare:
787   case vmIntrinsics::_VectorBroadcastInt:
788   case vmIntrinsics::_VectorConvert:
789   case vmIntrinsics::_VectorInsert:
790   case vmIntrinsics::_VectorExtract:
791   case vmIntrinsics::_VectorMaskOp:
792   case vmIntrinsics::_IndexVector:
793   case vmIntrinsics::_IndexPartiallyInUpperRange:
794     return EnableVectorSupport;
795   case vmIntrinsics::_blackhole:
796 #if INCLUDE_JVMTI
797   case vmIntrinsics::_notifyJvmtiVThreadStart:
798   case vmIntrinsics::_notifyJvmtiVThreadEnd:
799   case vmIntrinsics::_notifyJvmtiVThreadMount:
800   case vmIntrinsics::_notifyJvmtiVThreadUnmount:
801   case vmIntrinsics::_notifyJvmtiVThreadHideFrames:
802 #endif
803     break;
804 



805   default:
806     return false;
807   }
808   return true;
809 }
810 
811 int C2Compiler::initial_code_buffer_size(int const_size) {
812   // See Compile::init_scratch_buffer_blob
813   int locs_size = sizeof(relocInfo) * PhaseOutput::MAX_locs_size;
814   int slop = 2 * CodeSection::end_slop(); // space between sections
815   return PhaseOutput::MAX_inst_size + PhaseOutput::MAX_stubs_size + const_size + slop + locs_size;
816 }

748   case vmIntrinsics::_montgomeryMultiply:
749   case vmIntrinsics::_montgomerySquare:
750   case vmIntrinsics::_vectorizedMismatch:
751   case vmIntrinsics::_ghash_processBlocks:
752   case vmIntrinsics::_chacha20Block:
753   case vmIntrinsics::_base64_encodeBlock:
754   case vmIntrinsics::_base64_decodeBlock:
755   case vmIntrinsics::_poly1305_processBlocks:
756   case vmIntrinsics::_updateCRC32:
757   case vmIntrinsics::_updateBytesCRC32:
758   case vmIntrinsics::_updateByteBufferCRC32:
759   case vmIntrinsics::_updateBytesCRC32C:
760   case vmIntrinsics::_updateDirectByteBufferCRC32C:
761   case vmIntrinsics::_updateBytesAdler32:
762   case vmIntrinsics::_updateByteBufferAdler32:
763   case vmIntrinsics::_profileBoolean:
764   case vmIntrinsics::_isCompileConstant:
765   case vmIntrinsics::_Preconditions_checkIndex:
766   case vmIntrinsics::_Preconditions_checkLongIndex:
767   case vmIntrinsics::_getObjectSize:
768   case vmIntrinsics::_shipilev_magic_sizeOf:
769   case vmIntrinsics::_shipilev_magic_addressOf:
770     break;
771   case vmIntrinsics::_VectorCompressExpand:
772   case vmIntrinsics::_VectorUnaryOp:
773   case vmIntrinsics::_VectorBinaryOp:
774   case vmIntrinsics::_VectorTernaryOp:
775   case vmIntrinsics::_VectorFromBitsCoerced:
776   case vmIntrinsics::_VectorShuffleIota:
777   case vmIntrinsics::_VectorShuffleToVector:
778   case vmIntrinsics::_VectorLoadOp:
779   case vmIntrinsics::_VectorLoadMaskedOp:
780   case vmIntrinsics::_VectorStoreOp:
781   case vmIntrinsics::_VectorStoreMaskedOp:
782   case vmIntrinsics::_VectorGatherOp:
783   case vmIntrinsics::_VectorScatterOp:
784   case vmIntrinsics::_VectorReductionCoerced:
785   case vmIntrinsics::_VectorTest:
786   case vmIntrinsics::_VectorBlend:
787   case vmIntrinsics::_VectorRearrange:
788   case vmIntrinsics::_VectorCompare:
789   case vmIntrinsics::_VectorBroadcastInt:
790   case vmIntrinsics::_VectorConvert:
791   case vmIntrinsics::_VectorInsert:
792   case vmIntrinsics::_VectorExtract:
793   case vmIntrinsics::_VectorMaskOp:
794   case vmIntrinsics::_IndexVector:
795   case vmIntrinsics::_IndexPartiallyInUpperRange:
796     return EnableVectorSupport;
797   case vmIntrinsics::_blackhole:
798 #if INCLUDE_JVMTI
799   case vmIntrinsics::_notifyJvmtiVThreadStart:
800   case vmIntrinsics::_notifyJvmtiVThreadEnd:
801   case vmIntrinsics::_notifyJvmtiVThreadMount:
802   case vmIntrinsics::_notifyJvmtiVThreadUnmount:
803   case vmIntrinsics::_notifyJvmtiVThreadHideFrames:
804 #endif
805     break;
806   case vmIntrinsics::_shipilev_magic_timestamp:
807     return Matcher::match_rule_supported(Op_Timestamp);
808   case vmIntrinsics::_shipilev_magic_timestamp_serial:
809     return Matcher::match_rule_supported(Op_TimestampSerial);
810   default:
811     return false;
812   }
813   return true;
814 }
815 
816 int C2Compiler::initial_code_buffer_size(int const_size) {
817   // See Compile::init_scratch_buffer_blob
818   int locs_size = sizeof(relocInfo) * PhaseOutput::MAX_locs_size;
819   int slop = 2 * CodeSection::end_slop(); // space between sections
820   return PhaseOutput::MAX_inst_size + PhaseOutput::MAX_stubs_size + const_size + slop + locs_size;
821 }
< prev index next >