Module counters

Source

Modules§

balanced_flow 🔒
A control-flow graph can be said to have “balanced flow” if the flow (execution count) of each node is equal to the sum of its in-edge flows, and also equal to the sum of its out-edge flows.
node_flow 🔒
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.
union_find 🔒

Structs§

BcbCountersData 🔒
Struct containing the results of prepare_bcb_counters_data.
CoverageCounters 🔒
Generates and stores coverage counter and coverage expression information associated with nodes in the coverage graph.

Functions§

make_node_flow_priority_list 🔒
Arranges the nodes in balanced_graph into a list, such that earlier nodes take priority in being given a counter expression instead of a physical counter.
prepare_bcb_counters_data 🔒
Analyzes the coverage graph to create intermediate data structures that will later be used (during codegen) to create physical counters or counter expressions for each BCB node that needs one.
transcribe_counters 🔒