pub fn check_datatypes(
p: &SpatialProgram,
target: &SpatialTarget,
) -> Result<(), SpatialReject>Expand description
★ A LOWERING COMPUTES ONLY IN DATATYPES ITS CHIP HAS. Every buffer a Generic stage reads or writes, every
index an indirect tile address waits on, and every tensor moved into or out of one of those buffers must
be a precision the target’s elementwise datapath computes in (or its fp32 accumulation width). Without
this an index lowered for an RDU rode Int64 — a type the PCU does not have — and evaluated exactly,
because nothing asked the chip. It gates what the COMPILER chooses — every program super::link::link returns; a
program built by hand is its author’s claim, checked by the passes as it stands.