clang
10.0.0svn
|
Information used when generating a structured loop. More...
#include "/opt/doxygen-docs/src/llvm/tools/clang/lib/CodeGen/CGLoopInfo.h"
Public Member Functions | |
LoopInfo (llvm::BasicBlock *Header, const LoopAttributes &Attrs, const llvm::DebugLoc &StartLoc, const llvm::DebugLoc &EndLoc, LoopInfo *Parent) | |
Construct a new LoopInfo for the loop with entry Header. More... | |
llvm::MDNode * | getLoopID () const |
Get the loop id metadata for this loop. More... | |
llvm::BasicBlock * | getHeader () const |
Get the header block of this loop. More... | |
const LoopAttributes & | getAttributes () const |
Get the set of attributes active for this loop. More... | |
llvm::MDNode * | getAccessGroup () const |
Return this loop's access group or nullptr if it does not have one. More... | |
void | finish () |
Create the loop's metadata. More... | |
Information used when generating a structured loop.
Definition at line 80 of file CGLoopInfo.h.
LoopInfo::LoopInfo | ( | llvm::BasicBlock * | Header, |
const LoopAttributes & | Attrs, | ||
const llvm::DebugLoc & | StartLoc, | ||
const llvm::DebugLoc & | EndLoc, | ||
LoopInfo * | Parent | ||
) |
Construct a new LoopInfo for the loop with entry Header.
Definition at line 463 of file CGLoopInfo.cpp.
References clang::CodeGen::LoopAttributes::DistributeEnable, clang::CodeGen::LoopAttributes::InterleaveCount, clang::CodeGen::LoopAttributes::IsParallel, clang::CodeGen::LoopAttributes::PipelineDisabled, clang::CodeGen::LoopAttributes::PipelineInitiationInterval, clang::CodeGen::LoopAttributes::UnrollAndJamCount, clang::CodeGen::LoopAttributes::UnrollAndJamEnable, clang::CodeGen::LoopAttributes::UnrollCount, clang::CodeGen::LoopAttributes::UnrollEnable, clang::CodeGen::LoopAttributes::Unspecified, clang::CodeGen::LoopAttributes::VectorizeEnable, clang::CodeGen::LoopAttributes::VectorizePredicateEnable, and clang::CodeGen::LoopAttributes::VectorizeWidth.
Referenced by finish().
void LoopInfo::finish | ( | ) |
Create the loop's metadata.
Must be called after its nested loops have been processed.
Definition at line 490 of file CGLoopInfo.cpp.
References clang::CodeGen::LoopAttributes::Disable, clang::CodeGen::LoopAttributes::DistributeEnable, clang::CodeGen::LoopAttributes::Enable, clang::CodeGen::LoopAttributes::Full, clang::CodeGen::LoopAttributes::InterleaveCount, clang::CodeGen::LoopAttributes::IsParallel, LoopInfo(), clang::CodeGen::LoopAttributes::PipelineDisabled, clang::CodeGen::LoopAttributes::PipelineInitiationInterval, clang::CodeGen::LoopInfoStack::push(), State, clang::CodeGen::LoopAttributes::UnrollAndJamCount, clang::CodeGen::LoopAttributes::UnrollAndJamEnable, clang::CodeGen::LoopAttributes::UnrollCount, clang::CodeGen::LoopAttributes::UnrollEnable, clang::CodeGen::LoopAttributes::Unspecified, clang::CodeGen::LoopAttributes::VectorizeEnable, clang::CodeGen::LoopAttributes::VectorizePredicateEnable, and clang::CodeGen::LoopAttributes::VectorizeWidth.
|
inline |
Return this loop's access group or nullptr if it does not have one.
Definition at line 97 of file CGLoopInfo.h.
References Parent.
|
inline |
Get the set of attributes active for this loop.
Definition at line 94 of file CGLoopInfo.h.
|
inline |
Get the header block of this loop.
Definition at line 91 of file CGLoopInfo.h.
Referenced by clang::CodeGen::LoopInfoStack::InsertHelper().
|
inline |
Get the loop id metadata for this loop.
Definition at line 88 of file CGLoopInfo.h.
Referenced by clang::CodeGen::LoopInfoStack::InsertHelper().