SPIRV-Tools/source
Caio Marcelo de Oliveira Filho b812fd634e
Validate SPV_KHR_workgroup_memory_explicit_layout (#4128)
* Validate SPV_KHR_workgroup_memory_explicit_layout

* Check if SPIR-V is at least 1.4 to use the extension.

* Check if either only Workgroup Blocks or only Workgroup non-Blocks
  are used.

* Check that if more than one Workgroup Block is used, variables are
  decorated with Aliased.

* Check layout decorations for Workgroup Blocks.

* Implicitly use main capability if the ...8BitAccess or
  ...16BitAccess are used.

* Allow 8-bit and 16-bit types when ...8BitAccess and ...16BitAccess
  are used respectively.

* Update SPIRV-Headers dependency

Bump it to include SPV_KHR_workgroup_memory_explicit_layout.

* Add option to validate Workgroup blocks with scalar layout

Validate the equivalent of scalarBlockLayout for Workgroup storage
class Block variables from SPV_KHR_workgroup_memory_explicit_layout.
Add option to the API and command line tool.
2021-01-27 19:38:38 -05:00
..
fuzz spirv-fuzz: Fix OpPhi handling in DuplicateRegionWithSelection (#4065) 2020-12-17 11:45:52 +00:00
link Linker usability improvements (#4084) 2021-01-13 09:05:40 -05:00
opt Migrate all Kokoro build scripts over to use the docker VM image (#4114) 2021-01-18 13:36:26 -05:00
reduce CMake: Add SPIRV_TOOLS_BUILD_STATIC flag (#3910) 2020-10-29 09:25:26 -04:00
util
val Validate SPV_KHR_workgroup_memory_explicit_layout (#4128) 2021-01-27 19:38:38 -05:00
assembly_grammar.cpp
assembly_grammar.h
binary.cpp Support pending Intel extensions (#4116) 2021-01-20 09:39:51 -05:00
binary.h
cfa.h Avoid copying a ref in a loop (#4000) 2020-10-29 09:20:45 -04:00
CMakeLists.txt CMake: Add SPIRV_TOOLS_BUILD_STATIC flag (#3910) 2020-10-29 09:25:26 -04:00
diagnostic.cpp
diagnostic.h
disassemble.cpp Support pending Intel extensions (#4116) 2021-01-20 09:39:51 -05:00
disassemble.h
enum_set.h Instrument: Debug Printf support (#3215) 2020-03-12 09:19:52 -04:00
enum_string_mapping.cpp
enum_string_mapping.h
ext_inst.cpp Remove WebGPU support (#4108) 2021-01-14 16:45:18 -05:00
ext_inst.h
extensions.cpp
extensions.h
instruction.h
latest_version_glsl_std_450_header.h
latest_version_opencl_std_header.h
latest_version_spirv_header.h
libspirv.cpp Remove WebGPU support (#4108) 2021-01-14 16:45:18 -05:00
macro.h
name_mapper.cpp Update some language usage. (#3611) 2020-07-29 13:50:58 -04:00
name_mapper.h
opcode.cpp Take new (raytracing) termination instructions into account. (#4050) 2020-12-07 10:26:05 -05:00
opcode.h Take new (raytracing) termination instructions into account. (#4050) 2020-12-07 10:26:05 -05:00
operand.cpp Support pending Intel extensions (#4116) 2021-01-20 09:39:51 -05:00
operand.h
parsed_operand.cpp
parsed_operand.h
pch_source.cpp
pch_source.h
print.cpp
print.h
software_version.cpp
spirv_constant.h
spirv_definition.h
spirv_endian.cpp
spirv_endian.h
spirv_fuzzer_options.cpp spirv-fuzz: Add pass recommendations (#3757) 2020-09-18 15:51:35 +01:00
spirv_fuzzer_options.h spirv-fuzz: Add pass recommendations (#3757) 2020-09-18 15:51:35 +01:00
spirv_optimizer_options.cpp
spirv_optimizer_options.h
spirv_reducer_options.cpp spirv-reduce: Support reducing a specific function (#3774) 2020-09-11 06:29:43 +01:00
spirv_reducer_options.h spirv-reduce: Support reducing a specific function (#3774) 2020-09-11 06:29:43 +01:00
spirv_target_env.cpp Remove WebGPU support (#4108) 2021-01-14 16:45:18 -05:00
spirv_target_env.h Remove WebGPU support (#4108) 2021-01-14 16:45:18 -05:00
spirv_validator_options.cpp Validate SPV_KHR_workgroup_memory_explicit_layout (#4128) 2021-01-27 19:38:38 -05:00
spirv_validator_options.h Validate SPV_KHR_workgroup_memory_explicit_layout (#4128) 2021-01-27 19:38:38 -05:00
table.cpp Remove WebGPU support (#4108) 2021-01-14 16:45:18 -05:00
table.h
text_handler.cpp
text_handler.h
text.cpp
text.h