SPIRV-Tools/test
Steven Perron 1254335d13
Don't unswitch the latch block. (#2205)
Loop unswitching is unswitching the conditional branch that creates the
back-edge. In the version of the loop, where the bachedge is not taken,
there is no back-edge. This is what causes the validator to complain.

The solution I will go with will be to now unswitch a condition with a
back-edge. At this time we do not now if loop unswitching is used. We do
not include it in the optimization sets provided, nor is it used in
glslang's set. When there are opportunities and no breaks from the loop,
the loop with either be a single iteration loop, or an infinite loop.
There is no performance advantage to performing loop unswitching in
either of those cases. If there is a break, maintaining structured
control flow will be tricky. Unless we see a clear advantage to handling
these case, I would go with the safer simpler solution.

Fixes #2201.
2018-12-18 18:15:00 +00:00
..
comp Remove SetContextMessageConsumer from markv_codec_test (#1926) 2018-09-26 10:33:16 -07:00
fuzzers Add fuzzer for spvBinaryParser (#2045) 2018-11-14 10:30:20 -05:00
link Fixup readabilty/inheritance warnings (#1805) 2018-08-07 09:10:03 -04:00
opt Don't unswitch the latch block. (#2205) 2018-12-18 18:15:00 +00:00
reduce Added test related to access chains, to be extended when issue 2183 is addressed. (#2192) 2018-12-12 09:06:54 -05:00
scripts Added --compact-ids to /tools/opt 2017-04-20 10:54:39 -04:00
stats Reduce number of test targets (#2024) 2018-11-01 10:19:37 -04:00
tools Reduce number of test targets (#2024) 2018-11-01 10:19:37 -04:00
util Reduce number of test targets (#2024) 2018-11-01 10:19:37 -04:00
val Disable checking that AtomicStorage capability is present (#2193) 2018-12-11 14:19:44 -05:00
assembly_context_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
assembly_format_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -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 Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
binary_parse_test.cpp Remove use of SetContextMessageConsumer from binary_parse_test (#1925) 2018-09-26 13:17:36 -07:00
binary_strnlen_s_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
binary_to_text_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
binary_to_text.literal_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
bit_stream.cpp Move bit_stream, move_to_front and huffman_codec. (#1833) 2018-08-14 09:52:05 -04:00
c_interface_test.cpp Remove source/message.h (#1838) 2018-08-14 15:41:21 -04:00
CMakeLists.txt Initial commit for spirv-reduce. (#2056) 2018-11-21 14:03:09 -05:00
comment_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -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 Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
enum_string_mapping_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
ext_inst.debuginfo_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
ext_inst.glsl_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
ext_inst.opencl_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
fix_word_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
generator_magic_number_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
hex_float_test.cpp Fix sign mismatch warning 2018-08-31 17:51:43 -04:00
huffman_codec.cpp Move bit_stream, move_to_front and huffman_codec. (#1833) 2018-08-14 09:52:05 -04: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
move_to_front_test.cpp Move bit_stream, move_to_front and huffman_codec. (#1833) 2018-08-14 09:52:05 -04:00
name_mapper_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
named_id_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
opcode_make_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
opcode_require_capabilities_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
opcode_split_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
opcode_table_get_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
operand_capabilities_test.cpp Add support for nv-raytracing-final (#2010) 2018-10-25 14:07:46 -04:00
operand_pattern_test.cpp Update Dim capabilities 2018-09-06 13:41:31 -04:00
operand_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04: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 Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
test_fixture.h Cleanup includes. (#1795) 2018-08-03 15:06:09 -04: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 source/message.h (#1838) 2018-08-14 15:41:21 -04:00
text_start_new_inst_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
text_to_binary_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
text_to_binary.annotation_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
text_to_binary.barrier_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
text_to_binary.constant_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
text_to_binary.control_flow_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
text_to_binary.debug_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
text_to_binary.device_side_enqueue_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
text_to_binary.extension_test.cpp Update Dim capabilities 2018-09-06 13:41:31 -04:00
text_to_binary.function_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
text_to_binary.group_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
text_to_binary.image_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
text_to_binary.literal_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
text_to_binary.memory_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -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 Cleanup includes. (#1795) 2018-08-03 15:06:09 -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 Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
text_word_get_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
timer_test.cpp Move utils/ to spvtools::utils 2018-07-06 16:47:46 -04:00
unit_spirv.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
unit_spirv.h Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00