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

Lines Matching defs:v8i16

205     { ISD::MUL,   MVT::v8i16, 2  }, // pmullw
441 { ISD::SDIV, MVT::v8i16, 6 }, // pmulhw sequence
442 { ISD::SREM, MVT::v8i16, 8 }, // pmulhw+mul+sub sequence
445 { ISD::UDIV, MVT::v8i16, 6 }, // pmulhuw sequence
446 { ISD::UREM, MVT::v8i16, 8 }, // pmulhuw+mul+sub sequence
475 { ISD::SHL, MVT::v8i16, 1 }, // vpsllvw
476 { ISD::SRL, MVT::v8i16, 1 }, // vpsrlvw
477 { ISD::SRA, MVT::v8i16, 1 }, // vpsravw
512 { ISD::SHL, MVT::v8i16, 1 }, // psllw.
516 { ISD::SRL, MVT::v8i16, 1 }, // psrlw.
520 { ISD::SRA, MVT::v8i16, 1 }, // psraw.
639 { ISD::SHL, MVT::v8i16, 1 },
640 { ISD::SRL, MVT::v8i16, 2 },
641 { ISD::SRA, MVT::v8i16, 2 },
711 if (((VT == MVT::v8i16 || VT == MVT::v4i32) && ST->hasSSE2()) ||
834 { ISD::SHL, MVT::v8i16, 14 }, // pblendvb sequence.
841 { ISD::SRL, MVT::v8i16, 14 }, // pblendvb sequence.
848 { ISD::SRA, MVT::v8i16, 14 }, // pblendvb sequence.
864 { ISD::SHL, MVT::v8i16, 32 }, // cmpgtb sequence.
870 { ISD::SRL, MVT::v8i16, 32 }, // cmpgtb sequence.
876 { ISD::SRA, MVT::v8i16, 32 }, // cmpgtb sequence.
882 { ISD::MUL, MVT::v8i16, 1 }, // pmullw
1110 {TTI::SK_PermuteTwoSrc, MVT::v8i16, 2}, // vpermt2w
1224 {TTI::SK_PermuteTwoSrc, MVT::v8i16, 1}, // vpperm
1286 {TTI::SK_Select, MVT::v8i16, 1}, // pblendw
1295 {TTI::SK_Broadcast, MVT::v8i16, 1}, // pshufb
1298 {TTI::SK_Reverse, MVT::v8i16, 1}, // pshufb
1301 {TTI::SK_Select, MVT::v8i16, 3}, // 2*pshufb + por
1304 {TTI::SK_PermuteSingleSrc, MVT::v8i16, 1}, // pshufb
1307 {TTI::SK_PermuteTwoSrc, MVT::v8i16, 3}, // 2*pshufb + por
1319 {TTI::SK_Broadcast, MVT::v8i16, 2}, // pshuflw + pshufd
1325 {TTI::SK_Reverse, MVT::v8i16, 3}, // pshuflw + pshufhw + pshufd
1332 {TTI::SK_Select, MVT::v8i16, 3}, // pand + pandn + por
1338 {TTI::SK_PermuteSingleSrc, MVT::v8i16, 5}, // 2*pshuflw + 2*pshufhw
1346 { TTI::SK_PermuteTwoSrc, MVT::v8i16, 8 }, // blend+permute
1395 { ISD::SIGN_EXTEND, MVT::v8i16, MVT::v8i1, 1 },
1408 { ISD::ZERO_EXTEND, MVT::v8i16, MVT::v8i1, 2 },
1422 { ISD::TRUNCATE, MVT::v8i1, MVT::v8i16, 2 }, // widen to zmm
1458 { ISD::TRUNCATE, MVT::v8i1, MVT::v8i16, 3 }, // sext+vpsllq+vptestmq
1470 { ISD::TRUNCATE, MVT::v8i16, MVT::v8i64, 2 },
1495 { ISD::SIGN_EXTEND, MVT::v8i16, MVT::v8i1, 3 },
1496 { ISD::ZERO_EXTEND, MVT::v8i16, MVT::v8i1, 4 },
1522 { ISD::SIGN_EXTEND, MVT::v8i64, MVT::v8i16, 1 },
1523 { ISD::ZERO_EXTEND, MVT::v8i64, MVT::v8i16, 1 },
1534 { ISD::SINT_TO_FP, MVT::v8f64, MVT::v8i16, 2 },
1543 { ISD::UINT_TO_FP, MVT::v8f64, MVT::v8i16, 2 },
1551 { ISD::FP_TO_SINT, MVT::v8i16, MVT::v8f64, 3 },
1556 { ISD::FP_TO_UINT, MVT::v8i16, MVT::v8f64, 3 },
1570 { ISD::SIGN_EXTEND, MVT::v8i16, MVT::v8i1, 1 },
1581 { ISD::ZERO_EXTEND, MVT::v8i16, MVT::v8i1, 2 },
1592 { ISD::TRUNCATE, MVT::v8i1, MVT::v8i16, 2 }, // vpsllw+vptestmw
1627 { ISD::TRUNCATE, MVT::v8i1, MVT::v8i16, 3 }, // sext+vpsllq+vptestmq
1628 { ISD::TRUNCATE, MVT::v16i1, MVT::v16i16, 8 }, // split+2*v8i16
1653 { ISD::SIGN_EXTEND, MVT::v8i16, MVT::v8i1, 4 },
1654 { ISD::ZERO_EXTEND, MVT::v8i16, MVT::v8i1, 5 },
1674 { ISD::UINT_TO_FP, MVT::v8f32, MVT::v8i16, 2 },
1715 { ISD::SIGN_EXTEND, MVT::v8i32, MVT::v8i16, 1 },
1716 { ISD::ZERO_EXTEND, MVT::v8i32, MVT::v8i16, 1 },
1728 { ISD::TRUNCATE, MVT::v8i16, MVT::v8i32, 2 },
1751 { ISD::SIGN_EXTEND, MVT::v8i32, MVT::v8i16, 4 },
1752 { ISD::ZERO_EXTEND, MVT::v8i32, MVT::v8i16, 4 },
1764 { ISD::TRUNCATE, MVT::v8i16, MVT::v8i32, 5 },
1769 { ISD::TRUNCATE, MVT::v8i16, MVT::v8i64, 9 },
1781 { ISD::SINT_TO_FP, MVT::v8f32, MVT::v8i16, 5 },
1794 { ISD::UINT_TO_FP, MVT::v8f32, MVT::v8i16, 5 },
1812 { ISD::FP_TO_SINT, MVT::v8i16, MVT::v8f32, 3 },
1817 { ISD::FP_TO_UINT, MVT::v8i16, MVT::v8f32, 3 },
1842 { ISD::ZERO_EXTEND, MVT::v8i16, MVT::v8i8, 1 },
1843 { ISD::SIGN_EXTEND, MVT::v8i16, MVT::v8i8, 1 },
1852 { ISD::ZERO_EXTEND, MVT::v8i32, MVT::v8i16, 2 },
1853 { ISD::SIGN_EXTEND, MVT::v8i32, MVT::v8i16, 2 },
1864 { ISD::TRUNCATE, MVT::v8i8, MVT::v8i16, 1 },
1868 { ISD::TRUNCATE, MVT::v8i16, MVT::v8i32, 3 },
1889 { ISD::SINT_TO_FP, MVT::v4f32, MVT::v8i16, 15 },
1890 { ISD::SINT_TO_FP, MVT::v2f64, MVT::v8i16, 8*10 },
1899 { ISD::UINT_TO_FP, MVT::v4f32, MVT::v8i16, 15 },
1900 { ISD::UINT_TO_FP, MVT::v2f64, MVT::v8i16, 8*10 },
1933 { ISD::ZERO_EXTEND, MVT::v8i16, MVT::v8i8, 1 },
1934 { ISD::SIGN_EXTEND, MVT::v8i16, MVT::v8i8, 2 },
1945 { ISD::ZERO_EXTEND, MVT::v8i32, MVT::v8i16, 3 },
1946 { ISD::SIGN_EXTEND, MVT::v8i32, MVT::v8i16, 4 },
1962 { ISD::TRUNCATE, MVT::v8i8, MVT::v8i16, 2 }, // PAND+PACKUSWB
1970 { ISD::TRUNCATE, MVT::v8i16, MVT::v8i32, 5 },
2182 { ISD::SELECT, MVT::v8i16, 1 }, // pblendvb
2191 { ISD::SETCC, MVT::v8i16, 1 },
2197 { ISD::SELECT, MVT::v8i16, 3 }, // pand + pandn + por
2269 { ISD::CTLZ, MVT::v8i16, 4 },
2347 { ISD::BITREVERSE, MVT::v8i16, 1 },
2455 { ISD::BITREVERSE, MVT::v8i16, 5 },
2459 { ISD::BSWAP, MVT::v8i16, 1 },
2462 { ISD::CTLZ, MVT::v8i16, 14 },
2466 { ISD::CTPOP, MVT::v8i16, 9 },
2470 { ISD::CTTZ, MVT::v8i16, 12 },
2476 { ISD::BITREVERSE, MVT::v8i16, 27 },
2480 { ISD::BSWAP, MVT::v8i16, 7 },
2483 { ISD::CTLZ, MVT::v8i16, 20 },
2487 { ISD::CTPOP, MVT::v8i16, 13 },
2491 { ISD::CTTZ, MVT::v8i16, 16 },
2493 { ISD::SADDSAT, MVT::v8i16, 1 },
2495 { ISD::SSUBSAT, MVT::v8i16, 1 },
2497 { ISD::UADDSAT, MVT::v8i16, 1 },
2499 { ISD::USUBSAT, MVT::v8i16, 1 },
2745 { ISD::ROTL, MVT::v8i16, 1 },
2753 { ISD::ROTR, MVT::v8i16, 2 },
3143 { ISD::ADD, MVT::v8i16, 4 }, // The data reported by the IACA tool is "4.3".
3249 { ISD::AND, MVT::v8i16, 2 }, // pmovmskb + cmp
3253 { ISD::OR, MVT::v8i16, 2 }, // pmovmskb + cmp
3381 {ISD::SMIN, MVT::v8i16, 1},
3388 {ISD::UMIN, MVT::v8i16, 1},
3511 {ISD::UMIN, MVT::v8i16, 9}, // need pxors to use pminsw/pmaxsw
3519 {ISD::SMIN, MVT::v8i16, 4}, // phminposuw+xor
3520 {ISD::UMIN, MVT::v8i16, 4}, // FIXME: umin is cheaper than umax