[Mesa-dev] [PATCH 03/10] i965: Always do NIR IO lowering at specialization time.

Jason Ekstrand jason at jlekstrand.net
Thu Feb 25 19:23:17 UTC 2016


First 3 are

Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>

It'll take real work to review the others.

On Thu, Feb 25, 2016 at 11:01 AM, Kenneth Graunke <kenneth at whitecape.org>
wrote:

> We've now hit literally every case other than geometry shaders (and
> compute shaders, but those are a no-op).  So, let's just move geometry
> shaders over too and be done with it.
>
> The only advantage to doing this at link time was to save the expense
> of running the pass on recompiles.  But we're already running a lot of
> passes, and the extra code complexity isn't worth it.
>
> Signed-off-by: Kenneth Graunke <kenneth at whitecape.org>
> ---
>  src/mesa/drivers/dri/i965/brw_nir.c               | 8 --------
>  src/mesa/drivers/dri/i965/brw_vec4_gs_visitor.cpp | 1 +
>  2 files changed, 1 insertion(+), 8 deletions(-)
>
> diff --git a/src/mesa/drivers/dri/i965/brw_nir.c
> b/src/mesa/drivers/dri/i965/brw_nir.c
> index 61acf38..efa4c48 100644
> --- a/src/mesa/drivers/dri/i965/brw_nir.c
> +++ b/src/mesa/drivers/dri/i965/brw_nir.c
> @@ -598,7 +598,6 @@ brw_create_nir(struct brw_context *brw,
>                 bool is_scalar)
>  {
>     struct gl_context *ctx = &brw->ctx;
> -   const struct brw_device_info *devinfo = brw->intelScreen->devinfo;
>     const nir_shader_compiler_options *options =
>        ctx->Const.ShaderCompilerOptions[stage].NirOptions;
>     bool progress;
> @@ -625,13 +624,6 @@ brw_create_nir(struct brw_context *brw,
>        OPT_V(nir_lower_atomics, shader_prog);
>     }
>
> -   if (nir->stage != MESA_SHADER_VERTEX &&
> -       nir->stage != MESA_SHADER_TESS_CTRL &&
> -       nir->stage != MESA_SHADER_TESS_EVAL &&
> -       nir->stage != MESA_SHADER_FRAGMENT) {
> -      nir = brw_nir_lower_io(nir, devinfo, is_scalar, false, NULL);
> -   }
> -
>     return nir;
>  }
>
> diff --git a/src/mesa/drivers/dri/i965/brw_vec4_gs_visitor.cpp
> b/src/mesa/drivers/dri/i965/brw_vec4_gs_visitor.cpp
> index 183fe35..40966c6 100644
> --- a/src/mesa/drivers/dri/i965/brw_vec4_gs_visitor.cpp
> +++ b/src/mesa/drivers/dri/i965/brw_vec4_gs_visitor.cpp
> @@ -598,6 +598,7 @@ brw_compile_gs(const struct brw_compiler *compiler,
> void *log_data,
>     nir_shader *shader = nir_shader_clone(mem_ctx, src_shader);
>     shader = brw_nir_apply_sampler_key(shader, compiler->devinfo,
> &key->tex,
>                                        is_scalar);
> +   shader = brw_nir_lower_io(shader, compiler->devinfo, is_scalar, false,
> NULL);
>     shader = brw_postprocess_nir(shader, compiler->devinfo, is_scalar);
>
>     prog_data->include_primitive_id =
> --
> 2.7.1
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20160225/d0653f99/attachment.html>


More information about the mesa-dev mailing list