SPIRV-Tools/source
Kévin Petit 11516c0b9a Validate storage class OpenCL environment rules for atomics (#2750)
This change refactors all storage class validation for atomics
to reflect the similar refactoring in the specification.

It is currently not possible to write a test for the check
rejecting Generic in an OpenCL 1.2 environment as the required
GenericPointer capability isn't allowed there. I've decided
to keep the check nonetheless to guard against the capability
becoming available without the rules for atomics being updated.

The ID changes in existing tests aren't ideal but introducing
names drags in a substantial refactoring of this file.

Contributes to #2595.

Signed-off-by: Kevin Petit <kevin.petit@arm.com>
2019-07-22 08:38:42 -04:00
..
fuzz Shrinker for spirv-fuzz (#2708) 2019-07-07 08:55:30 +01:00
link Linker: Better type comparison for OpTypeArray and OpTypeForwardPointer (#2580) 2019-05-29 16:12:02 -04:00
opt Document opt::Instruction::InsertBefore methods (#2751) 2019-07-18 11:37:28 -04:00
reduce Implement WebGPU->Vulkan initializer conversion for 'Function' variables (#2513) 2019-04-16 14:31:36 -04:00
util Change HexFloat to work with gcc8. (#2109) 2018-11-26 15:47:48 -05:00
val Validate storage class OpenCL environment rules for atomics (#2750) 2019-07-22 08:38:42 -04:00
assembly_grammar.cpp Add validation for SPV_NV_cooperative_matrix (#2404) 2019-02-25 17:43:11 -05:00
assembly_grammar.h Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
binary.cpp Output disassembly line number for binary parse errors. (#2195) 2018-12-21 16:24:15 -05:00
binary.h Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
cfa.h Rewrite include guards (#1793) 2018-08-03 08:05:33 -04:00
CMakeLists.txt Extra small storage validation (#2732) 2019-07-11 13:05:14 -04:00
diagnostic.cpp Remove source/message.h (#1838) 2018-08-14 15:41:21 -04:00
diagnostic.h Rewrite include guards (#1793) 2018-08-03 08:05:33 -04:00
disassemble.cpp Use MakeUnique. (#1837) 2018-08-14 15:01:50 -04:00
disassemble.h Rewrite include guards (#1793) 2018-08-03 08:05:33 -04:00
enum_set.h Use MakeUnique. (#1837) 2018-08-14 15:01:50 -04:00
enum_string_mapping.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
enum_string_mapping.h Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
ext_inst.cpp Support SPIR-V 1.4 (#2550) 2019-05-07 12:27:18 -04:00
ext_inst.h Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
extensions.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
extensions.h Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
extinst.debuginfo.grammar.json Add asm, dis support for DebugInfo extended instruction set 2017-12-22 09:39:36 -05:00
extinst.spv-amd-gcn-shader.grammar.json Fix spelling in SPV_AMD_gcn_shader support 2017-04-03 14:59:18 -04:00
extinst.spv-amd-shader-ballot.grammar.json Add support for SPV AMD extensions 2017-06-21 15:08:07 -04:00
extinst.spv-amd-shader-explicit-vertex-parameter.grammar.json Add support for SPV AMD extensions 2017-06-21 15:08:07 -04:00
extinst.spv-amd-shader-trinary-minmax.grammar.json Add support for SPV AMD extensions 2017-06-21 15:08:07 -04:00
instruction.h Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
latest_version_glsl_std_450_header.h Rewrite include guards (#1793) 2018-08-03 08:05:33 -04:00
latest_version_opencl_std_header.h Rewrite include guards (#1793) 2018-08-03 08:05:33 -04:00
latest_version_spirv_header.h Rewrite include guards (#1793) 2018-08-03 08:05:33 -04:00
libspirv.cpp Add SpirvTools::IsValid(). (#2326) 2019-01-24 09:45:09 -05:00
macro.h Rewrite include guards (#1793) 2018-08-03 08:05:33 -04:00
name_mapper.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
name_mapper.h Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
opcode.cpp Use last version (#2578) 2019-05-10 11:02:01 -04:00
opcode.h Add --strip-atomic-counter-memory (#2413) 2019-03-14 13:34:33 -04:00
operand.cpp Use last version (#2578) 2019-05-10 11:02:01 -04:00
operand.h New spirv-reduce reduction pass: operand to dominating id. (#2099) 2018-11-26 17:06:21 -05:00
parsed_operand.cpp Replace asserts with returns 2018-08-08 15:13:04 -04:00
parsed_operand.h Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
pch_source.cpp Enable precompiled headers for spirv-tools(-shared) and some unit tests (#2026) 2018-11-06 09:26:23 -05:00
pch_source.h Enable precompiled headers for spirv-tools(-shared) and some unit tests (#2026) 2018-11-06 09:26:23 -05:00
print.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
print.h Rewrite include guards (#1793) 2018-08-03 08:05:33 -04:00
software_version.cpp Add missing function parameters in libspirv.h 2018-04-03 10:10:43 -04:00
spirv_constant.h Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
spirv_definition.h Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
spirv_endian.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
spirv_endian.h Rewrite include guards (#1793) 2018-08-03 08:05:33 -04:00
spirv_fuzzer_options.cpp Shrinker for spirv-fuzz (#2708) 2019-07-07 08:55:30 +01:00
spirv_fuzzer_options.h Shrinker for spirv-fuzz (#2708) 2019-07-07 08:55:30 +01:00
spirv_optimizer_options.cpp Add —preserve-bindings and —preserve-spec-constants (#2693) 2019-07-10 14:12:19 -04:00
spirv_optimizer_options.h Add —preserve-bindings and —preserve-spec-constants (#2693) 2019-07-10 14:12:19 -04:00
spirv_reducer_options.cpp Refactor reducer options (#2709) 2019-07-04 11:11:42 +01:00
spirv_reducer_options.h Refactor reducer options (#2709) 2019-07-04 11:11:42 +01:00
spirv_target_env.cpp Validate that in OpenGL env block variables have Binding (#2685) 2019-07-02 08:11:20 -04:00
spirv_target_env.h Validate that in OpenGL env block variables have Binding (#2685) 2019-07-02 08:11:20 -04:00
spirv_validator_options.cpp Make pointers to isomorphic type interchangeable with option. (#2570) 2019-05-13 13:48:17 -04:00
spirv_validator_options.h Make pointers to isomorphic type interchangeable with option. (#2570) 2019-05-13 13:48:17 -04:00
table.cpp Support SPIR-V 1.4 (#2550) 2019-05-07 12:27:18 -04:00
table.h Use last version (#2578) 2019-05-10 11:02:01 -04:00
text_handler.cpp Avoid GCC8 warning in text_handler.cpp. (#2197) 2018-12-13 15:03:28 -05:00
text_handler.h Remove source/message.h (#1838) 2018-08-14 15:41:21 -04:00
text.cpp Use correct option in spvTextToBinary. (#2416) 2019-02-26 16:52:33 -05:00
text.h Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00