[libFuzzer] stop using bits for memcmp's value profile -- seems to blow up the corpus too much

llvm-svn: 280096
This commit is contained in:
Kostya Serebryany 2016-08-30 14:39:33 +00:00
parent 2c5ee4454d
commit 248d11519a
2 changed files with 9 additions and 9 deletions

View File

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

View File

@ -1,4 +1,4 @@
CHECK: BINGO
RUN: not LLVMFuzzer-SingleMemcmpTest -seed=1 -use_memcmp=0 -use_value_profile=1 -runs=1000000 2>&1 | FileCheck %s
RUN: not LLVMFuzzer-SingleStrcmpTest -seed=1 -use_memcmp=0 -use_value_profile=1 -runs=1000000 2>&1 | FileCheck %s
RUN: not LLVMFuzzer-SingleStrncmpTest -seed=1 -use_memcmp=0 -use_value_profile=1 -runs=1000000 2>&1 | FileCheck %s
RUN: not LLVMFuzzer-SingleMemcmpTest -seed=1 -use_memcmp=0 -use_value_profile=1 -runs=10000000 2>&1 | FileCheck %s
RUN: not LLVMFuzzer-SingleStrcmpTest -seed=1 -use_memcmp=0 -use_value_profile=1 -runs=10000000 2>&1 | FileCheck %s
RUN: not LLVMFuzzer-SingleStrncmpTest -seed=1 -use_memcmp=0 -use_value_profile=1 -runs=10000000 2>&1 | FileCheck %s