SPIRV-Tools/source
Andrey Tuganov 78cf86150e Add id descriptor feature to SPIR-V
Id descriptors are computed as a recursive hash of all instructions used
to define an id. Descriptors are invarint of actual id values and
the similar code in different files would produce the same descriptors.

Multiple ids can have the same descriptor. For example
%1 = OpConstant %u32 1
%2 = OpConstant %u32 1
would produce two ids with the same descriptor. But
%3 = OpConstant %s32 1
%4 = OpConstant %u32 2
would have descriptors different from %1 and %2.

Descriptors will be used as handles of move-to-front sequences in SPIR-V
compression.
2017-08-10 18:44:52 -04:00
..
comp Fix Visual Studio size_t cast compiler warning 2017-07-13 13:02:43 -06:00
opt ADCE: Add support for function calls 2017-08-10 17:30:05 -04:00
util Add multi-sequence move-to-front implementation 2017-08-02 14:07:24 -04:00
val Added compression tool tools/spirv-markv. Work in progress. 2017-06-30 12:22:48 -04:00
assembly_grammar.cpp Convert pattern stack from deque to vector, and share it 2017-07-04 12:02:26 -04:00
assembly_grammar.h Convert pattern stack from deque to vector, and share it 2017-07-04 12:02:26 -04:00
binary.cpp Convert pattern stack from deque to vector, and share it 2017-07-04 12:02:26 -04:00
binary.h Support building under CYGWIN 2016-12-21 10:34:23 -05:00
cfa.h CFA: Move TraversalRoots and ComputeAugmentedCFG into CFA 2017-05-25 11:43:24 -06:00
CMakeLists.txt Add id descriptor feature to SPIR-V 2017-08-10 18:44:52 -04:00
diagnostic.cpp spirv-val prints warnings 2017-03-17 12:48:51 -04:00
diagnostic.h Clean up header dependency. 2016-09-22 18:15:23 -04:00
disassemble.cpp Extract EmitNumericLiteral from disassembler 2016-11-15 14:05:03 -05:00
enum_set.h Add SPIR-V 1.2 support, for OpenCL 2.2 2017-05-15 17:10:07 -04:00
enum_string_mapping.cpp Autogenererating enum-string mappings from grammar 2017-03-16 15:29:17 -04:00
enum_string_mapping.h Autogenererating enum-string mappings from grammar 2017-03-16 15:29:17 -04:00
ext_inst.cpp Add support for SPV AMD extensions 2017-06-21 15:08:07 -04:00
ext_inst.h Relicense SPIRV-Tools under Apache 2.0 2016-09-02 10:00:29 -04:00
extensions.cpp Autogenererating enum-string mappings from grammar 2017-03-16 15:29:17 -04:00
extensions.h Autogenererating enum-string mappings from grammar 2017-03-16 15:29:17 -04: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
id_descriptor.cpp Add id descriptor feature to SPIR-V 2017-08-10 18:44:52 -04:00
id_descriptor.h Add id descriptor feature to SPIR-V 2017-08-10 18:44:52 -04:00
instruction.h Add SPIR-V 1.2 support, for OpenCL 2.2 2017-05-15 17:10:07 -04:00
libspirv.cpp Added option --preserve-numeric-ids to tools/spirv-as 2017-04-13 14:13:33 -04:00
macro.h Relicense SPIRV-Tools under Apache 2.0 2016-09-02 10:00:29 -04:00
message.cpp spirv-val prints warnings 2017-03-17 12:48:51 -04:00
message.h Clean up header dependency. 2016-09-22 18:15:23 -04:00
name_mapper.cpp Add SPIR-V 1.2 support, for OpenCL 2.2 2017-05-15 17:10:07 -04:00
name_mapper.h Make friendly number-based names for OpConstant 2016-11-15 14:05:03 -05:00
opcode.cpp Add SPIR-V 1.2 support, for OpenCL 2.2 2017-05-15 17:10:07 -04:00
opcode.h Add SPIR-V 1.2 support, for OpenCL 2.2 2017-05-15 17:10:07 -04:00
operand.cpp Convert pattern stack from deque to vector, and share it 2017-07-04 12:02:26 -04:00
operand.h Convert pattern stack from deque to vector, and share it 2017-07-04 12:02:26 -04:00
parsed_operand.cpp Extract EmitNumericLiteral from disassembler 2016-11-15 14:05:03 -05:00
parsed_operand.h Extract EmitNumericLiteral from disassembler 2016-11-15 14:05:03 -05:00
print.cpp Support building on FreeBSD 2017-05-28 23:20:18 +02:00
print.h Relicense SPIRV-Tools under Apache 2.0 2016-09-02 10:00:29 -04:00
software_version.cpp Relicense SPIRV-Tools under Apache 2.0 2016-09-02 10:00:29 -04:00
spirv_constant.h Add SPIR-V 1.2 support, for OpenCL 2.2 2017-05-15 17:10:07 -04:00
spirv_definition.h Add SPIR-V 1.2 support, for OpenCL 2.2 2017-05-15 17:10:07 -04:00
spirv_endian.cpp Relicense SPIRV-Tools under Apache 2.0 2016-09-02 10:00:29 -04:00
spirv_endian.h Relicense SPIRV-Tools under Apache 2.0 2016-09-02 10:00:29 -04:00
spirv_stats.cpp Add id descriptor feature to SPIR-V 2017-08-10 18:44:52 -04:00
spirv_stats.h Add id descriptor feature to SPIR-V 2017-08-10 18:44:52 -04:00
spirv_target_env.cpp Add SPIR-V 1.2 support, for OpenCL 2.2 2017-05-15 17:10:07 -04:00
spirv_target_env.h Relicense SPIRV-Tools under Apache 2.0 2016-09-02 10:00:29 -04:00
spirv_validator_options.cpp Add command line options struct for the validator 2017-02-28 12:00:06 -05:00
spirv_validator_options.h Add command line options struct for the validator 2017-02-28 12:00:06 -05:00
table.cpp Add SPIR-V 1.2 support, for OpenCL 2.2 2017-05-15 17:10:07 -04:00
table.h Add SPIR-V 1.2 support, for OpenCL 2.2 2017-05-15 17:10:07 -04:00
text_handler.cpp Added option --preserve-numeric-ids to tools/spirv-as 2017-04-13 14:13:33 -04:00
text_handler.h Added option --preserve-numeric-ids to tools/spirv-as 2017-04-13 14:13:33 -04:00
text.cpp Convert pattern stack from deque to vector, and share it 2017-07-04 12:02:26 -04:00
text.h Relicense SPIRV-Tools under Apache 2.0 2016-09-02 10:00:29 -04:00
validate_capability.cpp Validator dissallows unsupported Vulkan capability 2017-03-17 10:28:35 -04:00
validate_cfg.cpp CFA: Pull in CalculateDominators 2017-05-25 12:31:38 -04:00
validate_datarules.cpp Validation of type decls for SPV_KHR_16bit_storage 2017-02-27 13:12:59 -05:00
validate_decorations.cpp Fixes issue #489. 2017-03-02 10:06:29 -05:00
validate_id.cpp Support SPV_KHR_storage_buffer_storage_class 2017-04-07 09:54:38 -04:00
validate_instruction.cpp Validator support for Variable Pointer extension. 2017-04-07 09:49:48 -04:00
validate_layout.cpp Rename validation source files to comply with Google style guide. 2016-11-08 17:19:56 -08:00
validate_type_unique.cpp Added extension SPV_VALIDATOR_ignore_type_decl_unique 2017-05-25 11:36:48 -04:00
validate.cpp Move spv_instruction_t's into vector 2017-06-28 11:13:26 -04:00
validate.h CFA: Pull in CalculateDominators 2017-05-25 12:31:38 -04:00