[PATCH] D103424: [IndVars] Don't forget value when inferring nowrap flags

Philip Reames via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Jun 3 09:52:21 PDT 2021


reames accepted this revision.
reames added a comment.

The fact this leaves SCEV in a imprecise state is not ideal.  From a practical engineering perspective, we may need to accept it.  The compile time impact here is rather compelling.  At a minimum, please replace the dropped lines with a comment explaining that we are intentionally leaving SCEV imprecise.  Alternatively, you could use the existing APIs to mutate the existing SCEV, but that path tends to be fragile, so I'm not really sure it's worth it.

This fits into a long standing thought I have that we should restructure SCEV as an optimizeable IR with support for replaceAllUsesWith type operations.  If we did, we'd get around the need to invalidate to refine analysis here.  That's a huge project, and probably worthy of a lot of discussion outside of a random review thread though.  :)

LGTM w/comment added.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D103424



More information about the llvm-commits mailing list