This makes MemorySSA in LoopSink required, and removes the AST-based implementation, as well as the related support code in LICM.
Details
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
LGTM, thanks!
| llvm/lib/Transforms/Scalar/LICM.cpp | ||
|---|---|---|
| 1138 | I guess the APIs could also be updated to take MSSAUby reference, so we don't have to assert here. | |
Added nits, but happy if this goes in as is too.
| llvm/lib/Transforms/Scalar/LICM.cpp | ||
|---|---|---|
| 161 | These two APIs could be made consistent to either have the Loop and BB as the first argument, or MSSA and MU. Not worth bike-shedding though.. | |
| 1219–1223 | The two if conditions can be && appended; I believe this was the case before I split the MSSA and AST code paths. | |
| llvm/lib/Transforms/Scalar/LICM.cpp | ||
|---|---|---|
| 1138 | I landed some follow-up conversion from pointers to references in https://github.com/llvm/llvm-project/commit/c8c63625601c04786cbf0819708725b830f0dfbb. | |
These two APIs could be made consistent to either have the Loop and BB as the first argument, or MSSA and MU. Not worth bike-shedding though..