X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=src%2Fmesa%2Fdrivers%2Fdri%2Fi965%2Fbrw_link.cpp;h=2a844575c3d2907e97bbc9a25600d9c7f1fbc6d5;hb=432ed13decc3b246deb6dc98e638819deec1b5d3;hp=c726551513a3927f51866b3ebae77c93217d4b0a;hpb=664e4a610dc8c0f2adc50de645a07cf4e2b622fd;p=mesa.git diff --git a/src/mesa/drivers/dri/i965/brw_link.cpp b/src/mesa/drivers/dri/i965/brw_link.cpp index c726551513a..2a844575c3d 100644 --- a/src/mesa/drivers/dri/i965/brw_link.cpp +++ b/src/mesa/drivers/dri/i965/brw_link.cpp @@ -269,15 +269,11 @@ brw_link_shader(struct gl_context *ctx, struct gl_shader_program *shProg) /* SPIR-V programs use a NIR linker */ if (shProg->data->spirv) { - if (!gl_nir_link_uniform_blocks(ctx, shProg)) { + static const gl_nir_linker_options opts = { + .fill_parameters = false, + }; + if (!gl_nir_link_spirv(ctx, shProg, &opts)) return GL_FALSE; - } - - if (!gl_nir_link_uniforms(ctx, shProg, /* fill_parameters */ false)) - return GL_FALSE; - - gl_nir_link_assign_atomic_counter_resources(ctx, shProg); - gl_nir_link_assign_xfb_resources(ctx, shProg); } for (stage = 0; stage < ARRAY_SIZE(shProg->_LinkedShaders); stage++) { @@ -388,9 +384,9 @@ brw_link_shader(struct gl_context *ctx, struct gl_shader_program *shProg) /* SPIR-V programs build its resource list from linked NIR shaders. */ if (!shProg->data->spirv) - build_program_resource_list(ctx, shProg); + build_program_resource_list(ctx, shProg, false); else - nir_build_program_resource_list(ctx, shProg); + nir_build_program_resource_list(ctx, shProg, true); for (stage = 0; stage < ARRAY_SIZE(shProg->_LinkedShaders); stage++) { struct gl_linked_shader *shader = shProg->_LinkedShaders[stage];