Home
last modified time | relevance | path

Searched refs:SplatValue (Results 1 – 21 of 21) sorted by relevance

/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/Mips/
H A DMipsSEISelDAGToDAG.cpp521 APInt SplatValue, SplatUndef; in selectVSplat() local
529 Imm = SplatValue; in selectVSplat()
1086 APInt SplatValue, SplatUndef; in trySelect() local
1128 if (SplatValue.isSignedIntN(10)) { in trySelect()
1129 SDValue Imm = CurDAG->getTargetConstant(SplatValue, DL, in trySelect()
1133 } else if (SplatValue.isSignedIntN(16) && in trySelect()
1157 const unsigned Lo = SplatValue.getLoBits(16).getZExtValue(); in trySelect()
1166 const unsigned Lo = SplatValue.getLoBits(16).getZExtValue(); in trySelect()
1189 const unsigned Lo = SplatValue.getLoBits(16).getZExtValue(); in trySelect()
1212 } else if (SplatValue.isSignedIntN(64)) { in trySelect()
[all …]
H A DMipsISelDAGToDAG.cpp239 APInt SplatValue, SplatUndef; in selectVecAddAsVecSubIfProfitable() local
243 if (!BVN->isConstantSplat(SplatValue, SplatUndef, SplatBitSize, HasAnyUndefs, in selectVecAddAsVecSubIfProfitable()
249 if (IsInlineConstant(SplatValue)) in selectVecAddAsVecSubIfProfitable()
252 APInt NegSplatValue = 0 - SplatValue; in selectVecAddAsVecSubIfProfitable()
H A DMipsSEISelLowering.cpp532 APInt SplatValue, SplatUndef; in isVSplat() local
540 Imm = SplatValue; in isVSplat()
557 APInt SplatValue, SplatUndef; in isVectorAllOnes() local
564 return SplatValue.isAllOnes(); in isVectorAllOnes()
841 APInt SplatValue, SplatUndef; in performDSPShiftCombine() local
854 (SplatValue.getZExtValue() >= EltSize)) in performDSPShiftCombine()
1418 SDValue SplatValueA = SplatValue; in getBuildVectorSplat()
1419 SDValue SplatValueB = SplatValue; in getBuildVectorSplat()
1420 SDLoc DL(SplatValue); in getBuildVectorSplat()
2452 APInt SplatValue, SplatUndef; in lowerBUILD_VECTOR() local
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/LoongArch/
H A DLoongArchISelDAGToDAG.cpp91 APInt SplatValue, SplatUndef; in INITIALIZE_PASS() local
101 if (!BVN->isConstantSplat(SplatValue, SplatUndef, SplatBitSize, in INITIALIZE_PASS()
128 if (SplatValue.isSignedIntN(10)) { in INITIALIZE_PASS()
129 SDValue Imm = CurDAG->getTargetConstant(SplatValue, DL, in INITIALIZE_PASS()
334 APInt SplatValue, SplatUndef; in selectVSplat() local
338 if (!Node->isConstantSplat(SplatValue, SplatUndef, SplatBitSize, HasAnyUndefs, in selectVSplat()
342 Imm = SplatValue; in selectVSplat()
H A DLoongArchISelLowering.cpp455 APInt SplatValue, SplatUndef; in lowerBUILD_VECTOR() local
465 if (Node->isConstantSplat(SplatValue, SplatUndef, SplatBitSize, HasAnyUndefs, in lowerBUILD_VECTOR()
493 SDValue Result = DAG.getConstant(SplatValue, DL, ViaVecTy); in lowerBUILD_VECTOR()
/freebsd-14.2/contrib/llvm-project/llvm/lib/Transforms/Scalar/
H A DLoopIdiomRecognize.cpp448 Value *SplatValue = isBytewiseValue(StoredVal, *DL); in isLegalStore() local
455 if (!UnorderedAtomic && HasMemset && SplatValue && !DisableLIRP::Memset && in isLegalStore()
458 CurLoop->isLoopInvariant(SplatValue)) { in isLegalStore()
917 Value *SplatValue = MSI->getValue(); in processLoopMemSet() local
918 if (!SplatValue || !CurLoop->isLoopInvariant(SplatValue)) in processLoopMemSet()
1006 Value *SplatValue = isBytewiseValue(StoredVal, *DL); in processLoopStridedStore() local
1009 if (!SplatValue) in processLoopStridedStore()
1012 assert((SplatValue || PatternValue) && in processLoopStridedStore()
1075 if (!SplatValue && !isLibFuncEmittable(M, TLI, LibFunc_memset_pattern16)) in processLoopStridedStore()
1087 if (SplatValue) { in processLoopStridedStore()
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/lib/CodeGen/GlobalISel/
H A DUtils.cpp1190 int SplatValue = *FirstDefinedIdx; in getSplatIndex() local
1192 [&SplatValue](int Elt) { return Elt >= 0 && Elt != SplatValue; })) in getSplatIndex()
1195 return SplatValue; in getSplatIndex()
1249 int64_t SplatValue, bool AllowUndef) { in isBuildVectorConstantSplat() argument
1251 return mi_match(SplatValAndReg->VReg, MRI, m_SpecificICst(SplatValue)); in isBuildVectorConstantSplat()
1257 int64_t SplatValue, bool AllowUndef) { in isBuildVectorConstantSplat() argument
1258 return isBuildVectorConstantSplat(MI.getOperand(0).getReg(), MRI, SplatValue, in isBuildVectorConstantSplat()
H A DCombinerHelper.cpp6299 bool CombinerHelper::isConstantSplatVector(Register Src, int64_t SplatValue, in isConstantSplatVector() argument
6315 if (IConstant && IConstant->Value == SplatValue) in isConstantSplatVector()
/freebsd-14.2/contrib/llvm-project/llvm/include/llvm/CodeGen/GlobalISel/
H A DUtils.h431 int64_t SplatValue, bool AllowUndef);
437 int64_t SplatValue, bool AllowUndef);
H A DCombinerHelper.h918 bool isConstantSplatVector(Register Src, int64_t SplatValue,
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/AArch64/
H A DAArch64TargetTransformInfo.cpp987 auto *SplatValue = in instCombineSVECmpNE() local
989 if (!SplatValue || !SplatValue->isZero()) in instCombineSVECmpNE()
1554 auto *SplatValue = getSplatValue(I); in instCombineSVEVectorMul() local
1555 if (!SplatValue) in instCombineSVEVectorMul()
1557 return match(SplatValue, m_FPOne()) || match(SplatValue, m_One()); in instCombineSVEVectorMul()
1567 auto *SplatValue = IntrI->getOperand(2); in instCombineSVEVectorMul() local
1568 return match(SplatValue, m_FPOne()) || match(SplatValue, m_One()); in instCombineSVEVectorMul()
1619 if (!SplatValue || in instCombineSVETBL()
1620 SplatValue->getValue().uge(VTy->getElementCount().getKnownMinValue())) in instCombineSVETBL()
1625 auto *Extract = IC.Builder.CreateExtractElement(OpVal, SplatValue); in instCombineSVETBL()
[all …]
H A DAArch64ISelLowering.cpp13912 APInt SplatValue; in EmitVectorComparison() local
13918 bool IsCnst = BVN && BVN->isConstantSplat(SplatValue, SplatUndef, in EmitVectorComparison()
13921 bool IsZero = IsCnst && SplatValue == 0; in EmitVectorComparison()
13923 IsCnst && SrcVT.getScalarSizeInBits() == SplatBitSize && SplatValue == 1; in EmitVectorComparison()
13924 bool IsMinusOne = IsCnst && SplatValue.isAllOnes(); in EmitVectorComparison()
19607 APInt SplatValue, SplatUndef; in tryCombineShiftImm() local
19610 if (!BVN->isConstantSplat(SplatValue, SplatUndef, SplatBitSize, in tryCombineShiftImm()
19615 ShiftAmount = SplatValue.getSExtValue(); in tryCombineShiftImm()
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/WebAssembly/
H A DWebAssemblyISelLowering.cpp2146 SDValue SplatValue; in LowerBUILD_VECTOR() local
2148 std::tie(SplatValue, NumSplatLanes) = GetMostCommon(SplatValueCounts); in LowerBUILD_VECTOR()
2262 Result = DAG.getSplatBuildVector(VecT, DL, SplatValue); in LowerBUILD_VECTOR()
2263 IsLaneConstructed = [&SplatValue](size_t _, const SDValue &Lane) { in LowerBUILD_VECTOR()
2264 return Lane == SplatValue; in LowerBUILD_VECTOR()
2575 APInt SplatValue, SplatUndef; in performVectorTruncZeroCombine() local
2581 Splat->isConstantSplat(SplatValue, SplatUndef, SplatBitSize, in performVectorTruncZeroCombine()
2583 SplatValue == 0; in performVectorTruncZeroCombine()
/freebsd-14.2/contrib/llvm-project/llvm/include/llvm/CodeGen/
H A DSelectionDAGNodes.h91 bool isConstantSplatVector(const SDNode *N, APInt &SplatValue);
2041 bool isConstantSplat(APInt &SplatValue, APInt &SplatUndef,
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/RISCV/
H A DRISCVISelLowering.cpp3630 uint64_t SplatValue = 0; in lowerBuildVectorOfConstants() local
3635 SplatValue |= in lowerBuildVectorOfConstants()
3642 SplatValue = SignExtend64<32>(SplatValue); in lowerBuildVectorOfConstants()
3646 DAG.getConstant(SplatValue, DL, XLenVT), in lowerBuildVectorOfConstants()
3686 uint64_t SplatValue = 0; in lowerBuildVectorOfConstants() local
3691 SplatValue |= in lowerBuildVectorOfConstants()
3699 SplatValue = SignExtend64<32>(SplatValue); in lowerBuildVectorOfConstants()
3707 if (ViaIntVT.bitsLE(XLenVT) || isInt<32>(SplatValue)) { in lowerBuildVectorOfConstants()
3715 DAG.getConstant(SplatValue, DL, XLenVT), ViaVL); in lowerBuildVectorOfConstants()
5041 if (SDValue SplatValue = DAG.getSplatValue(V1, /*LegalTypes*/ true)) { in lowerVECTOR_SHUFFLE() local
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/
H A DSelectionDAG.cpp12395 bool BuildVectorSDNode::isConstantSplat(APInt &SplatValue, APInt &SplatUndef, in isConstantSplat() argument
12408 SplatValue = APInt(VecWidth, 0); in isConstantSplat()
12427 SplatValue.insertBits(CN->getAPIntValue().zextOrTrunc(EltWidth), BitPos); in isConstantSplat()
12429 SplatValue.insertBits(CN->getValueAPF().bitcastToAPInt(), BitPos); in isConstantSplat()
12445 APInt HighValue = SplatValue.extractBits(HalfSize, HalfSize); in isConstantSplat()
12446 APInt LowValue = SplatValue.extractBits(HalfSize, 0); in isConstantSplat()
12455 SplatValue = HighValue | LowValue; in isConstantSplat()
H A DTargetLowering.cpp6519 auto SplatValue = llvm::find_if_not(Values, Predicate); in turnVectorIntoSplatVector() local
6520 if (SplatValue != Values.end()) { in turnVectorIntoSplatVector()
6522 if (llvm::all_of(Values, [Predicate, SplatValue](SDValue Value) { in turnVectorIntoSplatVector()
6523 return Value == *SplatValue || Predicate(Value); in turnVectorIntoSplatVector()
6525 Replacement = *SplatValue; in turnVectorIntoSplatVector()
H A DDAGCombiner.cpp7109 APInt SplatValue, SplatUndef; in visitAND() local
7119 Vector->isConstantSplat(SplatValue, SplatUndef, SplatBitSize, in visitAND()
7127 SplatValue |= SplatUndef; in visitAND()
7135 Constant &= SplatValue.extractBits(EltBitWidth, i * EltBitWidth); in visitAND()
12391 APInt SplatValue; in visitVSELECT() local
12393 ISD::isConstantSplatVector(OpRHS.getNode(), SplatValue) && in visitVSELECT()
12395 SplatValue.isSignMask()) { in visitVSELECT()
12398 OpRHS = DAG.getConstant(SplatValue, DL, VT); in visitVSELECT()
H A DLegalizeVectorTypes.cpp2460 APInt SplatValue; in SplitVecRes_VECTOR_SHUFFLE() local
2462 (ISD::isConstantSplatVector(N.getNode(), SplatValue) || in SplitVecRes_VECTOR_SHUFFLE()
/freebsd-14.2/contrib/llvm-project/llvm/lib/Transforms/InstCombine/
H A DInstCombineCalls.cpp414 if (auto *SplatValue = getSplatValue(II.getArgOperand(0))) { in simplifyMaskedScatter() local
418 StoreInst *S = new StoreInst(SplatValue, SplatPtr, /*IsVolatile=*/false, in simplifyMaskedScatter()
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/X86/
H A DX86ISelLowering.cpp4142 APInt SplatValue, SplatUndef; in getAVX512Node() local
4145 if (BV->isConstantSplat(SplatValue, SplatUndef, SplatBitSize, in getAVX512Node()
4147 !HasAnyUndefs && SplatValue.getBitWidth() == OpEltSizeInBits) in getAVX512Node()
4148 return DAG.getConstant(SplatValue, DL, DstVT); in getAVX512Node()
7074 static Constant *getConstantVector(MVT VT, const APInt &SplatValue, in getConstantVector() argument
7091 return getConstantScalar(SplatValue); in getConstantVector()
7096 APInt Val = SplatValue.extractBits(ScalarSize, ScalarSize * I); in getConstantVector()
7198 APInt SplatValue, Undef; in lowerBuildVectorAsBroadcast() local
7202 if (BVOp->isConstantSplat(SplatValue, Undef, SplatBitSize, HasUndef) && in lowerBuildVectorAsBroadcast()
7217 Constant *C = getConstantVector(VT, SplatValue, SplatBitSize, *Ctx); in lowerBuildVectorAsBroadcast()
[all …]