The following table shows data about each function in the project. The functions included in this table correspond to all functions that exist in the executables of the fuzzers. As such, there may be functions that are from third-party libraries.
For further technical details on the meaning of columns in the below table, please see the Glossary .
Func name | Functions filename | Args | Function call depth | Reached by Fuzzers | Fuzzers runtime hit | Func lines hit % | I Count | BB Count | Cyclomatic complexity | Functions reached | Reached by functions | Accumulated cyclomatic complexity | Undiscovered complexity |
---|
The following is the call tree with color coding for which functions are hit/not hit. This info is based on the coverage achieved of all fuzzers together and not just this specific fuzzer. We use the following coloring scheme where min/max is an interval [min:max) (max non-inclusive) to color the callsite based on how many times the callsite is covered at run time.
Min | Max | Color |
---|---|---|
0 | 1 | red |
1 | 10 | gold |
10 | 30 | yellow |
30 | 50 | greenyellow |
50 | 1000000000000 | lawngreen |
For further technical details on the call tree overview, please see the Glossary .
The distribution of callsites in terms of coloring is
Color | Callsite count | Percentage |
---|---|---|
red | 7630 | 46.1% |
gold | 2101 | 12.7% |
yellow | 572 | 3.46% |
greenyellow | 214 | 1.29% |
lawngreen | 6008 | 36.3% |
All colors | 16525 | 100 |
The following link provides a visualisation of the full call tree overlaid with coverage information: full call tree
For further technical details on how the call tree is generated, please see the Glossary .
The followings nodes represent call sites where fuzz blockers occur.
Amount of callsites blocked | Calltree index | Parent function | Callsite | Largest blocked function |
---|---|---|---|---|
563 | 3964 | spvtools::val::ValidateExtInst(spvtools::val::ValidationState_t&, spvtools::val::Instruction const*) | call site | |
559 | 4957 | spvtools::val::ValidationState_t::GetConstantValUint64(unsigned int, unsigned long*) const | call site | strtoul |
441 | 16076 | tint::sem::Type::is_integer_scalar() const | call site | |
423 | 4529 | spvtools::val::ValidationState_t::GetIdOpcode(unsigned int) const | call site | |
373 | 71 |
tint::utils::BlockAllocator
|
call site | __errno_location |
326 | 10099 | spvtools::val::(anonymous namespace)::BuiltInsValidator::ValidateLocalInvocationIndexAtReference(spvtools::val::Decoration const&, spvtools::val::Instruction const&, spvtools::val::Instruction const&, spvtools::val::Instruction const&) | call site | |
197 | 15871 | tint::sem::Node::~Node() | call site | _ZN4tint6SwitchINS_6detail5InferEKNS_3sem4TypeEJZZNS_6writer5spirv7Builder20GenerateTypeIfNeededEPS5_ENK4$_59clEvEUlPKNS3_5ArrayEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_4BoolEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_3F32EE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_3F16EE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_3I32EE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_6MatrixEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_7PointerEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_9ReferenceEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_6StructEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_3U32EE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_6VectorEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_4VoidEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_14StorageTextureEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_7TextureEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_7SamplerEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlNS_7DefaultEE_EEEDaPT0_DpOT1_ |
196 | 9831 | spvtools::val::(anonymous namespace)::BuiltInsValidator::ValidateSamplePositionAtDefinition(spvtools::val::Decoration const&, spvtools::val::Instruction const&) | call site | |
157 | 6783 | spvtools::val::(anonymous namespace)::ValidateArrayLength(spvtools::val::ValidationState_t&, spvtools::val::Instruction const*) | call site | spvOpcodeString |
132 | 859 |
tint::utils::VectorRef
|
call site | |
106 | 11719 |
spvtools::utils::SmallVector
|
call site | |
86 | 579 |
tint::utils::Vector
|
call site |
[EXPERIMENTAL] The followings are the branches where fuzzer fails to bypass.
Blocked Complexity | Reachable Complexity | Function Name | Blocked Branch |
---|---|---|---|
3479 | 33084 | tint::fuzzers::CommonFuzzer::Run(unsignedcharconst*,unsignedlong) | /src/dawn/src/tint/fuzzers/tint_common_fuzzer.cc:176 |
3459 | 11997 | tint::fuzzers::CommonFuzzer::Run(unsignedcharconst*,unsignedlong) | /src/dawn/src/tint/fuzzers/tint_common_fuzzer.cc:202 |
1248 | 1948 | spvtools::val::NonUniformPass(spvtools::val::ValidationState_t&,spvtools::val::Instructionconst*) | /src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_non_uniform.cpp:125 |
677 | 677 | tint::reader::spirv::ParserImpl::GetMemoryObjectDeclarationForHandle(unsignedint,bool) | /src/dawn/src/tint/reader/spirv/parser_impl.cc:2234 |
622 | 622 | spvtools::val::(anonymousnamespace)::BuiltInsValidator::ValidateInvocationIdAtDefinition(spvtools::val::Decorationconst&,spvtools::val::Instructionconst&) | /src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_builtins.cpp:1564 |
621 | 621 | spvtools::val::(anonymousnamespace)::BuiltInsValidator::ValidateHelperInvocationAtDefinition(spvtools::val::Decorationconst&,spvtools::val::Instructionconst&) | /src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_builtins.cpp:1504 |
621 | 621 | spvtools::val::(anonymousnamespace)::BuiltInsValidator::ValidatePointCoordAtDefinition(spvtools::val::Decorationconst&,spvtools::val::Instructionconst&) | /src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_builtins.cpp:1746 |
621 | 621 | spvtools::val::(anonymousnamespace)::BuiltInsValidator::ValidateSamplePositionAtDefinition(spvtools::val::Decorationconst&,spvtools::val::Instructionconst&) | /src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_builtins.cpp:2308 |
620 | 1242 | spvtools::val::(anonymousnamespace)::BuiltInsValidator::ValidatePrimitiveIdAtDefinition(spvtools::val::Decorationconst&,spvtools::val::Instructionconst&) | /src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_builtins.cpp:2052 |
620 | 620 | spvtools::val::(anonymousnamespace)::BuiltInsValidator::ValidatePrimitiveIdAtDefinition(spvtools::val::Decorationconst&,spvtools::val::Instructionconst&) | /src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_builtins.cpp:2049 |
614 | 1908 | spvtools::val::ConversionPass(spvtools::val::ValidationState_t&,spvtools::val::Instructionconst*) | /src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_conversion.cpp:143 |
614 | 1908 | spvtools::val::ConversionPass(spvtools::val::ValidationState_t&,spvtools::val::Instructionconst*) | /src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_conversion.cpp:178 |
Function name | source code lines | source lines hit | percentage hit |
---|
filename | functions hit |
---|---|
/src/dawn/src/tint/fuzzers/tint_spv_reader_wgsl_writer_fuzzer.cc | 1 |
/src/dawn/src/tint/fuzzers/tint_reader_writer_fuzzer.h | 4 |
/src/dawn/src/tint/fuzzers/tint_common_fuzzer.cc | 10 |
/src/dawn/src/tint/diagnostic/diagnostic.cc | 10 |
/src/dawn/src/tint/writer/spirv/generator.h | 1 |
/src/dawn/src/tint/writer/hlsl/generator.cc | 4 |
/src/dawn/src/tint/writer/array_length_from_uniform_options.cc | 2 |
/src/dawn/src/tint/sem/binding_point.h | 1 |
/src/dawn/src/tint/writer/msl/generator.cc | 4 |
/src/dawn/src/tint/fuzzers/fuzzer_init.cc | 1 |
/src/dawn/src/tint/fuzzers/tint_common_fuzzer.h | 3 |
/src/dawn/src/tint/fuzzers/transform_builder.h | 3 |
/src/dawn/src/tint/transform/manager.h | 33 |
/src/dawn/src/tint/debug.cc | 2 |
/src/dawn/src/tint/diagnostic/printer_linux.cc | 1 |
/src/dawn/src/tint/diagnostic/formatter.cc | 2 |
/src/dawn/src/tint/diagnostic/formatter.h | 1 |
/src/dawn/src/tint/program.cc | 9 |
/src/dawn/src/tint/program_id.cc | 4 |
/src/dawn/src/tint/ast/node_id.h | 1 |
/src/dawn/src/tint/sem/type_manager.cc | 4 |
/src/dawn/src/tint/utils/unique_allocator.h | 18 |
/src/dawn/src/tint/utils/block_allocator.h | 42 |
/src/dawn/src/tint/sem/info.cc | 4 |
/src/dawn/src/tint/symbol_table.cc | 8 |
/src/dawn/src/tint/utils/hash.h | 7 |
/src/dawn/src/tint/reader/wgsl/parser.cc | 1 |
/src/dawn/src/tint/reader/wgsl/parser_impl.cc | 91 |
/src/dawn/src/tint/program_builder.cc | 9 |
/src/dawn/src/tint/program_builder.h | 131 |
/src/dawn/src/tint/source.h | 8 |
/src/dawn/src/tint/utils/math.h | 2 |
/src/dawn/src/tint/utils/bitcast.h | 6 |
/src/dawn/src/tint/ast/module.cc | 5 |
/src/dawn/src/tint/castable.h | 171 |
/src/dawn/src/tint/ast/node.cc | 1 |
/src/dawn/src/tint/clone_context.cc | 4 |
/src/dawn/src/tint/utils/vector.h | 224 |
/src/dawn/src/tint/ast/function.h | 2 |
/src/dawn/src/tint/reader/wgsl/lexer.cc | 29 |
/src/dawn/src/tint/reader/wgsl/token.cc | 12 |
/src/dawn/src/tint/reader/wgsl/token.h | 15 |
/src/dawn/src/tint/debug.h | 58 |
/src/dawn/src/tint/number.h | 8 |
/src/dawn/src/tint/utils/result.h | 6 |
/src/dawn/src/tint/text/unicode.cc | 3 |
/src/dawn/src/tint/text/unicode.h | 4 |
/src/dawn/src/tint/reader/wgsl/parser_impl.h | 63 |
/src/dawn/src/tint/diagnostic/diagnostic.h | 10 |
/src/dawn/src/tint/ast/extension.cc | 2 |
/src/dawn/src/tint/ast/enable.cc | 1 |
/src/dawn/src/tint/ast/node.h | 1 |
/src/dawn/src/tint/program_id.h | 3 |
/src/dawn/src/tint/symbol.cc | 8 |
/src/dawn/src/tint/reader/wgsl/parser_impl_detail.h | 2 |
/src/dawn/src/tint/ast/storage_texture.cc | 1 |
/src/dawn/src/tint/ast/u32.cc | 1 |
/src/dawn/src/tint/ast/ast_type.cc | 1 |
/src/dawn/src/tint/utils/defer.h | 7 |
/src/dawn/src/tint/resolver/resolver.cc | 9 |
/src/dawn/src/tint/resolver/const_eval.cc | 1 |
/src/dawn/src/tint/resolver/intrinsic_table.cc | 1 |
/src/dawn/src/tint/resolver/dependency_graph.cc | 28 |
/src/dawn/src/tint/resolver/sem_helper.cc | 2 |
/src/dawn/src/tint/resolver/validator.cc | 15 |
/src/dawn/src/tint/utils/unique_vector.h | 37 |
/src/dawn/src/tint/utils/hashset.h | 23 |
/src/dawn/src/tint/utils/bitset.h | 7 |
/src/dawn/src/tint/sem/info.h | 12 |
/src/dawn/src/tint/ast/module.h | 5 |
/usr/local/bin/../include/c++/v1/optional | 7 |
/src/dawn/src/tint/traits.h | 5 |
/src/dawn/src/tint/symbol.h | 2 |
/src/dawn/src/tint/scope_stack.h | 6 |
/src/dawn/src/tint/utils/scoped_assignment.h | 2 |
/src/dawn/include/tint/override_id.h | 1 |
/src/dawn/src/tint/ast/attribute.h | 8 |
/src/dawn/src/tint/resolver/sem_helper.h | 2 |
/src/dawn/src/tint/sem/variable.h | 11 |
/src/dawn/src/tint/sem/function.h | 10 |
/src/dawn/src/tint/ast/function.cc | 2 |
/src/dawn/src/tint/ast/pipeline_stage.cc | 1 |
/src/dawn/src/tint/sem/expression.h | 5 |
/src/dawn/src/tint/sem/statement.h | 1 |
/src/dawn/src/tint/sem/builtin.h | 1 |
/src/dawn/src/tint/utils/enum_set.h | 2 |
/src/dawn/src/tint/sem/call.h | 3 |
/src/dawn/src/tint/resolver/uniformity.cc | 20 |
/src/dawn/src/tint/sem/expression.cc | 1 |
/src/dawn/src/tint/sem/materialize.h | 1 |
/src/dawn/src/tint/sem/builtin.cc | 1 |
/src/dawn/src/tint/sem/builtin_type.cc | 1 |
/src/dawn/src/tint/sem/call_target.h | 3 |
/src/dawn/src/tint/reader/spirv/parser.cc | 1 |
/src/dawn/src/tint/reader/spirv/parser_impl.cc | 76 |
/src/dawn/src/tint/reader/reader.cc | 2 |
/src/dawn/src/tint/reader/spirv/parser_type.cc | 40 |
/src/dawn/src/tint/reader/spirv/fail_stream.h | 101 |
/src/dawn/src/tint/reader/spirv/namer.cc | 11 |
/src/dawn/src/tint/reader/spirv/enum_converter.cc | 7 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/libspirv.cpp | 10 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/table.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opcode.cpp | 20 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/operand.cpp | 13 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/ext_inst.cpp | 5 |
/src/dawn/src/tint/reader/spirv/parser_impl.h | 28 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate.cpp | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/table.h | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/diagnostic.cpp | 4 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/spirv_validator_options.cpp | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/spirv_validator_options.h | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validation_state.cpp | 81 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/enum_set.h | 19 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/assembly_grammar.h | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validation_state.h | 55 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/spirv_target_env.cpp | 6 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/binary.cpp | 19 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/diagnostic.h | 119 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/spirv_endian.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/assembly_grammar.cpp | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/string_utils.h | 7 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/make_unique.h | 57 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/name_mapper.cpp | 9 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/name_mapper.h | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/parsed_operand.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/hex_float.h | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/extensions.cpp | 2 |
/src/dawn/out/Debug/third_party/spirv-tools/enum_string_mapping.inc | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/instruction.h | 31 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/instruction.cpp | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/disassemble.cpp | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/print.h | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/text.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/disassemble.h | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/function.h | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/function.cpp | 28 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/basic_block.h | 19 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_id.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_capability.cpp | 15 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_layout.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_cfg.cpp | 20 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/basic_block.cpp | 18 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/construct.cpp | 12 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/construct.h | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_instruction.cpp | 13 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/string_utils.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_misc.cpp | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_scopes.cpp | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_debug.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_annotation.cpp | 14 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/decoration.h | 7 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_extensions.cpp | 35 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_mode_setting.cpp | 4 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_type.cpp | 14 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_constants.cpp | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_memory.cpp | 25 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_function.cpp | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_image.cpp | 37 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/bitutils.h | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_conversion.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_composites.cpp | 11 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_arithmetics.cpp | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_bitwise.cpp | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_logicals.cpp | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_derivatives.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_atomics.cpp | 7 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_memory_semantics.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_primitives.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_barriers.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_non_uniform.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_literals.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_ray_query.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_ray_tracing.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_adjacency.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/cfa.h | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_decorations.cpp | 39 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_interfaces.cpp | 7 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_builtins.cpp | 108 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_execution_limitations.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_small_type_uses.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/build_module.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/ir_context.h | 24 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/module.h | 19 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/instruction_list.h | 10 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/ilist.h | 21 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/instruction.h | 23 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/ilist_node.h | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/ir_loader.cpp | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/ir_loader.h | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/function.h | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/iterator.h | 12 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/basic_block.h | 10 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/def_use_manager.h | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/def_use_manager.cpp | 9 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/module.cpp | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/function.cpp | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/constants.cpp | 10 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/reflect.h | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/constants.h | 13 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/small_vector.h | 12 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/type_manager.cpp | 14 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/instruction.cpp | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/types.h | 63 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/types.cpp | 16 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/type_manager.h | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/decoration_manager.h | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/decoration_manager.cpp | 7 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/log.h | 1 |
/src/dawn/src/tint/reader/spirv/namer.h | 5 |
/src/dawn/src/tint/reader/spirv/enum_converter.h | 1 |
/src/dawn/src/tint/reader/spirv/entry_point_info.h | 1 |
/src/dawn/src/tint/reader/spirv/usage.cc | 15 |
/src/dawn/src/tint/reader/spirv/parser_type.h | 2 |
/src/dawn/src/tint/castable.cc | 1 |
/src/dawn/src/tint/ast/disable_validation_attribute.cc | 1 |
/src/dawn/src/tint/ast/alias.cc | 1 |
/src/dawn/src/tint/ast/type_decl.cc | 1 |
/usr/local/bin/../include/c++/v1/initializer_list | 1 |
/src/dawn/src/tint/reader/spirv/usage.h | 7 |
/src/dawn/src/tint/reader/spirv/function.cc | 115 |
/src/dawn/src/tint/reader/spirv/function.h | 80 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/basic_block.cpp | 3 |
/src/dawn/src/tint/reader/spirv/construct.h | 2 |
/src/dawn/src/tint/ast/texture.cc | 2 |
/src/dawn/src/tint/transform/spirv_atomic.cc | 1 |
/src/dawn/src/tint/utils/hashmap.h | 3 |
/src/dawn/src/tint/clone_context.h | 1 |
/src/dawn/src/tint/program.h | 5 |
/src/dawn/src/tint/symbol_table.h | 1 |
/src/dawn/src/tint/transform/manager.cc | 3 |
/src/dawn/src/tint/transform/transform.cc | 6 |
/src/dawn/src/tint/transform/transform.h | 12 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/include/spirv-tools/libspirv.hpp | 1 |
/src/dawn/src/tint/inspector/inspector.cc | 34 |
/src/dawn/src/tint/inspector/entry_point.cc | 6 |
/src/dawn/src/tint/sem/type.cc | 17 |
/src/dawn/src/tint/sem/reference.h | 1 |
/src/dawn/src/tint/sem/struct.h | 4 |
/src/dawn/src/tint/sem/vector.h | 2 |
/src/dawn/src/tint/inspector/entry_point.h | 2 |
/src/dawn/src/tint/inspector/inspector.h | 1 |
/src/dawn/src/tint/inspector/scalar.cc | 5 |
/src/dawn/src/tint/sem/function.cc | 10 |
/src/dawn/src/tint/ast/variable.cc | 1 |
/src/dawn/src/tint/ast/variable.h | 1 |
/src/dawn/src/tint/sem/sampler.h | 1 |
/src/dawn/src/tint/sem/texture.h | 1 |
/src/dawn/src/tint/inspector/resource_binding.cc | 3 |
/src/dawn/src/tint/sem/multisampled_texture.h | 1 |
/src/dawn/src/tint/sem/array.h | 1 |
/src/dawn/src/tint/sem/matrix.h | 2 |
/src/dawn/src/tint/sem/sampled_texture.h | 1 |
/src/dawn/src/tint/sem/storage_texture.h | 3 |
/src/dawn/src/tint/sem/call_target.cc | 1 |
/src/dawn/src/tint/writer/wgsl/generator.cc | 2 |
/src/dawn/src/tint/writer/wgsl/generator_impl.cc | 2 |
/src/dawn/src/tint/writer/text_generator.h | 6 |
/src/dawn/src/tint/writer/text_generator.cc | 6 |
/src/dawn/src/tint/writer/spirv/generator.cc | 3 |
/src/dawn/src/tint/writer/spirv/generator_impl.cc | 4 |
/src/dawn/src/tint/transform/builtin_polyfill.h | 1 |
/src/dawn/src/tint/writer/generate_external_texture_bindings.cc | 1 |
/src/dawn/src/tint/transform/canonicalize_entry_point_io.cc | 2 |
/src/dawn/src/tint/writer/spirv/generator_impl.h | 2 |
/src/dawn/src/tint/writer/spirv/builder.cc | 40 |
/src/dawn/src/tint/writer/spirv/instruction.cc | 4 |
/src/dawn/src/tint/writer/spirv/operand.h | 9 |
/src/dawn/src/tint/writer/spirv/builder.h | 12 |
/src/dawn/src/tint/sem/module.h | 2 |
/src/dawn/src/tint/writer/spirv/scalar_constant.h | 6 |
/src/dawn/src/tint/sem/u32.cc | 2 |
/src/dawn/src/tint/sem/node.cc | 1 |
/src/dawn/src/tint/sem/atomic.h | 1 |
/src/dawn/src/tint/sem/pointer.h | 1 |
/src/dawn/src/tint/utils/map.h | 5 |
/src/dawn/src/tint/number.cc | 2 |
/usr/local/bin/../include/c++/v1/math.h | 5 |
/src/dawn/src/tint/ast/traverse_expressions.h | 1 |
/src/dawn/src/tint/writer/spirv/function.h | 4 |
/src/dawn/src/tint/writer/spirv/function.cc | 2 |
/src/dawn/src/tint/writer/spirv/instruction.h | 1 |
/src/dawn/src/tint/writer/spirv/binary_writer.cc | 2 |
/src/dawn/src/tint/writer/spirv/operand.cc | 1 |
/src/dawn/src/tint/writer/spirv/binary_writer.h | 1 |
/src/dawn/src/tint/writer/hlsl/generator_impl.cc | 4 |
/src/dawn/src/tint/transform/array_length_from_uniform.cc | 2 |
/src/dawn/src/tint/writer/flatten_bindings.cc | 1 |
/src/dawn/src/tint/writer/msl/generator_impl.cc | 4 |
/src/dawn/src/tint/writer/msl/generator_impl.h | 2 |
The following is the call tree with color coding for which functions are hit/not hit. This info is based on the coverage achieved of all fuzzers together and not just this specific fuzzer. We use the following coloring scheme where min/max is an interval [min:max) (max non-inclusive) to color the callsite based on how many times the callsite is covered at run time.
Min | Max | Color |
---|---|---|
0 | 1 | red |
1 | 10 | gold |
10 | 30 | yellow |
30 | 50 | greenyellow |
50 | 1000000000000 | lawngreen |
For further technical details on the call tree overview, please see the Glossary .
The distribution of callsites in terms of coloring is
Color | Callsite count | Percentage |
---|---|---|
red | 9976 | 60.3% |
gold | 581 | 3.51% |
yellow | 395 | 2.39% |
greenyellow | 163 | 0.98% |
lawngreen | 5412 | 32.7% |
All colors | 16527 | 100 |
The following link provides a visualisation of the full call tree overlaid with coverage information: full call tree
For further technical details on how the call tree is generated, please see the Glossary .
The followings nodes represent call sites where fuzz blockers occur.
Amount of callsites blocked | Calltree index | Parent function | Callsite | Largest blocked function |
---|---|---|---|---|
694 | 3820 | spvtools::val::ValidateExtInst(spvtools::val::ValidationState_t&, spvtools::val::Instruction const*) | call site | |
559 | 4944 | spvtools::val::ValidationState_t::GetConstantValUint64(unsigned int, unsigned long*) const | call site | strtoul |
448 | 10086 | spvtools::val::(anonymous namespace)::BuiltInsValidator::ValidateLocalInvocationIndexAtReference(spvtools::val::Decoration const&, spvtools::val::Instruction const&, spvtools::val::Instruction const&, spvtools::val::Instruction const&) | call site | |
423 | 4516 | spvtools::val::ValidationState_t::GetIdOpcode(unsigned int) const | call site | |
303 | 117 | tint::reader::wgsl::Lexer::length() const | call site | __errno_location |
264 | 16062 | tint::sem::Type::is_integer_scalar() const | call site | |
205 | 6722 | spvtools::val::MemoryPass(spvtools::val::ValidationState_t&, spvtools::val::Instruction const*) | call site | spvOpcodeString |
200 | 9814 | spvtools::val::(anonymous namespace)::BuiltInsValidator::ValidateSampleMaskAtReference(spvtools::val::Decoration const&, spvtools::val::Instruction const&, spvtools::val::Instruction const&, spvtools::val::Instruction const&) | call site | |
197 | 15857 | tint::sem::Node::~Node() | call site | _ZN4tint6SwitchINS_6detail5InferEKNS_3sem4TypeEJZZNS_6writer5spirv7Builder20GenerateTypeIfNeededEPS5_ENK4$_59clEvEUlPKNS3_5ArrayEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_4BoolEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_3F32EE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_3F16EE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_3I32EE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_6MatrixEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_7PointerEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_9ReferenceEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_6StructEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_3U32EE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_6VectorEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_4VoidEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_14StorageTextureEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_7TextureEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_7SamplerEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlNS_7DefaultEE_EEEDaPT0_DpOT1_ |
132 | 846 |
tint::utils::VectorRef
|
call site | |
106 | 11706 |
spvtools::utils::SmallVector
|
call site | |
99 | 16404 | tint::writer::hlsl::SanitizedResult::~SanitizedResult() | call site |
[EXPERIMENTAL] The followings are the branches where fuzzer fails to bypass.
Blocked Complexity | Reachable Complexity | Function Name | Blocked Branch |
---|---|---|---|
2799 | 33084 | tint::fuzzers::CommonFuzzer::Run(unsignedcharconst*,unsignedlong) | /src/dawn/src/tint/fuzzers/tint_common_fuzzer.cc:176 |
2791 | 23105 | tint::fuzzers::CommonFuzzer::Run(unsignedcharconst*,unsignedlong) | /src/dawn/src/tint/fuzzers/tint_common_fuzzer.cc:159 |
2779 | 12335 | tint::fuzzers::CommonFuzzer::Run(unsignedcharconst*,unsignedlong) | /src/dawn/src/tint/fuzzers/tint_common_fuzzer.cc:200 |
1615 | 1615 | tint::reader::spirv::FunctionEmitter::MaybeEmitCombinatorialValue(spvtools::opt::Instructionconst&) | /src/dawn/src/tint/reader/spirv/function.cc:3919 |
1388 | 1429 | tint::reader::wgsl::ParserImpl::translation_unit() | /src/dawn/src/tint/reader/wgsl/parser_impl.cc:329 |
1248 | 1948 | spvtools::val::NonUniformPass(spvtools::val::ValidationState_t&,spvtools::val::Instructionconst*) | /src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_non_uniform.cpp:125 |
677 | 677 | tint::reader::spirv::ParserImpl::GetMemoryObjectDeclarationForHandle(unsignedint,bool) | /src/dawn/src/tint/reader/spirv/parser_impl.cc:2234 |
672 | 690 |
tint::reader::spirv::ParserImpl::ConvertMemberDecoration(unsignedint,unsignedint,tint::reader::spirv::Typeconst*,std::__1::vector
|
/src/dawn/src/tint/reader/spirv/parser_impl.cc:487 |
670 | 690 |
tint::reader::spirv::ParserImpl::ConvertMemberDecoration(unsignedint,unsignedint,tint::reader::spirv::Typeconst*,std::__1::vector
|
/src/dawn/src/tint/reader/spirv/parser_impl.cc:460 |
652 | 660 | spvtools::val::(anonymousnamespace)::ValidateDecorationTarget(spvtools::val::ValidationState_t&,SpvDecoration_,spvtools::val::Instructionconst*,spvtools::val::Instructionconst*) | /src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_annotation.cpp:242 |
652 | 660 | spvtools::val::(anonymousnamespace)::ValidateDecorationTarget(spvtools::val::ValidationState_t&,SpvDecoration_,spvtools::val::Instructionconst*,spvtools::val::Instructionconst*) | /src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_annotation.cpp:295 |
650 | 4553 | tint::transform::Transform::CreateASTTypeFor(tint::CloneContext&,tint::sem::Typeconst*) | /src/dawn/src/tint/transform/transform.cc:99 |
Function name | source code lines | source lines hit | percentage hit |
---|
filename | functions hit |
---|---|
/src/dawn/src/tint/fuzzers/tint_spirv_tools_fuzzer/fuzzer.cc | 1 |
/src/dawn/src/tint/fuzzers/tint_common_fuzzer.cc | 10 |
/src/dawn/src/tint/diagnostic/diagnostic.cc | 10 |
/src/dawn/src/tint/writer/spirv/generator.h | 1 |
/src/dawn/src/tint/writer/hlsl/generator.cc | 4 |
/src/dawn/src/tint/writer/array_length_from_uniform_options.cc | 2 |
/src/dawn/src/tint/sem/binding_point.h | 1 |
/src/dawn/src/tint/writer/msl/generator.cc | 4 |
/src/dawn/src/tint/debug.cc | 2 |
/src/dawn/src/tint/diagnostic/printer_linux.cc | 1 |
/src/dawn/src/tint/diagnostic/formatter.cc | 2 |
/src/dawn/src/tint/diagnostic/formatter.h | 1 |
/src/dawn/src/tint/program.cc | 9 |
/src/dawn/src/tint/program_id.cc | 4 |
/src/dawn/src/tint/ast/node_id.h | 1 |
/src/dawn/src/tint/sem/type_manager.cc | 4 |
/src/dawn/src/tint/utils/unique_allocator.h | 18 |
/src/dawn/src/tint/utils/block_allocator.h | 42 |
/src/dawn/src/tint/sem/info.cc | 4 |
/src/dawn/src/tint/symbol_table.cc | 8 |
/src/dawn/src/tint/utils/hash.h | 7 |
/src/dawn/src/tint/reader/wgsl/parser.cc | 1 |
/src/dawn/src/tint/reader/wgsl/parser_impl.cc | 91 |
/src/dawn/src/tint/program_builder.cc | 9 |
/src/dawn/src/tint/program_builder.h | 131 |
/src/dawn/src/tint/source.h | 8 |
/src/dawn/src/tint/utils/math.h | 2 |
/src/dawn/src/tint/utils/bitcast.h | 6 |
/src/dawn/src/tint/ast/module.cc | 5 |
/src/dawn/src/tint/castable.h | 171 |
/src/dawn/src/tint/ast/node.cc | 1 |
/src/dawn/src/tint/clone_context.cc | 4 |
/src/dawn/src/tint/utils/vector.h | 224 |
/src/dawn/src/tint/ast/function.h | 2 |
/src/dawn/src/tint/reader/wgsl/lexer.cc | 29 |
/src/dawn/src/tint/reader/wgsl/token.cc | 12 |
/src/dawn/src/tint/reader/wgsl/token.h | 15 |
/src/dawn/src/tint/debug.h | 58 |
/src/dawn/src/tint/number.h | 8 |
/src/dawn/src/tint/utils/result.h | 6 |
/src/dawn/src/tint/text/unicode.cc | 3 |
/src/dawn/src/tint/text/unicode.h | 4 |
/src/dawn/src/tint/reader/wgsl/parser_impl.h | 63 |
/src/dawn/src/tint/diagnostic/diagnostic.h | 10 |
/src/dawn/src/tint/ast/extension.cc | 2 |
/src/dawn/src/tint/ast/enable.cc | 1 |
/src/dawn/src/tint/ast/node.h | 1 |
/src/dawn/src/tint/program_id.h | 3 |
/src/dawn/src/tint/symbol.cc | 8 |
/src/dawn/src/tint/reader/wgsl/parser_impl_detail.h | 2 |
/src/dawn/src/tint/ast/storage_texture.cc | 1 |
/src/dawn/src/tint/ast/u32.cc | 1 |
/src/dawn/src/tint/ast/ast_type.cc | 1 |
/src/dawn/src/tint/utils/defer.h | 7 |
/src/dawn/src/tint/resolver/resolver.cc | 9 |
/src/dawn/src/tint/resolver/const_eval.cc | 1 |
/src/dawn/src/tint/resolver/intrinsic_table.cc | 1 |
/src/dawn/src/tint/resolver/dependency_graph.cc | 28 |
/src/dawn/src/tint/resolver/sem_helper.cc | 2 |
/src/dawn/src/tint/resolver/validator.cc | 15 |
/src/dawn/src/tint/utils/unique_vector.h | 37 |
/src/dawn/src/tint/utils/hashset.h | 23 |
/src/dawn/src/tint/utils/bitset.h | 7 |
/src/dawn/src/tint/sem/info.h | 12 |
/src/dawn/src/tint/ast/module.h | 5 |
/usr/local/bin/../include/c++/v1/optional | 7 |
/src/dawn/src/tint/traits.h | 5 |
/src/dawn/src/tint/symbol.h | 2 |
/src/dawn/src/tint/scope_stack.h | 6 |
/src/dawn/src/tint/utils/scoped_assignment.h | 2 |
/src/dawn/include/tint/override_id.h | 1 |
/src/dawn/src/tint/ast/attribute.h | 8 |
/src/dawn/src/tint/resolver/sem_helper.h | 2 |
/src/dawn/src/tint/sem/variable.h | 11 |
/src/dawn/src/tint/sem/function.h | 10 |
/src/dawn/src/tint/ast/function.cc | 2 |
/src/dawn/src/tint/ast/pipeline_stage.cc | 1 |
/src/dawn/src/tint/sem/expression.h | 5 |
/src/dawn/src/tint/sem/statement.h | 1 |
/src/dawn/src/tint/sem/builtin.h | 1 |
/src/dawn/src/tint/utils/enum_set.h | 2 |
/src/dawn/src/tint/sem/call.h | 3 |
/src/dawn/src/tint/resolver/uniformity.cc | 20 |
/src/dawn/src/tint/sem/expression.cc | 1 |
/src/dawn/src/tint/sem/materialize.h | 1 |
/src/dawn/src/tint/sem/builtin.cc | 1 |
/src/dawn/src/tint/sem/builtin_type.cc | 1 |
/src/dawn/src/tint/sem/call_target.h | 3 |
/src/dawn/src/tint/reader/spirv/parser.cc | 1 |
/src/dawn/src/tint/reader/spirv/parser_impl.cc | 76 |
/src/dawn/src/tint/reader/reader.cc | 2 |
/src/dawn/src/tint/reader/spirv/parser_type.cc | 40 |
/src/dawn/src/tint/reader/spirv/fail_stream.h | 101 |
/src/dawn/src/tint/reader/spirv/namer.cc | 11 |
/src/dawn/src/tint/reader/spirv/enum_converter.cc | 7 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/libspirv.cpp | 10 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/table.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opcode.cpp | 20 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/operand.cpp | 13 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/ext_inst.cpp | 5 |
/src/dawn/src/tint/reader/spirv/parser_impl.h | 28 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate.cpp | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/table.h | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/diagnostic.cpp | 4 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/spirv_validator_options.cpp | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/spirv_validator_options.h | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validation_state.cpp | 81 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/enum_set.h | 19 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/assembly_grammar.h | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validation_state.h | 55 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/spirv_target_env.cpp | 6 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/binary.cpp | 19 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/diagnostic.h | 119 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/spirv_endian.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/assembly_grammar.cpp | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/string_utils.h | 7 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/make_unique.h | 57 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/name_mapper.cpp | 9 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/name_mapper.h | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/parsed_operand.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/hex_float.h | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/extensions.cpp | 2 |
/src/dawn/out/Debug/third_party/spirv-tools/enum_string_mapping.inc | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/instruction.h | 31 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/instruction.cpp | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/disassemble.cpp | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/print.h | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/text.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/disassemble.h | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/function.h | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/function.cpp | 28 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/basic_block.h | 19 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_id.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_capability.cpp | 15 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_layout.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_cfg.cpp | 20 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/basic_block.cpp | 18 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/construct.cpp | 12 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/construct.h | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_instruction.cpp | 13 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/string_utils.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_misc.cpp | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_scopes.cpp | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_debug.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_annotation.cpp | 14 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/decoration.h | 7 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_extensions.cpp | 35 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_mode_setting.cpp | 4 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_type.cpp | 14 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_constants.cpp | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_memory.cpp | 25 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_function.cpp | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_image.cpp | 37 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/bitutils.h | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_conversion.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_composites.cpp | 11 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_arithmetics.cpp | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_bitwise.cpp | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_logicals.cpp | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_derivatives.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_atomics.cpp | 7 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_memory_semantics.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_primitives.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_barriers.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_non_uniform.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_literals.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_ray_query.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_ray_tracing.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_adjacency.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/cfa.h | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_decorations.cpp | 39 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_interfaces.cpp | 7 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_builtins.cpp | 108 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_execution_limitations.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_small_type_uses.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/build_module.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/ir_context.h | 24 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/module.h | 19 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/instruction_list.h | 10 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/ilist.h | 21 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/instruction.h | 23 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/ilist_node.h | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/ir_loader.cpp | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/ir_loader.h | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/function.h | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/iterator.h | 12 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/basic_block.h | 10 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/def_use_manager.h | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/def_use_manager.cpp | 9 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/module.cpp | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/function.cpp | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/constants.cpp | 10 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/reflect.h | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/constants.h | 13 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/small_vector.h | 12 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/type_manager.cpp | 14 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/instruction.cpp | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/types.h | 63 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/types.cpp | 16 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/type_manager.h | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/decoration_manager.h | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/decoration_manager.cpp | 7 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/log.h | 1 |
/src/dawn/src/tint/reader/spirv/namer.h | 5 |
/src/dawn/src/tint/reader/spirv/enum_converter.h | 1 |
/src/dawn/src/tint/reader/spirv/entry_point_info.h | 1 |
/src/dawn/src/tint/reader/spirv/usage.cc | 15 |
/src/dawn/src/tint/reader/spirv/parser_type.h | 2 |
/src/dawn/src/tint/castable.cc | 1 |
/src/dawn/src/tint/ast/disable_validation_attribute.cc | 1 |
/src/dawn/src/tint/ast/alias.cc | 1 |
/src/dawn/src/tint/ast/type_decl.cc | 1 |
/usr/local/bin/../include/c++/v1/initializer_list | 1 |
/src/dawn/src/tint/reader/spirv/usage.h | 7 |
/src/dawn/src/tint/reader/spirv/function.cc | 115 |
/src/dawn/src/tint/reader/spirv/function.h | 80 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/basic_block.cpp | 3 |
/src/dawn/src/tint/reader/spirv/construct.h | 2 |
/src/dawn/src/tint/ast/texture.cc | 2 |
/src/dawn/src/tint/transform/spirv_atomic.cc | 1 |
/src/dawn/src/tint/utils/hashmap.h | 3 |
/src/dawn/src/tint/clone_context.h | 1 |
/src/dawn/src/tint/program.h | 5 |
/src/dawn/src/tint/symbol_table.h | 1 |
/src/dawn/src/tint/transform/manager.cc | 3 |
/src/dawn/src/tint/transform/transform.cc | 6 |
/src/dawn/src/tint/transform/manager.h | 32 |
/src/dawn/src/tint/transform/transform.h | 12 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/include/spirv-tools/libspirv.hpp | 1 |
/src/dawn/src/tint/inspector/inspector.cc | 34 |
/src/dawn/src/tint/inspector/entry_point.cc | 6 |
/src/dawn/src/tint/sem/type.cc | 17 |
/src/dawn/src/tint/sem/reference.h | 1 |
/src/dawn/src/tint/sem/struct.h | 4 |
/src/dawn/src/tint/sem/vector.h | 2 |
/src/dawn/src/tint/inspector/entry_point.h | 2 |
/src/dawn/src/tint/inspector/inspector.h | 1 |
/src/dawn/src/tint/inspector/scalar.cc | 5 |
/src/dawn/src/tint/sem/function.cc | 10 |
/src/dawn/src/tint/ast/variable.cc | 1 |
/src/dawn/src/tint/ast/variable.h | 1 |
/src/dawn/src/tint/sem/sampler.h | 1 |
/src/dawn/src/tint/sem/texture.h | 1 |
/src/dawn/src/tint/inspector/resource_binding.cc | 3 |
/src/dawn/src/tint/sem/multisampled_texture.h | 1 |
/src/dawn/src/tint/sem/array.h | 1 |
/src/dawn/src/tint/sem/matrix.h | 2 |
/src/dawn/src/tint/sem/sampled_texture.h | 1 |
/src/dawn/src/tint/sem/storage_texture.h | 3 |
/src/dawn/src/tint/sem/call_target.cc | 1 |
/src/dawn/src/tint/writer/wgsl/generator.cc | 2 |
/src/dawn/src/tint/writer/wgsl/generator_impl.cc | 2 |
/src/dawn/src/tint/writer/text_generator.h | 6 |
/src/dawn/src/tint/writer/text_generator.cc | 6 |
/src/dawn/src/tint/writer/spirv/generator.cc | 3 |
/src/dawn/src/tint/writer/spirv/generator_impl.cc | 4 |
/src/dawn/src/tint/transform/builtin_polyfill.h | 1 |
/src/dawn/src/tint/writer/generate_external_texture_bindings.cc | 1 |
/src/dawn/src/tint/transform/canonicalize_entry_point_io.cc | 2 |
/src/dawn/src/tint/writer/spirv/generator_impl.h | 2 |
/src/dawn/src/tint/writer/spirv/builder.cc | 40 |
/src/dawn/src/tint/writer/spirv/instruction.cc | 4 |
/src/dawn/src/tint/writer/spirv/operand.h | 9 |
/src/dawn/src/tint/writer/spirv/builder.h | 12 |
/src/dawn/src/tint/sem/module.h | 2 |
/src/dawn/src/tint/writer/spirv/scalar_constant.h | 6 |
/src/dawn/src/tint/sem/u32.cc | 2 |
/src/dawn/src/tint/sem/node.cc | 1 |
/src/dawn/src/tint/sem/atomic.h | 1 |
/src/dawn/src/tint/sem/pointer.h | 1 |
/src/dawn/src/tint/utils/map.h | 5 |
/src/dawn/src/tint/number.cc | 2 |
/usr/local/bin/../include/c++/v1/math.h | 5 |
/src/dawn/src/tint/ast/traverse_expressions.h | 1 |
/src/dawn/src/tint/writer/spirv/function.h | 4 |
/src/dawn/src/tint/writer/spirv/function.cc | 2 |
/src/dawn/src/tint/writer/spirv/instruction.h | 1 |
/src/dawn/src/tint/writer/spirv/binary_writer.cc | 2 |
/src/dawn/src/tint/writer/spirv/operand.cc | 1 |
/src/dawn/src/tint/writer/spirv/binary_writer.h | 1 |
/src/dawn/src/tint/writer/hlsl/generator_impl.cc | 4 |
/src/dawn/src/tint/transform/array_length_from_uniform.cc | 2 |
/src/dawn/src/tint/writer/flatten_bindings.cc | 1 |
/src/dawn/src/tint/writer/msl/generator_impl.cc | 4 |
/src/dawn/src/tint/writer/msl/generator_impl.h | 2 |
/src/dawn/src/tint/fuzzers/tint_common_fuzzer.h | 3 |
/src/dawn/src/tint/fuzzers/tint_spirv_tools_fuzzer/util.cc | 4 |
/src/dawn/src/tint/fuzzers/tint_spirv_tools_fuzzer/cli.h | 1 |
The following is the call tree with color coding for which functions are hit/not hit. This info is based on the coverage achieved of all fuzzers together and not just this specific fuzzer. We use the following coloring scheme where min/max is an interval [min:max) (max non-inclusive) to color the callsite based on how many times the callsite is covered at run time.
Min | Max | Color |
---|---|---|
0 | 1 | red |
1 | 10 | gold |
10 | 30 | yellow |
30 | 50 | greenyellow |
50 | 1000000000000 | lawngreen |
For further technical details on the call tree overview, please see the Glossary .
The distribution of callsites in terms of coloring is
Color | Callsite count | Percentage |
---|---|---|
red | 7998 | 48.3% |
gold | 2006 | 12.1% |
yellow | 464 | 2.80% |
greenyellow | 189 | 1.14% |
lawngreen | 5868 | 35.5% |
All colors | 16525 | 100 |
The following link provides a visualisation of the full call tree overlaid with coverage information: full call tree
For further technical details on how the call tree is generated, please see the Glossary .
The followings nodes represent call sites where fuzz blockers occur.
Amount of callsites blocked | Calltree index | Parent function | Callsite | Largest blocked function |
---|---|---|---|---|
625 | 3902 | spvtools::val::ValidateExtInst(spvtools::val::ValidationState_t&, spvtools::val::Instruction const*) | call site | |
559 | 4957 | spvtools::val::ValidationState_t::GetConstantValUint64(unsigned int, unsigned long*) const | call site | strtoul |
423 | 4529 | spvtools::val::ValidationState_t::GetIdOpcode(unsigned int) const | call site | |
373 | 71 |
tint::utils::BlockAllocator
|
call site | __errno_location |
326 | 10099 | spvtools::val::(anonymous namespace)::BuiltInsValidator::ValidateLocalInvocationIndexAtReference(spvtools::val::Decoration const&, spvtools::val::Instruction const&, spvtools::val::Instruction const&, spvtools::val::Instruction const&) | call site | |
200 | 9827 | spvtools::val::(anonymous namespace)::BuiltInsValidator::ValidateSampleMaskAtReference(spvtools::val::Decoration const&, spvtools::val::Instruction const&, spvtools::val::Instruction const&, spvtools::val::Instruction const&) | call site | |
195 | 16145 | tint::sem::Type::is_scalar_vector() const | call site | |
161 | 15871 | tint::sem::Node::~Node() | call site | _ZN4tint6SwitchINS_6detail5InferEKNS_3sem4TypeEJZZNS_6writer5spirv7Builder20GenerateTypeIfNeededEPS5_ENK4$_59clEvEUlPKNS3_5ArrayEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_4BoolEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_3F32EE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_3F16EE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_3I32EE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_6MatrixEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_7PointerEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_9ReferenceEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_6StructEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_3U32EE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_6VectorEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_4VoidEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_14StorageTextureEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_7TextureEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_7SamplerEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlNS_7DefaultEE_EEEDaPT0_DpOT1_ |
157 | 6783 | spvtools::val::(anonymous namespace)::ValidateArrayLength(spvtools::val::ValidationState_t&, spvtools::val::Instruction const*) | call site | spvOpcodeString |
132 | 859 |
tint::utils::VectorRef
|
call site | |
106 | 11719 |
spvtools::utils::SmallVector
|
call site | |
83 | 580 | tint::ast::Module::AddEnable(tint::ast::Enable const*) | call site |
[EXPERIMENTAL] The followings are the branches where fuzzer fails to bypass.
Blocked Complexity | Reachable Complexity | Function Name | Blocked Branch |
---|---|---|---|
3052 | 33084 | tint::fuzzers::CommonFuzzer::Run(unsignedcharconst*,unsignedlong) | /src/dawn/src/tint/fuzzers/tint_common_fuzzer.cc:176 |
2691 | 6856 | tint::transform::CanonicalizeEntryPointIO::State::Process() | /src/dawn/src/tint/transform/canonicalize_entry_point_io.cc:524 |
1890 | 3426 | tint::transform::CanonicalizeEntryPointIO::State::Process() | /src/dawn/src/tint/transform/canonicalize_entry_point_io.cc:556 |
1315 | 2851 | tint::transform::CanonicalizeEntryPointIO::State::Process() | /src/dawn/src/tint/transform/canonicalize_entry_point_io.cc:561 |
1248 | 1948 | spvtools::val::NonUniformPass(spvtools::val::ValidationState_t&,spvtools::val::Instructionconst*) | /src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_non_uniform.cpp:125 |
731 | 1859 | tint::transform::CanonicalizeEntryPointIO::State::Process() | /src/dawn/src/tint/transform/canonicalize_entry_point_io.cc:567 |
699 | 847 | tint::transform::ArrayLengthFromUniform::Run(tint::CloneContext&,tint::transform::DataMapconst&,tint::transform::DataMap&)const::$_2::operator()(tint::ast::CallExpressionconst*,tint::sem::VariableUserconst*,tint::sem::GlobalVariableconst*)const | /src/dawn/src/tint/transform/array_length_from_uniform.cc:163 |
677 | 677 | tint::reader::spirv::ParserImpl::GetMemoryObjectDeclarationForHandle(unsignedint,bool) | /src/dawn/src/tint/reader/spirv/parser_impl.cc:2234 |
621 | 621 | spvtools::val::(anonymousnamespace)::BuiltInsValidator::ValidateHelperInvocationAtDefinition(spvtools::val::Decorationconst&,spvtools::val::Instructionconst&) | /src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_builtins.cpp:1504 |
621 | 621 | spvtools::val::(anonymousnamespace)::BuiltInsValidator::ValidateSampleIdAtDefinition(spvtools::val::Decorationconst&,spvtools::val::Instructionconst&) | /src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_builtins.cpp:2188 |
614 | 1908 | spvtools::val::ConversionPass(spvtools::val::ValidationState_t&,spvtools::val::Instructionconst*) | /src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_conversion.cpp:143 |
614 | 1908 | spvtools::val::ConversionPass(spvtools::val::ValidationState_t&,spvtools::val::Instructionconst*) | /src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_conversion.cpp:214 |
Function name | source code lines | source lines hit | percentage hit |
---|
filename | functions hit |
---|---|
/src/dawn/src/tint/fuzzers/tint_spv_reader_hlsl_writer_fuzzer.cc | 1 |
/src/dawn/src/tint/fuzzers/tint_reader_writer_fuzzer.h | 4 |
/src/dawn/src/tint/fuzzers/tint_common_fuzzer.cc | 10 |
/src/dawn/src/tint/diagnostic/diagnostic.cc | 10 |
/src/dawn/src/tint/writer/spirv/generator.h | 1 |
/src/dawn/src/tint/writer/hlsl/generator.cc | 4 |
/src/dawn/src/tint/writer/array_length_from_uniform_options.cc | 2 |
/src/dawn/src/tint/sem/binding_point.h | 1 |
/src/dawn/src/tint/writer/msl/generator.cc | 4 |
/src/dawn/src/tint/fuzzers/fuzzer_init.cc | 1 |
/src/dawn/src/tint/fuzzers/tint_common_fuzzer.h | 3 |
/src/dawn/src/tint/fuzzers/transform_builder.h | 3 |
/src/dawn/src/tint/transform/manager.h | 33 |
/src/dawn/src/tint/debug.cc | 2 |
/src/dawn/src/tint/diagnostic/printer_linux.cc | 1 |
/src/dawn/src/tint/diagnostic/formatter.cc | 2 |
/src/dawn/src/tint/diagnostic/formatter.h | 1 |
/src/dawn/src/tint/program.cc | 9 |
/src/dawn/src/tint/program_id.cc | 4 |
/src/dawn/src/tint/ast/node_id.h | 1 |
/src/dawn/src/tint/sem/type_manager.cc | 4 |
/src/dawn/src/tint/utils/unique_allocator.h | 18 |
/src/dawn/src/tint/utils/block_allocator.h | 42 |
/src/dawn/src/tint/sem/info.cc | 4 |
/src/dawn/src/tint/symbol_table.cc | 8 |
/src/dawn/src/tint/utils/hash.h | 7 |
/src/dawn/src/tint/reader/wgsl/parser.cc | 1 |
/src/dawn/src/tint/reader/wgsl/parser_impl.cc | 91 |
/src/dawn/src/tint/program_builder.cc | 9 |
/src/dawn/src/tint/program_builder.h | 131 |
/src/dawn/src/tint/source.h | 8 |
/src/dawn/src/tint/utils/math.h | 2 |
/src/dawn/src/tint/utils/bitcast.h | 6 |
/src/dawn/src/tint/ast/module.cc | 5 |
/src/dawn/src/tint/castable.h | 171 |
/src/dawn/src/tint/ast/node.cc | 1 |
/src/dawn/src/tint/clone_context.cc | 4 |
/src/dawn/src/tint/utils/vector.h | 224 |
/src/dawn/src/tint/ast/function.h | 2 |
/src/dawn/src/tint/reader/wgsl/lexer.cc | 29 |
/src/dawn/src/tint/reader/wgsl/token.cc | 12 |
/src/dawn/src/tint/reader/wgsl/token.h | 15 |
/src/dawn/src/tint/debug.h | 58 |
/src/dawn/src/tint/number.h | 8 |
/src/dawn/src/tint/utils/result.h | 6 |
/src/dawn/src/tint/text/unicode.cc | 3 |
/src/dawn/src/tint/text/unicode.h | 4 |
/src/dawn/src/tint/reader/wgsl/parser_impl.h | 63 |
/src/dawn/src/tint/diagnostic/diagnostic.h | 10 |
/src/dawn/src/tint/ast/extension.cc | 2 |
/src/dawn/src/tint/ast/enable.cc | 1 |
/src/dawn/src/tint/ast/node.h | 1 |
/src/dawn/src/tint/program_id.h | 3 |
/src/dawn/src/tint/symbol.cc | 8 |
/src/dawn/src/tint/reader/wgsl/parser_impl_detail.h | 2 |
/src/dawn/src/tint/ast/storage_texture.cc | 1 |
/src/dawn/src/tint/ast/u32.cc | 1 |
/src/dawn/src/tint/ast/ast_type.cc | 1 |
/src/dawn/src/tint/utils/defer.h | 7 |
/src/dawn/src/tint/resolver/resolver.cc | 9 |
/src/dawn/src/tint/resolver/const_eval.cc | 1 |
/src/dawn/src/tint/resolver/intrinsic_table.cc | 1 |
/src/dawn/src/tint/resolver/dependency_graph.cc | 28 |
/src/dawn/src/tint/resolver/sem_helper.cc | 2 |
/src/dawn/src/tint/resolver/validator.cc | 15 |
/src/dawn/src/tint/utils/unique_vector.h | 37 |
/src/dawn/src/tint/utils/hashset.h | 23 |
/src/dawn/src/tint/utils/bitset.h | 7 |
/src/dawn/src/tint/sem/info.h | 12 |
/src/dawn/src/tint/ast/module.h | 5 |
/usr/local/bin/../include/c++/v1/optional | 7 |
/src/dawn/src/tint/traits.h | 5 |
/src/dawn/src/tint/symbol.h | 2 |
/src/dawn/src/tint/scope_stack.h | 6 |
/src/dawn/src/tint/utils/scoped_assignment.h | 2 |
/src/dawn/include/tint/override_id.h | 1 |
/src/dawn/src/tint/ast/attribute.h | 8 |
/src/dawn/src/tint/resolver/sem_helper.h | 2 |
/src/dawn/src/tint/sem/variable.h | 11 |
/src/dawn/src/tint/sem/function.h | 10 |
/src/dawn/src/tint/ast/function.cc | 2 |
/src/dawn/src/tint/ast/pipeline_stage.cc | 1 |
/src/dawn/src/tint/sem/expression.h | 5 |
/src/dawn/src/tint/sem/statement.h | 1 |
/src/dawn/src/tint/sem/builtin.h | 1 |
/src/dawn/src/tint/utils/enum_set.h | 2 |
/src/dawn/src/tint/sem/call.h | 3 |
/src/dawn/src/tint/resolver/uniformity.cc | 20 |
/src/dawn/src/tint/sem/expression.cc | 1 |
/src/dawn/src/tint/sem/materialize.h | 1 |
/src/dawn/src/tint/sem/builtin.cc | 1 |
/src/dawn/src/tint/sem/builtin_type.cc | 1 |
/src/dawn/src/tint/sem/call_target.h | 3 |
/src/dawn/src/tint/reader/spirv/parser.cc | 1 |
/src/dawn/src/tint/reader/spirv/parser_impl.cc | 76 |
/src/dawn/src/tint/reader/reader.cc | 2 |
/src/dawn/src/tint/reader/spirv/parser_type.cc | 40 |
/src/dawn/src/tint/reader/spirv/fail_stream.h | 101 |
/src/dawn/src/tint/reader/spirv/namer.cc | 11 |
/src/dawn/src/tint/reader/spirv/enum_converter.cc | 7 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/libspirv.cpp | 10 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/table.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opcode.cpp | 20 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/operand.cpp | 13 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/ext_inst.cpp | 5 |
/src/dawn/src/tint/reader/spirv/parser_impl.h | 28 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate.cpp | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/table.h | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/diagnostic.cpp | 4 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/spirv_validator_options.cpp | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/spirv_validator_options.h | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validation_state.cpp | 81 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/enum_set.h | 19 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/assembly_grammar.h | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validation_state.h | 55 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/spirv_target_env.cpp | 6 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/binary.cpp | 19 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/diagnostic.h | 119 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/spirv_endian.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/assembly_grammar.cpp | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/string_utils.h | 7 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/make_unique.h | 57 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/name_mapper.cpp | 9 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/name_mapper.h | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/parsed_operand.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/hex_float.h | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/extensions.cpp | 2 |
/src/dawn/out/Debug/third_party/spirv-tools/enum_string_mapping.inc | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/instruction.h | 31 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/instruction.cpp | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/disassemble.cpp | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/print.h | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/text.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/disassemble.h | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/function.h | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/function.cpp | 28 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/basic_block.h | 19 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_id.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_capability.cpp | 15 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_layout.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_cfg.cpp | 20 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/basic_block.cpp | 18 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/construct.cpp | 12 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/construct.h | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_instruction.cpp | 13 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/string_utils.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_misc.cpp | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_scopes.cpp | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_debug.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_annotation.cpp | 14 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/decoration.h | 7 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_extensions.cpp | 35 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_mode_setting.cpp | 4 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_type.cpp | 14 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_constants.cpp | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_memory.cpp | 25 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_function.cpp | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_image.cpp | 37 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/bitutils.h | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_conversion.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_composites.cpp | 11 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_arithmetics.cpp | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_bitwise.cpp | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_logicals.cpp | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_derivatives.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_atomics.cpp | 7 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_memory_semantics.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_primitives.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_barriers.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_non_uniform.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_literals.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_ray_query.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_ray_tracing.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_adjacency.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/cfa.h | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_decorations.cpp | 39 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_interfaces.cpp | 7 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_builtins.cpp | 108 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_execution_limitations.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_small_type_uses.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/build_module.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/ir_context.h | 24 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/module.h | 19 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/instruction_list.h | 10 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/ilist.h | 21 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/instruction.h | 23 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/ilist_node.h | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/ir_loader.cpp | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/ir_loader.h | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/function.h | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/iterator.h | 12 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/basic_block.h | 10 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/def_use_manager.h | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/def_use_manager.cpp | 9 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/module.cpp | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/function.cpp | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/constants.cpp | 10 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/reflect.h | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/constants.h | 13 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/small_vector.h | 12 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/type_manager.cpp | 14 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/instruction.cpp | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/types.h | 63 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/types.cpp | 16 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/type_manager.h | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/decoration_manager.h | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/decoration_manager.cpp | 7 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/log.h | 1 |
/src/dawn/src/tint/reader/spirv/namer.h | 5 |
/src/dawn/src/tint/reader/spirv/enum_converter.h | 1 |
/src/dawn/src/tint/reader/spirv/entry_point_info.h | 1 |
/src/dawn/src/tint/reader/spirv/usage.cc | 15 |
/src/dawn/src/tint/reader/spirv/parser_type.h | 2 |
/src/dawn/src/tint/castable.cc | 1 |
/src/dawn/src/tint/ast/disable_validation_attribute.cc | 1 |
/src/dawn/src/tint/ast/alias.cc | 1 |
/src/dawn/src/tint/ast/type_decl.cc | 1 |
/usr/local/bin/../include/c++/v1/initializer_list | 1 |
/src/dawn/src/tint/reader/spirv/usage.h | 7 |
/src/dawn/src/tint/reader/spirv/function.cc | 115 |
/src/dawn/src/tint/reader/spirv/function.h | 80 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/basic_block.cpp | 3 |
/src/dawn/src/tint/reader/spirv/construct.h | 2 |
/src/dawn/src/tint/ast/texture.cc | 2 |
/src/dawn/src/tint/transform/spirv_atomic.cc | 1 |
/src/dawn/src/tint/utils/hashmap.h | 3 |
/src/dawn/src/tint/clone_context.h | 1 |
/src/dawn/src/tint/program.h | 5 |
/src/dawn/src/tint/symbol_table.h | 1 |
/src/dawn/src/tint/transform/manager.cc | 3 |
/src/dawn/src/tint/transform/transform.cc | 6 |
/src/dawn/src/tint/transform/transform.h | 12 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/include/spirv-tools/libspirv.hpp | 1 |
/src/dawn/src/tint/inspector/inspector.cc | 34 |
/src/dawn/src/tint/inspector/entry_point.cc | 6 |
/src/dawn/src/tint/sem/type.cc | 17 |
/src/dawn/src/tint/sem/reference.h | 1 |
/src/dawn/src/tint/sem/struct.h | 4 |
/src/dawn/src/tint/sem/vector.h | 2 |
/src/dawn/src/tint/inspector/entry_point.h | 2 |
/src/dawn/src/tint/inspector/inspector.h | 1 |
/src/dawn/src/tint/inspector/scalar.cc | 5 |
/src/dawn/src/tint/sem/function.cc | 10 |
/src/dawn/src/tint/ast/variable.cc | 1 |
/src/dawn/src/tint/ast/variable.h | 1 |
/src/dawn/src/tint/sem/sampler.h | 1 |
/src/dawn/src/tint/sem/texture.h | 1 |
/src/dawn/src/tint/inspector/resource_binding.cc | 3 |
/src/dawn/src/tint/sem/multisampled_texture.h | 1 |
/src/dawn/src/tint/sem/array.h | 1 |
/src/dawn/src/tint/sem/matrix.h | 2 |
/src/dawn/src/tint/sem/sampled_texture.h | 1 |
/src/dawn/src/tint/sem/storage_texture.h | 3 |
/src/dawn/src/tint/sem/call_target.cc | 1 |
/src/dawn/src/tint/writer/wgsl/generator.cc | 2 |
/src/dawn/src/tint/writer/wgsl/generator_impl.cc | 2 |
/src/dawn/src/tint/writer/text_generator.h | 6 |
/src/dawn/src/tint/writer/text_generator.cc | 6 |
/src/dawn/src/tint/writer/spirv/generator.cc | 3 |
/src/dawn/src/tint/writer/spirv/generator_impl.cc | 4 |
/src/dawn/src/tint/transform/builtin_polyfill.h | 1 |
/src/dawn/src/tint/writer/generate_external_texture_bindings.cc | 1 |
/src/dawn/src/tint/transform/canonicalize_entry_point_io.cc | 2 |
/src/dawn/src/tint/writer/spirv/generator_impl.h | 2 |
/src/dawn/src/tint/writer/spirv/builder.cc | 40 |
/src/dawn/src/tint/writer/spirv/instruction.cc | 4 |
/src/dawn/src/tint/writer/spirv/operand.h | 9 |
/src/dawn/src/tint/writer/spirv/builder.h | 12 |
/src/dawn/src/tint/sem/module.h | 2 |
/src/dawn/src/tint/writer/spirv/scalar_constant.h | 6 |
/src/dawn/src/tint/sem/u32.cc | 2 |
/src/dawn/src/tint/sem/node.cc | 1 |
/src/dawn/src/tint/sem/atomic.h | 1 |
/src/dawn/src/tint/sem/pointer.h | 1 |
/src/dawn/src/tint/utils/map.h | 5 |
/src/dawn/src/tint/number.cc | 2 |
/usr/local/bin/../include/c++/v1/math.h | 5 |
/src/dawn/src/tint/ast/traverse_expressions.h | 1 |
/src/dawn/src/tint/writer/spirv/function.h | 4 |
/src/dawn/src/tint/writer/spirv/function.cc | 2 |
/src/dawn/src/tint/writer/spirv/instruction.h | 1 |
/src/dawn/src/tint/writer/spirv/binary_writer.cc | 2 |
/src/dawn/src/tint/writer/spirv/operand.cc | 1 |
/src/dawn/src/tint/writer/spirv/binary_writer.h | 1 |
/src/dawn/src/tint/writer/hlsl/generator_impl.cc | 4 |
/src/dawn/src/tint/transform/array_length_from_uniform.cc | 2 |
/src/dawn/src/tint/writer/flatten_bindings.cc | 1 |
/src/dawn/src/tint/writer/msl/generator_impl.cc | 4 |
/src/dawn/src/tint/writer/msl/generator_impl.h | 2 |
The following is the call tree with color coding for which functions are hit/not hit. This info is based on the coverage achieved of all fuzzers together and not just this specific fuzzer. We use the following coloring scheme where min/max is an interval [min:max) (max non-inclusive) to color the callsite based on how many times the callsite is covered at run time.
Min | Max | Color |
---|---|---|
0 | 1 | red |
1 | 10 | gold |
10 | 30 | yellow |
30 | 50 | greenyellow |
50 | 1000000000000 | lawngreen |
For further technical details on the call tree overview, please see the Glossary .
The distribution of callsites in terms of coloring is
Color | Callsite count | Percentage |
---|---|---|
red | 7667 | 46.3% |
gold | 1935 | 11.7% |
yellow | 442 | 2.67% |
greenyellow | 192 | 1.16% |
lawngreen | 6291 | 38.0% |
All colors | 16527 | 100 |
The following link provides a visualisation of the full call tree overlaid with coverage information: full call tree
For further technical details on how the call tree is generated, please see the Glossary .
The followings nodes represent call sites where fuzz blockers occur.
Amount of callsites blocked | Calltree index | Parent function | Callsite | Largest blocked function |
---|---|---|---|---|
563 | 3951 | spvtools::val::ValidateExtInst(spvtools::val::ValidationState_t&, spvtools::val::Instruction const*) | call site | |
559 | 4944 | spvtools::val::ValidationState_t::GetConstantValUint64(unsigned int, unsigned long*) const | call site | strtoul |
423 | 4516 | spvtools::val::ValidationState_t::GetIdOpcode(unsigned int) const | call site | |
326 | 10086 | spvtools::val::(anonymous namespace)::BuiltInsValidator::ValidateLocalInvocationIndexAtReference(spvtools::val::Decoration const&, spvtools::val::Instruction const&, spvtools::val::Instruction const&, spvtools::val::Instruction const&) | call site | |
303 | 117 | tint::reader::wgsl::Lexer::length() const | call site | __errno_location |
196 | 9818 | spvtools::val::(anonymous namespace)::BuiltInsValidator::ValidateSamplePositionAtDefinition(spvtools::val::Decoration const&, spvtools::val::Instruction const&) | call site | |
177 | 16326 | tint::fuzzers::CommonFuzzer::Run(unsigned char const*, unsigned long) | call site | |
163 | 6764 | spvtools::val::(anonymous namespace)::ValidateArrayLength(spvtools::val::ValidationState_t&, spvtools::val::Instruction const*) | call site | spvOpcodeString |
134 | 15893 |
tint::writer::spirv::Builder::push_type(spv::Op, std::__1::vector
|
call site | |
132 | 846 |
tint::utils::VectorRef
|
call site | |
106 | 11706 |
spvtools::utils::SmallVector
|
call site | |
85 | 567 | tint::ast::Module::AddEnable(tint::ast::Enable const*) | call site |
[EXPERIMENTAL] The followings are the branches where fuzzer fails to bypass.
Blocked Complexity | Reachable Complexity | Function Name | Blocked Branch |
---|---|---|---|
2071 | 33084 | tint::fuzzers::CommonFuzzer::Run(unsignedcharconst*,unsignedlong) | /src/dawn/src/tint/fuzzers/tint_common_fuzzer.cc:176 |
2063 | 23105 | tint::fuzzers::CommonFuzzer::Run(unsignedcharconst*,unsignedlong) | /src/dawn/src/tint/fuzzers/tint_common_fuzzer.cc:159 |
2051 | 12335 | tint::fuzzers::CommonFuzzer::Run(unsignedcharconst*,unsignedlong) | /src/dawn/src/tint/fuzzers/tint_common_fuzzer.cc:200 |
1388 | 1429 | tint::reader::wgsl::ParserImpl::translation_unit() | /src/dawn/src/tint/reader/wgsl/parser_impl.cc:329 |
1248 | 1948 | spvtools::val::NonUniformPass(spvtools::val::ValidationState_t&,spvtools::val::Instructionconst*) | /src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_non_uniform.cpp:125 |
725 | 1135 | tint::writer::spirv::Builder::GenerateExecutionModes(tint::ast::Functionconst*,unsignedint) | /src/dawn/src/tint/writer/spirv/builder.cc:510 |
677 | 677 | tint::reader::spirv::ParserImpl::GetMemoryObjectDeclarationForHandle(unsignedint,bool) | /src/dawn/src/tint/reader/spirv/parser_impl.cc:2234 |
634 | 4553 | tint::transform::Transform::CreateASTTypeFor(tint::CloneContext&,tint::sem::Typeconst*) | /src/dawn/src/tint/transform/transform.cc:99 |
621 | 621 | spvtools::val::(anonymousnamespace)::BuiltInsValidator::ValidateHelperInvocationAtDefinition(spvtools::val::Decorationconst&,spvtools::val::Instructionconst&) | /src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_builtins.cpp:1504 |
621 | 621 | spvtools::val::(anonymousnamespace)::BuiltInsValidator::ValidatePointCoordAtDefinition(spvtools::val::Decorationconst&,spvtools::val::Instructionconst&) | /src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_builtins.cpp:1746 |
621 | 621 | spvtools::val::(anonymousnamespace)::BuiltInsValidator::ValidateSamplePositionAtDefinition(spvtools::val::Decorationconst&,spvtools::val::Instructionconst&) | /src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_builtins.cpp:2308 |
614 | 3158 | spvtools::val::ConversionPass(spvtools::val::ValidationState_t&,spvtools::val::Instructionconst*) | /src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_conversion.cpp:128 |
Function name | source code lines | source lines hit | percentage hit |
---|
filename | functions hit |
---|---|
/src/dawn/src/tint/fuzzers/tint_spirv_tools_fuzzer/fuzzer.cc | 1 |
/src/dawn/src/tint/fuzzers/tint_common_fuzzer.cc | 10 |
/src/dawn/src/tint/diagnostic/diagnostic.cc | 10 |
/src/dawn/src/tint/writer/spirv/generator.h | 1 |
/src/dawn/src/tint/writer/hlsl/generator.cc | 4 |
/src/dawn/src/tint/writer/array_length_from_uniform_options.cc | 2 |
/src/dawn/src/tint/sem/binding_point.h | 1 |
/src/dawn/src/tint/writer/msl/generator.cc | 4 |
/src/dawn/src/tint/debug.cc | 2 |
/src/dawn/src/tint/diagnostic/printer_linux.cc | 1 |
/src/dawn/src/tint/diagnostic/formatter.cc | 2 |
/src/dawn/src/tint/diagnostic/formatter.h | 1 |
/src/dawn/src/tint/program.cc | 9 |
/src/dawn/src/tint/program_id.cc | 4 |
/src/dawn/src/tint/ast/node_id.h | 1 |
/src/dawn/src/tint/sem/type_manager.cc | 4 |
/src/dawn/src/tint/utils/unique_allocator.h | 18 |
/src/dawn/src/tint/utils/block_allocator.h | 42 |
/src/dawn/src/tint/sem/info.cc | 4 |
/src/dawn/src/tint/symbol_table.cc | 8 |
/src/dawn/src/tint/utils/hash.h | 7 |
/src/dawn/src/tint/reader/wgsl/parser.cc | 1 |
/src/dawn/src/tint/reader/wgsl/parser_impl.cc | 91 |
/src/dawn/src/tint/program_builder.cc | 9 |
/src/dawn/src/tint/program_builder.h | 131 |
/src/dawn/src/tint/source.h | 8 |
/src/dawn/src/tint/utils/math.h | 2 |
/src/dawn/src/tint/utils/bitcast.h | 6 |
/src/dawn/src/tint/ast/module.cc | 5 |
/src/dawn/src/tint/castable.h | 171 |
/src/dawn/src/tint/ast/node.cc | 1 |
/src/dawn/src/tint/clone_context.cc | 4 |
/src/dawn/src/tint/utils/vector.h | 224 |
/src/dawn/src/tint/ast/function.h | 2 |
/src/dawn/src/tint/reader/wgsl/lexer.cc | 29 |
/src/dawn/src/tint/reader/wgsl/token.cc | 12 |
/src/dawn/src/tint/reader/wgsl/token.h | 15 |
/src/dawn/src/tint/debug.h | 58 |
/src/dawn/src/tint/number.h | 8 |
/src/dawn/src/tint/utils/result.h | 6 |
/src/dawn/src/tint/text/unicode.cc | 3 |
/src/dawn/src/tint/text/unicode.h | 4 |
/src/dawn/src/tint/reader/wgsl/parser_impl.h | 63 |
/src/dawn/src/tint/diagnostic/diagnostic.h | 10 |
/src/dawn/src/tint/ast/extension.cc | 2 |
/src/dawn/src/tint/ast/enable.cc | 1 |
/src/dawn/src/tint/ast/node.h | 1 |
/src/dawn/src/tint/program_id.h | 3 |
/src/dawn/src/tint/symbol.cc | 8 |
/src/dawn/src/tint/reader/wgsl/parser_impl_detail.h | 2 |
/src/dawn/src/tint/ast/storage_texture.cc | 1 |
/src/dawn/src/tint/ast/u32.cc | 1 |
/src/dawn/src/tint/ast/ast_type.cc | 1 |
/src/dawn/src/tint/utils/defer.h | 7 |
/src/dawn/src/tint/resolver/resolver.cc | 9 |
/src/dawn/src/tint/resolver/const_eval.cc | 1 |
/src/dawn/src/tint/resolver/intrinsic_table.cc | 1 |
/src/dawn/src/tint/resolver/dependency_graph.cc | 28 |
/src/dawn/src/tint/resolver/sem_helper.cc | 2 |
/src/dawn/src/tint/resolver/validator.cc | 15 |
/src/dawn/src/tint/utils/unique_vector.h | 37 |
/src/dawn/src/tint/utils/hashset.h | 23 |
/src/dawn/src/tint/utils/bitset.h | 7 |
/src/dawn/src/tint/sem/info.h | 12 |
/src/dawn/src/tint/ast/module.h | 5 |
/usr/local/bin/../include/c++/v1/optional | 7 |
/src/dawn/src/tint/traits.h | 5 |
/src/dawn/src/tint/symbol.h | 2 |
/src/dawn/src/tint/scope_stack.h | 6 |
/src/dawn/src/tint/utils/scoped_assignment.h | 2 |
/src/dawn/include/tint/override_id.h | 1 |
/src/dawn/src/tint/ast/attribute.h | 8 |
/src/dawn/src/tint/resolver/sem_helper.h | 2 |
/src/dawn/src/tint/sem/variable.h | 11 |
/src/dawn/src/tint/sem/function.h | 10 |
/src/dawn/src/tint/ast/function.cc | 2 |
/src/dawn/src/tint/ast/pipeline_stage.cc | 1 |
/src/dawn/src/tint/sem/expression.h | 5 |
/src/dawn/src/tint/sem/statement.h | 1 |
/src/dawn/src/tint/sem/builtin.h | 1 |
/src/dawn/src/tint/utils/enum_set.h | 2 |
/src/dawn/src/tint/sem/call.h | 3 |
/src/dawn/src/tint/resolver/uniformity.cc | 20 |
/src/dawn/src/tint/sem/expression.cc | 1 |
/src/dawn/src/tint/sem/materialize.h | 1 |
/src/dawn/src/tint/sem/builtin.cc | 1 |
/src/dawn/src/tint/sem/builtin_type.cc | 1 |
/src/dawn/src/tint/sem/call_target.h | 3 |
/src/dawn/src/tint/reader/spirv/parser.cc | 1 |
/src/dawn/src/tint/reader/spirv/parser_impl.cc | 76 |
/src/dawn/src/tint/reader/reader.cc | 2 |
/src/dawn/src/tint/reader/spirv/parser_type.cc | 40 |
/src/dawn/src/tint/reader/spirv/fail_stream.h | 101 |
/src/dawn/src/tint/reader/spirv/namer.cc | 11 |
/src/dawn/src/tint/reader/spirv/enum_converter.cc | 7 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/libspirv.cpp | 10 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/table.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opcode.cpp | 20 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/operand.cpp | 13 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/ext_inst.cpp | 5 |
/src/dawn/src/tint/reader/spirv/parser_impl.h | 28 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate.cpp | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/table.h | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/diagnostic.cpp | 4 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/spirv_validator_options.cpp | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/spirv_validator_options.h | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validation_state.cpp | 81 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/enum_set.h | 19 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/assembly_grammar.h | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validation_state.h | 55 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/spirv_target_env.cpp | 6 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/binary.cpp | 19 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/diagnostic.h | 119 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/spirv_endian.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/assembly_grammar.cpp | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/string_utils.h | 7 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/make_unique.h | 57 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/name_mapper.cpp | 9 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/name_mapper.h | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/parsed_operand.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/hex_float.h | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/extensions.cpp | 2 |
/src/dawn/out/Debug/third_party/spirv-tools/enum_string_mapping.inc | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/instruction.h | 31 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/instruction.cpp | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/disassemble.cpp | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/print.h | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/text.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/disassemble.h | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/function.h | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/function.cpp | 28 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/basic_block.h | 19 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_id.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_capability.cpp | 15 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_layout.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_cfg.cpp | 20 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/basic_block.cpp | 18 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/construct.cpp | 12 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/construct.h | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_instruction.cpp | 13 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/string_utils.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_misc.cpp | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_scopes.cpp | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_debug.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_annotation.cpp | 14 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/decoration.h | 7 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_extensions.cpp | 35 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_mode_setting.cpp | 4 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_type.cpp | 14 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_constants.cpp | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_memory.cpp | 25 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_function.cpp | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_image.cpp | 37 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/bitutils.h | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_conversion.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_composites.cpp | 11 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_arithmetics.cpp | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_bitwise.cpp | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_logicals.cpp | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_derivatives.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_atomics.cpp | 7 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_memory_semantics.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_primitives.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_barriers.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_non_uniform.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_literals.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_ray_query.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_ray_tracing.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_adjacency.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/cfa.h | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_decorations.cpp | 39 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_interfaces.cpp | 7 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_builtins.cpp | 108 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_execution_limitations.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_small_type_uses.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/build_module.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/ir_context.h | 24 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/module.h | 19 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/instruction_list.h | 10 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/ilist.h | 21 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/instruction.h | 23 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/ilist_node.h | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/ir_loader.cpp | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/ir_loader.h | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/function.h | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/iterator.h | 12 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/basic_block.h | 10 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/def_use_manager.h | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/def_use_manager.cpp | 9 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/module.cpp | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/function.cpp | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/constants.cpp | 10 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/reflect.h | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/constants.h | 13 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/small_vector.h | 12 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/type_manager.cpp | 14 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/instruction.cpp | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/types.h | 63 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/types.cpp | 16 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/type_manager.h | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/decoration_manager.h | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/decoration_manager.cpp | 7 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/log.h | 1 |
/src/dawn/src/tint/reader/spirv/namer.h | 5 |
/src/dawn/src/tint/reader/spirv/enum_converter.h | 1 |
/src/dawn/src/tint/reader/spirv/entry_point_info.h | 1 |
/src/dawn/src/tint/reader/spirv/usage.cc | 15 |
/src/dawn/src/tint/reader/spirv/parser_type.h | 2 |
/src/dawn/src/tint/castable.cc | 1 |
/src/dawn/src/tint/ast/disable_validation_attribute.cc | 1 |
/src/dawn/src/tint/ast/alias.cc | 1 |
/src/dawn/src/tint/ast/type_decl.cc | 1 |
/usr/local/bin/../include/c++/v1/initializer_list | 1 |
/src/dawn/src/tint/reader/spirv/usage.h | 7 |
/src/dawn/src/tint/reader/spirv/function.cc | 115 |
/src/dawn/src/tint/reader/spirv/function.h | 80 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/basic_block.cpp | 3 |
/src/dawn/src/tint/reader/spirv/construct.h | 2 |
/src/dawn/src/tint/ast/texture.cc | 2 |
/src/dawn/src/tint/transform/spirv_atomic.cc | 1 |
/src/dawn/src/tint/utils/hashmap.h | 3 |
/src/dawn/src/tint/clone_context.h | 1 |
/src/dawn/src/tint/program.h | 5 |
/src/dawn/src/tint/symbol_table.h | 1 |
/src/dawn/src/tint/transform/manager.cc | 3 |
/src/dawn/src/tint/transform/transform.cc | 6 |
/src/dawn/src/tint/transform/manager.h | 32 |
/src/dawn/src/tint/transform/transform.h | 12 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/include/spirv-tools/libspirv.hpp | 1 |
/src/dawn/src/tint/inspector/inspector.cc | 34 |
/src/dawn/src/tint/inspector/entry_point.cc | 6 |
/src/dawn/src/tint/sem/type.cc | 17 |
/src/dawn/src/tint/sem/reference.h | 1 |
/src/dawn/src/tint/sem/struct.h | 4 |
/src/dawn/src/tint/sem/vector.h | 2 |
/src/dawn/src/tint/inspector/entry_point.h | 2 |
/src/dawn/src/tint/inspector/inspector.h | 1 |
/src/dawn/src/tint/inspector/scalar.cc | 5 |
/src/dawn/src/tint/sem/function.cc | 10 |
/src/dawn/src/tint/ast/variable.cc | 1 |
/src/dawn/src/tint/ast/variable.h | 1 |
/src/dawn/src/tint/sem/sampler.h | 1 |
/src/dawn/src/tint/sem/texture.h | 1 |
/src/dawn/src/tint/inspector/resource_binding.cc | 3 |
/src/dawn/src/tint/sem/multisampled_texture.h | 1 |
/src/dawn/src/tint/sem/array.h | 1 |
/src/dawn/src/tint/sem/matrix.h | 2 |
/src/dawn/src/tint/sem/sampled_texture.h | 1 |
/src/dawn/src/tint/sem/storage_texture.h | 3 |
/src/dawn/src/tint/sem/call_target.cc | 1 |
/src/dawn/src/tint/writer/wgsl/generator.cc | 2 |
/src/dawn/src/tint/writer/wgsl/generator_impl.cc | 2 |
/src/dawn/src/tint/writer/text_generator.h | 6 |
/src/dawn/src/tint/writer/text_generator.cc | 6 |
/src/dawn/src/tint/writer/spirv/generator.cc | 3 |
/src/dawn/src/tint/writer/spirv/generator_impl.cc | 4 |
/src/dawn/src/tint/transform/builtin_polyfill.h | 1 |
/src/dawn/src/tint/writer/generate_external_texture_bindings.cc | 1 |
/src/dawn/src/tint/transform/canonicalize_entry_point_io.cc | 2 |
/src/dawn/src/tint/writer/spirv/generator_impl.h | 2 |
/src/dawn/src/tint/writer/spirv/builder.cc | 40 |
/src/dawn/src/tint/writer/spirv/instruction.cc | 4 |
/src/dawn/src/tint/writer/spirv/operand.h | 9 |
/src/dawn/src/tint/writer/spirv/builder.h | 12 |
/src/dawn/src/tint/sem/module.h | 2 |
/src/dawn/src/tint/writer/spirv/scalar_constant.h | 6 |
/src/dawn/src/tint/sem/u32.cc | 2 |
/src/dawn/src/tint/sem/node.cc | 1 |
/src/dawn/src/tint/sem/atomic.h | 1 |
/src/dawn/src/tint/sem/pointer.h | 1 |
/src/dawn/src/tint/utils/map.h | 5 |
/src/dawn/src/tint/number.cc | 2 |
/usr/local/bin/../include/c++/v1/math.h | 5 |
/src/dawn/src/tint/ast/traverse_expressions.h | 1 |
/src/dawn/src/tint/writer/spirv/function.h | 4 |
/src/dawn/src/tint/writer/spirv/function.cc | 2 |
/src/dawn/src/tint/writer/spirv/instruction.h | 1 |
/src/dawn/src/tint/writer/spirv/binary_writer.cc | 2 |
/src/dawn/src/tint/writer/spirv/operand.cc | 1 |
/src/dawn/src/tint/writer/spirv/binary_writer.h | 1 |
/src/dawn/src/tint/writer/hlsl/generator_impl.cc | 4 |
/src/dawn/src/tint/transform/array_length_from_uniform.cc | 2 |
/src/dawn/src/tint/writer/flatten_bindings.cc | 1 |
/src/dawn/src/tint/writer/msl/generator_impl.cc | 4 |
/src/dawn/src/tint/writer/msl/generator_impl.h | 2 |
/src/dawn/src/tint/fuzzers/tint_common_fuzzer.h | 3 |
/src/dawn/src/tint/fuzzers/tint_spirv_tools_fuzzer/util.cc | 4 |
/src/dawn/src/tint/fuzzers/tint_spirv_tools_fuzzer/cli.h | 1 |
The following is the call tree with color coding for which functions are hit/not hit. This info is based on the coverage achieved of all fuzzers together and not just this specific fuzzer. We use the following coloring scheme where min/max is an interval [min:max) (max non-inclusive) to color the callsite based on how many times the callsite is covered at run time.
Min | Max | Color |
---|---|---|
0 | 1 | red |
1 | 10 | gold |
10 | 30 | yellow |
30 | 50 | greenyellow |
50 | 1000000000000 | lawngreen |
For further technical details on the call tree overview, please see the Glossary .
The distribution of callsites in terms of coloring is
Color | Callsite count | Percentage |
---|---|---|
red | 7777 | 47.0% |
gold | 1842 | 11.1% |
yellow | 354 | 2.14% |
greenyellow | 162 | 0.97% |
lawngreen | 6405 | 38.7% |
All colors | 16540 | 100 |
The following link provides a visualisation of the full call tree overlaid with coverage information: full call tree
For further technical details on how the call tree is generated, please see the Glossary .
The followings nodes represent call sites where fuzz blockers occur.
Amount of callsites blocked | Calltree index | Parent function | Callsite | Largest blocked function |
---|---|---|---|---|
625 | 3916 | spvtools::val::ValidateExtInst(spvtools::val::ValidationState_t&, spvtools::val::Instruction const*) | call site | |
559 | 4971 | spvtools::val::ValidationState_t::GetConstantValUint64(unsigned int, unsigned long*) const | call site | strtoul |
423 | 4543 | spvtools::val::ValidationState_t::GetIdOpcode(unsigned int) const | call site | |
373 | 85 |
tint::utils::BlockAllocator
|
call site | __errno_location |
326 | 10113 | spvtools::val::(anonymous namespace)::BuiltInsValidator::ValidateLocalInvocationIndexAtReference(spvtools::val::Decoration const&, spvtools::val::Instruction const&, spvtools::val::Instruction const&, spvtools::val::Instruction const&) | call site | |
177 | 16353 | tint::fuzzers::CommonFuzzer::Run(unsigned char const*, unsigned long) | call site | |
163 | 6791 | spvtools::val::(anonymous namespace)::ValidateArrayLength(spvtools::val::ValidationState_t&, spvtools::val::Instruction const*) | call site | spvOpcodeString |
132 | 873 |
tint::utils::VectorRef
|
call site | |
116 | 10445 | spvtools::val::(anonymous namespace)::BuiltInsValidator::ValidateRayTracingBuiltinsAtDefinition(spvtools::val::Decoration const&, spvtools::val::Instruction const&) | call site | |
106 | 9930 | spvtools::val::(anonymous namespace)::BuiltInsValidator::ValidateI32InputAtDefinition(spvtools::val::Decoration const&, spvtools::val::Instruction const&) | call site | |
106 | 11732 |
spvtools::utils::SmallVector
|
call site | |
92 | 9618 | spvtools::val::(anonymous namespace)::BuiltInsValidator::ValidateInstanceIndexAtReference(spvtools::val::Decoration const&, spvtools::val::Instruction const&, spvtools::val::Instruction const&, spvtools::val::Instruction const&) | call site |
[EXPERIMENTAL] The followings are the branches where fuzzer fails to bypass.
Blocked Complexity | Reachable Complexity | Function Name | Blocked Branch |
---|---|---|---|
2589 | 6856 | tint::transform::CanonicalizeEntryPointIO::State::Process() | /src/dawn/src/tint/transform/canonicalize_entry_point_io.cc:524 |
2306 | 33084 | tint::fuzzers::CommonFuzzer::Run(unsignedcharconst*,unsignedlong) | /src/dawn/src/tint/fuzzers/tint_common_fuzzer.cc:176 |
1794 | 5268 | tint::transform::CanonicalizeEntryPointIO::State::Process() | /src/dawn/src/tint/transform/canonicalize_entry_point_io.cc:532 |
1425 | 3426 | tint::transform::CanonicalizeEntryPointIO::State::Process() | /src/dawn/src/tint/transform/canonicalize_entry_point_io.cc:556 |
1248 | 1948 | spvtools::val::NonUniformPass(spvtools::val::ValidationState_t&,spvtools::val::Instructionconst*) | /src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_non_uniform.cpp:125 |
850 | 1988 | tint::transform::CanonicalizeEntryPointIO::State::Process() | /src/dawn/src/tint/transform/canonicalize_entry_point_io.cc:567 |
677 | 677 | tint::reader::spirv::ParserImpl::GetMemoryObjectDeclarationForHandle(unsignedint,bool) | /src/dawn/src/tint/reader/spirv/parser_impl.cc:2234 |
663 | 663 | spvtools::val::(anonymousnamespace)::BuiltInsValidator::ValidateRayTracingBuiltinsAtDefinition(spvtools::val::Decorationconst&,spvtools::val::Instructionconst&) | /src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_builtins.cpp:3913 |
624 | 624 | spvtools::val::(anonymousnamespace)::BuiltInsValidator::ValidateTessLevelInnerAtDefinition(spvtools::val::Decorationconst&,spvtools::val::Instructionconst&) | /src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_builtins.cpp:2451 |
621 | 621 | spvtools::val::(anonymousnamespace)::BuiltInsValidator::ValidateHelperInvocationAtDefinition(spvtools::val::Decorationconst&,spvtools::val::Instructionconst&) | /src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_builtins.cpp:1504 |
616 | 1908 | spvtools::val::ConversionPass(spvtools::val::ValidationState_t&,spvtools::val::Instructionconst*) | /src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_conversion.cpp:143 |
616 | 1908 | spvtools::val::ConversionPass(spvtools::val::ValidationState_t&,spvtools::val::Instructionconst*) | /src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_conversion.cpp:178 |
Function name | source code lines | source lines hit | percentage hit |
---|
filename | functions hit |
---|---|
/src/dawn/src/tint/fuzzers/tint_spv_reader_spv_writer_fuzzer.cc | 1 |
/src/dawn/src/tint/fuzzers/data_builder.h | 6 |
/src/dawn/src/tint/fuzzers/random_generator.cc | 2 |
/src/dawn/src/tint/utils/hash.h | 9 |
/src/dawn/src/tint/writer/spirv/generator.h | 1 |
/src/dawn/src/tint/fuzzers/tint_common_fuzzer.cc | 11 |
/src/dawn/src/tint/fuzzers/tint_reader_writer_fuzzer.h | 4 |
/src/dawn/src/tint/diagnostic/diagnostic.cc | 10 |
/src/dawn/src/tint/writer/hlsl/generator.cc | 4 |
/src/dawn/src/tint/writer/array_length_from_uniform_options.cc | 2 |
/src/dawn/src/tint/sem/binding_point.h | 1 |
/src/dawn/src/tint/writer/msl/generator.cc | 4 |
/src/dawn/src/tint/fuzzers/tint_common_fuzzer.h | 4 |
/src/dawn/src/tint/fuzzers/fuzzer_init.cc | 1 |
/src/dawn/src/tint/fuzzers/transform_builder.h | 3 |
/src/dawn/src/tint/transform/manager.h | 33 |
/src/dawn/src/tint/debug.cc | 2 |
/src/dawn/src/tint/diagnostic/printer_linux.cc | 1 |
/src/dawn/src/tint/diagnostic/formatter.cc | 2 |
/src/dawn/src/tint/diagnostic/formatter.h | 1 |
/src/dawn/src/tint/program.cc | 9 |
/src/dawn/src/tint/program_id.cc | 4 |
/src/dawn/src/tint/ast/node_id.h | 1 |
/src/dawn/src/tint/sem/type_manager.cc | 4 |
/src/dawn/src/tint/utils/unique_allocator.h | 18 |
/src/dawn/src/tint/utils/block_allocator.h | 42 |
/src/dawn/src/tint/sem/info.cc | 4 |
/src/dawn/src/tint/symbol_table.cc | 8 |
/src/dawn/src/tint/reader/wgsl/parser.cc | 1 |
/src/dawn/src/tint/reader/wgsl/parser_impl.cc | 91 |
/src/dawn/src/tint/program_builder.cc | 9 |
/src/dawn/src/tint/program_builder.h | 131 |
/src/dawn/src/tint/source.h | 8 |
/src/dawn/src/tint/utils/math.h | 2 |
/src/dawn/src/tint/utils/bitcast.h | 6 |
/src/dawn/src/tint/ast/module.cc | 5 |
/src/dawn/src/tint/castable.h | 171 |
/src/dawn/src/tint/ast/node.cc | 1 |
/src/dawn/src/tint/clone_context.cc | 4 |
/src/dawn/src/tint/utils/vector.h | 224 |
/src/dawn/src/tint/ast/function.h | 2 |
/src/dawn/src/tint/reader/wgsl/lexer.cc | 29 |
/src/dawn/src/tint/reader/wgsl/token.cc | 12 |
/src/dawn/src/tint/reader/wgsl/token.h | 15 |
/src/dawn/src/tint/debug.h | 58 |
/src/dawn/src/tint/number.h | 8 |
/src/dawn/src/tint/utils/result.h | 6 |
/src/dawn/src/tint/text/unicode.cc | 3 |
/src/dawn/src/tint/text/unicode.h | 4 |
/src/dawn/src/tint/reader/wgsl/parser_impl.h | 63 |
/src/dawn/src/tint/diagnostic/diagnostic.h | 10 |
/src/dawn/src/tint/ast/extension.cc | 2 |
/src/dawn/src/tint/ast/enable.cc | 1 |
/src/dawn/src/tint/ast/node.h | 1 |
/src/dawn/src/tint/program_id.h | 3 |
/src/dawn/src/tint/symbol.cc | 8 |
/src/dawn/src/tint/reader/wgsl/parser_impl_detail.h | 2 |
/src/dawn/src/tint/ast/storage_texture.cc | 1 |
/src/dawn/src/tint/ast/u32.cc | 1 |
/src/dawn/src/tint/ast/ast_type.cc | 1 |
/src/dawn/src/tint/utils/defer.h | 7 |
/src/dawn/src/tint/resolver/resolver.cc | 9 |
/src/dawn/src/tint/resolver/const_eval.cc | 1 |
/src/dawn/src/tint/resolver/intrinsic_table.cc | 1 |
/src/dawn/src/tint/resolver/dependency_graph.cc | 28 |
/src/dawn/src/tint/resolver/sem_helper.cc | 2 |
/src/dawn/src/tint/resolver/validator.cc | 15 |
/src/dawn/src/tint/utils/unique_vector.h | 37 |
/src/dawn/src/tint/utils/hashset.h | 23 |
/src/dawn/src/tint/utils/bitset.h | 7 |
/src/dawn/src/tint/sem/info.h | 12 |
/src/dawn/src/tint/ast/module.h | 5 |
/usr/local/bin/../include/c++/v1/optional | 7 |
/src/dawn/src/tint/traits.h | 5 |
/src/dawn/src/tint/symbol.h | 2 |
/src/dawn/src/tint/scope_stack.h | 6 |
/src/dawn/src/tint/utils/scoped_assignment.h | 2 |
/src/dawn/include/tint/override_id.h | 1 |
/src/dawn/src/tint/ast/attribute.h | 8 |
/src/dawn/src/tint/resolver/sem_helper.h | 2 |
/src/dawn/src/tint/sem/variable.h | 11 |
/src/dawn/src/tint/sem/function.h | 10 |
/src/dawn/src/tint/ast/function.cc | 2 |
/src/dawn/src/tint/ast/pipeline_stage.cc | 1 |
/src/dawn/src/tint/sem/expression.h | 5 |
/src/dawn/src/tint/sem/statement.h | 1 |
/src/dawn/src/tint/sem/builtin.h | 1 |
/src/dawn/src/tint/utils/enum_set.h | 2 |
/src/dawn/src/tint/sem/call.h | 3 |
/src/dawn/src/tint/resolver/uniformity.cc | 20 |
/src/dawn/src/tint/sem/expression.cc | 1 |
/src/dawn/src/tint/sem/materialize.h | 1 |
/src/dawn/src/tint/sem/builtin.cc | 1 |
/src/dawn/src/tint/sem/builtin_type.cc | 1 |
/src/dawn/src/tint/sem/call_target.h | 3 |
/src/dawn/src/tint/reader/spirv/parser.cc | 1 |
/src/dawn/src/tint/reader/spirv/parser_impl.cc | 76 |
/src/dawn/src/tint/reader/reader.cc | 2 |
/src/dawn/src/tint/reader/spirv/parser_type.cc | 40 |
/src/dawn/src/tint/reader/spirv/fail_stream.h | 101 |
/src/dawn/src/tint/reader/spirv/namer.cc | 11 |
/src/dawn/src/tint/reader/spirv/enum_converter.cc | 7 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/libspirv.cpp | 10 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/table.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opcode.cpp | 20 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/operand.cpp | 13 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/ext_inst.cpp | 5 |
/src/dawn/src/tint/reader/spirv/parser_impl.h | 28 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate.cpp | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/table.h | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/diagnostic.cpp | 4 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/spirv_validator_options.cpp | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/spirv_validator_options.h | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validation_state.cpp | 81 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/enum_set.h | 19 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/assembly_grammar.h | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validation_state.h | 55 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/spirv_target_env.cpp | 6 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/binary.cpp | 19 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/diagnostic.h | 119 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/spirv_endian.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/assembly_grammar.cpp | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/string_utils.h | 7 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/make_unique.h | 57 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/name_mapper.cpp | 9 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/name_mapper.h | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/parsed_operand.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/hex_float.h | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/extensions.cpp | 2 |
/src/dawn/out/Debug/third_party/spirv-tools/enum_string_mapping.inc | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/instruction.h | 31 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/instruction.cpp | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/disassemble.cpp | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/print.h | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/text.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/disassemble.h | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/function.h | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/function.cpp | 28 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/basic_block.h | 19 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_id.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_capability.cpp | 15 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_layout.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_cfg.cpp | 20 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/basic_block.cpp | 18 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/construct.cpp | 12 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/construct.h | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_instruction.cpp | 13 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/string_utils.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_misc.cpp | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_scopes.cpp | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_debug.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_annotation.cpp | 14 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/decoration.h | 7 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_extensions.cpp | 35 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_mode_setting.cpp | 4 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_type.cpp | 14 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_constants.cpp | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_memory.cpp | 25 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_function.cpp | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_image.cpp | 37 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/bitutils.h | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_conversion.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_composites.cpp | 11 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_arithmetics.cpp | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_bitwise.cpp | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_logicals.cpp | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_derivatives.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_atomics.cpp | 7 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_memory_semantics.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_primitives.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_barriers.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_non_uniform.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_literals.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_ray_query.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_ray_tracing.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_adjacency.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/cfa.h | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_decorations.cpp | 39 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_interfaces.cpp | 7 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_builtins.cpp | 108 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_execution_limitations.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_small_type_uses.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/build_module.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/ir_context.h | 24 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/module.h | 19 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/instruction_list.h | 10 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/ilist.h | 21 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/instruction.h | 23 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/ilist_node.h | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/ir_loader.cpp | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/ir_loader.h | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/function.h | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/iterator.h | 12 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/basic_block.h | 10 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/def_use_manager.h | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/def_use_manager.cpp | 9 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/module.cpp | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/function.cpp | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/constants.cpp | 10 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/reflect.h | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/constants.h | 13 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/small_vector.h | 12 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/type_manager.cpp | 14 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/instruction.cpp | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/types.h | 63 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/types.cpp | 16 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/type_manager.h | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/decoration_manager.h | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/decoration_manager.cpp | 7 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/log.h | 1 |
/src/dawn/src/tint/reader/spirv/namer.h | 5 |
/src/dawn/src/tint/reader/spirv/enum_converter.h | 1 |
/src/dawn/src/tint/reader/spirv/entry_point_info.h | 1 |
/src/dawn/src/tint/reader/spirv/usage.cc | 15 |
/src/dawn/src/tint/reader/spirv/parser_type.h | 2 |
/src/dawn/src/tint/castable.cc | 1 |
/src/dawn/src/tint/ast/disable_validation_attribute.cc | 1 |
/src/dawn/src/tint/ast/alias.cc | 1 |
/src/dawn/src/tint/ast/type_decl.cc | 1 |
/usr/local/bin/../include/c++/v1/initializer_list | 1 |
/src/dawn/src/tint/reader/spirv/usage.h | 7 |
/src/dawn/src/tint/reader/spirv/function.cc | 115 |
/src/dawn/src/tint/reader/spirv/function.h | 80 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/basic_block.cpp | 3 |
/src/dawn/src/tint/reader/spirv/construct.h | 2 |
/src/dawn/src/tint/ast/texture.cc | 2 |
/src/dawn/src/tint/transform/spirv_atomic.cc | 1 |
/src/dawn/src/tint/utils/hashmap.h | 3 |
/src/dawn/src/tint/clone_context.h | 1 |
/src/dawn/src/tint/program.h | 5 |
/src/dawn/src/tint/symbol_table.h | 1 |
/src/dawn/src/tint/transform/manager.cc | 3 |
/src/dawn/src/tint/transform/transform.cc | 6 |
/src/dawn/src/tint/transform/transform.h | 12 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/include/spirv-tools/libspirv.hpp | 1 |
/src/dawn/src/tint/inspector/inspector.cc | 34 |
/src/dawn/src/tint/inspector/entry_point.cc | 6 |
/src/dawn/src/tint/sem/type.cc | 17 |
/src/dawn/src/tint/sem/reference.h | 1 |
/src/dawn/src/tint/sem/struct.h | 4 |
/src/dawn/src/tint/sem/vector.h | 2 |
/src/dawn/src/tint/inspector/entry_point.h | 2 |
/src/dawn/src/tint/inspector/inspector.h | 1 |
/src/dawn/src/tint/inspector/scalar.cc | 5 |
/src/dawn/src/tint/sem/function.cc | 10 |
/src/dawn/src/tint/ast/variable.cc | 1 |
/src/dawn/src/tint/ast/variable.h | 1 |
/src/dawn/src/tint/sem/sampler.h | 1 |
/src/dawn/src/tint/sem/texture.h | 1 |
/src/dawn/src/tint/inspector/resource_binding.cc | 3 |
/src/dawn/src/tint/sem/multisampled_texture.h | 1 |
/src/dawn/src/tint/sem/array.h | 1 |
/src/dawn/src/tint/sem/matrix.h | 2 |
/src/dawn/src/tint/sem/sampled_texture.h | 1 |
/src/dawn/src/tint/sem/storage_texture.h | 3 |
/src/dawn/src/tint/sem/call_target.cc | 1 |
/src/dawn/src/tint/writer/wgsl/generator.cc | 2 |
/src/dawn/src/tint/writer/wgsl/generator_impl.cc | 2 |
/src/dawn/src/tint/writer/text_generator.h | 6 |
/src/dawn/src/tint/writer/text_generator.cc | 6 |
/src/dawn/src/tint/writer/spirv/generator.cc | 3 |
/src/dawn/src/tint/writer/spirv/generator_impl.cc | 4 |
/src/dawn/src/tint/transform/builtin_polyfill.h | 1 |
/src/dawn/src/tint/writer/generate_external_texture_bindings.cc | 1 |
/src/dawn/src/tint/transform/canonicalize_entry_point_io.cc | 2 |
/src/dawn/src/tint/writer/spirv/generator_impl.h | 2 |
/src/dawn/src/tint/writer/spirv/builder.cc | 40 |
/src/dawn/src/tint/writer/spirv/instruction.cc | 4 |
/src/dawn/src/tint/writer/spirv/operand.h | 9 |
/src/dawn/src/tint/writer/spirv/builder.h | 12 |
/src/dawn/src/tint/sem/module.h | 2 |
/src/dawn/src/tint/writer/spirv/scalar_constant.h | 6 |
/src/dawn/src/tint/sem/u32.cc | 2 |
/src/dawn/src/tint/sem/node.cc | 1 |
/src/dawn/src/tint/sem/atomic.h | 1 |
/src/dawn/src/tint/sem/pointer.h | 1 |
/src/dawn/src/tint/utils/map.h | 5 |
/src/dawn/src/tint/number.cc | 2 |
/usr/local/bin/../include/c++/v1/math.h | 5 |
/src/dawn/src/tint/ast/traverse_expressions.h | 1 |
/src/dawn/src/tint/writer/spirv/function.h | 4 |
/src/dawn/src/tint/writer/spirv/function.cc | 2 |
/src/dawn/src/tint/writer/spirv/instruction.h | 1 |
/src/dawn/src/tint/writer/spirv/binary_writer.cc | 2 |
/src/dawn/src/tint/writer/spirv/operand.cc | 1 |
/src/dawn/src/tint/writer/spirv/binary_writer.h | 1 |
/src/dawn/src/tint/writer/hlsl/generator_impl.cc | 4 |
/src/dawn/src/tint/transform/array_length_from_uniform.cc | 2 |
/src/dawn/src/tint/writer/flatten_bindings.cc | 1 |
/src/dawn/src/tint/writer/msl/generator_impl.cc | 4 |
/src/dawn/src/tint/writer/msl/generator_impl.h | 2 |
/src/dawn/src/tint/fuzzers/random_generator.h | 1 |
The following is the call tree with color coding for which functions are hit/not hit. This info is based on the coverage achieved of all fuzzers together and not just this specific fuzzer. We use the following coloring scheme where min/max is an interval [min:max) (max non-inclusive) to color the callsite based on how many times the callsite is covered at run time.
Min | Max | Color |
---|---|---|
0 | 1 | red |
1 | 10 | gold |
10 | 30 | yellow |
30 | 50 | greenyellow |
50 | 1000000000000 | lawngreen |
For further technical details on the call tree overview, please see the Glossary .
The distribution of callsites in terms of coloring is
Color | Callsite count | Percentage |
---|---|---|
red | 9740 | 58.8% |
gold | 897 | 5.41% |
yellow | 213 | 1.28% |
greenyellow | 173 | 1.04% |
lawngreen | 5527 | 33.3% |
All colors | 16550 | 100 |
The following link provides a visualisation of the full call tree overlaid with coverage information: full call tree
For further technical details on how the call tree is generated, please see the Glossary .
The followings nodes represent call sites where fuzz blockers occur.
Amount of callsites blocked | Calltree index | Parent function | Callsite | Largest blocked function |
---|---|---|---|---|
694 | 3856 | spvtools::val::ValidateExtInst(spvtools::val::ValidationState_t&, spvtools::val::Instruction const*) | call site | |
559 | 4980 | spvtools::val::ValidationState_t::GetConstantValUint64(unsigned int, unsigned long*) const | call site | strtoul |
448 | 10122 | spvtools::val::(anonymous namespace)::BuiltInsValidator::ValidateLocalInvocationIndexAtReference(spvtools::val::Decoration const&, spvtools::val::Instruction const&, spvtools::val::Instruction const&, spvtools::val::Instruction const&) | call site | |
423 | 4552 | spvtools::val::ValidationState_t::GetIdOpcode(unsigned int) const | call site | |
373 | 94 |
tint::utils::BlockAllocator
|
call site | __errno_location |
306 | 16098 | tint::sem::Type::is_integer_scalar() const | call site | |
227 | 9850 | spvtools::val::(anonymous namespace)::BuiltInsValidator::ValidateSampleMaskAtReference(spvtools::val::Decoration const&, spvtools::val::Instruction const&, spvtools::val::Instruction const&, spvtools::val::Instruction const&) | call site | |
173 | 6790 | spvtools::val::(anonymous namespace)::ValidateArrayLength(spvtools::val::ValidationState_t&, spvtools::val::Instruction const*) | call site | spvOpcodeString |
161 | 15893 | tint::sem::Node::~Node() | call site | _ZN4tint6SwitchINS_6detail5InferEKNS_3sem4TypeEJZZNS_6writer5spirv7Builder20GenerateTypeIfNeededEPS5_ENK4$_59clEvEUlPKNS3_5ArrayEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_4BoolEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_3F32EE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_3F16EE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_3I32EE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_6MatrixEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_7PointerEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_9ReferenceEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_6StructEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_3U32EE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_6VectorEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_4VoidEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_14StorageTextureEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_7TextureEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_7SamplerEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlNS_7DefaultEE_EEEDaPT0_DpOT1_ |
132 | 882 |
tint::utils::VectorRef
|
call site | |
106 | 11741 |
spvtools::utils::SmallVector
|
call site | |
98 | 7899 | spvtools::val::ValidationState_t::IsIntCooperativeMatrixType(unsigned int) const | call site | spvOpcodeString |
[EXPERIMENTAL] The followings are the branches where fuzzer fails to bypass.
Blocked Complexity | Reachable Complexity | Function Name | Blocked Branch |
---|---|---|---|
2437 | 33084 | tint::fuzzers::CommonFuzzer::Run(unsignedcharconst*,unsignedlong) | /src/dawn/src/tint/fuzzers/tint_common_fuzzer.cc:176 |
2417 | 11997 | tint::fuzzers::CommonFuzzer::Run(unsignedcharconst*,unsignedlong) | /src/dawn/src/tint/fuzzers/tint_common_fuzzer.cc:202 |
1792 | 1792 | tint::reader::spirv::FunctionEmitter::EmitStatement(spvtools::opt::Instructionconst&) | /src/dawn/src/tint/reader/spirv/function.cc:3515 |
1615 | 1615 | tint::reader::spirv::FunctionEmitter::MaybeEmitCombinatorialValue(spvtools::opt::Instructionconst&) | /src/dawn/src/tint/reader/spirv/function.cc:3919 |
1516 | 6856 | tint::transform::CanonicalizeEntryPointIO::State::Process() | /src/dawn/src/tint/transform/canonicalize_entry_point_io.cc:524 |
1248 | 1948 | spvtools::val::NonUniformPass(spvtools::val::ValidationState_t&,spvtools::val::Instructionconst*) | /src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_non_uniform.cpp:125 |
844 | 1918 |
spvtools::opt::Module::ToBinary(std::__1::vector
|
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/module.cpp:163 |
721 | 1859 | tint::transform::CanonicalizeEntryPointIO::State::Process() | /src/dawn/src/tint/transform/canonicalize_entry_point_io.cc:567 |
699 | 847 | tint::transform::ArrayLengthFromUniform::Run(tint::CloneContext&,tint::transform::DataMapconst&,tint::transform::DataMap&)const::$_2::operator()(tint::ast::CallExpressionconst*,tint::sem::VariableUserconst*,tint::sem::GlobalVariableconst*)const | /src/dawn/src/tint/transform/array_length_from_uniform.cc:163 |
677 | 677 | tint::reader::spirv::ParserImpl::GetMemoryObjectDeclarationForHandle(unsignedint,bool) | /src/dawn/src/tint/reader/spirv/parser_impl.cc:2234 |
616 | 1294 | spvtools::val::ConversionPass(spvtools::val::ValidationState_t&,spvtools::val::Instructionconst*) | /src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_conversion.cpp:50 |
616 | 1294 | spvtools::val::ConversionPass(spvtools::val::ValidationState_t&,spvtools::val::Instructionconst*) | /src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_conversion.cpp:80 |
Function name | source code lines | source lines hit | percentage hit |
---|
filename | functions hit |
---|---|
/src/dawn/src/tint/fuzzers/tint_spv_reader_msl_writer_fuzzer.cc | 1 |
/src/dawn/src/tint/fuzzers/data_builder.h | 8 |
/src/dawn/src/tint/fuzzers/random_generator.cc | 2 |
/src/dawn/src/tint/utils/hash.h | 9 |
/src/dawn/src/tint/writer/msl/generator.cc | 5 |
/src/dawn/src/tint/writer/array_length_from_uniform_options.cc | 3 |
/src/dawn/src/tint/sem/binding_point.h | 1 |
/src/dawn/src/tint/fuzzers/tint_common_fuzzer.cc | 11 |
/src/dawn/src/tint/fuzzers/tint_reader_writer_fuzzer.h | 4 |
/src/dawn/src/tint/diagnostic/diagnostic.cc | 10 |
/src/dawn/src/tint/writer/spirv/generator.h | 1 |
/src/dawn/src/tint/writer/hlsl/generator.cc | 4 |
/src/dawn/src/tint/fuzzers/tint_common_fuzzer.h | 4 |
/src/dawn/src/tint/fuzzers/fuzzer_init.cc | 1 |
/src/dawn/src/tint/fuzzers/transform_builder.h | 3 |
/src/dawn/src/tint/transform/manager.h | 33 |
/src/dawn/src/tint/debug.cc | 2 |
/src/dawn/src/tint/diagnostic/printer_linux.cc | 1 |
/src/dawn/src/tint/diagnostic/formatter.cc | 2 |
/src/dawn/src/tint/diagnostic/formatter.h | 1 |
/src/dawn/src/tint/program.cc | 9 |
/src/dawn/src/tint/program_id.cc | 4 |
/src/dawn/src/tint/ast/node_id.h | 1 |
/src/dawn/src/tint/sem/type_manager.cc | 4 |
/src/dawn/src/tint/utils/unique_allocator.h | 18 |
/src/dawn/src/tint/utils/block_allocator.h | 42 |
/src/dawn/src/tint/sem/info.cc | 4 |
/src/dawn/src/tint/symbol_table.cc | 8 |
/src/dawn/src/tint/reader/wgsl/parser.cc | 1 |
/src/dawn/src/tint/reader/wgsl/parser_impl.cc | 91 |
/src/dawn/src/tint/program_builder.cc | 9 |
/src/dawn/src/tint/program_builder.h | 131 |
/src/dawn/src/tint/source.h | 8 |
/src/dawn/src/tint/utils/math.h | 2 |
/src/dawn/src/tint/utils/bitcast.h | 6 |
/src/dawn/src/tint/ast/module.cc | 5 |
/src/dawn/src/tint/castable.h | 171 |
/src/dawn/src/tint/ast/node.cc | 1 |
/src/dawn/src/tint/clone_context.cc | 4 |
/src/dawn/src/tint/utils/vector.h | 224 |
/src/dawn/src/tint/ast/function.h | 2 |
/src/dawn/src/tint/reader/wgsl/lexer.cc | 29 |
/src/dawn/src/tint/reader/wgsl/token.cc | 12 |
/src/dawn/src/tint/reader/wgsl/token.h | 15 |
/src/dawn/src/tint/debug.h | 58 |
/src/dawn/src/tint/number.h | 8 |
/src/dawn/src/tint/utils/result.h | 6 |
/src/dawn/src/tint/text/unicode.cc | 3 |
/src/dawn/src/tint/text/unicode.h | 4 |
/src/dawn/src/tint/reader/wgsl/parser_impl.h | 63 |
/src/dawn/src/tint/diagnostic/diagnostic.h | 10 |
/src/dawn/src/tint/ast/extension.cc | 2 |
/src/dawn/src/tint/ast/enable.cc | 1 |
/src/dawn/src/tint/ast/node.h | 1 |
/src/dawn/src/tint/program_id.h | 3 |
/src/dawn/src/tint/symbol.cc | 8 |
/src/dawn/src/tint/reader/wgsl/parser_impl_detail.h | 2 |
/src/dawn/src/tint/ast/storage_texture.cc | 1 |
/src/dawn/src/tint/ast/u32.cc | 1 |
/src/dawn/src/tint/ast/ast_type.cc | 1 |
/src/dawn/src/tint/utils/defer.h | 7 |
/src/dawn/src/tint/resolver/resolver.cc | 9 |
/src/dawn/src/tint/resolver/const_eval.cc | 1 |
/src/dawn/src/tint/resolver/intrinsic_table.cc | 1 |
/src/dawn/src/tint/resolver/dependency_graph.cc | 28 |
/src/dawn/src/tint/resolver/sem_helper.cc | 2 |
/src/dawn/src/tint/resolver/validator.cc | 15 |
/src/dawn/src/tint/utils/unique_vector.h | 37 |
/src/dawn/src/tint/utils/hashset.h | 23 |
/src/dawn/src/tint/utils/bitset.h | 7 |
/src/dawn/src/tint/sem/info.h | 12 |
/src/dawn/src/tint/ast/module.h | 5 |
/usr/local/bin/../include/c++/v1/optional | 7 |
/src/dawn/src/tint/traits.h | 5 |
/src/dawn/src/tint/symbol.h | 2 |
/src/dawn/src/tint/scope_stack.h | 6 |
/src/dawn/src/tint/utils/scoped_assignment.h | 2 |
/src/dawn/include/tint/override_id.h | 1 |
/src/dawn/src/tint/ast/attribute.h | 8 |
/src/dawn/src/tint/resolver/sem_helper.h | 2 |
/src/dawn/src/tint/sem/variable.h | 11 |
/src/dawn/src/tint/sem/function.h | 10 |
/src/dawn/src/tint/ast/function.cc | 2 |
/src/dawn/src/tint/ast/pipeline_stage.cc | 1 |
/src/dawn/src/tint/sem/expression.h | 5 |
/src/dawn/src/tint/sem/statement.h | 1 |
/src/dawn/src/tint/sem/builtin.h | 1 |
/src/dawn/src/tint/utils/enum_set.h | 2 |
/src/dawn/src/tint/sem/call.h | 3 |
/src/dawn/src/tint/resolver/uniformity.cc | 20 |
/src/dawn/src/tint/sem/expression.cc | 1 |
/src/dawn/src/tint/sem/materialize.h | 1 |
/src/dawn/src/tint/sem/builtin.cc | 1 |
/src/dawn/src/tint/sem/builtin_type.cc | 1 |
/src/dawn/src/tint/sem/call_target.h | 3 |
/src/dawn/src/tint/reader/spirv/parser.cc | 1 |
/src/dawn/src/tint/reader/spirv/parser_impl.cc | 76 |
/src/dawn/src/tint/reader/reader.cc | 2 |
/src/dawn/src/tint/reader/spirv/parser_type.cc | 40 |
/src/dawn/src/tint/reader/spirv/fail_stream.h | 101 |
/src/dawn/src/tint/reader/spirv/namer.cc | 11 |
/src/dawn/src/tint/reader/spirv/enum_converter.cc | 7 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/libspirv.cpp | 10 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/table.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opcode.cpp | 20 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/operand.cpp | 13 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/ext_inst.cpp | 5 |
/src/dawn/src/tint/reader/spirv/parser_impl.h | 28 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate.cpp | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/table.h | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/diagnostic.cpp | 4 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/spirv_validator_options.cpp | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/spirv_validator_options.h | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validation_state.cpp | 81 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/enum_set.h | 19 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/assembly_grammar.h | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validation_state.h | 55 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/spirv_target_env.cpp | 6 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/binary.cpp | 19 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/diagnostic.h | 119 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/spirv_endian.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/assembly_grammar.cpp | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/string_utils.h | 7 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/make_unique.h | 57 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/name_mapper.cpp | 9 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/name_mapper.h | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/parsed_operand.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/hex_float.h | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/extensions.cpp | 2 |
/src/dawn/out/Debug/third_party/spirv-tools/enum_string_mapping.inc | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/instruction.h | 31 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/instruction.cpp | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/disassemble.cpp | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/print.h | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/text.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/disassemble.h | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/function.h | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/function.cpp | 28 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/basic_block.h | 19 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_id.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_capability.cpp | 15 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_layout.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_cfg.cpp | 20 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/basic_block.cpp | 18 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/construct.cpp | 12 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/construct.h | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_instruction.cpp | 13 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/string_utils.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_misc.cpp | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_scopes.cpp | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_debug.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_annotation.cpp | 14 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/decoration.h | 7 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_extensions.cpp | 35 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_mode_setting.cpp | 4 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_type.cpp | 14 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_constants.cpp | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_memory.cpp | 25 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_function.cpp | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_image.cpp | 37 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/bitutils.h | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_conversion.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_composites.cpp | 11 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_arithmetics.cpp | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_bitwise.cpp | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_logicals.cpp | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_derivatives.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_atomics.cpp | 7 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_memory_semantics.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_primitives.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_barriers.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_non_uniform.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_literals.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_ray_query.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_ray_tracing.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_adjacency.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/cfa.h | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_decorations.cpp | 39 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_interfaces.cpp | 7 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_builtins.cpp | 108 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_execution_limitations.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_small_type_uses.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/build_module.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/ir_context.h | 24 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/module.h | 19 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/instruction_list.h | 10 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/ilist.h | 21 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/instruction.h | 23 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/ilist_node.h | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/ir_loader.cpp | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/ir_loader.h | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/function.h | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/iterator.h | 12 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/basic_block.h | 10 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/def_use_manager.h | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/def_use_manager.cpp | 9 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/module.cpp | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/function.cpp | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/constants.cpp | 10 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/reflect.h | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/constants.h | 13 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/small_vector.h | 12 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/type_manager.cpp | 14 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/instruction.cpp | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/types.h | 63 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/types.cpp | 16 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/type_manager.h | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/decoration_manager.h | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/decoration_manager.cpp | 7 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/log.h | 1 |
/src/dawn/src/tint/reader/spirv/namer.h | 5 |
/src/dawn/src/tint/reader/spirv/enum_converter.h | 1 |
/src/dawn/src/tint/reader/spirv/entry_point_info.h | 1 |
/src/dawn/src/tint/reader/spirv/usage.cc | 15 |
/src/dawn/src/tint/reader/spirv/parser_type.h | 2 |
/src/dawn/src/tint/castable.cc | 1 |
/src/dawn/src/tint/ast/disable_validation_attribute.cc | 1 |
/src/dawn/src/tint/ast/alias.cc | 1 |
/src/dawn/src/tint/ast/type_decl.cc | 1 |
/usr/local/bin/../include/c++/v1/initializer_list | 1 |
/src/dawn/src/tint/reader/spirv/usage.h | 7 |
/src/dawn/src/tint/reader/spirv/function.cc | 115 |
/src/dawn/src/tint/reader/spirv/function.h | 80 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/basic_block.cpp | 3 |
/src/dawn/src/tint/reader/spirv/construct.h | 2 |
/src/dawn/src/tint/ast/texture.cc | 2 |
/src/dawn/src/tint/transform/spirv_atomic.cc | 1 |
/src/dawn/src/tint/utils/hashmap.h | 3 |
/src/dawn/src/tint/clone_context.h | 1 |
/src/dawn/src/tint/program.h | 5 |
/src/dawn/src/tint/symbol_table.h | 1 |
/src/dawn/src/tint/transform/manager.cc | 3 |
/src/dawn/src/tint/transform/transform.cc | 6 |
/src/dawn/src/tint/transform/transform.h | 12 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/include/spirv-tools/libspirv.hpp | 1 |
/src/dawn/src/tint/inspector/inspector.cc | 34 |
/src/dawn/src/tint/inspector/entry_point.cc | 6 |
/src/dawn/src/tint/sem/type.cc | 17 |
/src/dawn/src/tint/sem/reference.h | 1 |
/src/dawn/src/tint/sem/struct.h | 4 |
/src/dawn/src/tint/sem/vector.h | 2 |
/src/dawn/src/tint/inspector/entry_point.h | 2 |
/src/dawn/src/tint/inspector/inspector.h | 1 |
/src/dawn/src/tint/inspector/scalar.cc | 5 |
/src/dawn/src/tint/sem/function.cc | 10 |
/src/dawn/src/tint/ast/variable.cc | 1 |
/src/dawn/src/tint/ast/variable.h | 1 |
/src/dawn/src/tint/sem/sampler.h | 1 |
/src/dawn/src/tint/sem/texture.h | 1 |
/src/dawn/src/tint/inspector/resource_binding.cc | 3 |
/src/dawn/src/tint/sem/multisampled_texture.h | 1 |
/src/dawn/src/tint/sem/array.h | 1 |
/src/dawn/src/tint/sem/matrix.h | 2 |
/src/dawn/src/tint/sem/sampled_texture.h | 1 |
/src/dawn/src/tint/sem/storage_texture.h | 3 |
/src/dawn/src/tint/sem/call_target.cc | 1 |
/src/dawn/src/tint/writer/wgsl/generator.cc | 2 |
/src/dawn/src/tint/writer/wgsl/generator_impl.cc | 2 |
/src/dawn/src/tint/writer/text_generator.h | 6 |
/src/dawn/src/tint/writer/text_generator.cc | 6 |
/src/dawn/src/tint/writer/spirv/generator.cc | 3 |
/src/dawn/src/tint/writer/spirv/generator_impl.cc | 4 |
/src/dawn/src/tint/transform/builtin_polyfill.h | 1 |
/src/dawn/src/tint/writer/generate_external_texture_bindings.cc | 1 |
/src/dawn/src/tint/transform/canonicalize_entry_point_io.cc | 2 |
/src/dawn/src/tint/writer/spirv/generator_impl.h | 2 |
/src/dawn/src/tint/writer/spirv/builder.cc | 40 |
/src/dawn/src/tint/writer/spirv/instruction.cc | 4 |
/src/dawn/src/tint/writer/spirv/operand.h | 9 |
/src/dawn/src/tint/writer/spirv/builder.h | 12 |
/src/dawn/src/tint/sem/module.h | 2 |
/src/dawn/src/tint/writer/spirv/scalar_constant.h | 6 |
/src/dawn/src/tint/sem/u32.cc | 2 |
/src/dawn/src/tint/sem/node.cc | 1 |
/src/dawn/src/tint/sem/atomic.h | 1 |
/src/dawn/src/tint/sem/pointer.h | 1 |
/src/dawn/src/tint/utils/map.h | 5 |
/src/dawn/src/tint/number.cc | 2 |
/usr/local/bin/../include/c++/v1/math.h | 5 |
/src/dawn/src/tint/ast/traverse_expressions.h | 1 |
/src/dawn/src/tint/writer/spirv/function.h | 4 |
/src/dawn/src/tint/writer/spirv/function.cc | 2 |
/src/dawn/src/tint/writer/spirv/instruction.h | 1 |
/src/dawn/src/tint/writer/spirv/binary_writer.cc | 2 |
/src/dawn/src/tint/writer/spirv/operand.cc | 1 |
/src/dawn/src/tint/writer/spirv/binary_writer.h | 1 |
/src/dawn/src/tint/writer/hlsl/generator_impl.cc | 4 |
/src/dawn/src/tint/transform/array_length_from_uniform.cc | 2 |
/src/dawn/src/tint/writer/flatten_bindings.cc | 1 |
/src/dawn/src/tint/writer/msl/generator_impl.cc | 4 |
/src/dawn/src/tint/writer/msl/generator_impl.h | 2 |
/src/dawn/src/tint/fuzzers/random_generator.h | 1 |
The following is the call tree with color coding for which functions are hit/not hit. This info is based on the coverage achieved of all fuzzers together and not just this specific fuzzer. We use the following coloring scheme where min/max is an interval [min:max) (max non-inclusive) to color the callsite based on how many times the callsite is covered at run time.
Min | Max | Color |
---|---|---|
0 | 1 | red |
1 | 10 | gold |
10 | 30 | yellow |
30 | 50 | greenyellow |
50 | 1000000000000 | lawngreen |
For further technical details on the call tree overview, please see the Glossary .
The distribution of callsites in terms of coloring is
Color | Callsite count | Percentage |
---|---|---|
red | 10383 | 62.8% |
gold | 447 | 2.70% |
yellow | 367 | 2.22% |
greenyellow | 163 | 0.98% |
lawngreen | 5167 | 31.2% |
All colors | 16527 | 100 |
The following link provides a visualisation of the full call tree overlaid with coverage information: full call tree
For further technical details on how the call tree is generated, please see the Glossary .
The followings nodes represent call sites where fuzz blockers occur.
Amount of callsites blocked | Calltree index | Parent function | Callsite | Largest blocked function |
---|---|---|---|---|
673 | 3841 | spvtools::val::ValidateExtInst(spvtools::val::ValidationState_t&, spvtools::val::Instruction const*) | call site | |
559 | 4944 | spvtools::val::ValidationState_t::GetConstantValUint64(unsigned int, unsigned long*) const | call site | strtoul |
448 | 10086 | spvtools::val::(anonymous namespace)::BuiltInsValidator::ValidateLocalInvocationIndexAtReference(spvtools::val::Decoration const&, spvtools::val::Instruction const&, spvtools::val::Instruction const&, spvtools::val::Instruction const&) | call site | |
441 | 16062 | tint::sem::Type::is_integer_scalar() const | call site | |
423 | 4516 | spvtools::val::ValidationState_t::GetIdOpcode(unsigned int) const | call site | |
303 | 117 | tint::reader::wgsl::Lexer::length() const | call site | __errno_location |
227 | 9814 | spvtools::val::(anonymous namespace)::BuiltInsValidator::ValidateSampleMaskAtReference(spvtools::val::Decoration const&, spvtools::val::Instruction const&, spvtools::val::Instruction const&, spvtools::val::Instruction const&) | call site | |
222 | 9461 | spvtools::val::(anonymous namespace)::BuiltInsValidator::ValidateComputeShaderI32Vec3InputAtReference(spvtools::val::Decoration const&, spvtools::val::Instruction const&, spvtools::val::Instruction const&, spvtools::val::Instruction const&) | call site | |
205 | 6722 | spvtools::val::MemoryPass(spvtools::val::ValidationState_t&, spvtools::val::Instruction const*) | call site | spvOpcodeString |
197 | 15857 | tint::sem::Node::~Node() | call site | _ZN4tint6SwitchINS_6detail5InferEKNS_3sem4TypeEJZZNS_6writer5spirv7Builder20GenerateTypeIfNeededEPS5_ENK4$_59clEvEUlPKNS3_5ArrayEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_4BoolEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_3F32EE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_3F16EE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_3I32EE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_6MatrixEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_7PointerEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_9ReferenceEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_6StructEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_3U32EE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_6VectorEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_4VoidEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_14StorageTextureEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_7TextureEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlPKNS3_7SamplerEE_ZZNS8_20GenerateTypeIfNeededES9_ENKSA_clEvEUlNS_7DefaultEE_EEEDaPT0_DpOT1_ |
180 | 7647 | spvtools::val::(anonymous namespace)::ValidateImageWrite(spvtools::val::ValidationState_t&, spvtools::val::Instruction const*) | call site | |
132 | 846 |
tint::utils::VectorRef
|
call site |
[EXPERIMENTAL] The followings are the branches where fuzzer fails to bypass.
Blocked Complexity | Reachable Complexity | Function Name | Blocked Branch |
---|---|---|---|
3479 | 33084 | tint::fuzzers::CommonFuzzer::Run(unsignedcharconst*,unsignedlong) | /src/dawn/src/tint/fuzzers/tint_common_fuzzer.cc:176 |
3471 | 23105 | tint::fuzzers::CommonFuzzer::Run(unsignedcharconst*,unsignedlong) | /src/dawn/src/tint/fuzzers/tint_common_fuzzer.cc:159 |
3459 | 12335 | tint::fuzzers::CommonFuzzer::Run(unsignedcharconst*,unsignedlong) | /src/dawn/src/tint/fuzzers/tint_common_fuzzer.cc:200 |
1950 | 1950 | tint::reader::spirv::FunctionEmitter::EmitStatement(spvtools::opt::Instructionconst&) | /src/dawn/src/tint/reader/spirv/function.cc:3507 |
1615 | 1615 | tint::reader::spirv::FunctionEmitter::MaybeEmitCombinatorialValue(spvtools::opt::Instructionconst&) | /src/dawn/src/tint/reader/spirv/function.cc:3919 |
1388 | 1429 | tint::reader::wgsl::ParserImpl::translation_unit() | /src/dawn/src/tint/reader/wgsl/parser_impl.cc:329 |
1248 | 1948 | spvtools::val::NonUniformPass(spvtools::val::ValidationState_t&,spvtools::val::Instructionconst*) | /src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_non_uniform.cpp:125 |
684 | 4553 | tint::transform::Transform::CreateASTTypeFor(tint::CloneContext&,tint::sem::Typeconst*) | /src/dawn/src/tint/transform/transform.cc:99 |
677 | 677 | tint::reader::spirv::ParserImpl::GetMemoryObjectDeclarationForHandle(unsignedint,bool) | /src/dawn/src/tint/reader/spirv/parser_impl.cc:2234 |
672 | 690 |
tint::reader::spirv::ParserImpl::ConvertMemberDecoration(unsignedint,unsignedint,tint::reader::spirv::Typeconst*,std::__1::vector
|
/src/dawn/src/tint/reader/spirv/parser_impl.cc:460 |
672 | 690 |
tint::reader::spirv::ParserImpl::ConvertMemberDecoration(unsignedint,unsignedint,tint::reader::spirv::Typeconst*,std::__1::vector
|
/src/dawn/src/tint/reader/spirv/parser_impl.cc:487 |
652 | 660 | spvtools::val::(anonymousnamespace)::ValidateDecorationTarget(spvtools::val::ValidationState_t&,SpvDecoration_,spvtools::val::Instructionconst*,spvtools::val::Instructionconst*) | /src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_annotation.cpp:242 |
Function name | source code lines | source lines hit | percentage hit |
---|
filename | functions hit |
---|---|
/src/dawn/src/tint/fuzzers/tint_spirv_tools_fuzzer/fuzzer.cc | 1 |
/src/dawn/src/tint/fuzzers/tint_common_fuzzer.cc | 10 |
/src/dawn/src/tint/diagnostic/diagnostic.cc | 10 |
/src/dawn/src/tint/writer/spirv/generator.h | 1 |
/src/dawn/src/tint/writer/hlsl/generator.cc | 4 |
/src/dawn/src/tint/writer/array_length_from_uniform_options.cc | 2 |
/src/dawn/src/tint/sem/binding_point.h | 1 |
/src/dawn/src/tint/writer/msl/generator.cc | 4 |
/src/dawn/src/tint/debug.cc | 2 |
/src/dawn/src/tint/diagnostic/printer_linux.cc | 1 |
/src/dawn/src/tint/diagnostic/formatter.cc | 2 |
/src/dawn/src/tint/diagnostic/formatter.h | 1 |
/src/dawn/src/tint/program.cc | 9 |
/src/dawn/src/tint/program_id.cc | 4 |
/src/dawn/src/tint/ast/node_id.h | 1 |
/src/dawn/src/tint/sem/type_manager.cc | 4 |
/src/dawn/src/tint/utils/unique_allocator.h | 18 |
/src/dawn/src/tint/utils/block_allocator.h | 42 |
/src/dawn/src/tint/sem/info.cc | 4 |
/src/dawn/src/tint/symbol_table.cc | 8 |
/src/dawn/src/tint/utils/hash.h | 7 |
/src/dawn/src/tint/reader/wgsl/parser.cc | 1 |
/src/dawn/src/tint/reader/wgsl/parser_impl.cc | 91 |
/src/dawn/src/tint/program_builder.cc | 9 |
/src/dawn/src/tint/program_builder.h | 131 |
/src/dawn/src/tint/source.h | 8 |
/src/dawn/src/tint/utils/math.h | 2 |
/src/dawn/src/tint/utils/bitcast.h | 6 |
/src/dawn/src/tint/ast/module.cc | 5 |
/src/dawn/src/tint/castable.h | 171 |
/src/dawn/src/tint/ast/node.cc | 1 |
/src/dawn/src/tint/clone_context.cc | 4 |
/src/dawn/src/tint/utils/vector.h | 224 |
/src/dawn/src/tint/ast/function.h | 2 |
/src/dawn/src/tint/reader/wgsl/lexer.cc | 29 |
/src/dawn/src/tint/reader/wgsl/token.cc | 12 |
/src/dawn/src/tint/reader/wgsl/token.h | 15 |
/src/dawn/src/tint/debug.h | 58 |
/src/dawn/src/tint/number.h | 8 |
/src/dawn/src/tint/utils/result.h | 6 |
/src/dawn/src/tint/text/unicode.cc | 3 |
/src/dawn/src/tint/text/unicode.h | 4 |
/src/dawn/src/tint/reader/wgsl/parser_impl.h | 63 |
/src/dawn/src/tint/diagnostic/diagnostic.h | 10 |
/src/dawn/src/tint/ast/extension.cc | 2 |
/src/dawn/src/tint/ast/enable.cc | 1 |
/src/dawn/src/tint/ast/node.h | 1 |
/src/dawn/src/tint/program_id.h | 3 |
/src/dawn/src/tint/symbol.cc | 8 |
/src/dawn/src/tint/reader/wgsl/parser_impl_detail.h | 2 |
/src/dawn/src/tint/ast/storage_texture.cc | 1 |
/src/dawn/src/tint/ast/u32.cc | 1 |
/src/dawn/src/tint/ast/ast_type.cc | 1 |
/src/dawn/src/tint/utils/defer.h | 7 |
/src/dawn/src/tint/resolver/resolver.cc | 9 |
/src/dawn/src/tint/resolver/const_eval.cc | 1 |
/src/dawn/src/tint/resolver/intrinsic_table.cc | 1 |
/src/dawn/src/tint/resolver/dependency_graph.cc | 28 |
/src/dawn/src/tint/resolver/sem_helper.cc | 2 |
/src/dawn/src/tint/resolver/validator.cc | 15 |
/src/dawn/src/tint/utils/unique_vector.h | 37 |
/src/dawn/src/tint/utils/hashset.h | 23 |
/src/dawn/src/tint/utils/bitset.h | 7 |
/src/dawn/src/tint/sem/info.h | 12 |
/src/dawn/src/tint/ast/module.h | 5 |
/usr/local/bin/../include/c++/v1/optional | 7 |
/src/dawn/src/tint/traits.h | 5 |
/src/dawn/src/tint/symbol.h | 2 |
/src/dawn/src/tint/scope_stack.h | 6 |
/src/dawn/src/tint/utils/scoped_assignment.h | 2 |
/src/dawn/include/tint/override_id.h | 1 |
/src/dawn/src/tint/ast/attribute.h | 8 |
/src/dawn/src/tint/resolver/sem_helper.h | 2 |
/src/dawn/src/tint/sem/variable.h | 11 |
/src/dawn/src/tint/sem/function.h | 10 |
/src/dawn/src/tint/ast/function.cc | 2 |
/src/dawn/src/tint/ast/pipeline_stage.cc | 1 |
/src/dawn/src/tint/sem/expression.h | 5 |
/src/dawn/src/tint/sem/statement.h | 1 |
/src/dawn/src/tint/sem/builtin.h | 1 |
/src/dawn/src/tint/utils/enum_set.h | 2 |
/src/dawn/src/tint/sem/call.h | 3 |
/src/dawn/src/tint/resolver/uniformity.cc | 20 |
/src/dawn/src/tint/sem/expression.cc | 1 |
/src/dawn/src/tint/sem/materialize.h | 1 |
/src/dawn/src/tint/sem/builtin.cc | 1 |
/src/dawn/src/tint/sem/builtin_type.cc | 1 |
/src/dawn/src/tint/sem/call_target.h | 3 |
/src/dawn/src/tint/reader/spirv/parser.cc | 1 |
/src/dawn/src/tint/reader/spirv/parser_impl.cc | 76 |
/src/dawn/src/tint/reader/reader.cc | 2 |
/src/dawn/src/tint/reader/spirv/parser_type.cc | 40 |
/src/dawn/src/tint/reader/spirv/fail_stream.h | 101 |
/src/dawn/src/tint/reader/spirv/namer.cc | 11 |
/src/dawn/src/tint/reader/spirv/enum_converter.cc | 7 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/libspirv.cpp | 10 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/table.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opcode.cpp | 20 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/operand.cpp | 13 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/ext_inst.cpp | 5 |
/src/dawn/src/tint/reader/spirv/parser_impl.h | 28 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate.cpp | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/table.h | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/diagnostic.cpp | 4 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/spirv_validator_options.cpp | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/spirv_validator_options.h | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validation_state.cpp | 81 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/enum_set.h | 19 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/assembly_grammar.h | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validation_state.h | 55 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/spirv_target_env.cpp | 6 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/binary.cpp | 19 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/diagnostic.h | 119 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/spirv_endian.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/assembly_grammar.cpp | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/string_utils.h | 7 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/make_unique.h | 57 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/name_mapper.cpp | 9 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/name_mapper.h | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/parsed_operand.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/hex_float.h | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/extensions.cpp | 2 |
/src/dawn/out/Debug/third_party/spirv-tools/enum_string_mapping.inc | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/instruction.h | 31 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/instruction.cpp | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/disassemble.cpp | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/print.h | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/text.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/disassemble.h | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/function.h | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/function.cpp | 28 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/basic_block.h | 19 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_id.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_capability.cpp | 15 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_layout.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_cfg.cpp | 20 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/basic_block.cpp | 18 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/construct.cpp | 12 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/construct.h | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_instruction.cpp | 13 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/string_utils.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_misc.cpp | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_scopes.cpp | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_debug.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_annotation.cpp | 14 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/decoration.h | 7 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_extensions.cpp | 35 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_mode_setting.cpp | 4 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_type.cpp | 14 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_constants.cpp | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_memory.cpp | 25 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_function.cpp | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_image.cpp | 37 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/bitutils.h | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_conversion.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_composites.cpp | 11 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_arithmetics.cpp | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_bitwise.cpp | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_logicals.cpp | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_derivatives.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_atomics.cpp | 7 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_memory_semantics.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_primitives.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_barriers.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_non_uniform.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_literals.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_ray_query.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_ray_tracing.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_adjacency.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/cfa.h | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_decorations.cpp | 39 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_interfaces.cpp | 7 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_builtins.cpp | 108 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_execution_limitations.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/val/validate_small_type_uses.cpp | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/build_module.cpp | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/ir_context.h | 24 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/module.h | 19 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/instruction_list.h | 10 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/ilist.h | 21 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/instruction.h | 23 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/ilist_node.h | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/ir_loader.cpp | 2 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/ir_loader.h | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/function.h | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/iterator.h | 12 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/basic_block.h | 10 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/def_use_manager.h | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/def_use_manager.cpp | 9 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/module.cpp | 8 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/function.cpp | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/constants.cpp | 10 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/reflect.h | 3 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/constants.h | 13 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/util/small_vector.h | 12 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/type_manager.cpp | 14 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/instruction.cpp | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/types.h | 63 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/types.cpp | 16 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/type_manager.h | 5 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/decoration_manager.h | 1 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/decoration_manager.cpp | 7 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/log.h | 1 |
/src/dawn/src/tint/reader/spirv/namer.h | 5 |
/src/dawn/src/tint/reader/spirv/enum_converter.h | 1 |
/src/dawn/src/tint/reader/spirv/entry_point_info.h | 1 |
/src/dawn/src/tint/reader/spirv/usage.cc | 15 |
/src/dawn/src/tint/reader/spirv/parser_type.h | 2 |
/src/dawn/src/tint/castable.cc | 1 |
/src/dawn/src/tint/ast/disable_validation_attribute.cc | 1 |
/src/dawn/src/tint/ast/alias.cc | 1 |
/src/dawn/src/tint/ast/type_decl.cc | 1 |
/usr/local/bin/../include/c++/v1/initializer_list | 1 |
/src/dawn/src/tint/reader/spirv/usage.h | 7 |
/src/dawn/src/tint/reader/spirv/function.cc | 115 |
/src/dawn/src/tint/reader/spirv/function.h | 80 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/source/opt/basic_block.cpp | 3 |
/src/dawn/src/tint/reader/spirv/construct.h | 2 |
/src/dawn/src/tint/ast/texture.cc | 2 |
/src/dawn/src/tint/transform/spirv_atomic.cc | 1 |
/src/dawn/src/tint/utils/hashmap.h | 3 |
/src/dawn/src/tint/clone_context.h | 1 |
/src/dawn/src/tint/program.h | 5 |
/src/dawn/src/tint/symbol_table.h | 1 |
/src/dawn/src/tint/transform/manager.cc | 3 |
/src/dawn/src/tint/transform/transform.cc | 6 |
/src/dawn/src/tint/transform/manager.h | 32 |
/src/dawn/src/tint/transform/transform.h | 12 |
/src/dawn/third_party/vulkan-deps/spirv-tools/src/include/spirv-tools/libspirv.hpp | 1 |
/src/dawn/src/tint/inspector/inspector.cc | 34 |
/src/dawn/src/tint/inspector/entry_point.cc | 6 |
/src/dawn/src/tint/sem/type.cc | 17 |
/src/dawn/src/tint/sem/reference.h | 1 |
/src/dawn/src/tint/sem/struct.h | 4 |
/src/dawn/src/tint/sem/vector.h | 2 |
/src/dawn/src/tint/inspector/entry_point.h | 2 |
/src/dawn/src/tint/inspector/inspector.h | 1 |
/src/dawn/src/tint/inspector/scalar.cc | 5 |
/src/dawn/src/tint/sem/function.cc | 10 |
/src/dawn/src/tint/ast/variable.cc | 1 |
/src/dawn/src/tint/ast/variable.h | 1 |
/src/dawn/src/tint/sem/sampler.h | 1 |
/src/dawn/src/tint/sem/texture.h | 1 |
/src/dawn/src/tint/inspector/resource_binding.cc | 3 |
/src/dawn/src/tint/sem/multisampled_texture.h | 1 |
/src/dawn/src/tint/sem/array.h | 1 |
/src/dawn/src/tint/sem/matrix.h | 2 |
/src/dawn/src/tint/sem/sampled_texture.h | 1 |
/src/dawn/src/tint/sem/storage_texture.h | 3 |
/src/dawn/src/tint/sem/call_target.cc | 1 |
/src/dawn/src/tint/writer/wgsl/generator.cc | 2 |
/src/dawn/src/tint/writer/wgsl/generator_impl.cc | 2 |
/src/dawn/src/tint/writer/text_generator.h | 6 |
/src/dawn/src/tint/writer/text_generator.cc | 6 |
/src/dawn/src/tint/writer/spirv/generator.cc | 3 |
/src/dawn/src/tint/writer/spirv/generator_impl.cc | 4 |
/src/dawn/src/tint/transform/builtin_polyfill.h | 1 |
/src/dawn/src/tint/writer/generate_external_texture_bindings.cc | 1 |