Skip to main content

check_datatypes

Function check_datatypes 

Source
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.