Lines Matching defs:LoopAttributes

36 MDNode *LoopInfo::createPipeliningMetadata(const LoopAttributes &Attrs,
81 LoopInfo::createPartialUnrollMetadata(const LoopAttributes &Attrs,
87 if (Attrs.UnrollEnable == LoopAttributes::Disable)
89 else if (Attrs.UnrollEnable == LoopAttributes::Full)
91 else if (Attrs.UnrollEnable != LoopAttributes::Unspecified ||
127 if (Attrs.UnrollEnable == LoopAttributes::Enable) {
143 LoopInfo::createUnrollAndJamMetadata(const LoopAttributes &Attrs,
149 if (Attrs.UnrollAndJamEnable == LoopAttributes::Disable)
151 else if (Attrs.UnrollAndJamEnable == LoopAttributes::Enable ||
189 if (Attrs.UnrollAndJamEnable == LoopAttributes::Enable) {
211 LoopInfo::createLoopVectorizeMetadata(const LoopAttributes &Attrs,
217 if (Attrs.VectorizeEnable == LoopAttributes::Disable)
219 else if (Attrs.VectorizeEnable != LoopAttributes::Unspecified ||
220 Attrs.VectorizePredicateEnable != LoopAttributes::Unspecified ||
222 Attrs.VectorizeScalable != LoopAttributes::Unspecified)
257 if (Attrs.VectorizePredicateEnable != LoopAttributes::Unspecified) {
259 (Attrs.VectorizePredicateEnable == LoopAttributes::Enable);
278 if (Attrs.VectorizeScalable != LoopAttributes::Unspecified) {
279 bool IsScalable = Attrs.VectorizeScalable == LoopAttributes::Enable;
304 if (Attrs.VectorizeEnable != LoopAttributes::Unspecified ||
307 Attrs.VectorizeScalable == LoopAttributes::Enable ||
308 (Attrs.VectorizeScalable == LoopAttributes::Disable &&
310 bool AttrVal = Attrs.VectorizeEnable != LoopAttributes::Disable;
329 LoopInfo::createLoopDistributeMetadata(const LoopAttributes &Attrs,
335 if (Attrs.DistributeEnable == LoopAttributes::Disable)
337 if (Attrs.DistributeEnable == LoopAttributes::Enable)
365 (Attrs.DistributeEnable == LoopAttributes::Enable)))};
379 MDNode *LoopInfo::createFullUnrollMetadata(const LoopAttributes &Attrs,
385 if (Attrs.UnrollEnable == LoopAttributes::Disable)
387 else if (Attrs.UnrollEnable == LoopAttributes::Full)
417 const LoopAttributes &Attrs,
456 LoopAttributes::LoopAttributes(bool IsParallel)
457 : IsParallel(IsParallel), VectorizeEnable(LoopAttributes::Unspecified),
458 UnrollEnable(LoopAttributes::Unspecified),
459 UnrollAndJamEnable(LoopAttributes::Unspecified),
460 VectorizePredicateEnable(LoopAttributes::Unspecified), VectorizeWidth(0),
461 VectorizeScalable(LoopAttributes::Unspecified), InterleaveCount(0),
463 DistributeEnable(LoopAttributes::Unspecified), PipelineDisabled(false),
466 void LoopAttributes::clear() {
469 VectorizeScalable = LoopAttributes::Unspecified;
473 VectorizeEnable = LoopAttributes::Unspecified;
474 UnrollEnable = LoopAttributes::Unspecified;
475 UnrollAndJamEnable = LoopAttributes::Unspecified;
476 VectorizePredicateEnable = LoopAttributes::Unspecified;
477 DistributeEnable = LoopAttributes::Unspecified;
484 LoopInfo::LoopInfo(BasicBlock *Header, const LoopAttributes &Attrs,
497 Attrs.VectorizeScalable == LoopAttributes::Unspecified &&
501 Attrs.VectorizePredicateEnable == LoopAttributes::Unspecified &&
502 Attrs.VectorizeEnable == LoopAttributes::Unspecified &&
503 Attrs.UnrollEnable == LoopAttributes::Unspecified &&
504 Attrs.UnrollAndJamEnable == LoopAttributes::Unspecified &&
505 Attrs.DistributeEnable == LoopAttributes::Unspecified &&
519 LoopAttributes CurLoopAttr = Attrs;
528 LoopAttributes BeforeJam, AfterJam;
540 case LoopAttributes::Unspecified:
541 case LoopAttributes::Disable:
545 case LoopAttributes::Full:
546 BeforeJam.UnrollEnable = LoopAttributes::Full;
548 case LoopAttributes::Enable:
549 AfterJam.UnrollEnable = LoopAttributes::Enable;
574 if (BeforeJam.VectorizeEnable != LoopAttributes::Unspecified ||
575 BeforeJam.VectorizePredicateEnable != LoopAttributes::Unspecified ||
577 BeforeJam.VectorizeScalable == LoopAttributes::Enable)
665 setVectorizeScalable(LoopAttributes::Unspecified);
672 setUnrollState(LoopAttributes::Disable);
675 setUnrollAndJamState(LoopAttributes::Disable);
678 setVectorizePredicateState(LoopAttributes::Disable);
702 setUnrollState(LoopAttributes::Enable);
705 setUnrollAndJamState(LoopAttributes::Enable);
708 setVectorizePredicateState(LoopAttributes::Enable);
748 setUnrollState(LoopAttributes::Full);
751 setUnrollAndJamState(LoopAttributes::Full);
772 ? LoopAttributes::Enable
773 : LoopAttributes::Disable);
826 (StagedAttrs.UnrollEnable == LoopAttributes::Unspecified &&
828 setUnrollState(LoopAttributes::Disable);