LLVM  10.0.0svn
Public Types | Public Member Functions | Protected Attributes | List of all members
llvm::DependenceGraphInfo< NodeType > Class Template Reference

Encapsulate some common data and functionality needed for different variations of data dependence graphs. More...

#include "llvm/Analysis/DDG.h"

Inheritance diagram for llvm::DependenceGraphInfo< NodeType >:
Inheritance graph
[legend]
Collaboration diagram for llvm::DependenceGraphInfo< NodeType >:
Collaboration graph
[legend]

Public Types

using DependenceList = SmallVector< std::unique_ptr< Dependence >, 1 >
 

Public Member Functions

 DependenceGraphInfo ()=delete
 
 DependenceGraphInfo (const DependenceGraphInfo &G)=delete
 
 DependenceGraphInfo (const std::string &N, const DependenceInfo &DepInfo)
 
 DependenceGraphInfo (DependenceGraphInfo &&G)
 
virtual ~DependenceGraphInfo ()
 
const StringRef getName () const
 Return the label that is used to name this graph. More...
 
NodeType & getRoot () const
 Return the root node of the graph. More...
 

Protected Attributes

std::string Name
 
const DependenceInfo DI
 
NodeType * Root = nullptr
 

Detailed Description

template<typename NodeType>
class llvm::DependenceGraphInfo< NodeType >

Encapsulate some common data and functionality needed for different variations of data dependence graphs.

Definition at line 203 of file DDG.h.

Member Typedef Documentation

◆ DependenceList

template<typename NodeType >
using llvm::DependenceGraphInfo< NodeType >::DependenceList = SmallVector<std::unique_ptr<Dependence>, 1>

Definition at line 205 of file DDG.h.

Constructor & Destructor Documentation

◆ DependenceGraphInfo() [1/4]

template<typename NodeType >
llvm::DependenceGraphInfo< NodeType >::DependenceGraphInfo ( )
delete

◆ DependenceGraphInfo() [2/4]

template<typename NodeType >
llvm::DependenceGraphInfo< NodeType >::DependenceGraphInfo ( const DependenceGraphInfo< NodeType > &  G)
delete

◆ DependenceGraphInfo() [3/4]

template<typename NodeType >
llvm::DependenceGraphInfo< NodeType >::DependenceGraphInfo ( const std::string &  N,
const DependenceInfo DepInfo 
)
inline

Definition at line 209 of file DDG.h.

◆ DependenceGraphInfo() [4/4]

template<typename NodeType >
llvm::DependenceGraphInfo< NodeType >::DependenceGraphInfo ( DependenceGraphInfo< NodeType > &&  G)
inline

Definition at line 211 of file DDG.h.

◆ ~DependenceGraphInfo()

template<typename NodeType >
virtual llvm::DependenceGraphInfo< NodeType >::~DependenceGraphInfo ( )
inlinevirtual

Definition at line 213 of file DDG.h.

Member Function Documentation

◆ getName()

template<typename NodeType >
const StringRef llvm::DependenceGraphInfo< NodeType >::getName ( ) const
inline

Return the label that is used to name this graph.

Definition at line 216 of file DDG.h.

References Name.

◆ getRoot()

template<typename NodeType >
NodeType& llvm::DependenceGraphInfo< NodeType >::getRoot ( ) const
inline

Return the root node of the graph.

Definition at line 219 of file DDG.h.

References assert(), and llvm::DDGNode::Root.

Referenced by llvm::GraphTraits< DataDependenceGraph * >::getEntryNode(), and llvm::GraphTraits< const DataDependenceGraph * >::getEntryNode().

Member Data Documentation

◆ DI

template<typename NodeType >
const DependenceInfo llvm::DependenceGraphInfo< NodeType >::DI
protected

Definition at line 232 of file DDG.h.

Referenced by llvm::DDGAnalysis::run().

◆ Name

template<typename NodeType >
std::string llvm::DependenceGraphInfo< NodeType >::Name
protected

Definition at line 227 of file DDG.h.

◆ Root

template<typename NodeType >
NodeType* llvm::DependenceGraphInfo< NodeType >::Root = nullptr
protected

Definition at line 236 of file DDG.h.

Referenced by llvm::DataDependenceGraph::addNode().


The documentation for this class was generated from the following file: