diff options
Diffstat (limited to 'llvm/lib/Fuzzer/test')
-rw-r--r-- | llvm/lib/Fuzzer/test/FuzzerUnittest.cpp | 2 | ||||
-rw-r--r-- | llvm/lib/Fuzzer/test/ShrinkControlFlowTest.cpp | 2 | ||||
-rw-r--r-- | llvm/lib/Fuzzer/test/ShrinkValueProfileTest.cpp | 5 | ||||
-rw-r--r-- | llvm/lib/Fuzzer/test/fuzzer.test | 10 | ||||
-rw-r--r-- | llvm/lib/Fuzzer/test/shrink.test | 7 |
5 files changed, 17 insertions, 9 deletions
diff --git a/llvm/lib/Fuzzer/test/FuzzerUnittest.cpp b/llvm/lib/Fuzzer/test/FuzzerUnittest.cpp index fdde1d3fbb9..ed37055fe45 100644 --- a/llvm/lib/Fuzzer/test/FuzzerUnittest.cpp +++ b/llvm/lib/Fuzzer/test/FuzzerUnittest.cpp @@ -583,7 +583,7 @@ TEST(Corpus, Distribution) { size_t N = 10; size_t TriesPerUnit = 1<<20; for (size_t i = 0; i < N; i++) - C.AddToCorpus(Unit{ static_cast<uint8_t>(i) }); + C.AddToCorpus(Unit{ static_cast<uint8_t>(i) }, 0); std::vector<size_t> Hist(N); for (size_t i = 0; i < N * TriesPerUnit; i++) { diff --git a/llvm/lib/Fuzzer/test/ShrinkControlFlowTest.cpp b/llvm/lib/Fuzzer/test/ShrinkControlFlowTest.cpp index 2fa17f156e2..0fd7c5e9a1f 100644 --- a/llvm/lib/Fuzzer/test/ShrinkControlFlowTest.cpp +++ b/llvm/lib/Fuzzer/test/ShrinkControlFlowTest.cpp @@ -21,7 +21,7 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *Data, size_t Size) { int Z = Ids[(unsigned char)'Z']; if (F >= 0 && U > F && Z > U) { Sink++; - // fprintf(stderr, "IDS: %d %d %d\n", F, U, Z); + //fprintf(stderr, "IDS: %d %d %d\n", F, U, Z); } return 0; } diff --git a/llvm/lib/Fuzzer/test/ShrinkValueProfileTest.cpp b/llvm/lib/Fuzzer/test/ShrinkValueProfileTest.cpp index 9ff5b19c7b6..026b8ce2659 100644 --- a/llvm/lib/Fuzzer/test/ShrinkValueProfileTest.cpp +++ b/llvm/lib/Fuzzer/test/ShrinkValueProfileTest.cpp @@ -12,10 +12,11 @@ static volatile uint32_t Sink; extern "C" int LLVMFuzzerTestOneInput(const uint8_t *Data, size_t Size) { if (Size < sizeof(uint32_t)) return 0; - uint32_t X; + uint32_t X, Y; size_t Offset = Size < 8 ? 0 : Size / 2; memcpy(&X, Data + Offset, sizeof(uint32_t)); - Sink = X == 0xAABBCCDD; + memcpy(&Y, "FUZZ", sizeof(uint32_t)); + Sink = X == Y; return 0; } diff --git a/llvm/lib/Fuzzer/test/fuzzer.test b/llvm/lib/Fuzzer/test/fuzzer.test index 98139c09d6f..fe408596f5f 100644 --- a/llvm/lib/Fuzzer/test/fuzzer.test +++ b/llvm/lib/Fuzzer/test/fuzzer.test @@ -27,13 +27,13 @@ NULL_DEREF_ON_EMPTY: stat::number_of_executed_units: RUN: not LLVMFuzzer-CounterTest -use_counters=1 -max_len=6 -seed=1 -timeout=15 2>&1 | FileCheck %s --check-prefix=COUNTERS RUN: not LLVMFuzzer-CounterTest-TracePC -use_counters=1 -max_len=6 -seed=1 -timeout=15 2>&1 | FileCheck %s --check-prefix=COUNTERS -COUNTERS: INITED {{.*}} bits: -COUNTERS: NEW {{.*}} bits: {{[1-9]*}} -COUNTERS: NEW {{.*}} bits: {{[1-9]*}} +COUNTERS: INITED {{.*}} {{bits:|ft:}} +COUNTERS: NEW {{.*}} {{bits:|ft:}} {{[1-9]*}} +COUNTERS: NEW {{.*}} {{bits:|ft:}} {{[1-9]*}} COUNTERS: BINGO -RUN: not LLVMFuzzer-CallerCalleeTest -cross_over=0 -max_len=6 -seed=1 -max_total_time=15 2>&1 | FileCheck %s -RUN: not LLVMFuzzer-CallerCalleeTest-TracePC -cross_over=0 -max_len=6 -seed=1 -max_total_time=15 2>&1 | FileCheck %s +RUN: not LLVMFuzzer-CallerCalleeTest -use_value_profile=1 -cross_over=0 -max_len=6 -seed=1 -max_total_time=15 2>&1 | FileCheck %s +RUN: not LLVMFuzzer-CallerCalleeTest-TracePC -use_value_profile=1 -cross_over=0 -max_len=6 -seed=1 -max_total_time=15 2>&1 | FileCheck %s # This one is flaky, may actually find the goal even w/o use_indir_calls. # LLVMFuzzer-CallerCalleeTest -use_indir_calls=0 -cross_over=0 -max_len=6 -seed=1 -runs=1000000 2>&1 | FileCheck %s --check-prefix=Done1000000 diff --git a/llvm/lib/Fuzzer/test/shrink.test b/llvm/lib/Fuzzer/test/shrink.test new file mode 100644 index 00000000000..68206f0901b --- /dev/null +++ b/llvm/lib/Fuzzer/test/shrink.test @@ -0,0 +1,7 @@ +RUN: LLVMFuzzer-ShrinkControlFlowTest-TracePC -seed=1 -exit_on_item=0eb8e4ed029b774d80f2b66408203801cb982a60 -runs=1000000 -shrink=1 2>&1 | FileCheck %s --check-prefix=SHRINK1 +RUN: LLVMFuzzer-ShrinkControlFlowTest-TracePC -seed=1 -exit_on_item=0eb8e4ed029b774d80f2b66408203801cb982a60 -runs=1000000 -shrink=0 2>&1 | FileCheck %s --check-prefix=SHRINK0 +RUN: LLVMFuzzer-ShrinkValueProfileTest-TracePC -seed=1 -exit_on_item=aea2e3923af219a8956f626558ef32f30a914ebc -runs=100000 -shrink=1 -use_value_profile=1 2>&1 | FileCheck %s --check-prefix=SHRINK1_VP + +SHRINK0: Done 1000000 runs in +SHRINK1: INFO: found item with checksum '0eb8e4ed029b774d80f2b66408203801cb982a60', exiting. +SHRINK1_VP: INFO: found item with checksum 'aea2e3923af219a8956f626558ef32f30a914ebc', exiting |