| /freebsd/contrib/llvm-project/llvm/lib/CodeGen/ |
| H A D | InterleavedAccessPass.cpp | 337 for (auto *Shuffle : Shuffles) { in lowerInterleavedLoad() local 338 if (Shuffle->getType() != VecTy) in lowerInterleavedLoad() 341 Shuffle->getShuffleMask(), Factor, Index)) in lowerInterleavedLoad() 344 assert(Shuffle->getShuffleMask().size() <= NumLoadElements); in lowerInterleavedLoad() 347 for (auto *Shuffle : BinOpShuffles) { in lowerInterleavedLoad() local 348 if (Shuffle->getType() != VecTy) in lowerInterleavedLoad() 351 Shuffle->getShuffleMask(), Factor, Index)) in lowerInterleavedLoad() 354 assert(Shuffle->getShuffleMask().size() <= NumLoadElements); in lowerInterleavedLoad() 356 if (cast<Instruction>(Shuffle->getOperand(0))->getOperand(0) == Load) in lowerInterleavedLoad() 358 if (cast<Instruction>(Shuffle->getOperand(0))->getOperand(1) == Load) in lowerInterleavedLoad() [all …]
|
| H A D | ComplexDeinterleavingPass.cpp | 1950 auto CheckType = [&](ShuffleVectorInst *Shuffle) { in identifyDeinterleave() argument 1951 Value *Op = Shuffle->getOperand(0); in identifyDeinterleave() 1952 auto *ShuffleTy = cast<FixedVectorType>(Shuffle->getType()); in identifyDeinterleave() 1963 auto CheckDeinterleavingShuffle = [&](ShuffleVectorInst *Shuffle) -> bool { in identifyDeinterleave() argument 1964 if (!CheckType(Shuffle)) in identifyDeinterleave() 1967 ArrayRef<int> Mask = Shuffle->getShuffleMask(); in identifyDeinterleave() 1970 Value *Op = Shuffle->getOperand(0); in identifyDeinterleave()
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/Analysis/ |
| H A D | TargetTransformInfoImpl.h | 1529 auto *Shuffle = dyn_cast<ShuffleVectorInst>(U); in getInstructionCost() local 1530 if (!Shuffle) in getInstructionCost() 1535 ArrayRef<int> Mask = Shuffle->getShuffleMask(); in getInstructionCost() 1543 if (Shuffle->changesLength()) { in getInstructionCost() 1545 if (Shuffle->increasesLength() && Shuffle->isIdentityWithPadding()) in getInstructionCost() 1548 if (Shuffle->isExtractSubvectorMask(SubIndex)) in getInstructionCost() 1551 VecTy, Operands, Shuffle); in getInstructionCost() 1553 if (Shuffle->isInsertSubvectorMask(NumSubElts, SubIndex)) in getInstructionCost() 1558 Operands, Shuffle); in getInstructionCost() 1561 if (Shuffle->isReplicationMask(ReplicationFactor, VF)) { in getInstructionCost() [all …]
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/ARM/ |
| H A D | MVELaneInterleavingPass.cpp | 358 Value *Shuffle = Builder.CreateShuffleVector(I->getOperand(0), LeafMask); in tryInterleave() local 361 Value *Ext = FPext ? Builder.CreateFPExt(Shuffle, I->getType()) in tryInterleave() 362 : Sext ? Builder.CreateSExt(Shuffle, I->getType()) in tryInterleave() 363 : Builder.CreateZExt(Shuffle, I->getType()); in tryInterleave() 365 LLVM_DEBUG(dbgs() << " with " << *Shuffle << "\n"); in tryInterleave() 371 Value *Shuffle = Builder.CreateShuffleVector(I->get(), LeafMask); in tryInterleave() local 372 I->getUser()->setOperand(I->getOperandNo(), Shuffle); in tryInterleave() 373 LLVM_DEBUG(dbgs() << " with " << *Shuffle << "\n"); in tryInterleave()
|
| H A D | ARMTargetTransformInfo.cpp | 2869 Instruction *Shuffle = Op; in isProfitableToSinkOperands() local 2870 if (Shuffle->getOpcode() == Instruction::BitCast) in isProfitableToSinkOperands() 2871 Shuffle = dyn_cast<Instruction>(Shuffle->getOperand(0)); in isProfitableToSinkOperands() 2873 if (!Shuffle || !match(Shuffle, m_Shuffle(m_InsertElt(m_Undef(), m_Value(), in isProfitableToSinkOperands() 2888 Ops.push_back(&Shuffle->getOperandUse(0)); in isProfitableToSinkOperands() 2889 if (Shuffle != Op) in isProfitableToSinkOperands()
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/IR/ |
| H A D | UseListOrder.h | 29 std::vector<unsigned> Shuffle; member 32 : V(V), F(F), Shuffle(ShuffleSize) {} in UseListOrder()
|
| /freebsd/contrib/llvm-project/llvm/lib/CodeGen/GlobalISel/ |
| H A D | CombinerHelperVectorOps.cpp | 259 const GShuffleVector *Shuffle = cast<GShuffleVector>(&MI2); in matchExtractVectorElementWithShuffleVector() local 288 ArrayRef<int> Mask = Shuffle->getMask(); in matchExtractVectorElementWithShuffleVector() 293 LLT Src1Type = MRI.getType(Shuffle->getSrc1Reg()); in matchExtractVectorElementWithShuffleVector() 317 NewVector = Shuffle->getSrc1Reg(); in matchExtractVectorElementWithShuffleVector() 320 NewVector = Shuffle->getSrc2Reg(); in matchExtractVectorElementWithShuffleVector()
|
| H A D | CombinerHelper.cpp | 397 auto &Shuffle = cast<GShuffleVector>(MI); in matchCombineShuffleToBuildVector() local 399 Register SrcVec1 = Shuffle.getSrc1Reg(); in matchCombineShuffleToBuildVector() 400 Register SrcVec2 = Shuffle.getSrc2Reg(); in matchCombineShuffleToBuildVector() 408 auto &Shuffle = cast<GShuffleVector>(MI); in applyCombineShuffleToBuildVector() local 410 Register SrcVec1 = Shuffle.getSrc1Reg(); in applyCombineShuffleToBuildVector() 411 Register SrcVec2 = Shuffle.getSrc2Reg(); in applyCombineShuffleToBuildVector() 420 for (int Val : Shuffle.getMask()) { in applyCombineShuffleToBuildVector() 8002 auto &Shuffle = cast<GShuffleVector>(MI); in matchShuffleUndefRHS() local 8003 ArrayRef<int> OrigMask = Shuffle.getMask(); in matchShuffleUndefRHS() 8005 const LLT SrcTy = MRI.getType(Shuffle.getSrc1Reg()); in matchShuffleUndefRHS() [all …]
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/X86/ |
| H A D | X86PartialReduction.cpp | 387 auto *Shuffle = dyn_cast<ShuffleVectorInst>(LHS); in matchAddReduction() local 388 if (Shuffle) { in matchAddReduction() 391 Shuffle = dyn_cast<ShuffleVectorInst>(RHS); in matchAddReduction() 397 if (!Shuffle || Shuffle->getOperand(0) != Op) in matchAddReduction() 403 if (Shuffle->getMaskValue(Index) != (int)(MaskEnd + Index)) in matchAddReduction()
|
| H A D | X86ISelLowering.cpp | 16215 if (SDValue Shuffle = ShuffleSubLanes(Scale)) in lowerShuffleAsRepeatedMaskAndLanePermute() local 16216 return Shuffle; in lowerShuffleAsRepeatedMaskAndLanePermute() 18076 SDValue Shuffle = DAG.getVectorShuffle(ExtVT, DL, V1, V2, Mask); in lower1BitShuffle() local 18082 Shuffle, ISD::SETGT); in lower1BitShuffle() 18084 return DAG.getNode(ISD::TRUNCATE, DL, VT, Shuffle); in lower1BitShuffle() 20256 SDValue Shuffle = DAG.getVectorShuffle(MVT::v2f64, dl, Sub, Sub, {1,-1}); in LowerUINT_TO_FP_i64() local 20257 Result = DAG.getNode(ISD::FADD, dl, MVT::v2f64, Shuffle, Sub); in LowerUINT_TO_FP_i64() 39238 const X86Subtarget &Subtarget, unsigned &Shuffle, in matchUnaryShuffle() argument 39249 Shuffle = X86ISD::VZEXT_MOVL; in matchUnaryShuffle() 39294 Shuffle = unsigned( in matchUnaryShuffle() [all …]
|
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/InstCombine/ |
| H A D | InstCombineSimplifyDemanded.cpp | 1576 auto *Shuffle = cast<ShuffleVectorInst>(I); in SimplifyDemandedVectorElts() local 1577 assert(Shuffle->getOperand(0)->getType() == in SimplifyDemandedVectorElts() 1578 Shuffle->getOperand(1)->getType() && in SimplifyDemandedVectorElts() 1580 unsigned OpWidth = cast<FixedVectorType>(Shuffle->getOperand(0)->getType()) in SimplifyDemandedVectorElts() 1584 if (all_of(Shuffle->getShuffleMask(), [](int Elt) { return Elt == 0; }) && in SimplifyDemandedVectorElts() 1603 unsigned MaskVal = Shuffle->getMaskValue(i); in SimplifyDemandedVectorElts() 1635 unsigned MaskVal = Shuffle->getMaskValue(i); in SimplifyDemandedVectorElts() 1642 return Shuffle->getOperand(0); in SimplifyDemandedVectorElts() 1651 unsigned MaskVal = Shuffle->getMaskValue(i); in SimplifyDemandedVectorElts() 1683 cast<FixedVectorType>(Shuffle->getType())->getNumElements()) { in SimplifyDemandedVectorElts() [all …]
|
| H A D | InstCombineVectorOps.cpp | 340 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()
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/AArch64/GISel/ |
| H A D | AArch64PostLegalizerCombiner.cpp | 90 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 D | VectorCombine.cpp | 2982 ShuffleVectorInst *Shuffle = nullptr; in foldShuffleFromReductions() local 3004 if (Shuffle && Shuffle != SV) in foldShuffleFromReductions() 3006 Shuffle = SV; in foldShuffleFromReductions() 3015 if (!Shuffle) in foldShuffleFromReductions() 3031 dyn_cast<FixedVectorType>(Shuffle->getOperand(0)->getType()); in foldShuffleFromReductions() 3039 Shuffle->getShuffleMask(ConcatMask); in foldShuffleFromReductions() 3046 ShuffleInputType, Shuffle->getShuffleMask(), CostKind); in foldShuffleFromReductions() 3051 LLVM_DEBUG(dbgs() << "Found a reduction feeding from a shuffle: " << *Shuffle in foldShuffleFromReductions() 3057 Builder.SetInsertPoint(Shuffle); in foldShuffleFromReductions() 3059 Shuffle->getOperand(0), Shuffle->getOperand(1), ConcatMask); in foldShuffleFromReductions() [all …]
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/RISCV/ |
| H A D | RISCVInterleavedAccess.cpp | 217 Value *Shuffle = Builder.CreateShuffleVector( in lowerInterleavedStore() local 219 Ops.push_back(Shuffle); in lowerInterleavedStore()
|
| /freebsd/contrib/llvm-project/llvm/lib/IR/ |
| H A D | AsmWriter.cpp | 271 std::vector<unsigned> Shuffle(List.size()); in predictValueUseListOrder() local 273 Shuffle[I] = List[I].second; in predictValueUseListOrder() 274 return Shuffle; in predictValueUseListOrder() 285 std::vector<unsigned> Shuffle = in predictUseListOrder() local 287 if (Shuffle.empty()) in predictUseListOrder() 297 ULOM[F][V] = std::move(Shuffle); in predictUseListOrder() 2923 void printUseListOrder(const Value *V, const std::vector<unsigned> &Shuffle); 5013 const std::vector<unsigned> &Shuffle) { in printUseListOrder() argument 5029 assert(Shuffle.size() >= 2 && "Shuffle too small"); in printUseListOrder() 5030 Out << ", { " << llvm::interleaved(Shuffle) << " }\n"; in printUseListOrder()
|
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/Instrumentation/ |
| H A D | NumericalStabilitySanitizer.cpp | 1734 if (auto *Shuffle = dyn_cast<ShuffleVectorInst>(&Inst)) in createShadowValueWithOperandsAvailable() local 1735 return Builder.CreateShuffleVector(Map.getShadow(Shuffle->getOperand(0)), in createShadowValueWithOperandsAvailable() 1736 Map.getShadow(Shuffle->getOperand(1)), in createShadowValueWithOperandsAvailable() 1737 Shuffle->getShuffleMask()); in createShadowValueWithOperandsAvailable()
|
| /freebsd/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/ |
| H A D | LegalizeVectorTypes.cpp | 2812 auto *Shuffle = dyn_cast<ShuffleVectorSDNode>(Input.getNode()); in SplitVecRes_VECTOR_SHUFFLE() local 2813 if (!Shuffle || in SplitVecRes_VECTOR_SHUFFLE() 2834 auto *Shuffle = in SplitVecRes_VECTOR_SHUFFLE() local 2836 if (!Shuffle || !is_contained(P.second, SrcRegIdx)) in SplitVecRes_VECTOR_SHUFFLE() 2838 int MaskElt = Shuffle->getMaskElt(Idx % NewElts); in SplitVecRes_VECTOR_SHUFFLE() 2844 P.second[Shuffle->getOperand(MaskElt / NewElts) == P.first.first in SplitVecRes_VECTOR_SHUFFLE() 2922 auto *Shuffle = dyn_cast<ShuffleVectorSDNode>(Inputs[I].getNode()); in SplitVecRes_VECTOR_SHUFFLE() local 2923 if (!Shuffle) in SplitVecRes_VECTOR_SHUFFLE() 2925 if (Shuffle->getOperand(0).getValueType() != NewVT) in SplitVecRes_VECTOR_SHUFFLE() 2928 if (!Inputs[I].hasOneUse() && Shuffle->getOperand(1).isUndef() && in SplitVecRes_VECTOR_SHUFFLE() [all …]
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/DirectX/DXILWriter/ |
| H A D | DXILValueEnumerator.cpp | 269 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 D | ValueEnumerator.cpp | 226 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 D | gtest_unittest.cc | 268 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() 5653 static Flags Shuffle(bool shuffle) { in Shuffle() function 6168 GTEST_TEST_PARSING_FLAGS_(argv, argv2, Flags::Shuffle(true), false); in TEST_F() 6177 GTEST_TEST_PARSING_FLAGS_(argv, argv2, Flags::Shuffle(false), false); in TEST_F() 6186 GTEST_TEST_PARSING_FLAGS_(argv, argv2, Flags::Shuffle(true), false); in TEST_F()
|
| /freebsd/contrib/googletest/googletest/src/ |
| H A D | gtest-internal-inl.h | 329 inline void Shuffle(internal::Random* random, std::vector<E>* v) { in Shuffle() function
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/AArch64/ |
| H A D | AArch64ISelLowering.cpp | 13029 SDValue Shuffle = in ReconstructShuffle() local 13032 return DAG.getBitcast(VT, Shuffle); in ReconstructShuffle() 13194 SDValue Shuffle = in ReconstructShuffle() local 13198 V = DAG.getNode(AArch64ISD::NVCAST, DL, VT, Shuffle); in ReconstructShuffle() 13200 V = DAG.getNode(ISD::BITCAST, DL, VT, Shuffle); in ReconstructShuffle() 13203 LLVM_DEBUG(dbgs() << "Reshuffle, creating node: "; Shuffle.dump(); in ReconstructShuffle() 13756 SDValue Shuffle; in GenerateTBL() local 13760 Shuffle = DAG.getNode( in GenerateTBL() 13767 Shuffle = DAG.getNode( in GenerateTBL() 13778 Shuffle = DAG.getNode( in GenerateTBL() [all …]
|
| /freebsd/contrib/llvm-project/compiler-rt/lib/fuzzer/ |
| H A D | FuzzerFlags.def | 46 FUZZER_FLAG_INT(shuffle, 1, "Shuffle inputs at startup")
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/WebAssembly/ |
| H A D | WebAssemblyISelLowering.cpp | 2310 auto *Shuffle = cast<ShuffleVectorSDNode>(Op.getNode()); in GetExtendHigh() local 2312 ArrayRef<int> Mask = Shuffle->getMask(); in GetExtendHigh() 2325 return DAG.getNode(Opc, DL, VT, Shuffle->getOperand(0)); in GetExtendHigh() 2889 auto Shuffle = cast<ShuffleVectorSDNode>(N); in performVECTOR_SHUFFLECombine() local 2907 SrcType, SDLoc(N), CastOp, DAG.getUNDEF(SrcType), Shuffle->getMask()); in performVECTOR_SHUFFLECombine()
|