Lines Matching refs:ISD
476 int ISD = TLI->InstructionOpcodeToISD(Opcode); in getCastInstrCost() local
477 assert(ISD && "Invalid opcode"); in getCastInstrCost()
516 {ISD::SIGN_EXTEND, MVT::i32, MVT::i16, 0}, in getCastInstrCost()
517 {ISD::ZERO_EXTEND, MVT::i32, MVT::i16, 0}, in getCastInstrCost()
518 {ISD::SIGN_EXTEND, MVT::i32, MVT::i8, 0}, in getCastInstrCost()
519 {ISD::ZERO_EXTEND, MVT::i32, MVT::i8, 0}, in getCastInstrCost()
520 {ISD::SIGN_EXTEND, MVT::i16, MVT::i8, 0}, in getCastInstrCost()
521 {ISD::ZERO_EXTEND, MVT::i16, MVT::i8, 0}, in getCastInstrCost()
522 {ISD::SIGN_EXTEND, MVT::i64, MVT::i32, 1}, in getCastInstrCost()
523 {ISD::ZERO_EXTEND, MVT::i64, MVT::i32, 1}, in getCastInstrCost()
524 {ISD::SIGN_EXTEND, MVT::i64, MVT::i16, 1}, in getCastInstrCost()
525 {ISD::ZERO_EXTEND, MVT::i64, MVT::i16, 1}, in getCastInstrCost()
526 {ISD::SIGN_EXTEND, MVT::i64, MVT::i8, 1}, in getCastInstrCost()
527 {ISD::ZERO_EXTEND, MVT::i64, MVT::i8, 1}, in getCastInstrCost()
530 LoadConversionTbl, ISD, DstTy.getSimpleVT(), SrcTy.getSimpleVT())) in getCastInstrCost()
534 {ISD::SIGN_EXTEND, MVT::v4i32, MVT::v4i16, 0}, in getCastInstrCost()
535 {ISD::ZERO_EXTEND, MVT::v4i32, MVT::v4i16, 0}, in getCastInstrCost()
536 {ISD::SIGN_EXTEND, MVT::v4i32, MVT::v4i8, 0}, in getCastInstrCost()
537 {ISD::ZERO_EXTEND, MVT::v4i32, MVT::v4i8, 0}, in getCastInstrCost()
538 {ISD::SIGN_EXTEND, MVT::v8i16, MVT::v8i8, 0}, in getCastInstrCost()
539 {ISD::ZERO_EXTEND, MVT::v8i16, MVT::v8i8, 0}, in getCastInstrCost()
543 {ISD::SIGN_EXTEND, MVT::v8i32, MVT::v8i16, 1}, in getCastInstrCost()
544 {ISD::ZERO_EXTEND, MVT::v8i32, MVT::v8i16, 1}, in getCastInstrCost()
545 {ISD::SIGN_EXTEND, MVT::v16i32, MVT::v16i8, 3}, in getCastInstrCost()
546 {ISD::ZERO_EXTEND, MVT::v16i32, MVT::v16i8, 3}, in getCastInstrCost()
547 {ISD::SIGN_EXTEND, MVT::v16i16, MVT::v16i8, 1}, in getCastInstrCost()
548 {ISD::ZERO_EXTEND, MVT::v16i16, MVT::v16i8, 1}, in getCastInstrCost()
552 ConvertCostTableLookup(MVELoadConversionTbl, ISD, in getCastInstrCost()
559 {ISD::FP_EXTEND, MVT::v4f32, MVT::v4f16, 1}, in getCastInstrCost()
560 {ISD::FP_EXTEND, MVT::v8f32, MVT::v8f16, 3}, in getCastInstrCost()
564 ConvertCostTableLookup(MVEFLoadConversionTbl, ISD, in getCastInstrCost()
571 {ISD::TRUNCATE, MVT::v4i32, MVT::v4i16, 0}, in getCastInstrCost()
572 {ISD::TRUNCATE, MVT::v4i32, MVT::v4i8, 0}, in getCastInstrCost()
573 {ISD::TRUNCATE, MVT::v8i16, MVT::v8i8, 0}, in getCastInstrCost()
574 {ISD::TRUNCATE, MVT::v8i32, MVT::v8i16, 1}, in getCastInstrCost()
575 {ISD::TRUNCATE, MVT::v8i32, MVT::v8i8, 1}, in getCastInstrCost()
576 {ISD::TRUNCATE, MVT::v16i32, MVT::v16i8, 3}, in getCastInstrCost()
577 {ISD::TRUNCATE, MVT::v16i16, MVT::v16i8, 1}, in getCastInstrCost()
581 ConvertCostTableLookup(MVEStoreConversionTbl, ISD, in getCastInstrCost()
587 {ISD::FP_ROUND, MVT::v4f32, MVT::v4f16, 1}, in getCastInstrCost()
588 {ISD::FP_ROUND, MVT::v8f32, MVT::v8f16, 3}, in getCastInstrCost()
592 ConvertCostTableLookup(MVEFStoreConversionTbl, ISD, in getCastInstrCost()
599 if ((ISD == ISD::SIGN_EXTEND || ISD == ISD::ZERO_EXTEND) && in getCastInstrCost()
603 { ISD::ADD, MVT::v4i32, MVT::v4i16, 0 }, in getCastInstrCost()
604 { ISD::ADD, MVT::v8i16, MVT::v8i8, 0 }, in getCastInstrCost()
606 { ISD::SUB, MVT::v4i32, MVT::v4i16, 0 }, in getCastInstrCost()
607 { ISD::SUB, MVT::v8i16, MVT::v8i8, 0 }, in getCastInstrCost()
609 { ISD::MUL, MVT::v4i32, MVT::v4i16, 0 }, in getCastInstrCost()
610 { ISD::MUL, MVT::v8i16, MVT::v8i8, 0 }, in getCastInstrCost()
612 { ISD::SHL, MVT::v4i32, MVT::v4i16, 0 }, in getCastInstrCost()
613 { ISD::SHL, MVT::v8i16, MVT::v8i8, 0 }, in getCastInstrCost()
627 ((ISD == ISD::FP_ROUND && SrcTy.getScalarType() == MVT::f64 && in getCastInstrCost()
629 (ISD == ISD::FP_EXTEND && SrcTy.getScalarType() == MVT::f32 && in getCastInstrCost()
633 {ISD::FP_ROUND, MVT::v2f64, 2}, in getCastInstrCost()
634 {ISD::FP_EXTEND, MVT::v2f32, 2}, in getCastInstrCost()
635 {ISD::FP_EXTEND, MVT::v4f32, 4}}; in getCastInstrCost()
638 if (const auto *Entry = CostTableLookup(NEONFltDblTbl, ISD, LT.second)) in getCastInstrCost()
646 { ISD::SIGN_EXTEND, MVT::v4i32, MVT::v4i16, 1 }, in getCastInstrCost()
647 { ISD::ZERO_EXTEND, MVT::v4i32, MVT::v4i16, 1 }, in getCastInstrCost()
648 { ISD::SIGN_EXTEND, MVT::v2i64, MVT::v2i32, 1 }, in getCastInstrCost()
649 { ISD::ZERO_EXTEND, MVT::v2i64, MVT::v2i32, 1 }, in getCastInstrCost()
650 { ISD::TRUNCATE, MVT::v4i32, MVT::v4i64, 0 }, in getCastInstrCost()
651 { ISD::TRUNCATE, MVT::v4i16, MVT::v4i32, 1 }, in getCastInstrCost()
654 { ISD::SIGN_EXTEND, MVT::v8i16, MVT::v8i8, 1 }, in getCastInstrCost()
655 { ISD::ZERO_EXTEND, MVT::v8i16, MVT::v8i8, 1 }, in getCastInstrCost()
656 { ISD::SIGN_EXTEND, MVT::v4i32, MVT::v4i8, 2 }, in getCastInstrCost()
657 { ISD::ZERO_EXTEND, MVT::v4i32, MVT::v4i8, 2 }, in getCastInstrCost()
658 { ISD::SIGN_EXTEND, MVT::v2i64, MVT::v2i8, 3 }, in getCastInstrCost()
659 { ISD::ZERO_EXTEND, MVT::v2i64, MVT::v2i8, 3 }, in getCastInstrCost()
660 { ISD::SIGN_EXTEND, MVT::v2i64, MVT::v2i16, 2 }, in getCastInstrCost()
661 { ISD::ZERO_EXTEND, MVT::v2i64, MVT::v2i16, 2 }, in getCastInstrCost()
662 { ISD::SIGN_EXTEND, MVT::v4i64, MVT::v4i16, 3 }, in getCastInstrCost()
663 { ISD::ZERO_EXTEND, MVT::v4i64, MVT::v4i16, 3 }, in getCastInstrCost()
664 { ISD::SIGN_EXTEND, MVT::v8i32, MVT::v8i8, 3 }, in getCastInstrCost()
665 { ISD::ZERO_EXTEND, MVT::v8i32, MVT::v8i8, 3 }, in getCastInstrCost()
666 { ISD::SIGN_EXTEND, MVT::v8i64, MVT::v8i8, 7 }, in getCastInstrCost()
667 { ISD::ZERO_EXTEND, MVT::v8i64, MVT::v8i8, 7 }, in getCastInstrCost()
668 { ISD::SIGN_EXTEND, MVT::v8i64, MVT::v8i16, 6 }, in getCastInstrCost()
669 { ISD::ZERO_EXTEND, MVT::v8i64, MVT::v8i16, 6 }, in getCastInstrCost()
670 { ISD::SIGN_EXTEND, MVT::v16i32, MVT::v16i8, 6 }, in getCastInstrCost()
671 { ISD::ZERO_EXTEND, MVT::v16i32, MVT::v16i8, 6 }, in getCastInstrCost()
674 { ISD::TRUNCATE, MVT::v16i8, MVT::v16i32, 6 }, in getCastInstrCost()
675 { ISD::TRUNCATE, MVT::v8i8, MVT::v8i32, 3 }, in getCastInstrCost()
678 { ISD::SINT_TO_FP, MVT::v4f32, MVT::v4i32, 1 }, in getCastInstrCost()
679 { ISD::UINT_TO_FP, MVT::v4f32, MVT::v4i32, 1 }, in getCastInstrCost()
681 { ISD::SINT_TO_FP, MVT::v2f32, MVT::v2i8, 3 }, in getCastInstrCost()
682 { ISD::UINT_TO_FP, MVT::v2f32, MVT::v2i8, 3 }, in getCastInstrCost()
683 { ISD::SINT_TO_FP, MVT::v2f32, MVT::v2i16, 2 }, in getCastInstrCost()
684 { ISD::UINT_TO_FP, MVT::v2f32, MVT::v2i16, 2 }, in getCastInstrCost()
685 { ISD::SINT_TO_FP, MVT::v2f32, MVT::v2i32, 1 }, in getCastInstrCost()
686 { ISD::UINT_TO_FP, MVT::v2f32, MVT::v2i32, 1 }, in getCastInstrCost()
687 { ISD::SINT_TO_FP, MVT::v4f32, MVT::v4i1, 3 }, in getCastInstrCost()
688 { ISD::UINT_TO_FP, MVT::v4f32, MVT::v4i1, 3 }, in getCastInstrCost()
689 { ISD::SINT_TO_FP, MVT::v4f32, MVT::v4i8, 3 }, in getCastInstrCost()
690 { ISD::UINT_TO_FP, MVT::v4f32, MVT::v4i8, 3 }, in getCastInstrCost()
691 { ISD::SINT_TO_FP, MVT::v4f32, MVT::v4i16, 2 }, in getCastInstrCost()
692 { ISD::UINT_TO_FP, MVT::v4f32, MVT::v4i16, 2 }, in getCastInstrCost()
693 { ISD::SINT_TO_FP, MVT::v8f32, MVT::v8i16, 4 }, in getCastInstrCost()
694 { ISD::UINT_TO_FP, MVT::v8f32, MVT::v8i16, 4 }, in getCastInstrCost()
695 { ISD::SINT_TO_FP, MVT::v8f32, MVT::v8i32, 2 }, in getCastInstrCost()
696 { ISD::UINT_TO_FP, MVT::v8f32, MVT::v8i32, 2 }, in getCastInstrCost()
697 { ISD::SINT_TO_FP, MVT::v16f32, MVT::v16i16, 8 }, in getCastInstrCost()
698 { ISD::UINT_TO_FP, MVT::v16f32, MVT::v16i16, 8 }, in getCastInstrCost()
699 { ISD::SINT_TO_FP, MVT::v16f32, MVT::v16i32, 4 }, in getCastInstrCost()
700 { ISD::UINT_TO_FP, MVT::v16f32, MVT::v16i32, 4 }, in getCastInstrCost()
702 { ISD::FP_TO_SINT, MVT::v4i32, MVT::v4f32, 1 }, in getCastInstrCost()
703 { ISD::FP_TO_UINT, MVT::v4i32, MVT::v4f32, 1 }, in getCastInstrCost()
704 { ISD::FP_TO_SINT, MVT::v4i8, MVT::v4f32, 3 }, in getCastInstrCost()
705 { ISD::FP_TO_UINT, MVT::v4i8, MVT::v4f32, 3 }, in getCastInstrCost()
706 { ISD::FP_TO_SINT, MVT::v4i16, MVT::v4f32, 2 }, in getCastInstrCost()
707 { ISD::FP_TO_UINT, MVT::v4i16, MVT::v4f32, 2 }, in getCastInstrCost()
710 { ISD::SINT_TO_FP, MVT::v2f64, MVT::v2i32, 2 }, in getCastInstrCost()
711 { ISD::UINT_TO_FP, MVT::v2f64, MVT::v2i32, 2 }, in getCastInstrCost()
713 { ISD::SINT_TO_FP, MVT::v2f64, MVT::v2i8, 4 }, in getCastInstrCost()
714 { ISD::UINT_TO_FP, MVT::v2f64, MVT::v2i8, 4 }, in getCastInstrCost()
715 { ISD::SINT_TO_FP, MVT::v2f64, MVT::v2i16, 3 }, in getCastInstrCost()
716 { ISD::UINT_TO_FP, MVT::v2f64, MVT::v2i16, 3 }, 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::FP_TO_SINT, MVT::v2i32, MVT::v2f64, 2 }, in getCastInstrCost()
721 { ISD::FP_TO_UINT, MVT::v2i32, MVT::v2f64, 2 }, in getCastInstrCost()
722 { ISD::FP_TO_SINT, MVT::v8i16, MVT::v8f32, 4 }, in getCastInstrCost()
723 { ISD::FP_TO_UINT, MVT::v8i16, MVT::v8f32, 4 }, in getCastInstrCost()
724 { ISD::FP_TO_SINT, MVT::v16i16, MVT::v16f32, 8 }, in getCastInstrCost()
725 { ISD::FP_TO_UINT, MVT::v16i16, MVT::v16f32, 8 } in getCastInstrCost()
729 if (const auto *Entry = ConvertCostTableLookup(NEONVectorConversionTbl, ISD, in getCastInstrCost()
737 { ISD::FP_TO_SINT, MVT::i1, MVT::f32, 2 }, in getCastInstrCost()
738 { ISD::FP_TO_UINT, MVT::i1, MVT::f32, 2 }, in getCastInstrCost()
739 { ISD::FP_TO_SINT, MVT::i1, MVT::f64, 2 }, in getCastInstrCost()
740 { ISD::FP_TO_UINT, MVT::i1, MVT::f64, 2 }, in getCastInstrCost()
741 { ISD::FP_TO_SINT, MVT::i8, MVT::f32, 2 }, in getCastInstrCost()
742 { ISD::FP_TO_UINT, MVT::i8, MVT::f32, 2 }, in getCastInstrCost()
743 { ISD::FP_TO_SINT, MVT::i8, MVT::f64, 2 }, in getCastInstrCost()
744 { ISD::FP_TO_UINT, MVT::i8, MVT::f64, 2 }, in getCastInstrCost()
745 { ISD::FP_TO_SINT, MVT::i16, MVT::f32, 2 }, in getCastInstrCost()
746 { ISD::FP_TO_UINT, MVT::i16, MVT::f32, 2 }, in getCastInstrCost()
747 { ISD::FP_TO_SINT, MVT::i16, MVT::f64, 2 }, in getCastInstrCost()
748 { ISD::FP_TO_UINT, MVT::i16, MVT::f64, 2 }, in getCastInstrCost()
749 { ISD::FP_TO_SINT, MVT::i32, MVT::f32, 2 }, in getCastInstrCost()
750 { ISD::FP_TO_UINT, MVT::i32, MVT::f32, 2 }, in getCastInstrCost()
751 { ISD::FP_TO_SINT, MVT::i32, MVT::f64, 2 }, in getCastInstrCost()
752 { ISD::FP_TO_UINT, MVT::i32, MVT::f64, 2 }, in getCastInstrCost()
753 { ISD::FP_TO_SINT, MVT::i64, MVT::f32, 10 }, in getCastInstrCost()
754 { ISD::FP_TO_UINT, MVT::i64, MVT::f32, 10 }, in getCastInstrCost()
755 { ISD::FP_TO_SINT, MVT::i64, MVT::f64, 10 }, in getCastInstrCost()
756 { ISD::FP_TO_UINT, MVT::i64, MVT::f64, 10 } in getCastInstrCost()
759 if (const auto *Entry = ConvertCostTableLookup(NEONFloatConversionTbl, ISD, in getCastInstrCost()
767 { ISD::SINT_TO_FP, MVT::f32, MVT::i1, 2 }, in getCastInstrCost()
768 { ISD::UINT_TO_FP, MVT::f32, MVT::i1, 2 }, in getCastInstrCost()
769 { ISD::SINT_TO_FP, MVT::f64, MVT::i1, 2 }, in getCastInstrCost()
770 { ISD::UINT_TO_FP, MVT::f64, MVT::i1, 2 }, in getCastInstrCost()
771 { ISD::SINT_TO_FP, MVT::f32, MVT::i8, 2 }, in getCastInstrCost()
772 { ISD::UINT_TO_FP, MVT::f32, MVT::i8, 2 }, in getCastInstrCost()
773 { ISD::SINT_TO_FP, MVT::f64, MVT::i8, 2 }, in getCastInstrCost()
774 { ISD::UINT_TO_FP, MVT::f64, MVT::i8, 2 }, in getCastInstrCost()
775 { ISD::SINT_TO_FP, MVT::f32, MVT::i16, 2 }, in getCastInstrCost()
776 { ISD::UINT_TO_FP, MVT::f32, MVT::i16, 2 }, in getCastInstrCost()
777 { ISD::SINT_TO_FP, MVT::f64, MVT::i16, 2 }, in getCastInstrCost()
778 { ISD::UINT_TO_FP, MVT::f64, MVT::i16, 2 }, in getCastInstrCost()
779 { ISD::SINT_TO_FP, MVT::f32, MVT::i32, 2 }, in getCastInstrCost()
780 { ISD::UINT_TO_FP, MVT::f32, MVT::i32, 2 }, in getCastInstrCost()
781 { ISD::SINT_TO_FP, MVT::f64, MVT::i32, 2 }, in getCastInstrCost()
782 { ISD::UINT_TO_FP, MVT::f64, MVT::i32, 2 }, in getCastInstrCost()
783 { ISD::SINT_TO_FP, MVT::f32, MVT::i64, 10 }, in getCastInstrCost()
784 { ISD::UINT_TO_FP, MVT::f32, MVT::i64, 10 }, in getCastInstrCost()
785 { ISD::SINT_TO_FP, MVT::f64, MVT::i64, 10 }, in getCastInstrCost()
786 { ISD::UINT_TO_FP, MVT::f64, MVT::i64, 10 } in getCastInstrCost()
791 ISD, DstTy.getSimpleVT(), in getCastInstrCost()
800 { ISD::SIGN_EXTEND, MVT::v8i16, MVT::v8i8, 1 }, in getCastInstrCost()
801 { ISD::ZERO_EXTEND, MVT::v8i16, MVT::v8i8, 1 }, in getCastInstrCost()
802 { ISD::SIGN_EXTEND, MVT::v4i32, MVT::v4i8, 2 }, in getCastInstrCost()
803 { ISD::ZERO_EXTEND, MVT::v4i32, MVT::v4i8, 2 }, in getCastInstrCost()
804 { ISD::SIGN_EXTEND, MVT::v2i64, MVT::v2i8, 10 }, in getCastInstrCost()
805 { ISD::ZERO_EXTEND, MVT::v2i64, MVT::v2i8, 2 }, in getCastInstrCost()
806 { ISD::SIGN_EXTEND, MVT::v4i32, MVT::v4i16, 1 }, in getCastInstrCost()
807 { ISD::ZERO_EXTEND, MVT::v4i32, MVT::v4i16, 1 }, in getCastInstrCost()
808 { ISD::SIGN_EXTEND, MVT::v2i64, MVT::v2i16, 10 }, in getCastInstrCost()
809 { ISD::ZERO_EXTEND, MVT::v2i64, MVT::v2i16, 2 }, in getCastInstrCost()
810 { ISD::SIGN_EXTEND, MVT::v2i64, MVT::v2i32, 8 }, in getCastInstrCost()
811 { ISD::ZERO_EXTEND, MVT::v2i64, MVT::v2i32, 2 }, in getCastInstrCost()
816 ISD, DstTy.getSimpleVT(), in getCastInstrCost()
821 if (ISD == ISD::FP_ROUND || ISD == ISD::FP_EXTEND) { in getCastInstrCost()
837 if (ISD == ISD::TRUNCATE && ST->hasMVEIntegerOps() && in getCastInstrCost()
852 { ISD::SIGN_EXTEND, MVT::i64, MVT::i16, 2 }, in getCastInstrCost()
855 { ISD::TRUNCATE, MVT::i32, MVT::i64, 0 }, in getCastInstrCost()
856 { ISD::TRUNCATE, MVT::i16, MVT::i64, 0 }, in getCastInstrCost()
857 { ISD::TRUNCATE, MVT::i8, MVT::i64, 0 }, in getCastInstrCost()
858 { ISD::TRUNCATE, MVT::i1, MVT::i64, 0 } in getCastInstrCost()
862 if (const auto *Entry = ConvertCostTableLookup(ARMIntegerConversionTbl, ISD, in getCastInstrCost()
916 int ISD = TLI->InstructionOpcodeToISD(Opcode); in getCmpSelInstrCost() local
919 if (CostKind == TTI::TCK_CodeSize && ISD == ISD::SELECT && in getCmpSelInstrCost()
989 if (ST->hasNEON() && ValTy->isVectorTy() && ISD == ISD::SELECT && CondTy) { in getCmpSelInstrCost()
992 { ISD::SELECT, MVT::v4i1, MVT::v4i64, 4*4 + 1*2 + 1 }, in getCmpSelInstrCost()
993 { ISD::SELECT, MVT::v8i1, MVT::v8i64, 50 }, in getCmpSelInstrCost()
994 { ISD::SELECT, MVT::v16i1, MVT::v16i64, 100 } in getCmpSelInstrCost()
1000 if (const auto *Entry = ConvertCostTableLookup(NEONVectorSelectTbl, ISD, in getCmpSelInstrCost()
1213 {ISD::VECTOR_SHUFFLE, MVT::v2i32, 1}, in getShuffleCost()
1214 {ISD::VECTOR_SHUFFLE, MVT::v2f32, 1}, in getShuffleCost()
1215 {ISD::VECTOR_SHUFFLE, MVT::v2i64, 1}, in getShuffleCost()
1216 {ISD::VECTOR_SHUFFLE, MVT::v2f64, 1}, in getShuffleCost()
1217 {ISD::VECTOR_SHUFFLE, MVT::v4i16, 1}, in getShuffleCost()
1218 {ISD::VECTOR_SHUFFLE, MVT::v8i8, 1}, in getShuffleCost()
1220 {ISD::VECTOR_SHUFFLE, MVT::v4i32, 1}, in getShuffleCost()
1221 {ISD::VECTOR_SHUFFLE, MVT::v4f32, 1}, in getShuffleCost()
1222 {ISD::VECTOR_SHUFFLE, MVT::v8i16, 1}, in getShuffleCost()
1223 {ISD::VECTOR_SHUFFLE, MVT::v16i8, 1}}; in getShuffleCost()
1227 CostTableLookup(NEONDupTbl, ISD::VECTOR_SHUFFLE, LT.second)) in getShuffleCost()
1234 {ISD::VECTOR_SHUFFLE, MVT::v2i32, 1}, in getShuffleCost()
1235 {ISD::VECTOR_SHUFFLE, MVT::v2f32, 1}, in getShuffleCost()
1236 {ISD::VECTOR_SHUFFLE, MVT::v2i64, 1}, in getShuffleCost()
1237 {ISD::VECTOR_SHUFFLE, MVT::v2f64, 1}, in getShuffleCost()
1238 {ISD::VECTOR_SHUFFLE, MVT::v4i16, 1}, in getShuffleCost()
1239 {ISD::VECTOR_SHUFFLE, MVT::v8i8, 1}, in getShuffleCost()
1241 {ISD::VECTOR_SHUFFLE, MVT::v4i32, 2}, in getShuffleCost()
1242 {ISD::VECTOR_SHUFFLE, MVT::v4f32, 2}, in getShuffleCost()
1243 {ISD::VECTOR_SHUFFLE, MVT::v8i16, 2}, in getShuffleCost()
1244 {ISD::VECTOR_SHUFFLE, MVT::v16i8, 2}}; in getShuffleCost()
1248 CostTableLookup(NEONShuffleTbl, ISD::VECTOR_SHUFFLE, LT.second)) in getShuffleCost()
1257 {ISD::VECTOR_SHUFFLE, MVT::v2f32, 1}, in getShuffleCost()
1258 {ISD::VECTOR_SHUFFLE, MVT::v2i64, 1}, in getShuffleCost()
1259 {ISD::VECTOR_SHUFFLE, MVT::v2f64, 1}, in getShuffleCost()
1260 {ISD::VECTOR_SHUFFLE, MVT::v2i32, 1}, in getShuffleCost()
1262 {ISD::VECTOR_SHUFFLE, MVT::v4i32, 2}, in getShuffleCost()
1263 {ISD::VECTOR_SHUFFLE, MVT::v4f32, 2}, in getShuffleCost()
1264 {ISD::VECTOR_SHUFFLE, MVT::v4i16, 2}, in getShuffleCost()
1266 {ISD::VECTOR_SHUFFLE, MVT::v8i16, 16}, in getShuffleCost()
1268 {ISD::VECTOR_SHUFFLE, MVT::v16i8, 32}}; in getShuffleCost()
1272 ISD::VECTOR_SHUFFLE, LT.second)) in getShuffleCost()
1280 {ISD::VECTOR_SHUFFLE, MVT::v4i32, 1}, in getShuffleCost()
1281 {ISD::VECTOR_SHUFFLE, MVT::v8i16, 1}, in getShuffleCost()
1282 {ISD::VECTOR_SHUFFLE, MVT::v16i8, 1}, in getShuffleCost()
1283 {ISD::VECTOR_SHUFFLE, MVT::v4f32, 1}, in getShuffleCost()
1284 {ISD::VECTOR_SHUFFLE, MVT::v8f16, 1}}; in getShuffleCost()
1287 if (const auto *Entry = CostTableLookup(MVEDupTbl, ISD::VECTOR_SHUFFLE, in getShuffleCost()
1323 case ISD::AND: in getArithmeticInstrCost()
1324 case ISD::XOR: in getArithmeticInstrCost()
1326 case ISD::OR: in getArithmeticInstrCost()
1341 { ISD::SDIV, MVT::v1i64, 1 * FunctionCallDivCost}, in getArithmeticInstrCost()
1342 { ISD::UDIV, MVT::v1i64, 1 * FunctionCallDivCost}, in getArithmeticInstrCost()
1343 { ISD::SREM, MVT::v1i64, 1 * FunctionCallDivCost}, in getArithmeticInstrCost()
1344 { ISD::UREM, MVT::v1i64, 1 * FunctionCallDivCost}, in getArithmeticInstrCost()
1345 { ISD::SDIV, MVT::v2i32, 2 * FunctionCallDivCost}, in getArithmeticInstrCost()
1346 { ISD::UDIV, MVT::v2i32, 2 * FunctionCallDivCost}, in getArithmeticInstrCost()
1347 { ISD::SREM, MVT::v2i32, 2 * FunctionCallDivCost}, in getArithmeticInstrCost()
1348 { ISD::UREM, MVT::v2i32, 2 * FunctionCallDivCost}, in getArithmeticInstrCost()
1349 { ISD::SDIV, MVT::v4i16, ReciprocalDivCost}, in getArithmeticInstrCost()
1350 { ISD::UDIV, MVT::v4i16, ReciprocalDivCost}, in getArithmeticInstrCost()
1351 { ISD::SREM, MVT::v4i16, 4 * FunctionCallDivCost}, in getArithmeticInstrCost()
1352 { ISD::UREM, MVT::v4i16, 4 * FunctionCallDivCost}, in getArithmeticInstrCost()
1353 { ISD::SDIV, MVT::v8i8, ReciprocalDivCost}, in getArithmeticInstrCost()
1354 { ISD::UDIV, MVT::v8i8, ReciprocalDivCost}, in getArithmeticInstrCost()
1355 { ISD::SREM, MVT::v8i8, 8 * FunctionCallDivCost}, in getArithmeticInstrCost()
1356 { ISD::UREM, MVT::v8i8, 8 * FunctionCallDivCost}, in getArithmeticInstrCost()
1358 { ISD::SDIV, MVT::v2i64, 2 * FunctionCallDivCost}, in getArithmeticInstrCost()
1359 { ISD::UDIV, MVT::v2i64, 2 * FunctionCallDivCost}, in getArithmeticInstrCost()
1360 { ISD::SREM, MVT::v2i64, 2 * FunctionCallDivCost}, in getArithmeticInstrCost()
1361 { ISD::UREM, MVT::v2i64, 2 * FunctionCallDivCost}, in getArithmeticInstrCost()
1362 { ISD::SDIV, MVT::v4i32, 4 * FunctionCallDivCost}, in getArithmeticInstrCost()
1363 { ISD::UDIV, MVT::v4i32, 4 * FunctionCallDivCost}, in getArithmeticInstrCost()
1364 { ISD::SREM, MVT::v4i32, 4 * FunctionCallDivCost}, in getArithmeticInstrCost()
1365 { ISD::UREM, MVT::v4i32, 4 * FunctionCallDivCost}, in getArithmeticInstrCost()
1366 { ISD::SDIV, MVT::v8i16, 8 * FunctionCallDivCost}, in getArithmeticInstrCost()
1367 { ISD::UDIV, MVT::v8i16, 8 * FunctionCallDivCost}, in getArithmeticInstrCost()
1368 { ISD::SREM, MVT::v8i16, 8 * FunctionCallDivCost}, in getArithmeticInstrCost()
1369 { ISD::UREM, MVT::v8i16, 8 * FunctionCallDivCost}, in getArithmeticInstrCost()
1370 { ISD::SDIV, MVT::v16i8, 16 * FunctionCallDivCost}, in getArithmeticInstrCost()
1371 { ISD::UDIV, MVT::v16i8, 16 * FunctionCallDivCost}, in getArithmeticInstrCost()
1372 { ISD::SREM, MVT::v16i8, 16 * FunctionCallDivCost}, in getArithmeticInstrCost()
1373 { ISD::UREM, MVT::v16i8, 16 * FunctionCallDivCost}, in getArithmeticInstrCost()
1663 int ISD = TLI->InstructionOpcodeToISD(Opcode); in getArithmeticReductionCost() local
1664 if (!ST->hasMVEIntegerOps() || !ValVT.isSimple() || ISD != ISD::ADD) in getArithmeticReductionCost()
1670 {ISD::ADD, MVT::v16i8, 1}, in getArithmeticReductionCost()
1671 {ISD::ADD, MVT::v8i16, 1}, in getArithmeticReductionCost()
1672 {ISD::ADD, MVT::v4i32, 1}, in getArithmeticReductionCost()
1674 if (const auto *Entry = CostTableLookup(CostTblAdd, ISD, LT.second)) in getArithmeticReductionCost()
1879 unsigned ISD = TLI->InstructionOpcodeToISD(I.getOpcode()); in maybeLoweredToCall() local
1881 if (TLI->getOperationAction(ISD, VT) == TargetLowering::LibCall) in maybeLoweredToCall()
1922 switch (ISD) { in maybeLoweredToCall()
1925 case ISD::SDIV: in maybeLoweredToCall()
1926 case ISD::UDIV: in maybeLoweredToCall()
1927 case ISD::SREM: in maybeLoweredToCall()
1928 case ISD::UREM: in maybeLoweredToCall()
1929 case ISD::SDIVREM: in maybeLoweredToCall()
1930 case ISD::UDIVREM: in maybeLoweredToCall()