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

Project functions overview

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 Runtime reached by Fuzzers Combined 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

Fuzzer details

Fuzzer: pcre2_fuzzer_32_4l

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 916 20.4%
gold [1:9] 13 0.28%
yellow [10:29] 11 0.24%
greenyellow [30:49] 0 0.0%
lawngreen 50+ 3548 79.0%
All colors 4488 100

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
54 3700 sljit_emit_return call site: 03700 sljit_emit_op1
50 752 sljit_emit_simd_lane_mov call site: 00752 emit_mov
38 817 fast_forward_char_pair_simd call site: 00817 emit_vex_instruction
35 1097 fast_forward_newline call site: 01097 fast_forward_char_pair_simd
32 1447 compile_simple_assertion_matchingpath call site: 01447 read_char
30 1411 compile_simple_assertion_matchingpath call site: 01411 check_partial
22 1153 fast_forward_newline call site: 01153 read_char
21 488 sljit_emit_op1 call site: 00488 emit_clz_ctz
21 1616 check_str_end call site: 01616 sljit_emit_cmp
20 2391 compile_ref_matchingpath call site: 02391 sljit_emit_cmp
18 2443 compile_ref_matchingpath call site: 02443 check_partial
17 398 emit_byte call site: 00398 emit_mov

Runtime coverage analysis

Covered functions
328
Functions that are reachable but not covered
42
Reachable functions
367
Percentage of reachable functions covered
88.56%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
pcre2_fuzzsupport.c 2
pcre2_context.c 9
pcre2_compile.c 26
pcre2_string_utils.c 5
pcre2_valid_utf.c 1
pcre2_newline.c 2
pcre2_compile_cgroup.c 8
pcre2_compile_class.c 21
pcre2_ord2utf.c 1
pcre2_chkdint.c 1
pcre2_find_bracket.c 1
pcre2_auto_possess.c 5
pcre2_xclass.c 2
pcre2_study.c 6
pcre2_jit_misc_inc.h 3
../deps/sljit/sljit_src/sljitLir.c 21
../deps/sljit/sljit_src/allocator_src/sljitExecAllocatorCore.c 4
../deps/sljit/sljit_src/allocator_src/sljitExecAllocatorPosix.c 2
pcre2_jit_compile.c 118
../deps/sljit/sljit_src/sljitNativeX86_common.c 63
../deps/sljit/sljit_src/sljitNativeX86_64.c 18
pcre2_jit_simd_inc.h 11
../deps/sljit/sljit_src/sljitLir.h 2
pcre2_jit_char_inc.h 8
../deps/sljit/sljit_src/sljitUtils.c 3
pcre2_match_data.c 2
pcre2_match.c 5
pcre2_jit_match_inc.h 2
pcre2_extuni.c 1
pcre2_script_run.c 1
pcre2_dfa_match.c 4

Fuzzer: pcre2_fuzzer_16_3l

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 1089 23.0%
gold [1:9] 22 0.46%
yellow [10:29] 27 0.57%
greenyellow [30:49] 1 0.02%
lawngreen 50+ 3588 75.9%
All colors 4727 100

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
89 4471 jit_compile call site: 04471 do_utfreadnewline_invalid
54 3858 sljit_emit_return call site: 03858 sljit_emit_op1
50 788 sljit_emit_simd_lane_mov call site: 00788 emit_mov
38 853 fast_forward_char_pair_simd call site: 00853 emit_vex_instruction
35 1174 fast_forward_newline call site: 01174 fast_forward_char_pair_simd
32 1531 compile_simple_assertion_matchingpath call site: 01531 read_char
32 2926 compile_bracket_matchingpath call site: 02926 allocate_stack
30 1495 compile_simple_assertion_matchingpath call site: 01495 check_partial
22 1237 fast_forward_newline call site: 01237 read_char
21 489 sljit_emit_op1 call site: 00489 emit_clz_ctz
21 1735 check_str_end call site: 01735 sljit_emit_cmp
20 2549 compile_ref_matchingpath call site: 02549 sljit_emit_cmp

Runtime coverage analysis

Covered functions
330
Functions that are reachable but not covered
47
Reachable functions
374
Percentage of reachable functions covered
87.43%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
pcre2_fuzzsupport.c 2
pcre2_context.c 9
pcre2_compile.c 26
pcre2_string_utils.c 5
pcre2_valid_utf.c 1
pcre2_newline.c 2
pcre2_compile_cgroup.c 8
pcre2_compile_class.c 21
pcre2_ord2utf.c 1
pcre2_chkdint.c 1
pcre2_find_bracket.c 1
pcre2_auto_possess.c 5
pcre2_xclass.c 2
pcre2_study.c 6
pcre2_jit_misc_inc.h 3
../deps/sljit/sljit_src/sljitLir.c 21
../deps/sljit/sljit_src/allocator_src/sljitExecAllocatorCore.c 4
../deps/sljit/sljit_src/allocator_src/sljitExecAllocatorPosix.c 2
pcre2_jit_compile.c 123
../deps/sljit/sljit_src/sljitNativeX86_common.c 63
../deps/sljit/sljit_src/sljitNativeX86_64.c 18
pcre2_jit_simd_inc.h 12
../deps/sljit/sljit_src/sljitLir.h 2
pcre2_jit_char_inc.h 9
../deps/sljit/sljit_src/sljitUtils.c 3
pcre2_match_data.c 2
pcre2_match.c 5
pcre2_jit_match_inc.h 2
pcre2_extuni.c 1
pcre2_script_run.c 1
pcre2_dfa_match.c 4

Fuzzer: pcre2_fuzzer_16

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 1013 21.4%
gold [1:9] 32 0.67%
yellow [10:29] 17 0.35%
greenyellow [30:49] 0 0.0%
lawngreen 50+ 3665 77.5%
All colors 4727 100

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
89 4471 jit_compile call site: 04471 do_utfreadnewline_invalid
54 3858 sljit_emit_return call site: 03858 sljit_emit_op1
50 788 sljit_emit_simd_lane_mov call site: 00788 emit_mov
38 853 fast_forward_char_pair_simd call site: 00853 emit_vex_instruction
35 1174 fast_forward_newline call site: 01174 fast_forward_char_pair_simd
32 1531 compile_simple_assertion_matchingpath call site: 01531 read_char
30 1495 compile_simple_assertion_matchingpath call site: 01495 check_partial
22 1237 fast_forward_newline call site: 01237 read_char
21 489 sljit_emit_op1 call site: 00489 emit_clz_ctz
21 1735 check_str_end call site: 01735 sljit_emit_cmp
20 2549 compile_ref_matchingpath call site: 02549 sljit_emit_cmp
18 2601 compile_ref_matchingpath call site: 02601 check_partial

Runtime coverage analysis

Covered functions
331
Functions that are reachable but not covered
46
Reachable functions
374
Percentage of reachable functions covered
87.7%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
pcre2_fuzzsupport.c 2
pcre2_context.c 9
pcre2_compile.c 26
pcre2_string_utils.c 5
pcre2_valid_utf.c 1
pcre2_newline.c 2
pcre2_compile_cgroup.c 8
pcre2_compile_class.c 21
pcre2_ord2utf.c 1
pcre2_chkdint.c 1
pcre2_find_bracket.c 1
pcre2_auto_possess.c 5
pcre2_xclass.c 2
pcre2_study.c 6
pcre2_jit_misc_inc.h 3
../deps/sljit/sljit_src/sljitLir.c 21
../deps/sljit/sljit_src/allocator_src/sljitExecAllocatorCore.c 4
../deps/sljit/sljit_src/allocator_src/sljitExecAllocatorPosix.c 2
pcre2_jit_compile.c 123
../deps/sljit/sljit_src/sljitNativeX86_common.c 63
../deps/sljit/sljit_src/sljitNativeX86_64.c 18
pcre2_jit_simd_inc.h 12
../deps/sljit/sljit_src/sljitLir.h 2
pcre2_jit_char_inc.h 9
../deps/sljit/sljit_src/sljitUtils.c 3
pcre2_match_data.c 2
pcre2_match.c 5
pcre2_jit_match_inc.h 2
pcre2_extuni.c 1
pcre2_script_run.c 1
pcre2_dfa_match.c 4

Fuzzer: pcre2_fuzzer_32_3l

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 973 21.6%
gold [1:9] 21 0.46%
yellow [10:29] 4 0.08%
greenyellow [30:49] 0 0.0%
lawngreen 50+ 3490 77.7%
All colors 4488 100

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
54 3700 sljit_emit_return call site: 03700 sljit_emit_op1
50 752 sljit_emit_simd_lane_mov call site: 00752 emit_mov
38 817 fast_forward_char_pair_simd call site: 00817 emit_vex_instruction
35 1097 fast_forward_newline call site: 01097 fast_forward_char_pair_simd
32 1447 compile_simple_assertion_matchingpath call site: 01447 read_char
32 2768 compile_bracket_matchingpath call site: 02768 allocate_stack
30 1411 compile_simple_assertion_matchingpath call site: 01411 check_partial
22 1153 fast_forward_newline call site: 01153 read_char
21 488 sljit_emit_op1 call site: 00488 emit_clz_ctz
21 1616 check_str_end call site: 01616 sljit_emit_cmp
20 2391 compile_ref_matchingpath call site: 02391 sljit_emit_cmp
18 2443 compile_ref_matchingpath call site: 02443 check_partial

Runtime coverage analysis

Covered functions
327
Functions that are reachable but not covered
43
Reachable functions
367
Percentage of reachable functions covered
88.28%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
pcre2_fuzzsupport.c 2
pcre2_context.c 9
pcre2_compile.c 26
pcre2_string_utils.c 5
pcre2_valid_utf.c 1
pcre2_newline.c 2
pcre2_compile_cgroup.c 8
pcre2_compile_class.c 21
pcre2_ord2utf.c 1
pcre2_chkdint.c 1
pcre2_find_bracket.c 1
pcre2_auto_possess.c 5
pcre2_xclass.c 2
pcre2_study.c 6
pcre2_jit_misc_inc.h 3
../deps/sljit/sljit_src/sljitLir.c 21
../deps/sljit/sljit_src/allocator_src/sljitExecAllocatorCore.c 4
../deps/sljit/sljit_src/allocator_src/sljitExecAllocatorPosix.c 2
pcre2_jit_compile.c 118
../deps/sljit/sljit_src/sljitNativeX86_common.c 63
../deps/sljit/sljit_src/sljitNativeX86_64.c 18
pcre2_jit_simd_inc.h 11
../deps/sljit/sljit_src/sljitLir.h 2
pcre2_jit_char_inc.h 8
../deps/sljit/sljit_src/sljitUtils.c 3
pcre2_match_data.c 2
pcre2_match.c 5
pcre2_jit_match_inc.h 2
pcre2_extuni.c 1
pcre2_script_run.c 1
pcre2_dfa_match.c 4

Fuzzer: pcre2_fuzzer_32

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 974 21.7%
gold [1:9] 15 0.33%
yellow [10:29] 10 0.22%
greenyellow [30:49] 0 0.0%
lawngreen 50+ 3489 77.7%
All colors 4488 100

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
54 3700 sljit_emit_return call site: 03700 sljit_emit_op1
50 752 sljit_emit_simd_lane_mov call site: 00752 emit_mov
38 817 fast_forward_char_pair_simd call site: 00817 emit_vex_instruction
35 1097 fast_forward_newline call site: 01097 fast_forward_char_pair_simd
32 1447 compile_simple_assertion_matchingpath call site: 01447 read_char
32 2768 compile_bracket_matchingpath call site: 02768 allocate_stack
30 1411 compile_simple_assertion_matchingpath call site: 01411 check_partial
22 1153 fast_forward_newline call site: 01153 read_char
21 488 sljit_emit_op1 call site: 00488 emit_clz_ctz
21 1616 check_str_end call site: 01616 sljit_emit_cmp
20 2391 compile_ref_matchingpath call site: 02391 sljit_emit_cmp
18 2443 compile_ref_matchingpath call site: 02443 check_partial

Runtime coverage analysis

Covered functions
327
Functions that are reachable but not covered
43
Reachable functions
367
Percentage of reachable functions covered
88.28%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
pcre2_fuzzsupport.c 2
pcre2_context.c 9
pcre2_compile.c 26
pcre2_string_utils.c 5
pcre2_valid_utf.c 1
pcre2_newline.c 2
pcre2_compile_cgroup.c 8
pcre2_compile_class.c 21
pcre2_ord2utf.c 1
pcre2_chkdint.c 1
pcre2_find_bracket.c 1
pcre2_auto_possess.c 5
pcre2_xclass.c 2
pcre2_study.c 6
pcre2_jit_misc_inc.h 3
../deps/sljit/sljit_src/sljitLir.c 21
../deps/sljit/sljit_src/allocator_src/sljitExecAllocatorCore.c 4
../deps/sljit/sljit_src/allocator_src/sljitExecAllocatorPosix.c 2
pcre2_jit_compile.c 118
../deps/sljit/sljit_src/sljitNativeX86_common.c 63
../deps/sljit/sljit_src/sljitNativeX86_64.c 18
pcre2_jit_simd_inc.h 11
../deps/sljit/sljit_src/sljitLir.h 2
pcre2_jit_char_inc.h 8
../deps/sljit/sljit_src/sljitUtils.c 3
pcre2_match_data.c 2
pcre2_match.c 5
pcre2_jit_match_inc.h 2
pcre2_extuni.c 1
pcre2_script_run.c 1
pcre2_dfa_match.c 4

Fuzzer: pcre2_fuzzer_16_4l

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 1076 22.7%
gold [1:9] 26 0.55%
yellow [10:29] 19 0.40%
greenyellow [30:49] 4 0.08%
lawngreen 50+ 3602 76.2%
All colors 4727 100

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
89 4471 jit_compile call site: 04471 do_utfreadnewline_invalid
54 3858 sljit_emit_return call site: 03858 sljit_emit_op1
50 788 sljit_emit_simd_lane_mov call site: 00788 emit_mov
38 853 fast_forward_char_pair_simd call site: 00853 emit_vex_instruction
35 1174 fast_forward_newline call site: 01174 fast_forward_char_pair_simd
32 1531 compile_simple_assertion_matchingpath call site: 01531 read_char
32 2926 compile_bracket_matchingpath call site: 02926 allocate_stack
30 1495 compile_simple_assertion_matchingpath call site: 01495 check_partial
22 1237 fast_forward_newline call site: 01237 read_char
21 489 sljit_emit_op1 call site: 00489 emit_clz_ctz
21 1735 check_str_end call site: 01735 sljit_emit_cmp
20 2549 compile_ref_matchingpath call site: 02549 sljit_emit_cmp

Runtime coverage analysis

Covered functions
330
Functions that are reachable but not covered
47
Reachable functions
374
Percentage of reachable functions covered
87.43%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
pcre2_fuzzsupport.c 2
pcre2_context.c 9
pcre2_compile.c 26
pcre2_string_utils.c 5
pcre2_valid_utf.c 1
pcre2_newline.c 2
pcre2_compile_cgroup.c 8
pcre2_compile_class.c 21
pcre2_ord2utf.c 1
pcre2_chkdint.c 1
pcre2_find_bracket.c 1
pcre2_auto_possess.c 5
pcre2_xclass.c 2
pcre2_study.c 6
pcre2_jit_misc_inc.h 3
../deps/sljit/sljit_src/sljitLir.c 21
../deps/sljit/sljit_src/allocator_src/sljitExecAllocatorCore.c 4
../deps/sljit/sljit_src/allocator_src/sljitExecAllocatorPosix.c 2
pcre2_jit_compile.c 123
../deps/sljit/sljit_src/sljitNativeX86_common.c 63
../deps/sljit/sljit_src/sljitNativeX86_64.c 18
pcre2_jit_simd_inc.h 12
../deps/sljit/sljit_src/sljitLir.h 2
pcre2_jit_char_inc.h 9
../deps/sljit/sljit_src/sljitUtils.c 3
pcre2_match_data.c 2
pcre2_match.c 5
pcre2_jit_match_inc.h 2
pcre2_extuni.c 1
pcre2_script_run.c 1
pcre2_dfa_match.c 4

Fuzzer: pcre2_fuzzer

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 1100 21.6%
gold [1:9] 23 0.45%
yellow [10:29] 27 0.53%
greenyellow [30:49] 2 0.03%
lawngreen 50+ 3936 77.3%
All colors 5088 100

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
291 4618 do_utfpeakcharback call site: 04618 do_utfreadnewline_invalid
54 3927 sljit_emit_return call site: 03927 sljit_emit_op1
50 833 sljit_emit_simd_lane_mov call site: 00833 emit_mov
38 898 fast_forward_char_pair_simd call site: 00898 emit_vex_instruction
33 1732 read_char8_type call site: 01732 sljit_emit_cmp
25 4565 do_utfreadchar call site: 04565 do_utfreadtype8
21 506 sljit_emit_op1 call site: 00506 emit_clz_ctz
21 1228 fast_forward_newline call site: 01228 sljit_emit_cmp
21 1539 compile_simple_assertion_matchingpath call site: 01539 check_partial
20 2620 compile_ref_matchingpath call site: 02620 sljit_emit_cmp
18 2672 compile_ref_matchingpath call site: 02672 check_partial
17 416 emit_byte call site: 00416 emit_mov

Runtime coverage analysis

Covered functions
340
Functions that are reachable but not covered
46
Reachable functions
383
Percentage of reachable functions covered
87.99%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
pcre2_fuzzsupport.c 2
pcre2_context.c 9
pcre2_compile.c 26
pcre2_string_utils.c 5
pcre2_valid_utf.c 1
pcre2_newline.c 2
pcre2_compile_cgroup.c 8
pcre2_compile_class.c 23
pcre2_ord2utf.c 1
pcre2_chkdint.c 1
pcre2_find_bracket.c 1
pcre2_auto_possess.c 5
pcre2_xclass.c 2
pcre2_study.c 7
pcre2_jit_misc_inc.h 3
../deps/sljit/sljit_src/sljitLir.c 21
../deps/sljit/sljit_src/allocator_src/sljitExecAllocatorCore.c 4
../deps/sljit/sljit_src/allocator_src/sljitExecAllocatorPosix.c 2
pcre2_jit_compile.c 128
../deps/sljit/sljit_src/sljitNativeX86_common.c 63
../deps/sljit/sljit_src/sljitNativeX86_64.c 18
pcre2_jit_simd_inc.h 12
../deps/sljit/sljit_src/sljitLir.h 2
pcre2_jit_char_inc.h 9
../deps/sljit/sljit_src/sljitUtils.c 3
pcre2_match_data.c 2
pcre2_match.c 5
pcre2_jit_match_inc.h 2
pcre2_extuni.c 1
pcre2_script_run.c 1
pcre2_dfa_match.c 4

Fuzzer: pcre2_fuzzer_3l

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 1240 24.3%
gold [1:9] 27 0.53%
yellow [10:29] 8 0.15%
greenyellow [30:49] 16 0.31%
lawngreen 50+ 3797 74.6%
All colors 5088 100

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
291 4618 do_utfpeakcharback call site: 04618 do_utfreadnewline_invalid
54 3927 sljit_emit_return call site: 03927 sljit_emit_op1
50 833 sljit_emit_simd_lane_mov call site: 00833 emit_mov
38 898 fast_forward_char_pair_simd call site: 00898 emit_vex_instruction
33 1219 fast_forward_newline call site: 01219 fast_forward_char_pair_simd
33 1732 read_char8_type call site: 01732 sljit_emit_cmp
32 1571 compile_simple_assertion_matchingpath call site: 01571 read_char
30 1535 compile_simple_assertion_matchingpath call site: 01535 check_partial
25 4565 do_utfreadchar call site: 04565 do_utfreadtype8
21 506 sljit_emit_op1 call site: 00506 emit_clz_ctz
21 1280 fast_forward_newline call site: 01280 read_char
21 1791 check_str_end call site: 01791 sljit_emit_cmp

Runtime coverage analysis

Covered functions
338
Functions that are reachable but not covered
48
Reachable functions
383
Percentage of reachable functions covered
87.47%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
pcre2_fuzzsupport.c 2
pcre2_context.c 9
pcre2_compile.c 26
pcre2_string_utils.c 5
pcre2_valid_utf.c 1
pcre2_newline.c 2
pcre2_compile_cgroup.c 8
pcre2_compile_class.c 23
pcre2_ord2utf.c 1
pcre2_chkdint.c 1
pcre2_find_bracket.c 1
pcre2_auto_possess.c 5
pcre2_xclass.c 2
pcre2_study.c 7
pcre2_jit_misc_inc.h 3
../deps/sljit/sljit_src/sljitLir.c 21
../deps/sljit/sljit_src/allocator_src/sljitExecAllocatorCore.c 4
../deps/sljit/sljit_src/allocator_src/sljitExecAllocatorPosix.c 2
pcre2_jit_compile.c 128
../deps/sljit/sljit_src/sljitNativeX86_common.c 63
../deps/sljit/sljit_src/sljitNativeX86_64.c 18
pcre2_jit_simd_inc.h 12
../deps/sljit/sljit_src/sljitLir.h 2
pcre2_jit_char_inc.h 9
../deps/sljit/sljit_src/sljitUtils.c 3
pcre2_match_data.c 2
pcre2_match.c 5
pcre2_jit_match_inc.h 2
pcre2_extuni.c 1
pcre2_script_run.c 1
pcre2_dfa_match.c 4

Fuzzer: pcre2_fuzzer_4l

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 1099 21.5%
gold [1:9] 25 0.49%
yellow [10:29] 11 0.21%
greenyellow [30:49] 14 0.27%
lawngreen 50+ 3939 77.4%
All colors 5088 100

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
291 4618 do_utfpeakcharback call site: 04618 do_utfreadnewline_invalid
54 3927 sljit_emit_return call site: 03927 sljit_emit_op1
50 833 sljit_emit_simd_lane_mov call site: 00833 emit_mov
38 898 fast_forward_char_pair_simd call site: 00898 emit_vex_instruction
33 1732 read_char8_type call site: 01732 sljit_emit_cmp
25 4565 do_utfreadchar call site: 04565 do_utfreadtype8
21 506 sljit_emit_op1 call site: 00506 emit_clz_ctz
21 1228 fast_forward_newline call site: 01228 sljit_emit_cmp
21 1539 compile_simple_assertion_matchingpath call site: 01539 check_partial
20 2620 compile_ref_matchingpath call site: 02620 sljit_emit_cmp
18 2672 compile_ref_matchingpath call site: 02672 check_partial
17 416 emit_byte call site: 00416 emit_mov

Runtime coverage analysis

Covered functions
340
Functions that are reachable but not covered
46
Reachable functions
383
Percentage of reachable functions covered
87.99%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
pcre2_fuzzsupport.c 2
pcre2_context.c 9
pcre2_compile.c 26
pcre2_string_utils.c 5
pcre2_valid_utf.c 1
pcre2_newline.c 2
pcre2_compile_cgroup.c 8
pcre2_compile_class.c 23
pcre2_ord2utf.c 1
pcre2_chkdint.c 1
pcre2_find_bracket.c 1
pcre2_auto_possess.c 5
pcre2_xclass.c 2
pcre2_study.c 7
pcre2_jit_misc_inc.h 3
../deps/sljit/sljit_src/sljitLir.c 21
../deps/sljit/sljit_src/allocator_src/sljitExecAllocatorCore.c 4
../deps/sljit/sljit_src/allocator_src/sljitExecAllocatorPosix.c 2
pcre2_jit_compile.c 128
../deps/sljit/sljit_src/sljitNativeX86_common.c 63
../deps/sljit/sljit_src/sljitNativeX86_64.c 18
pcre2_jit_simd_inc.h 12
../deps/sljit/sljit_src/sljitLir.h 2
pcre2_jit_char_inc.h 9
../deps/sljit/sljit_src/sljitUtils.c 3
pcre2_match_data.c 2
pcre2_match.c 5
pcre2_jit_match_inc.h 2
pcre2_extuni.c 1
pcre2_script_run.c 1
pcre2_dfa_match.c 4

Fuzz engine guidance

This sections provides heuristics that can be used as input to a fuzz engine when running a given fuzz target. The current focus is on providing input that is usable by libFuzzer.

pcre2_fuzzsupport.c

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['sljit_emit_return', 'sljit_emit_simd_lane_mov', 'fast_forward_char_pair_simd', 'fast_forward_newline', 'compile_simple_assertion_matchingpath', 'sljit_emit_op1', 'check_str_end', 'compile_ref_matchingpath']

pcre2_fuzzsupport.c

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['jit_compile', 'sljit_emit_return', 'sljit_emit_simd_lane_mov', 'fast_forward_char_pair_simd', 'fast_forward_newline', 'compile_simple_assertion_matchingpath', 'compile_bracket_matchingpath', 'sljit_emit_op1']

pcre2_fuzzsupport.c

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['jit_compile', 'sljit_emit_return', 'sljit_emit_simd_lane_mov', 'fast_forward_char_pair_simd', 'fast_forward_newline', 'compile_simple_assertion_matchingpath', 'sljit_emit_op1', 'check_str_end']

pcre2_fuzzsupport.c

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['sljit_emit_return', 'sljit_emit_simd_lane_mov', 'fast_forward_char_pair_simd', 'fast_forward_newline', 'compile_simple_assertion_matchingpath', 'compile_bracket_matchingpath', 'sljit_emit_op1', 'check_str_end']

pcre2_fuzzsupport.c

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['sljit_emit_return', 'sljit_emit_simd_lane_mov', 'fast_forward_char_pair_simd', 'fast_forward_newline', 'compile_simple_assertion_matchingpath', 'compile_bracket_matchingpath', 'sljit_emit_op1', 'check_str_end']

pcre2_fuzzsupport.c

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['jit_compile', 'sljit_emit_return', 'sljit_emit_simd_lane_mov', 'fast_forward_char_pair_simd', 'fast_forward_newline', 'compile_simple_assertion_matchingpath', 'compile_bracket_matchingpath', 'sljit_emit_op1']

pcre2_fuzzsupport.c

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['do_utfpeakcharback', 'sljit_emit_return', 'sljit_emit_simd_lane_mov', 'fast_forward_char_pair_simd', 'read_char8_type', 'do_utfreadchar', 'sljit_emit_op1', 'fast_forward_newline', 'compile_simple_assertion_matchingpath', 'compile_ref_matchingpath']

pcre2_fuzzsupport.c

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['do_utfpeakcharback', 'sljit_emit_return', 'sljit_emit_simd_lane_mov', 'fast_forward_char_pair_simd', 'fast_forward_newline', 'read_char8_type', 'compile_simple_assertion_matchingpath', 'do_utfreadchar', 'sljit_emit_op1']

pcre2_fuzzsupport.c

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['do_utfpeakcharback', 'sljit_emit_return', 'sljit_emit_simd_lane_mov', 'fast_forward_char_pair_simd', 'read_char8_type', 'do_utfreadchar', 'sljit_emit_op1', 'fast_forward_newline', 'compile_simple_assertion_matchingpath', 'compile_ref_matchingpath']

Runtime coverage analysis

This section shows analysis of runtime coverage data.

For futher technical details on how this section is generated, please see the Glossary .

Complex functions with low coverage

Func name Function total lines Lines covered at runtime percentage covered Reached by fuzzers
sljit_emit_cmp 51 17 33.33% ['pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer', 'pcre2_fuzzer_32', 'pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_4l']
sljit_emit_select 40 18 45.0% ['pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer', 'pcre2_fuzzer_32', 'pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_4l']
sljit_emit_op1 103 53 51.45% ['pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer', 'pcre2_fuzzer_32', 'pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_4l']
emit_mov_byte 33 15 45.45% ['pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer', 'pcre2_fuzzer_32', 'pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_4l']
emit_mov_half 31 14 45.16% ['pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer', 'pcre2_fuzzer_32', 'pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_4l']
emit_cum_binary 87 37 42.52% ['pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer', 'pcre2_fuzzer_32', 'pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_4l']
emit_shift 84 35 41.66% ['pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer', 'pcre2_fuzzer_32', 'pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_4l']
sljit_has_cpu_feature 44 9 20.45% ['pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer', 'pcre2_fuzzer_32', 'pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_4l']
sljit_emit_simd_lane_mov 248 38 15.32% ['pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer', 'pcre2_fuzzer_32', 'pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_4l']
sljit_emit_simd_lane_replicate 189 32 16.93% ['pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer', 'pcre2_fuzzer_32', 'pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_4l']
sljit_emit_simd_op2 73 29 39.72% ['pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer', 'pcre2_fuzzer_32', 'pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_4l']
sljit_emit_simd_sign 76 32 42.10% ['pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer', 'pcre2_fuzzer_32', 'pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_4l']
sljit_emit_op2_shift 79 43 54.43% ['pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer', 'pcre2_fuzzer_32', 'pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_4l']
emit_test_binary 79 26 32.91% ['pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer', 'pcre2_fuzzer_32', 'pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_4l']
sljit_emit_op0 91 14 15.38% ['pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer', 'pcre2_fuzzer_32', 'pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_4l']
_pcre2_extuni_32 53 29 54.71% ['pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_32_4l']
pcre2_jit_compile_32 82 41 50.0% ['pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_32_4l']
fast_forward_first_char2 55 29 52.72% ['pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer', 'pcre2_fuzzer_32', 'pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_4l']
do_casefulcmp 75 36 48.0% ['pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer', 'pcre2_fuzzer_32', 'pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_4l']
_pcre2_extuni_16 53 29 54.71% ['pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer_16']
pcre2_jit_compile_16 82 41 50.0% ['pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer_16']
pcre2_jit_compile_8 82 41 50.0% ['pcre2_fuzzer_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l']

Files and Directories in report

This section shows which files and directories are considered in this report. The main reason for showing this is fuzz introspector may include more code in the reasoning than is desired. This section helps identify if too many files/directories are included, e.g. third party code, which may be irrelevant for the threat model. In the event too much is included, fuzz introspector supports a configuration file that can exclude data from the report. See the following link for more information on how to create a config file: link

Files in report

Source file Reached by Covered by
[] []
/src/pcre2/src/pcre2_compile.c ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l'] ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l']
/src/pcre2/src/pcre2_study.c ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l'] ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l']
/src/pcre2/src/../deps/sljit/sljit_src/sljitNativeX86_64.c ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l'] []
/src/pcre2/src/pcre2_jit_char_inc.h ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l'] ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l']
/src/pcre2/src/pcre2_match.c ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l'] ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l']
/src/pcre2/src/pcre2_ord2utf.c ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l'] ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l']
/src/pcre2/src/pcre2_jit_match_inc.h ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l'] []
/src/pcre2/src/pcre2_valid_utf.c ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l'] ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l']
/src/pcre2/src/pcre2_auto_possess.c ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l'] ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l']
/src/pcre2/src/pcre2_fuzzsupport.c ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l'] ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l']
/src/pcre2/src/../deps/sljit/sljit_src/allocator_src/sljitExecAllocatorPosix.c ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l'] []
/src/pcre2/src/pcre2_jit_misc_inc.h ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l'] ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l']
/src/pcre2/src/../deps/sljit/sljit_src/sljitLir.c ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l'] []
/src/pcre2/src/pcre2_find_bracket.c ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l'] ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l']
/src/pcre2/src/pcre2_match_data.c ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l'] ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l']
/src/pcre2/src/pcre2_compile_cgroup.c ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l'] ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l']
/src/pcre2/src/../deps/sljit/sljit_src/sljitNativeX86_common.c ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l'] []
/src/pcre2/src/pcre2_context.c ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l'] ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l']
/src/pcre2/src/pcre2_jit_compile.c ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l'] ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l']
/src/pcre2/src/pcre2_chkdint.c ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l'] ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l']
/src/pcre2/src/pcre2_dfa_match.c ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l'] ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l']
/src/pcre2/src/pcre2_extuni.c ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l'] ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l']
/src/pcre2/src/pcre2_script_run.c ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l'] ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l']
/src/pcre2/src/pcre2_newline.c ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l'] ['pcre2_fuzzer', 'pcre2_fuzzer_4l']
/src/pcre2/src/../deps/sljit/sljit_src/allocator_src/sljitExecAllocatorCore.c ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l'] []
/src/pcre2/src/pcre2_string_utils.c ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l'] ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l']
/src/pcre2/src/pcre2_xclass.c ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l'] ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l']
/src/pcre2/src/../deps/sljit/sljit_src/sljitUtils.c ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l'] []
/src/pcre2/src/../deps/sljit/sljit_src/sljitLir.h ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l'] []
/src/pcre2/src/pcre2_compile_class.c ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l'] ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l']
/src/pcre2/src/pcre2_jit_simd_inc.h ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l'] ['pcre2_fuzzer_32_4l', 'pcre2_fuzzer_16_3l', 'pcre2_fuzzer_16', 'pcre2_fuzzer_32_3l', 'pcre2_fuzzer_32', 'pcre2_fuzzer_16_4l', 'pcre2_fuzzer', 'pcre2_fuzzer_3l', 'pcre2_fuzzer_4l']

Directories in report

Directory
/src/pcre2/src/
/src/pcre2/src/../deps/sljit/sljit_src/allocator_src/
/src/pcre2/src/../deps/sljit/sljit_src/