Skip to main content

Module exploded

Module exploded 

Source
Expand description

Exploded-supergraph (IFDS encoding) substrate consumer.

Wires vyre_primitives::graph::exploded::build_cpu_reference (zero prior consumers) into the substrate so the optimizer can build interprocedural-dataflow graphs directly. The IFDS encoding packs (proc_id, block_id, fact_id) into a u32 node id, then composes intra-/inter-procedural edges + GEN/KILL flow into a CSR ready for reachability/closure analysis.

Functions§

build_ifds_csr
Build an exploded supergraph and return its CSR (row_ptr, col_idx). Inputs match the underlying primitive’s contract; the wrapper bumps the dataflow-fixpoint observability counter so dispatch-time IFDS graph builds are visible in dashboards.
ifds_node_count
Total node count of the exploded supergraph for the given dimensions. Equivalent to row_ptr.len() - 1 after the CSR is built; useful when the caller needs to size frontier bitsets before invoking build_ifds_csr.
round_trip_dense
Helper: round-trip a dense index through the packed encoding and back. Used by callers that emit findings keyed on the packed id but operate on dense indices internally.