[Mesa-dev] [PATCH 0/5] NIR opcodes and constant folding

Connor Abbott cwabbott0 at gmail.com
Fri Jan 16 13:53:11 PST 2015


Oh, and I forgot... the series is also available at

https://github.com/cwabbott0/mesa nir-opcodes-cleanup

On Fri, Jan 16, 2015 at 4:46 PM, Connor Abbott <cwabbott0 at gmail.com> wrote:
> Hi,
>
> This is a series I had floating around a while. The idea is to have all the
> opcode stuff, including constant folding, derived from a single Python file.
> I've cleaned it up a little by using {}-style Python formatting instead of the
> pile of text-replacement and regular expressions we had before for getting the
> constant expressions to a state where they could be compiled as C code.
>
> Connor Abbott (5):
>   nir: add generated file to .gitignore
>   nir: use Python to autogenerate opcode information
>   nir: add new constant folding infrastructure
>   nir/constant_folding: use the new constant folding infrastructure
>   nir/lower_vars_to_ssa: fix a bug with boolean constants
>
>  src/glsl/Makefile.am                     |  23 +-
>  src/glsl/Makefile.sources                |   7 +-
>  src/glsl/nir/.gitignore                  |   4 +
>  src/glsl/nir/nir.h                       |   9 -
>  src/glsl/nir/nir_constant_expressions.h  |  32 ++
>  src/glsl/nir/nir_constant_expressions.py | 320 +++++++++++++++++
>  src/glsl/nir/nir_lower_vars_to_ssa.c     |   2 +-
>  src/glsl/nir/nir_opcodes.c               |  46 ---
>  src/glsl/nir/nir_opcodes.h               | 366 --------------------
>  src/glsl/nir/nir_opcodes.py              | 567 +++++++++++++++++++++++++++++++
>  src/glsl/nir/nir_opcodes_c.py            |  56 +++
>  src/glsl/nir/nir_opcodes_h.py            |  39 +++
>  src/glsl/nir/nir_opt_constant_folding.c  | 179 ++--------
>  13 files changed, 1066 insertions(+), 584 deletions(-)
>  create mode 100644 src/glsl/nir/.gitignore
>  create mode 100644 src/glsl/nir/nir_constant_expressions.h
>  create mode 100644 src/glsl/nir/nir_constant_expressions.py
>  delete mode 100644 src/glsl/nir/nir_opcodes.c
>  delete mode 100644 src/glsl/nir/nir_opcodes.h
>  create mode 100644 src/glsl/nir/nir_opcodes.py
>  create mode 100644 src/glsl/nir/nir_opcodes_c.py
>  create mode 100644 src/glsl/nir/nir_opcodes_h.py
>
> --
> 2.1.0
>


More information about the mesa-dev mailing list