| /openbsd-src/gnu/llvm/llvm/lib/Target/RISCV/ |
| H A D | RISCVISelDAGToDAG.h | 86 bool selectVSplat(SDValue N, SDValue &SplatVal); 87 bool selectVSplatSimm5(SDValue N, SDValue &SplatVal); 88 bool selectVSplatUimm5(SDValue N, SDValue &SplatVal); 89 bool selectVSplatSimm5Plus1(SDValue N, SDValue &SplatVal); 90 bool selectVSplatSimm5Plus1NonZero(SDValue N, SDValue &SplatVal);
|
| H A D | RISCVISelDAGToDAG.cpp | 2480 bool RISCVDAGToDAGISel::selectVSplat(SDValue N, SDValue &SplatVal) { in selectVSplat() argument 2484 SplatVal = N.getOperand(1); in selectVSplat() 2490 static bool selectVSplatSimmHelper(SDValue N, SDValue &SplatVal, in selectVSplatSimmHelper() argument 2519 SplatVal = DAG.getTargetConstant(SplatImm, SDLoc(N), XLenVT); in selectVSplatSimmHelper() 2523 bool RISCVDAGToDAGISel::selectVSplatSimm5(SDValue N, SDValue &SplatVal) { in selectVSplatSimm5() argument 2524 return selectVSplatSimmHelper(N, SplatVal, *CurDAG, *Subtarget, in selectVSplatSimm5() 2528 bool RISCVDAGToDAGISel::selectVSplatSimm5Plus1(SDValue N, SDValue &SplatVal) { in selectVSplatSimm5Plus1() argument 2530 N, SplatVal, *CurDAG, *Subtarget, in selectVSplatSimm5Plus1() 2535 SDValue &SplatVal) { in selectVSplatSimm5Plus1NonZero() argument 2537 N, SplatVal, *CurDAG, *Subtarget, [](int64_t Imm) { in selectVSplatSimm5Plus1NonZero() [all …]
|
| H A D | RISCVISelLowering.cpp | 2350 static SDValue matchSplatAsGather(SDValue SplatVal, MVT VT, const SDLoc &DL, in matchSplatAsGather() argument 2353 if (SplatVal.getOpcode() != ISD::EXTRACT_VECTOR_ELT) in matchSplatAsGather() 2355 SDValue Vec = SplatVal.getOperand(0); in matchSplatAsGather() 2361 SDValue Idx = SplatVal.getOperand(1); in matchSplatAsGather() 4873 SDValue SplatVal = Op.getOperand(0); in lowerVectorMaskSplat() local 4884 assert(SplatVal.getValueType() == XLenVT && in lowerVectorMaskSplat() 4887 SplatVal = DAG.getNode(ISD::AND, DL, XLenVT, SplatVal, in lowerVectorMaskSplat() 4889 SDValue LHS = DAG.getSplatVector(InterVT, DL, SplatVal); in lowerVectorMaskSplat()
|
| /openbsd-src/gnu/llvm/llvm/lib/IR/ |
| H A D | Constants.cpp | 104 if (const auto *SplatVal = getSplatValue()) in isAllOnesValue() local 105 return SplatVal->isAllOnesValue(); in isAllOnesValue() 121 if (const auto *SplatVal = getSplatValue()) in isOneValue() local 122 return SplatVal->isOneValue(); in isOneValue() 148 if (const auto *SplatVal = getSplatValue()) in isNotOneValue() local 149 return SplatVal->isNotOneValue(); in isNotOneValue() 166 if (const auto *SplatVal = getSplatValue()) in isMinSignedValue() local 167 return SplatVal->isMinSignedValue(); in isMinSignedValue() 193 if (const auto *SplatVal = getSplatValue()) in isNotMinSignedValue() local 194 return SplatVal->isNotMinSignedValue(); in isNotMinSignedValue() [all …]
|
| H A D | ConstantFold.cpp | 667 if (Constant *SplatVal = Val->getSplatValue()) in ConstantFoldExtractElementInstruction() local 668 return SplatVal; in ConstantFoldExtractElementInstruction()
|
| /openbsd-src/gnu/llvm/llvm/lib/Transforms/InstCombine/ |
| H A D | InstCombineVectorOps.cpp | 1209 Value *SplatVal = InsElt.getOperand(1); in foldInsSequenceIntoSplat() local 1218 if (!Idx || CurrIE->getOperand(1) != SplatVal) in foldInsSequenceIntoSplat() 1251 FirstIE = InsertElementInst::Create(PoisonVec, SplatVal, Zero, "", &InsElt); in foldInsSequenceIntoSplat()
|
| /openbsd-src/gnu/llvm/llvm/lib/Target/AArch64/ |
| H A D | AArch64ISelLowering.cpp | 9264 SDValue SplatVal = DAG.getSExtOrTrunc(CCVal, DL, SplatValVT); in LowerSELECT() local 9265 SDValue SplatPred = DAG.getNode(ISD::SPLAT_VECTOR, DL, PredVT, SplatVal); in LowerSELECT() 11656 SDValue SplatVal = DAG.getAnyExtOrTrunc(Op.getOperand(0), DL, MVT::i64); in LowerSPLAT_VECTOR() local 11657 SplatVal = DAG.getNode(ISD::SIGN_EXTEND_INREG, DL, MVT::i64, SplatVal, in LowerSPLAT_VECTOR() 11665 Zero, SplatVal), in LowerSPLAT_VECTOR() 11667 return DAG.getNode(ISD::INTRINSIC_WO_CHAIN, DL, VT, ID, Zero, SplatVal); in LowerSPLAT_VECTOR() 12786 static bool isPow2Splat(SDValue Op, uint64_t &SplatVal, bool &Negated) { in isPow2Splat() argument 12793 !isAllConstantBuildVector(Op, SplatVal)) in isPow2Splat() 12800 SplatVal = Op->getConstantOperandVal(0); in isPow2Splat() 12802 SplatVal = (int32_t)SplatVal; in isPow2Splat() [all …]
|
| H A D | AArch64TargetTransformInfo.cpp | 829 if (auto *SplatVal = getSplatValue(Vec)) in instCombineSVELast() local 830 return IC.replaceInstUsesWith(II, SplatVal); in instCombineSVELast()
|
| /openbsd-src/gnu/llvm/llvm/lib/Target/X86/ |
| H A D | X86ISelLowering.h | 942 bool isConstantSplat(SDValue Op, APInt &SplatVal,
|
| H A D | X86ISelDAGToDAG.cpp | 960 APInt SplatVal; in PreprocessISelDAG() local 961 if (X86::isConstantSplat(N->getOperand(1), SplatVal) && in PreprocessISelDAG() 962 SplatVal.isOne()) { in PreprocessISelDAG()
|
| H A D | X86ISelLowering.cpp | 7588 bool isConstantSplat(SDValue Op, APInt &SplatVal, bool AllowPartialUndefs) { in isConstantSplat() argument 7605 SplatVal = EltBits[SplatIndex]; in isConstantSplat() 33490 APInt SplatVal; in ReplaceNodeResults() local 33491 if (ISD::isConstantSplatVector(N->getOperand(1).getNode(), SplatVal)) { in ReplaceNodeResults() 33497 SDValue N1 = DAG.getConstant(SplatVal, dl, ResVT); in ReplaceNodeResults() 48929 APInt SplatVal; in combineAndMaskToShift() local 48930 if (!ISD::isConstantSplatVector(Op1.getNode(), SplatVal) || in combineAndMaskToShift() 48931 !SplatVal.isMask()) in combineAndMaskToShift() 48946 unsigned ShiftVal = SplatVal.countTrailingOnes(); in combineAndMaskToShift()
|
| /openbsd-src/gnu/llvm/llvm/lib/CodeGen/SelectionDAG/ |
| H A D | SelectionDAG.cpp | 141 bool ISD::isConstantSplatVector(const SDNode *N, APInt &SplatVal) { in isConstantSplatVector() argument 146 SplatVal = Op0->getAPIntValue().trunc(EltSize); in isConstantSplatVector() 150 SplatVal = Op0->getValueAPF().bitcastToAPInt().trunc(EltSize); in isConstantSplatVector() 163 return BV->isConstantSplat(SplatVal, SplatUndef, SplatBitSize, HasUndefs, in isConstantSplatVector() 177 APInt SplatVal; in isConstantSplatVectorAllOnes() local 178 return isConstantSplatVector(N, SplatVal) && SplatVal.isAllOnes(); in isConstantSplatVectorAllOnes() 226 APInt SplatVal; in isConstantSplatVectorAllZeros() local 227 return isConstantSplatVector(N, SplatVal) && SplatVal.isZero(); in isConstantSplatVectorAllZeros()
|
| H A D | DAGCombiner.cpp | 10967 if (SDValue SplatVal = DAG.getSplatValue(Index.getOperand(0)); in refineUniformBase() local 10968 SplatVal && SplatVal.getValueType() == VT) { in refineUniformBase() 10970 BasePtr = SplatVal; in refineUniformBase() 10972 BasePtr = DAG.getNode(ISD::ADD, DL, VT, BasePtr, SplatVal); in refineUniformBase() 10976 if (SDValue SplatVal = DAG.getSplatValue(Index.getOperand(1)); in refineUniformBase() local 10977 SplatVal && SplatVal.getValueType() == VT) { in refineUniformBase() 10979 BasePtr = SplatVal; in refineUniformBase() 10981 BasePtr = DAG.getNode(ISD::ADD, DL, VT, BasePtr, SplatVal); in refineUniformBase() 20475 APInt SplatVal; in scalarizeExtractedBinop() local 20477 ISD::isConstantSplatVector(Op0.getNode(), SplatVal) || in scalarizeExtractedBinop() [all …]
|
| H A D | LegalizeDAG.cpp | 2013 SDValue SplatVal = Node->getOperand(0); in ExpandSPLAT_VECTOR() local 2015 return DAG.getSplatBuildVector(VT, DL, SplatVal); in ExpandSPLAT_VECTOR()
|
| /openbsd-src/gnu/llvm/llvm/lib/Target/WebAssembly/ |
| H A D | WebAssemblyISelLowering.cpp | 2448 auto IsZeroSplat = [](SDValue SplatVal) { in performVectorTruncZeroCombine() argument 2449 auto *Splat = dyn_cast<BuildVectorSDNode>(SplatVal.getNode()); in performVectorTruncZeroCombine()
|
| /openbsd-src/gnu/llvm/llvm/lib/Target/SystemZ/ |
| H A D | SystemZISelLowering.cpp | 6497 SDValue SplatVal = Op1->getOperand(0); in combineSTORE() local 6498 if (auto *C = dyn_cast<ConstantSDNode>(SplatVal)) in combineSTORE() 6499 FindReplicatedImm(C, SplatVal.getValueType().getStoreSize()); in combineSTORE() 6501 FindReplicatedReg(SplatVal); in combineSTORE() 6514 SDValue SplatVal = DAG.getSplatVector(SplatVT, SDLoc(SN), Word); in combineSTORE() local 6515 return DAG.getStore(SN->getChain(), SDLoc(SN), SplatVal, in combineSTORE()
|
| /openbsd-src/gnu/llvm/llvm/lib/Target/PowerPC/ |
| H A D | PPCISelLowering.cpp | 9829 unsigned SplatVal = APSplatValue.getZExtValue(); in lowerToXXSPLTI32DX() local 9831 SplatVal |= (SplatVal << SplatBitSize); in lowerToXXSPLTI32DX() 9835 Index, DAG.getTargetConstant(SplatVal, DL, MVT::i32)); in lowerToXXSPLTI32DX() 15170 SDValue SplatVal = in combineVectorShuffle() local 15172 TheSplat = DAG.getSplatBuildVector(TheSplat.getValueType(), dl, SplatVal); in combineVectorShuffle()
|
| /openbsd-src/gnu/llvm/llvm/lib/CodeGen/GlobalISel/ |
| H A D | LegalizerHelper.cpp | 7686 APInt SplatVal = APInt::getSplat(NumBits, Scalar); in getMemsetValue() local 7687 return MIB.buildConstant(Ty, SplatVal).getReg(0); in getMemsetValue()
|