aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/CIR/CodeGen/CIRGenModule.cpp
diff options
context:
space:
mode:
authorFlorian Hahn <flo@fhahn.com>2025-08-09 20:54:42 +0100
committerGitHub <noreply@github.com>2025-08-09 20:54:42 +0100
commit06fd0f9d65a8be50ba3640e1ab878ea02ab053f8 (patch)
tree651d2d126d06fdc7240ae2d0ecd9c8829e44f006 /clang/lib/CIR/CodeGen/CIRGenModule.cpp
parentaee4f2baccdbc018d0ac60eaa4e2a0a5f30bcdf5 (diff)
downloadllvm-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