[Mesa-dev] [PATCH 3/3] i965: Use brw_nir_cubemap_normalize for NIR shaders

Jason Ekstrand jason at jlekstrand.net
Thu Apr 2 20:56:17 PDT 2015


---
 src/mesa/drivers/dri/i965/brw_fs_nir.cpp | 3 +++
 src/mesa/drivers/dri/i965/brw_shader.cpp | 3 ++-
 2 files changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/mesa/drivers/dri/i965/brw_fs_nir.cpp b/src/mesa/drivers/dri/i965/brw_fs_nir.cpp
index 0f1659d..46f8826 100644
--- a/src/mesa/drivers/dri/i965/brw_fs_nir.cpp
+++ b/src/mesa/drivers/dri/i965/brw_fs_nir.cpp
@@ -104,6 +104,9 @@ fs_visitor::emit_nir_code()
    nir_lower_tex_projector(nir);
    nir_validate_shader(nir);
 
+   brw_nir_cubemap_normalize(nir);
+   nir_validate_shader(nir);
+
    nir_split_var_copies(nir);
    nir_validate_shader(nir);
 
diff --git a/src/mesa/drivers/dri/i965/brw_shader.cpp b/src/mesa/drivers/dri/i965/brw_shader.cpp
index 0dda9bb..4ef3882 100644
--- a/src/mesa/drivers/dri/i965/brw_shader.cpp
+++ b/src/mesa/drivers/dri/i965/brw_shader.cpp
@@ -173,7 +173,8 @@ brw_link_shader(struct gl_context *ctx, struct gl_shader_program *shProg)
       brw_lower_texture_gradients(brw, shader->base.ir);
       do_vec_index_to_cond_assign(shader->base.ir);
       lower_vector_insert(shader->base.ir, true);
-      brw_do_cubemap_normalize(shader->base.ir);
+      if (options->NirOptions == NULL)
+         brw_do_cubemap_normalize(shader->base.ir);
       lower_offset_arrays(shader->base.ir);
       brw_do_lower_unnormalized_offset(shader->base.ir);
       lower_noise(shader->base.ir);
-- 
2.3.4



More information about the mesa-dev mailing list