LLVM: llvm::GenericCycle< ContextT > Class Template Reference (original) (raw)
A possibly irreducible generalization of a Loop. More...
#include "[llvm/ADT/GenericCycleInfo.h](GenericCycleInfo%5F8h%5Fsource.html)"
| Public Types | |
|---|---|
| using | BlockT = typename ContextT::BlockT |
| using | FunctionT = typename ContextT::FunctionT |
| using | const_child_iterator_base |
| Iteration over child cycles. | |
| using | const_block_iterator = typename BlockSetVectorT::const_iterator |
| Iteration over blocks in the cycle (including entry blocks). | |
| using | const_entry_iterator |
| Iteration over entry blocks. | |
| using | const_reverse_entry_iterator |
| Friends | |
|---|---|
| template | |
| class | GenericCycleInfo |
| template | |
| class | GenericCycleInfoCompute |
template
class llvm::GenericCycle< ContextT >
A possibly irreducible generalization of a Loop.
Definition at line 44 of file GenericCycleInfo.h.
◆ BlockT
template
◆ const_block_iterator
template
Iteration over blocks in the cycle (including entry blocks).
Definition at line 201 of file GenericCycleInfo.h.
◆ const_child_iterator_base
template
◆ const_entry_iterator
template
Initial value:
typename SuperClass::const_iterator const_iterator
Iteration over entry blocks.
Definition at line 217 of file GenericCycleInfo.h.
◆ const_reverse_entry_iterator
template
Initial value:
std::reverse_iterator< const_iterator > const_reverse_iterator
Definition at line 225 of file GenericCycleInfo.h.
◆ FunctionT
template
template
◆ block_begin()
template
◆ block_end()
template
◆ blocks()
template
◆ child_begin()
template
◆ child_end()
template
◆ children()
template
◆ clearCache()
template
◆ contains() [1/2]
template
◆ contains() [2/2]
◆ entries()
template
◆ entry_begin()
template
◆ entry_end()
template
◆ entry_rbegin()
template
◆ entry_rend()
template
◆ getCyclePredecessor()
template
| auto llvm::GenericCycle< ContextT >::getCyclePredecessor | ( | ) | const |
|---|
◆ getCyclePreheader()
template
| auto llvm::GenericCycle< ContextT >::getCyclePreheader | ( | ) | const |
|---|
◆ getDepth()
template
◆ getEntries()
template
◆ getExitBlocks()
Return all of the successor blocks of this cycle.
These are the blocks outside of the current cycle which are branched to.
Definition at line 48 of file GenericCycleImpl.h.
References llvm::append_range(), llvm::SmallVectorTemplateCommon< T, typename >::begin(), llvm::Block, blocks, llvm::SmallVectorImpl< T >::clear(), contains(), llvm::SmallVectorTemplateCommon< T, typename >::end(), llvm::SmallVectorImpl< T >::resize(), llvm::SmallVectorTemplateCommon< T, typename >::size(), and llvm::successors().
Referenced by verifyCycle().
◆ getExitingBlocks()
◆ getHeader()
template
◆ getNumBlocks()
template
◆ getNumChildren()
template
◆ getNumEntries()
template
◆ getParentCycle() [1/2]
template
◆ getParentCycle() [2/2]
template
◆ isEntry()
template
◆ isReducible()
template
◆ print()
template
◆ printEntries()
template
◆ setSingleEntry()
template
◆ verifyCycle()
Verify that this is actually a well-formed cycle in the CFG.
Definition at line 130 of file GenericCycleImpl.h.
References llvm::any_of(), assert(), B(), llvm::SmallVectorTemplateCommon< T, typename >::begin(), blocks, llvm::children(), contains(), llvm::SmallPtrSetImpl< PtrType >::count(), llvm::dbgs(), llvm::depth_first(), llvm::depth_first_ext(), llvm::SmallVectorTemplateCommon< T, typename >::end(), entries(), getExitBlocks(), getHeader(), getNumBlocks(), getParent(), llvm::detail::DenseSetImpl< ValueT, MapTy, ValueInfoT >::insert(), llvm::df_iterator_default_set< NodeRef, SmallSize >::insert(), llvm::SmallPtrSetImpl< PtrType >::insert(), llvm::inverse_children(), llvm_unreachable, llvm::SmallPtrSetImplBase::size(), and verifyCycleNest().
◆ verifyCycleNest()
template
| void llvm::GenericCycle< ContextT >::verifyCycleNest | ( | ) | const |
|---|
◆ GenericCycleInfo
template
template
◆ GenericCycleInfoCompute
template
template
The documentation for this class was generated from the following files:
- include/llvm/ADT/GenericCycleInfo.h
- include/llvm/ADT/GenericCycleImpl.h