Home
last modified time | relevance | path

Searched refs:VecOp (Results 1 – 25 of 26) sorted by relevance

12

/freebsd/contrib/llvm-project/llvm/lib/Target/AMDGPU/
H A DAMDGPUImageIntrinsicOptimizer.cpp252 Value *VecOp = nullptr; in optimizeSection() local
256 VecOp = B.CreateExtractElement(NewCalls[0], Idx->getValue().urem(4)); in optimizeSection()
257 LLVM_DEBUG(dbgs() << "Add: " << *VecOp << "\n"); in optimizeSection()
259 VecOp = PoisonValue::get(II->getType()); in optimizeSection()
261 VecOp = B.CreateInsertElement( in optimizeSection()
262 VecOp, in optimizeSection()
264 LLVM_DEBUG(dbgs() << "Add: " << *VecOp << "\n"); in optimizeSection()
269 II->replaceAllUsesWith(VecOp); in optimizeSection()
270 VecOp->takeName(II); in optimizeSection()
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/
H A DBottomUpVec.cpp197 Value *BottomUpVec::createShuffle(Value *VecOp, const ShuffleMask &Mask, in createShuffle() argument
199 BasicBlock::iterator WhereIt = getInsertPointAfterInstrs({VecOp}, UserBB); in createShuffle()
200 return ShuffleVectorInst::create(VecOp, VecOp, Mask, WhereIt, in createShuffle()
201 VecOp->getContext(), "VShuf"); in createShuffle()
369 auto *VecOp = OpA->Vec; in emitVectors() local
370 VecOperands.push_back(VecOp); in emitVectors()
386 auto *VecOp = cast<DiamondReuseWithShuffle>(LegalityRes).getVector()->Vec; in emitVectors() local
389 NewVec = createShuffle(VecOp, Mask, UserBB); in emitVectors()
390 assert(NewVec->getType() == VecOp->getType() && in emitVectors()
414 Value *VecOp = nullptr; in emitVectors() local
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Vectorize/SandboxVectorizer/
H A DLegality.cpp197 if (auto *VecOp = IMaps.getVectorForOrig(V)) { in getHowToCollectValues() local
199 std::optional<int> ExtractIdxOpt = IMaps.getOrigLane(VecOp, V); in getHowToCollectValues()
203 Vec.emplace_back(VecOp, ExtractIdxOpt ? *ExtractIdxOpt + Ln : -1); in getHowToCollectValues()
/freebsd/contrib/llvm-project/llvm/lib/Transforms/InstCombine/
H A DInstCombineVectorOps.cpp658 Value *VecOp = IEI->getOperand(0); in collectSingleShuffleElements() local
669 if (collectSingleShuffleElements(VecOp, LHS, RHS, Mask)) { in collectSingleShuffleElements()
685 if (collectSingleShuffleElements(VecOp, LHS, RHS, Mask)) { in collectSingleShuffleElements()
812 Value *VecOp = IEI->getOperand(0); in collectShuffleElements() local
826 ShuffleOps LR = collectShuffleElements(VecOp, Mask, RHS, IC, Rerun); in collectShuffleElements()
848 if (VecOp == PermittedRHS) { in collectShuffleElements()
1624 Value *VecOp = InsElt.getOperand(0); in foldTruncInsEltPair() local
1643 !match(VecOp, m_InsertElt(m_Value(BaseVec), m_Value(Scalar0), in foldTruncInsEltPair()
1685 Value *VecOp = IE.getOperand(0); in visitInsertElementInst() local
1690 VecOp, ScalarOp, IdxOp, SQ.getWithInstruction(&IE))) in visitInsertElementInst()
[all …]
H A DInstCombineCasts.cpp475 Value *VecOp; in foldVecExtTruncToExtElt() local
478 if (!match(Src, m_OneUse(m_ExtractElt(m_Value(VecOp), m_ConstantInt(Cst)))) && in foldVecExtTruncToExtElt()
480 m_OneUse(m_LShr(m_ExtractElt(m_Value(VecOp), m_ConstantInt(Cst)), in foldVecExtTruncToExtElt()
484 auto *VecOpTy = cast<VectorType>(VecOp->getType()); in foldVecExtTruncToExtElt()
510 Value *BitCast = IC.Builder.CreateBitCast(VecOp, BitCastTo); in foldVecExtTruncToExtElt()
738 Value *VecOp = InsElt->getOperand(0); in shrinkInsertElt() local
742 if (match(VecOp, m_Undef())) { in shrinkInsertElt()
2412 Value *VecOp, *Index; in canonicalizeBitCastExtElt() local
2414 m_OneUse(m_ExtractElt(m_Value(VecOp), m_Value(Index))))) in canonicalizeBitCastExtElt()
2420 VectorType *VecType = cast<VectorType>(VecOp->getType()); in canonicalizeBitCastExtElt()
[all …]
/freebsd/contrib/llvm-project/llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/
H A DBottomUpVec.h53 Value *createShuffle(Value *VecOp, const ShuffleMask &Mask,
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/
H A DLegalizeVectorTypes.cpp1077 SDValue VecOp = N->getOperand(1); in ScalarizeVecOp_VECREDUCE_SEQ() local
1081 SDValue Op = GetScalarizedVector(VecOp); in ScalarizeVecOp_VECREDUCE_SEQ()
3629 SDValue VecOp = N->getOperand(OpNo); in SplitVecOp_VECREDUCE() local
3630 EVT VecVT = VecOp.getValueType(); in SplitVecOp_VECREDUCE()
3632 GetSplitVector(VecOp, Lo, Hi); in SplitVecOp_VECREDUCE()
3649 SDValue VecOp = N->getOperand(1); in SplitVecOp_VECREDUCE_SEQ() local
3652 EVT VecVT = VecOp.getValueType(); in SplitVecOp_VECREDUCE_SEQ()
3654 GetSplitVector(VecOp, Lo, Hi); in SplitVecOp_VECREDUCE_SEQ()
3674 SDValue VecOp = N->getOperand(OpNo); in SplitVecOp_VP_REDUCE() local
3675 EVT VecVT = VecOp.getValueType(); in SplitVecOp_VP_REDUCE()
[all …]
H A DDAGCombiner.cpp23440 SDValue VecOp = N->getOperand(0); in refineExtractVectorEltIntoMultipleNarrowExtractVectorElts() local
23441 EVT VecVT = VecOp.getValueType(); in refineExtractVectorEltIntoMultipleNarrowExtractVectorElts()
23567 SDValue NewVecOp = DAG.getBitcast(NewVecVT, VecOp); in refineExtractVectorEltIntoMultipleNarrowExtractVectorElts()
23582 SDValue VecOp = N->getOperand(0); in visitEXTRACT_VECTOR_ELT() local
23585 EVT VecVT = VecOp.getValueType(); in visitEXTRACT_VECTOR_ELT()
23586 if (VecOp.isUndef()) in visitEXTRACT_VECTOR_ELT()
23594 if (VecOp.getOpcode() == ISD::INSERT_VECTOR_ELT && in visitEXTRACT_VECTOR_ELT()
23595 Index == VecOp.getOperand(2)) { in visitEXTRACT_VECTOR_ELT()
23596 SDValue Elt = VecOp.getOperand(1); in visitEXTRACT_VECTOR_ELT()
23597 AddUsersToWorklist(VecOp.getNode()); in visitEXTRACT_VECTOR_ELT()
[all …]
H A DTargetLowering.cpp11587 SDValue VecOp = Node->getOperand(1); in expandVecReduceSeq() local
11590 EVT VT = VecOp.getValueType(); in expandVecReduceSeq()
11600 DAG.ExtractVectorElements(VecOp, Ops, 0, NumElts); in expandVecReduceSeq()
/freebsd/contrib/llvm-project/llvm/lib/Target/WebAssembly/
H A DWebAssemblyISelLowering.h51 bool shouldScalarizeBinop(SDValue VecOp) const override;
H A DWebAssemblyISelLowering.cpp459 bool WebAssemblyTargetLowering::shouldScalarizeBinop(SDValue VecOp) const { in shouldScalarizeBinop()
461 unsigned Opc = VecOp.getOpcode(); in shouldScalarizeBinop()
469 EVT VecVT = VecOp.getValueType(); in shouldScalarizeBinop()
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Vectorize/
H A DVPlanTransforms.cpp2866 VPValue *VecOp = Red->getVecOp(); in tryToMatchAndCreateExtendedReduction() local
2879 cast<VPWidenCastRecipe>(VecOp)->computeCost(VF, Ctx); in tryToMatchAndCreateExtendedReduction()
2888 if (match(VecOp, m_ZExtOrSExt(m_VPValue(A))) && in tryToMatchAndCreateExtendedReduction()
2891 cast<VPWidenCastRecipe>(VecOp)->getOpcode() == in tryToMatchAndCreateExtendedReduction()
2894 return new VPExpressionRecipe(cast<VPWidenCastRecipe>(VecOp), Red); in tryToMatchAndCreateExtendedReduction()
2946 VPValue *VecOp = Red->getVecOp(); in tryToMatchAndCreateMulAccumulateReduction() local
2949 if (match(VecOp, m_Mul(m_VPValue(A), m_VPValue(B)))) { in tryToMatchAndCreateMulAccumulateReduction()
2954 auto *Mul = cast<VPWidenRecipe>(VecOp->getDefiningRecipe()); in tryToMatchAndCreateMulAccumulateReduction()
2973 if (match(VecOp, m_ZExtOrSExt(m_Mul(m_ZExtOrSExt(m_VPValue()), in tryToMatchAndCreateMulAccumulateReduction()
2975 auto *Ext = cast<VPWidenCastRecipe>(VecOp->getDefiningRecipe()); in tryToMatchAndCreateMulAccumulateReduction()
H A DVPlanRecipes.cpp1884 if (auto *VecOp = dyn_cast<Instruction>(V)) { in execute() local
1885 applyFlags(*VecOp); in execute()
1886 applyMetadata(*VecOp); in execute()
2545 Value *VecOp = State.get(getVecOp()); in execute() local
2556 NewRed = createOrderedReduction(Builder, Kind, VecOp, Prev, Mask, EVL); in execute()
2558 NewRed = createSimpleReduction(Builder, VecOp, Kind, Mask, EVL); in execute()
H A DVPlan.h2487 VPValue *ChainOp, VPValue *VecOp, VPValue *CondOp,
2490 ArrayRef<VPValue *>({ChainOp, VecOp}), CondOp,
2494 VPValue *ChainOp, VPValue *VecOp, VPValue *CondOp,
2497 ArrayRef<VPValue *>({ChainOp, VecOp}), CondOp,
H A DSLPVectorizer.cpp7646 const TreeEntry *VecOp = in reorderBottomToTop() local
7648 if (VecOp) in reorderBottomToTop()
7649 Op = VecOp; in reorderBottomToTop()
16616 Value *VecOp = in adjustExtracts() local
16618 if (ArrayRef<TreeEntry *> TEs = R.getTreeEntries(VecOp); in adjustExtracts()
16620 VecOp = TEs.front()->VectorizedValue; in adjustExtracts()
16621 assert(VecOp && "Expected vectorized value."); in adjustExtracts()
16623 cast<FixedVectorType>(VecOp->getType())->getNumElements(); in adjustExtracts()
16629 Value *VecOp = cast<ExtractElementInst>(V)->getVectorOperand(); in adjustExtracts() local
16630 if (ArrayRef<TreeEntry *> TEs = R.getTreeEntries(VecOp); !TEs.empty()) in adjustExtracts()
[all …]
H A DLoopVectorize.cpp9039 VPValue *VecOp; in adjustRecipesForReductions() local
9059 VecOp = FMulRecipe; in adjustRecipesForReductions()
9081 VecOp = CurrentLink->getOperand(VecOpId); in adjustRecipesForReductions()
9082 assert(VecOp != PreviousLink && in adjustRecipesForReductions()
9101 Kind, FMFs, CurrentLinkI, PreviousLink, VecOp, CondOp, in adjustRecipesForReductions()
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Utils/
H A DLoopUtils.cpp1376 auto *VecOp = dyn_cast<Instruction>(I); in propagateIRFlags() local
1377 if (!VecOp) in propagateIRFlags()
1384 VecOp->copyIRFlags(Intersection, IncludeWrapFlags); in propagateIRFlags()
1390 VecOp->andIRFlags(V); in propagateIRFlags()
/freebsd/contrib/llvm-project/llvm/lib/Target/AArch64/
H A DAArch64ISelLowering.h878 bool shouldScalarizeBinop(SDValue VecOp) const override { in shouldScalarizeBinop() argument
879 return VecOp.getOpcode() == ISD::SETCC; in shouldScalarizeBinop()
H A DAArch64ISelLowering.cpp15935 SDValue VecOp = ScalarOp.getOperand(0); in getReductionSDNode() local
15936 auto Rdx = DAG.getNode(Op, DL, VecOp.getSimpleValueType(), VecOp); in getReductionSDNode()
23886 SDValue VecOp = Store->getValue(); in combineBoolVectorAndTruncateStore() local
23887 EVT VT = VecOp.getValueType(); in combineBoolVectorAndTruncateStore()
23896 if (VecOp.getOpcode() == ISD::BUILD_VECTOR) in combineBoolVectorAndTruncateStore()
23899 VecOp = DAG.getNode(ISD::TRUNCATE, DL, MemVT, VecOp); in combineBoolVectorAndTruncateStore()
23900 SDValue VectorBits = vectorToScalarBitmask(VecOp.getNode(), DAG); in combineBoolVectorAndTruncateStore()
29259 SDValue VecOp = ScalarOp.getOperand(1); in LowerVECREDUCE_SEQ_FADD() local
29260 EVT SrcVT = VecOp.getValueType(); in LowerVECREDUCE_SEQ_FADD()
29266 VecOp = convertToScalableVector(DAG, ContainerVT, VecOp); in LowerVECREDUCE_SEQ_FADD()
[all …]
H A DAArch64TargetTransformInfo.cpp2201 Value *VecOp = II.getOperand(0); in instCombineSVEST1() local
2206 StoreInst *Store = IC.Builder.CreateStore(VecOp, PtrOp); in instCombineSVEST1()
2212 VecOp, PtrOp, PtrOp->getPointerAlignment(DL), Pred); in instCombineSVEST1()
/freebsd/contrib/llvm-project/llvm/lib/Target/RISCV/
H A DRISCVISelLowering.h62 bool shouldScalarizeBinop(SDValue VecOp) const override;
/freebsd/contrib/llvm-project/llvm/lib/Target/PowerPC/
H A DPPCISelDAGToDAG.cpp7587 SDValue VecOp = SkipRCCopy(N->getOperand(0)); in reduceVSXSwap() local
7588 if (!VecOp || !isLaneInsensitive(VecOp)) in reduceVSXSwap()
7591 SDValue LHS = SkipRCCopy(VecOp.getOperand(0)), in reduceVSXSwap()
7592 RHS = SkipRCCopy(VecOp.getOperand(1)); in reduceVSXSwap()
/freebsd/contrib/llvm-project/llvm/include/llvm/CodeGen/
H A DTargetLowering.h3429 virtual bool shouldScalarizeBinop(SDValue VecOp) const { in shouldScalarizeBinop() argument
/freebsd/contrib/llvm-project/llvm/lib/Target/X86/
H A DX86ISelLowering.cpp3385 bool X86TargetLowering::shouldScalarizeBinop(SDValue VecOp) const { in shouldScalarizeBinop()
3386 unsigned Opc = VecOp.getOpcode(); in shouldScalarizeBinop()
3394 EVT VecVT = VecOp.getValueType(); in shouldScalarizeBinop()
19838 SDValue VecOp = Extract.getOperand(0); in vectorizeExtractedCast() local
19839 MVT FromVT = VecOp.getSimpleValueType(); in vectorizeExtractedCast()
19851 VecOp = DAG.getVectorShuffle(FromVT, DL, VecOp, DAG.getUNDEF(FromVT), Mask); in vectorizeExtractedCast()
19856 VecOp = extract128BitVector(VecOp, 0, DAG, DL); in vectorizeExtractedCast()
19860 SDValue VCast = DAG.getNode(Cast.getOpcode(), DL, ToVT, VecOp); in vectorizeExtractedCast()
34916 SDValue VecOp = N->getOperand(0); in ReplaceNodeResults() local
34917 EVT ExtVT = VecOp.getValueType().changeVectorElementTypeToInteger(); in ReplaceNodeResults()
/freebsd/contrib/llvm-project/llvm/lib/Target/ARM/
H A DARMISelLowering.cpp17429 unsigned VecOp = N->getOperand(0).getValueType().isVector() ? 0 : 2; in PerformReduceShuffleCombine() local
17430 auto *Shuf = dyn_cast<ShuffleVectorSDNode>(N->getOperand(VecOp)); in PerformReduceShuffleCombine()
17445 if (N->getNumOperands() != VecOp + 1) { in PerformReduceShuffleCombine()
17446 auto *Shuf2 = dyn_cast<ShuffleVectorSDNode>(N->getOperand(VecOp + 1)); in PerformReduceShuffleCombine()

12