LLVM 20.0.0git
Classes | Namespaces | Functions
VPlanCFG.h File Reference
#include "VPlan.h"
#include "llvm/ADT/DepthFirstIterator.h"
#include "llvm/ADT/GraphTraits.h"
#include "llvm/ADT/SmallVector.h"

Go to the source code of this file.

Classes

class  llvm::VPAllSuccessorsIterator< BlockPtrTy >
 Iterator to traverse all successors of a VPBlockBase node. More...
 
class  llvm::VPBlockDeepTraversalWrapper< BlockTy >
 Helper for GraphTraits specialization that traverses through VPRegionBlocks. More...
 
struct  llvm::GraphTraits< VPBlockDeepTraversalWrapper< VPBlockBase * > >
 GraphTraits specialization to recursively traverse VPBlockBase nodes, including traversing through VPRegionBlocks. More...
 
struct  llvm::GraphTraits< VPBlockDeepTraversalWrapper< const VPBlockBase * > >
 
class  llvm::VPBlockShallowTraversalWrapper< BlockTy >
 Helper for GraphTraits specialization that does not traverses through VPRegionBlocks. More...
 
struct  llvm::GraphTraits< VPBlockShallowTraversalWrapper< VPBlockBase * > >
 
struct  llvm::GraphTraits< VPBlockShallowTraversalWrapper< const VPBlockBase * > >
 
struct  llvm::GraphTraits< VPBlockBase * >
 
struct  llvm::GraphTraits< const VPBlockBase * >
 
struct  llvm::GraphTraits< Inverse< VPBlockBase * > >
 Inverse graph traits are not implemented yet. More...
 
struct  llvm::GraphTraits< VPlan * >
 

Namespaces

namespace  llvm
 This is an optimization pass for GlobalISel generic memory operations.
 

Functions

iterator_range< df_iterator< VPBlockShallowTraversalWrapper< VPBlockBase * > > > llvm::vp_depth_first_shallow (VPBlockBase *G)
 Returns an iterator range to traverse the graph starting at G in depth-first order.
 
iterator_range< df_iterator< VPBlockShallowTraversalWrapper< const VPBlockBase * > > > llvm::vp_depth_first_shallow (const VPBlockBase *G)
 
iterator_range< df_iterator< VPBlockDeepTraversalWrapper< VPBlockBase * > > > llvm::vp_depth_first_deep (VPBlockBase *G)
 Returns an iterator range to traverse the graph starting at G in depth-first order while traversing through region blocks.
 
iterator_range< df_iterator< VPBlockDeepTraversalWrapper< const VPBlockBase * > > > llvm::vp_depth_first_deep (const VPBlockBase *G)