• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /freebsd-12-stable/contrib/llvm-project/llvm/lib/Target/X86/

Lines Matching refs:v2i64

210     // v2i64/v4i64 mul is custom lowered as a series of long:
215 { ISD::MUL, MVT::v2i64, 17 },
217 { ISD::ADD, MVT::v2i64, 4 },
218 { ISD::SUB, MVT::v2i64, 4 },
304 { ISD::SRA, MVT::v2i64, 1 },
468 { ISD::SHL, MVT::v2i64, 1 }, // psllq.
472 { ISD::SRL, MVT::v2i64, 1 }, // psrlq.
487 { ISD::MUL, MVT::v2i64, 1 },
532 { ISD::SRA, MVT::v2i64, 1 },
565 { ISD::SHL, MVT::v2i64, 1 },
566 { ISD::SRL, MVT::v2i64, 1 },
597 { ISD::SHL, MVT::v2i64, 1 },
598 { ISD::SRL, MVT::v2i64, 2 },
599 { ISD::SRA, MVT::v2i64, 2 },
641 { ISD::SRA, MVT::v2i64, 4 }, // 2*psrad + shuffle.
677 { ISD::SRA, MVT::v2i64, 4 }, // srl/xor/sub sequence.
730 // A v4i64 multiply is custom lowered as two split v2i64 vectors that then
812 { ISD::SHL, MVT::v2i64, 4 }, // splat+shuffle sequence.
818 { ISD::SRL, MVT::v2i64, 4 }, // splat+shuffle sequence.
824 { ISD::SRA, MVT::v2i64, 12 }, // srl/xor/sub sequence.
830 { ISD::MUL, MVT::v2i64, 8 }, // 3*pmuludq/3*shift/2*add
1051 {TTI::SK_PermuteSingleSrc, MVT::v2i64, 1}, // vpermq
1067 {TTI::SK_PermuteTwoSrc, MVT::v2i64, 1}, // vpermt2q
1186 {TTI::SK_Select, MVT::v2i64, 1}, // pblendw
1221 {TTI::SK_Broadcast, MVT::v2i64, 1}, // pshufd
1227 {TTI::SK_Reverse, MVT::v2i64, 1}, // pshufd
1233 {TTI::SK_Select, MVT::v2i64, 1}, // movsd
1240 {TTI::SK_PermuteSingleSrc, MVT::v2i64, 1}, // pshufd
1248 { TTI::SK_PermuteTwoSrc, MVT::v2i64, 1 }, // shufpd
1303 { ISD::SINT_TO_FP, MVT::v2f32, MVT::v2i64, 1 },
1304 { ISD::SINT_TO_FP, MVT::v2f64, MVT::v2i64, 1 },
1310 { ISD::UINT_TO_FP, MVT::v2f32, MVT::v2i64, 1 },
1311 { ISD::UINT_TO_FP, MVT::v2f64, MVT::v2i64, 1 },
1317 { ISD::FP_TO_SINT, MVT::v2i64, MVT::v2f32, 1 },
1320 { ISD::FP_TO_SINT, MVT::v2i64, MVT::v2f64, 1 },
1324 { ISD::FP_TO_UINT, MVT::v2i64, MVT::v2f32, 1 },
1327 { ISD::FP_TO_UINT, MVT::v2i64, MVT::v2f64, 1 },
1387 { ISD::UINT_TO_FP, MVT::v2f32, MVT::v2i64, 5 },
1389 { ISD::UINT_TO_FP, MVT::v2f64, MVT::v2i64, 5 },
1496 { ISD::UINT_TO_FP, MVT::v2f64, MVT::v2i64, 5 },
1554 { ISD::TRUNCATE, MVT::v2i8, MVT::v2i64, 1 }, // PSHUFB
1571 { ISD::SINT_TO_FP, MVT::v4f32, MVT::v2i64, 15 },
1572 { ISD::SINT_TO_FP, MVT::v2f64, MVT::v2i64, 2*10 },
1580 { ISD::UINT_TO_FP, MVT::v2f64, MVT::v2i64, 6 },
1581 { ISD::UINT_TO_FP, MVT::v4f32, MVT::v2i64, 15 },
1631 { ISD::TRUNCATE, MVT::v2i8, MVT::v2i64, 4 }, // PAND+3*PACKUSWB
1632 { ISD::TRUNCATE, MVT::v2i16, MVT::v2i64, 2 }, // PSHUFD+PSHUFLW
1633 { ISD::TRUNCATE, MVT::v2i32, MVT::v2i64, 1 }, // PSHUFD
1756 { ISD::SETCC, MVT::v2i64, 2 },
1811 { ISD::SETCC, MVT::v2i64, 1 },
1817 { ISD::SELECT, MVT::v2i64, 1 }, // pblendvb
1826 { ISD::SETCC, MVT::v2i64, 8 },
1832 { ISD::SELECT, MVT::v2i64, 3 }, // pand + pandn + por
1904 { ISD::CTLZ, MVT::v2i64, 1 },
1945 { ISD::USUBSAT, MVT::v2i64, 2 }, // pmaxuq + psubq
1949 { ISD::UADDSAT, MVT::v2i64, 3 }, // not + pminuq + paddq
1958 { ISD::BITREVERSE, MVT::v2i64, 1 },
2060 { ISD::BITREVERSE, MVT::v2i64, 5 },
2064 { ISD::BSWAP, MVT::v2i64, 1 },
2067 { ISD::CTLZ, MVT::v2i64, 23 },
2071 { ISD::CTPOP, MVT::v2i64, 7 },
2075 { ISD::CTTZ, MVT::v2i64, 10 },
2081 { ISD::BITREVERSE, MVT::v2i64, 29 },
2085 { ISD::BSWAP, MVT::v2i64, 7 },
2088 { ISD::CTLZ, MVT::v2i64, 25 },
2092 { ISD::CTPOP, MVT::v2i64, 12 },
2096 { ISD::CTTZ, MVT::v2i64, 14 },
2296 { ISD::ROTL, MVT::v2i64, 1 },
2302 { ISD::ROTR, MVT::v2i64, 1 },
2313 { ISD::ROTL, MVT::v2i64, 1 },
2321 { ISD::ROTR, MVT::v2i64, 2 },
2568 { ISD::ADD, MVT::v2i64, 5 },
2574 { ISD::ADD, MVT::v2i64, 2 }, // The data reported by the IACA tool is "1.6".
2589 { ISD::ADD, MVT::v2i64, 1 }, // The data reported by the IACA tool is "1.5".
2598 { ISD::ADD, MVT::v2i64, 5 },
2604 { ISD::ADD, MVT::v2i64, 2 }, // The data reported by the IACA tool is "1.6".
2620 { ISD::ADD, MVT::v2i64, 1 }, // The data reported by the IACA tool is "1.5".
2730 { ISD::AND, MVT::v2i64, 2 }, // movmskpd + cmp
2734 { ISD::OR, MVT::v2i64, 2 }, // movmskpd + cmp
2783 {ISD::SMIN, MVT::v2i64, 6},
2784 {ISD::UMIN, MVT::v2i64, 8},
2795 {ISD::SMIN, MVT::v2i64, 9},
2796 {ISD::UMIN, MVT::v2i64,10},
2806 {ISD::SMIN, MVT::v2i64, 7}, // The data reported by the IACA is "6.8"
2807 {ISD::UMIN, MVT::v2i64, 8}, // The data reported by the IACA is "8.6"
2814 {ISD::SMIN, MVT::v2i64, 3},
2815 {ISD::UMIN, MVT::v2i64, 3},
2858 {ISD::SMIN, MVT::v2i64, 6},
2859 {ISD::UMIN, MVT::v2i64, 8},
2870 {ISD::SMIN, MVT::v2i64, 9},
2871 {ISD::UMIN, MVT::v2i64,11},
2881 {ISD::SMIN, MVT::v2i64, 7}, // The data reported by the IACA is "6.8"
2882 {ISD::UMIN, MVT::v2i64, 9}, // The data reported by the IACA is "8.6"
2889 {ISD::SMIN, MVT::v2i64, 3},
2890 {ISD::UMIN, MVT::v2i64, 3},