struct VPTransformState::CFGState
Declaration
struct VPTransformState::CFGState { /* full declaration omitted */ };
Description
Hold state information used when constructing the CFG of the output IR, traversing the VPBasicBlocks and generating corresponding IR BasicBlocks.
Declared at: llvm/lib/Transforms/Vectorize/VPlan.h:325
Member Variables
- public llvm::VPBasicBlock* PrevVPBB = nullptr
- The previous VPBasicBlock visited. Initially set to null.
- public llvm::BasicBlock* PrevBB = nullptr
- The previous IR BasicBlock created or used. Initially set to the new header BasicBlock.
- public llvm::BasicBlock* ExitBB = nullptr
- The last IR BasicBlock in the output IR. Set to the exit block of the vector loop.
- public SmallDenseMap<llvm::VPBasicBlock*, llvm::BasicBlock*> VPBB2IRBB
- A mapping of each VPBasicBlock to the corresponding BasicBlock. In case of replication, maps the BasicBlock of the last replica created.
Method Overview
- public CFGState()
- public llvm::BasicBlock * getPreheaderBBFor(llvm::VPRecipeBase * R)
Methods
¶CFGState()
CFGState()
Declared at: llvm/lib/Transforms/Vectorize/VPlan.h:341
¶llvm::BasicBlock* getPreheaderBBFor(
llvm::VPRecipeBase* R)
llvm::BasicBlock* getPreheaderBBFor(
llvm::VPRecipeBase* R)
Description
Returns the BasicBlock* mapped to the pre-header of the loop region containing \p R.
Declared at: llvm/lib/Transforms/Vectorize/VPlan.h:345