Lines Matching refs:ISD
483 int ISD = TLI->InstructionOpcodeToISD(Opcode); in getCastInstrCost() local
484 assert(ISD && "Invalid opcode"); in getCastInstrCost()
523 {ISD::SIGN_EXTEND, MVT::i32, MVT::i16, 0}, in getCastInstrCost()
524 {ISD::ZERO_EXTEND, MVT::i32, MVT::i16, 0}, in getCastInstrCost()
525 {ISD::SIGN_EXTEND, MVT::i32, MVT::i8, 0}, in getCastInstrCost()
526 {ISD::ZERO_EXTEND, MVT::i32, MVT::i8, 0}, in getCastInstrCost()
527 {ISD::SIGN_EXTEND, MVT::i16, MVT::i8, 0}, in getCastInstrCost()
528 {ISD::ZERO_EXTEND, MVT::i16, MVT::i8, 0}, in getCastInstrCost()
529 {ISD::SIGN_EXTEND, MVT::i64, MVT::i32, 1}, in getCastInstrCost()
530 {ISD::ZERO_EXTEND, MVT::i64, MVT::i32, 1}, in getCastInstrCost()
531 {ISD::SIGN_EXTEND, MVT::i64, MVT::i16, 1}, in getCastInstrCost()
532 {ISD::ZERO_EXTEND, MVT::i64, MVT::i16, 1}, in getCastInstrCost()
533 {ISD::SIGN_EXTEND, MVT::i64, MVT::i8, 1}, in getCastInstrCost()
534 {ISD::ZERO_EXTEND, MVT::i64, MVT::i8, 1}, in getCastInstrCost()
537 LoadConversionTbl, ISD, DstTy.getSimpleVT(), SrcTy.getSimpleVT())) in getCastInstrCost()
541 {ISD::SIGN_EXTEND, MVT::v4i32, MVT::v4i16, 0}, in getCastInstrCost()
542 {ISD::ZERO_EXTEND, MVT::v4i32, MVT::v4i16, 0}, in getCastInstrCost()
543 {ISD::SIGN_EXTEND, MVT::v4i32, MVT::v4i8, 0}, in getCastInstrCost()
544 {ISD::ZERO_EXTEND, MVT::v4i32, MVT::v4i8, 0}, in getCastInstrCost()
545 {ISD::SIGN_EXTEND, MVT::v8i16, MVT::v8i8, 0}, in getCastInstrCost()
546 {ISD::ZERO_EXTEND, MVT::v8i16, MVT::v8i8, 0}, in getCastInstrCost()
550 {ISD::SIGN_EXTEND, MVT::v8i32, MVT::v8i16, 1}, in getCastInstrCost()
551 {ISD::ZERO_EXTEND, MVT::v8i32, MVT::v8i16, 1}, in getCastInstrCost()
552 {ISD::SIGN_EXTEND, MVT::v16i32, MVT::v16i8, 3}, in getCastInstrCost()
553 {ISD::ZERO_EXTEND, MVT::v16i32, MVT::v16i8, 3}, in getCastInstrCost()
554 {ISD::SIGN_EXTEND, MVT::v16i16, MVT::v16i8, 1}, in getCastInstrCost()
555 {ISD::ZERO_EXTEND, MVT::v16i16, MVT::v16i8, 1}, in getCastInstrCost()
559 ConvertCostTableLookup(MVELoadConversionTbl, ISD, in getCastInstrCost()
566 {ISD::FP_EXTEND, MVT::v4f32, MVT::v4f16, 1}, in getCastInstrCost()
567 {ISD::FP_EXTEND, MVT::v8f32, MVT::v8f16, 3}, in getCastInstrCost()
571 ConvertCostTableLookup(MVEFLoadConversionTbl, ISD, in getCastInstrCost()
578 {ISD::TRUNCATE, MVT::v4i32, MVT::v4i16, 0}, in getCastInstrCost()
579 {ISD::TRUNCATE, MVT::v4i32, MVT::v4i8, 0}, in getCastInstrCost()
580 {ISD::TRUNCATE, MVT::v8i16, MVT::v8i8, 0}, in getCastInstrCost()
581 {ISD::TRUNCATE, MVT::v8i32, MVT::v8i16, 1}, in getCastInstrCost()
582 {ISD::TRUNCATE, MVT::v8i32, MVT::v8i8, 1}, in getCastInstrCost()
583 {ISD::TRUNCATE, MVT::v16i32, MVT::v16i8, 3}, in getCastInstrCost()
584 {ISD::TRUNCATE, MVT::v16i16, MVT::v16i8, 1}, in getCastInstrCost()
588 ConvertCostTableLookup(MVEStoreConversionTbl, ISD, in getCastInstrCost()
594 {ISD::FP_ROUND, MVT::v4f32, MVT::v4f16, 1}, in getCastInstrCost()
595 {ISD::FP_ROUND, MVT::v8f32, MVT::v8f16, 3}, in getCastInstrCost()
599 ConvertCostTableLookup(MVEFStoreConversionTbl, ISD, in getCastInstrCost()
606 if ((ISD == ISD::SIGN_EXTEND || ISD == ISD::ZERO_EXTEND) && in getCastInstrCost()
610 { ISD::ADD, MVT::v4i32, MVT::v4i16, 0 }, in getCastInstrCost()
611 { ISD::ADD, MVT::v8i16, MVT::v8i8, 0 }, in getCastInstrCost()
613 { ISD::SUB, MVT::v4i32, MVT::v4i16, 0 }, in getCastInstrCost()
614 { ISD::SUB, MVT::v8i16, MVT::v8i8, 0 }, in getCastInstrCost()
616 { ISD::MUL, MVT::v4i32, MVT::v4i16, 0 }, in getCastInstrCost()
617 { ISD::MUL, MVT::v8i16, MVT::v8i8, 0 }, in getCastInstrCost()
619 { ISD::SHL, MVT::v4i32, MVT::v4i16, 0 }, in getCastInstrCost()
620 { ISD::SHL, MVT::v8i16, MVT::v8i8, 0 }, in getCastInstrCost()
634 ((ISD == ISD::FP_ROUND && SrcTy.getScalarType() == MVT::f64 && in getCastInstrCost()
636 (ISD == ISD::FP_EXTEND && SrcTy.getScalarType() == MVT::f32 && in getCastInstrCost()
640 {ISD::FP_ROUND, MVT::v2f64, 2}, in getCastInstrCost()
641 {ISD::FP_EXTEND, MVT::v2f32, 2}, in getCastInstrCost()
642 {ISD::FP_EXTEND, MVT::v4f32, 4}}; in getCastInstrCost()
645 if (const auto *Entry = CostTableLookup(NEONFltDblTbl, ISD, LT.second)) in getCastInstrCost()
653 { ISD::SIGN_EXTEND, MVT::v4i32, MVT::v4i16, 1 }, in getCastInstrCost()
654 { ISD::ZERO_EXTEND, MVT::v4i32, MVT::v4i16, 1 }, in getCastInstrCost()
655 { ISD::SIGN_EXTEND, MVT::v2i64, MVT::v2i32, 1 }, in getCastInstrCost()
656 { ISD::ZERO_EXTEND, MVT::v2i64, MVT::v2i32, 1 }, in getCastInstrCost()
657 { ISD::TRUNCATE, MVT::v4i32, MVT::v4i64, 0 }, in getCastInstrCost()
658 { ISD::TRUNCATE, MVT::v4i16, MVT::v4i32, 1 }, in getCastInstrCost()
661 { ISD::SIGN_EXTEND, MVT::v8i16, MVT::v8i8, 1 }, in getCastInstrCost()
662 { ISD::ZERO_EXTEND, MVT::v8i16, MVT::v8i8, 1 }, in getCastInstrCost()
663 { ISD::SIGN_EXTEND, MVT::v4i32, MVT::v4i8, 2 }, in getCastInstrCost()
664 { ISD::ZERO_EXTEND, MVT::v4i32, MVT::v4i8, 2 }, in getCastInstrCost()
665 { ISD::SIGN_EXTEND, MVT::v2i64, MVT::v2i8, 3 }, in getCastInstrCost()
666 { ISD::ZERO_EXTEND, MVT::v2i64, MVT::v2i8, 3 }, in getCastInstrCost()
667 { ISD::SIGN_EXTEND, MVT::v2i64, MVT::v2i16, 2 }, in getCastInstrCost()
668 { ISD::ZERO_EXTEND, MVT::v2i64, MVT::v2i16, 2 }, in getCastInstrCost()
669 { ISD::SIGN_EXTEND, MVT::v4i64, MVT::v4i16, 3 }, in getCastInstrCost()
670 { ISD::ZERO_EXTEND, MVT::v4i64, MVT::v4i16, 3 }, in getCastInstrCost()
671 { ISD::SIGN_EXTEND, MVT::v8i32, MVT::v8i8, 3 }, in getCastInstrCost()
672 { ISD::ZERO_EXTEND, MVT::v8i32, MVT::v8i8, 3 }, in getCastInstrCost()
673 { ISD::SIGN_EXTEND, MVT::v8i64, MVT::v8i8, 7 }, in getCastInstrCost()
674 { ISD::ZERO_EXTEND, MVT::v8i64, MVT::v8i8, 7 }, in getCastInstrCost()
675 { ISD::SIGN_EXTEND, MVT::v8i64, MVT::v8i16, 6 }, in getCastInstrCost()
676 { ISD::ZERO_EXTEND, MVT::v8i64, MVT::v8i16, 6 }, in getCastInstrCost()
677 { ISD::SIGN_EXTEND, MVT::v16i32, MVT::v16i8, 6 }, in getCastInstrCost()
678 { ISD::ZERO_EXTEND, MVT::v16i32, MVT::v16i8, 6 }, in getCastInstrCost()
681 { ISD::TRUNCATE, MVT::v16i8, MVT::v16i32, 6 }, in getCastInstrCost()
682 { ISD::TRUNCATE, MVT::v8i8, MVT::v8i32, 3 }, in getCastInstrCost()
685 { ISD::SINT_TO_FP, MVT::v4f32, MVT::v4i32, 1 }, in getCastInstrCost()
686 { ISD::UINT_TO_FP, MVT::v4f32, MVT::v4i32, 1 }, in getCastInstrCost()
688 { ISD::SINT_TO_FP, MVT::v2f32, MVT::v2i8, 3 }, in getCastInstrCost()
689 { ISD::UINT_TO_FP, MVT::v2f32, MVT::v2i8, 3 }, in getCastInstrCost()
690 { ISD::SINT_TO_FP, MVT::v2f32, MVT::v2i16, 2 }, in getCastInstrCost()
691 { ISD::UINT_TO_FP, MVT::v2f32, MVT::v2i16, 2 }, in getCastInstrCost()
692 { ISD::SINT_TO_FP, MVT::v2f32, MVT::v2i32, 1 }, in getCastInstrCost()
693 { ISD::UINT_TO_FP, MVT::v2f32, MVT::v2i32, 1 }, in getCastInstrCost()
694 { ISD::SINT_TO_FP, MVT::v4f32, MVT::v4i1, 3 }, in getCastInstrCost()
695 { ISD::UINT_TO_FP, MVT::v4f32, MVT::v4i1, 3 }, in getCastInstrCost()
696 { ISD::SINT_TO_FP, MVT::v4f32, MVT::v4i8, 3 }, in getCastInstrCost()
697 { ISD::UINT_TO_FP, MVT::v4f32, MVT::v4i8, 3 }, in getCastInstrCost()
698 { ISD::SINT_TO_FP, MVT::v4f32, MVT::v4i16, 2 }, in getCastInstrCost()
699 { ISD::UINT_TO_FP, MVT::v4f32, MVT::v4i16, 2 }, in getCastInstrCost()
700 { ISD::SINT_TO_FP, MVT::v8f32, MVT::v8i16, 4 }, in getCastInstrCost()
701 { ISD::UINT_TO_FP, MVT::v8f32, MVT::v8i16, 4 }, in getCastInstrCost()
702 { ISD::SINT_TO_FP, MVT::v8f32, MVT::v8i32, 2 }, in getCastInstrCost()
703 { ISD::UINT_TO_FP, MVT::v8f32, MVT::v8i32, 2 }, in getCastInstrCost()
704 { ISD::SINT_TO_FP, MVT::v16f32, MVT::v16i16, 8 }, in getCastInstrCost()
705 { ISD::UINT_TO_FP, MVT::v16f32, MVT::v16i16, 8 }, in getCastInstrCost()
706 { ISD::SINT_TO_FP, MVT::v16f32, MVT::v16i32, 4 }, in getCastInstrCost()
707 { ISD::UINT_TO_FP, MVT::v16f32, MVT::v16i32, 4 }, in getCastInstrCost()
709 { ISD::FP_TO_SINT, MVT::v4i32, MVT::v4f32, 1 }, in getCastInstrCost()
710 { ISD::FP_TO_UINT, MVT::v4i32, MVT::v4f32, 1 }, in getCastInstrCost()
711 { ISD::FP_TO_SINT, MVT::v4i8, MVT::v4f32, 3 }, in getCastInstrCost()
712 { ISD::FP_TO_UINT, MVT::v4i8, MVT::v4f32, 3 }, in getCastInstrCost()
713 { ISD::FP_TO_SINT, MVT::v4i16, MVT::v4f32, 2 }, in getCastInstrCost()
714 { ISD::FP_TO_UINT, MVT::v4i16, MVT::v4f32, 2 }, in getCastInstrCost()
717 { ISD::SINT_TO_FP, MVT::v2f64, MVT::v2i32, 2 }, in getCastInstrCost()
718 { ISD::UINT_TO_FP, MVT::v2f64, MVT::v2i32, 2 }, in getCastInstrCost()
720 { ISD::SINT_TO_FP, MVT::v2f64, MVT::v2i8, 4 }, in getCastInstrCost()
721 { ISD::UINT_TO_FP, MVT::v2f64, MVT::v2i8, 4 }, in getCastInstrCost()
722 { ISD::SINT_TO_FP, MVT::v2f64, MVT::v2i16, 3 }, in getCastInstrCost()
723 { ISD::UINT_TO_FP, MVT::v2f64, MVT::v2i16, 3 }, in getCastInstrCost()
724 { ISD::SINT_TO_FP, MVT::v2f64, MVT::v2i32, 2 }, in getCastInstrCost()
725 { ISD::UINT_TO_FP, MVT::v2f64, MVT::v2i32, 2 }, in getCastInstrCost()
727 { ISD::FP_TO_SINT, MVT::v2i32, MVT::v2f64, 2 }, in getCastInstrCost()
728 { ISD::FP_TO_UINT, MVT::v2i32, MVT::v2f64, 2 }, in getCastInstrCost()
729 { ISD::FP_TO_SINT, MVT::v8i16, MVT::v8f32, 4 }, in getCastInstrCost()
730 { ISD::FP_TO_UINT, MVT::v8i16, MVT::v8f32, 4 }, in getCastInstrCost()
731 { ISD::FP_TO_SINT, MVT::v16i16, MVT::v16f32, 8 }, in getCastInstrCost()
732 { ISD::FP_TO_UINT, MVT::v16i16, MVT::v16f32, 8 } in getCastInstrCost()
736 if (const auto *Entry = ConvertCostTableLookup(NEONVectorConversionTbl, ISD, in getCastInstrCost()
744 { ISD::FP_TO_SINT, MVT::i1, MVT::f32, 2 }, in getCastInstrCost()
745 { ISD::FP_TO_UINT, MVT::i1, MVT::f32, 2 }, in getCastInstrCost()
746 { ISD::FP_TO_SINT, MVT::i1, MVT::f64, 2 }, in getCastInstrCost()
747 { ISD::FP_TO_UINT, MVT::i1, MVT::f64, 2 }, in getCastInstrCost()
748 { ISD::FP_TO_SINT, MVT::i8, MVT::f32, 2 }, in getCastInstrCost()
749 { ISD::FP_TO_UINT, MVT::i8, MVT::f32, 2 }, in getCastInstrCost()
750 { ISD::FP_TO_SINT, MVT::i8, MVT::f64, 2 }, in getCastInstrCost()
751 { ISD::FP_TO_UINT, MVT::i8, MVT::f64, 2 }, in getCastInstrCost()
752 { ISD::FP_TO_SINT, MVT::i16, MVT::f32, 2 }, in getCastInstrCost()
753 { ISD::FP_TO_UINT, MVT::i16, MVT::f32, 2 }, in getCastInstrCost()
754 { ISD::FP_TO_SINT, MVT::i16, MVT::f64, 2 }, in getCastInstrCost()
755 { ISD::FP_TO_UINT, MVT::i16, MVT::f64, 2 }, in getCastInstrCost()
756 { ISD::FP_TO_SINT, MVT::i32, MVT::f32, 2 }, in getCastInstrCost()
757 { ISD::FP_TO_UINT, MVT::i32, MVT::f32, 2 }, in getCastInstrCost()
758 { ISD::FP_TO_SINT, MVT::i32, MVT::f64, 2 }, in getCastInstrCost()
759 { ISD::FP_TO_UINT, MVT::i32, MVT::f64, 2 }, in getCastInstrCost()
760 { ISD::FP_TO_SINT, MVT::i64, MVT::f32, 10 }, in getCastInstrCost()
761 { ISD::FP_TO_UINT, MVT::i64, MVT::f32, 10 }, in getCastInstrCost()
762 { ISD::FP_TO_SINT, MVT::i64, MVT::f64, 10 }, in getCastInstrCost()
763 { ISD::FP_TO_UINT, MVT::i64, MVT::f64, 10 } in getCastInstrCost()
766 if (const auto *Entry = ConvertCostTableLookup(NEONFloatConversionTbl, ISD, in getCastInstrCost()
774 { ISD::SINT_TO_FP, MVT::f32, MVT::i1, 2 }, in getCastInstrCost()
775 { ISD::UINT_TO_FP, MVT::f32, MVT::i1, 2 }, in getCastInstrCost()
776 { ISD::SINT_TO_FP, MVT::f64, MVT::i1, 2 }, in getCastInstrCost()
777 { ISD::UINT_TO_FP, MVT::f64, MVT::i1, 2 }, in getCastInstrCost()
778 { ISD::SINT_TO_FP, MVT::f32, MVT::i8, 2 }, in getCastInstrCost()
779 { ISD::UINT_TO_FP, MVT::f32, MVT::i8, 2 }, in getCastInstrCost()
780 { ISD::SINT_TO_FP, MVT::f64, MVT::i8, 2 }, in getCastInstrCost()
781 { ISD::UINT_TO_FP, MVT::f64, MVT::i8, 2 }, in getCastInstrCost()
782 { ISD::SINT_TO_FP, MVT::f32, MVT::i16, 2 }, in getCastInstrCost()
783 { ISD::UINT_TO_FP, MVT::f32, MVT::i16, 2 }, in getCastInstrCost()
784 { ISD::SINT_TO_FP, MVT::f64, MVT::i16, 2 }, in getCastInstrCost()
785 { ISD::UINT_TO_FP, MVT::f64, MVT::i16, 2 }, in getCastInstrCost()
786 { ISD::SINT_TO_FP, MVT::f32, MVT::i32, 2 }, in getCastInstrCost()
787 { ISD::UINT_TO_FP, MVT::f32, MVT::i32, 2 }, in getCastInstrCost()
788 { ISD::SINT_TO_FP, MVT::f64, MVT::i32, 2 }, in getCastInstrCost()
789 { ISD::UINT_TO_FP, MVT::f64, MVT::i32, 2 }, in getCastInstrCost()
790 { ISD::SINT_TO_FP, MVT::f32, MVT::i64, 10 }, in getCastInstrCost()
791 { ISD::UINT_TO_FP, MVT::f32, MVT::i64, 10 }, in getCastInstrCost()
792 { ISD::SINT_TO_FP, MVT::f64, MVT::i64, 10 }, in getCastInstrCost()
793 { ISD::UINT_TO_FP, MVT::f64, MVT::i64, 10 } in getCastInstrCost()
798 ISD, DstTy.getSimpleVT(), in getCastInstrCost()
807 { ISD::SIGN_EXTEND, MVT::v8i16, MVT::v8i8, 1 }, in getCastInstrCost()
808 { ISD::ZERO_EXTEND, MVT::v8i16, MVT::v8i8, 1 }, in getCastInstrCost()
809 { ISD::SIGN_EXTEND, MVT::v4i32, MVT::v4i8, 2 }, in getCastInstrCost()
810 { ISD::ZERO_EXTEND, MVT::v4i32, MVT::v4i8, 2 }, in getCastInstrCost()
811 { ISD::SIGN_EXTEND, MVT::v2i64, MVT::v2i8, 10 }, in getCastInstrCost()
812 { ISD::ZERO_EXTEND, MVT::v2i64, MVT::v2i8, 2 }, in getCastInstrCost()
813 { ISD::SIGN_EXTEND, MVT::v4i32, MVT::v4i16, 1 }, in getCastInstrCost()
814 { ISD::ZERO_EXTEND, MVT::v4i32, MVT::v4i16, 1 }, in getCastInstrCost()
815 { ISD::SIGN_EXTEND, MVT::v2i64, MVT::v2i16, 10 }, in getCastInstrCost()
816 { ISD::ZERO_EXTEND, MVT::v2i64, MVT::v2i16, 2 }, in getCastInstrCost()
817 { ISD::SIGN_EXTEND, MVT::v2i64, MVT::v2i32, 8 }, in getCastInstrCost()
818 { ISD::ZERO_EXTEND, MVT::v2i64, MVT::v2i32, 2 }, in getCastInstrCost()
823 ISD, DstTy.getSimpleVT(), in getCastInstrCost()
828 if (ISD == ISD::FP_ROUND || ISD == ISD::FP_EXTEND) { in getCastInstrCost()
844 if (ISD == ISD::TRUNCATE && ST->hasMVEIntegerOps() && in getCastInstrCost()
859 { ISD::SIGN_EXTEND, MVT::i64, MVT::i16, 2 }, in getCastInstrCost()
862 { ISD::TRUNCATE, MVT::i32, MVT::i64, 0 }, in getCastInstrCost()
863 { ISD::TRUNCATE, MVT::i16, MVT::i64, 0 }, in getCastInstrCost()
864 { ISD::TRUNCATE, MVT::i8, MVT::i64, 0 }, in getCastInstrCost()
865 { ISD::TRUNCATE, MVT::i1, MVT::i64, 0 } in getCastInstrCost()
869 if (const auto *Entry = ConvertCostTableLookup(ARMIntegerConversionTbl, ISD, in getCastInstrCost()
926 int ISD = TLI->InstructionOpcodeToISD(Opcode); in getCmpSelInstrCost() local
929 if (CostKind == TTI::TCK_CodeSize && ISD == ISD::SELECT && in getCmpSelInstrCost()
999 if (ST->hasNEON() && ValTy->isVectorTy() && ISD == ISD::SELECT && CondTy) { in getCmpSelInstrCost()
1002 { ISD::SELECT, MVT::v4i1, MVT::v4i64, 4*4 + 1*2 + 1 }, in getCmpSelInstrCost()
1003 { ISD::SELECT, MVT::v8i1, MVT::v8i64, 50 }, in getCmpSelInstrCost()
1004 { ISD::SELECT, MVT::v16i1, MVT::v16i64, 100 } in getCmpSelInstrCost()
1010 if (const auto *Entry = ConvertCostTableLookup(NEONVectorSelectTbl, ISD, in getCmpSelInstrCost()
1230 {ISD::VECTOR_SHUFFLE, MVT::v2i32, 1}, in getShuffleCost()
1231 {ISD::VECTOR_SHUFFLE, MVT::v2f32, 1}, in getShuffleCost()
1232 {ISD::VECTOR_SHUFFLE, MVT::v2i64, 1}, in getShuffleCost()
1233 {ISD::VECTOR_SHUFFLE, MVT::v2f64, 1}, in getShuffleCost()
1234 {ISD::VECTOR_SHUFFLE, MVT::v4i16, 1}, in getShuffleCost()
1235 {ISD::VECTOR_SHUFFLE, MVT::v8i8, 1}, in getShuffleCost()
1237 {ISD::VECTOR_SHUFFLE, MVT::v4i32, 1}, in getShuffleCost()
1238 {ISD::VECTOR_SHUFFLE, MVT::v4f32, 1}, in getShuffleCost()
1239 {ISD::VECTOR_SHUFFLE, MVT::v8i16, 1}, in getShuffleCost()
1240 {ISD::VECTOR_SHUFFLE, MVT::v16i8, 1}}; in getShuffleCost()
1244 CostTableLookup(NEONDupTbl, ISD::VECTOR_SHUFFLE, LT.second)) in getShuffleCost()
1251 {ISD::VECTOR_SHUFFLE, MVT::v2i32, 1}, in getShuffleCost()
1252 {ISD::VECTOR_SHUFFLE, MVT::v2f32, 1}, in getShuffleCost()
1253 {ISD::VECTOR_SHUFFLE, MVT::v2i64, 1}, in getShuffleCost()
1254 {ISD::VECTOR_SHUFFLE, MVT::v2f64, 1}, in getShuffleCost()
1255 {ISD::VECTOR_SHUFFLE, MVT::v4i16, 1}, in getShuffleCost()
1256 {ISD::VECTOR_SHUFFLE, MVT::v8i8, 1}, in getShuffleCost()
1258 {ISD::VECTOR_SHUFFLE, MVT::v4i32, 2}, in getShuffleCost()
1259 {ISD::VECTOR_SHUFFLE, MVT::v4f32, 2}, in getShuffleCost()
1260 {ISD::VECTOR_SHUFFLE, MVT::v8i16, 2}, in getShuffleCost()
1261 {ISD::VECTOR_SHUFFLE, MVT::v16i8, 2}}; in getShuffleCost()
1265 CostTableLookup(NEONShuffleTbl, ISD::VECTOR_SHUFFLE, LT.second)) in getShuffleCost()
1274 {ISD::VECTOR_SHUFFLE, MVT::v2f32, 1}, in getShuffleCost()
1275 {ISD::VECTOR_SHUFFLE, MVT::v2i64, 1}, in getShuffleCost()
1276 {ISD::VECTOR_SHUFFLE, MVT::v2f64, 1}, in getShuffleCost()
1277 {ISD::VECTOR_SHUFFLE, MVT::v2i32, 1}, in getShuffleCost()
1279 {ISD::VECTOR_SHUFFLE, MVT::v4i32, 2}, in getShuffleCost()
1280 {ISD::VECTOR_SHUFFLE, MVT::v4f32, 2}, in getShuffleCost()
1281 {ISD::VECTOR_SHUFFLE, MVT::v4i16, 2}, in getShuffleCost()
1283 {ISD::VECTOR_SHUFFLE, MVT::v8i16, 16}, in getShuffleCost()
1285 {ISD::VECTOR_SHUFFLE, MVT::v16i8, 32}}; in getShuffleCost()
1289 ISD::VECTOR_SHUFFLE, LT.second)) in getShuffleCost()
1297 {ISD::VECTOR_SHUFFLE, MVT::v4i32, 1}, in getShuffleCost()
1298 {ISD::VECTOR_SHUFFLE, MVT::v8i16, 1}, in getShuffleCost()
1299 {ISD::VECTOR_SHUFFLE, MVT::v16i8, 1}, in getShuffleCost()
1300 {ISD::VECTOR_SHUFFLE, MVT::v4f32, 1}, in getShuffleCost()
1301 {ISD::VECTOR_SHUFFLE, MVT::v8f16, 1}}; in getShuffleCost()
1304 if (const auto *Entry = CostTableLookup(MVEDupTbl, ISD::VECTOR_SHUFFLE, in getShuffleCost()
1343 case ISD::AND: in getArithmeticInstrCost()
1344 case ISD::XOR: in getArithmeticInstrCost()
1346 case ISD::OR: in getArithmeticInstrCost()
1361 { ISD::SDIV, MVT::v1i64, 1 * FunctionCallDivCost}, in getArithmeticInstrCost()
1362 { ISD::UDIV, MVT::v1i64, 1 * FunctionCallDivCost}, in getArithmeticInstrCost()
1363 { ISD::SREM, MVT::v1i64, 1 * FunctionCallDivCost}, in getArithmeticInstrCost()
1364 { ISD::UREM, MVT::v1i64, 1 * FunctionCallDivCost}, in getArithmeticInstrCost()
1365 { ISD::SDIV, MVT::v2i32, 2 * FunctionCallDivCost}, in getArithmeticInstrCost()
1366 { ISD::UDIV, MVT::v2i32, 2 * FunctionCallDivCost}, in getArithmeticInstrCost()
1367 { ISD::SREM, MVT::v2i32, 2 * FunctionCallDivCost}, in getArithmeticInstrCost()
1368 { ISD::UREM, MVT::v2i32, 2 * FunctionCallDivCost}, in getArithmeticInstrCost()
1369 { ISD::SDIV, MVT::v4i16, ReciprocalDivCost}, in getArithmeticInstrCost()
1370 { ISD::UDIV, MVT::v4i16, ReciprocalDivCost}, in getArithmeticInstrCost()
1371 { ISD::SREM, MVT::v4i16, 4 * FunctionCallDivCost}, in getArithmeticInstrCost()
1372 { ISD::UREM, MVT::v4i16, 4 * FunctionCallDivCost}, in getArithmeticInstrCost()
1373 { ISD::SDIV, MVT::v8i8, ReciprocalDivCost}, in getArithmeticInstrCost()
1374 { ISD::UDIV, MVT::v8i8, ReciprocalDivCost}, in getArithmeticInstrCost()
1375 { ISD::SREM, MVT::v8i8, 8 * FunctionCallDivCost}, in getArithmeticInstrCost()
1376 { ISD::UREM, MVT::v8i8, 8 * FunctionCallDivCost}, in getArithmeticInstrCost()
1378 { ISD::SDIV, MVT::v2i64, 2 * FunctionCallDivCost}, in getArithmeticInstrCost()
1379 { ISD::UDIV, MVT::v2i64, 2 * FunctionCallDivCost}, in getArithmeticInstrCost()
1380 { ISD::SREM, MVT::v2i64, 2 * FunctionCallDivCost}, in getArithmeticInstrCost()
1381 { ISD::UREM, MVT::v2i64, 2 * FunctionCallDivCost}, in getArithmeticInstrCost()
1382 { ISD::SDIV, MVT::v4i32, 4 * FunctionCallDivCost}, in getArithmeticInstrCost()
1383 { ISD::UDIV, MVT::v4i32, 4 * FunctionCallDivCost}, in getArithmeticInstrCost()
1384 { ISD::SREM, MVT::v4i32, 4 * FunctionCallDivCost}, in getArithmeticInstrCost()
1385 { ISD::UREM, MVT::v4i32, 4 * FunctionCallDivCost}, in getArithmeticInstrCost()
1386 { ISD::SDIV, MVT::v8i16, 8 * FunctionCallDivCost}, in getArithmeticInstrCost()
1387 { ISD::UDIV, MVT::v8i16, 8 * FunctionCallDivCost}, in getArithmeticInstrCost()
1388 { ISD::SREM, MVT::v8i16, 8 * FunctionCallDivCost}, in getArithmeticInstrCost()
1389 { ISD::UREM, MVT::v8i16, 8 * FunctionCallDivCost}, in getArithmeticInstrCost()
1390 { ISD::SDIV, MVT::v16i8, 16 * FunctionCallDivCost}, in getArithmeticInstrCost()
1391 { ISD::UDIV, MVT::v16i8, 16 * FunctionCallDivCost}, in getArithmeticInstrCost()
1392 { ISD::SREM, MVT::v16i8, 16 * FunctionCallDivCost}, in getArithmeticInstrCost()
1393 { ISD::UREM, MVT::v16i8, 16 * FunctionCallDivCost}, in getArithmeticInstrCost()
1687 int ISD = TLI->InstructionOpcodeToISD(Opcode); in getArithmeticReductionCost() local
1693 if ((ISD == ISD::FADD || ISD == ISD::FMUL) && in getArithmeticReductionCost()
1722 if ((ISD == ISD::AND || ISD == ISD::OR || ISD == ISD::XOR) && in getArithmeticReductionCost()
1750 if (!ST->hasMVEIntegerOps() || !ValVT.isSimple() || ISD != ISD::ADD || in getArithmeticReductionCost()
1757 {ISD::ADD, MVT::v16i8, 1}, in getArithmeticReductionCost()
1758 {ISD::ADD, MVT::v8i16, 1}, in getArithmeticReductionCost()
1759 {ISD::ADD, MVT::v4i32, 1}, in getArithmeticReductionCost()
1761 if (const auto *Entry = CostTableLookup(CostTblAdd, ISD, LT.second)) in getArithmeticReductionCost()
1773 int ISD = TLI->InstructionOpcodeToISD(Opcode); in getExtendedReductionCost() local
1775 switch (ISD) { in getExtendedReductionCost()
1776 case ISD::ADD: in getExtendedReductionCost()
1877 {ISD::SMIN, MVT::v16i8, 4}, in getMinMaxReductionCost()
1878 {ISD::SMIN, MVT::v8i16, 3}, in getMinMaxReductionCost()
1879 {ISD::SMIN, MVT::v4i32, 2}, in getMinMaxReductionCost()
1881 if (const auto *Entry = CostTableLookup(CostTblAdd, ISD::SMIN, LT.second)) in getMinMaxReductionCost()
2056 unsigned ISD = TLI->InstructionOpcodeToISD(I.getOpcode()); in maybeLoweredToCall() local
2058 if (TLI->getOperationAction(ISD, VT) == TargetLowering::LibCall) in maybeLoweredToCall()
2099 switch (ISD) { in maybeLoweredToCall()
2102 case ISD::SDIV: in maybeLoweredToCall()
2103 case ISD::UDIV: in maybeLoweredToCall()
2104 case ISD::SREM: in maybeLoweredToCall()
2105 case ISD::UREM: in maybeLoweredToCall()
2106 case ISD::SDIVREM: in maybeLoweredToCall()
2107 case ISD::UDIVREM: in maybeLoweredToCall()