[Mesa-dev] [PATCH 0/8] More OpenCL patches

Karol Herbst kherbst at redhat.com
Mon Jul 16 14:28:18 UTC 2018


This time there are actually some OpenCL patches like adding support for
the OpenCL SPIR-V extensions or a few opcodes we don't hit with vulkan
or glsl.

Also some of the glsl builtins are moved into a new file so that we can
start sharing builtin implementations across multiple SPIR-V extensions.

Last thing is preparing for vec8/vec16 types and handling 64 bit system
values, which is required by OpenCL.

Karol Herbst (6):
  nir: add builtin builder
  nir: prepare for bumping up max components to 16
  nir/spirv: initial handling of OpenCL.std extension opcodes
  nir/spirv: print id for unsupported alu opcode
  nir/spirv: cast shift operand to u32
  nir: specify bit_size when loading system values

Rob Clark (2):
  nir/spirv: import OpenCL.std.h
  nir/spirv: add OpIsFinite and OpIsNormal

 src/compiler/Makefile.sources                 |   2 +
 src/compiler/nir/meson.build                  |   3 +
 src/compiler/nir/nir.c                        |  14 +-
 src/compiler/nir/nir.h                        |  34 +-
 src/compiler/nir/nir_builder.h                |  17 +-
 src/compiler/nir/nir_builder_opcodes_h.py     |   9 +-
 src/compiler/nir/nir_builtin_builder.c        | 312 ++++++++++++++++++
 src/compiler/nir/nir_builtin_builder.h        | 223 +++++++++++++
 src/compiler/nir/nir_lower_alpha_test.c       |   2 +-
 src/compiler/nir/nir_lower_alu_to_scalar.c    |   6 +-
 src/compiler/nir/nir_lower_clip.c             |   3 +-
 src/compiler/nir/nir_lower_io_to_scalar.c     |   4 +-
 .../nir/nir_lower_load_const_to_scalar.c      |   2 +-
 src/compiler/nir/nir_lower_subgroups.c        |   8 +-
 src/compiler/nir/nir_lower_system_values.c    |  49 +--
 src/compiler/nir/nir_lower_two_sided_color.c  |   2 +-
 src/compiler/nir/nir_lower_wpos_center.c      |   2 +-
 src/compiler/nir/nir_opt_constant_folding.c   |   2 +-
 src/compiler/nir/nir_opt_copy_prop_vars.c     |   4 +-
 src/compiler/nir/nir_print.c                  |   9 +-
 src/compiler/nir/nir_search.c                 |   8 +-
 src/compiler/nir/nir_validate.c               |   6 +-
 src/compiler/spirv/OpenCL.std.h               | 211 ++++++++++++
 src/compiler/spirv/spirv_to_nir.c             |   4 +-
 src/compiler/spirv/vtn_alu.c                  |  61 +++-
 src/compiler/spirv/vtn_glsl450.c              |  58 +---
 src/compiler/spirv/vtn_opencl.c               | 284 ++++++++++++++++
 src/compiler/spirv/vtn_private.h              |   3 +
 src/compiler/spirv/vtn_subgroup.c             |   2 +-
 src/gallium/auxiliary/nir/tgsi_to_nir.c       |   3 +-
 src/intel/blorp/blorp_blit.c                  |   2 +-
 src/intel/blorp/blorp_clear.c                 |   2 +-
 .../compiler/brw_nir_lower_cs_intrinsics.c    |   6 +-
 src/mesa/drivers/dri/i965/brw_tcs.c           |   2 +-
 34 files changed, 1220 insertions(+), 139 deletions(-)
 create mode 100644 src/compiler/nir/nir_builtin_builder.c
 create mode 100644 src/compiler/nir/nir_builtin_builder.h
 create mode 100644 src/compiler/spirv/OpenCL.std.h
 create mode 100644 src/compiler/spirv/vtn_opencl.c

-- 
2.17.1



More information about the mesa-dev mailing list