diff options
author | Florian Hahn <flo@fhahn.com> | 2025-08-04 11:31:00 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-08-04 11:31:00 +0100 |
commit | 66a8341f6d89d562faad667986af8fa584ad7426 (patch) | |
tree | 59db9db75944520dbc9d8d9618a62ff0ac51c7fd /llvm/lib/Transforms/Utils/Local.cpp | |
parent | 0824811b0beddae1f6fd25f7acdd17a3f2db07ff (diff) | |
download | llvm-66a8341f6d89d562faad667986af8fa584ad7426.zip llvm-66a8341f6d89d562faad667986af8fa584ad7426.tar.gz llvm-66a8341f6d89d562faad667986af8fa584ad7426.tar.bz2 |
[VPlan] Skip disconnected exit blocks in hasEarlyExit. (#151718)
Currently hasEarlyExit returns true, if there are multiple exit blocks.
ExitBlocks contains the wrapped original IR exit blocks. Without
checking the predecessors we incorrectly return true for loops with
multiple countable exits, that have been vectorized by requiring a
scalar epilogue. In that case, the exit blocks will get disconnected.
Fix this by filtering out disconnected exit blocks.
Currently this should only impact the 'early-exit vectorized' statistic.
PR: https://github.com/llvm/llvm-project/pull/151718
Diffstat (limited to 'llvm/lib/Transforms/Utils/Local.cpp')
0 files changed, 0 insertions, 0 deletions