Home
last modified time | relevance | path

Searched refs:RecurrenceDescriptor (Results 1 – 10 of 10) sorted by relevance

/freebsd-12.1/contrib/llvm/lib/CodeGen/
H A DExpandReductions.cpp60 RecurrenceDescriptor::MinMaxRecurrenceKind getMRK(Intrinsic::ID ID) { in getMRK()
63 return RecurrenceDescriptor::MRK_SIntMax; in getMRK()
65 return RecurrenceDescriptor::MRK_SIntMin; in getMRK()
67 return RecurrenceDescriptor::MRK_UIntMax; in getMRK()
69 return RecurrenceDescriptor::MRK_UIntMin; in getMRK()
71 return RecurrenceDescriptor::MRK_FloatMax; in getMRK()
73 return RecurrenceDescriptor::MRK_FloatMin; in getMRK()
75 return RecurrenceDescriptor::MRK_Invalid; in getMRK()
92 auto MRK = RecurrenceDescriptor::MRK_Invalid; in expandReductions()
/freebsd-12.1/contrib/llvm/include/llvm/Transforms/Utils/
H A DLoopUtils.h284 RecurrenceDescriptor::MinMaxRecurrenceKind RK,
290 RecurrenceDescriptor::MinMaxRecurrenceKind MinMaxKind =
291 RecurrenceDescriptor::MRK_Invalid,
296 RecurrenceDescriptor::MinMaxRecurrenceKind
297 MinMaxKind = RecurrenceDescriptor::MRK_Invalid,
316 RecurrenceDescriptor &Desc, Value *Src,
/freebsd-12.1/contrib/llvm/lib/Analysis/
H A DIVDescriptors.cpp44 bool RecurrenceDescriptor::areAllUsesIn(Instruction *I, in areAllUsesIn()
52 bool RecurrenceDescriptor::isIntegerRecurrenceKind(RecurrenceKind Kind) { in isIntegerRecurrenceKind()
193 RecurrenceDescriptor &RedDes, in AddReductionVar()
444 RecurrenceDescriptor RD( in AddReductionVar()
454 RecurrenceDescriptor::InstDesc
512 RecurrenceDescriptor::InstDesc
513 RecurrenceDescriptor::isConditionalRdxPattern( in isConditionalRdxPattern()
550 RecurrenceDescriptor::InstDesc
592 bool RecurrenceDescriptor::hasMultipleUsesOf( in hasMultipleUsesOf()
606 bool RecurrenceDescriptor::isReductionPHI(PHINode *Phi, Loop *TheLoop, in isReductionPHI()
[all …]
/freebsd-12.1/contrib/llvm/lib/Transforms/Utils/
H A DLoopUtils.cpp688 case RecurrenceDescriptor::MRK_UIntMin: in createMinMaxOp()
691 case RecurrenceDescriptor::MRK_UIntMax: in createMinMaxOp()
694 case RecurrenceDescriptor::MRK_SIntMin: in createMinMaxOp()
697 case RecurrenceDescriptor::MRK_SIntMax: in createMinMaxOp()
700 case RecurrenceDescriptor::MRK_FloatMin: in createMinMaxOp()
703 case RecurrenceDescriptor::MRK_FloatMax: in createMinMaxOp()
716 if (RK == RecurrenceDescriptor::MRK_FloatMin || in createMinMaxOp()
717 RK == RecurrenceDescriptor::MRK_FloatMax) in createMinMaxOp()
745 assert(MinMaxKind != RecurrenceDescriptor::MRK_Invalid && in getOrderedReduction()
809 using RD = RecurrenceDescriptor; in createSimpleTargetReduction()
[all …]
/freebsd-12.1/contrib/llvm/include/llvm/Analysis/
H A DIVDescriptors.h63 class RecurrenceDescriptor {
90 RecurrenceDescriptor() = default;
92 RecurrenceDescriptor(Value *Start, Instruction *Exit, RecurrenceKind K, in RecurrenceDescriptor() function
171 RecurrenceDescriptor &RedDes,
181 RecurrenceDescriptor &RedDes,
/freebsd-12.1/contrib/llvm/lib/Target/ARM/
H A DARMParallelDSP.cpp461 RecurrenceDescriptor RecDesc; in MatchReductions()
478 RecurrenceDescriptor::AddReductionVar(&Phi, in MatchReductions()
479 RecurrenceDescriptor::RK_IntegerAdd, in MatchReductions()
/freebsd-12.1/contrib/llvm/lib/Transforms/Vectorize/
H A DLoopVectorizationLegality.cpp656 RecurrenceDescriptor RedDes; in canVectorizeInstrs()
657 if (RecurrenceDescriptor::isReductionPHI(Phi, TheLoop, RedDes, DB, AC, in canVectorizeInstrs()
688 if (RecurrenceDescriptor::isFirstOrderRecurrence(Phi, TheLoop, in canVectorizeInstrs()
H A DLoopVectorize.cpp3492 RecurrenceDescriptor RdxDesc = (*Legal->getReductionVars())[Phi]; in fixReduction()
3494 RecurrenceDescriptor::RecurrenceKind RK = RdxDesc.getRecurrenceKind(); in fixReduction()
3497 RecurrenceDescriptor::MinMaxRecurrenceKind MinMaxKind = in fixReduction()
3514 if (RK == RecurrenceDescriptor::RK_IntegerMinMax || in fixReduction()
3515 RK == RecurrenceDescriptor::RK_FloatMinMax) { in fixReduction()
3525 Constant *Iden = RecurrenceDescriptor::getRecurrenceIdentity( in fixReduction()
3598 unsigned Op = RecurrenceDescriptor::getRecurrenceBinOp(RK); in fixReduction()
4876 RecurrenceDescriptor RdxDesc = (*Legal->getReductionVars())[PN]; in getSmallestAndWidestTypes()
6056 RecurrenceDescriptor &RedDes = Reduction.second; in collectValuesToIgnore()
/freebsd-12.1/contrib/llvm/include/llvm/Transforms/Vectorize/
H A DLoopVectorizationLegality.h231 using ReductionList = DenseMap<PHINode *, RecurrenceDescriptor>;
/freebsd-12.1/contrib/llvm/lib/Transforms/Scalar/
H A DLoopInterchange.cpp671 RecurrenceDescriptor RD; in findInnerReductionPhi()
672 if (RecurrenceDescriptor::isReductionPHI(PHI, L, RD)) in findInnerReductionPhi()
686 RecurrenceDescriptor RD; in findInductionAndReductions()