Global Metrics
path: .metrics.mi.mi_original
old: 41.197700620575205
new: 73.52232548515565
path: .metrics.mi.mi_visual_studio
old: 24.0922225851317
new: 42.99551197962319
path: .metrics.mi.mi_sei
old: 10.790663221061068
new: 69.85050836290384
path: .metrics.nom.total
old: 8.0
new: 6.0
path: .metrics.nom.functions
old: 8.0
new: 6.0
path: .metrics.loc.cloc
old: 16.0
new: 13.0
path: .metrics.loc.ploc
old: 120.0
new: 26.0
path: .metrics.loc.sloc
old: 149.0
new: 42.0
path: .metrics.loc.lloc
old: 44.0
new: 6.0
path: .metrics.loc.blank
old: 13.0
new: 3.0
path: .metrics.nargs.sum
old: 23.0
new: 0.0
path: .metrics.nargs.average
old: 2.875
new: 0.0
path: .metrics.nexits.average
old: 0.5
new: 0.6666666666666666
path: .metrics.cyclomatic.average
old: 2.7
new: 1.6666666666666667
path: .metrics.cyclomatic.sum
old: 27.0
new: 15.0
path: .metrics.cognitive.average
old: 2.625
new: 0.3333333333333333
path: .metrics.cognitive.sum
old: 21.0
new: 2.0
path: .metrics.halstead.n1
old: 23.0
new: 14.0
path: .metrics.halstead.N2
old: 247.0
new: 38.0
path: .metrics.halstead.length
old: 556.0
new: 120.0
path: .metrics.halstead.level
old: 0.02182714310860764
new: 0.08646616541353383
path: .metrics.halstead.purity_ratio
old: 0.85108290689442
new: 1.3112074491509813
path: .metrics.halstead.volume
old: 3563.621360492562
new: 625.134403875474
path: .metrics.halstead.effort
old: 163265.58829805037
new: 7229.815279603308
path: .metrics.halstead.n2
old: 62.0
new: 23.0
path: .metrics.halstead.difficulty
old: 45.814516129032256
new: 11.565217391304348
path: .metrics.halstead.vocabulary
old: 85.0
new: 37.0
path: .metrics.halstead.bugs
old: 0.9957305922003116
new: 0.12463218610506438
path: .metrics.halstead.estimated_program_length
old: 473.20209623329754
new: 157.34489389811776
path: .metrics.halstead.N1
old: 309.0
new: 82.0
path: .metrics.halstead.time
old: 9070.3104610028
new: 401.656404422406
Spaces Data
Minimal test - lines (23, 30)
path: .spaces[0].spaces[2].metrics.halstead.difficulty
old: 11.470588235294118
new: 8.0
path: .spaces[0].spaces[2].metrics.halstead.time
old: 209.50498572426568
new: 107.02635884729514
path: .spaces[0].spaces[2].metrics.halstead.n2
old: 17.0
new: 11.0
path: .spaces[0].spaces[2].metrics.halstead.level
old: 0.08717948717948718
new: 0.125
path: .spaces[0].spaces[2].metrics.halstead.length
old: 67.0
new: 54.0
path: .spaces[0].spaces[2].metrics.halstead.n1
old: 13.0
new: 11.0
path: .spaces[0].spaces[2].metrics.halstead.vocabulary
old: 30.0
new: 22.0
path: .spaces[0].spaces[2].metrics.halstead.N1
old: 37.0
new: 38.0
path: .spaces[0].spaces[2].metrics.halstead.estimated_program_length
old: 117.59258463708996
new: 76.10749561002054
path: .spaces[0].spaces[2].metrics.halstead.volume
old: 328.76166990577076
new: 240.8093074064141
path: .spaces[0].spaces[2].metrics.halstead.effort
old: 3771.0897430367822
new: 1926.4744592513125
path: .spaces[0].spaces[2].metrics.halstead.bugs
old: 0.08075882478970832
new: 0.05160846187785579
path: .spaces[0].spaces[2].metrics.halstead.purity_ratio
old: 1.7551132035386563
new: 1.409398066852232
path: .spaces[0].spaces[2].metrics.halstead.N2
old: 30.0
new: 16.0
path: .spaces[0].spaces[2].metrics.loc.cloc
old: 0.0
new: 1.0
path: .spaces[0].spaces[2].metrics.loc.lloc
old: 5.0
new: 2.0
path: .spaces[0].spaces[2].metrics.loc.ploc
old: 13.0
new: 8.0
path: .spaces[0].spaces[2].metrics.loc.sloc
old: 13.0
new: 8.0
path: .spaces[0].spaces[2].metrics.nargs.sum
old: 4.0
new: 0.0
path: .spaces[0].spaces[2].metrics.nargs.average
old: 4.0
new: 0.0
path: .spaces[0].spaces[2].metrics.mi.mi_sei
old: 67.1162054280147
new: 106.83612878750031
path: .spaces[0].spaces[2].metrics.mi.mi_original
old: 98.8520883896174
new: 108.33621912830668
path: .spaces[0].spaces[2].metrics.mi.mi_visual_studio
old: 57.80823882433765
new: 63.35451411012086
path: .spaces[0].spaces[2].metrics.cognitive.average
old: 2.0
new: 1.0
path: .spaces[0].spaces[2].metrics.cognitive.sum
old: 2.0
new: 1.0
Code
void ClearExtraCounters() { // hand-written memset, don't asan-ify.
uintptr_t *Beg = reinterpret_cast(ExtraCountersBegin());
uintptr_t *End = reinterpret_cast(ExtraCountersEnd());
for (; Beg < End; Beg++) {
*Beg = 0;
__asm__ __volatile__("" : : : "memory");
}
}
Minimal test - lines (21, 21)
path: .spaces[0].spaces[1].metrics.nargs.average
old: 4.0
new: 0.0
path: .spaces[0].spaces[1].metrics.nargs.sum
old: 4.0
new: 0.0
path: .spaces[0].spaces[1].metrics.mi.mi_sei
old: 72.9331167143331
new: 145.63125671373976
path: .spaces[0].spaces[1].metrics.mi.mi_visual_studio
old: 45.95642715874573
new: 89.67552688205174
path: .spaces[0].spaces[1].metrics.mi.mi_original
old: 78.5854904414552
new: 153.34515096830847
path: .spaces[0].spaces[1].metrics.loc.cloc
old: 8.0
new: 0.0
path: .spaces[0].spaces[1].metrics.loc.lloc
old: 13.0
new: 1.0
path: .spaces[0].spaces[1].metrics.loc.sloc
old: 33.0
new: 1.0
path: .spaces[0].spaces[1].metrics.loc.ploc
old: 25.0
new: 1.0
path: .spaces[0].spaces[1].metrics.cognitive.average
old: 8.0
new: 0.0
path: .spaces[0].spaces[1].metrics.cognitive.sum
old: 8.0
new: 0.0
path: .spaces[0].spaces[1].metrics.cyclomatic.average
old: 7.0
new: 1.0
path: .spaces[0].spaces[1].metrics.cyclomatic.sum
old: 7.0
new: 1.0
path: .spaces[0].spaces[1].metrics.nexits.sum
old: 0.0
new: 1.0
path: .spaces[0].spaces[1].metrics.nexits.average
old: 0.0
new: 1.0
path: .spaces[0].spaces[1].metrics.halstead.n2
old: 17.0
new: 2.0
path: .spaces[0].spaces[1].metrics.halstead.effort
old: 23024.74801800514
new: 99.85263754543284
path: .spaces[0].spaces[1].metrics.halstead.N1
old: 78.0
new: 7.0
path: .spaces[0].spaces[1].metrics.halstead.difficulty
old: 32.294117647058826
new: 3.5
path: .spaces[0].spaces[1].metrics.halstead.bugs
old: 0.2697793284564982
new: 0.007174392059877131
path: .spaces[0].spaces[1].metrics.halstead.N2
old: 61.0
new: 2.0
path: .spaces[0].spaces[1].metrics.halstead.level
old: 0.030965391621129323
new: 0.2857142857142857
path: .spaces[0].spaces[1].metrics.halstead.estimated_program_length
old: 144.5455183272174
new: 21.651484454403228
path: .spaces[0].spaces[1].metrics.halstead.purity_ratio
old: 1.0398958153037223
new: 2.405720494933692
path: .spaces[0].spaces[1].metrics.halstead.time
old: 1279.152667666952
new: 5.547368752524046
path: .spaces[0].spaces[1].metrics.halstead.volume
old: 712.9703393553503
new: 28.52932501298081
path: .spaces[0].spaces[1].metrics.halstead.vocabulary
old: 35.0
new: 9.0
path: .spaces[0].spaces[1].metrics.halstead.length
old: 139.0
new: 9.0
path: .spaces[0].spaces[1].metrics.halstead.n1
old: 18.0
new: 7.0
Code
uint8_t *ExtraCountersEnd() { return &__stop___libfuzzer_extra_counters; }
Minimal test - lines (19, 32)
path: .spaces[0].metrics.halstead.n2
old: 60.0
new: 14.0
path: .spaces[0].metrics.halstead.time
old: 9213.67330851135
new: 190.591740711719
path: .spaces[0].metrics.halstead.effort
old: 165846.1195532043
new: 3430.651332810942
path: .spaces[0].metrics.halstead.estimated_program_length
old: 458.4553607258224
new: 101.40868524464064
path: .spaces[0].metrics.halstead.length
old: 554.0
new: 74.0
path: .spaces[0].metrics.halstead.purity_ratio
old: 0.8275367522126759
new: 1.3703876384410898
path: .spaces[0].metrics.halstead.volume
old: 3531.771844966196
new: 351.86167516009664
path: .spaces[0].metrics.halstead.bugs
old: 1.0061953088957731
new: 0.07582221483291023
path: .spaces[0].metrics.halstead.N2
old: 245.0
new: 21.0
path: .spaces[0].metrics.halstead.vocabulary
old: 83.0
new: 27.0
path: .spaces[0].metrics.halstead.difficulty
old: 46.958333333333336
new: 9.75
path: .spaces[0].metrics.halstead.level
old: 0.02129547471162378
new: 0.10256410256410256
path: .spaces[0].metrics.halstead.n1
old: 23.0
new: 13.0
path: .spaces[0].metrics.halstead.N1
old: 309.0
new: 53.0
path: .spaces[0].metrics.mi.mi_sei
old: 8.588599227752056
new: 84.30028571927028
path: .spaces[0].metrics.mi.mi_original
old: 42.59983647525658
new: 96.60843298386548
path: .spaces[0].metrics.mi.mi_visual_studio
old: 24.91218507324946
new: 56.49615963968741
path: .spaces[0].metrics.loc.ploc
old: 118.0
new: 13.0
path: .spaces[0].metrics.loc.sloc
old: 139.0
new: 14.0
path: .spaces[0].metrics.loc.blank
old: 11.0
new: 0.0
path: .spaces[0].metrics.loc.lloc
old: 44.0
new: 4.0
path: .spaces[0].metrics.loc.cloc
old: 10.0
new: 1.0
path: .spaces[0].metrics.nexits.average
old: 0.5
new: 0.6666666666666666
path: .spaces[0].metrics.nexits.sum
old: 4.0
new: 2.0
path: .spaces[0].metrics.cognitive.average
old: 2.625
new: 0.3333333333333333
path: .spaces[0].metrics.cognitive.sum
old: 21.0
new: 1.0
path: .spaces[0].metrics.nom.total
old: 8.0
new: 3.0
path: .spaces[0].metrics.nom.functions
old: 8.0
new: 3.0
path: .spaces[0].metrics.cyclomatic.average
old: 2.888888888888889
new: 1.25
path: .spaces[0].metrics.cyclomatic.sum
old: 26.0
new: 5.0
path: .spaces[0].metrics.nargs.sum
old: 23.0
new: 0.0
path: .spaces[0].metrics.nargs.average
old: 2.875
new: 0.0
Code
namespace fuzzer {
uint8_t *ExtraCountersBegin() { return &__start___libfuzzer_extra_counters; }
uint8_t *ExtraCountersEnd() { return &__stop___libfuzzer_extra_counters; }
ATTRIBUTE_NO_SANITIZE_ALL
void ClearExtraCounters() { // hand-written memset, don't asan-ify.
uintptr_t *Beg = reinterpret_cast(ExtraCountersBegin());
uintptr_t *End = reinterpret_cast(ExtraCountersEnd());
for (; Beg < End; Beg++) {
*Beg = 0;
__asm__ __volatile__("" : : : "memory");
}
}
} // namespace fuzzer
Minimal test - lines (20, 20)
path: .spaces[0].spaces[0].metrics.nexits.sum
old: 3.0
new: 1.0
path: .spaces[0].spaces[0].metrics.nexits.average
old: 3.0
new: 1.0
path: .spaces[0].spaces[0].metrics.cognitive.average
old: 3.0
new: 0.0
path: .spaces[0].spaces[0].metrics.cognitive.sum
old: 3.0
new: 0.0
path: .spaces[0].spaces[0].metrics.halstead.effort
old: 2931.268147524944
new: 99.85263754543284
path: .spaces[0].spaces[0].metrics.halstead.level
old: 0.08333333333333333
new: 0.2857142857142857
path: .spaces[0].spaces[0].metrics.halstead.volume
old: 244.2723456270787
new: 28.52932501298081
path: .spaces[0].spaces[0].metrics.halstead.vocabulary
old: 23.0
new: 9.0
path: .spaces[0].spaces[0].metrics.halstead.length
old: 54.0
new: 9.0
path: .spaces[0].spaces[0].metrics.halstead.N2
old: 22.0
new: 2.0
path: .spaces[0].spaces[0].metrics.halstead.N1
old: 32.0
new: 7.0
path: .spaces[0].spaces[0].metrics.halstead.n1
old: 12.0
new: 7.0
path: .spaces[0].spaces[0].metrics.halstead.difficulty
old: 12.0
new: 3.5
path: .spaces[0].spaces[0].metrics.halstead.n2
old: 11.0
new: 2.0
path: .spaces[0].spaces[0].metrics.halstead.time
old: 162.84823041805245
new: 5.547368752524046
path: .spaces[0].spaces[0].metrics.halstead.bugs
old: 0.06827301956154704
new: 0.007174392059877131
path: .spaces[0].spaces[0].metrics.halstead.purity_ratio
old: 1.5013573669197062
new: 2.405720494933692
path: .spaces[0].spaces[0].metrics.halstead.estimated_program_length
old: 81.07329781366414
new: 21.651484454403228
path: .spaces[0].spaces[0].metrics.loc.blank
old: 1.0
new: 0.0
path: .spaces[0].spaces[0].metrics.loc.ploc
old: 16.0
new: 1.0
path: .spaces[0].spaces[0].metrics.loc.lloc
old: 9.0
new: 1.0
path: .spaces[0].spaces[0].metrics.loc.sloc
old: 17.0
new: 1.0
path: .spaces[0].spaces[0].metrics.mi.mi_sei
old: 62.61489895836005
new: 145.63125671373976
path: .spaces[0].spaces[0].metrics.mi.mi_visual_studio
old: 55.90109251719159
new: 89.67552688205174
path: .spaces[0].spaces[0].metrics.mi.mi_original
old: 95.59086820439762
new: 153.34515096830847
path: .spaces[0].spaces[0].metrics.cyclomatic.sum
old: 4.0
new: 1.0
path: .spaces[0].spaces[0].metrics.cyclomatic.average
old: 4.0
new: 1.0
Code
uint8_t *ExtraCountersBegin() { return &__start___libfuzzer_extra_counters; }