<div dir="ltr"><div><div>First 3 are<br><br></div>Reviewed-by: Jason Ekstrand <<a href="mailto:jason@jlekstrand.net">jason@jlekstrand.net</a>><br><br></div>It'll take real work to review the others.<br></div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Feb 25, 2016 at 11:01 AM, Kenneth Graunke <span dir="ltr"><<a href="mailto:kenneth@whitecape.org" target="_blank">kenneth@whitecape.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">We've now hit literally every case other than geometry shaders (and<br>
compute shaders, but those are a no-op).  So, let's just move geometry<br>
shaders over too and be done with it.<br>
<br>
The only advantage to doing this at link time was to save the expense<br>
of running the pass on recompiles.  But we're already running a lot of<br>
passes, and the extra code complexity isn't worth it.<br>
<br>
Signed-off-by: Kenneth Graunke <<a href="mailto:kenneth@whitecape.org">kenneth@whitecape.org</a>><br>
---<br>
 src/mesa/drivers/dri/i965/brw_nir.c               | 8 --------<br>
 src/mesa/drivers/dri/i965/brw_vec4_gs_visitor.cpp | 1 +<br>
 2 files changed, 1 insertion(+), 8 deletions(-)<br>
<br>
diff --git a/src/mesa/drivers/dri/i965/brw_nir.c b/src/mesa/drivers/dri/i965/brw_nir.c<br>
index 61acf38..efa4c48 100644<br>
--- a/src/mesa/drivers/dri/i965/brw_nir.c<br>
+++ b/src/mesa/drivers/dri/i965/brw_nir.c<br>
@@ -598,7 +598,6 @@ brw_create_nir(struct brw_context *brw,<br>
                bool is_scalar)<br>
 {<br>
    struct gl_context *ctx = &brw->ctx;<br>
-   const struct brw_device_info *devinfo = brw->intelScreen->devinfo;<br>
    const nir_shader_compiler_options *options =<br>
       ctx->Const.ShaderCompilerOptions[stage].NirOptions;<br>
    bool progress;<br>
@@ -625,13 +624,6 @@ brw_create_nir(struct brw_context *brw,<br>
       OPT_V(nir_lower_atomics, shader_prog);<br>
    }<br>
<br>
-   if (nir->stage != MESA_SHADER_VERTEX &&<br>
-       nir->stage != MESA_SHADER_TESS_CTRL &&<br>
-       nir->stage != MESA_SHADER_TESS_EVAL &&<br>
-       nir->stage != MESA_SHADER_FRAGMENT) {<br>
-      nir = brw_nir_lower_io(nir, devinfo, is_scalar, false, NULL);<br>
-   }<br>
-<br>
    return nir;<br>
 }<br>
<br>
diff --git a/src/mesa/drivers/dri/i965/brw_vec4_gs_visitor.cpp b/src/mesa/drivers/dri/i965/brw_vec4_gs_visitor.cpp<br>
index 183fe35..40966c6 100644<br>
--- a/src/mesa/drivers/dri/i965/brw_vec4_gs_visitor.cpp<br>
+++ b/src/mesa/drivers/dri/i965/brw_vec4_gs_visitor.cpp<br>
@@ -598,6 +598,7 @@ brw_compile_gs(const struct brw_compiler *compiler, void *log_data,<br>
    nir_shader *shader = nir_shader_clone(mem_ctx, src_shader);<br>
    shader = brw_nir_apply_sampler_key(shader, compiler->devinfo, &key->tex,<br>
                                       is_scalar);<br>
+   shader = brw_nir_lower_io(shader, compiler->devinfo, is_scalar, false, NULL);<br>
    shader = brw_postprocess_nir(shader, compiler->devinfo, is_scalar);<br>
<br>
    prog_data->include_primitive_id =<br>
<span class="HOEnZb"><font color="#888888">--<br>
2.7.1<br>
<br>
_______________________________________________<br>
mesa-dev mailing list<br>
<a href="mailto:mesa-dev@lists.freedesktop.org">mesa-dev@lists.freedesktop.org</a><br>
<a href="https://lists.freedesktop.org/mailman/listinfo/mesa-dev" rel="noreferrer" target="_blank">https://lists.freedesktop.org/mailman/listinfo/mesa-dev</a><br>
</font></span></blockquote></div><br></div>