llvm.org GIT mirror llvm / f593646
[sancov] enabling coverage edge pruning by default. Differential Revision: http://reviews.llvm.org/D18844 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@265615 91177308-0d34-0410-b5e6-96231b3b80d8 Mike Aizatsky 4 years ago
4 changed file(s) with 6 addition(s) and 13 deletion(s). Raw diff Collapse all Expand all
100100 "instructions"),
101101 cl::Hidden, cl::init(false));
102102
103 static cl::opt ClPruneBlocks(
104 "sanitizer-coverage-prune-blocks",
105 cl::desc("Reduce the number of instrumented blocks (experimental)"),
106 cl::Hidden, cl::init(false));
103 static cl::opt
104 ClPruneBlocks("sanitizer-coverage-prune-blocks",
105 cl::desc("Reduce the number of instrumented blocks"),
106 cl::Hidden, cl::init(true));
107107
108108 // Experimental 8-bit counters used as an additional search heuristic during
109109 // coverage-guided fuzzing.
5555 ; CHECK_WITH_CHECK: ret void
5656 ; CHECK_WITH_CHECK-LABEL: define internal void @sancov.module_ctor
5757 ; CHECK_WITH_CHECK-NOT: ret
58 ; CHECK_WITH_CHECK: call void @__sanitizer_cov_module_init({{.*}}, i64 4,
58 ; CHECK_WITH_CHECK: call void @__sanitizer_cov_module_init({{.*}}, i64 3,
5959 ; CHECK_WITH_CHECK: ret
6060
6161 ; CHECK2-LABEL: define void @foo
6363 ; CHECK2: call void asm sideeffect "", ""()
6464 ; CHECK2: call void @__sanitizer_cov
6565 ; CHECK2: call void asm sideeffect "", ""()
66 ; CHECK2: call void @__sanitizer_cov
6766 ; CHECK2: call void asm sideeffect "", ""()
6867 ; CHECK2-NOT: call void @__sanitizer_cov
6968 ; CHECK2: ret void
7069
7170 ; CHECK2-LABEL: define internal void @sancov.module_ctor
7271 ; CHECK2-NOT: ret
73 ; CHECK2: call void @__sanitizer_cov_module_init({{.*}}, i64 4,
72 ; CHECK2: call void @__sanitizer_cov_module_init({{.*}}, i64 3,
7473 ; CHECK2: ret
7574
7675 ; CHECK3-LABEL: define void @foo
77 ; CHECK3: call void @__sanitizer_cov
7876 ; CHECK3: call void @__sanitizer_cov
7977 ; CHECK3: call void @__sanitizer_cov
8078 ; CHECK3-NOT: ret void
1818 ; CHECK-LABEL:_Z3fooPi
1919 ; CHECK: call void @__sanitizer_cov(i32*{{.*}}), !dbg [[A:!.*]]
2020 ; CHECK: call void @__sanitizer_cov(i32*{{.*}}), !dbg [[B:!.*]]
21 ; CHECK: call void @__sanitizer_cov(i32*{{.*}}), !dbg [[C:!.*]]
2221 ; CHECK: ret void
2322 ; CHECK: [[A]] = !DILocation(line: 1, scope: !{{.*}})
2423 ; CHECK: [[B]] = !DILocation(line: 3, column: 5, scope: !{{.*}})
25 ; CHECK: [[C]] = !DILocation(line: 4, column: 1, scope: !{{.*}})
2624
2725 define void @_Z3fooPi(i32* %a) #0 !dbg !4 {
2826 entry:
2020 ; CHECK1-LABEL: define void @foo
2121 ; CHECK1: call void @__sanitizer_cov_trace_func_enter
2222 ; CHECK1: call void @__sanitizer_cov_trace_basic_block
23 ; CHECK1: call void @__sanitizer_cov_trace_basic_block
2423 ; CHECK1-NOT: call void @__sanitizer_cov_trace_basic_block
2524 ; CHECK1: ret void
2625
2726 ; CHECK3-LABEL: define void @foo
2827 ; CHECK3: call void @__sanitizer_cov_trace_func_enter
29 ; CHECK3: call void @__sanitizer_cov_trace_basic_block
3028 ; CHECK3: call void @__sanitizer_cov_trace_basic_block
3129 ; CHECK3: call void @__sanitizer_cov_trace_basic_block
3230 ; CHECK3-NOT: call void @__sanitizer_cov_trace_basic_block
3634 ; CHECK_PC: call void @__sanitizer_cov_trace_pc
3735 ; CHECK_PC: call void @__sanitizer_cov_trace_pc
3836 ; CHECK_PC: call void @__sanitizer_cov_trace_pc
39 ; CHECK_PC: call void @__sanitizer_cov_trace_pc
4037 ; CHECK_PC-NOT: call void @__sanitizer_cov_trace_pc
4138 ; CHECK_PC: ret void
4239 ; CHECK_PC-NOT: call void @__sanitizer_cov_module_init