SPIRV-Tools/test/fuzz
Stefano Milizia 3daabd3212
spirv-fuzz: Transformation to replace the use of an irrelevant id (#3697)
A transformation that replaces the use of an irrelevant id with
another id of the same type.

The related fuzzer pass, for every use of an irrelevant id,
checks whether the id can be replaced in that use by another
id of the same type and randomly decides whether to replace
it.

Fixes #3503.
2020-09-01 16:28:04 +01:00
..
call_graph_test.cpp spirv-fuzz: Compute interprocedural loop nesting depth of blocks (#3753) 2020-09-01 12:23:58 +01:00
CMakeLists.txt spirv-fuzz: Transformation to replace the use of an irrelevant id (#3697) 2020-09-01 16:28:04 +01:00
data_synonym_transformation_test.cpp spirv-fuzz: Make handling of synonym facts more efficient (#3301) 2020-04-20 19:02:49 +01:00
equivalence_relation_test.cpp spirv-fuzz: Improve the handling of equation facts (#3281) 2020-04-07 17:38:27 +01:00
fact_manager_test.cpp spirv-fuzz: Transformation to replace the use of an irrelevant id (#3697) 2020-09-01 16:28:04 +01:00
fuzz_test_util.cpp spirv-fuzz: add dead blocks (#3135) 2020-01-13 22:04:01 +00:00
fuzz_test_util.h spirv-fuzz: Improve debugging facilities (#3074) 2019-11-27 18:05:56 +00:00
fuzzer_pass_add_opphi_synonyms_test.cpp spirv-fuzz: Create synonym via OpPhi and existing synonyms (#3701) 2020-08-27 15:59:54 +01:00
fuzzer_pass_construct_composites_test.cpp spirv-fuzz: Handle isomorphic types property in composite construction (#3262) 2020-04-02 18:33:19 +01:00
fuzzer_pass_donate_modules_test.cpp spirv-fuzz: Handle OpPhis in livesafe functions (#3642) 2020-08-05 19:21:37 +01:00
fuzzer_pass_outline_functions_test.cpp spirv-fuzz: make outliner pass use additional transformations (#3604) 2020-08-06 12:29:26 +01:00
fuzzer_replayer_test.cpp spirv-fuzz: Overflow ids (#3734) 2020-08-26 07:49:42 +01:00
fuzzer_shrinker_test.cpp spirv-fuzz: Set message consumer in replayer when shrinking (#3591) 2020-07-27 08:11:12 +01:00
instruction_descriptor_test.cpp spirv-fuzz: fuzzer pass to adjust memory access operands (#2968) 2019-10-22 18:05:35 +01:00
replayer_test.cpp spirv-fuzz: Overflow ids (#3734) 2020-08-26 07:49:42 +01:00
transformation_access_chain_test.cpp spirv-fuzz: Generalise transformation access chain (#3546) 2020-07-27 11:28:12 +01:00
transformation_add_constant_boolean_test.cpp spirv-fuzz: Test usages of IdIsIrrelevant fact (#3578) 2020-07-23 17:19:13 +01:00
transformation_add_constant_composite_test.cpp spirv-fuzz: Test usages of IdIsIrrelevant fact (#3578) 2020-07-23 17:19:13 +01:00
transformation_add_constant_null_test.cpp spirv-fuzz: Transformation to add OpConstantNull (#3273) 2020-04-02 19:25:30 +01:00
transformation_add_constant_scalar_test.cpp spirv-fuzz: Add words instead of logical operands (#3728) 2020-08-21 11:14:13 +01:00
transformation_add_copy_memory_test.cpp spirv-fuzz: Add FuzzerPassAddCopyMemoryInstructions (#3391) 2020-06-30 21:13:05 +01:00
transformation_add_dead_block_test.cpp spirv-fuzz: Check header dominance when adding dead block (#3694) 2020-08-17 17:47:13 +01:00
transformation_add_dead_break_test.cpp Avoid use of 'sanity' and 'sanity check' in the code base (#3585) 2020-07-28 23:55:02 -04:00
transformation_add_dead_continue_test.cpp Avoid use of 'sanity' and 'sanity check' in the code base (#3585) 2020-07-28 23:55:02 -04:00
transformation_add_function_test.cpp spirv-fuzz: Add condition to make functions livesafe (#3587) 2020-07-28 01:01:59 +01:00
transformation_add_global_undef_test.cpp spirv-fuzz: Introduce TransformationContext (#3272) 2020-04-02 15:54:46 +01:00
transformation_add_global_variable_test.cpp spirv-fuzz: Improve support for compute shaders in donation (#3277) 2020-04-06 16:08:14 +01:00
transformation_add_image_sample_unused_components_test.cpp spirv-fuzz: Add image sample unused components transformation (#3439) 2020-07-08 17:07:04 +01:00
transformation_add_local_variable_test.cpp spirv-fuzz: Introduce TransformationContext (#3272) 2020-04-02 15:54:46 +01:00
transformation_add_loop_preheader_test.cpp spirv-fuzz: Transformation to add loop preheader (#3599) 2020-07-30 20:18:19 +01:00
transformation_add_no_contraction_decoration_test.cpp spirv-fuzz: Introduce TransformationContext (#3272) 2020-04-02 15:54:46 +01:00
transformation_add_opphi_synonym_test.cpp spirv-fuzz: Create synonym via OpPhi and existing synonyms (#3701) 2020-08-27 15:59:54 +01:00
transformation_add_parameter_test.cpp spirv-fuzz: Support pointer types in FuzzerPassAddParameters (#3627) 2020-08-19 11:18:47 +01:00
transformation_add_relaxed_decoration_test.cpp spirv-fuzz: Improve code coverage of tests (#3686) 2020-08-14 12:47:21 +01:00
transformation_add_synonym_test.cpp spirv-fuzz: Do not make synonyms of void result ids (#3747) 2020-08-27 09:39:20 +01:00
transformation_add_type_array_test.cpp spirv-fuzz: Introduce TransformationContext (#3272) 2020-04-02 15:54:46 +01:00
transformation_add_type_boolean_test.cpp spirv-fuzz: Introduce TransformationContext (#3272) 2020-04-02 15:54:46 +01:00
transformation_add_type_float_test.cpp spirv-fuzz: Check integer and float width capabilities (#3670) 2020-08-12 22:05:36 +01:00
transformation_add_type_function_test.cpp spirv-fuzz: Introduce TransformationContext (#3272) 2020-04-02 15:54:46 +01:00
transformation_add_type_int_test.cpp spirv-fuzz: Check integer and float width capabilities (#3670) 2020-08-12 22:05:36 +01:00
transformation_add_type_matrix_test.cpp spirv-fuzz: Introduce TransformationContext (#3272) 2020-04-02 15:54:46 +01:00
transformation_add_type_pointer_test.cpp spirv-fuzz: Introduce TransformationContext (#3272) 2020-04-02 15:54:46 +01:00
transformation_add_type_struct_test.cpp spirv-fuzz: Introduce TransformationContext (#3272) 2020-04-02 15:54:46 +01:00
transformation_add_type_vector_test.cpp spirv-fuzz: Introduce TransformationContext (#3272) 2020-04-02 15:54:46 +01:00
transformation_adjust_branch_weights_test.cpp Add adjust branch weights transformation (#3336) 2020-05-14 11:38:34 +01:00
transformation_composite_construct_test.cpp spirv-fuzz: Test usages of IdIsIrrelevant fact (#3578) 2020-07-23 17:19:13 +01:00
transformation_composite_extract_test.cpp spirv-fuzz: Test usages of IdIsIrrelevant fact (#3578) 2020-07-23 17:19:13 +01:00
transformation_composite_insert_test.cpp spirv-fuzz: add FuzzerPassAddCompositeInserts (#3606) 2020-08-19 13:56:03 +01:00
transformation_compute_data_synonym_fact_closure_test.cpp spirv-fuzz: Make handling of synonym facts more efficient (#3301) 2020-04-20 19:02:49 +01:00
transformation_equation_instruction_test.cpp spirv-fuzz: Test usages of IdIsIrrelevant fact (#3578) 2020-07-23 17:19:13 +01:00
transformation_function_call_test.cpp spirv-fuzz: Introduce TransformationContext (#3272) 2020-04-02 15:54:46 +01:00
transformation_inline_function_test.cpp spirv-fuzz: Add inline function transformation (#3517) 2020-08-25 17:28:23 +01:00
transformation_invert_comparison_operator_test.cpp spirv-fuzz: TransformationInvertComparisonOperator (#3475) 2020-07-03 17:37:32 +01:00
transformation_load_test.cpp spirv-fuzz: Introduce TransformationContext (#3272) 2020-04-02 15:54:46 +01:00
transformation_make_vector_operation_dynamic_test.cpp spirv-fuzz: Add TransformationMakeVectorOperationDynamic (#3597) 2020-08-06 15:50:18 +01:00
transformation_merge_blocks_test.cpp spirv-fuzz: Introduce TransformationContext (#3272) 2020-04-02 15:54:46 +01:00
transformation_move_block_down_test.cpp spirv-fuzz: Introduce TransformationContext (#3272) 2020-04-02 15:54:46 +01:00
transformation_move_instruction_down_test.cpp spirv-fuzz: TransformationMoveInstructionDown (#3477) 2020-08-03 16:45:24 +01:00
transformation_mutate_pointer_test.cpp spirv-fuzz: TransformationMutatePointer (#3737) 2020-09-01 12:45:13 +01:00
transformation_outline_function_test.cpp spirv-fuzz: Overflow ids (#3734) 2020-08-26 07:49:42 +01:00
transformation_permute_function_parameters_test.cpp spirv-fuzz: Create a helper in fuzzerutil to reuse function type (#3572) 2020-07-23 18:01:12 +01:00
transformation_permute_phi_operands_test.cpp spirv-fuzz: Permute OpPhi instruction operands (#3421) 2020-06-23 15:00:28 +01:00
transformation_propagate_instruction_up_test.cpp spirv-fuzz: Support identical predecessors in TransformationPropagateInstructionUp (#3689) 2020-08-14 12:29:36 +01:00
transformation_push_id_through_variable_test.cpp spirv-fuzz: Test usages of IdIsIrrelevant fact (#3578) 2020-07-23 17:19:13 +01:00
transformation_record_synonymous_constants_test.cpp spirv-fuzz: Relax type checking for int contants (#3573) 2020-07-27 13:34:44 +01:00
transformation_replace_add_sub_mul_with_carrying_extended_test.cpp spirv-fuzz: TransformationReplaceAddSubMulWithCarryingExtended (#3598) 2020-08-06 17:30:34 +01:00
transformation_replace_boolean_constant_with_constant_binary_test.cpp Support OpPhi when replacing boolean constant operand (#3518) 2020-07-14 10:27:15 +01:00
transformation_replace_constant_with_uniform_test.cpp spirv-fuzz: Handle OpPhi during constant obfuscation (#3640) 2020-08-05 19:17:27 +01:00
transformation_replace_copy_memory_with_load_store_test.cpp spirv-fuzz: adds TransformationReplaceCopyMemoryWithLoadStore (#3575) 2020-07-23 15:14:20 +01:00
transformation_replace_copy_object_with_store_load_test.cpp spirv-fuzz: Improve code coverage of tests (#3686) 2020-08-14 12:47:21 +01:00
transformation_replace_id_with_synonym_test.cpp spirv-fuzz: consider additional access chain instructions (#3672) 2020-08-12 21:58:53 +01:00
transformation_replace_irrelevant_id_test.cpp spirv-fuzz: Transformation to replace the use of an irrelevant id (#3697) 2020-09-01 16:28:04 +01:00
transformation_replace_linear_algebra_instruction_test.cpp spirv-fuzz: Implement the OpOuterProduct linear algebra case (#3617) 2020-07-29 23:46:56 +01:00
transformation_replace_load_store_with_copy_memory_test.cpp spirv-fuzz: Improve code coverage of tests (#3686) 2020-08-14 12:47:21 +01:00
transformation_replace_parameter_with_global_test.cpp spirv-fuzz: Create a helper in fuzzerutil to reuse function type (#3572) 2020-07-23 18:01:12 +01:00
transformation_replace_params_with_struct_test.cpp spirv-fuzz: Remove OpFunctionCall operands in correct order (#3630) 2020-08-04 19:10:21 +01:00
transformation_set_function_control_test.cpp spirv-fuzz: Introduce TransformationContext (#3272) 2020-04-02 15:54:46 +01:00
transformation_set_loop_control_test.cpp spirv-fuzz: Introduce TransformationContext (#3272) 2020-04-02 15:54:46 +01:00
transformation_set_memory_operands_mask_test.cpp Fix operand access (#3427) 2020-06-13 00:03:25 +01:00
transformation_set_selection_control_test.cpp spirv-fuzz: Introduce TransformationContext (#3272) 2020-04-02 15:54:46 +01:00
transformation_split_block_test.cpp spirv-fuzz: Respect rules for OpSampledImage (#3287) 2020-04-14 20:17:42 +01:00
transformation_store_test.cpp spirv-fuzz: Do not allow adding stores to read-only pointers (#3316) 2020-05-01 02:50:44 +01:00
transformation_swap_commutable_operands_test.cpp spirv-fuzz: Introduce TransformationContext (#3272) 2020-04-02 15:54:46 +01:00
transformation_swap_conditional_branch_operands_test.cpp spirv-fuzz: Swap operands in OpBranchConditional (#3423) 2020-06-19 16:38:52 +01:00
transformation_toggle_access_chain_instruction_test.cpp spirv-fuzz: Introduce TransformationContext (#3272) 2020-04-02 15:54:46 +01:00
transformation_vector_shuffle_test.cpp spirv-fuzz: Test usages of IdIsIrrelevant fact (#3578) 2020-07-23 17:19:13 +01:00
uniform_buffer_element_descriptor_test.cpp Represent uniform facts via descriptor set and binding. (#2681) 2019-06-19 20:45:14 +01:00