diff options
Diffstat (limited to 'test/CoverageMapping/preprocessor.c')
| -rw-r--r-- | test/CoverageMapping/preprocessor.c | 37 | 
1 files changed, 37 insertions, 0 deletions
diff --git a/test/CoverageMapping/preprocessor.c b/test/CoverageMapping/preprocessor.c new file mode 100644 index 000000000000..a6edeb7c8241 --- /dev/null +++ b/test/CoverageMapping/preprocessor.c @@ -0,0 +1,37 @@ +// RUN: %clang_cc1 -fprofile-instr-generate -fcoverage-mapping -dump-coverage-mapping -emit-llvm-only -main-file-name preprocessor.c %s | FileCheck %s + +                 // CHECK: func +void func() {    // CHECK: File 0, [[@LINE]]:13 -> [[@LINE+5]]:2 = #0 (HasCodeBefore = 0) +  int i = 0; +#ifdef MACRO     // CHECK-NEXT: Skipped,File 0, [[@LINE]]:2 -> [[@LINE+2]]:2 = 0 (HasCodeBefore = 0) +  int x = i; +#endif +} + +#if 0 +  int g = 0; + +  void bar() { } +#endif + +                 // CHECK: main +int main() {     // CHECK-NEXT: File 0, [[@LINE]]:12 -> [[@LINE+19]]:2 = #0 (HasCodeBefore = 0) +  int i = 0; +#if 0            // CHECK-NEXT: Skipped,File 0, [[@LINE]]:2 -> [[@LINE+4]]:2 = 0 (HasCodeBefore = 0) +  if(i == 0) { +    i = 1; +  } +#endif + +#if 1 +  if(i == 0) {   // CHECK-NEXT: File 0, [[@LINE]]:14 -> [[@LINE+2]]:4 = #1 (HasCodeBefore = 0) +    i = 1; +  } +#else            // CHECK-NEXT: Skipped,File 0, [[@LINE]]:2 -> [[@LINE+5]]:2 = 0 (HasCodeBefore = 0) +  if(i == 1) { +    i = 0; +  } +} +#endif +  return 0; +}  | 
