[Mesa-dev] [PATCH v2 00/23] NIR: more bit-size related patches

Jason Ekstrand jason at jlekstrand.net
Fri Apr 1 20:48:52 UTC 2016


On Thu, Mar 31, 2016 at 2:59 AM, Samuel Iglesias Gonsálvez <
siglesias at igalia.com> wrote:

> Hello,
>
> This is the second version of this patch series [0].
>
> In case you prefer a repository, it is available here [1]:
>
> $ git clone -b nir-bit-size-fixes-2.0 https://github.com/Igalia/mesa.git
>
> Thanks,
>
> Sam
>
> [0] https://lists.freedesktop.org/archives/mesa-dev/2016-March/110465.html
> [1] https://github.com/Igalia/mesa/tree/nir-bit-size-fixes-2.0
>
> Connor Abbott (13):
>   nir/from_ssa: adapt to different bit sizes
>   nir/locals_to_regs: adapt to different bit sizes
>   nir/lower_vec: adapt to different bit sizes
>   nir/glsl_to_nir: support doubles
>   nir/print: add support for printing doubles and bitsize
>   nir: handle doubles in nir_deref_get_const_initializer_load()
>   nir/instr_set: handle 64-bit bit-sizes
>   nir/split_var_copies: handle doubles
>   nir: add support for d2f and f2d
>   nir: add support for (un)pack_double_2x32
>   nir: don't try to scalarize unpack_double_2x32
>   nir: add split versions of (un)pack_double_2x32
>   nir: add a pass for lowering (un)pack_double_2x32
>
> Iago Toral Quiroga (7):
>   nir/lower_to_source_mods: Handle different bit sizes
>   nir/lower_load_const_to_scalar: suppport doubles and multiple bit
>     sizes
>   nir/glsl_to_nir: set the bit-size in the result of evaluate_rvalue
>   nir/glsl_to_nir: set bit_size on ssbo_load result
>   nir: add d2i, d2u, d2b opcodes
>   nir: add i2d and u2d opcodes
>   nir/lower_to_source_mod: Skip unsafe operations
>
> Samuel Iglesias Gonsálvez (3):
>   nir: add bit_size info to nir_ssa_undef_instr_create()
>   nir: add bit_size info to nir_load_const_instr_create()
>   nir: verify destination bit size when checking algebraic optimizations
>

I looked through it today and, by and large, it looks pretty good.  I agree
with Connor on Patch 21.  I would like to see patch 13 reworked as per
those comments.  I think we should drop patch 23 for now (it needs to go in
a series with opt_algebraic changes to use it).

On the rest of the patches, I had mostly minor comments.  Assuming the
comments are addressed, those patches are

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


>  src/compiler/Makefile.sources                     |   1 +
>  src/compiler/glsl/Makefile.sources                |   1 +
>  src/compiler/nir/Makefile.sources                 |   1 +
>  src/compiler/nir/glsl_to_nir.cpp                  |  89 ++++++++++++------
>  src/compiler/nir/nir.c                            |  19 +++-
>  src/compiler/nir/nir.h                            |   8 +-
>  src/compiler/nir/nir_algebraic.py                 |  11 ++-
>  src/compiler/nir/nir_builder.h                    |   4 +-
>  src/compiler/nir/nir_clone.c                      |   6 +-
>  src/compiler/nir/nir_control_flow.c               |   5 +-
>  src/compiler/nir/nir_from_ssa.c                   |   2 +
>  src/compiler/nir/nir_instr_set.c                  |  22 ++++-
>  src/compiler/nir/nir_lower_alu_to_scalar.c        |   3 +
>  src/compiler/nir/nir_lower_atomics.c              |   5 +-
>  src/compiler/nir/nir_lower_double_packing.c       | 106
> ++++++++++++++++++++++
>  src/compiler/nir/nir_lower_load_const_to_scalar.c |   8 +-
>  src/compiler/nir/nir_lower_locals_to_regs.c       |   3 +-
>  src/compiler/nir/nir_lower_to_source_mods.c       |  27 +++++-
>  src/compiler/nir/nir_lower_vars_to_ssa.c          |   3 +-
>  src/compiler/nir/nir_lower_vec_to_movs.c          |   1 +
>  src/compiler/nir/nir_opcodes.py                   |  72 +++++++++++++++
>  src/compiler/nir/nir_opt_constant_folding.c       |   4 +-
>  src/compiler/nir/nir_phi_builder.c                |   3 +-
>  src/compiler/nir/nir_print.c                      |  17 +++-
>  src/compiler/nir/nir_search.c                     |   5 +-
>  src/compiler/nir/nir_split_var_copies.c           |   2 +
>  src/compiler/nir/nir_to_ssa.c                     |   2 +-
>  src/gallium/auxiliary/nir/tgsi_to_nir.c           |   2 +-
>  28 files changed, 366 insertions(+), 66 deletions(-)
>  create mode 100644 src/compiler/nir/nir_lower_double_packing.c
>
> --
> 2.5.0
>
> _______________________________________________
> 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/20160401/964bea65/attachment.html>


More information about the mesa-dev mailing list