[PATCH] D103362: [LoopUnroll] Separate peeling from unrolling

Nikita Popov via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon May 31 00:34:43 PDT 2021


nikic added a comment.

In D103362#2788792 <https://reviews.llvm.org/D103362#2788792>, @lebedev.ri wrote:

> I was actually talking about not the explicit options, but how this works in the pipeline,
> and i guess this somehow does not affect that use-case at all.
> IMO that becomes even more confusing, but since this doesn't regress pipelines, i don't care.

Yes, this does not affect the optimization pipeline, it only affects tests that specify explicit unroll counts.

I think it is worth noting that there //are// cases where performing both (non-PGO) peeling and unrolling //could// be sensible, namely when invariance peeling renders a previously non-analyzable loop analyzable. However, this requires that we first perform a peel and then re-analyze the loop for unrolling profitability from scratch, not that we perform a combined peel and unroll in a single step. As such, even if we want to support both peeling and unrolling a loop in the future, I believe this patch would still be the necessary first step in that direction.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D103362/new/

https://reviews.llvm.org/D103362



More information about the llvm-commits mailing list