[Mesa-dev] [PATCH 0/5] nir,spirv: Fix bugs uncovered by spirv-opt

Jason Ekstrand jason at jlekstrand.net
Sat Sep 22 21:39:17 UTC 2018

This little series fixes three bugs encountered while running the Vulkan
CTS with SPIR-V optimizations enabled.  The optimizations shouldn't, in
theory, change the behavior of the shader but it does change some of the
SPIR-V patterns and triggered a number of compiler bugs.  I'd like to CC
the whole thing to stable but the last three patches are probably best only
hitting the latest release because they're fairly major surgery.

Jason Ekstrand (5):
  nir/cf: Remove phi sources if needed in nir_handle_add_jump
  nir/from_ssa: Don't rewrite derefs destinations to registers
  spirv: Move function call handling to vtn_cfg
  spirv: Pass SSA values through functions
  spirv: Make images, samplers, and sampled images normal SSA values

 src/compiler/nir/nir_control_flow.c |  36 ++--
 src/compiler/nir/nir_from_ssa.c     |   6 +
 src/compiler/spirv/spirv_to_nir.c   | 123 +++---------
 src/compiler/spirv/vtn_cfg.c        | 279 ++++++++++++++++++++++------
 src/compiler/spirv/vtn_private.h    |   9 +-
 src/compiler/spirv/vtn_variables.c  |  51 +++--
 6 files changed, 297 insertions(+), 207 deletions(-)


More information about the mesa-dev mailing list