Home
last modified time | relevance | path

Searched refs:Shuffle (Results 1 – 25 of 49) sorted by relevance

12

/freebsd/contrib/llvm-project/llvm/lib/CodeGen/
H A DInterleavedAccessPass.cpp311 for (auto *Shuffle : Shuffles) { in lowerInterleavedLoad() local
312 if (Shuffle->getType() != VecTy) in lowerInterleavedLoad()
315 Shuffle->getShuffleMask(), Factor, Index)) in lowerInterleavedLoad()
318 assert(Shuffle->getShuffleMask().size() <= NumLoadElements); in lowerInterleavedLoad()
321 for (auto *Shuffle : BinOpShuffles) { in lowerInterleavedLoad() local
322 if (Shuffle->getType() != VecTy) in lowerInterleavedLoad()
325 Shuffle->getShuffleMask(), Factor, Index)) in lowerInterleavedLoad()
328 assert(Shuffle->getShuffleMask().size() <= NumLoadElements); in lowerInterleavedLoad()
330 if (cast<Instruction>(Shuffle->getOperand(0))->getOperand(0) == LI) in lowerInterleavedLoad()
332 if (cast<Instruction>(Shuffle->getOperand(0))->getOperand(1) == LI) in lowerInterleavedLoad()
[all …]
H A DComplexDeinterleavingPass.cpp1728 auto CheckType = [&](ShuffleVectorInst *Shuffle) { in identifyDeinterleave() argument
1729 Value *Op = Shuffle->getOperand(0); in identifyDeinterleave()
1730 auto *ShuffleTy = cast<FixedVectorType>(Shuffle->getType()); in identifyDeinterleave()
1741 auto CheckDeinterleavingShuffle = [&](ShuffleVectorInst *Shuffle) -> bool { in identifyDeinterleave() argument
1742 if (!CheckType(Shuffle)) in identifyDeinterleave()
1745 ArrayRef<int> Mask = Shuffle->getShuffleMask(); in identifyDeinterleave()
1748 Value *Op = Shuffle->getOperand(0); in identifyDeinterleave()
/freebsd/contrib/llvm-project/llvm/include/llvm/Analysis/
H A DTargetTransformInfoImpl.h1352 auto *Shuffle = dyn_cast<ShuffleVectorInst>(U); in getInstructionCost() local
1353 if (!Shuffle) in getInstructionCost()
1358 ArrayRef<int> Mask = Shuffle->getShuffleMask(); in getInstructionCost()
1362 if (Shuffle->changesLength()) { in getInstructionCost()
1364 if (Shuffle->increasesLength() && Shuffle->isIdentityWithPadding()) in getInstructionCost()
1367 if (Shuffle->isExtractSubvectorMask(SubIndex)) in getInstructionCost()
1370 Operands, Shuffle); in getInstructionCost()
1372 if (Shuffle->isInsertSubvectorMask(NumSubElts, SubIndex)) in getInstructionCost()
1376 Operands, Shuffle); in getInstructionCost()
1379 if (Shuffle->isReplicationMask(ReplicationFactor, VF)) { in getInstructionCost()
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Target/ARM/
H A DMVELaneInterleavingPass.cpp364 Value *Shuffle = Builder.CreateShuffleVector(I->getOperand(0), LeafMask); in tryInterleave() local
367 Value *Ext = FPext ? Builder.CreateFPExt(Shuffle, I->getType()) in tryInterleave()
368 : Sext ? Builder.CreateSExt(Shuffle, I->getType()) in tryInterleave()
369 : Builder.CreateZExt(Shuffle, I->getType()); in tryInterleave()
371 LLVM_DEBUG(dbgs() << " with " << *Shuffle << "\n"); in tryInterleave()
377 Value *Shuffle = Builder.CreateShuffleVector(I->get(), LeafMask); in tryInterleave() local
378 I->getUser()->setOperand(I->getOperandNo(), Shuffle); in tryInterleave()
379 LLVM_DEBUG(dbgs() << " with " << *Shuffle << "\n"); in tryInterleave()
/freebsd/contrib/llvm-project/llvm/include/llvm/IR/
H A DUseListOrder.h29 std::vector<unsigned> Shuffle; member
32 : V(V), F(F), Shuffle(ShuffleSize) {} in UseListOrder()
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/GlobalISel/
H A DCombinerHelperVectorOps.cpp325 GShuffleVector *Shuffle = in matchExtractVectorElementWithShuffleVector() local
328 ArrayRef<int> Mask = Shuffle->getMask(); in matchExtractVectorElementWithShuffleVector()
333 LLT Src1Type = MRI.getType(Shuffle->getSrc1Reg()); in matchExtractVectorElementWithShuffleVector()
357 NewVector = Shuffle->getSrc1Reg(); in matchExtractVectorElementWithShuffleVector()
360 NewVector = Shuffle->getSrc2Reg(); in matchExtractVectorElementWithShuffleVector()
H A DUtils.cpp1868 GShuffleVector *Shuffle = cast<GShuffleVector>(RegDef); in canCreateUndefOrPoison() local
1869 ArrayRef<int> Mask = Shuffle->getMask(); in canCreateUndefOrPoison()
/freebsd/contrib/llvm-project/llvm/lib/Target/X86/
H A DX86PartialReduction.cpp390 auto *Shuffle = dyn_cast<ShuffleVectorInst>(LHS); in matchAddReduction() local
391 if (Shuffle) { in matchAddReduction()
394 Shuffle = dyn_cast<ShuffleVectorInst>(RHS); in matchAddReduction()
400 if (!Shuffle || Shuffle->getOperand(0) != Op) in matchAddReduction()
406 if (Shuffle->getMaskValue(Index) != (int)(MaskEnd + Index)) in matchAddReduction()
H A DX86ISelLowering.cpp15628 if (SDValue Shuffle = ShuffleSubLanes(Scale)) in lowerShuffleAsRepeatedMaskAndLanePermute() local
15629 return Shuffle; in lowerShuffleAsRepeatedMaskAndLanePermute()
17476 SDValue Shuffle = DAG.getVectorShuffle(ExtVT, DL, V1, V2, Mask); in lower1BitShuffle() local
17482 Shuffle, ISD::SETGT); in lower1BitShuffle()
17484 return DAG.getNode(ISD::TRUNCATE, DL, VT, Shuffle); in lower1BitShuffle()
19547 SDValue Shuffle = DAG.getVectorShuffle(MVT::v2f64, dl, Sub, Sub, {1,-1}); in LowerUINT_TO_FP_i64() local
19548 Result = DAG.getNode(ISD::FADD, dl, MVT::v2f64, Shuffle, Sub); in LowerUINT_TO_FP_i64()
37826 const X86Subtarget &Subtarget, unsigned &Shuffle, in matchUnaryShuffle() argument
37837 Shuffle = X86ISD::VZEXT_MOVL; in matchUnaryShuffle()
37878 Shuffle = unsigned( in matchUnaryShuffle()
[all …]
H A DX86InstrMMX.td467 // -- Shuffle Instructions
/freebsd/contrib/llvm-project/llvm/lib/Transforms/InstCombine/
H A DInstCombineSimplifyDemanded.cpp1572 auto *Shuffle = cast<ShuffleVectorInst>(I); in SimplifyDemandedVectorElts() local
1573 assert(Shuffle->getOperand(0)->getType() == in SimplifyDemandedVectorElts()
1574 Shuffle->getOperand(1)->getType() && in SimplifyDemandedVectorElts()
1576 unsigned OpWidth = cast<FixedVectorType>(Shuffle->getOperand(0)->getType()) in SimplifyDemandedVectorElts()
1580 if (all_of(Shuffle->getShuffleMask(), [](int Elt) { return Elt == 0; }) && in SimplifyDemandedVectorElts()
1599 unsigned MaskVal = Shuffle->getMaskValue(i); in SimplifyDemandedVectorElts()
1631 unsigned MaskVal = Shuffle->getMaskValue(i); in SimplifyDemandedVectorElts()
1638 return Shuffle->getOperand(0); in SimplifyDemandedVectorElts()
1647 unsigned MaskVal = Shuffle->getMaskValue(i); in SimplifyDemandedVectorElts()
1679 cast<FixedVectorType>(Shuffle->getType())->getNumElements()) { in SimplifyDemandedVectorElts()
[all …]
H A DInstCombineVectorOps.cpp340 ShuffleVectorInst *Shuffle = cast<ShuffleVectorInst>(UserInstr); in findDemandedEltsBySingleUser() local
346 unsigned MaskVal = Shuffle->getMaskValue(i); in findDemandedEltsBySingleUser()
349 if (Shuffle->getOperand(0) == V && (MaskVal < VWidth)) in findDemandedEltsBySingleUser()
351 if (Shuffle->getOperand(1) == V && in findDemandedEltsBySingleUser()
H A DInstCombineCalls.cpp3246 Value *Shuffle = Builder.CreateShuffleVector(Vec, WidenShuffle, Mask); in visitCallInst() local
3247 return replaceInstUsesWith(CI, Shuffle); in visitCallInst()
3302 Value *Shuffle = Builder.CreateShuffleVector(Vec, Mask); in visitCallInst() local
3303 return replaceInstUsesWith(CI, Shuffle); in visitCallInst()
/freebsd/contrib/llvm-project/llvm/lib/Target/AArch64/GISel/
H A DAArch64PostLegalizerCombiner.cpp90 MachineInstr *Shuffle = in matchExtractVecEltPairwiseAdd() local
93 if (!Shuffle) { in matchExtractVecEltPairwiseAdd()
94 Shuffle = getOpcodeDef(TargetOpcode::G_SHUFFLE_VECTOR, Src1Op1, MRI); in matchExtractVecEltPairwiseAdd()
99 if (Shuffle && Shuffle->getOperand(3).getShuffleMask()[0] == 1 && in matchExtractVecEltPairwiseAdd()
100 Other == MRI.getVRegDef(Shuffle->getOperand(1).getReg())) { in matchExtractVecEltPairwiseAdd()
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Vectorize/
H A DVectorCombine.cpp2025 ShuffleVectorInst *Shuffle = nullptr; in foldShuffleFromReductions() local
2047 if (Shuffle && Shuffle != SV) in foldShuffleFromReductions()
2049 Shuffle = SV; in foldShuffleFromReductions()
2058 if (!Shuffle) in foldShuffleFromReductions()
2074 dyn_cast<FixedVectorType>(Shuffle->getOperand(0)->getType()); in foldShuffleFromReductions()
2082 Shuffle->getShuffleMask(ConcatMask); in foldShuffleFromReductions()
2095 VecTyForCost, Shuffle->getShuffleMask()); in foldShuffleFromReductions()
2100 LLVM_DEBUG(dbgs() << "Found a reduction feeding from a shuffle: " << *Shuffle in foldShuffleFromReductions()
2105 Builder.SetInsertPoint(Shuffle); in foldShuffleFromReductions()
2107 Shuffle->getOperand(0), Shuffle->getOperand(1), ConcatMask); in foldShuffleFromReductions()
[all …]
/freebsd/contrib/llvm-project/llvm/lib/IR/
H A DAsmWriter.cpp232 std::vector<unsigned> Shuffle(List.size()); in predictValueUseListOrder() local
234 Shuffle[I] = List[I].second; in predictValueUseListOrder()
235 return Shuffle; in predictValueUseListOrder()
246 std::vector<unsigned> Shuffle = in predictUseListOrder() local
248 if (Shuffle.empty()) in predictUseListOrder()
258 ULOM[F][V] = std::move(Shuffle); in predictUseListOrder()
2760 void printUseListOrder(const Value *V, const std::vector<unsigned> &Shuffle);
4813 const std::vector<unsigned> &Shuffle) { in printUseListOrder() argument
4830 assert(Shuffle.size() >= 2 && "Shuffle too small"); in printUseListOrder()
4831 Out << Shuffle[0]; in printUseListOrder()
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Instrumentation/
H A DNumericalStabilitySanitizer.cpp1677 if (auto *Shuffle = dyn_cast<ShuffleVectorInst>(&Inst)) in createShadowValueWithOperandsAvailable() local
1678 return Builder.CreateShuffleVector(Map.getShadow(Shuffle->getOperand(0)), in createShadowValueWithOperandsAvailable()
1679 Map.getShadow(Shuffle->getOperand(1)), in createShadowValueWithOperandsAvailable()
1680 Shuffle->getShuffleMask()); in createShadowValueWithOperandsAvailable()
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/
H A DLegalizeVectorTypes.cpp1744 // Shuffle the elements from InLo for OutHi into the bottom elements to in SplitVecRes_ExtVecInRegOp()
2677 auto *Shuffle = dyn_cast<ShuffleVectorSDNode>(Input.getNode()); in SplitVecRes_VECTOR_SHUFFLE()
2678 if (!Shuffle || in SplitVecRes_VECTOR_SHUFFLE()
2699 auto *Shuffle = in SplitVecRes_VECTOR_SHUFFLE()
2701 if (!Shuffle || !is_contained(P.second, SrcRegIdx)) in SplitVecRes_VECTOR_SHUFFLE()
2703 int MaskElt = Shuffle->getMaskElt(Idx % NewElts); in SplitVecRes_VECTOR_SHUFFLE()
2709 P.second[Shuffle->getOperand(MaskElt / NewElts) == P.first.first in SplitVecRes_VECTOR_SHUFFLE()
2787 auto *Shuffle = dyn_cast<ShuffleVectorSDNode>(Inputs[I].getNode()); in SplitVecRes_VECTOR_SHUFFLE()
2788 if (!Shuffle) in SplitVecRes_VECTOR_SHUFFLE()
2790 if (Shuffle in SplitVecRes_VECTOR_SHUFFLE()
2673 auto *Shuffle = dyn_cast<ShuffleVectorSDNode>(Input.getNode()); SplitVecRes_VECTOR_SHUFFLE() local
2695 auto *Shuffle = SplitVecRes_VECTOR_SHUFFLE() local
2783 auto *Shuffle = dyn_cast<ShuffleVectorSDNode>(Inputs[I].getNode()); SplitVecRes_VECTOR_SHUFFLE() local
[all...]
/freebsd/contrib/llvm-project/llvm/lib/Target/DirectX/DXILWriter/
H A DDXILValueEnumerator.cpp269 assert(List.size() == Stack.back().Shuffle.size() && "Wrong size"); in predictValueUseListOrderImpl()
271 Stack.back().Shuffle[I] = List[I].second; in predictValueUseListOrderImpl()
/freebsd/contrib/llvm-project/llvm/lib/Bitcode/Writer/
H A DValueEnumerator.cpp226 assert(List.size() == Stack.back().Shuffle.size() && "Wrong size"); in predictValueUseListOrderImpl()
228 Stack.back().Shuffle[I] = List[I].second; in predictValueUseListOrderImpl()
/freebsd/contrib/googletest/googletest/test/
H A Dgtest_unittest.cc268 using testing::internal::Shuffle;
1011 Shuffle(&random_, &vector_); in TEST_F()
1060 Shuffle(&random_, &vector_); in TEST_F()
1062 Shuffle(&random_, &vector2); in TEST_F()
5604 static Flags Shuffle(bool shuffle) { in Shuffle() function
6119 GTEST_TEST_PARSING_FLAGS_(argv, argv2, Flags::Shuffle(true), false); in TEST_F()
6128 GTEST_TEST_PARSING_FLAGS_(argv, argv2, Flags::Shuffle(false), false); in TEST_F()
6137 GTEST_TEST_PARSING_FLAGS_(argv, argv2, Flags::Shuffle(true), false); in TEST_F()
/freebsd/contrib/googletest/googletest/src/
H A Dgtest-internal-inl.h329 inline void Shuffle(internal::Random* random, std::vector<E>* v) { in Shuffle() function
/freebsd/contrib/llvm-project/llvm/lib/Target/AArch64/
H A DAArch64ISelLowering.cpp12162 SDValue Shuffle = in ReconstructShuffle() local
12165 return DAG.getBitcast(VT, Shuffle); in ReconstructShuffle()
12326 SDValue Shuffle = DAG.getVectorShuffle(ShuffleVT, dl, ShuffleOps[0], in ReconstructShuffle() local
12330 V = DAG.getNode(AArch64ISD::NVCAST, dl, VT, Shuffle); in ReconstructShuffle()
12332 V = DAG.getNode(ISD::BITCAST, dl, VT, Shuffle); in ReconstructShuffle()
12335 LLVM_DEBUG(dbgs() << "Reshuffle, creating node: "; Shuffle.dump(); in ReconstructShuffle()
12887 SDValue Shuffle; in GenerateTBL() local
12891 Shuffle = DAG.getNode( in GenerateTBL()
12898 Shuffle = DAG.getNode( in GenerateTBL()
12909 Shuffle = DAG.getNode( in GenerateTBL()
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Target/AMDGPU/
H A DAMDGPUInstCombineIntrinsic.cpp1435 auto *Shuffle = IC.Builder.CreateShuffleVector(NewCall, EltMask); in simplifyAMDGCNMemoryIntrinsicDemanded() local
1437 return Shuffle; in simplifyAMDGCNMemoryIntrinsicDemanded()
/freebsd/contrib/llvm-project/compiler-rt/lib/fuzzer/
H A DFuzzerFlags.def45 FUZZER_FLAG_INT(shuffle, 1, "Shuffle inputs at startup")

12