[Mesa-dev] [PATCH 0/6] i965: Do textures swizzle work-arounds in NIR.
Connor Abbott
cwabbott0 at gmail.com
Sat Nov 14 18:40:16 PST 2015
Series is
Reviewed-by: Connor Abbott <cwabbott0 at gmail.com>
Although I'm not as familiar now with the code touched in the last patch.
On Thu, Nov 12, 2015 at 3:13 PM, Jason Ekstrand <jason at jlekstrand.net> wrote:
> The subject says it all. This little series adds texture swizzle support
> to nir_lower_tex and makes the i965 driver use that instead of its own
> code. This approach has a few advantages:
>
> 1) It lets us share the swizzling code between both backends and with
> anyone else who wants it.
>
> 2) It simplifies the work-arounds we have to do for RG32F textures because
> everything is pre-swizzled by the time the backend sees it.
>
> 3) If someone wants to come along and implement texture write-masking in
> the FS backend, they'll have an easier time of it. One of my
> approaches to doing so was substantially complicated by the fact that,
> thanks to the swizzle, the channels used that we can see from NIR don't
> apply to the actual texturing instruction. Now that the swizzling is
> done in NIR, this should be substantially simpler.
>
> Jason Ekstrand (6):
> nir/validate: Validated dests after sources
> nir: Use instr/if_rewrite in nir_ssa_def_rewrite_uses
> nir: Add a ssa_def_rewrite_uses_after helper
> nir: Add a tex_instr_is_query helper
> nir/lower_tex: Add support for lowering texture swizzle
> i965: Use NIR for lowering texture swizzle
>
> src/glsl/nir/nir.c | 63 ++++++++++++---
> src/glsl/nir/nir.h | 40 ++++++++++
> src/glsl/nir/nir_lower_tex.c | 67 ++++++++++++++++
> src/glsl/nir/nir_validate.c | 18 ++---
> src/mesa/drivers/dri/i965/brw_fs.h | 4 -
> src/mesa/drivers/dri/i965/brw_fs_visitor.cpp | 105 ++++---------------------
> src/mesa/drivers/dri/i965/brw_nir.c | 14 +++-
> src/mesa/drivers/dri/i965/brw_vec4.h | 4 -
> src/mesa/drivers/dri/i965/brw_vec4_nir.cpp | 24 +++---
> src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp | 93 ++--------------------
> 10 files changed, 215 insertions(+), 217 deletions(-)
>
> --
> 2.5.0.400.gff86faf
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev
More information about the mesa-dev
mailing list