Searched refs:Shuf (Results 1 - 8 of 8) sorted by relevance

/freebsd-11-stable/contrib/llvm-project/llvm/lib/Transforms/InstCombine/
H A DInstCombineVectorOps.cpp725 static bool isShuffleEquivalentToSelect(ShuffleVectorInst &Shuf) { argument
726 int MaskSize = Shuf.getMask()->getType()->getVectorNumElements();
727 int VecSize = Shuf.getOperand(0)->getType()->getVectorNumElements();
736 int Elt = Shuf.getMaskValue(i);
818 auto *Shuf = dyn_cast<ShuffleVectorInst>(InsElt.getOperand(0)); local
819 if (!Shuf || !Shuf->isZeroEltSplat())
829 Value *Op0 = Shuf->getOperand(0);
837 unsigned NumMaskElts = Shuf->getType()->getVectorNumElements();
839 Type *I32Ty = IntegerType::getInt32Ty(Shuf
852 auto *Shuf = dyn_cast<ShuffleVectorInst>(InsElt.getOperand(0)); local
1455 foldSelectShuffleWith1Binop(ShuffleVectorInst &Shuf) argument
1511 canonicalizeInsertSplat(ShuffleVectorInst &Shuf, InstCombiner::BuilderTy &Builder) argument
1543 foldSelectShuffle(ShuffleVectorInst &Shuf, InstCombiner::BuilderTy &Builder, const DataLayout &DL) argument
1672 narrowVectorSelect(ShuffleVectorInst &Shuf, InstCombiner::BuilderTy &Builder) argument
1705 foldIdentityExtractShuffle(ShuffleVectorInst &Shuf) argument
1746 foldShuffleWithInsert(ShuffleVectorInst &Shuf) argument
1835 foldIdentityPaddedShuffles(ShuffleVectorInst &Shuf) argument
[all...]
H A DInstCombineCasts.cpp640 auto *Shuf = dyn_cast<ShuffleVectorInst>(Trunc.getOperand(0)); local
641 if (Shuf && Shuf->hasOneUse() && isa<UndefValue>(Shuf->getOperand(1)) &&
642 Shuf->getMask()->getSplatValue() &&
643 Shuf->getType() == Shuf->getOperand(0)->getType()) {
646 Value *NarrowOp = Builder.CreateTrunc(Shuf->getOperand(0), Trunc.getType());
647 return new ShuffleVectorInst(NarrowOp, NarrowUndef, Shuf->getMask());
2506 if (auto *Shuf
[all...]
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Target/AMDGPU/
H A DAMDGPULowerKernelArguments.cpp212 Value *Shuf = Builder.CreateShuffleVector(Load, UndefValue::get(V4Ty), local
215 Arg.replaceAllUsesWith(Shuf);
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Transforms/Utils/
H A DLoopUtils.cpp852 Value *Shuf = Builder.CreateShuffleVector( local
858 TmpVec = Builder.CreateBinOp((Instruction::BinaryOps)Op, TmpVec, Shuf,
863 TmpVec = createMinMaxOp(Builder, MinMaxKind, TmpVec, Shuf);
/freebsd-11-stable/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/
H A DDAGCombiner.cpp16847 SDValue Shuf = DAG.getVectorShuffle(ShufVT, DL, DestVecBC, PaddedSubV, Mask); local
16850 AddToWorklist(Shuf.getNode());
16851 return DAG.getBitcast(VT, Shuf);
16887 if (SDValue Shuf = combineInsertEltToShuffle(N, Elt))
16888 return Shuf;
17162 auto *Shuf = cast<ShuffleVectorSDNode>(VecOp); local
17164 int OrigElt = Shuf->getMaskElt(IndexC->getZExtValue());
17277 if (auto *Shuf = dyn_cast<ShuffleVectorSDNode>(VecOp)) {
17292 int Idx = (Elt > (int)NumElts) ? -1 : Shuf->getMaskElt(Elt);
17620 SDValue Shuf local
18672 foldShuffleOfConcatUndefs(ShuffleVectorSDNode *Shuf, SelectionDAG &DAG) argument
18995 combineShuffleOfSplatVal(ShuffleVectorSDNode *Shuf, SelectionDAG &DAG) argument
19073 replaceShuffleOfInsert(ShuffleVectorSDNode *Shuf, SelectionDAG &DAG) argument
19127 simplifyShuffleOfShuffle(ShuffleVectorSDNode *Shuf) argument
[all...]
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Analysis/
H A DValueTracking.cpp2711 auto *Shuf = cast<ShuffleVectorInst>(U); local
2712 int NumElts = Shuf->getOperand(0)->getType()->getVectorNumElements();
2713 int NumMaskElts = Shuf->getMask()->getType()->getVectorNumElements();
2716 int M = Shuf->getMaskValue(i);
2729 Tmp = ComputeNumSignBits(Shuf->getOperand(0), Depth + 1, Q);
2731 Tmp2 = ComputeNumSignBits(Shuf->getOperand(1), Depth + 1, Q);
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Transforms/Vectorize/
H A DLoopVectorize.cpp1680 Value *Shuf = Builder.CreateVectorSplat(VF, V, "broadcast");
1682 return Shuf;
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Target/X86/
H A DX86ISelLowering.cpp12679 SDValue Shuf = DAG.getVectorShuffle(WideVT, DL, WideVec, DAG.getUNDEF(WideVT),
12682 return DAG.getNode(ISD::EXTRACT_SUBVECTOR, DL, VT, Shuf,
19623 if (auto *Shuf = dyn_cast<ShuffleVectorSDNode>(In))
19624 if (hasIdenticalHalvesShuffleMask(Shuf->getMask()))
21726 SDValue Shuf = DAG.getVectorShuffle(MVT::v4i32, dl, Result, Result, Mask);
21727 Result = DAG.getNode(ISD::AND, dl, MVT::v4i32, Result, Shuf);
[all...]

Completed in 353 milliseconds