#
8df64ed7 |
| 12-Jan-2025 |
Florian Hahn <flo@fhahn.com> |
[LV] Don't consider IV increments uniform if exit value is used outside.
In some cases, there might be a chain of uniform instructions producing the exit value. To generate correct code in all cases
[LV] Don't consider IV increments uniform if exit value is used outside.
In some cases, there might be a chain of uniform instructions producing the exit value. To generate correct code in all cases, consider the IV increment not uniform, if there are users outside the loop.
Instead, let VPlan narrow the IV, if possible using the logic from 3ff1d01985752.
Test case from #122602 verified with Alive2: https://alive2.llvm.org/ce/z/bA4EGj
Fixes https://github.com/llvm/llvm-project/issues/122496. Fixes https://github.com/llvm/llvm-project/issues/122602.
show more ...
|