SPIRV-Tools/source
Alastair Donaldson fe10239f92
spirv-fuzz: Add fuzzer passes to add loads/stores (#3176)
This change adds fuzzer passes that sprinkle loads and stores into a
module at random, with stores restricted to occur in either dead
blocks, or to use pointers for which it is known that the pointee
value does not influence the module's overall behaviour.

The change also generalises the VariableValueIsArbitrary fact to
PointeeValueIsIrrelevant, to allow stores through access chains or
object copies of variables whose values are known to be irrelevant.

The change includes some other minor refactorings.
2020-02-06 16:54:34 +00:00
..
fuzz spirv-fuzz: Add fuzzer passes to add loads/stores (#3176) 2020-02-06 16:54:34 +00:00
link Handle conflict between debug info and existing validation rule (#3104) 2020-01-23 17:04:30 -05:00
opt Handle TimeAMD in AmdExtensionToKhrPass. (#3168) 2020-02-03 12:13:32 -05:00
reduce Handle conflict between debug info and existing validation rule (#3104) 2020-01-23 17:04:30 -05:00
util Support constant-folding UConvert and SConvert (#2960) 2019-10-16 16:29:55 -04:00
val Fix structured exit validation (#3141) 2020-01-23 18:04:21 -05:00
assembly_grammar.cpp Add validation for SPV_NV_cooperative_matrix (#2404) 2019-02-25 17:43:11 -05:00
assembly_grammar.h Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
binary.cpp Support OpenCL.DebugInfo.100 extended instruction set (#3080) 2019-12-19 17:16:26 -05:00
binary.h Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
cfa.h Rewrite include guards (#1793) 2018-08-03 08:05:33 -04:00
CMakeLists.txt Support OpenCL.DebugInfo.100 extended instruction set (#3080) 2019-12-19 17:16:26 -05:00
diagnostic.cpp Remove source/message.h (#1838) 2018-08-14 15:41:21 -04:00
diagnostic.h Rewrite include guards (#1793) 2018-08-03 08:05:33 -04:00
disassemble.cpp Support OpenCL.DebugInfo.100 extended instruction set (#3080) 2019-12-19 17:16:26 -05:00
disassemble.h Rewrite include guards (#1793) 2018-08-03 08:05:33 -04:00
enum_set.h Check feature mgr in context consistency check (#2818) 2019-08-28 11:49:16 -04:00
enum_string_mapping.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
enum_string_mapping.h Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
ext_inst.cpp Handle conflict between debug info and existing validation rule (#3104) 2020-01-23 17:04:30 -05:00
ext_inst.h Handle conflict between debug info and existing validation rule (#3104) 2020-01-23 17:04:30 -05:00
extensions.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
extensions.h Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
extinst.debuginfo.grammar.json Add asm, dis support for DebugInfo extended instruction set 2017-12-22 09:39:36 -05:00
extinst.opencl.debuginfo.100.grammar.json Support OpenCL.DebugInfo.100 extended instruction set (#3080) 2019-12-19 17:16:26 -05:00
extinst.spv-amd-gcn-shader.grammar.json Fix spelling in SPV_AMD_gcn_shader support 2017-04-03 14:59:18 -04:00
extinst.spv-amd-shader-ballot.grammar.json Add support for SPV AMD extensions 2017-06-21 15:08:07 -04:00
extinst.spv-amd-shader-explicit-vertex-parameter.grammar.json Add support for SPV AMD extensions 2017-06-21 15:08:07 -04:00
extinst.spv-amd-shader-trinary-minmax.grammar.json Add support for SPV AMD extensions 2017-06-21 15:08:07 -04:00
instruction.h Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
latest_version_glsl_std_450_header.h Rewrite include guards (#1793) 2018-08-03 08:05:33 -04:00
latest_version_opencl_std_header.h Rewrite include guards (#1793) 2018-08-03 08:05:33 -04:00
latest_version_spirv_header.h Rewrite include guards (#1793) 2018-08-03 08:05:33 -04:00
libspirv.cpp Add SpirvTools::IsValid(). (#2326) 2019-01-24 09:45:09 -05:00
macro.h Rewrite include guards (#1793) 2018-08-03 08:05:33 -04:00
name_mapper.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
name_mapper.h Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
opcode.cpp Use last version (#2578) 2019-05-10 11:02:01 -04:00
opcode.h Add --strip-atomic-counter-memory (#2413) 2019-03-14 13:34:33 -04:00
operand.cpp Handle conflict between debug info and existing validation rule (#3104) 2020-01-23 17:04:30 -05:00
operand.h Handle conflict between debug info and existing validation rule (#3104) 2020-01-23 17:04:30 -05:00
parsed_operand.cpp Replace asserts with returns 2018-08-08 15:13:04 -04:00
parsed_operand.h Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
pch_source.cpp Enable precompiled headers for spirv-tools(-shared) and some unit tests (#2026) 2018-11-06 09:26:23 -05:00
pch_source.h Enable precompiled headers for spirv-tools(-shared) and some unit tests (#2026) 2018-11-06 09:26:23 -05:00
print.cpp build: cmake: Add support for Fuchsia. (#3062) 2019-11-26 16:22:59 -05:00
print.h Rewrite include guards (#1793) 2018-08-03 08:05:33 -04:00
software_version.cpp Add missing function parameters in libspirv.h 2018-04-03 10:10:43 -04:00
spirv_constant.h Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
spirv_definition.h Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
spirv_endian.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
spirv_endian.h Rewrite include guards (#1793) 2018-08-03 08:05:33 -04:00
spirv_fuzzer_options.cpp spirv-fuzz: Improve debugging facilities (#3074) 2019-11-27 18:05:56 +00:00
spirv_fuzzer_options.h spirv-fuzz: Improve debugging facilities (#3074) 2019-11-27 18:05:56 +00:00
spirv_optimizer_options.cpp Add —preserve-bindings and —preserve-spec-constants (#2693) 2019-07-10 14:12:19 -04:00
spirv_optimizer_options.h Add —preserve-bindings and —preserve-spec-constants (#2693) 2019-07-10 14:12:19 -04:00
spirv_reducer_options.cpp Refactor reducer options (#2709) 2019-07-04 11:11:42 +01:00
spirv_reducer_options.h Refactor reducer options (#2709) 2019-07-04 11:11:42 +01:00
spirv_target_env.cpp Add spvParseVulkanEnv (#3142) 2020-01-23 17:20:32 -05:00
spirv_target_env.h Validate that in OpenGL env block variables have Binding (#2685) 2019-07-02 08:11:20 -04:00
spirv_validator_options.cpp Make pointers to isomorphic type interchangeable with option. (#2570) 2019-05-13 13:48:17 -04:00
spirv_validator_options.h Make pointers to isomorphic type interchangeable with option. (#2570) 2019-05-13 13:48:17 -04:00
table.cpp Add basic support for Vulkan 1.2: SPV_ENV_VULKAN_1_2 2020-01-14 20:06:19 -05:00
table.h Use last version (#2578) 2019-05-10 11:02:01 -04:00
text_handler.cpp Avoid GCC8 warning in text_handler.cpp. (#2197) 2018-12-13 15:03:28 -05:00
text_handler.h Remove source/message.h (#1838) 2018-08-14 15:41:21 -04:00
text.cpp Support OpenCL.DebugInfo.100 extended instruction set (#3080) 2019-12-19 17:16:26 -05:00
text.h Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00