LLVM 20.0.0git
|
Helper that contains information about regions we need to outline during finalization. More...
#include "llvm/Frontend/OpenMP/OMPIRBuilder.h"
Public Types | |
using | PostOutlineCBTy = std::function< void(Function &)> |
Public Member Functions | |
void | collectBlocks (SmallPtrSetImpl< BasicBlock * > &BlockSet, SmallVectorImpl< BasicBlock * > &BlockVector) |
Collect all blocks in between EntryBB and ExitBB in both the given vector and set. | |
Function * | getFunction () const |
Return the function that contains the region to be outlined. | |
Public Attributes | |
PostOutlineCBTy | PostOutlineCB |
BasicBlock * | EntryBB |
BasicBlock * | ExitBB |
BasicBlock * | OuterAllocaBB |
SmallVector< Value *, 2 > | ExcludeArgsFromAggregate |
Helper that contains information about regions we need to outline during finalization.
Definition at line 2060 of file OMPIRBuilder.h.
using llvm::OpenMPIRBuilder::OutlineInfo::PostOutlineCBTy = std::function<void(Function &)> |
Definition at line 2061 of file OMPIRBuilder.h.
void OpenMPIRBuilder::OutlineInfo::collectBlocks | ( | SmallPtrSetImpl< BasicBlock * > & | BlockSet, |
SmallVectorImpl< BasicBlock * > & | BlockVector | ||
) |
Collect all blocks in between EntryBB and ExitBB in both the given vector and set.
Definition at line 8405 of file OMPIRBuilder.cpp.
References llvm::SmallVectorBase< Size_T >::empty(), EntryBB, ExitBB, llvm::SmallPtrSetImpl< PtrType >::insert(), llvm::SmallVectorImpl< T >::pop_back_val(), llvm::SmallVectorTemplateBase< T, bool >::push_back(), and llvm::successors().
Referenced by llvm::OpenMPIRBuilder::createParallel(), and workshareLoopTargetCallback().
|
inline |
Return the function that contains the region to be outlined.
Definition at line 2072 of file OMPIRBuilder.h.
References EntryBB, and llvm::BasicBlock::getParent().
BasicBlock* llvm::OpenMPIRBuilder::OutlineInfo::EntryBB |
Definition at line 2063 of file OMPIRBuilder.h.
Referenced by collectBlocks(), llvm::OpenMPIRBuilder::createParallel(), llvm::OpenMPIRBuilder::createTask(), llvm::OpenMPIRBuilder::createTeams(), llvm::OpenMPIRBuilder::emitTargetTask(), getFunction(), and workshareLoopTargetCallback().
SmallVector<Value *, 2> llvm::OpenMPIRBuilder::OutlineInfo::ExcludeArgsFromAggregate |
Definition at line 2064 of file OMPIRBuilder.h.
Referenced by llvm::OpenMPIRBuilder::createParallel(), llvm::OpenMPIRBuilder::createTask(), llvm::OpenMPIRBuilder::createTeams(), and llvm::OpenMPIRBuilder::emitTargetTask().
BasicBlock * llvm::OpenMPIRBuilder::OutlineInfo::ExitBB |
Definition at line 2063 of file OMPIRBuilder.h.
Referenced by collectBlocks(), llvm::OpenMPIRBuilder::createParallel(), llvm::OpenMPIRBuilder::createTask(), llvm::OpenMPIRBuilder::createTeams(), llvm::OpenMPIRBuilder::emitTargetTask(), and workshareLoopTargetCallback().
BasicBlock * llvm::OpenMPIRBuilder::OutlineInfo::OuterAllocaBB |
Definition at line 2063 of file OMPIRBuilder.h.
Referenced by llvm::OpenMPIRBuilder::createParallel(), llvm::OpenMPIRBuilder::createTask(), llvm::OpenMPIRBuilder::createTeams(), and llvm::OpenMPIRBuilder::emitTargetTask().
PostOutlineCBTy llvm::OpenMPIRBuilder::OutlineInfo::PostOutlineCB |
Definition at line 2062 of file OMPIRBuilder.h.
Referenced by llvm::OpenMPIRBuilder::createParallel(), llvm::OpenMPIRBuilder::createTask(), llvm::OpenMPIRBuilder::createTeams(), and llvm::OpenMPIRBuilder::emitTargetTask().