Lines Matching refs:MVT

490     return (EltVT == MVT::f32 && ST->hasVFP2Base()) ||  in getCastInstrCost()
491 (EltVT == MVT::f64 && ST->hasFP64()) || in getCastInstrCost()
492 (EltVT == MVT::f16 && ST->hasFullFP16()); in getCastInstrCost()
519 {ISD::SIGN_EXTEND, MVT::i32, MVT::i16, 0}, in getCastInstrCost()
520 {ISD::ZERO_EXTEND, MVT::i32, MVT::i16, 0}, in getCastInstrCost()
521 {ISD::SIGN_EXTEND, MVT::i32, MVT::i8, 0}, in getCastInstrCost()
522 {ISD::ZERO_EXTEND, MVT::i32, MVT::i8, 0}, in getCastInstrCost()
523 {ISD::SIGN_EXTEND, MVT::i16, MVT::i8, 0}, in getCastInstrCost()
524 {ISD::ZERO_EXTEND, MVT::i16, MVT::i8, 0}, in getCastInstrCost()
525 {ISD::SIGN_EXTEND, MVT::i64, MVT::i32, 1}, in getCastInstrCost()
526 {ISD::ZERO_EXTEND, MVT::i64, MVT::i32, 1}, in getCastInstrCost()
527 {ISD::SIGN_EXTEND, MVT::i64, MVT::i16, 1}, in getCastInstrCost()
528 {ISD::ZERO_EXTEND, MVT::i64, MVT::i16, 1}, in getCastInstrCost()
529 {ISD::SIGN_EXTEND, MVT::i64, MVT::i8, 1}, in getCastInstrCost()
530 {ISD::ZERO_EXTEND, MVT::i64, MVT::i8, 1}, in getCastInstrCost()
537 {ISD::SIGN_EXTEND, MVT::v4i32, MVT::v4i16, 0}, in getCastInstrCost()
538 {ISD::ZERO_EXTEND, MVT::v4i32, MVT::v4i16, 0}, in getCastInstrCost()
539 {ISD::SIGN_EXTEND, MVT::v4i32, MVT::v4i8, 0}, in getCastInstrCost()
540 {ISD::ZERO_EXTEND, MVT::v4i32, MVT::v4i8, 0}, in getCastInstrCost()
541 {ISD::SIGN_EXTEND, MVT::v8i16, MVT::v8i8, 0}, in getCastInstrCost()
542 {ISD::ZERO_EXTEND, MVT::v8i16, MVT::v8i8, 0}, in getCastInstrCost()
546 {ISD::SIGN_EXTEND, MVT::v8i32, MVT::v8i16, 1}, in getCastInstrCost()
547 {ISD::ZERO_EXTEND, MVT::v8i32, MVT::v8i16, 1}, in getCastInstrCost()
548 {ISD::SIGN_EXTEND, MVT::v16i32, MVT::v16i8, 3}, in getCastInstrCost()
549 {ISD::ZERO_EXTEND, MVT::v16i32, MVT::v16i8, 3}, in getCastInstrCost()
550 {ISD::SIGN_EXTEND, MVT::v16i16, MVT::v16i8, 1}, in getCastInstrCost()
551 {ISD::ZERO_EXTEND, MVT::v16i16, MVT::v16i8, 1}, in getCastInstrCost()
562 {ISD::FP_EXTEND, MVT::v4f32, MVT::v4f16, 1}, in getCastInstrCost()
563 {ISD::FP_EXTEND, MVT::v8f32, MVT::v8f16, 3}, in getCastInstrCost()
574 {ISD::TRUNCATE, MVT::v4i32, MVT::v4i16, 0}, in getCastInstrCost()
575 {ISD::TRUNCATE, MVT::v4i32, MVT::v4i8, 0}, in getCastInstrCost()
576 {ISD::TRUNCATE, MVT::v8i16, MVT::v8i8, 0}, in getCastInstrCost()
577 {ISD::TRUNCATE, MVT::v8i32, MVT::v8i16, 1}, in getCastInstrCost()
578 {ISD::TRUNCATE, MVT::v8i32, MVT::v8i8, 1}, in getCastInstrCost()
579 {ISD::TRUNCATE, MVT::v16i32, MVT::v16i8, 3}, in getCastInstrCost()
580 {ISD::TRUNCATE, MVT::v16i16, MVT::v16i8, 1}, in getCastInstrCost()
590 {ISD::FP_ROUND, MVT::v4f32, MVT::v4f16, 1}, in getCastInstrCost()
591 {ISD::FP_ROUND, MVT::v8f32, MVT::v8f16, 3}, in getCastInstrCost()
606 { ISD::ADD, MVT::v4i32, MVT::v4i16, 0 }, in getCastInstrCost()
607 { ISD::ADD, MVT::v8i16, MVT::v8i8, 0 }, in getCastInstrCost()
609 { ISD::SUB, MVT::v4i32, MVT::v4i16, 0 }, in getCastInstrCost()
610 { ISD::SUB, MVT::v8i16, MVT::v8i8, 0 }, in getCastInstrCost()
612 { ISD::MUL, MVT::v4i32, MVT::v4i16, 0 }, in getCastInstrCost()
613 { ISD::MUL, MVT::v8i16, MVT::v8i8, 0 }, in getCastInstrCost()
615 { ISD::SHL, MVT::v4i32, MVT::v4i16, 0 }, in getCastInstrCost()
616 { ISD::SHL, MVT::v8i16, MVT::v8i8, 0 }, in getCastInstrCost()
630 ((ISD == ISD::FP_ROUND && SrcTy.getScalarType() == MVT::f64 && in getCastInstrCost()
631 DstTy.getScalarType() == MVT::f32) || in getCastInstrCost()
632 (ISD == ISD::FP_EXTEND && SrcTy.getScalarType() == MVT::f32 && in getCastInstrCost()
633 DstTy.getScalarType() == MVT::f64))) { in getCastInstrCost()
636 {ISD::FP_ROUND, MVT::v2f64, 2}, in getCastInstrCost()
637 {ISD::FP_EXTEND, MVT::v2f32, 2}, in getCastInstrCost()
638 {ISD::FP_EXTEND, MVT::v4f32, 4}}; in getCastInstrCost()
640 std::pair<InstructionCost, MVT> LT = getTypeLegalizationCost(Src); in getCastInstrCost()
649 { ISD::SIGN_EXTEND, MVT::v4i32, MVT::v4i16, 1 }, in getCastInstrCost()
650 { ISD::ZERO_EXTEND, MVT::v4i32, MVT::v4i16, 1 }, in getCastInstrCost()
651 { ISD::SIGN_EXTEND, MVT::v2i64, MVT::v2i32, 1 }, in getCastInstrCost()
652 { ISD::ZERO_EXTEND, MVT::v2i64, MVT::v2i32, 1 }, in getCastInstrCost()
653 { ISD::TRUNCATE, MVT::v4i32, MVT::v4i64, 0 }, in getCastInstrCost()
654 { ISD::TRUNCATE, MVT::v4i16, MVT::v4i32, 1 }, in getCastInstrCost()
657 { ISD::SIGN_EXTEND, MVT::v8i16, MVT::v8i8, 1 }, in getCastInstrCost()
658 { ISD::ZERO_EXTEND, MVT::v8i16, MVT::v8i8, 1 }, in getCastInstrCost()
659 { ISD::SIGN_EXTEND, MVT::v4i32, MVT::v4i8, 2 }, in getCastInstrCost()
660 { ISD::ZERO_EXTEND, MVT::v4i32, MVT::v4i8, 2 }, in getCastInstrCost()
661 { ISD::SIGN_EXTEND, MVT::v2i64, MVT::v2i8, 3 }, in getCastInstrCost()
662 { ISD::ZERO_EXTEND, MVT::v2i64, MVT::v2i8, 3 }, in getCastInstrCost()
663 { ISD::SIGN_EXTEND, MVT::v2i64, MVT::v2i16, 2 }, in getCastInstrCost()
664 { ISD::ZERO_EXTEND, MVT::v2i64, MVT::v2i16, 2 }, in getCastInstrCost()
665 { ISD::SIGN_EXTEND, MVT::v4i64, MVT::v4i16, 3 }, in getCastInstrCost()
666 { ISD::ZERO_EXTEND, MVT::v4i64, MVT::v4i16, 3 }, in getCastInstrCost()
667 { ISD::SIGN_EXTEND, MVT::v8i32, MVT::v8i8, 3 }, in getCastInstrCost()
668 { ISD::ZERO_EXTEND, MVT::v8i32, MVT::v8i8, 3 }, in getCastInstrCost()
669 { ISD::SIGN_EXTEND, MVT::v8i64, MVT::v8i8, 7 }, in getCastInstrCost()
670 { ISD::ZERO_EXTEND, MVT::v8i64, MVT::v8i8, 7 }, in getCastInstrCost()
671 { ISD::SIGN_EXTEND, MVT::v8i64, MVT::v8i16, 6 }, in getCastInstrCost()
672 { ISD::ZERO_EXTEND, MVT::v8i64, MVT::v8i16, 6 }, in getCastInstrCost()
673 { ISD::SIGN_EXTEND, MVT::v16i32, MVT::v16i8, 6 }, in getCastInstrCost()
674 { ISD::ZERO_EXTEND, MVT::v16i32, MVT::v16i8, 6 }, in getCastInstrCost()
677 { ISD::TRUNCATE, MVT::v16i8, MVT::v16i32, 6 }, in getCastInstrCost()
678 { ISD::TRUNCATE, MVT::v8i8, MVT::v8i32, 3 }, in getCastInstrCost()
681 { ISD::SINT_TO_FP, MVT::v4f32, MVT::v4i32, 1 }, in getCastInstrCost()
682 { ISD::UINT_TO_FP, MVT::v4f32, MVT::v4i32, 1 }, in getCastInstrCost()
684 { ISD::SINT_TO_FP, MVT::v2f32, MVT::v2i8, 3 }, in getCastInstrCost()
685 { ISD::UINT_TO_FP, MVT::v2f32, MVT::v2i8, 3 }, in getCastInstrCost()
686 { ISD::SINT_TO_FP, MVT::v2f32, MVT::v2i16, 2 }, in getCastInstrCost()
687 { ISD::UINT_TO_FP, MVT::v2f32, MVT::v2i16, 2 }, in getCastInstrCost()
688 { ISD::SINT_TO_FP, MVT::v2f32, MVT::v2i32, 1 }, in getCastInstrCost()
689 { ISD::UINT_TO_FP, MVT::v2f32, MVT::v2i32, 1 }, in getCastInstrCost()
690 { ISD::SINT_TO_FP, MVT::v4f32, MVT::v4i1, 3 }, in getCastInstrCost()
691 { ISD::UINT_TO_FP, MVT::v4f32, MVT::v4i1, 3 }, in getCastInstrCost()
692 { ISD::SINT_TO_FP, MVT::v4f32, MVT::v4i8, 3 }, in getCastInstrCost()
693 { ISD::UINT_TO_FP, MVT::v4f32, MVT::v4i8, 3 }, in getCastInstrCost()
694 { ISD::SINT_TO_FP, MVT::v4f32, MVT::v4i16, 2 }, in getCastInstrCost()
695 { ISD::UINT_TO_FP, MVT::v4f32, MVT::v4i16, 2 }, in getCastInstrCost()
696 { ISD::SINT_TO_FP, MVT::v8f32, MVT::v8i16, 4 }, in getCastInstrCost()
697 { ISD::UINT_TO_FP, MVT::v8f32, MVT::v8i16, 4 }, in getCastInstrCost()
698 { ISD::SINT_TO_FP, MVT::v8f32, MVT::v8i32, 2 }, in getCastInstrCost()
699 { ISD::UINT_TO_FP, MVT::v8f32, MVT::v8i32, 2 }, in getCastInstrCost()
700 { ISD::SINT_TO_FP, MVT::v16f32, MVT::v16i16, 8 }, in getCastInstrCost()
701 { ISD::UINT_TO_FP, MVT::v16f32, MVT::v16i16, 8 }, in getCastInstrCost()
702 { ISD::SINT_TO_FP, MVT::v16f32, MVT::v16i32, 4 }, in getCastInstrCost()
703 { ISD::UINT_TO_FP, MVT::v16f32, MVT::v16i32, 4 }, in getCastInstrCost()
705 { ISD::FP_TO_SINT, MVT::v4i32, MVT::v4f32, 1 }, in getCastInstrCost()
706 { ISD::FP_TO_UINT, MVT::v4i32, MVT::v4f32, 1 }, in getCastInstrCost()
707 { ISD::FP_TO_SINT, MVT::v4i8, MVT::v4f32, 3 }, in getCastInstrCost()
708 { ISD::FP_TO_UINT, MVT::v4i8, MVT::v4f32, 3 }, in getCastInstrCost()
709 { ISD::FP_TO_SINT, MVT::v4i16, MVT::v4f32, 2 }, in getCastInstrCost()
710 { ISD::FP_TO_UINT, MVT::v4i16, MVT::v4f32, 2 }, in getCastInstrCost()
713 { ISD::SINT_TO_FP, MVT::v2f64, MVT::v2i32, 2 }, in getCastInstrCost()
714 { ISD::UINT_TO_FP, MVT::v2f64, MVT::v2i32, 2 }, in getCastInstrCost()
716 { ISD::SINT_TO_FP, MVT::v2f64, MVT::v2i8, 4 }, in getCastInstrCost()
717 { ISD::UINT_TO_FP, MVT::v2f64, MVT::v2i8, 4 }, in getCastInstrCost()
718 { ISD::SINT_TO_FP, MVT::v2f64, MVT::v2i16, 3 }, in getCastInstrCost()
719 { ISD::UINT_TO_FP, MVT::v2f64, MVT::v2i16, 3 }, in getCastInstrCost()
720 { ISD::SINT_TO_FP, MVT::v2f64, MVT::v2i32, 2 }, in getCastInstrCost()
721 { ISD::UINT_TO_FP, MVT::v2f64, MVT::v2i32, 2 }, in getCastInstrCost()
723 { ISD::FP_TO_SINT, MVT::v2i32, MVT::v2f64, 2 }, in getCastInstrCost()
724 { ISD::FP_TO_UINT, MVT::v2i32, MVT::v2f64, 2 }, in getCastInstrCost()
725 { ISD::FP_TO_SINT, MVT::v8i16, MVT::v8f32, 4 }, in getCastInstrCost()
726 { ISD::FP_TO_UINT, MVT::v8i16, MVT::v8f32, 4 }, in getCastInstrCost()
727 { ISD::FP_TO_SINT, MVT::v16i16, MVT::v16f32, 8 }, in getCastInstrCost()
728 { ISD::FP_TO_UINT, MVT::v16i16, MVT::v16f32, 8 } in getCastInstrCost()
740 { ISD::FP_TO_SINT, MVT::i1, MVT::f32, 2 }, in getCastInstrCost()
741 { ISD::FP_TO_UINT, MVT::i1, MVT::f32, 2 }, in getCastInstrCost()
742 { ISD::FP_TO_SINT, MVT::i1, MVT::f64, 2 }, in getCastInstrCost()
743 { ISD::FP_TO_UINT, MVT::i1, MVT::f64, 2 }, in getCastInstrCost()
744 { ISD::FP_TO_SINT, MVT::i8, MVT::f32, 2 }, in getCastInstrCost()
745 { ISD::FP_TO_UINT, MVT::i8, MVT::f32, 2 }, in getCastInstrCost()
746 { ISD::FP_TO_SINT, MVT::i8, MVT::f64, 2 }, in getCastInstrCost()
747 { ISD::FP_TO_UINT, MVT::i8, MVT::f64, 2 }, in getCastInstrCost()
748 { ISD::FP_TO_SINT, MVT::i16, MVT::f32, 2 }, in getCastInstrCost()
749 { ISD::FP_TO_UINT, MVT::i16, MVT::f32, 2 }, in getCastInstrCost()
750 { ISD::FP_TO_SINT, MVT::i16, MVT::f64, 2 }, in getCastInstrCost()
751 { ISD::FP_TO_UINT, MVT::i16, MVT::f64, 2 }, in getCastInstrCost()
752 { ISD::FP_TO_SINT, MVT::i32, MVT::f32, 2 }, in getCastInstrCost()
753 { ISD::FP_TO_UINT, MVT::i32, MVT::f32, 2 }, in getCastInstrCost()
754 { ISD::FP_TO_SINT, MVT::i32, MVT::f64, 2 }, in getCastInstrCost()
755 { ISD::FP_TO_UINT, MVT::i32, MVT::f64, 2 }, in getCastInstrCost()
756 { ISD::FP_TO_SINT, MVT::i64, MVT::f32, 10 }, in getCastInstrCost()
757 { ISD::FP_TO_UINT, MVT::i64, MVT::f32, 10 }, in getCastInstrCost()
758 { ISD::FP_TO_SINT, MVT::i64, MVT::f64, 10 }, in getCastInstrCost()
759 { ISD::FP_TO_UINT, MVT::i64, MVT::f64, 10 } in getCastInstrCost()
770 { ISD::SINT_TO_FP, MVT::f32, MVT::i1, 2 }, in getCastInstrCost()
771 { ISD::UINT_TO_FP, MVT::f32, MVT::i1, 2 }, in getCastInstrCost()
772 { ISD::SINT_TO_FP, MVT::f64, MVT::i1, 2 }, in getCastInstrCost()
773 { ISD::UINT_TO_FP, MVT::f64, MVT::i1, 2 }, in getCastInstrCost()
774 { ISD::SINT_TO_FP, MVT::f32, MVT::i8, 2 }, in getCastInstrCost()
775 { ISD::UINT_TO_FP, MVT::f32, MVT::i8, 2 }, in getCastInstrCost()
776 { ISD::SINT_TO_FP, MVT::f64, MVT::i8, 2 }, in getCastInstrCost()
777 { ISD::UINT_TO_FP, MVT::f64, MVT::i8, 2 }, in getCastInstrCost()
778 { ISD::SINT_TO_FP, MVT::f32, MVT::i16, 2 }, in getCastInstrCost()
779 { ISD::UINT_TO_FP, MVT::f32, MVT::i16, 2 }, in getCastInstrCost()
780 { ISD::SINT_TO_FP, MVT::f64, MVT::i16, 2 }, in getCastInstrCost()
781 { ISD::UINT_TO_FP, MVT::f64, MVT::i16, 2 }, in getCastInstrCost()
782 { ISD::SINT_TO_FP, MVT::f32, MVT::i32, 2 }, in getCastInstrCost()
783 { ISD::UINT_TO_FP, MVT::f32, MVT::i32, 2 }, in getCastInstrCost()
784 { ISD::SINT_TO_FP, MVT::f64, MVT::i32, 2 }, in getCastInstrCost()
785 { ISD::UINT_TO_FP, MVT::f64, MVT::i32, 2 }, in getCastInstrCost()
786 { ISD::SINT_TO_FP, MVT::f32, MVT::i64, 10 }, in getCastInstrCost()
787 { ISD::UINT_TO_FP, MVT::f32, MVT::i64, 10 }, in getCastInstrCost()
788 { ISD::SINT_TO_FP, MVT::f64, MVT::i64, 10 }, in getCastInstrCost()
789 { ISD::UINT_TO_FP, MVT::f64, MVT::i64, 10 } in getCastInstrCost()
803 { ISD::SIGN_EXTEND, MVT::v8i16, MVT::v8i8, 1 }, in getCastInstrCost()
804 { ISD::ZERO_EXTEND, MVT::v8i16, MVT::v8i8, 1 }, in getCastInstrCost()
805 { ISD::SIGN_EXTEND, MVT::v4i32, MVT::v4i8, 2 }, in getCastInstrCost()
806 { ISD::ZERO_EXTEND, MVT::v4i32, MVT::v4i8, 2 }, in getCastInstrCost()
807 { ISD::SIGN_EXTEND, MVT::v2i64, MVT::v2i8, 10 }, in getCastInstrCost()
808 { ISD::ZERO_EXTEND, MVT::v2i64, MVT::v2i8, 2 }, in getCastInstrCost()
809 { ISD::SIGN_EXTEND, MVT::v4i32, MVT::v4i16, 1 }, in getCastInstrCost()
810 { ISD::ZERO_EXTEND, MVT::v4i32, MVT::v4i16, 1 }, in getCastInstrCost()
811 { ISD::SIGN_EXTEND, MVT::v2i64, MVT::v2i16, 10 }, in getCastInstrCost()
812 { ISD::ZERO_EXTEND, MVT::v2i64, MVT::v2i16, 2 }, in getCastInstrCost()
813 { ISD::SIGN_EXTEND, MVT::v2i64, MVT::v2i32, 8 }, in getCastInstrCost()
814 { ISD::ZERO_EXTEND, MVT::v2i64, MVT::v2i32, 2 }, in getCastInstrCost()
844 if ((SrcTy.getScalarType() == MVT::i8 || in getCastInstrCost()
845 SrcTy.getScalarType() == MVT::i16 || in getCastInstrCost()
846 SrcTy.getScalarType() == MVT::i32) && in getCastInstrCost()
855 { ISD::SIGN_EXTEND, MVT::i64, MVT::i16, 2 }, in getCastInstrCost()
858 { ISD::TRUNCATE, MVT::i32, MVT::i64, 0 }, in getCastInstrCost()
859 { ISD::TRUNCATE, MVT::i16, MVT::i64, 0 }, in getCastInstrCost()
860 { ISD::TRUNCATE, MVT::i8, MVT::i64, 0 }, in getCastInstrCost()
861 { ISD::TRUNCATE, MVT::i1, MVT::i64, 0 } in getCastInstrCost()
909 std::pair<InstructionCost, MVT> LT = in getVectorInstrCost()
928 if (TLI->getValueType(DL, ValTy, true) == MVT::Other) in getCmpSelInstrCost()
998 { ISD::SELECT, MVT::v4i1, MVT::v4i64, 4*4 + 1*2 + 1 }, in getCmpSelInstrCost()
999 { ISD::SELECT, MVT::v8i1, MVT::v8i64, 50 }, in getCmpSelInstrCost()
1000 { ISD::SELECT, MVT::v16i1, MVT::v16i64, 100 } in getCmpSelInstrCost()
1012 std::pair<InstructionCost, MVT> LT = getTypeLegalizationCost(ValTy); in getCmpSelInstrCost()
1038 std::pair<InstructionCost, MVT> LT = getTypeLegalizationCost(ValTy); in getCmpSelInstrCost()
1221 {ISD::VECTOR_SHUFFLE, MVT::v2i32, 1}, in getShuffleCost()
1222 {ISD::VECTOR_SHUFFLE, MVT::v2f32, 1}, in getShuffleCost()
1223 {ISD::VECTOR_SHUFFLE, MVT::v2i64, 1}, in getShuffleCost()
1224 {ISD::VECTOR_SHUFFLE, MVT::v2f64, 1}, in getShuffleCost()
1225 {ISD::VECTOR_SHUFFLE, MVT::v4i16, 1}, in getShuffleCost()
1226 {ISD::VECTOR_SHUFFLE, MVT::v8i8, 1}, in getShuffleCost()
1228 {ISD::VECTOR_SHUFFLE, MVT::v4i32, 1}, in getShuffleCost()
1229 {ISD::VECTOR_SHUFFLE, MVT::v4f32, 1}, in getShuffleCost()
1230 {ISD::VECTOR_SHUFFLE, MVT::v8i16, 1}, in getShuffleCost()
1231 {ISD::VECTOR_SHUFFLE, MVT::v16i8, 1}}; in getShuffleCost()
1233 std::pair<InstructionCost, MVT> LT = getTypeLegalizationCost(Tp); in getShuffleCost()
1242 {ISD::VECTOR_SHUFFLE, MVT::v2i32, 1}, in getShuffleCost()
1243 {ISD::VECTOR_SHUFFLE, MVT::v2f32, 1}, in getShuffleCost()
1244 {ISD::VECTOR_SHUFFLE, MVT::v2i64, 1}, in getShuffleCost()
1245 {ISD::VECTOR_SHUFFLE, MVT::v2f64, 1}, in getShuffleCost()
1246 {ISD::VECTOR_SHUFFLE, MVT::v4i16, 1}, in getShuffleCost()
1247 {ISD::VECTOR_SHUFFLE, MVT::v8i8, 1}, in getShuffleCost()
1249 {ISD::VECTOR_SHUFFLE, MVT::v4i32, 2}, in getShuffleCost()
1250 {ISD::VECTOR_SHUFFLE, MVT::v4f32, 2}, in getShuffleCost()
1251 {ISD::VECTOR_SHUFFLE, MVT::v8i16, 2}, in getShuffleCost()
1252 {ISD::VECTOR_SHUFFLE, MVT::v16i8, 2}}; in getShuffleCost()
1254 std::pair<InstructionCost, MVT> LT = getTypeLegalizationCost(Tp); in getShuffleCost()
1265 {ISD::VECTOR_SHUFFLE, MVT::v2f32, 1}, in getShuffleCost()
1266 {ISD::VECTOR_SHUFFLE, MVT::v2i64, 1}, in getShuffleCost()
1267 {ISD::VECTOR_SHUFFLE, MVT::v2f64, 1}, in getShuffleCost()
1268 {ISD::VECTOR_SHUFFLE, MVT::v2i32, 1}, in getShuffleCost()
1270 {ISD::VECTOR_SHUFFLE, MVT::v4i32, 2}, in getShuffleCost()
1271 {ISD::VECTOR_SHUFFLE, MVT::v4f32, 2}, in getShuffleCost()
1272 {ISD::VECTOR_SHUFFLE, MVT::v4i16, 2}, in getShuffleCost()
1274 {ISD::VECTOR_SHUFFLE, MVT::v8i16, 16}, in getShuffleCost()
1276 {ISD::VECTOR_SHUFFLE, MVT::v16i8, 32}}; in getShuffleCost()
1278 std::pair<InstructionCost, MVT> LT = getTypeLegalizationCost(Tp); in getShuffleCost()
1288 {ISD::VECTOR_SHUFFLE, MVT::v4i32, 1}, in getShuffleCost()
1289 {ISD::VECTOR_SHUFFLE, MVT::v8i16, 1}, in getShuffleCost()
1290 {ISD::VECTOR_SHUFFLE, MVT::v16i8, 1}, in getShuffleCost()
1291 {ISD::VECTOR_SHUFFLE, MVT::v4f32, 1}, in getShuffleCost()
1292 {ISD::VECTOR_SHUFFLE, MVT::v8f16, 1}}; in getShuffleCost()
1294 std::pair<InstructionCost, MVT> LT = getTypeLegalizationCost(Tp); in getShuffleCost()
1302 std::pair<InstructionCost, MVT> LT = getTypeLegalizationCost(Tp); in getShuffleCost()
1339 std::pair<InstructionCost, MVT> LT = getTypeLegalizationCost(Ty); in getArithmeticInstrCost()
1349 { ISD::SDIV, MVT::v1i64, 1 * FunctionCallDivCost}, in getArithmeticInstrCost()
1350 { ISD::UDIV, MVT::v1i64, 1 * FunctionCallDivCost}, in getArithmeticInstrCost()
1351 { ISD::SREM, MVT::v1i64, 1 * FunctionCallDivCost}, in getArithmeticInstrCost()
1352 { ISD::UREM, MVT::v1i64, 1 * FunctionCallDivCost}, in getArithmeticInstrCost()
1353 { ISD::SDIV, MVT::v2i32, 2 * FunctionCallDivCost}, in getArithmeticInstrCost()
1354 { ISD::UDIV, MVT::v2i32, 2 * FunctionCallDivCost}, in getArithmeticInstrCost()
1355 { ISD::SREM, MVT::v2i32, 2 * FunctionCallDivCost}, in getArithmeticInstrCost()
1356 { ISD::UREM, MVT::v2i32, 2 * FunctionCallDivCost}, in getArithmeticInstrCost()
1357 { ISD::SDIV, MVT::v4i16, ReciprocalDivCost}, in getArithmeticInstrCost()
1358 { ISD::UDIV, MVT::v4i16, ReciprocalDivCost}, in getArithmeticInstrCost()
1359 { ISD::SREM, MVT::v4i16, 4 * FunctionCallDivCost}, in getArithmeticInstrCost()
1360 { ISD::UREM, MVT::v4i16, 4 * FunctionCallDivCost}, in getArithmeticInstrCost()
1361 { ISD::SDIV, MVT::v8i8, ReciprocalDivCost}, in getArithmeticInstrCost()
1362 { ISD::UDIV, MVT::v8i8, ReciprocalDivCost}, in getArithmeticInstrCost()
1363 { ISD::SREM, MVT::v8i8, 8 * FunctionCallDivCost}, in getArithmeticInstrCost()
1364 { ISD::UREM, MVT::v8i8, 8 * FunctionCallDivCost}, in getArithmeticInstrCost()
1366 { ISD::SDIV, MVT::v2i64, 2 * FunctionCallDivCost}, in getArithmeticInstrCost()
1367 { ISD::UDIV, MVT::v2i64, 2 * FunctionCallDivCost}, in getArithmeticInstrCost()
1368 { ISD::SREM, MVT::v2i64, 2 * FunctionCallDivCost}, in getArithmeticInstrCost()
1369 { ISD::UREM, MVT::v2i64, 2 * FunctionCallDivCost}, in getArithmeticInstrCost()
1370 { ISD::SDIV, MVT::v4i32, 4 * FunctionCallDivCost}, in getArithmeticInstrCost()
1371 { ISD::UDIV, MVT::v4i32, 4 * FunctionCallDivCost}, in getArithmeticInstrCost()
1372 { ISD::SREM, MVT::v4i32, 4 * FunctionCallDivCost}, in getArithmeticInstrCost()
1373 { ISD::UREM, MVT::v4i32, 4 * FunctionCallDivCost}, in getArithmeticInstrCost()
1374 { ISD::SDIV, MVT::v8i16, 8 * FunctionCallDivCost}, in getArithmeticInstrCost()
1375 { ISD::UDIV, MVT::v8i16, 8 * FunctionCallDivCost}, in getArithmeticInstrCost()
1376 { ISD::SREM, MVT::v8i16, 8 * FunctionCallDivCost}, in getArithmeticInstrCost()
1377 { ISD::UREM, MVT::v8i16, 8 * FunctionCallDivCost}, in getArithmeticInstrCost()
1378 { ISD::SDIV, MVT::v16i8, 16 * FunctionCallDivCost}, in getArithmeticInstrCost()
1379 { ISD::UDIV, MVT::v16i8, 16 * FunctionCallDivCost}, in getArithmeticInstrCost()
1380 { ISD::SREM, MVT::v16i8, 16 * FunctionCallDivCost}, in getArithmeticInstrCost()
1381 { ISD::UREM, MVT::v16i8, 16 * FunctionCallDivCost}, in getArithmeticInstrCost()
1398 if (LT.second == MVT::v2i64 && Op2Info.isUniform() && Op2Info.isConstant()) in getArithmeticInstrCost()
1470 if (TLI->getValueType(DL, Src, true) == MVT::Other) in getMemoryOpCost()
1479 std::pair<InstructionCost, MVT> LT = getTypeLegalizationCost(Src); in getMemoryOpCost()
1580 std::pair<InstructionCost, MVT> LT = getTypeLegalizationCost(DataTy); in getGatherScatterOpCost()
1699 ValVT.getVectorElementType() == MVT::f16 && NumElts == 8) { in getArithmeticReductionCost()
1702 } else if (ValVT.getVectorElementType() == MVT::f16) in getArithmeticReductionCost()
1742 std::pair<InstructionCost, MVT> LT = getTypeLegalizationCost(ValTy); in getArithmeticReductionCost()
1745 {ISD::ADD, MVT::v16i8, 1}, in getArithmeticReductionCost()
1746 {ISD::ADD, MVT::v8i16, 1}, in getArithmeticReductionCost()
1747 {ISD::ADD, MVT::v4i32, 1}, in getArithmeticReductionCost()
1766 std::pair<InstructionCost, MVT> LT = getTypeLegalizationCost(ValTy); in getExtendedReductionCost()
1776 ((LT.second == MVT::v16i8 && RevVTSize <= 32) || in getExtendedReductionCost()
1777 (LT.second == MVT::v8i16 && RevVTSize <= 32) || in getExtendedReductionCost()
1778 (LT.second == MVT::v4i32 && RevVTSize <= 64))) in getExtendedReductionCost()
1797 std::pair<InstructionCost, MVT> LT = getTypeLegalizationCost(ValTy); in getMulAccReductionCost()
1807 ((LT.second == MVT::v16i8 && RevVTSize <= 32) || in getMulAccReductionCost()
1808 (LT.second == MVT::v8i16 && RevVTSize <= 64) || in getMulAccReductionCost()
1809 (LT.second == MVT::v4i32 && RevVTSize <= 64))) in getMulAccReductionCost()
1826 ((ValVT.getVectorElementType() == MVT::f32 && ST->hasVFP2Base()) || in getMinMaxReductionCost()
1827 (ValVT.getVectorElementType() == MVT::f64 && ST->hasFP64()) || in getMinMaxReductionCost()
1828 (ValVT.getVectorElementType() == MVT::f16 && ST->hasFullFP16()))) { in getMinMaxReductionCost()
1843 if (ST->hasMVEFloatOps() && ValVT.getVectorElementType() == MVT::f16 && in getMinMaxReductionCost()
1847 } else if (ValVT.getVectorElementType() == MVT::f16) in getMinMaxReductionCost()
1859 std::pair<InstructionCost, MVT> LT = getTypeLegalizationCost(Ty); in getMinMaxReductionCost()
1865 {ISD::SMIN, MVT::v16i8, 4}, in getMinMaxReductionCost()
1866 {ISD::SMIN, MVT::v8i16, 3}, in getMinMaxReductionCost()
1867 {ISD::SMIN, MVT::v4i32, 2}, in getMinMaxReductionCost()
1899 std::pair<InstructionCost, MVT> LT = getTypeLegalizationCost(VT); in getIntrinsicInstrCost()
1900 if (LT.second == MVT::v4i32 || LT.second == MVT::v8i16 || in getIntrinsicInstrCost()
1901 LT.second == MVT::v16i8) { in getIntrinsicInstrCost()
1919 std::pair<InstructionCost, MVT> LT = getTypeLegalizationCost(VT); in getIntrinsicInstrCost()
1920 if (LT.second == MVT::v4i32 || LT.second == MVT::v8i16 || in getIntrinsicInstrCost()
1921 LT.second == MVT::v16i8) in getIntrinsicInstrCost()
1930 std::pair<InstructionCost, MVT> LT = getTypeLegalizationCost(VT); in getIntrinsicInstrCost()
1931 if (LT.second == MVT::v4f32 || LT.second == MVT::v8f16) in getIntrinsicInstrCost()
1943 if ((ST->hasVFP2Base() && LT.second == MVT::f32 && MTy == MVT::i32) || in getIntrinsicInstrCost()
1944 (ST->hasFP64() && LT.second == MVT::f64 && MTy == MVT::i32) || in getIntrinsicInstrCost()
1945 (ST->hasFullFP16() && LT.second == MVT::f16 && MTy == MVT::i32)) in getIntrinsicInstrCost()
1950 (LT.second == MVT::v4f32 || LT.second == MVT::v8f16) && in getIntrinsicInstrCost()
1955 if (((ST->hasVFP2Base() && LT.second == MVT::f32) || in getIntrinsicInstrCost()
1956 (ST->hasFP64() && LT.second == MVT::f64) || in getIntrinsicInstrCost()
1957 (ST->hasFullFP16() && LT.second == MVT::f16) || in getIntrinsicInstrCost()
1959 (LT.second == MVT::v4f32 || LT.second == MVT::v8f16))) && in getIntrinsicInstrCost()