diff options
author | Igor Kirillov <igor.kirillov@arm.com> | 2025-07-25 13:28:27 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-07-25 13:28:27 +0100 |
commit | 0c91e977c0509d39aca2baa0742a959b3e8a6ffe (patch) | |
tree | ae22a5cd58a0c0097c8a3d4cbf5a2477a83751cc /clang/lib/Frontend/CompilerInvocation.cpp | |
parent | c77a2a24033588c7ab0dfdff3692a2fcbb512ff7 (diff) | |
download | llvm-0c91e977c0509d39aca2baa0742a959b3e8a6ffe.zip llvm-0c91e977c0509d39aca2baa0742a959b3e8a6ffe.tar.gz llvm-0c91e977c0509d39aca2baa0742a959b3e8a6ffe.tar.bz2 |
[VectorCombine] Refine cost model and decision logic in foldSelectShuffle (#146694)
After PR #136329, shuffle indices may differ, which can cause the
existing cost-based logic to miss optimisation opportunities for
binop/shuffle sequences.
This patch improves the cost model in foldSelectShuffle to more
accurately assess costs, recognising when certain duplicate shuffles do
not require actual instructions.
Additionally, in break-even cases, this change introduces a check for
whether the pattern ultimately feeds into a vector reduction, allowing
the transform to proceed when it is likely to be profitable overall.
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions