Fuzz introspector: spvtools_dis_fuzzer
For issues and ideas: https://github.com/ossf/fuzz-introspector/issues

Fuzz blockers

The followings are the branches where fuzzer fails to bypass.

Unique non-covered Complexity Unique Reachable Complexities Unique Reachable Functions All non-covered Complexity All Reachable Complexity Function Name Function Callsite Blocked Branch
2 12 4 :

['spvtools::DiagnosticStream::~DiagnosticStream()', '(anonymous namespace)::Parser::diagnostic(spv_result_t)', 'spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const (&) [40])', 'spvtools::DiagnosticStream::operator spv_result_t()']

2 12 (anonymousnamespace)::Parser::parseOperand(unsignedlong,spv_parsed_instruction_t*,spv_operand_type_t,std::__1::vector >*,std::__1::vector >*,std::__1::vector >*) call site: 00000 /src/spirv-tools/source/binary.cpp:526
0 60 1 :

['spvtools::disassemble::InstructionDisassembler::EmitMaskOperand(spv_operand_type_t, unsigned int)']

0 65 spvtools::disassemble::InstructionDisassembler::EmitOperand(spv_parsed_instruction_tconst&,unsignedshort) call site: 00000 /src/spirv-tools/source/disassemble.cpp:430
0 2 3 :

['std::__1::basic_string , std::__1::allocator > std::__1::operator+ , std::__1::allocator >(std::__1::basic_string , std::__1::allocator >&&, std::__1::basic_string , std::__1::allocator >&&)', 'spvtools::(anonymous namespace)::to_string(unsigned int)', 'std::__1::basic_string , std::__1::allocator >::~basic_string()']

0 2 spvtools::FriendlyNameMapper::NameForEnumOperand(spv_operand_type_t,unsignedint) call site: 00000 /src/spirv-tools/source/name_mapper.cpp:323
0 0 1 :

['std::__1::function , std::__1::allocator > (unsigned int)>::operator()(unsigned int) const']

25 56 spvtools::disassemble::InstructionDisassembler::EmitSectionComment(spv_parsed_instruction_tconst&,bool&,bool&,bool&) call site: 00000 /src/spirv-tools/source/disassemble.cpp:294
0 0 None 13 44 spvtools::disassemble::InstructionDisassembler::EmitSectionComment(spv_parsed_instruction_tconst&,bool&,bool&,bool&) call site: 00000 /src/spirv-tools/source/disassemble.cpp:299
0 0 None 2 2 spvDiagnosticCreate call site: 00000 /src/spirv-tools/source/diagnostic.cpp:33
0 0 None 0 31 spvtools::disassemble::InstructionDisassembler::EmitSectionComment(spv_parsed_instruction_tconst&,bool&,bool&,bool&) call site: 00000 /src/spirv-tools/source/disassemble.cpp:305
0 0 1 :

['std::__1::basic_ostream >::operator<<(unsigned int)']

0 10 spvtools::disassemble::InstructionDisassembler::EmitInstruction(spv_parsed_instruction_tconst&,unsignedlong) call site: 00000 /src/spirv-tools/source/disassemble.cpp:271
0 0 None 0 5 spvtools::disassemble::InstructionDisassembler::EmitOperand(spv_parsed_instruction_tconst&,unsignedshort) call site: 00000 /src/spirv-tools/source/disassemble.cpp:344
0 0 None 0 0 spvBinaryHeaderGet(spv_const_binary_t*,spv_endianness_t,spv_header_t*) call site: 00000 /src/spirv-tools/source/binary.cpp:42
0 0 None 0 0 (anonymousnamespace)::Parser::parseModule() call site: 00000 /src/spirv-tools/source/binary.cpp:275
0 0 3 :

['std::__1::vector >::end()', '_ZNSt3__16vectorIjNS_9allocatorIjEEE6insertIPKjEENS_9enable_ifIXaasr27__is_cpp17_forward_iteratorIT_EE5valuesr16is_constructibleIjNS_15iterator_traitsIS8_E9referenceEEE5valueENS_11__wrap_iterIPjEEE4typeENSC_IS6_EES8_S8_', '_ZNSt3__111__wrap_iterIPKjEC2IPjEERKNS0_IT_EEPNS_9enable_ifIXsr14is_convertibleIS6_S2_EE5valueEvE4typeE']

0 0 (anonymousnamespace)::Parser::parseOperand(unsignedlong,spv_parsed_instruction_t*,spv_operand_type_t,std::__1::vector >*,std::__1::vector >*,std::__1::vector >*) call site: 00000 /src/spirv-tools/source/binary.cpp:751

Fuzzer calltree

0 LLVMFuzzerTestOneInput [function] [call site] 00000
1 spvtools::fuzzers::RandomGenerator::RandomGenerator(unsigned char const*, unsigned long) [function] [call site] 00001
2 spvtools::fuzzers::RandomGenerator::CalculateSeed(unsigned char const*, unsigned long) [function] [call site] 00002
3 __assert_fail [call site] 00003
3 spvtools::fuzzers::(anonymous namespace)::HashBuffer(unsigned char const*, unsigned long) [function] [call site] 00004
4 void spvtools::fuzzers::(anonymous namespace)::HashCombine (unsigned long*, unsigned long const&) [function] [call site] 00005
4 void spvtools::fuzzers::(anonymous namespace)::HashCombine (unsigned long*, unsigned char const&) [function] [call site] 00006
2 spvtools::fuzzers::RandomGenerator::~RandomGenerator() [function] [call site] 00007
1 spvtools::fuzzers::RandomGenerator::GetTargetEnv() [function] [call site] 00008
2 unsigned int spvtools::fuzzers::(anonymous namespace)::RandomUInt (std::__1::mersenne_twister_engine *, unsigned int, unsigned int) [function] [call site] 00009
3 __assert_fail [call site] 00010
2 spvIsValidEnv(spv_target_env) [function] [call site] 00011
1 spvContextCreate [function] [call site] 00012
2 spvOpcodeTableGet(spv_opcode_table_t const**, spv_target_env) [function] [call site] 00013
2 spvOperandTableGet(spv_operand_table_t const**, spv_target_env) [function] [call site] 00014
2 spvExtInstTableGet(spv_ext_inst_table_t const**, spv_target_env) [function] [call site] 00015
1 spvBinaryToText [function] [call site] 00016
2 spv_context_t::spv_context_t(spv_context_t const&) [function] [call site] 00017
2 spvtools::UseDiagnosticAsMessageConsumer(spv_context_t*, spv_diagnostic_t**) [function] [call site] 00018
3 __assert_fail [call site] 00019
3 spvtools::SetContextMessageConsumer(spv_context_t*, std::__1::function ) [function] [call site] 00020
2 spvtools::AssemblyGrammar::AssemblyGrammar(spv_context_t const*) [function] [call site] 00021
2 spvtools::AssemblyGrammar::isValid() const [function] [call site] 00022
2 spvtools::GetTrivialNameMapper() [function] [call site] 00023
3 spvtools::(anonymous namespace)::to_string(unsigned int) [function] [call site] 00024
2 std::__1::unique_ptr > spvtools::MakeUnique (spv_context_t*&&, unsigned int const*&, unsigned long const&) [function] [call site] 00025
3 spvtools::FriendlyNameMapper::FriendlyNameMapper(spv_context_t const*, unsigned int const*, unsigned long) [function] [call site] 00026
4 spvtools::AssemblyGrammar::AssemblyGrammar(spv_context_t const*) [function] [call site] 00027
4 spvBinaryParse [function] [call site] 00028
5 spv_context_t::spv_context_t(spv_context_t const&) [function] [call site] 00029
5 spvtools::UseDiagnosticAsMessageConsumer(spv_context_t*, spv_diagnostic_t**) [function] [call site] 00030
5 (anonymous namespace)::Parser::Parser(spv_context_t const*, void*, spv_result_t (*)(void*, spv_endianness_t, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int), spv_result_t (*)(void*, spv_parsed_instruction_t const*)) [function] [call site] 00031
6 spvtools::AssemblyGrammar::AssemblyGrammar(spv_context_t const*) [function] [call site] 00032
6 (anonymous namespace)::Parser::State::State() [function] [call site] 00033
7 (anonymous namespace)::Parser::State::State(unsigned int const*, unsigned long, spv_diagnostic_t**) [function] [call site] 00034
5 (anonymous namespace)::Parser::parse(unsigned int const*, unsigned long, spv_diagnostic_t**) [function] [call site] 00035
6 (anonymous namespace)::Parser::State::State(unsigned int const*, unsigned long, spv_diagnostic_t**) [function] [call site] 00036
6 (anonymous namespace)::Parser::parseModule() [function] [call site] 00037
7 (anonymous namespace)::Parser::diagnostic() [function] [call site] 00038
8 (anonymous namespace)::Parser::diagnostic(spv_result_t) [function] [call site] 00039
9 spvtools::DiagnosticStream::DiagnosticStream(spv_position_t, std::__1::function const&, std::__1::basic_string , std::__1::allocator > const&, spv_result_t) [function] [call site] 00040
7 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const (&) [16]) [function] [call site] 00041
7 spvtools::DiagnosticStream::~DiagnosticStream() [function] [call site] 00042
7 (anonymous namespace)::Parser::diagnostic() [function] [call site] 00043
7 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const (&) [36]) [function] [call site] 00044
7 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const (&) [19]) [function] [call site] 00045
7 spvtools::DiagnosticStream::~DiagnosticStream() [function] [call site] 00046
7 spvBinaryEndianness(spv_const_binary_t*, spv_endianness_t*) [function] [call site] 00047
7 (anonymous namespace)::Parser::diagnostic() [function] [call site] 00048
7 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const (&) [30]) [function] [call site] 00049
7 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (unsigned int const&) [function] [call site] 00050
7 spvtools::DiagnosticStream::~DiagnosticStream() [function] [call site] 00051
7 spvIsHostEndian(spv_endianness_t) [function] [call site] 00052
7 spvBinaryHeaderGet(spv_const_binary_t*, spv_endianness_t, spv_header_t*) [function] [call site] 00053
8 spvFixWord(unsigned int, spv_endianness_t) [function] [call site] 00054
8 spvFixWord(unsigned int, spv_endianness_t) [function] [call site] 00055
8 spvFixWord(unsigned int, spv_endianness_t) [function] [call site] 00056
8 spvFixWord(unsigned int, spv_endianness_t) [function] [call site] 00057
8 spvFixWord(unsigned int, spv_endianness_t) [function] [call site] 00058
7 (anonymous namespace)::Parser::diagnostic(spv_result_t) [function] [call site] 00059
7 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const (&) [47]) [function] [call site] 00060
7 spvtools::DiagnosticStream::operator spv_result_t() [function] [call site] 00061
7 spvtools::DiagnosticStream::~DiagnosticStream() [function] [call site] 00062
7 (anonymous namespace)::Parser::parseInstruction() [function] [call site] 00063
8 (anonymous namespace)::Parser::peek() const [function] [call site] 00064
9 (anonymous namespace)::Parser::peekAt(unsigned long) const [function] [call site] 00065
10 __assert_fail [call site] 00066
10 spvFixWord(unsigned int, spv_endianness_t) [function] [call site] 00067
8 __assert_fail [call site] 00068
8 spvOpcodeSplit(unsigned int, unsigned short*, unsigned short*) [function] [call site] 00069
8 (anonymous namespace)::Parser::diagnostic() [function] [call site] 00070
8 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const (&) [33]) [function] [call site] 00071
8 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (unsigned short const&) [function] [call site] 00072
8 spvtools::DiagnosticStream::~DiagnosticStream() [function] [call site] 00073
8 spvtools::AssemblyGrammar::lookupOpcode(spv::Op, spv_opcode_desc_t const**) const [function] [call site] 00074
9 spvOpcodeTableValueLookup(spv_target_env, spv_opcode_table_t const*, spv::Op, spv_opcode_desc_t const**) [function] [call site] 00075
10 spvVersionForTargetEnv(spv_target_env) [function] [call site] 00076
11 __assert_fail [call site] 00077
8 (anonymous namespace)::Parser::diagnostic() [function] [call site] 00078
8 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const (&) [17]) [function] [call site] 00079
8 spvtools::DiagnosticStream::~DiagnosticStream() [function] [call site] 00080
8 (anonymous namespace)::Parser::diagnostic() [function] [call site] 00081
8 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const (&) [23]) [function] [call site] 00082
8 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const (&) [19]) [function] [call site] 00083
8 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const (&) [35]) [function] [call site] 00084
8 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (unsigned short const&) [function] [call site] 00085
8 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const (&) [34]) [function] [call site] 00086
8 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (unsigned short const&) [function] [call site] 00087
8 spvtools::DiagnosticStream::~DiagnosticStream() [function] [call site] 00088
8 spvTakeFirstMatchableOperand(std::__1::vector >*) [function] [call site] 00089
9 __assert_fail [call site] 00090
9 spvExpandOperandSequenceOnce(spv_operand_type_t, std::__1::vector >*) [function] [call site] 00091
8 (anonymous namespace)::Parser::parseOperand(unsigned long, spv_parsed_instruction_t*, spv_operand_type_t, std::__1::vector >*, std::__1::vector >*, std::__1::vector >*) [function] [call site] 00092
9 (anonymous namespace)::Parser::exhaustedInputDiagnostic(unsigned long, spv::Op, spv_operand_type_t) [function] [call site] 00093
10 (anonymous namespace)::Parser::diagnostic() [function] [call site] 00094
10 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const (&) [39]) [function] [call site] 00095
10 spvOpcodeString(spv::Op) [function] [call site] 00096
11 spvOpcodeString [function] [call site] 00097
12 __assert_fail [call site] 00098
10 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const* const&) [function] [call site] 00099
10 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (unsigned long const&) [function] [call site] 00100
10 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const* const&) [function] [call site] 00101
10 spvOperandTypeStr(spv_operand_type_t) [function] [call site] 00102
10 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const* const&) [function] [call site] 00103
10 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (unsigned long const&) [function] [call site] 00104
10 spvtools::DiagnosticStream::~DiagnosticStream() [function] [call site] 00105
9 (anonymous namespace)::Parser::peek() const [function] [call site] 00106
9 (anonymous namespace)::Parser::diagnostic(spv_result_t) [function] [call site] 00107
9 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const (&) [20]) [function] [call site] 00108
9 spvtools::DiagnosticStream::~DiagnosticStream() [function] [call site] 00109
9 (anonymous namespace)::Parser::diagnostic(spv_result_t) [function] [call site] 00110
9 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const (&) [22]) [function] [call site] 00111
9 spvtools::DiagnosticStream::~DiagnosticStream() [function] [call site] 00112
9 (anonymous namespace)::Parser::diagnostic(spv_result_t) [function] [call site] 00113
9 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const (&) [4]) [function] [call site] 00114
9 spvtools::DiagnosticStream::operator spv_result_t() [function] [call site] 00115
9 spvtools::DiagnosticStream::~DiagnosticStream() [function] [call site] 00116
9 spvOpcodeGeneratesType(spv::Op) [function] [call site] 00117
9 (anonymous namespace)::Parser::diagnostic(spv_result_t) [function] [call site] 00118
9 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const (&) [8]) [function] [call site] 00119
9 spvtools::DiagnosticStream::~DiagnosticStream() [function] [call site] 00120
9 (anonymous namespace)::Parser::diagnostic(spv_result_t) [function] [call site] 00121
9 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const (&) [18]) [function] [call site] 00122
9 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const (&) [49]) [function] [call site] 00123
9 spvtools::DiagnosticStream::operator spv_result_t() [function] [call site] 00124
9 spvtools::DiagnosticStream::~DiagnosticStream() [function] [call site] 00125
9 (anonymous namespace)::Parser::diagnostic() [function] [call site] 00126
9 spvOperandTypeStr(spv_operand_type_t) [function] [call site] 00127
9 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const* const&) [function] [call site] 00128
9 spvtools::DiagnosticStream::~DiagnosticStream() [function] [call site] 00129
9 __assert_fail [call site] 00130
9 __assert_fail [call site] 00131
9 spvtools::AssemblyGrammar::lookupExtInst(spv_ext_inst_type_t, unsigned int, spv_ext_inst_desc_t const**) const [function] [call site] 00132
10 spvExtInstTableValueLookup(spv_ext_inst_table_t const*, spv_ext_inst_type_t, unsigned int, spv_ext_inst_desc_t const**) [function] [call site] 00133
9 spvPushOperandTypes(spv_operand_type_t const*, std::__1::vector >*) [function] [call site] 00134
9 spvExtInstIsNonSemantic(spv_ext_inst_type_t) [function] [call site] 00135
9 (anonymous namespace)::Parser::diagnostic() [function] [call site] 00136
9 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const (&) [38]) [function] [call site] 00137
9 spvtools::DiagnosticStream::operator spv_result_t() [function] [call site] 00138
9 spvtools::DiagnosticStream::~DiagnosticStream() [function] [call site] 00139
9 __assert_fail [call site] 00140
9 spvtools::AssemblyGrammar::lookupSpecConstantOpcode(spv::Op) const [function] [call site] 00141
9 (anonymous namespace)::Parser::diagnostic() [function] [call site] 00142
9 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const (&) [9]) [function] [call site] 00143
9 spvOperandTypeStr(spv_operand_type_t) [function] [call site] 00144
9 spvtools::DiagnosticStream::operator spv_result_t() [function] [call site] 00145
9 spvtools::DiagnosticStream::~DiagnosticStream() [function] [call site] 00146
9 spvtools::AssemblyGrammar::lookupOpcode(spv::Op, spv_opcode_desc_t const**) const [function] [call site] 00147
9 (anonymous namespace)::Parser::diagnostic(spv_result_t) [function] [call site] 00148
9 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const (&) [40]) [function] [call site] 00149
9 spvtools::DiagnosticStream::operator spv_result_t() [function] [call site] 00150
9 spvtools::DiagnosticStream::~DiagnosticStream() [function] [call site] 00151
9 __assert_fail [call site] 00152
9 __assert_fail [call site] 00153
9 __assert_fail [call site] 00154
9 spvPushOperandTypes(spv_operand_type_t const*, std::__1::vector >*) [function] [call site] 00155
9 (anonymous namespace)::Parser::peekAt(unsigned long) const [function] [call site] 00156
9 (anonymous namespace)::Parser::diagnostic() [function] [call site] 00157
9 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const (&) [31]) [function] [call site] 00158
9 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const (&) [13]) [function] [call site] 00159
9 spvtools::DiagnosticStream::~DiagnosticStream() [function] [call site] 00160
9 (anonymous namespace)::Parser::diagnostic() [function] [call site] 00161
9 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const (&) [31]) [function] [call site] 00162
9 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const (&) [24]) [function] [call site] 00163
9 spvtools::DiagnosticStream::~DiagnosticStream() [function] [call site] 00164
9 (anonymous namespace)::Parser::setNumericTypeInfoForType(spv_parsed_operand_t*, unsigned int) [function] [call site] 00165
10 __assert_fail [call site] 00166
10 (anonymous namespace)::Parser::diagnostic() [function] [call site] 00167
10 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const (&) [9]) [function] [call site] 00168
10 spvtools::DiagnosticStream::~DiagnosticStream() [function] [call site] 00169
10 (anonymous namespace)::Parser::diagnostic() [function] [call site] 00170
10 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const (&) [9]) [function] [call site] 00171
10 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const (&) [30]) [function] [call site] 00172
10 spvtools::DiagnosticStream::~DiagnosticStream() [function] [call site] 00173
9 (anonymous namespace)::Parser::diagnostic() [function] [call site] 00174
9 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const (&) [31]) [function] [call site] 00175
9 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const (&) [25]) [function] [call site] 00176
9 spvtools::DiagnosticStream::~DiagnosticStream() [function] [call site] 00177
9 __assert_fail [call site] 00178
9 __assert_fail [call site] 00179
9 (anonymous namespace)::Parser::setNumericTypeInfoForType(spv_parsed_operand_t*, unsigned int) [function] [call site] 00180
9 spvtools::utils::MakeString(unsigned int const*, unsigned long, bool) [function] [call site] 00181
10 std::__1::basic_string , std::__1::allocator > spvtools::utils::MakeString (unsigned int const*, unsigned int const*, bool) [function] [call site] 00182
11 __assert_fail [call site] 00183
9 (anonymous namespace)::Parser::exhaustedInputDiagnostic(unsigned long, spv::Op, spv_operand_type_t) [function] [call site] 00184
9 (anonymous namespace)::Parser::diagnostic() [function] [call site] 00185
9 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const (&) [31]) [function] [call site] 00186
9 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (unsigned short const&) [function] [call site] 00187
9 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const (&) [9]) [function] [call site] 00188
9 spvtools::DiagnosticStream::~DiagnosticStream() [function] [call site] 00189
9 spvExtInstImportTypeGet(char const*) [function] [call site] 00190
10 strcmp [call site] 00191
10 strcmp [call site] 00192
10 strcmp [call site] 00193
10 strcmp [call site] 00194
10 strcmp [call site] 00195
10 strcmp [call site] 00196
10 strcmp [call site] 00197
10 strcmp [call site] 00198
10 strcmp [call site] 00199
10 strncmp [call site] 00200
10 strncmp [call site] 00201
9 (anonymous namespace)::Parser::diagnostic() [function] [call site] 00202
9 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const (&) [38]) [function] [call site] 00203
9 spvtools::DiagnosticStream::operator spv_result_t() [function] [call site] 00204
9 spvtools::DiagnosticStream::~DiagnosticStream() [function] [call site] 00205
9 __assert_fail [call site] 00206
9 spvtools::AssemblyGrammar::lookupOperand(spv_operand_type_t, unsigned int, spv_operand_desc_t const**) const [function] [call site] 00207
10 spvOperandTableValueLookup(spv_target_env, spv_operand_table_t const*, spv_operand_type_t, unsigned int, spv_operand_desc_t const**) [function] [call site] 00208
11 spvVersionForTargetEnv(spv_target_env) [function] [call site] 00209
9 (anonymous namespace)::Parser::diagnostic() [function] [call site] 00210
9 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const (&) [9]) [function] [call site] 00211
9 spvOperandTypeStr(spv_operand_type_t) [function] [call site] 00212
9 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const (&) [11]) [function] [call site] 00213
9 spvtools::DiagnosticStream::operator spv_result_t() [function] [call site] 00214
9 spvtools::DiagnosticStream::~DiagnosticStream() [function] [call site] 00215
9 spvPushOperandTypes(spv_operand_type_t const*, std::__1::vector >*) [function] [call site] 00216
9 spvtools::AssemblyGrammar::lookupOperand(spv_operand_type_t, unsigned int, spv_operand_desc_t const**) const [function] [call site] 00217
9 (anonymous namespace)::Parser::diagnostic() [function] [call site] 00218
9 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const (&) [9]) [function] [call site] 00219
9 spvOperandTypeStr(spv_operand_type_t) [function] [call site] 00220
9 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const (&) [11]) [function] [call site] 00221
9 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (unsigned int const&) [function] [call site] 00222
9 spvtools::DiagnosticStream::operator spv_result_t() [function] [call site] 00223
9 spvtools::DiagnosticStream::~DiagnosticStream() [function] [call site] 00224
9 spvPushOperandTypes(spv_operand_type_t const*, std::__1::vector >*) [function] [call site] 00225
9 spvtools::AssemblyGrammar::lookupOperand(spv_operand_type_t, unsigned int, spv_operand_desc_t const**) const [function] [call site] 00226
9 spvPushOperandTypes(spv_operand_type_t const*, std::__1::vector >*) [function] [call site] 00227
9 (anonymous namespace)::Parser::diagnostic() [function] [call site] 00228
9 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const (&) [41]) [function] [call site] 00229
9 spvtools::DiagnosticStream::~DiagnosticStream() [function] [call site] 00230
9 spvOperandIsConcrete [function] [call site] 00231
10 spvIsIdType(spv_operand_type_t) [function] [call site] 00232
9 __assert_fail [call site] 00233
9 (anonymous namespace)::Parser::exhaustedInputDiagnostic(unsigned long, spv::Op, spv_operand_type_t) [function] [call site] 00234
8 spvOperandIsOptional(spv_operand_type_t) [function] [call site] 00235
9 spvOperandIsVariable(spv_operand_type_t) [function] [call site] 00236
8 (anonymous namespace)::Parser::diagnostic() [function] [call site] 00237
8 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const (&) [39]) [function] [call site] 00238
8 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const* const&) [function] [call site] 00239
8 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (unsigned long const&) [function] [call site] 00240
8 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (unsigned short const&) [function] [call site] 00241
8 spvtools::DiagnosticStream::~DiagnosticStream() [function] [call site] 00242
8 (anonymous namespace)::Parser::diagnostic() [function] [call site] 00243
8 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const (&) [23]) [function] [call site] 00244
8 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const (&) [19]) [function] [call site] 00245
8 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const (&) [14]) [function] [call site] 00246
8 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const (&) [19]) [function] [call site] 00247
8 spvtools::DiagnosticStream& spvtools::DiagnosticStream::operator<< (char const (&) [16]) [function] [call site] 00248
8 spvtools::DiagnosticStream::~DiagnosticStream() [function] [call site] 00249
8 __assert_fail [call site] 00250
8 __assert_fail [call site] 00251
8 (anonymous namespace)::Parser::recordNumberType(unsigned long, spv_parsed_instruction_t const*) [function] [call site] 00252
9 spvOpcodeGeneratesType(spv::Op) [function] [call site] 00253
9 (anonymous namespace)::Parser::peekAt(unsigned long) const [function] [call site] 00254
9 (anonymous namespace)::Parser::peekAt(unsigned long) const [function] [call site] 00255
9 (anonymous namespace)::Parser::peekAt(unsigned long) const [function] [call site] 00256
7 __assert_fail [call site] 00257
6 (anonymous namespace)::Parser::State::State() [function] [call site] 00258
5 (anonymous namespace)::Parser::~Parser() [function] [call site] 00259
6 (anonymous namespace)::Parser::State::~State() [function] [call site] 00260
5 spv_context_t::~spv_context_t() [function] [call site] 00261
4 spvtools::FriendlyNameMapper::ParseInstructionForwarder(void*, spv_parsed_instruction_t const*) [function] [call site] 00262
5 spvtools::FriendlyNameMapper::ParseInstruction(spv_parsed_instruction_t const&) [function] [call site] 00263
6 spvDecodeLiteralStringOperand(spv_parsed_instruction_t const&, unsigned short) [function] [call site] 00264
7 __assert_fail [call site] 00265
7 spvtools::utils::MakeString(unsigned int const*, unsigned long, bool) [function] [call site] 00266
6 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00267
7 spvtools::FriendlyNameMapper::Sanitize(std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00268
7 spvtools::(anonymous namespace)::to_string(unsigned int) [function] [call site] 00269
6 __assert_fail [call site] 00270
6 spvtools::FriendlyNameMapper::SaveBuiltInName(unsigned int, unsigned int) [function] [call site] 00271
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00272
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00273
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00274
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00275
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00276
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00277
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00278
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00279
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00280
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00281
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00282
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00283
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00284
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00285
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00286
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00287
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00288
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00289
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00290
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00291
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00292
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00293
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00294
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00295
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00296
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00297
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00298
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00299
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00300
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00301
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00302
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00303
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00304
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00305
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00306
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00307
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00308
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00309
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00310
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00311
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00312
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00313
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00314
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00315
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00316
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00317
7 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00318
6 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00319
6 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00320
6 spvtools::(anonymous namespace)::to_string(unsigned int) [function] [call site] 00321
6 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00322
6 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00323
6 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00324
6 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00325
6 spvtools::(anonymous namespace)::to_string(unsigned int) [function] [call site] 00326
6 spvtools::(anonymous namespace)::to_string(unsigned int) [function] [call site] 00327
6 spvtools::FriendlyNameMapper::NameForId(unsigned int) [function] [call site] 00328
7 spvtools::(anonymous namespace)::to_string(unsigned int) [function] [call site] 00329
6 spvtools::(anonymous namespace)::to_string(unsigned int) [function] [call site] 00330
6 spvtools::FriendlyNameMapper::NameForId(unsigned int) [function] [call site] 00331
6 spvtools::FriendlyNameMapper::NameForId(unsigned int) [function] [call site] 00332
6 spvtools::FriendlyNameMapper::NameForId(unsigned int) [function] [call site] 00333
6 spvtools::FriendlyNameMapper::NameForId(unsigned int) [function] [call site] 00334
6 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00335
6 spvtools::FriendlyNameMapper::NameForEnumOperand(spv_operand_type_t, unsigned int) [function] [call site] 00336
7 spvtools::AssemblyGrammar::lookupOperand(spv_operand_type_t, unsigned int, spv_operand_desc_t const**) const [function] [call site] 00337
7 spvtools::(anonymous namespace)::to_string(unsigned int) [function] [call site] 00338
6 spvtools::FriendlyNameMapper::NameForId(unsigned int) [function] [call site] 00339
6 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00340
6 spvtools::FriendlyNameMapper::NameForEnumOperand(spv_operand_type_t, unsigned int) [function] [call site] 00341
6 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00342
6 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00343
6 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00344
6 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00345
6 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00346
6 spvDecodeLiteralStringOperand(spv_parsed_instruction_t const&, unsigned short) [function] [call site] 00347
6 spvtools::FriendlyNameMapper::Sanitize(std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00348
6 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00349
6 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00350
6 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00351
6 spvtools::(anonymous namespace)::to_string(unsigned int) [function] [call site] 00352
6 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00353
6 spvtools::FriendlyNameMapper::SaveName(unsigned int, std::__1::basic_string , std::__1::allocator > const&) [function] [call site] 00354
6 spvtools::EmitNumericLiteral(std::__1::basic_ostream >*, spv_parsed_instruction_t const&, spv_parsed_operand_t const&) [function] [call site] 00355
7 spvtools::utils::FloatProxy ::FloatProxy(unsigned short) [function] [call site] 00356
7 spvtools::utils::FloatProxy ::FloatProxy(unsigned int) [function] [call site] 00357
7 spvtools::utils::FloatProxy ::FloatProxy(unsigned long) [function] [call site] 00358
6 spvtools::FriendlyNameMapper::NameForId(unsigned int) [function] [call site] 00359
6 spvtools::(anonymous namespace)::to_string(unsigned int) [function] [call site] 00360
4 spvDiagnosticDestroy [function] [call site] 00361
2 spvtools::FriendlyNameMapper::GetNameMapper() [function] [call site] 00362
2 spvtools::(anonymous namespace)::Disassembler::Disassembler(spvtools::AssemblyGrammar const&, unsigned int, std::__1::function , std::__1::allocator > (unsigned int)>) [function] [call site] 00363
3 spvtools::out_stream::out_stream() [function] [call site] 00364
3 spvtools::out_stream::get() [function] [call site] 00365
3 spvtools::disassemble::InstructionDisassembler::InstructionDisassembler(spvtools::AssemblyGrammar const&, std::__1::basic_ostream >&, unsigned int, std::__1::function , std::__1::allocator > (unsigned int)>) [function] [call site] 00366
2 spvBinaryParse [function] [call site] 00367
2 spvtools::(anonymous namespace)::DisassembleHeader(void*, spv_endianness_t, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int) [function] [call site] 00368
3 spvtools::(anonymous namespace)::Disassembler::HandleHeader(spv_endianness_t, unsigned int, unsigned int, unsigned int, unsigned int) [function] [call site] 00369
4 spvtools::disassemble::InstructionDisassembler::EmitHeaderSpirv() [function] [call site] 00370
4 spvtools::disassemble::InstructionDisassembler::EmitHeaderVersion(unsigned int) [function] [call site] 00371
4 spvtools::disassemble::InstructionDisassembler::EmitHeaderGenerator(unsigned int) [function] [call site] 00372
5 spvGeneratorStr(unsigned int) [function] [call site] 00373
5 strcmp [call site] 00374
4 spvtools::disassemble::InstructionDisassembler::EmitHeaderIdBound(unsigned int) [function] [call site] 00375
4 spvtools::disassemble::InstructionDisassembler::EmitHeaderSchema(unsigned int) [function] [call site] 00376
2 spvtools::(anonymous namespace)::Disassembler::SaveTextResult(spv_text_t**) const [function] [call site] 00377
3 strncpy [call site] 00378
2 spvtools::(anonymous namespace)::Disassembler::~Disassembler() [function] [call site] 00379
3 spvtools::disassemble::InstructionDisassembler::~InstructionDisassembler() [function] [call site] 00380
2 spv_context_t::~spv_context_t() [function] [call site] 00381
1 spvDiagnosticDestroy [function] [call site] 00382
1 spvTextDestroy [function] [call site] 00383
1 spvContextDestroy [function] [call site] 00384
2 spv_context_t::~spv_context_t() [function] [call site] 00385
1 spvtools::fuzzers::RandomGenerator::~RandomGenerator() [function] [call site] 00386