SPIRV-Tools/source
greg-lunarg c37388f1ad Add passes to propagate and eliminate redundant line instructions (#2027). (#2039)
These are bookend passes designed to help preserve line information
across passes which delete, move and clone instructions. The propagation
pass attaches a debug line instruction to every instruction based on
SPIR-V line propagation rules. It should be performed before optimization.
The redundant line elimination pass eliminates all line instructions
which match the previous line instruction. This pass should be performed
at the end of optimization to reduce physical SPIR-V file size.

Fixes #2027.
2018-11-15 14:06:17 -05:00
..
comp Use MakeUnique. (#1837) 2018-08-14 15:01:50 -04:00
link Move make_unique to source/util. (#1836) 2018-08-14 12:44:54 -04:00
opt Add passes to propagate and eliminate redundant line instructions (#2027). (#2039) 2018-11-15 14:06:17 -05:00
util Add option for the max id bound. (#1870) 2018-09-10 11:49:41 -04:00
val Add passes to propagate and eliminate redundant line instructions (#2027). (#2039) 2018-11-15 14:06:17 -05:00
assembly_grammar.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
assembly_grammar.h Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
binary.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04: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 Rename PCH macro to spvtools_pch to avoid conflicts with other projects. Also add pch to test/opt. (#2034) 2018-11-07 09:15:04 -05: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 Remove asserts around environment determination. (#2040) 2018-11-12 14:24:47 -05: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
id_descriptor.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
id_descriptor.h Rewrite include guards (#1793) 2018-08-03 08:05:33 -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 option for the max id bound. (#1870) 2018-09-10 11:49:41 -04: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 Add support for nv-raytracing-final (#2010) 2018-10-25 14:07:46 -04:00
opcode.h Consider atomics that load when analyzing live stores in ADCE (#1956) (#1958) 2018-10-12 08:46:35 -04:00
operand.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
operand.h Cleanup includes. (#1795) 2018-08-03 15:06:09 -04: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_optimizer_options.cpp Add explicit void parameter in libspirv.h again (#2032) 2018-11-06 11:12:26 -05:00
spirv_optimizer_options.h Add option for the max id bound. (#1870) 2018-09-10 11:49:41 -04:00
spirv_target_env.cpp Remove asserts around environment determination. (#2040) 2018-11-12 14:24:47 -05:00
spirv_target_env.h allow atomics on Function pointers for OpenCL (#1955) 2018-10-09 11:33:01 -04:00
spirv_validator_options.cpp Validate the id bound. (#2031) 2018-11-06 11:30:19 -05:00
spirv_validator_options.h Validate the id bound. (#2031) 2018-11-06 11:30:19 -05:00
table.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
table.h Remove source/message.h (#1838) 2018-08-14 15:41:21 -04:00
text_handler.cpp Fix readbility/braces warnings (#1804) 2018-08-07 09:09:47 -04:00
text_handler.h Remove source/message.h (#1838) 2018-08-14 15:41:21 -04:00
text.cpp Remove source/message.h (#1838) 2018-08-14 15:41:21 -04:00
text.h Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00