Similar to D138404, we were not guarding against extra uses of the Mul. In most cases other checks would catch the issue due to unsupported instructions in the outer loop, but certain non-canonical loop forms could still get through.
Fixes #59339
Paths
| Differential D141114
[LoopFlattening] Check for extra uses on Mul ClosedPublic Authored by dmgreen on Jan 6 2023, 1:04 AM.
Details Summary Similar to D138404, we were not guarding against extra uses of the Mul. In most cases other checks would catch the issue due to unsupported instructions in the outer loop, but certain non-canonical loop forms could still get through. Fixes #59339
Diff Detail
Event TimelineComment Actions Thanks a lot for fixing this!
This revision is now accepted and ready to land.Jan 6 2023, 5:00 AM Comment Actions Please avoid unnamed instructions/blocks in tests, which make future updates a PITA. You can avoid this using opt -passes=instnamer. This revision was landed with ongoing or failed builds.Jan 6 2023, 7:32 AM Closed by commit rG161bfa5f53ef: [LoopFlattening] Check for extra uses on Mul (authored by dmgreen). · Explain Why This revision was automatically updated to reflect the committed changes.
Revision Contents
Diff 486878 llvm/lib/Transforms/Scalar/LoopFlatten.cpp
llvm/test/Transforms/LoopFlatten/pr59339.ll
|
This comment can now be removed, or perhaps better adjusted.