1*eca01b03SLeonard Chan; RUN: opt < %s -passes='module(sancov-module)' -sanitizer-coverage-level=4 -sanitizer-coverage-trace-pc -sanitizer-coverage-prune-blocks=1 -S | FileCheck %s 2a1c53278SGeorge Karpenkov 3a1c53278SGeorge Karpenkovdefine i32 @blah(i32) #0 { 4a1c53278SGeorge Karpenkov %2 = icmp sgt i32 %0, 1 5a1c53278SGeorge Karpenkov br i1 %2, label %branch, label %exit 6a1c53278SGeorge Karpenkov; CHECK: call void @__sanitizer_cov_trace_pc() 7a1c53278SGeorge Karpenkov 8a1c53278SGeorge Karpenkovbranch: 9a1c53278SGeorge Karpenkov br label %pos2 10a1c53278SGeorge Karpenkov; CHECK-LABEL: branch: 11a1c53278SGeorge Karpenkov; CHECK-NOT: call void @__sanitizer_cov_trace_pc() 12a1c53278SGeorge Karpenkov 13a1c53278SGeorge Karpenkovpos2: 14a1c53278SGeorge Karpenkov br label %pos3 15a1c53278SGeorge Karpenkov; CHECK-LABEL: pos2: 16a1c53278SGeorge Karpenkov; CHECK-NOT: call void @__sanitizer_cov_trace_pc() 17a1c53278SGeorge Karpenkov 18a1c53278SGeorge Karpenkovpos3: 19a1c53278SGeorge Karpenkov br label %pos4 20a1c53278SGeorge Karpenkov; CHECK-LABEL: pos3: 21a1c53278SGeorge Karpenkov; CHECK-NOT: call void @__sanitizer_cov_trace_pc() 22a1c53278SGeorge Karpenkov 23a1c53278SGeorge Karpenkovpos4: 24a1c53278SGeorge Karpenkov ret i32 0 25a1c53278SGeorge Karpenkov; CHECK-LABEL: pos4: 26a1c53278SGeorge Karpenkov; CHECK: call void @__sanitizer_cov_trace_pc() 27a1c53278SGeorge Karpenkov 28a1c53278SGeorge Karpenkovexit: 29a1c53278SGeorge Karpenkov ret i32 0 30a1c53278SGeorge Karpenkov; CHECK-LABEL: exit: 31a1c53278SGeorge Karpenkov; CHECK: call void @__sanitizer_cov_trace_pc() 32a1c53278SGeorge Karpenkov 33a1c53278SGeorge Karpenkov} 34