LLVM 22.0.0git
Public Member Functions | Public Attributes | List of all members
llvm::VPTransformState::CFGState Struct Reference

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

VPBasicBlockPrevVPBB = nullptr
 The previous VPBasicBlock visited. Initially set to null.
 
BasicBlockPrevBB = nullptr
 The previous IR BasicBlock created or used.
 
BasicBlockExitBB = 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.
 

Detailed Description

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.

Constructor & Destructor Documentation

◆ CFGState()

llvm::VPTransformState::CFGState::CFGState ( DominatorTree DT)
inline

Definition at line 316 of file VPlanHelpers.h.

Member Data Documentation

◆ DTU

DomTreeUpdater llvm::VPTransformState::CFGState::DTU

Updater for the DominatorTree.

Definition at line 314 of file VPlanHelpers.h.

Referenced by llvm::VPlan::execute().

◆ ExitBB

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().

◆ PrevBB

BasicBlock* llvm::VPTransformState::CFGState::PrevBB = nullptr

◆ PrevVPBB

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().

◆ VPBB2IRBB

SmallDenseMap<const VPBasicBlock *, BasicBlock *> llvm::VPTransformState::CFGState::VPBB2IRBB

The documentation for this struct was generated from the following file: