blob: d42c1bd082d2dbcf5c3aeab0088fd055259de9f0 [file] [log] [blame]
Rong Xu9837ef52016-02-04 18:39:09 +00001// RUN: %clang_cc1 -fprofile-instrument=clang -fcoverage-mapping -dump-coverage-mapping -emit-llvm-only -main-file-name break.c %s | FileCheck %s
Alex Lorenz34ac9b52014-08-19 17:32:30 +00002
Justin Bogner91f2e3c2015-02-19 03:10:30 +00003int main() { // CHECK: File 0, [[@LINE]]:12 -> {{[0-9]+}}:2 = #0
Justin Bogner4da909b2015-02-03 21:35:49 +00004 int cnt = 0; // CHECK-NEXT: File 0, [[@LINE+1]]:9 -> [[@LINE+1]]:18 = #0
Vedant Kumarfa8fa042017-11-29 22:25:14 +00005 while(cnt < 100) { // CHECK: File 0, [[@LINE]]:20 -> [[@LINE+3]]:4 = #1
Alex Lorenz34ac9b52014-08-19 17:32:30 +00006 break;
Justin Bognerbf42cfd2015-02-18 21:24:51 +00007 ++cnt; // CHECK-NEXT: File 0, [[@LINE]]:5 -> [[@LINE+1]]:4 = 0
Justin Bogner4da909b2015-02-03 21:35:49 +00008 } // CHECK-NEXT: File 0, [[@LINE+1]]:9 -> [[@LINE+1]]:18 = #0
Vedant Kumarfa8fa042017-11-29 22:25:14 +00009 while(cnt < 100) { // CHECK: File 0, [[@LINE]]:20 -> [[@LINE+6]]:4 = #2
Alex Lorenz34ac9b52014-08-19 17:32:30 +000010 {
11 break;
Justin Bognerbf42cfd2015-02-18 21:24:51 +000012 ++cnt; // CHECK-NEXT: File 0, [[@LINE]]:7 -> [[@LINE+3]]:4 = 0
Alex Lorenz34ac9b52014-08-19 17:32:30 +000013 }
14 ++cnt;
Justin Bogner4da909b2015-02-03 21:35:49 +000015 } // CHECK-NEXT: File 0, [[@LINE+1]]:9 -> [[@LINE+1]]:18 = ((#0 + #3) - #4)
Vedant Kumarfa8fa042017-11-29 22:25:14 +000016 while(cnt < 100) { // CHECK: File 0, [[@LINE]]:20 -> [[@LINE+7]]:4 = #3
Justin Bogner91f2e3c2015-02-19 03:10:30 +000017 // CHECK-NEXT: File 0, [[@LINE+1]]:8 -> [[@LINE+1]]:16 = #3
Vedant Kumar2e8c8752017-11-09 02:33:38 +000018 if(cnt == 0) { // CHECK: File 0, [[@LINE]]:18 -> [[@LINE+3]]:6 = #4
Alex Lorenz34ac9b52014-08-19 17:32:30 +000019 break;
Justin Bognerbf42cfd2015-02-18 21:24:51 +000020 ++cnt; // CHECK-NEXT: File 0, [[@LINE]]:7 -> [[@LINE+1]]:6 = 0
Alex Lorenz34ac9b52014-08-19 17:32:30 +000021 }
Justin Bognerbf42cfd2015-02-18 21:24:51 +000022 ++cnt; // CHECK-NEXT: File 0, [[@LINE]]:5 -> [[@LINE+1]]:4 = (#3 - #4)
Justin Bogner4da909b2015-02-03 21:35:49 +000023 } // CHECK-NEXT: File 0, [[@LINE+1]]:9 -> [[@LINE+1]]:18 = (#0 + #6)
Vedant Kumarfa8fa042017-11-29 22:25:14 +000024 while(cnt < 100) { // CHECK: File 0, [[@LINE]]:20 -> [[@LINE+8]]:4 = #5
Justin Bogner91f2e3c2015-02-19 03:10:30 +000025 // CHECK-NEXT: File 0, [[@LINE+1]]:8 -> [[@LINE+1]]:16 = #5
Vedant Kumar2e8c8752017-11-09 02:33:38 +000026 if(cnt == 0) { // CHECK: File 0, [[@LINE]]:18 -> [[@LINE+2]]:6 = #6
27 ++cnt; // CHECK-NEXT: Gap,File 0, [[@LINE+1]]:6 -> [[@LINE+1]]:12 = (#5 - #6)
Justin Bogner4da909b2015-02-03 21:35:49 +000028 } else { // CHECK-NEXT: File 0, [[@LINE]]:12 -> [[@LINE+2]]:6 = (#5 - #6)
Alex Lorenz34ac9b52014-08-19 17:32:30 +000029 break;
30 }
31 ++cnt;
32 }
33}