| /freebsd-14.2/contrib/llvm-project/llvm/lib/Target/Mips/ |
| H A D | MipsSEISelDAGToDAG.cpp | 521 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 D | MipsISelDAGToDAG.cpp | 239 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 D | MipsSEISelLowering.cpp | 532 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 D | LoongArchISelDAGToDAG.cpp | 91 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 D | LoongArchISelLowering.cpp | 455 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 D | LoopIdiomRecognize.cpp | 448 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 D | Utils.cpp | 1190 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 D | CombinerHelper.cpp | 6299 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 D | Utils.h | 431 int64_t SplatValue, bool AllowUndef); 437 int64_t SplatValue, bool AllowUndef);
|
| H A D | CombinerHelper.h | 918 bool isConstantSplatVector(Register Src, int64_t SplatValue,
|
| /freebsd-14.2/contrib/llvm-project/llvm/lib/Target/AArch64/ |
| H A D | AArch64TargetTransformInfo.cpp | 987 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 D | AArch64ISelLowering.cpp | 13912 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 D | WebAssemblyISelLowering.cpp | 2146 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 D | SelectionDAGNodes.h | 91 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 D | RISCVISelLowering.cpp | 3630 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 D | SelectionDAG.cpp | 12395 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 D | TargetLowering.cpp | 6519 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 D | DAGCombiner.cpp | 7109 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 D | LegalizeVectorTypes.cpp | 2460 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 D | InstCombineCalls.cpp | 414 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 D | X86ISelLowering.cpp | 4142 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 …]
|