Thanks to visit codestin.com
Credit goes to llvm.org

LLVM 22.0.0git
llvm::BFIDOTGraphTraitsBase< BlockFrequencyInfoT, BranchProbabilityInfoT > Struct Template Reference

#include "llvm/Analysis/BlockFrequencyInfoImpl.h"

Inheritance diagram for llvm::BFIDOTGraphTraitsBase< BlockFrequencyInfoT, BranchProbabilityInfoT >:
[legend]

Public Types

using GTraits = GraphTraits<BlockFrequencyInfoT *>
using NodeRef = typename GTraits::NodeRef
using EdgeIter = typename GTraits::ChildIteratorType
using NodeIter = typename GTraits::nodes_iterator

Public Member Functions

 BFIDOTGraphTraitsBase (bool isSimple=false)
std::string getNodeAttributes (NodeRef Node, const BlockFrequencyInfoT *Graph, unsigned HotPercentThreshold=0)
std::string getNodeLabel (NodeRef Node, const BlockFrequencyInfoT *Graph, GVDAGType GType, int layout_order=-1)
std::string getEdgeAttributes (NodeRef Node, EdgeIter EI, const BlockFrequencyInfoT *BFI, const BranchProbabilityInfoT *BPI, unsigned HotPercentThreshold=0)
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.

Static Public Member Functions

static StringRef getGraphName (const BlockFrequencyInfoT *G)
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.

Public Attributes

uint64_t MaxFrequency = 0

Additional Inherited Members

Protected Member Functions inherited from llvm::DefaultDOTGraphTraits
bool isSimple ()

Detailed Description

template<class BlockFrequencyInfoT, class BranchProbabilityInfoT>
struct llvm::BFIDOTGraphTraitsBase< BlockFrequencyInfoT, BranchProbabilityInfoT >

Definition at line 1775 of file BlockFrequencyInfoImpl.h.

Member Typedef Documentation

◆ EdgeIter

template<class BlockFrequencyInfoT, class BranchProbabilityInfoT>
using llvm::BFIDOTGraphTraitsBase< BlockFrequencyInfoT, BranchProbabilityInfoT >::EdgeIter = typename GTraits::ChildIteratorType

Definition at line 1778 of file BlockFrequencyInfoImpl.h.

◆ GTraits

template<class BlockFrequencyInfoT, class BranchProbabilityInfoT>
using llvm::BFIDOTGraphTraitsBase< BlockFrequencyInfoT, BranchProbabilityInfoT >::GTraits = GraphTraits<BlockFrequencyInfoT *>

Definition at line 1776 of file BlockFrequencyInfoImpl.h.

◆ NodeIter

template<class BlockFrequencyInfoT, class BranchProbabilityInfoT>
using llvm::BFIDOTGraphTraitsBase< BlockFrequencyInfoT, BranchProbabilityInfoT >::NodeIter = typename GTraits::nodes_iterator

Definition at line 1779 of file BlockFrequencyInfoImpl.h.

◆ NodeRef

template<class BlockFrequencyInfoT, class BranchProbabilityInfoT>
using llvm::BFIDOTGraphTraitsBase< BlockFrequencyInfoT, BranchProbabilityInfoT >::NodeRef = typename GTraits::NodeRef

Definition at line 1777 of file BlockFrequencyInfoImpl.h.

Constructor & Destructor Documentation

◆ BFIDOTGraphTraitsBase()

template<class BlockFrequencyInfoT, class BranchProbabilityInfoT>
llvm::BFIDOTGraphTraitsBase< BlockFrequencyInfoT, BranchProbabilityInfoT >::BFIDOTGraphTraitsBase ( bool isSimple = false)
inlineexplicit

Definition at line 1783 of file BlockFrequencyInfoImpl.h.

Member Function Documentation

◆ getEdgeAttributes()

template<class BlockFrequencyInfoT, class BranchProbabilityInfoT>
std::string llvm::BFIDOTGraphTraitsBase< BlockFrequencyInfoT, BranchProbabilityInfoT >::getEdgeAttributes ( NodeRef Node,
EdgeIter EI,
const BlockFrequencyInfoT * BFI,
const BranchProbabilityInfoT * BPI,
unsigned HotPercentThreshold = 0 )
inline

Definition at line 1851 of file BlockFrequencyInfoImpl.h.

◆ getGraphName()

template<class BlockFrequencyInfoT, class BranchProbabilityInfoT>
StringRef llvm::BFIDOTGraphTraitsBase< BlockFrequencyInfoT, BranchProbabilityInfoT >::getGraphName ( const BlockFrequencyInfoT * G)
inlinestatic

Definition at line 1786 of file BlockFrequencyInfoImpl.h.

◆ getNodeAttributes()

template<class BlockFrequencyInfoT, class BranchProbabilityInfoT>
std::string llvm::BFIDOTGraphTraitsBase< BlockFrequencyInfoT, BranchProbabilityInfoT >::getNodeAttributes ( NodeRef Node,
const BlockFrequencyInfoT * Graph,
unsigned HotPercentThreshold = 0 )
inline

Definition at line 1790 of file BlockFrequencyInfoImpl.h.

◆ getNodeLabel()

template<class BlockFrequencyInfoT, class BranchProbabilityInfoT>
std::string llvm::BFIDOTGraphTraitsBase< BlockFrequencyInfoT, BranchProbabilityInfoT >::getNodeLabel ( NodeRef Node,
const BlockFrequencyInfoT * Graph,
GVDAGType GType,
int layout_order = -1 )
inline

Definition at line 1820 of file BlockFrequencyInfoImpl.h.

Member Data Documentation

◆ MaxFrequency

template<class BlockFrequencyInfoT, class BranchProbabilityInfoT>
uint64_t llvm::BFIDOTGraphTraitsBase< BlockFrequencyInfoT, BranchProbabilityInfoT >::MaxFrequency = 0

Definition at line 1781 of file BlockFrequencyInfoImpl.h.


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