[PATCH] D31613: [LoopPeeling] Get rid of Phis that become invariant after N steps

Max Kazantsev via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sun Oct 29 22:00:59 PDT 2017


mkazantsev added a comment.

Hi @lebedev.ri

This is an interesting case, however it has nothing to do with this patch. This patch is only for pattern "some Phi becomes invariant after N steps", and in your situation is "some condition becomes invariant after few steps". It is a completely different situation. In case if your condition was `if (x < 60)`, using peeling here would be complete bizzare.

I personally don't plan to do anything in peeling in the observable future.

In LLVM, we have a pass InductiveRangeChecksElimination which is not included into clang pipeline, but it handles exactly this kind of cases. Try running `opt` with `-irce` option and see what happens.

- Max


Repository:
  rL LLVM

https://reviews.llvm.org/D31613





More information about the llvm-commits mailing list