SPIRV-Tools/test/fuzz
Alastair Donaldson 9c4481419e
spirv-fuzz: Allow inapplicable transformations to be ignored (#4407)
spirv-fuzz features transformations that should be applicable by
construction. Assertions are used to detect when such transformations
turn out to be inapplicable. Failures of such assertions indicate bugs
in the fuzzer. However, when using the fuzzer at scale (e.g. in
ClusterFuzz) reports of these assertion failures create noise, and
cause the fuzzer to exit early. This change adds an option whereby
inapplicable transformations can be ignored. This reduces noise and
allows fuzzing to continue even when a transformation that should be
applicable but is not has been erroneously created.
2021-07-28 22:59:37 +01:00
..
fact_manager spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
available_instructions_test.cpp spirv-fuzz: Manage available instructions efficiently (#4177) 2021-03-20 18:51:18 +00:00
call_graph_test.cpp spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
CMakeLists.txt spirv-fuzz: TransformationWrapVectorSynonym that rewrites scalar operations using vectors (#4376) 2021-07-20 11:01:20 +01:00
comparator_deep_blocks_first_test.cpp spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
data_synonym_transformation_test.cpp spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
equivalence_relation_test.cpp spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
fuzz_test_util.cpp spirv-fuzz: Cover protobuf message creation in tests (#4285) 2021-05-22 17:45:09 +01:00
fuzz_test_util.h spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
fuzzer_pass_add_opphi_synonyms_test.cpp spirv-fuzz: Allow inapplicable transformations to be ignored (#4407) 2021-07-28 22:59:37 +01:00
fuzzer_pass_construct_composites_test.cpp spirv-fuzz: Allow inapplicable transformations to be ignored (#4407) 2021-07-28 22:59:37 +01:00
fuzzer_pass_donate_modules_test.cpp spirv-fuzz: Allow inapplicable transformations to be ignored (#4407) 2021-07-28 22:59:37 +01:00
fuzzer_pass_outline_functions_test.cpp spirv-fuzz: Allow inapplicable transformations to be ignored (#4407) 2021-07-28 22:59:37 +01:00
fuzzer_pass_test.cpp spirv-fuzz: Allow inapplicable transformations to be ignored (#4407) 2021-07-28 22:59:37 +01:00
fuzzer_replayer_test.cpp spirv-fuzz: Allow inapplicable transformations to be ignored (#4407) 2021-07-28 22:59:37 +01:00
fuzzer_shrinker_test.cpp spirv-fuzz: Allow inapplicable transformations to be ignored (#4407) 2021-07-28 22:59:37 +01:00
fuzzerutil_test.cpp spirv-fuzz: Tighten checks on null and undef pointers (#4367) 2021-07-22 21:34:11 +01:00
instruction_descriptor_test.cpp spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
replayer_test.cpp spirv-fuzz: Fix off-by-one error in replayer (#3982) 2020-10-22 20:07:09 +01:00
shrinker_test.cpp spirv-fuzz: Allow inapplicable transformations to be ignored (#4407) 2021-07-28 22:59:37 +01:00
transformation_access_chain_test.cpp spirv-fuzz: Tighten checks on null and undef pointers (#4367) 2021-07-22 21:34:11 +01:00
transformation_add_bit_instruction_synonym_test.cpp spirv-fuzz: Improve TransformationAddBitInstructionSynonym to check integer signedness (#4312) 2021-06-09 19:56:56 +01:00
transformation_add_constant_boolean_test.cpp spirv-fuzz: Avoid invalidating analyses in various transformations (#4205) 2021-03-20 22:48:02 +00:00
transformation_add_constant_composite_test.cpp spirv-fuzz: Avoid invalidating analyses in various transformations (#4205) 2021-03-20 22:48:02 +00:00
transformation_add_constant_null_test.cpp spirv-fuzz: Avoid invalidating analyses in various transformations (#4205) 2021-03-20 22:48:02 +00:00
transformation_add_constant_scalar_test.cpp spirv-fuzz: Enhance test to improve lines covered (#4289) 2021-05-24 14:24:11 +01:00
transformation_add_copy_memory_test.cpp spirv-fuzz: Tighten checks on null and undef pointers (#4367) 2021-07-22 21:34:11 +01:00
transformation_add_dead_block_test.cpp Spirv-fuzz: Achieve coverage of TransformationAddDeadBlock test (#4306) 2021-06-02 17:16:44 +01:00
transformation_add_dead_break_test.cpp spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
transformation_add_dead_continue_test.cpp spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
transformation_add_early_terminator_wrapper_test.cpp spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
transformation_add_function_test.cpp spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
transformation_add_global_undef_test.cpp spirv-fuzz: Avoid invalidating analyses in various transformations (#4205) 2021-03-20 22:48:02 +00:00
transformation_add_global_variable_test.cpp spirv-fuzz: Avoid invalidating analyses in various transformations (#4205) 2021-03-20 22:48:02 +00:00
transformation_add_image_sample_unused_components_test.cpp spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
transformation_add_local_variable_test.cpp spirv-fuzz: Avoid invalidating analyses in various transformations (#4205) 2021-03-20 22:48:02 +00:00
transformation_add_loop_preheader_test.cpp spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
transformation_add_loop_to_create_int_constant_synonym_test.cpp spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
transformation_add_no_contraction_decoration_test.cpp spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
transformation_add_opphi_synonym_test.cpp spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
transformation_add_parameter_test.cpp spirv-fuzz: Added test to increase coverage of the add_parameter transformation (#4305) 2021-06-02 17:44:42 +01:00
transformation_add_relaxed_decoration_test.cpp spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
transformation_add_synonym_test.cpp spirv-fuzz: Tighten checks on null and undef pointers (#4367) 2021-07-22 21:34:11 +01:00
transformation_add_type_array_test.cpp spirv-fuzz: Improve transformation test oracles (#4207) 2021-03-23 13:31:14 +00:00
transformation_add_type_boolean_test.cpp spirv-fuzz: Improve transformation test oracles (#4207) 2021-03-23 13:31:14 +00:00
transformation_add_type_float_test.cpp spirv-fuzz: Added extra tests for AddTypeFloat and AddTypeInt transformations (#4292) 2021-05-27 08:36:39 +01:00
transformation_add_type_function_test.cpp spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
transformation_add_type_int_test.cpp spirv-fuzz: Added extra tests for AddTypeFloat and AddTypeInt transformations (#4292) 2021-05-27 08:36:39 +01:00
transformation_add_type_matrix_test.cpp spirv-fuzz: Improve transformation test oracles (#4207) 2021-03-23 13:31:14 +00:00
transformation_add_type_pointer_test.cpp spirv-fuzz: Improve transformation test oracles (#4207) 2021-03-23 13:31:14 +00:00
transformation_add_type_struct_test.cpp spirv-fuzz: Improve transformation test oracles (#4207) 2021-03-23 13:31:14 +00:00
transformation_add_type_vector_test.cpp spirv-fuzz: Improve transformation test oracles (#4207) 2021-03-23 13:31:14 +00:00
transformation_adjust_branch_weights_test.cpp spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
transformation_composite_construct_test.cpp spirv-fuzz: Increase test coverage of TransformationCompositeConstruct (#4301) 2021-05-26 21:31:55 +01:00
transformation_composite_extract_test.cpp spirv-fuzz: Improve transformation test oracles (#4207) 2021-03-23 13:31:14 +00:00
transformation_composite_insert_test.cpp spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
transformation_compute_data_synonym_fact_closure_test.cpp spirv-fuzz: Fix to TransformationDuplicateRegionWithSelection (#3941) 2020-10-20 18:59:53 +01:00
transformation_duplicate_region_with_selection_test.cpp spirv-fuzz: Fix OpPhi handling in DuplicateRegionWithSelection (#4065) 2020-12-17 11:45:52 +00:00
transformation_equation_instruction_test.cpp spirv-fuzz: Improve transformation test oracles (#4207) 2021-03-23 13:31:14 +00:00
transformation_expand_vector_reduction_test.cpp spirv-fuzz: Add expand vector reduction transformation (#3869) 2020-10-23 14:59:08 +01:00
transformation_flatten_conditional_branch_test.cpp spirv-fuzz: Handle Vulkan SPIR-V versions (#4156) 2021-03-03 22:29:57 +00:00
transformation_function_call_test.cpp spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
transformation_inline_function_test.cpp spirv-fuzz: Take care of OpPhi instructions when inlining (#3939) 2020-10-19 09:41:01 +01:00
transformation_invert_comparison_operator_test.cpp spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
transformation_load_test.cpp spirv-fuzz: Tighten checks on null and undef pointers (#4367) 2021-07-22 21:34:11 +01:00
transformation_make_vector_operation_dynamic_test.cpp spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
transformation_merge_blocks_test.cpp spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
transformation_merge_function_returns_test.cpp spirv-fuzz: Respect control flow rules when merging returns (#4279) 2021-05-12 10:45:58 -04:00
transformation_move_block_down_test.cpp spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
transformation_move_instruction_down_test.cpp spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
transformation_mutate_pointer_test.cpp spirv-fuzz: Tighten checks on null and undef pointers (#4367) 2021-07-22 21:34:11 +01:00
transformation_outline_function_test.cpp spirv-fuzz: Fix OutlineFunction in presence of unreachable blocks (#4308) 2021-06-01 11:44:21 +01:00
transformation_permute_function_parameters_test.cpp spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
transformation_permute_phi_operands_test.cpp spirv-fuzz: Fix def-use update in PermutePhiOperands (#4309) 2021-06-01 08:37:45 +01:00
transformation_propagate_instruction_down_test.cpp spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
transformation_propagate_instruction_up_test.cpp spirv-fuzz: Skip OpTypeSampledImage when propagating up (#3976) 2020-10-22 12:07:17 +01:00
transformation_push_id_through_variable_test.cpp spirv-fuzz: Tighten checks on null and undef pointers (#4367) 2021-07-22 21:34:11 +01:00
transformation_record_synonymous_constants_test.cpp spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
transformation_replace_add_sub_mul_with_carrying_extended_test.cpp spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
transformation_replace_boolean_constant_with_constant_binary_test.cpp spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
transformation_replace_branch_from_dead_block_with_exit_test.cpp spirv-fuzz: Fix the bug in TransformationReplaceBranchFromDeadBlockWithExit (#4140) 2021-03-05 14:27:37 +00:00
transformation_replace_constant_with_uniform_test.cpp spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
transformation_replace_copy_memory_with_load_store_test.cpp spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
transformation_replace_copy_object_with_store_load_test.cpp spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
transformation_replace_id_with_synonym_test.cpp spirv-fuzz: Support atomic operations opcode (#4348) 2021-07-20 10:03:58 +01:00
transformation_replace_irrelevant_id_test.cpp spirv-fuzz: Don't replace irrelevant indices in OpAccessChain (#3988) 2020-10-23 14:52:22 +01:00
transformation_replace_linear_algebra_instruction_test.cpp spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
transformation_replace_load_store_with_copy_memory_test.cpp spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
transformation_replace_opphi_id_from_dead_predecessor_test.cpp spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
transformation_replace_opselect_with_conditional_branch_test.cpp spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
transformation_replace_parameter_with_global_test.cpp spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
transformation_replace_params_with_struct_test.cpp spirv-fuzz: Avoid the type manager when looking for struct types (#3963) 2020-10-21 18:28:05 +01:00
transformation_set_function_control_test.cpp spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
transformation_set_loop_control_test.cpp spirv-fuzz: Improve transformation test oracles (#4207) 2021-03-23 13:31:14 +00:00
transformation_set_memory_operands_mask_test.cpp spirv-fuzz: Handle Vulkan SPIR-V versions (#4156) 2021-03-03 22:29:57 +00:00
transformation_set_selection_control_test.cpp spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
transformation_split_block_test.cpp spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
transformation_store_test.cpp spirv-fuzz: Tighten checks on null and undef pointers (#4367) 2021-07-22 21:34:11 +01:00
transformation_swap_commutable_operands_test.cpp spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
transformation_swap_conditional_branch_operands_test.cpp spirv-fuzz: Improve transformation test oracles (#4207) 2021-03-23 13:31:14 +00:00
transformation_swap_function_variables_test.cpp spirv-fuzz: Enhancing permute function variables and its testing (#4295) 2021-05-26 00:41:31 +01:00
transformation_swap_two_functions_test.cpp spirv-fuzz: Check updated analyses in transformation tests (#4266) 2021-07-05 22:09:43 +01:00
transformation_toggle_access_chain_instruction_test.cpp spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
transformation_vector_shuffle_test.cpp spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
transformation_wrap_early_terminator_in_function_test.cpp spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
transformation_wrap_region_in_selection_test.cpp spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00
transformation_wrap_vector_synonym_test.cpp spirv-fuzz: TransformationWrapVectorSynonym that rewrites scalar operations using vectors (#4376) 2021-07-20 11:01:20 +01:00
uniform_buffer_element_descriptor_test.cpp spirv-fuzz: Fix to TransformationInlineFunction (#3913) 2020-10-16 22:58:09 +01:00