Searched refs:Factor (Results 1 - 25 of 53) sorted by relevance

123

/freebsd-11-stable/contrib/llvm-project/llvm/lib/CodeGen/
H A DInterleavedAccessPass.cpp23 // E.g. An interleaved load (Factor = 2):
34 // E.g. An interleaved store (Factor = 3):
140 /// \p Factor like:
141 /// <Index, Index+Factor, ..., Index+(NumElts-1)*Factor>
142 static bool isDeInterleaveMaskOfFactor(ArrayRef<int> Mask, unsigned Factor, argument
144 // Check all potential start indices from 0 to (Factor - 1).
145 for (Index = 0; Index < Factor; Index++) {
148 // Check that elements are in ascending order by Factor. Ignore undef
151 if (Mask[i] >= 0 && static_cast<unsigned>(Mask[i]) != Index + i * Factor)
166 isDeInterleaveMask(ArrayRef<int> Mask, unsigned &Factor, unsigned &Index, unsigned MaxFactor, unsigned NumLoadElements) argument
195 isReInterleaveMask(ArrayRef<int> Mask, unsigned &Factor, unsigned MaxFactor, unsigned OpNumElts) argument
309 unsigned Factor, Index; local
428 unsigned Factor; local
[all...]
H A DInterleavedLoadCombinePass.cpp105 std::list<VectorInfo> &InterleavedLoad, unsigned Factor,
690 /// \param Factor of the interleave
694 bool isInterleaved(unsigned Factor, const DataLayout &DL) const { argument
697 if (!EI[i].Ofs.isProvenEqualTo(EI[0].Ofs + i * Factor * Size)) {
746 unsigned Factor = Result.VTy->getNumElements() / VTy->getNumElements(); local
750 if (NewSize * Factor != OldSize)
757 for (unsigned i = 0; i < Result.VTy->getNumElements(); i += Factor) {
758 for (unsigned j = 0; j < Factor; j++) {
760 ElementInfo(Old.EI[i / Factor].Ofs + j * NewSize,
761 j == 0 ? Old.EI[i / Factor]
1053 findPattern( std::list<VectorInfo> &Candidates, std::list<VectorInfo> &InterleavedLoad, unsigned Factor, const DataLayout &DL) argument
1137 unsigned Factor = InterleavedLoad.size(); local
[all...]
H A DMachineTraceMetrics.cpp873 unsigned Factor = MTM.SchedModel.getResourceFactor(K);
876 << PRDepths[K]/Factor << " ops x" << Factor << ")\n";
1057 unsigned Factor = MTM.SchedModel.getResourceFactor(K);
1060 << PRHeights[K]/Factor << " ops x" << Factor << ")\n";
/freebsd-11-stable/contrib/llvm-project/llvm/include/llvm/Transforms/Scalar/
H A DReassociate.h59 struct Factor { struct in namespace:llvm::reassociate
63 Factor(Value *Base, unsigned Power) : Base(Base), Power(Power) {} function in struct:llvm::reassociate::Factor
118 SmallVectorImpl<reassociate::Factor> &Factors);
121 Value *RemoveFactorFromExpression(Value *V, Value *Factor);
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Target/X86/
H A DX86InterleavedAccess.cpp44 /// E.g. A group of interleaving access loads (Factor = 2; accessing every
61 const unsigned Factor; member in class:__anon2964::X86InterleavedAccessGroup
114 : Inst(I), Shuffles(Shuffs), Indices(Ind), Factor(F), Subtarget(STarget),
140 if (!Subtarget.hasAVX() || (Factor != 4 && Factor != 3))
152 if (ShuffleElemSize == 64 && WideInstSize == 1024 && Factor == 4)
155 if (ShuffleElemSize == 8 && isa<StoreInst>(Inst) && Factor == 4 &&
160 if (ShuffleElemSize == 8 && Factor == 3 &&
728 decompose(Inst, Factor, ShuffleTy, DecomposedVectors);
731 unsigned NumSubVecElems = ShuffleEltTy->getVectorNumElements() / Factor;
[all...]
H A DX86TargetTransformInfo.h161 unsigned Factor, ArrayRef<unsigned> Indices,
166 unsigned Factor, ArrayRef<unsigned> Indices,
171 unsigned Factor, ArrayRef<unsigned> Indices,
H A DX86TargetTransformInfo.cpp3547 // \p Factor is the interleaved-access factor (stride) - number of
3552 // of the interleaved-access as given in \p Factor) the access has no gaps.
3559 unsigned Factor,
3567 return BaseT::getInterleavedMemoryOpCost(Opcode, VecTy, Factor, Indices,
3573 if (Indices.size() && Indices.size() != Factor)
3574 return BaseT::getInterleavedMemoryOpCost(Opcode, VecTy, Factor, Indices,
3577 // VecTy for interleave memop is <VF*Factor x Elt>.
3578 // So, for VF=4, Interleave Factor = 3, Element type = i32 we have
3582 // This function can be called with VecTy=<6xi128>, Factor=3, in which case
3586 return BaseT::getInterleavedMemoryOpCost(Opcode, VecTy, Factor, Indice
3558 getInterleavedMemoryOpCostAVX2(unsigned Opcode, Type *VecTy, unsigned Factor, ArrayRef<unsigned> Indices, unsigned Alignment, unsigned AddressSpace, bool UseMaskForCond, bool UseMaskForGaps) argument
3674 getInterleavedMemoryOpCostAVX512(unsigned Opcode, Type *VecTy, unsigned Factor, ArrayRef<unsigned> Indices, unsigned Alignment, unsigned AddressSpace, bool UseMaskForCond, bool UseMaskForGaps) argument
3799 getInterleavedMemoryOpCost(unsigned Opcode, Type *VecTy, unsigned Factor, ArrayRef<unsigned> Indices, unsigned Alignment, unsigned AddressSpace, bool UseMaskForCond, bool UseMaskForGaps) argument
[all...]
/freebsd-11-stable/contrib/llvm-project/llvm/include/llvm/Analysis/
H A DVectorUtils.h419 InterleaveGroup(uint32_t Factor, bool Reverse, Align Alignment) argument
420 : Factor(Factor), Reverse(Reverse), Alignment(Alignment),
425 Factor = std::abs(Stride);
426 assert(Factor > 1 && "Invalid interleave factor");
433 uint32_t getFactor() const { return Factor; }
455 if (Index >= static_cast<int32_t>(Factor))
467 if (*MaybeLargestIndex >= static_cast<int64_t>(Factor))
531 uint32_t Factor; // Interleave Factor member in class:llvm::InterleaveGroup
[all...]
/freebsd-11-stable/contrib/llvm-project/llvm/include/llvm/CodeGen/
H A DMachineTraceMetrics.h416 unsigned Factor = SchedModel.getLatencyFactor(); local
417 return (Scaled + Factor - 1) / Factor;
H A DBasicTTIImpl.h916 unsigned Factor,
925 assert(Factor > 1 && NumElts % Factor == 0 && "Invalid interleave factor");
927 unsigned NumSubElts = NumElts / Factor;
976 UsedInsts.set((Index + Elt * Factor) / NumEltsPerLegalInst);
994 assert(Indices.size() <= Factor &&
998 assert(Index < Factor && "Invalid index for interleaved memory op");
1003 Instruction::ExtractElement, VT, Index + i * Factor);
1026 Cost += ExtSubCost * Factor;
1041 // and insert each of them Factor time
915 getInterleavedMemoryOpCost(unsigned Opcode, Type *VecTy, unsigned Factor, ArrayRef<unsigned> Indices, unsigned Alignment, unsigned AddressSpace, bool UseMaskForCond = false, bool UseMaskForGaps = false) argument
[all...]
/freebsd-11-stable/contrib/llvm-project/llvm/lib/ProfileData/Coverage/
H A DCoverageMapping.cpp57 void CounterExpressionBuilder::extractTerms(Counter C, int Factor, argument
63 Terms.emplace_back(C.getCounterID(), Factor);
67 extractTerms(E.LHS, Factor, Terms);
69 E.RHS, E.Kind == CounterExpression::Subtract ? -Factor : Factor, Terms);
93 Prev->Factor += I->Factor;
105 if (T.Factor <= 0)
107 for (int I = 0; I < T.Factor; ++I)
117 if (T.Factor >
[all...]
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Transforms/Scalar/
H A DReassociate.cpp1040 /// and if this sequence contains a multiply by Factor,
1041 /// remove Factor from the tree and return the new tree.
1042 Value *ReassociatePass::RemoveFactorFromExpression(Value *V, Value *Factor) { argument
1060 if (Factors[i].Op == Factor) {
1067 if (ConstantInt *FC1 = dyn_cast<ConstantInt>(Factor)) {
1074 } else if (ConstantFP *FC1 = dyn_cast<ConstantFP>(Factor)) {
1546 Value *Factor = Factors[i];
1547 if (!Duplicates.insert(Factor).second)
1550 unsigned Occ = ++FactorOccurrences[Factor];
1553 MaxOccVal = Factor;
[all...]
H A DLoopStrengthReduce.cpp2693 if (const SCEVConstant *Factor =
2696 if (Factor->getAPInt().getMinSignedBits() <= 64)
2697 Factors.insert(Factor->getAPInt().getSExtValue());
2698 } else if (const SCEVConstant *Factor =
2702 if (Factor->getAPInt().getMinSignedBits() <= 64)
2703 Factors.insert(Factor->getAPInt().getSExtValue());
3886 for (int64_t Factor : Factors) {
3888 if (Base.BaseOffset == std::numeric_limits<int64_t>::min() && Factor == -1)
3890 int64_t NewBaseOffset = (uint64_t)Base.BaseOffset * Factor;
3891 if (NewBaseOffset / Factor !
5620 OS << '*' << Factor; local
[all...]
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Target/Hexagon/
H A DHexagonTargetTransformInfo.cpp218 Type *VecTy, unsigned Factor, ArrayRef<unsigned> Indices,
221 if (Indices.size() != Factor || UseMaskForCond || UseMaskForGaps)
222 return BaseT::getInterleavedMemoryOpCost(Opcode, VecTy, Factor, Indices,
217 getInterleavedMemoryOpCost(unsigned Opcode, Type *VecTy, unsigned Factor, ArrayRef<unsigned> Indices, unsigned Alignment, unsigned AddressSpace, bool UseMaskForCond, bool UseMaskForGaps) argument
H A DHexagonTargetTransformInfo.h125 unsigned Factor, ArrayRef<unsigned> Indices, unsigned Alignment,
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Target/SystemZ/
H A DSystemZTargetTransformInfo.cpp1062 unsigned Factor,
1069 return BaseT::getInterleavedMemoryOpCost(Opcode, VecTy, Factor, Indices,
1079 assert(Factor > 1 && NumElts % Factor == 0 && "Invalid interleave factor");
1080 unsigned VF = NumElts / Factor;
1090 std::vector<BitVector> ValueVecs(Factor, BitVector(NumVectorMemOps, false));
1093 unsigned Vec = (Index + Elt * Factor) / NumEltsPerVecReg;
1112 unsigned NumSrcVecs = std::min(NumEltsPerVecReg, Factor);
1061 getInterleavedMemoryOpCost(unsigned Opcode, Type *VecTy, unsigned Factor, ArrayRef<unsigned> Indices, unsigned Alignment, unsigned AddressSpace, bool UseMaskForCond, bool UseMaskForGaps) argument
H A DSystemZTargetTransformInfo.h95 unsigned Factor,
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Target/PowerPC/
H A DPPCTargetTransformInfo.h106 unsigned Factor,
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Target/ARM/
H A DARMTargetTransformInfo.cpp812 unsigned Opcode, Type *VecTy, unsigned Factor, ArrayRef<unsigned> Indices,
815 assert(Factor >= 2 && "Invalid interleave factor");
821 if (Factor <= TLI->getMaxSupportedInterleaveFactor() && !EltIs64Bits &&
824 auto *SubVecTy = VectorType::get(VecTy->getScalarType(), NumElts / Factor);
830 if (NumElts % Factor == 0 &&
831 TLI->isLegalInterleavedAccessType(Factor, SubVecTy, DL))
832 return Factor * BaseCost * TLI->getNumInterleavedAccesses(SubVecTy, DL);
839 if (ST->hasMVEIntegerOps() && Factor == 2 && NumElts / Factor > 2 &&
844 return BaseT::getInterleavedMemoryOpCost(Opcode, VecTy, Factor, Indice
811 getInterleavedMemoryOpCost( unsigned Opcode, Type *VecTy, unsigned Factor, ArrayRef<unsigned> Indices, unsigned Alignment, unsigned AddressSpace, bool UseMaskForCond, bool UseMaskForGaps) argument
[all...]
H A DMVETailPredication.cpp473 ConstantInt *Factor = local
497 Value *Remaining = Builder.CreateSub(Processed, Factor);
H A DARMTargetTransformInfo.h219 int getInterleavedMemoryOpCost(unsigned Opcode, Type *VecTy, unsigned Factor,
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Target/AArch64/
H A DAArch64TargetTransformInfo.cpp681 unsigned Factor,
687 assert(Factor >= 2 && "Invalid interleave factor");
691 Factor <= TLI->getMaxSupportedInterleaveFactor()) {
693 auto *SubVecTy = VectorType::get(VecTy->getScalarType(), NumElts / Factor);
698 if (NumElts % Factor == 0 &&
700 return Factor * TLI->getNumInterleavedAccesses(SubVecTy, DL);
703 return BaseT::getInterleavedMemoryOpCost(Opcode, VecTy, Factor, Indices,
680 getInterleavedMemoryOpCost(unsigned Opcode, Type *VecTy, unsigned Factor, ArrayRef<unsigned> Indices, unsigned Alignment, unsigned AddressSpace, bool UseMaskForCond, bool UseMaskForGaps) argument
H A DAArch64TargetTransformInfo.h175 int getInterleavedMemoryOpCost(unsigned Opcode, Type *VecTy, unsigned Factor,
/freebsd-11-stable/contrib/llvm-project/llvm/include/llvm/ProfileData/Coverage/
H A DCoverageMapping.h173 int Factor; member in struct:llvm::coverage::CounterExpressionBuilder::Term
175 Term(unsigned CounterID, int Factor) argument
176 : CounterID(CounterID), Factor(Factor) {}
/freebsd-11-stable/contrib/llvm-project/clang/lib/Driver/
H A DToolChain.cpp646 // FIXME: Factor into subclasses.
980 unsigned Build = 0, Factor = 1; local
981 for (; Version > 10000; Version = Version / 10, Factor = Factor * 10)
982 Build = Build + (Version % 10) * Factor;

Completed in 173 milliseconds

123