diff --git a/src/gallium/drivers/zink/zink_program.c b/src/gallium/drivers/zink/zink_program.c index 2c37dc62c90..c7f6b97c30d 100644 --- a/src/gallium/drivers/zink/zink_program.c +++ b/src/gallium/drivers/zink/zink_program.c @@ -1374,8 +1374,11 @@ create_compute_program(struct zink_context *ctx, nir_shader *nir) _mesa_hash_table_init(&comp->pipelines, comp, NULL, comp->use_local_size ? equals_compute_pipeline_state_local_size : equals_compute_pipeline_state); - util_queue_add_job(&screen->cache_get_thread, comp, &comp->base.cache_fence, - precompile_compute_job, NULL, 0); + if (zink_debug & ZINK_DEBUG_NOBGC) + precompile_compute_job(comp, screen, 0); + else + util_queue_add_job(&screen->cache_get_thread, comp, &comp->base.cache_fence, + precompile_compute_job, NULL, 0); return comp; }