diff options
author | Kostya Serebryany <kcc@google.com> | 2018-05-23 20:57:11 +0000 |
---|---|---|
committer | Kostya Serebryany <kcc@google.com> | 2018-05-23 20:57:11 +0000 |
commit | d5e64ad1618522d23a40c25e499b55336fdfad9d (patch) | |
tree | cfb22df14481c69b699d7758ba7dd0080dcb6b02 /test | |
parent | 7dffc3fb2fc42aa2283ee95f7ce3f5a725d38fb6 (diff) |
[libFuzzer] change the output format for the DataFlow tracer
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@333122 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test')
-rw-r--r-- | test/fuzzer/dataflow.test | 47 |
1 files changed, 10 insertions, 37 deletions
diff --git a/test/fuzzer/dataflow.test b/test/fuzzer/dataflow.test index 1f081f4be..7adf30d88 100644 --- a/test/fuzzer/dataflow.test +++ b/test/fuzzer/dataflow.test @@ -24,58 +24,31 @@ RUN: echo -n 1234567890123456 > %t/IN/1234567890123456 # ABC: No data is used, the only used label is 4 (corresponds to the size) RUN:%t-ThreeFunctionsTestDF %t/IN/ABC | FileCheck %s --check-prefix=IN_ABC -IN_ABC: LEN: 3 -IN_ABC: LABELS: 4 -IN_ABC: F{{[012]}} 4 +IN_ABC: F{{[012]}} 1000 IN_ABC-NOT: F # FUABC: First 3 bytes are checked, Func1/Func2 are not called. RUN:%t-ThreeFunctionsTestDF %t/IN/FUABC | FileCheck %s --check-prefix=IN_FUABC -IN_FUABC: LEN: 5 -IN_FUABC: LABELS: -IN_FUABC: L{{.*}} 1 -IN_FUABC: L{{.*}} 2 -IN_FUABC: L{{.*}} 3 -IN_FUABC-NOT: L{{.*}} 4 -IN_FUABC: F{{[012]}} +IN_FUABC: F{{[012]}} 111100 IN_FUABC-NOT: F # FUZZR: 5 bytes are used (4 in one function, 5-th in the other), Func2 is not called. RUN:%t-ThreeFunctionsTestDF %t/IN/FUZZR | FileCheck %s --check-prefix=IN_FUZZR -IN_FUZZR: LEN: 5 -IN_FUZZR: LABELS: -IN_FUZZR: L{{.*}} 1 -IN_FUZZR: L{{.*}} 2 -IN_FUZZR: L{{.*}} 3 -IN_FUZZR: L[[L0:[0-9]*]] 4 -IN_FUZZR-DAG: F{{[012]}} 5 -IN_FUZZR-DAG: F{{[012]}} [[L0]] +IN_FUZZR-DAG: F{{[012]}} 111110 +IN_FUZZR-DAG: F{{[012]}} 000001 IN_FUZZR-NOT: F # FUZZM: 5 bytes are used, both Func1 and Func2 are called, Func2 depends only on size (label 6). RUN:%t-ThreeFunctionsTestDF %t/IN/FUZZM | FileCheck %s --check-prefix=IN_FUZZM -IN_FUZZM: LEN: 5 -IN_FUZZM: LABELS: -IN_FUZZM: L{{.*}} 1 -IN_FUZZM: L{{.*}} 2 -IN_FUZZM: L{{.*}} 3 -IN_FUZZM: L{{.*}} 4 -IN_FUZZM-DAG: F{{[012]}} 6 -IN_FUZZM-DAG: F{{[012]}} 5 -IN_FUZZM-DAG: F +IN_FUZZM-DAG: F{{[012]}} 100000 +IN_FUZZM-DAG: F{{[012]}} 111110 +IN_FUZZM-DAG: F{{[012]}} 000001 # FUZZMU: 6 bytes are used, both Func1 and Func2 are called, Func2 depends on byte 6 and size (label 7) RUN:%t-ThreeFunctionsTestDF %t/IN/FUZZMU | FileCheck %s --check-prefix=IN_FUZZMU -IN_FUZZMU: LEN: 6 -IN_FUZZMU: LABELS: -IN_FUZZMU: L{{.*}} 1 -IN_FUZZMU: L{{.*}} 2 -IN_FUZZMU: L{{.*}} 3 -IN_FUZZMU: L{{.*}} 4 -IN_FUZZMU: L[[L2:[0-9]*]] 6 7 -IN_FUZZMU-DAG: F{{[012]}} 5 -IN_FUZZMU-DAG: F{{[012]}} [[L2]] -IN_FUZZMU-DAG: F +IN_FUZZMU-DAG: F{{[012]}} 1000001 +IN_FUZZMU-DAG: F{{[012]}} 1111100 +IN_FUZZMU-DAG: F{{[012]}} 0000010 # Today a very simple test will cause DFSan to die with "out of labels" RUN: not %t-ExplodeDFSanLabelsTestDF %t/IN/1234567890123456 2>&1 | FileCheck %s --check-prefix=OUT_OF_LABELS |