[PATCH] D69067: [LV] Reduce ingredient DU usage by ILV (NFC)
Gil Rapaport via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Oct 16 12:59:55 PDT 2019
gilr created this revision.
gilr added reviewers: rengolin, hsaito, dcaballe, fhahn, Ayal, dorit.
Herald added subscribers: llvm-commits, rogfer01, rkruppe, bollu, hiraditya.
Herald added a project: LLVM.
InnerLoopVectorizer's code called during VPlan execution still relies on
original IR's Def-Use relations to decide which vector code to generate,
limiting VPlan transformations ability to modify Def-Use relations and still
have ILV generate the vector code.
This commit moves two such vectorization decisions to the relevant Recipes as
a step towards full VPlan-based Def-Use relations:
- Inspecting the pointer during memory-instruction vectorization is moved to VPWidenMemoryInstructionRecipe.
- GEP operand queries controlling how GEPs are widened are moved to the new VPWidenGEPRecipe; GEP widening code is extracted to its own ILV method taking those recorded decisions as arguments.
Repository:
rL LLVM
https://reviews.llvm.org/D69067
Files:
llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
llvm/lib/Transforms/Vectorize/VPlan.cpp
llvm/lib/Transforms/Vectorize/VPlan.h
llvm/lib/Transforms/Vectorize/VPlanHCFGTransforms.cpp
llvm/lib/Transforms/Vectorize/VPlanHCFGTransforms.h
llvm/unittests/Transforms/Vectorize/VPlanHCFGTest.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D69067.225293.patch
Type: text/x-patch
Size: 18145 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20191016/f073e273/attachment.bin>
More information about the llvm-commits
mailing list