mirror of
https://github.com/KhronosGroup/SPIRV-Tools
synced 2024-11-22 19:50:05 +00:00
7ee8f443ea
The implementation of these passes had overlooked the fact that adding a new edge to a control flow graph can change dominance information. Adding a dead break/continue risks causing uses to no longer be dominated by their definitions. This change introduces various tests to expose such scenarios, and augments the preconditions for these transformations with checks to guard against the situation. |
||
---|---|---|
.. | ||
CMakeLists.txt | ||
fact_manager_test.cpp | ||
fuzz_test_util.cpp | ||
fuzz_test_util.h | ||
fuzzer_pass_add_useful_constructs_test.cpp | ||
fuzzer_replayer_test.cpp | ||
fuzzer_shrinker_test.cpp | ||
transformation_add_constant_boolean_test.cpp | ||
transformation_add_constant_scalar_test.cpp | ||
transformation_add_dead_break_test.cpp | ||
transformation_add_dead_continue_test.cpp | ||
transformation_add_type_boolean_test.cpp | ||
transformation_add_type_float_test.cpp | ||
transformation_add_type_int_test.cpp | ||
transformation_add_type_pointer_test.cpp | ||
transformation_copy_object_test.cpp | ||
transformation_move_block_down_test.cpp | ||
transformation_replace_boolean_constant_with_constant_binary_test.cpp | ||
transformation_replace_constant_with_uniform_test.cpp | ||
transformation_split_block_test.cpp | ||
uniform_buffer_element_descriptor_test.cpp |