Lines Matching refs:LT
242 std::pair<InstructionCost, MVT> LT = getTypeLegalizationCost(Ty); in getArithmeticInstrCost() local
247 if (ISD == ISD::MUL && Args.size() == 2 && LT.second.isVector() && in getArithmeticInstrCost()
248 (LT.second.getScalarType() == MVT::i32 || in getArithmeticInstrCost()
249 LT.second.getScalarType() == MVT::i64)) { in getArithmeticInstrCost()
261 LT.second.getScalarType() == MVT::i32) { in getArithmeticInstrCost()
275 LT.second = in getArithmeticInstrCost()
276 MVT::getVectorVT(MVT::i16, 2 * LT.second.getVectorNumElements()); in getArithmeticInstrCost()
282 if (ST->useSLMArithCosts() && LT.second == MVT::v4i32) { in getArithmeticInstrCost()
284 return LT.first * 3; // pmullw/sext in getArithmeticInstrCost()
286 return LT.first * 3; // pmullw/zext in getArithmeticInstrCost()
288 return LT.first * 5; // pmullw/pmulhw/pshuf in getArithmeticInstrCost()
290 return LT.first * 5; // pmullw/pmulhw/pshuf in getArithmeticInstrCost()
296 if (!SignedMode && OpMinSize <= 32 && LT.second.getScalarType() == MVT::i64) in getArithmeticInstrCost()
369 CostTableLookup(AVX512BWUniformConstCostTable, ISD, LT.second)) in getArithmeticInstrCost()
371 return LT.first * *KindCost; in getArithmeticInstrCost()
405 CostTableLookup(AVX512UniformConstCostTable, ISD, LT.second)) in getArithmeticInstrCost()
407 return LT.first * *KindCost; in getArithmeticInstrCost()
446 CostTableLookup(AVX2UniformConstCostTable, ISD, LT.second)) in getArithmeticInstrCost()
448 return LT.first * *KindCost; in getArithmeticInstrCost()
487 (!ST->hasXOP() || LT.second.getScalarSizeInBits() != 8)) in getArithmeticInstrCost()
489 CostTableLookup(AVXUniformConstCostTable, ISD, LT.second)) in getArithmeticInstrCost()
491 return LT.first * *KindCost; in getArithmeticInstrCost()
518 (!ST->hasXOP() || LT.second.getScalarSizeInBits() != 8)) in getArithmeticInstrCost()
520 CostTableLookup(SSE2UniformConstCostTable, ISD, LT.second)) in getArithmeticInstrCost()
522 return LT.first * *KindCost; in getArithmeticInstrCost()
538 CostTableLookup(AVX512BWConstCostTable, ISD, LT.second)) in getArithmeticInstrCost()
540 return LT.first * *KindCost; in getArithmeticInstrCost()
561 CostTableLookup(AVX512ConstCostTable, ISD, LT.second)) in getArithmeticInstrCost()
563 return LT.first * *KindCost; in getArithmeticInstrCost()
583 if (const auto *Entry = CostTableLookup(AVX2ConstCostTable, ISD, LT.second)) in getArithmeticInstrCost()
585 return LT.first * *KindCost; in getArithmeticInstrCost()
605 if (const auto *Entry = CostTableLookup(AVXConstCostTable, ISD, LT.second)) in getArithmeticInstrCost()
607 return LT.first * *KindCost; in getArithmeticInstrCost()
616 CostTableLookup(SSE41ConstCostTable, ISD, LT.second)) in getArithmeticInstrCost()
618 return LT.first * *KindCost; in getArithmeticInstrCost()
638 if (const auto *Entry = CostTableLookup(SSE2ConstCostTable, ISD, LT.second)) in getArithmeticInstrCost()
640 return LT.first * *KindCost; in getArithmeticInstrCost()
660 CostTableLookup(AVX512BWUniformCostTable, ISD, LT.second)) in getArithmeticInstrCost()
662 return LT.first * *KindCost; in getArithmeticInstrCost()
684 CostTableLookup(AVX512UniformCostTable, ISD, LT.second)) in getArithmeticInstrCost()
686 return LT.first * *KindCost; in getArithmeticInstrCost()
721 CostTableLookup(AVX2UniformCostTable, ISD, LT.second)) in getArithmeticInstrCost()
723 return LT.first * *KindCost; in getArithmeticInstrCost()
757 (!ST->hasXOP() || LT.second.getScalarSizeInBits() != 8)) in getArithmeticInstrCost()
759 CostTableLookup(AVXUniformCostTable, ISD, LT.second)) in getArithmeticInstrCost()
761 return LT.first * *KindCost; in getArithmeticInstrCost()
783 (!ST->hasXOP() || LT.second.getScalarSizeInBits() != 8)) in getArithmeticInstrCost()
785 CostTableLookup(SSE2UniformCostTable, ISD, LT.second)) in getArithmeticInstrCost()
787 return LT.first * *KindCost; in getArithmeticInstrCost()
797 if (const auto *Entry = CostTableLookup(AVX512DQCostTable, ISD, LT.second)) in getArithmeticInstrCost()
799 return LT.first * *KindCost; in getArithmeticInstrCost()
844 if (const auto *Entry = CostTableLookup(AVX512BWCostTable, ISD, LT.second)) in getArithmeticInstrCost()
846 return LT.first * *KindCost; in getArithmeticInstrCost()
938 if (const auto *Entry = CostTableLookup(AVX512CostTable, ISD, LT.second)) in getArithmeticInstrCost()
940 return LT.first * *KindCost; in getArithmeticInstrCost()
958 if (ISD == ISD::SHL && LT.second == MVT::v32i16 && Op2Info.isConstant()) in getArithmeticInstrCost()
966 if (ST->hasAVX2() && !(ST->hasXOP() && LT.second == MVT::v4i32)) { in getArithmeticInstrCost()
967 if (ISD == ISD::SHL && LT.second == MVT::v16i16 && in getArithmeticInstrCost()
974 if (const auto *Entry = CostTableLookup(AVX2ShiftCostTable, ISD, LT.second)) in getArithmeticInstrCost()
976 return LT.first * *KindCost; in getArithmeticInstrCost()
1016 CostTableLookup(XOPShiftCostTable, ShiftISD, LT.second)) in getArithmeticInstrCost()
1018 return LT.first * *KindCost; in getArithmeticInstrCost()
1022 MVT VT = LT.second; in getArithmeticInstrCost()
1038 if (const auto *Entry = CostTableLookup(GLMCostTable, ISD, LT.second)) in getArithmeticInstrCost()
1040 return LT.first * *KindCost; in getArithmeticInstrCost()
1067 if (const auto *Entry = CostTableLookup(SLMCostTable, ISD, LT.second)) in getArithmeticInstrCost()
1069 return LT.first * *KindCost; in getArithmeticInstrCost()
1142 if (const auto *Entry = CostTableLookup(AVX2CostTable, ISD, LT.second)) in getArithmeticInstrCost()
1144 return LT.first * *KindCost; in getArithmeticInstrCost()
1242 if (const auto *Entry = CostTableLookup(AVX1CostTable, ISD, LT.second)) in getArithmeticInstrCost()
1244 return LT.first * *KindCost; in getArithmeticInstrCost()
1271 if (const auto *Entry = CostTableLookup(SSE42CostTable, ISD, LT.second)) in getArithmeticInstrCost()
1273 return LT.first * *KindCost; in getArithmeticInstrCost()
1295 if (const auto *Entry = CostTableLookup(SSE41CostTable, ISD, LT.second)) in getArithmeticInstrCost()
1297 return LT.first * *KindCost; in getArithmeticInstrCost()
1365 if (const auto *Entry = CostTableLookup(SSE2CostTable, ISD, LT.second)) in getArithmeticInstrCost()
1367 return LT.first * *KindCost; in getArithmeticInstrCost()
1387 if (const auto *Entry = CostTableLookup(SSE1CostTable, ISD, LT.second)) in getArithmeticInstrCost()
1389 return LT.first * *KindCost; in getArithmeticInstrCost()
1398 if (const auto *Entry = CostTableLookup(X64CostTbl, ISD, LT.second)) in getArithmeticInstrCost()
1400 return LT.first * *KindCost; in getArithmeticInstrCost()
1422 if (const auto *Entry = CostTableLookup(X86CostTbl, ISD, LT.second)) in getArithmeticInstrCost()
1424 return LT.first * *KindCost; in getArithmeticInstrCost()
1432 if (CostKind == TTI::TCK_RecipThroughput && LT.second.isVector() && in getArithmeticInstrCost()
1438 return 20 * LT.first * LT.second.getVectorNumElements() * ScalarCost; in getArithmeticInstrCost()
1452 return LT.first; in getArithmeticInstrCost()
1479 std::pair<InstructionCost, MVT> LT = getTypeLegalizationCost(BaseTp); in getShuffleCost() local
1491 LT.first = 1; in getShuffleCost()
1494 if (LT.second.isVector() && LT.second.getScalarType() == MVT::bf16) in getShuffleCost()
1495 LT.second = LT.second.changeVectorElementType(MVT::f16); in getShuffleCost()
1499 if (Kind == TTI::SK_ExtractSubvector && LT.second.isVector()) { in getShuffleCost()
1500 int NumElts = LT.second.getVectorNumElements(); in getShuffleCost()
1517 LT.second.getVectorElementType() == in getShuffleCost()
1519 LT.second.getVectorElementType().getSizeInBits() == in getShuffleCost()
1524 LT.second.getVectorNumElements()); in getShuffleCost()
1548 if (Kind == TTI::SK_InsertSubvector && LT.second.isVector()) { in getShuffleCost()
1549 int NumElts = LT.second.getVectorNumElements(); in getShuffleCost()
1605 if (Kind == TTI::SK_PermuteSingleSrc && LT.first != 1) { in getShuffleCost()
1606 MVT LegalVT = LT.second; in getShuffleCost()
1617 InstructionCost NumOfDests = LT.first; in getShuffleCost()
1692 if (Kind == TTI::SK_PermuteTwoSrc && LT.first != 1) { in getShuffleCost()
1694 InstructionCost NumOfDests = LT.first; in getShuffleCost()
1695 InstructionCost NumOfShufflesPerDest = LT.first * 2 - 1; in getShuffleCost()
1696 LT.first = NumOfDests * NumOfShufflesPerDest; in getShuffleCost()
1713 CostTableLookup(AVX512VBMIShuffleTbl, Kind, LT.second)) in getShuffleCost()
1714 return LT.first * Entry->Cost; in getShuffleCost()
1748 CostTableLookup(AVX512BWShuffleTbl, Kind, LT.second)) in getShuffleCost()
1749 return LT.first * Entry->Cost; in getShuffleCost()
1826 if (const auto *Entry = CostTableLookup(AVX512ShuffleTbl, Kind, LT.second)) in getShuffleCost()
1828 return LT.first * *KindCost; in getShuffleCost()
1881 if (const auto *Entry = CostTableLookup(AVX2ShuffleTbl, Kind, LT.second)) in getShuffleCost()
1882 return LT.first * Entry->Cost; in getShuffleCost()
1903 if (const auto *Entry = CostTableLookup(XOPShuffleTbl, Kind, LT.second)) in getShuffleCost()
1904 return LT.first * Entry->Cost; in getShuffleCost()
1966 if (const auto *Entry = CostTableLookup(AVX1ShuffleTbl, Kind, LT.second)) in getShuffleCost()
1967 return LT.first * Entry->Cost; in getShuffleCost()
1980 if (const auto *Entry = CostTableLookup(SSE41ShuffleTbl, Kind, LT.second)) in getShuffleCost()
1981 return LT.first * Entry->Cost; in getShuffleCost()
2012 if (const auto *Entry = CostTableLookup(SSSE3ShuffleTbl, Kind, LT.second)) in getShuffleCost()
2013 return LT.first * Entry->Cost; in getShuffleCost()
2072 CostTableLookup(SSE3BroadcastLoadTbl, Kind, LT.second)) { in getShuffleCost()
2074 LT.second.getVectorElementCount()) && in getShuffleCost()
2076 return LT.first * Entry->Cost; in getShuffleCost()
2079 if (const auto *Entry = CostTableLookup(SSE2ShuffleTbl, Kind, LT.second)) in getShuffleCost()
2080 return LT.first * Entry->Cost; in getShuffleCost()
2093 if (const auto *Entry = CostTableLookup(SSE1ShuffleTbl, Kind, LT.second)) in getShuffleCost()
2094 return LT.first * Entry->Cost; in getShuffleCost()
3081 std::pair<InstructionCost, MVT> LT = getTypeLegalizationCost(ValTy); in getCmpSelInstrCost() local
3083 MVT MTy = LT.second; in getCmpSelInstrCost()
3307 return LT.first * (ExtraCost + *KindCost); in getCmpSelInstrCost()
3312 return LT.first * (ExtraCost + *KindCost); in getCmpSelInstrCost()
3317 return LT.first * (ExtraCost + *KindCost); in getCmpSelInstrCost()
3322 return LT.first * (ExtraCost + *KindCost); in getCmpSelInstrCost()
3327 return LT.first * (ExtraCost + *KindCost); in getCmpSelInstrCost()
3332 return LT.first * (ExtraCost + *KindCost); in getCmpSelInstrCost()
3337 return LT.first * (ExtraCost + *KindCost); in getCmpSelInstrCost()
3342 return LT.first * (ExtraCost + *KindCost); in getCmpSelInstrCost()
3347 return LT.first * (ExtraCost + *KindCost); in getCmpSelInstrCost()
3352 return LT.first * (ExtraCost + *KindCost); in getCmpSelInstrCost()
4143 std::pair<InstructionCost, MVT> LT = getTypeLegalizationCost(OpTy); in getIntrinsicInstrCost() local
4144 MVT MTy = LT.second; in getIntrinsicInstrCost()
4160 return LT.first * Cost; in getIntrinsicInstrCost()
4175 return LT.first; in getIntrinsicInstrCost()
4193 return adjustTableCost(Entry->ISD, *KindCost, LT.first, in getIntrinsicInstrCost()
4199 return adjustTableCost(Entry->ISD, *KindCost, LT.first, in getIntrinsicInstrCost()
4205 return adjustTableCost(Entry->ISD, *KindCost, LT.first, in getIntrinsicInstrCost()
4211 return adjustTableCost(Entry->ISD, *KindCost, LT.first, in getIntrinsicInstrCost()
4217 return adjustTableCost(Entry->ISD, *KindCost, LT.first, in getIntrinsicInstrCost()
4223 return adjustTableCost(Entry->ISD, *KindCost, LT.first, in getIntrinsicInstrCost()
4229 return adjustTableCost(Entry->ISD, *KindCost, LT.first, in getIntrinsicInstrCost()
4235 return adjustTableCost(Entry->ISD, *KindCost, LT.first, in getIntrinsicInstrCost()
4241 return adjustTableCost(Entry->ISD, *KindCost, LT.first, in getIntrinsicInstrCost()
4247 return adjustTableCost(Entry->ISD, *KindCost, LT.first, in getIntrinsicInstrCost()
4253 return adjustTableCost(Entry->ISD, *KindCost, LT.first, in getIntrinsicInstrCost()
4259 return adjustTableCost(Entry->ISD, *KindCost, LT.first, in getIntrinsicInstrCost()
4265 return adjustTableCost(Entry->ISD, *KindCost, LT.first, in getIntrinsicInstrCost()
4271 return adjustTableCost(Entry->ISD, *KindCost, LT.first, in getIntrinsicInstrCost()
4277 return adjustTableCost(Entry->ISD, *KindCost, LT.first, in getIntrinsicInstrCost()
4283 return adjustTableCost(Entry->ISD, *KindCost, LT.first, in getIntrinsicInstrCost()
4290 return adjustTableCost(Entry->ISD, *KindCost, LT.first, in getIntrinsicInstrCost()
4295 return adjustTableCost(Entry->ISD, *KindCost, LT.first, in getIntrinsicInstrCost()
4303 return adjustTableCost(Entry->ISD, *KindCost, LT.first, in getIntrinsicInstrCost()
4308 return adjustTableCost(Entry->ISD, *KindCost, LT.first, in getIntrinsicInstrCost()
4316 return adjustTableCost(Entry->ISD, *KindCost, LT.first, in getIntrinsicInstrCost()
4321 return adjustTableCost(Entry->ISD, *KindCost, LT.first, in getIntrinsicInstrCost()
4339 return adjustTableCost(Entry->ISD, *KindCost, LT.first, in getIntrinsicInstrCost()
4344 return adjustTableCost(Entry->ISD, *KindCost, LT.first, ICA.getFlags()); in getIntrinsicInstrCost()
4401 std::pair<InstructionCost, MVT> LT = getTypeLegalizationCost(Val); in getVectorInstrCost() local
4404 if (!LT.second.isVector()) in getVectorInstrCost()
4408 unsigned SizeInBits = LT.second.getSizeInBits(); in getVectorInstrCost()
4409 unsigned NumElts = LT.second.getVectorNumElements(); in getVectorInstrCost()
4425 MVT MScalarTy = LT.second.getScalarType(); in getVectorInstrCost()
4504 std::pair<InstructionCost, MVT> LT = getTypeLegalizationCost(Ty); in getScalarizationOverhead() local
4505 MVT MScalarTy = LT.second.getScalarType(); in getScalarizationOverhead()
4506 unsigned LegalVectorBitWidth = LT.second.getSizeInBits(); in getScalarizationOverhead()
4514 const int NumLegalVectors = *LT.first.getValue(); in getScalarizationOverhead()
4545 LT.second.getVectorNumElements() * NumLegalVectors; in getScalarizationOverhead()
4587 } else if (LT.second.isVector()) { in getScalarizationOverhead()
4598 unsigned NumElts = LT.second.getVectorNumElements(); in getScalarizationOverhead()
4601 Cost += (std::min<unsigned>(NumElts, Pow2Elts) - 1) * LT.first; in getScalarizationOverhead()
4616 if (LT.second.isVector()) { in getScalarizationOverhead()
4618 LT.second.getVectorNumElements() * NumLegalVectors; in getScalarizationOverhead()
4793 std::pair<InstructionCost, MVT> LT = getTypeLegalizationCost(Src); in getMemoryOpCost() local
4806 if (!VTy || !LT.second.isVector()) { in getMemoryOpCost()
4808 return (LT.second.isFloatingPoint() ? Cost : 0) + LT.first * 1; in getMemoryOpCost()
4825 const int MaxLegalOpSizeBytes = divideCeil(LT.second.getSizeInBits(), 8); in getMemoryOpCost()
4880 bool Is0thSubVec = (NumEltDone() % LT.second.getVectorNumElements()) == 0; in getMemoryOpCost()
4967 std::pair<InstructionCost, MVT> LT = getTypeLegalizationCost(SrcVTy); in getMaskedMemoryOpCost() local
4970 if (VT.isSimple() && LT.second != VT.getSimpleVT() && in getMaskedMemoryOpCost()
4971 LT.second.getVectorNumElements() == NumElem) in getMaskedMemoryOpCost()
4978 else if (LT.first * LT.second.getVectorNumElements() > NumElem) { in getMaskedMemoryOpCost()
4980 LT.second.getVectorNumElements()); in getMaskedMemoryOpCost()
4988 return Cost + LT.first * (IsLoad ? 2 : 8); in getMaskedMemoryOpCost()
4991 return Cost + LT.first; in getMaskedMemoryOpCost()
5106 std::pair<InstructionCost, MVT> LT = getTypeLegalizationCost(ValTy); in getArithmeticReductionCost() local
5108 MVT MTy = LT.second; in getArithmeticReductionCost()
5123 if (LT.first != 1 && MTy.isVector() && in getArithmeticReductionCost()
5129 ArithmeticCost *= LT.first - 1; in getArithmeticReductionCost()
5193 if (LT.first != 1 && MTy.isVector() && in getArithmeticReductionCost()
5199 ArithmeticCost *= LT.first - 1; in getArithmeticReductionCost()
5229 if (LT.first != 1 && MTy.isVector() && in getArithmeticReductionCost()
5235 ReductionCost *= LT.first - 1; in getArithmeticReductionCost()
5304 std::pair<InstructionCost, MVT> LT = getTypeLegalizationCost(ValTy); in getMinMaxReductionCost() local
5306 MVT MTy = LT.second; in getMinMaxReductionCost()
5388 if (LT.first != 1 && MTy.isVector() && in getMinMaxReductionCost()
5394 MinMaxCost *= LT.first - 1; in getMinMaxReductionCost()