[PATCH] D114185: [SCEV] Leverage inferred no-self-wrap flags to refine trip counts

Nikita Popov via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Nov 19 10:14:57 PST 2021


nikic added a comment.

I'm really uncomfortable with removing things from UniqueSCEVs. If I understood correctly, your motivation here is that getZeroExtendExpr will not try folds if it has already memoized that the fact that this expression doesn't fold. I think we'd be better off adding a parameter to skip that check for this use-site.

Though I'm generally starting to have doubts about the direction of the whole patch stack (starting D103991 <https://reviews.llvm.org/D103991>). I find this kind of after the fact fixup of SCEVs rather problematic. Just the additional nowrap flags inferred during zext/sext construction can already cause hard to understand "spooky action at a distance", and this takes things one step further. I didn't really appreciate that this is where this is going.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D114185



More information about the llvm-commits mailing list