LLVM 22.0.0git
|
Hold state information used when constructing the CFG of the output IR, traversing the VPBasicBlocks and generating corresponding IR BasicBlocks. More...
#include "Transforms/Vectorize/VPlanHelpers.h"
Public Member Functions | |
CFGState (DominatorTree *DT) | |
Public Attributes | |
VPBasicBlock * | PrevVPBB = nullptr |
The previous VPBasicBlock visited. Initially set to null. | |
BasicBlock * | PrevBB = nullptr |
The previous IR BasicBlock created or used. | |
BasicBlock * | ExitBB = nullptr |
The last IR BasicBlock in the output IR. | |
SmallDenseMap< const VPBasicBlock *, BasicBlock * > | VPBB2IRBB |
A mapping of each VPBasicBlock to the corresponding BasicBlock. | |
DomTreeUpdater | DTU |
Updater for the DominatorTree. | |
Hold state information used when constructing the CFG of the output IR, traversing the VPBasicBlocks and generating corresponding IR BasicBlocks.
Definition at line 297 of file VPlanHelpers.h.
|
inline |
Definition at line 316 of file VPlanHelpers.h.
DomTreeUpdater llvm::VPTransformState::CFGState::DTU |
Updater for the DominatorTree.
Definition at line 314 of file VPlanHelpers.h.
Referenced by llvm::VPlan::execute().
BasicBlock* llvm::VPTransformState::CFGState::ExitBB = nullptr |
The last IR BasicBlock in the output IR.
Set to the exit block of the vector loop.
Definition at line 307 of file VPlanHelpers.h.
Referenced by llvm::VPlan::execute().
BasicBlock* llvm::VPTransformState::CFGState::PrevBB = nullptr |
The previous IR BasicBlock created or used.
Initially set to the new header BasicBlock.
Definition at line 303 of file VPlanHelpers.h.
Referenced by llvm::VPFirstOrderRecurrencePHIRecipe::execute(), llvm::VPReductionPHIRecipe::execute(), llvm::VPBranchOnMaskRecipe::execute(), llvm::VPWidenCanonicalIVRecipe::execute(), llvm::VPlan::execute(), llvm::VPBasicBlock::execute(), llvm::VPIRBasicBlock::execute(), and llvm::LoopVectorizationPlanner::executePlan().
VPBasicBlock* llvm::VPTransformState::CFGState::PrevVPBB = nullptr |
The previous VPBasicBlock visited. Initially set to null.
Definition at line 299 of file VPlanHelpers.h.
Referenced by llvm::VPlan::execute(), and llvm::VPBasicBlock::executeRecipes().
SmallDenseMap<const VPBasicBlock *, BasicBlock *> llvm::VPTransformState::CFGState::VPBB2IRBB |
A mapping of each VPBasicBlock to the corresponding BasicBlock.
In case of replication, maps the BasicBlock of the last replica created.
Definition at line 311 of file VPlanHelpers.h.
Referenced by createCondBranch(), llvm::VPPhi::execute(), llvm::VPIRPhi::execute(), llvm::VPFirstOrderRecurrencePHIRecipe::execute(), llvm::VPReductionPHIRecipe::execute(), llvm::VPActiveLaneMaskPHIRecipe::execute(), llvm::VPlan::execute(), llvm::VPBasicBlock::execute(), llvm::VPIRBasicBlock::execute(), llvm::LoopVectorizationPlanner::executePlan(), llvm::InnerLoopVectorizer::fixNonInductionPHIs(), and llvm::InnerLoopVectorizer::fixVectorizedLoop().