W1033
W1033 — The loop of a spawn region runs on one thread although each pass writes only memory of its own, so its passes could run at the same time. The warning points at what stops it: a call the compiler cannot show writes nothing, inline MLIR, a read of a row another pass writes, bounds not known when compiling, and the like.
No example yet
No fixture in the test suite asserts this code, so there is no program here that is known to trigger it. That is a gap in our coverage rather than a statement about the code.
Contributing one is a good first change — add a fixture under tests/ with a CHECK line naming W1033, and this page picks it up.
Related
A tour of VxThe chapter covering the rule this code enforces.
All diagnosticsEvery code the compiler can emit, grouped by stage.
W1031A proof obligation could not be discharged because no SMT solver was available, so the property is **unverified** rather than proved. Distinct from W1027, which means the solver ran and found a violation. Emitted only under
VX_ALLOW_UNVERIFIED; without it a missing solver is an error, because silence used to be indistinguishable from success (Vx#374).
W1034Code on the built-in Topology::GPU uses a tensor that lives in host memory (CPU_DRAM). The built-in GPU lists host memory as visible, so this compiles. A matmul sent to cuBLAS has its operands copied to the device, but a kernel the compiler generates is given the host pointer as it is, and what it does with it depends on the driver: it may reach host memory over the link, one access at a time, or fault. Transfer the tensor to Memory::GPU_HBM before the region. Reported once per tensor per region. A later version may make this an error.