Skip to content
This repository was archived by the owner on Mar 28, 2020. It is now read-only.

Commit 773652b

Browse files
committed
[libFuzzer] stop using bits for memcmp's value profile -- seems to blow up the corpus too much
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@280096 91177308-0d34-0410-b5e6-96231b3b80d8
1 parent 0d8f244 commit 773652b

File tree

2 files changed

+9
-9
lines changed

2 files changed

+9
-9
lines changed

lib/Fuzzer/FuzzerTraceState.cpp

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -559,9 +559,9 @@ static void AddValueForMemcmp(void *caller_pc, const void *s1, const void *s2,
559559
if (A1[I] != A2[I])
560560
break;
561561
size_t PC = reinterpret_cast<size_t>(caller_pc);
562-
size_t Idx = I * 8;
563-
if (I < Len)
564-
Idx += __builtin_popcountl((A1[I] ^ A2[I])) - 1;
562+
size_t Idx = I;
563+
// if (I < Len)
564+
// Idx += __builtin_popcountl((A1[I] ^ A2[I])) - 1;
565565
VP.AddValue((PC & 4095) | (Idx << 12));
566566
}
567567

@@ -576,9 +576,9 @@ static void AddValueForStrcmp(void *caller_pc, const char *s1, const char *s2,
576576
if (A1[I] != A2[I] || A1[I] == 0)
577577
break;
578578
size_t PC = reinterpret_cast<size_t>(caller_pc);
579-
size_t Idx = I * 8;
580-
if (I < Len && A1[I])
581-
Idx += __builtin_popcountl((A1[I] ^ A2[I])) - 1;
579+
size_t Idx = I;
580+
// if (I < Len && A1[I])
581+
// Idx += __builtin_popcountl((A1[I] ^ A2[I])) - 1;
582582
VP.AddValue((PC & 4095) | (Idx << 12));
583583
}
584584

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
CHECK: BINGO
2-
RUN: not LLVMFuzzer-SingleMemcmpTest -seed=1 -use_memcmp=0 -use_value_profile=1 -runs=1000000 2>&1 | FileCheck %s
3-
RUN: not LLVMFuzzer-SingleStrcmpTest -seed=1 -use_memcmp=0 -use_value_profile=1 -runs=1000000 2>&1 | FileCheck %s
4-
RUN: not LLVMFuzzer-SingleStrncmpTest -seed=1 -use_memcmp=0 -use_value_profile=1 -runs=1000000 2>&1 | FileCheck %s
2+
RUN: not LLVMFuzzer-SingleMemcmpTest -seed=1 -use_memcmp=0 -use_value_profile=1 -runs=10000000 2>&1 | FileCheck %s
3+
RUN: not LLVMFuzzer-SingleStrcmpTest -seed=1 -use_memcmp=0 -use_value_profile=1 -runs=10000000 2>&1 | FileCheck %s
4+
RUN: not LLVMFuzzer-SingleStrncmpTest -seed=1 -use_memcmp=0 -use_value_profile=1 -runs=10000000 2>&1 | FileCheck %s

0 commit comments

Comments
 (0)