Lines Matching refs:HST
79 HST(static_cast<const HexagonSubtarget &>(*TM_.getSubtargetImpl(F))) {} in HexagonVectorCombine()
176 const HexagonSubtarget &HST; member in __anonfdf282b80111::HexagonVectorCombine
645 return HVC.HST.isTypeForHVX(AI.ValTy); in isHvx()
716 bool HvxHasPredLoad = HVC.HST.useHVXV62Ops(); in createLoad()
757 assert(HVC.HST.isTypeForHVX(ValTy) && in createPredicatedLoad()
767 auto V6_vL32b_pred_ai = HVC.HST.getIntrinsicId(Hexagon::V6_vL32b_pred_ai); in createPredicatedLoad()
829 assert(HVC.HST.isTypeForHVX(Val->getType()) && in createPredicatedStore()
838 auto V6_vS32b_pred_ai = HVC.HST.getIntrinsicId(Hexagon::V6_vS32b_pred_ai); in createPredicatedStore()
917 G.second, [&](auto &I) { return HVC.HST.isTypeForHVX(I.ValTy); }); in createAddressGroups()
972 if (!HVC.HST.useHVXV62Ops()) in createLoadGroups()
1023 if (!HVC.HST.useHVXV62Ops()) in createStoreGroups()
1034 return HVC.HST.isHVXVectorType( in createStoreGroups()
1512 int ScLen = Move.IsHvx ? HVC.HST.getVectorLength() in realignGroup()
1548 if (HVC.HST.isTypeForHVX(Ty)) in isSectorTy()
1549 return Size == static_cast<int>(HVC.HST.getVectorLength()); in isSectorTy()
1725 if ((HVC.length(VecTy) * ElemWidth) % (8 * HVC.HST.getVectorLength()) != 0) in processFxpMul()
1782 unsigned ChopLen = (8 * HVC.HST.getVectorLength()) / std::min(Width, 32u); in processFxpMul()
1906 assert(HVC.HST.isHVXVectorType(EVT::getEVT(X.Val->getType(), false))); in createMulQ15()
1912 auto V6_vmpyhvsrs = HVC.HST.getIntrinsicId(Hexagon::V6_vmpyhvsrs); in createMulQ15()
1922 assert(HVC.HST.isHVXVectorType(EVT::getEVT(InpTy, false))); in createMulQ31()
1927 auto V6_vmpyewuh = HVC.HST.getIntrinsicId(Hexagon::V6_vmpyewuh); in createMulQ31()
1929 ? HVC.HST.getIntrinsicId(Hexagon::V6_vmpyowh_rnd_sacc) in createMulQ31()
1930 : HVC.HST.getIntrinsicId(Hexagon::V6_vmpyowh_sacc); in createMulQ31()
1942 if (VecTy == HvxI32Ty && HVC.HST.useHVXV62Ops()) { in createAddCarry()
1945 if (CarryIn == nullptr && HVC.HST.useHVXV66Ops()) { in createAddCarry()
1946 AddCarry = HVC.HST.getIntrinsicId(Hexagon::V6_vaddcarryo); in createAddCarry()
1948 AddCarry = HVC.HST.getIntrinsicId(Hexagon::V6_vaddcarry); in createAddCarry()
1971 auto V6_vandqrt = HVC.HST.getIntrinsicId(Hexagon::V6_vandqrt); in createAddCarry()
1990 V6_vmpyh = HVC.HST.getIntrinsicId(Hexagon::V6_vmpyhv); in createMul16()
1993 V6_vmpyh = HVC.HST.getIntrinsicId(Hexagon::V6_vmpyhus); in createMul16()
1995 V6_vmpyh = HVC.HST.getIntrinsicId(Hexagon::V6_vmpyuhv); in createMul16()
2009 if (HVC.HST.useHVXV69Ops()) { in createMulH16()
2011 auto V6_vmpyuhvs = HVC.HST.getIntrinsicId(Hexagon::V6_vmpyuhvs); in createMulH16()
2161 if (HST.useHVXOps()) { in run()
2231 assert(HST.isHVXElementType(ETy.getSimpleVT(), /*IncludeBool=*/false) && in getHvxTy()
2233 unsigned HwLen = HST.getVectorLength(); in getHvxTy()
2259 if (HST.isTypeForHVX(Ty)) in getTypeAlignment()
2260 return HST.getVectorLength(); in getTypeAlignment()
2346 if (HST.isTypeForHVX(Hi->getType())) { in vlalignb()
2347 assert(static_cast<unsigned>(VecLen) == HST.getVectorLength() && in vlalignb()
2349 return createHvxIntrinsic(Builder, HST.getIntrinsicId(Hexagon::V6_vlalignb), in vlalignb()
2377 if (HST.isTypeForHVX(Lo->getType())) { in vralignb()
2378 assert(static_cast<unsigned>(VecLen) == HST.getVectorLength() && in vralignb()
2380 return createHvxIntrinsic(Builder, HST.getIntrinsicId(Hexagon::V6_valignb), in vralignb()
2582 assert(HST.isTypeForHVX(SrcTy, /*IncludeBool=*/true)); in createHvxIntrinsic()
2589 unsigned HwLen = HST.getVectorLength(); in createHvxIntrinsic()
2621 assert(HST.isTypeForHVX(CallTy, /*IncludeBool=*/true)); in createHvxIntrinsic()