|
LLVM 22.0.0git
|
Encapsulate some common data and functionality needed for different variations of data dependence graphs. More...
#include "llvm/Analysis/DDG.h"
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 ()=default |
| StringRef | getName () const |
| Return the label that is used to name this graph. | |
| NodeType & | getRoot () const |
| Return the root node of the graph. | |
| bool | getDependencies (const NodeType &Src, const NodeType &Dst, DependenceList &Deps) const |
Collect all the data dependency infos coming from any pair of memory accesses from Src to Dst, and store them into Deps. | |
| std::string | getDependenceString (const NodeType &Src, const NodeType &Dst) const |
| Return a string representing the type of dependence that the dependence analysis identified between the two given nodes. | |
Protected Attributes | |
| std::string | Name |
| const DependenceInfo | DI |
| NodeType * | Root = nullptr |
Encapsulate some common data and functionality needed for different variations of data dependence graphs.
| using llvm::DependenceGraphInfo< NodeType >::DependenceList = SmallVector<std::unique_ptr<Dependence>, 1> |
|
delete |
|
delete |
|
inline |
|
inline |
|
virtualdefault |
| std::string llvm::DependenceGraphInfo< NodeType >::getDependenceString | ( | const NodeType & | Src, |
| const NodeType & | Dst ) const |
Return a string representing the type of dependence that the dependence analysis identified between the two given nodes.
This function assumes that there is a memory dependence between the given two nodes.
Definition at line 468 of file DDG.h.
References D(), getDependenceString(), getDependencies(), and llvm::interleaveComma().
Referenced by getDependenceString().
| bool llvm::DependenceGraphInfo< NodeType >::getDependencies | ( | const NodeType & | Src, |
| const NodeType & | Dst, | ||
| DependenceList & | Deps ) const |
Collect all the data dependency infos coming from any pair of memory accesses from Src to Dst, and store them into Deps.
Return true if a dependence exists, and false otherwise.
Definition at line 445 of file DDG.h.
References assert(), DI, llvm::SmallVectorTemplateCommon< T, typename >::empty(), getDependencies(), I, and llvm::SmallVectorTemplateBase< T, bool >::push_back().
Referenced by getDependenceString(), and getDependencies().
|
inline |
|
inline |
Return the root node of the graph.
Definition at line 272 of file DDG.h.
Referenced by llvm::GraphTraits< const DataDependenceGraph * >::getEntryNode(), and llvm::GraphTraits< DataDependenceGraph * >::getEntryNode().
|
protected |
Definition at line 297 of file DDG.h.
Referenced by getDependencies().
|
protected |
|
protected |