LLVM
8.0.1
|
#include "llvm/Analysis/BlockFrequencyInfoImpl.h"
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) |
![]() | |
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. More... | |
Static Public Member Functions | |
static std::string | getGraphName (const BlockFrequencyInfoT *G) |
![]() | |
template<typename GraphType > | |
static std::string | getGraphName (const GraphType &) |
getGraphName - Return the label for the graph as a whole. More... | |
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. More... | |
static bool | renderGraphFromBottomUp () |
renderGraphFromBottomUp - If this function returns true, the graph is emitted bottom-up instead of top-down. More... | |
static bool | isNodeHidden (const void *) |
isNodeHidden - If the function returns true, the given node is not displayed in the graph. More... | |
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. More... | |
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. More... | |
template<typename EdgeIter > | |
static std::string | getEdgeSourceLabel (const void *, EdgeIter) |
getEdgeSourceLabel - If you want to label the edge source itself, implement this method. More... | |
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. More... | |
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. More... | |
static bool | hasEdgeDestLabels () |
hasEdgeDestLabels - If this function returns true, the graph is able to provide labels for edge destinations. More... | |
static unsigned | numEdgeDestLabels (const void *) |
numEdgeDestLabels - If hasEdgeDestLabels, this function returns the number of incoming edge labels the given node has. More... | |
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. More... | |
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. More... | |
Public Attributes | |
uint64_t | MaxFrequency = 0 |
Additional Inherited Members | |
![]() | |
bool | isSimple () |
Definition at line 1366 of file BlockFrequencyInfoImpl.h.
using llvm::BFIDOTGraphTraitsBase< BlockFrequencyInfoT, BranchProbabilityInfoT >::EdgeIter = typename GTraits::ChildIteratorType |
Definition at line 1369 of file BlockFrequencyInfoImpl.h.
using llvm::BFIDOTGraphTraitsBase< BlockFrequencyInfoT, BranchProbabilityInfoT >::GTraits = GraphTraits<BlockFrequencyInfoT *> |
Definition at line 1367 of file BlockFrequencyInfoImpl.h.
using llvm::BFIDOTGraphTraitsBase< BlockFrequencyInfoT, BranchProbabilityInfoT >::NodeIter = typename GTraits::nodes_iterator |
Definition at line 1370 of file BlockFrequencyInfoImpl.h.
using llvm::BFIDOTGraphTraitsBase< BlockFrequencyInfoT, BranchProbabilityInfoT >::NodeRef = typename GTraits::NodeRef |
Definition at line 1368 of file BlockFrequencyInfoImpl.h.
|
inlineexplicit |
Definition at line 1374 of file BlockFrequencyInfoImpl.h.
|
inline |
Definition at line 1442 of file BlockFrequencyInfoImpl.h.
References D, llvm::raw_ostream::flush(), llvm::format(), llvm::BranchProbability::getDenominator(), llvm::BranchProbability::getNumerator(), N, and llvm::Percent.
|
inlinestatic |
Definition at line 1377 of file BlockFrequencyInfoImpl.h.
|
inline |
Definition at line 1381 of file BlockFrequencyInfoImpl.h.
References E, llvm::raw_ostream::flush(), llvm::BranchProbability::getBranchProbability(), I, llvm::max(), and N.
|
inline |
Definition at line 1411 of file BlockFrequencyInfoImpl.h.
References llvm::GVDT_Count, llvm::GVDT_Fraction, llvm::GVDT_Integer, llvm::GVDT_None, and llvm_unreachable.
uint64_t llvm::BFIDOTGraphTraitsBase< BlockFrequencyInfoT, BranchProbabilityInfoT >::MaxFrequency = 0 |
Definition at line 1372 of file BlockFrequencyInfoImpl.h.