LLVM 20.0.0git
|
#include "llvm/Analysis/DDGPrinter.h"
Public Member Functions | |
DOTGraphTraits (bool IsSimple=false) | |
std::string | getGraphName (const DataDependenceGraph *G) |
Generate a title for the graph in DOT format. | |
std::string | getNodeLabel (const DDGNode *Node, const DataDependenceGraph *Graph) |
Print a DDG node either in concise form (-ddg-dot-only) or verbose mode (-ddg-dot). | |
std::string | getEdgeAttributes (const DDGNode *Node, GraphTraits< const DDGNode * >::ChildIteratorType I, const DataDependenceGraph *G) |
Print attributes of an edge in the DDG graph. | |
bool | isNodeHidden (const DDGNode *Node, const DataDependenceGraph *G) |
Do not print nodes that are part of a pi-block separately. | |
Public Member Functions inherited from llvm::DefaultDOTGraphTraits | |
DefaultDOTGraphTraits (bool simple=false) | |
template<typename GraphType > | |
std::string | getNodeLabel (const void *, const GraphType &) |
getNodeLabel - Given a node and a pointer to the top level graph, return the label to print in the node. | |
Additional Inherited Members | |
Static Public Member Functions inherited from llvm::DefaultDOTGraphTraits | |
template<typename GraphType > | |
static std::string | getGraphName (const GraphType &) |
getGraphName - Return the label for the graph as a whole. | |
template<typename GraphType > | |
static std::string | getGraphProperties (const GraphType &) |
getGraphProperties - Return any custom properties that should be included in the top level graph structure for dot. | |
static bool | renderGraphFromBottomUp () |
renderGraphFromBottomUp - If this function returns true, the graph is emitted bottom-up instead of top-down. | |
template<typename GraphType > | |
static bool | isNodeHidden (const void *, const GraphType &) |
isNodeHidden - If the function returns true, the given node is not displayed in the graph. | |
static bool | renderNodesUsingHTML () |
template<typename GraphType > | |
static std::string | getNodeIdentifierLabel (const void *, const GraphType &) |
template<typename GraphType > | |
static std::string | getNodeDescription (const void *, const GraphType &) |
template<typename GraphType > | |
static std::string | getNodeAttributes (const void *, const GraphType &) |
If you want to specify custom node attributes, this is the place to do so. | |
template<typename EdgeIter , typename GraphType > | |
static std::string | getEdgeAttributes (const void *, EdgeIter, const GraphType &) |
If you want to override the dot attributes printed for a particular edge, override this method. | |
template<typename EdgeIter > | |
static std::string | getEdgeSourceLabel (const void *, EdgeIter) |
getEdgeSourceLabel - If you want to label the edge source itself, implement this method. | |
template<typename EdgeIter > | |
static bool | edgeTargetsEdgeSource (const void *, EdgeIter) |
edgeTargetsEdgeSource - This method returns true if this outgoing edge should actually target another edge source, not a node. | |
template<typename EdgeIter > | |
static EdgeIter | getEdgeTarget (const void *, EdgeIter I) |
getEdgeTarget - If edgeTargetsEdgeSource returns true, this method is called to determine which outgoing edge of Node is the target of this edge. | |
static bool | hasEdgeDestLabels () |
hasEdgeDestLabels - If this function returns true, the graph is able to provide labels for edge destinations. | |
static unsigned | numEdgeDestLabels (const void *) |
numEdgeDestLabels - If hasEdgeDestLabels, this function returns the number of incoming edge labels the given node has. | |
static std::string | getEdgeDestLabel (const void *, unsigned) |
getEdgeDestLabel - If hasEdgeDestLabels, this function returns the incoming edge label with the given index in the given node. | |
template<typename GraphType , typename GraphWriter > | |
static void | addCustomGraphFeatures (const GraphType &, GraphWriter &) |
addCustomGraphFeatures - If a graph is made up of more than just straight-forward nodes and edges, this is the place to put all of the custom stuff necessary. | |
Protected Member Functions inherited from llvm::DefaultDOTGraphTraits | |
bool | isSimple () |
Definition at line 39 of file DDGPrinter.h.
|
inline |
Definition at line 42 of file DDGPrinter.h.
std::string DDGDotGraphTraits::getEdgeAttributes | ( | const DDGNode * | Node, |
GraphTraits< const DDGNode * >::ChildIteratorType | I, | ||
const DataDependenceGraph * | G | ||
) |
Print attributes of an edge in the DDG graph.
If the edge is a MemoryDependence edge, then detailed dependence info available from DependenceAnalysis is displayed.
Definition at line 67 of file DDGPrinter.cpp.
References G, I, and llvm::DefaultDOTGraphTraits::isSimple().
|
inline |
Generate a title for the graph in DOT format.
Definition at line 45 of file DDGPrinter.h.
std::string DDGDotGraphTraits::getNodeLabel | ( | const DDGNode * | Node, |
const DataDependenceGraph * | Graph | ||
) |
Print a DDG node either in concise form (-ddg-dot-only) or verbose mode (-ddg-dot).
Definition at line 59 of file DDGPrinter.cpp.
References llvm::DefaultDOTGraphTraits::isSimple().
bool DDGDotGraphTraits::isNodeHidden | ( | const DDGNode * | Node, |
const DataDependenceGraph * | G | ||
) |
Do not print nodes that are part of a pi-block separately.
They will be printed when their containing pi-block is being printed.
Definition at line 77 of file DDGPrinter.cpp.
References assert(), llvm::DataDependenceGraph::getPiBlock(), and llvm::DefaultDOTGraphTraits::isSimple().