llvm
ff4c6fe2 - [SCEV] Move NoWrapFlags definition outside SCEV scope, use for SCEVUse. (#190199)

Commit
4 days ago
[SCEV] Move NoWrapFlags definition outside SCEV scope, use for SCEVUse. (#190199) The patch moves out of SCEV's scope so they can be re-used for SCEVUse. SCEVUse gets an additional getNoWrapFlags helper that returns the union of the expressions SCEV flags and the use-specific flags. SCEVExpander has been updated to use this new helper. In order to avoid other changes, the original names are exposed via constexpr in SCEV. Not sure if there's a nicer way. One alternative would be to define the enum in struct, and have SCEV inherit from it. The patch also clarifies that the SCEVUse flags encode NUW/NSW, and hides getInt, setInt, etc to avoid potential mis-use. PR: https://github.com/llvm/llvm-project/pull/190199
Author
Parents
Loading