[Mesa-dev] [PATCH 00/17] gallium: add support for NIR as alternate IR

Rob Clark robdclark at gmail.com
Mon May 9 19:33:48 UTC 2016


From: Rob Clark <robclark at freedesktop.org>

Not much changed from last time, other than rebasing or nir iterator
macro changes, and pulling in Jose's patch to add scons support to
build NIR.

Hopefully we can get some r-b's for the few remaining patches, so I
can do something else other than rebasing on NIR churn forever ;-)

Jose Fonseca (1):
  scons: Build NIR.

Rob Clark (16):
  gallium: refactor pipe_shader_state to support multiple IR's
  gallium: add NIR as a possible IR
  nir: add lowering pass for y-transform
  nir: add lowering pass for glDrawPixels
  nir: add lowering pass for glBitmap
  nir: passthrough-edgeflags support
  nir: lower-io-types pass
  nir: move callsite of lower_outputs_to_temporaries
  nir: rename lower_outputs_to_temporaries -> lower_io_to_temporaries
  nir/lower-io: split out some helper fxns
  nir/lower-io: add support for lowering inputs
  glsl: export accessor for builtin-uniform descriptors
  mesa/st: split the type_size calculation into it's own file
  mesa/st: add nir pass for lowering builtin uniforms
  mesa/st: move things around a bit in st_create_fp_variant()
  mesa/st: add support for NIR as possible driver IR

 src/compiler/Makefile.sources                      |   7 +-
 src/compiler/SConscript                            |  57 ++-
 src/compiler/glsl/builtin_variables.cpp            |  23 +-
 src/compiler/glsl/ir.h                             |   3 +
 src/compiler/nir/glsl_to_nir.cpp                   |   2 -
 src/compiler/nir/nir.h                             |  39 +-
 src/compiler/nir/nir_lower_bitmap.c                | 139 +++++++
 src/compiler/nir/nir_lower_drawpixels.c            | 254 +++++++++++++
 src/compiler/nir/nir_lower_io_to_temporaries.c     | 186 +++++++++
 src/compiler/nir/nir_lower_io_types.c              | 180 +++++++++
 .../nir/nir_lower_outputs_to_temporaries.c         | 132 -------
 src/compiler/nir/nir_lower_passthrough_edgeflags.c |  58 +++
 src/compiler/nir/nir_lower_wpos_ytransform.c       | 310 +++++++++++++++
 src/gallium/auxiliary/hud/hud_context.c            |   9 +-
 src/gallium/auxiliary/postprocess/pp_run.c         |   3 +-
 src/gallium/auxiliary/tgsi/tgsi_ureg.c             |   4 +-
 src/gallium/auxiliary/util/u_simple_shaders.c      |  18 +-
 src/gallium/auxiliary/util/u_tests.c               |   3 +-
 src/gallium/include/pipe/p_defines.h               |  13 +-
 src/gallium/include/pipe/p_screen.h                |   9 +
 src/gallium/include/pipe/p_state.h                 |  32 +-
 src/mesa/Makefile.sources                          |   5 +
 src/mesa/SConscript                                |   1 +
 src/mesa/drivers/dri/i965/brw_nir.c                |   3 +
 src/mesa/state_tracker/st_glsl_to_nir.cpp          | 423 +++++++++++++++++++++
 src/mesa/state_tracker/st_glsl_to_tgsi.cpp         | 104 ++---
 src/mesa/state_tracker/st_glsl_to_tgsi.h           |   5 +
 src/mesa/state_tracker/st_glsl_types.cpp           | 101 +++++
 src/mesa/state_tracker/st_glsl_types.h             |  44 +++
 src/mesa/state_tracker/st_nir.h                    |  52 +++
 src/mesa/state_tracker/st_nir_lower_builtin.c      | 245 ++++++++++++
 src/mesa/state_tracker/st_program.c                | 148 ++++++-
 src/mesa/state_tracker/st_program.h                |   6 +
 33 files changed, 2365 insertions(+), 253 deletions(-)
 create mode 100644 src/compiler/nir/nir_lower_bitmap.c
 create mode 100644 src/compiler/nir/nir_lower_drawpixels.c
 create mode 100644 src/compiler/nir/nir_lower_io_to_temporaries.c
 create mode 100644 src/compiler/nir/nir_lower_io_types.c
 delete mode 100644 src/compiler/nir/nir_lower_outputs_to_temporaries.c
 create mode 100644 src/compiler/nir/nir_lower_passthrough_edgeflags.c
 create mode 100644 src/compiler/nir/nir_lower_wpos_ytransform.c
 create mode 100644 src/mesa/state_tracker/st_glsl_to_nir.cpp
 create mode 100644 src/mesa/state_tracker/st_glsl_types.cpp
 create mode 100644 src/mesa/state_tracker/st_glsl_types.h
 create mode 100644 src/mesa/state_tracker/st_nir.h
 create mode 100644 src/mesa/state_tracker/st_nir_lower_builtin.c

-- 
2.5.5



More information about the mesa-dev mailing list