Home | History | Annotate | Download | only in CodeGen

Lines Matching defs:LoopAttributes

35 MDNode *LoopInfo::createPipeliningMetadata(const LoopAttributes &Attrs,
80 LoopInfo::createPartialUnrollMetadata(const LoopAttributes &Attrs,
86 if (Attrs.UnrollEnable == LoopAttributes::Disable)
88 else if (Attrs.UnrollEnable == LoopAttributes::Full)
90 else if (Attrs.UnrollEnable != LoopAttributes::Unspecified ||
126 if (Attrs.UnrollEnable == LoopAttributes::Enable) {
142 LoopInfo::createUnrollAndJamMetadata(const LoopAttributes &Attrs,
148 if (Attrs.UnrollAndJamEnable == LoopAttributes::Disable)
150 else if (Attrs.UnrollAndJamEnable == LoopAttributes::Enable ||
188 if (Attrs.UnrollAndJamEnable == LoopAttributes::Enable) {
210 LoopInfo::createLoopVectorizeMetadata(const LoopAttributes &Attrs,
216 if (Attrs.VectorizeEnable == LoopAttributes::Disable)
218 else if (Attrs.VectorizeEnable != LoopAttributes::Unspecified ||
219 Attrs.VectorizePredicateEnable != LoopAttributes::Unspecified ||
221 Attrs.VectorizeScalable != LoopAttributes::Unspecified)
256 if (Attrs.VectorizePredicateEnable != LoopAttributes::Unspecified) {
258 (Attrs.VectorizePredicateEnable == LoopAttributes::Enable);
277 if (Attrs.VectorizeScalable != LoopAttributes::Unspecified) {
278 bool IsScalable = Attrs.VectorizeScalable == LoopAttributes::Enable;
303 if (Attrs.VectorizeEnable != LoopAttributes::Unspecified ||
306 Attrs.VectorizeScalable == LoopAttributes::Enable ||
307 (Attrs.VectorizeScalable == LoopAttributes::Disable &&
309 bool AttrVal = Attrs.VectorizeEnable != LoopAttributes::Disable;
328 LoopInfo::createLoopDistributeMetadata(const LoopAttributes &Attrs,
334 if (Attrs.DistributeEnable == LoopAttributes::Disable)
336 if (Attrs.DistributeEnable == LoopAttributes::Enable)
364 (Attrs.DistributeEnable == LoopAttributes::Enable)))};
378 MDNode *LoopInfo::createFullUnrollMetadata(const LoopAttributes &Attrs,
384 if (Attrs.UnrollEnable == LoopAttributes::Disable)
386 else if (Attrs.UnrollEnable == LoopAttributes::Full)
416 const LoopAttributes &Attrs,
447 LoopAttributes::LoopAttributes(bool IsParallel)
448 : IsParallel(IsParallel), VectorizeEnable(LoopAttributes::Unspecified),
449 UnrollEnable(LoopAttributes::Unspecified),
450 UnrollAndJamEnable(LoopAttributes::Unspecified),
451 VectorizePredicateEnable(LoopAttributes::Unspecified), VectorizeWidth(0),
452 VectorizeScalable(LoopAttributes::Unspecified), InterleaveCount(0),
454 DistributeEnable(LoopAttributes::Unspecified), PipelineDisabled(false),
457 void LoopAttributes::clear() {
460 VectorizeScalable = LoopAttributes::Unspecified;
464 VectorizeEnable = LoopAttributes::Unspecified;
465 UnrollEnable = LoopAttributes::Unspecified;
466 UnrollAndJamEnable = LoopAttributes::Unspecified;
467 VectorizePredicateEnable = LoopAttributes::Unspecified;
468 DistributeEnable = LoopAttributes::Unspecified;
474 LoopInfo::LoopInfo(BasicBlock *Header, const LoopAttributes &Attrs,
487 Attrs.VectorizeScalable == LoopAttributes::Unspecified &&
491 Attrs.VectorizePredicateEnable == LoopAttributes::Unspecified &&
492 Attrs.VectorizeEnable == LoopAttributes::Unspecified &&
493 Attrs.UnrollEnable == LoopAttributes::Unspecified &&
494 Attrs.UnrollAndJamEnable == LoopAttributes::Unspecified &&
495 Attrs.DistributeEnable == LoopAttributes::Unspecified && !StartLoc &&
509 LoopAttributes CurLoopAttr = Attrs;
518 LoopAttributes BeforeJam, AfterJam;
530 case LoopAttributes::Unspecified:
531 case LoopAttributes::Disable:
535 case LoopAttributes::Full:
536 BeforeJam.UnrollEnable = LoopAttributes::Full;
538 case LoopAttributes::Enable:
539 AfterJam.UnrollEnable = LoopAttributes::Enable;
564 if (BeforeJam.VectorizeEnable != LoopAttributes::Unspecified ||
565 BeforeJam.VectorizePredicateEnable != LoopAttributes::Unspecified ||
567 BeforeJam.VectorizeScalable == LoopAttributes::Enable)
644 setVectorizeScalable(LoopAttributes::Unspecified);
651 setUnrollState(LoopAttributes::Disable);
654 setUnrollAndJamState(LoopAttributes::Disable);
657 setVectorizePredicateState(LoopAttributes::Disable);
681 setUnrollState(LoopAttributes::Enable);
684 setUnrollAndJamState(LoopAttributes::Enable);
687 setVectorizePredicateState(LoopAttributes::Enable);
727 setUnrollState(LoopAttributes::Full);
730 setUnrollAndJamState(LoopAttributes::Full);
751 ? LoopAttributes::Enable
752 : LoopAttributes::Disable);
796 (StagedAttrs.UnrollEnable == LoopAttributes::Unspecified &&
798 setUnrollState(LoopAttributes::Disable);