if (tcp) {
nir = tcp->program.nir;
} else {
- /* Create a dummy nir_shader. We won't actually use NIR code to
- * generate assembly (it's easier to generate assembly directly),
- * but the whole compiler assumes one of these exists.
- */
const nir_shader_compiler_options *options =
ctx->Const.ShaderCompilerOptions[MESA_SHADER_TESS_CTRL].NirOptions;
nir = create_passthrough_tcs(mem_ctx, compiler, options, key);
brw_nir_setup_glsl_uniforms(mem_ctx, nir, &tcp->program,
&prog_data.base.base,
compiler->scalar_stage[MESA_SHADER_TESS_CTRL]);
- brw_nir_analyze_ubo_ranges(compiler, tcp->program.nir,
+ brw_nir_analyze_ubo_ranges(compiler, tcp->program.nir, NULL,
prog_data.base.base.ubo_ranges);
} else {
/* Upload the Patch URB Header as the first two uniforms.
brw_tcs_populate_key(brw, &key);
- if (brw_search_cache(&brw->cache, BRW_CACHE_TCS_PROG,
- &key, sizeof(key),
- &stage_state->prog_offset,
- &brw->tcs.base.prog_data))
+ if (brw_search_cache(&brw->cache, BRW_CACHE_TCS_PROG, &key, sizeof(key),
+ &stage_state->prog_offset, &brw->tcs.base.prog_data,
+ true))
return;
if (brw_disk_cache_upload_program(brw, MESA_SHADER_TESS_CTRL))