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