[LV] Move LoopVersioning creation to LVP::execute.
authorFlorian Hahn <flo@fhahn.com>
Thu, 30 Jun 2022 11:14:31 +0000 (12:14 +0100)
committerFlorian Hahn <flo@fhahn.com>
Thu, 30 Jun 2022 11:14:32 +0000 (12:14 +0100)
commit68884dde702c2306947f1c38e7e8a3a739b50412
tree10204a2af13e7972b6cbb698563af632b8d4b444
parent988901ac74053408d2454f03651c8250ee88104c
[LV] Move LoopVersioning creation to LVP::execute.

At the moment LoopVersioning is only created for inner-loop
vectorization. This patch moves it to LVP::execute, which means it will
also be added for epilogue vectorization. As a consequence, the proper
noalias metadata is now also added to epilogue vector loops.

LVer will be moved to VPTransformState as follow-up.

Reviewed By: Ayal

Differential Revision: https://reviews.llvm.org/D127966
llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
llvm/test/Transforms/LoopVectorize/X86/invariant-store-vectorization.ll