[VPlan] Avoid collecting scalars for SVE
authorMalhar Jajoo <malhar.jajoo@arm.com>
Fri, 11 Mar 2022 09:35:31 +0000 (09:35 +0000)
committerMalhar Jajoo <malhar.jajoo@arm.com>
Wed, 16 Mar 2022 16:33:34 +0000 (16:33 +0000)
commita36d269658dfd8b16dd8bdcb1726b9206b1d97ff
tree68d1e2f1ff2332546a6f20ca0b0856133ba785d1
parent3f0e0508420e5d0db95c15ff36db758921c084d9
[VPlan] Avoid collecting scalars for SVE

This patch ensures scalars (except for uniforms) are no
longer collected (prior to LVP planning phase) for
scalable vectorization.

This is to avoid the chances of generating scalarized
instructions later (during LVP execute phase) as they
are not supported for scalable vectorization.

Relevant test has also been added.

Differential Revision: https://reviews.llvm.org/D121452
llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
llvm/test/Transforms/LoopVectorize/AArch64/scalable-avoid-scalarization.ll [new file with mode: 0644]