Skip to main content

Module exploded

Module exploded 

Source
Expand description

Exploded-supergraph (IFDS encoding) substrate consumer.

Wires the primitive-owned exploded-supergraph reference builder (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.

Structs§

IfdsCsrGpuScratch
Caller-owned GPU dispatch scratch for exploded IFDS CSR construction.

Functions§

build_ifds_csr_via
GPU dispatch wrapper around [reference_build_ifds_csr].
build_ifds_csr_via_into
GPU dispatch wrapper around [reference_build_ifds_csr] into caller-owned CSR buffers.
build_ifds_csr_via_with_scratch_into
GPU dispatch wrapper around [reference_build_ifds_csr] into caller-owned dispatch scratch and CSR buffers.
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 reference_build_ifds_csr.
reference_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.
reference_canonicalize_csr_within_rows
Sort each row’s column indices in ascending order. Pure CPU helper used by parity tests to compare CSRs whose row contents may have been emitted in different orders by parallel kernels.
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.
try_reference_build_ifds_csr
Fallible exploded-supergraph CPU reference wrapper.