[Mesa-dev] [PATCH 00/10] ARB_gl_spirv series 5: some miscellaneous patches

Alejandro Piñeiro apinheiro at igalia.com
Thu Aug 9 13:43:42 UTC 2018


this is the fith series for the ongoing support for ARB_gl_spirv. This
time there is not a common topic for all those patches. They are
patches that we think that are ready, and would be good to send to
review in advance, while we finish other main subfeatures.

The tree for this series can be found on the following repository:

And can be tested with the following piglit branch:

Although that piglit branch, compared with the previous series, just
add some double tests. Some of the patches of this series are already
needed/tested by some CTS tests, so we didn't add a piglit test for
now. There are some comments about those CTS tests on some patches.

Having said so, with this branch (plus the patches already on master,
of course), if we made a full run borrowing as many piglit tests as
possible (something that we didn't propose to be the rule, but just
give the tools to replicate for developers), we get the following
numbers with the i965 driver (SKL):

   [34453/34453] skip: 5877, pass: 28224, fail: 196, crash: 156

Numbers that are somewhat inflated due the big amount of va64 tests,
but in any case, and taking into account the lack of ubo/ssbo support,
are promising.

FWIW, the numbers with the development branch are the following:

   [34453/34453] skip: 5877, pass: 28352, fail: 211, crash: 13

Comparing, it is 154 tests fixes, most of them due the wip (but almost
complete) ubo/ssbo support, and some validations.


Alejandro Piñeiro (6):
  spirv: fill info.gs.input_primitive too
  nir: add how_declared to nir_variable.data
  nir/linker: take into account hidden uniforms
  nir/lower_samplers: don't assume a deref for both texture and sampler
  nir/glsl: make nir_remap_attributes public
  mesa/glspirv: compute double inputs and remap attributes

Iago Toral Quiroga (1):
  mesa/glspirv: pick off the only entry point we need

Neil Roberts (3):
  spirv: Make VertexIndex and VertexId both non-zero-based
  mesa/glspirv: Set separate_shader on shader_info
  i965/nir: Use the nir copy of shader_info to handle gl_PatchVerticesIn

 src/compiler/glsl/gl_nir_link_uniforms.c     |  5 +-
 src/compiler/glsl/gl_nir_linker.c            |  4 ++
 src/compiler/glsl/gl_nir_lower_samplers.c    | 83 ++++++++++++++++++----------
 src/compiler/glsl/glsl_to_nir.cpp            | 17 ------
 src/compiler/nir/nir.c                       | 25 +++++++++
 src/compiler/nir/nir.h                       | 27 +++++++++
 src/compiler/nir/nir_lower_wpos_ytransform.c |  2 +-
 src/compiler/spirv/spirv_to_nir.c            |  2 +
 src/compiler/spirv/vtn_variables.c           | 15 ++---
 src/mesa/drivers/dri/i965/brw_program.c      |  2 +-
 src/mesa/main/glspirv.c                      | 36 ++++++++++++
 11 files changed, 163 insertions(+), 55 deletions(-)


More information about the mesa-dev mailing list