Reviewed-by: Timothy Arceri <[email protected]>

On 12/05/18 19:40, Alejandro Piñeiro wrote:
From: Eduardo Lima Mitev <[email protected]>

v2: tweak after nir_linker.h being renamed to gl_nir_linker.h
---
  src/mesa/drivers/dri/i965/brw_link.cpp | 8 +++++++-
  1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/src/mesa/drivers/dri/i965/brw_link.cpp 
b/src/mesa/drivers/dri/i965/brw_link.cpp
index 39fa94c0f8d..996465f305a 100644
--- a/src/mesa/drivers/dri/i965/brw_link.cpp
+++ b/src/mesa/drivers/dri/i965/brw_link.cpp
@@ -25,11 +25,13 @@
  #include "compiler/brw_nir.h"
  #include "brw_program.h"
  #include "compiler/glsl/gl_nir.h"
+#include "compiler/glsl/gl_nir_linker.h"
  #include "compiler/glsl/ir.h"
  #include "compiler/glsl/ir_optimization.h"
  #include "compiler/glsl/program.h"
  #include "compiler/nir/nir_serialize.h"
  #include "program/program.h"
+#include "main/glspirv.h"
  #include "main/mtypes.h"
  #include "main/shaderapi.h"
  #include "main/shaderobj.h"
@@ -364,7 +366,11 @@ brw_link_shader(struct gl_context *ctx, struct 
gl_shader_program *shProg)
     if (brw->precompile && !brw_shader_precompile(ctx, shProg))
        return false;
- build_program_resource_list(ctx, shProg);
+   /* SPIR-V programs build its resource list from linked NIR shaders. */
+   if (!shProg->data->spirv)
+      build_program_resource_list(ctx, shProg);
+   else
+      nir_build_program_resource_list(ctx, shProg);
for (stage = 0; stage < ARRAY_SIZE(shProg->_LinkedShaders); stage++) {
        struct gl_linked_shader *shader = shProg->_LinkedShaders[stage];

_______________________________________________
mesa-dev mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to