SPIRV-Tools/source
Steven Perron 476cae6f7d Add the IRContext (part 1)
This is the first part of adding the IRContext.  This class is meant to
hold the extra data that is build on top of the module that it
owns.

The first part will simply create the IRContext class and get it passed
to the passes in place of the module.  For now it does not have any
functionality of its own, but it acts more as a wrapper for the module.

The functions that I added to the IRContext are those that either
traverse the headers or add to them.  I did this because we may decide
to have other ways of dealing with these sections (for example adding a
type pool, or use the decoration manager).

I also added the function that add to the header because the IRContext
needs to know when an instruction is added to update other data
structures appropriately.

Note that there is still lots of work that needs to be done.  There are
still many places that change the module, and do not inform the context.
That will be the next step.
2017-10-31 13:46:05 -04:00
..
comp Compression: removed 'presumed index' feature 2017-10-28 18:38:13 -04:00
link Add the IRContext (part 1) 2017-10-31 13:46:05 -04:00
opt Add the IRContext (part 1) 2017-10-31 13:46:05 -04:00
util Lowered initial capacity of move-to-front sequence 2017-10-31 12:00:42 -04:00
val Add option to relax validation of store types. 2017-10-28 18:48:21 -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 validation pass for conversion instructions 2017-10-20 13:51:24 -04:00
diagnostic.cpp DiagnosticStream move ctor moves output duties to new object 2017-10-03 11:23:54 -04:00
diagnostic.h DiagnosticStream move ctor moves output duties to new object 2017-10-03 11:23:54 -04:00
disassemble.cpp Extract EmitNumericLiteral from disassembler 2016-11-15 14:05:03 -05:00
enum_set.h Turn all function static non-POD variables into global POD variables 2017-10-25 15:44:19 -04:00
enum_string_mapping.cpp Autogenererating enum-string mappings from grammar 2017-03-16 15:29:17 -04:00
enum_string_mapping.h Turn all function static non-POD variables into global POD variables 2017-10-25 15:44:19 -04:00
ext_inst.cpp Turn all function static non-POD variables into global POD variables 2017-10-25 15:44:19 -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 Turn all function static non-POD variables into global POD variables 2017-10-25 15:44:19 -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 Use std::lower_bound for opcode lookup 2017-10-28 18:34:01 -04:00
opcode.h Add SPIR-V 1.2 support, for OpenCL 2.2 2017-05-15 17:10:07 -04:00
operand.cpp Turn all function static non-POD variables into global POD variables 2017-10-25 15:44:19 -04:00
operand.h Update MARK-V to version 1.01 2017-09-06 16:03:16 -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 Fix mingw build (source/print.cpp) 2017-09-01 16:07:18 -04: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 option to relax validation of store types. 2017-10-28 18:48:21 -04:00
spirv_validator_options.h Add option to relax validation of store types. 2017-10-28 18:48:21 -04:00
table.cpp Add SPIR-V 1.2 support, for OpenCL 2.2 2017-05-15 17:10:07 -04:00
table.h Turn all function static non-POD variables into global POD variables 2017-10-25 15:44:19 -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_arithmetics.cpp Validate SpvOpVectorShuffle 2017-10-24 11:45:03 -04:00
validate_bitwise.cpp No use to check OpBitCount result width 2017-09-29 09:14:02 +03:00
validate_capability.cpp Turn all function static non-POD variables into global POD variables 2017-10-25 15:44:19 -04:00
validate_cfg.cpp Validator checks OpReturn called from void func 2017-10-12 15:32:32 -04:00
validate_conversion.cpp Add validation pass for conversion instructions 2017-10-20 13:51:24 -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 Add validation for OpBranchConditional 2017-10-31 12:05:20 -04:00
validate_instruction.cpp Turn all function static non-POD variables into global POD variables 2017-10-25 15:44:19 -04:00
validate_layout.cpp validator: OpModuleProcessed allowed in layout section 7c 2017-09-07 17:45:51 -04:00
validate_logicals.cpp Validator: fix logicals pass for OpSelect pointers 2017-09-21 16:12:14 -04:00
validate_type_unique.cpp Reenable validate type unique pass 2017-10-12 15:46:06 -04:00
validate.cpp Add validation pass for conversion instructions 2017-10-20 13:51:24 -04:00
validate.h Add validation pass for conversion instructions 2017-10-20 13:51:24 -04:00