SPIRV-Tools/test
greg-lunarg 5ea7099374 Add two new simplifications. (#2984)
Implements the following simplifications:

(a - b) + b => a
(a * b) + (a * c) => a * (b + c)

Also adds logic to simplification to handle rules that create new operations
that might need simplification, such as the second rule above.

Only perform the second simplification if the multiplies have the add as their
only use. Otherwise this is a deoptimization of size and performance.
2019-10-28 08:19:38 -07:00
..
fuzz spirv-fuzz: Transformation to extract from a composite object (#2991) 2019-10-28 09:33:08 +00:00
fuzzers Add fuzzer for spirv-dis call path (#2977) 2019-10-17 12:30:47 -04:00
link Remove useless semi-colons (#2789) 2019-08-12 08:52:39 -04:00
opt Add two new simplifications. (#2984) 2019-10-28 08:19:38 -07:00
reduce reduce: add large tests and fix (#2947) 2019-10-10 17:12:42 +01:00
scripts Remove unneeded future imports (#2739) 2019-07-24 15:29:38 -04:00
tools SPIRV-Tools support for SPIR-V 1.5 (#2865) 2019-09-13 14:59:02 -04:00
util Support constant-folding UConvert and SConvert (#2960) 2019-10-16 16:29:55 -04:00
val Check that derivatives operate on 32-bit values (#2983) 2019-10-18 09:02:25 -04:00
assembly_context_test.cpp Add descriptor array scalar replacement (#2742) 2019-08-08 10:53:19 -04:00
assembly_format_test.cpp Assembler: Can't set an ID in instruction without result ID (#2852) 2019-09-11 13:15:25 -04:00
binary_destroy_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
binary_endianness_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
binary_header_get_test.cpp Update SPIR-V binary header test for SPIR-V 1.5 (#2967) 2019-10-15 18:29:10 +01:00
binary_parse_test.cpp Add descriptor array scalar replacement (#2742) 2019-08-08 10:53:19 -04:00
binary_strnlen_s_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
binary_to_text_test.cpp Remove use of deprecated googletest macro (#2286) 2019-01-29 18:56:52 -05:00
binary_to_text.literal_test.cpp Remove use of deprecated googletest macro (#2286) 2019-01-29 18:56:52 -05:00
c_interface_test.cpp Assembler: Can't set an ID in instruction without result ID (#2852) 2019-09-11 13:15:25 -04:00
CMakeLists.txt Add "split block" transformation. (#2633) 2019-05-29 16:42:46 +01:00
comment_test.cpp Add descriptor array scalar replacement (#2742) 2019-08-08 10:53:19 -04:00
cpp_interface_test.cpp [val] Fixup id name output (#2158) 2018-12-03 17:01:30 -05:00
diagnostic_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
enum_set_test.cpp Remove use of deprecated googletest macro (#2286) 2019-01-29 18:56:52 -05:00
enum_string_mapping_test.cpp Remove use of deprecated googletest macro (#2286) 2019-01-29 18:56:52 -05:00
ext_inst.debuginfo_test.cpp Add descriptor array scalar replacement (#2742) 2019-08-08 10:53:19 -04:00
ext_inst.glsl_test.cpp Remove use of deprecated googletest macro (#2286) 2019-01-29 18:56:52 -05:00
ext_inst.opencl_test.cpp Add descriptor array scalar replacement (#2742) 2019-08-08 10:53:19 -04:00
fix_word_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
generator_magic_number_test.cpp Remove use of deprecated googletest macro (#2286) 2019-01-29 18:56:52 -05:00
hex_float_test.cpp Remove use of deprecated googletest macro (#2286) 2019-01-29 18:56:52 -05:00
immediate_int_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
libspirv_macros_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
log_test.cpp Remove source/message.h (#1838) 2018-08-14 15:41:21 -04:00
name_mapper_test.cpp Remove use of deprecated googletest macro (#2286) 2019-01-29 18:56:52 -05:00
named_id_test.cpp Remove use of deprecated googletest macro (#2286) 2019-01-29 18:56:52 -05:00
opcode_make_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
opcode_require_capabilities_test.cpp Remove use of deprecated googletest macro (#2286) 2019-01-29 18:56:52 -05:00
opcode_split_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
opcode_table_get_test.cpp Remove use of deprecated googletest macro (#2286) 2019-01-29 18:56:52 -05:00
operand_capabilities_test.cpp SPIRV-Tools support for SPIR-V 1.5 (#2865) 2019-09-13 14:59:02 -04:00
operand_pattern_test.cpp Remove use of deprecated googletest macro (#2286) 2019-01-29 18:56:52 -05:00
operand_test.cpp Remove use of deprecated googletest macro (#2286) 2019-01-29 18:56:52 -05:00
operand-class-test-coverage.csv Fix operand class test coverage table. 2016-09-23 11:58:25 -04:00
parse_number_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
pch_test.cpp Enable precompiled headers for spirv-tools(-shared) and some unit tests (#2026) 2018-11-06 09:26:23 -05:00
pch_test.h Enable precompiled headers for spirv-tools(-shared) and some unit tests (#2026) 2018-11-06 09:26:23 -05:00
preserve_numeric_ids_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
software_version_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
string_utils_test.cpp Move utils/ to spvtools::utils 2018-07-06 16:47:46 -04:00
target_env_test.cpp Remove use of deprecated googletest macro (#2286) 2019-01-29 18:56:52 -05:00
test_fixture.h Fix leaks in tests (#2295) 2019-01-16 16:53:10 -05:00
text_advance_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
text_destroy_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
text_literal_test.cpp Remove use of deprecated googletest macro (#2286) 2019-01-29 18:56:52 -05:00
text_start_new_inst_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
text_to_binary_test.cpp Remove use of deprecated googletest macro (#2286) 2019-01-29 18:56:52 -05:00
text_to_binary.annotation_test.cpp Add descriptor array scalar replacement (#2742) 2019-08-08 10:53:19 -04:00
text_to_binary.barrier_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
text_to_binary.composite_test.cpp Support SPIR-V 1.4 (#2550) 2019-05-07 12:27:18 -04:00
text_to_binary.constant_test.cpp Assembler: Can't set an ID in instruction without result ID (#2852) 2019-09-11 13:15:25 -04:00
text_to_binary.control_flow_test.cpp Assembler: Can't set an ID in instruction without result ID (#2852) 2019-09-11 13:15:25 -04:00
text_to_binary.debug_test.cpp Add descriptor array scalar replacement (#2742) 2019-08-08 10:53:19 -04:00
text_to_binary.device_side_enqueue_test.cpp Remove use of deprecated googletest macro (#2286) 2019-01-29 18:56:52 -05:00
text_to_binary.extension_test.cpp SPIRV-Tools support for SPIR-V 1.5 (#2865) 2019-09-13 14:59:02 -04:00
text_to_binary.function_test.cpp Remove use of deprecated googletest macro (#2286) 2019-01-29 18:56:52 -05:00
text_to_binary.group_test.cpp Remove use of deprecated googletest macro (#2286) 2019-01-29 18:56:52 -05:00
text_to_binary.image_test.cpp Remove use of deprecated googletest macro (#2286) 2019-01-29 18:56:52 -05:00
text_to_binary.literal_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
text_to_binary.memory_test.cpp SPIRV-Tools support for SPIR-V 1.5 (#2865) 2019-09-13 14:59:02 -04:00
text_to_binary.misc_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
text_to_binary.mode_setting_test.cpp Add descriptor array scalar replacement (#2742) 2019-08-08 10:53:19 -04:00
text_to_binary.pipe_storage_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
text_to_binary.reserved_sampling_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
text_to_binary.subgroup_dispatch_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
text_to_binary.type_declaration_test.cpp Remove use of deprecated googletest macro (#2286) 2019-01-29 18:56:52 -05:00
text_word_get_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
timer_test.cpp Remove extra semis (#2717) 2019-07-08 15:07:36 -04:00
unit_spirv.cpp Add descriptor array scalar replacement (#2742) 2019-08-08 10:53:19 -04:00
unit_spirv.h Add descriptor array scalar replacement (#2742) 2019-08-08 10:53:19 -04:00