blob: a6edeb7c8241489a3c6850ddfe0c038116da2c3f [file] [log] [blame]
Alex Lorenz34ac9b52014-08-19 17:32:30 +00001// RUN: %clang_cc1 -fprofile-instr-generate -fcoverage-mapping -dump-coverage-mapping -emit-llvm-only -main-file-name preprocessor.c %s | FileCheck %s
2
3 // CHECK: func
4void func() { // CHECK: File 0, [[@LINE]]:13 -> [[@LINE+5]]:2 = #0 (HasCodeBefore = 0)
5 int i = 0;
6#ifdef MACRO // CHECK-NEXT: Skipped,File 0, [[@LINE]]:2 -> [[@LINE+2]]:2 = 0 (HasCodeBefore = 0)
7 int x = i;
8#endif
9}
10
11#if 0
12 int g = 0;
13
14 void bar() { }
15#endif
16
17 // CHECK: main
18int main() { // CHECK-NEXT: File 0, [[@LINE]]:12 -> [[@LINE+19]]:2 = #0 (HasCodeBefore = 0)
19 int i = 0;
20#if 0 // CHECK-NEXT: Skipped,File 0, [[@LINE]]:2 -> [[@LINE+4]]:2 = 0 (HasCodeBefore = 0)
21 if(i == 0) {
22 i = 1;
23 }
24#endif
25
26#if 1
27 if(i == 0) { // CHECK-NEXT: File 0, [[@LINE]]:14 -> [[@LINE+2]]:4 = #1 (HasCodeBefore = 0)
28 i = 1;
29 }
30#else // CHECK-NEXT: Skipped,File 0, [[@LINE]]:2 -> [[@LINE+5]]:2 = 0 (HasCodeBefore = 0)
31 if(i == 1) {
32 i = 0;
33 }
34}
35#endif
36 return 0;
37}