Expand description
For each node in a control-flow graph, determines whether that node should have a physical counter, or a counter expression that is derived from the physical counters of other nodes.
Based on the algorithm given in “Optimal measurement points for program frequency counts” (Knuth & Stevenson, 1973).
Structs§
- Counter
Term 🔒 - Part of a node’s counter expression, which is a sum of counter terms.
- Node
Counters 🔒 - End result of allocating physical counters and counter expressions for the nodes of a graph.
- Node
Flow 🔒Data - Data representing a view of some underlying graph, in which each node’s successors have been merged into a single “supernode”.
- Spantree
Builder 🔒 - Spantree
Edge 🔒
Functions§
- make_
node_ 🔒counters - Uses the graph information in
node_flow_data
, together with a given permutation of all nodes in the graph, to create physical counters and counter expressions for each node in the underlying graph. - node_
flow_ 🔒data_ for_ balanced_ graph - Creates a “merged” view of an underlying graph.