diff options
author | Florian Hahn <flo@fhahn.com> | 2025-08-09 20:54:42 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-08-09 20:54:42 +0100 |
commit | 06fd0f9d65a8be50ba3640e1ab878ea02ab053f8 (patch) | |
tree | 651d2d126d06fdc7240ae2d0ecd9c8829e44f006 /clang/lib/CIR/CodeGen/CIRGenModule.cpp | |
parent | aee4f2baccdbc018d0ac60eaa4e2a0a5f30bcdf5 (diff) | |
download | llvm-06fd0f9d65a8be50ba3640e1ab878ea02ab053f8.zip llvm-06fd0f9d65a8be50ba3640e1ab878ea02ab053f8.tar.gz llvm-06fd0f9d65a8be50ba3640e1ab878ea02ab053f8.tar.bz2 |
[VPlan] Move initial skeleton construction earlier (NFC). (#150848)
Split up the not clearly named prepareForVectorization transform into
buildVPlan0, which adds the vector preheader, middle and scalar
preheader blocks, as well as the canonical induction recipes and sets
the trip count. The new transform is run directly after building the
plain CFG VPlan initially.
The remaining code handling early exits and adding the branch in the
middle block is renamed to handleEarlyExitsAndAddMiddleCheck and still
runs at the original position.
With the code movement, we only have to add the skeleton once to the
initial VPlan, and cloning will take care of the rest. It will also
enable moving other construction steps to work directly on VPlan0, like
adding resume phis.
PR: https://github.com/llvm/llvm-project/pull/150848
Diffstat (limited to 'clang/lib/CIR/CodeGen/CIRGenModule.cpp')
0 files changed, 0 insertions, 0 deletions