diff --git a/.pick_status.json b/.pick_status.json index deec463d46f..baa2c3f0468 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -3084,7 +3084,7 @@ "description": "rusticl/program: fix CL_PROGRAM_BINARIES for devs with no builds", "nominated": true, "nomination_type": 1, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": "e028baa1772eeaa55393b1d01d5e5fb217474f95", "notes": null diff --git a/src/gallium/frontends/rusticl/core/program.rs b/src/gallium/frontends/rusticl/core/program.rs index eeb9c113538..68abe86aa4c 100644 --- a/src/gallium/frontends/rusticl/core/program.rs +++ b/src/gallium/frontends/rusticl/core/program.rs @@ -505,7 +505,12 @@ impl Program { for (i, d) in self.devs.iter().enumerate() { let mut ptr = ptrs[i]; let info = lock.dev_build(d); - let spirv = info.spirv.as_ref().unwrap().to_bin(); + + // no spirv means nothing to write + let Some(spirv) = info.spirv.as_ref() else { + continue; + }; + let spirv = spirv.to_bin(); unsafe { // 1. binary format version