pub fn unsupported_reason(program: &CompiledProgram) -> Option<&'static str>Expand description
Returns Some(reason) if program uses an op that cannot run on a single
Tensix baby core in this phase — concurrency (a Tensix mesh is SPMD, not a
shared-memory thread pool with a scheduler; the concurrency runtime needs
ucontext, which a baby core has no libc for). Everything else — including
single-replica CRDT counters (in-memory maps in the C body) and the OFFLINE
networking loopback (TT_NET_OPS, the newlib-clean C_NET_RUNTIME) —
lowers through the proven C compute body. Sleep is virtual-time (a
scheduler primitive) and is refused with the concurrency set.