1673dc3d4SNico Weber // RUN: rm -rf %t-dir
2673dc3d4SNico Weber // RUN: mkdir %t-dir && cd %t-dir
3*a7141480SJinsong Ji // RUN: %clangxx_asan -fsanitize-coverage=func,trace-pc-guard %s -o test.exe
4673dc3d4SNico Weber // RUN: %env_asan_opts=coverage=1 %run ./test.exe
5673dc3d4SNico Weber //
6673dc3d4SNico Weber // RUN: %sancov print *.sancov | FileCheck %s
7673dc3d4SNico Weber #include <stdio.h>
8673dc3d4SNico Weber 
foo()9673dc3d4SNico Weber void foo() { fputs("FOO", stderr); }
bar()10673dc3d4SNico Weber void bar() { fputs("BAR", stderr); }
11673dc3d4SNico Weber 
main(int argc,char ** argv)12673dc3d4SNico Weber int main(int argc, char **argv) {
13673dc3d4SNico Weber   if (argc == 2) {
14673dc3d4SNico Weber     foo();
15673dc3d4SNico Weber     bar();
16673dc3d4SNico Weber   } else {
17673dc3d4SNico Weber     bar();
18673dc3d4SNico Weber     foo();
19673dc3d4SNico Weber   }
20673dc3d4SNico Weber }
21673dc3d4SNico Weber 
22673dc3d4SNico Weber // CHECK: 0x{{[0-9a-f]*}}
23673dc3d4SNico Weber // CHECK: 0x{{[0-9a-f]*}}
24673dc3d4SNico Weber // CHECK: 0x{{[0-9a-f]*}}
25673dc3d4SNico Weber // CHECK-NOT: 0x{{[0-9a-f]*}}
26