SPIRV-Tools/source/fuzz
Alastair Donaldson 1a89ac8b28
Transformation and fuzzer pass to add dead continues (#2758)
Similar to the existing 'add dead breaks' pass, this adds a pass to
add dead continues to blocks in loops where such a transformation is
viable.  Various functionality common to this new pass and 'add dead
breaks' has been factored into 'fuzzer_util', and some small
improvements to 'add dead breaks' that were identified while reviewing
that code again have been applied.

Fixes #2719.
2019-07-25 13:50:33 +01:00
..
protobufs Transformation and fuzzer pass to add dead continues (#2758) 2019-07-25 13:50:33 +01:00
CMakeLists.txt Transformation and fuzzer pass to add dead continues (#2758) 2019-07-25 13:50:33 +01:00
fact_manager.cpp Warn when input facts are invalid. (#2699) 2019-06-26 16:40:19 +01:00
fact_manager.h Warn when input facts are invalid. (#2699) 2019-06-26 16:40:19 +01:00
fuzzer_context.cpp Transformation and fuzzer pass to add dead continues (#2758) 2019-07-25 13:50:33 +01:00
fuzzer_context.h Transformation and fuzzer pass to add dead continues (#2758) 2019-07-25 13:50:33 +01:00
fuzzer_pass_add_dead_breaks.cpp Transformation and fuzzer pass to add dead continues (#2758) 2019-07-25 13:50:33 +01:00
fuzzer_pass_add_dead_breaks.h Add fuzzer pass to add dead breaks. (#2654) 2019-06-05 08:02:16 +01:00
fuzzer_pass_add_dead_continues.cpp Transformation and fuzzer pass to add dead continues (#2758) 2019-07-25 13:50:33 +01:00
fuzzer_pass_add_dead_continues.h Transformation and fuzzer pass to add dead continues (#2758) 2019-07-25 13:50:33 +01:00
fuzzer_pass_add_useful_constructs.cpp Refactor fuzzer transformations (#2694) 2019-06-25 20:49:46 +01:00
fuzzer_pass_add_useful_constructs.h Add fuzzer pass that adds useful constructs to a module (#2647) 2019-06-04 14:55:00 +01:00
fuzzer_pass_obfuscate_constants.cpp Refactor fuzzer transformations (#2694) 2019-06-25 20:49:46 +01:00
fuzzer_pass_obfuscate_constants.h Add fuzzer pass to obfuscate constants. (#2671) 2019-06-18 18:41:08 +01:00
fuzzer_pass_permute_blocks.cpp Refactor fuzzer transformations (#2694) 2019-06-25 20:49:46 +01:00
fuzzer_pass_permute_blocks.h Add spirv-fuzz pass to permute blocks. (#2642) 2019-05-31 09:59:06 +01:00
fuzzer_pass_split_blocks.cpp Refactor fuzzer transformations (#2694) 2019-06-25 20:49:46 +01:00
fuzzer_pass_split_blocks.h Add "split block" transformation. (#2633) 2019-05-29 16:42:46 +01:00
fuzzer_pass.cpp Add library for spirv-fuzz (#2618) 2019-05-27 14:34:55 +01:00
fuzzer_pass.h Add library for spirv-fuzz (#2618) 2019-05-27 14:34:55 +01:00
fuzzer_util.cpp Transformation and fuzzer pass to add dead continues (#2758) 2019-07-25 13:50:33 +01:00
fuzzer_util.h Transformation and fuzzer pass to add dead continues (#2758) 2019-07-25 13:50:33 +01:00
fuzzer.cpp Transformation and fuzzer pass to add dead continues (#2758) 2019-07-25 13:50:33 +01:00
fuzzer.h Shrinker for spirv-fuzz (#2708) 2019-07-07 08:55:30 +01:00
id_use_descriptor.cpp Add transformation to replace a boolean constant with a numeric comparison (#2659) 2019-06-06 22:22:35 +01:00
id_use_descriptor.h Add transformation to replace a boolean constant with a numeric comparison (#2659) 2019-06-06 22:22:35 +01:00
pseudo_random_generator.cpp Add "split block" transformation. (#2633) 2019-05-29 16:42:46 +01:00
pseudo_random_generator.h Add library for spirv-fuzz (#2618) 2019-05-27 14:34:55 +01:00
random_generator.cpp Add library for spirv-fuzz (#2618) 2019-05-27 14:34:55 +01:00
random_generator.h Add library for spirv-fuzz (#2618) 2019-05-27 14:34:55 +01:00
replayer.cpp Warn when input facts are invalid. (#2699) 2019-06-26 16:40:19 +01:00
replayer.h Warn when input facts are invalid. (#2699) 2019-06-26 16:40:19 +01:00
shrinker.cpp Shrinker for spirv-fuzz (#2708) 2019-07-07 08:55:30 +01:00
shrinker.h Shrinker for spirv-fuzz (#2708) 2019-07-07 08:55:30 +01:00
transformation_add_constant_boolean.cpp Refactor fuzzer transformations (#2694) 2019-06-25 20:49:46 +01:00
transformation_add_constant_boolean.h Refactor fuzzer transformations (#2694) 2019-06-25 20:49:46 +01:00
transformation_add_constant_scalar.cpp Refactor fuzzer transformations (#2694) 2019-06-25 20:49:46 +01:00
transformation_add_constant_scalar.h Refactor fuzzer transformations (#2694) 2019-06-25 20:49:46 +01:00
transformation_add_dead_break.cpp Transformation and fuzzer pass to add dead continues (#2758) 2019-07-25 13:50:33 +01:00
transformation_add_dead_break.h Transformation and fuzzer pass to add dead continues (#2758) 2019-07-25 13:50:33 +01:00
transformation_add_dead_continue.cpp Transformation and fuzzer pass to add dead continues (#2758) 2019-07-25 13:50:33 +01:00
transformation_add_dead_continue.h Transformation and fuzzer pass to add dead continues (#2758) 2019-07-25 13:50:33 +01:00
transformation_add_type_boolean.cpp Refactor fuzzer transformations (#2694) 2019-06-25 20:49:46 +01:00
transformation_add_type_boolean.h Refactor fuzzer transformations (#2694) 2019-06-25 20:49:46 +01:00
transformation_add_type_float.cpp Refactor fuzzer transformations (#2694) 2019-06-25 20:49:46 +01:00
transformation_add_type_float.h Refactor fuzzer transformations (#2694) 2019-06-25 20:49:46 +01:00
transformation_add_type_int.cpp Refactor fuzzer transformations (#2694) 2019-06-25 20:49:46 +01:00
transformation_add_type_int.h Refactor fuzzer transformations (#2694) 2019-06-25 20:49:46 +01:00
transformation_add_type_pointer.cpp Refactor fuzzer transformations (#2694) 2019-06-25 20:49:46 +01:00
transformation_add_type_pointer.h Refactor fuzzer transformations (#2694) 2019-06-25 20:49:46 +01:00
transformation_move_block_down.cpp Disallow movement of unreachable blocks. (#2700) 2019-06-26 15:32:25 +01:00
transformation_move_block_down.h Disallow movement of unreachable blocks. (#2700) 2019-06-26 15:32:25 +01:00
transformation_replace_boolean_constant_with_constant_binary.cpp Refactor fuzzer transformations (#2694) 2019-06-25 20:49:46 +01:00
transformation_replace_boolean_constant_with_constant_binary.h Refactor fuzzer transformations (#2694) 2019-06-25 20:49:46 +01:00
transformation_replace_constant_with_uniform.cpp Refactor fuzzer transformations (#2694) 2019-06-25 20:49:46 +01:00
transformation_replace_constant_with_uniform.h Refactor fuzzer transformations (#2694) 2019-06-25 20:49:46 +01:00
transformation_split_block.cpp Refactor fuzzer transformations (#2694) 2019-06-25 20:49:46 +01:00
transformation_split_block.h Refactor fuzzer transformations (#2694) 2019-06-25 20:49:46 +01:00
transformation.cpp Transformation and fuzzer pass to add dead continues (#2758) 2019-07-25 13:50:33 +01:00
transformation.h Refactor fuzzer transformations (#2694) 2019-06-25 20:49:46 +01:00
uniform_buffer_element_descriptor.cpp Represent uniform facts via descriptor set and binding. (#2681) 2019-06-19 20:45:14 +01:00
uniform_buffer_element_descriptor.h Represent uniform facts via descriptor set and binding. (#2681) 2019-06-19 20:45:14 +01:00