blob: 4e04581b725e82ed85e9256975dfecc7ba13f550 [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 macroparams2.c %s | FileCheck %s
Alex Lorenz34ac9b52014-08-19 17:32:30 +00002
Justin Bognerbf42cfd2015-02-18 21:24:51 +00003#define MACRO(REFS, CALLS) (4 * (CALLS) < (REFS))
Alex Lorenz34ac9b52014-08-19 17:32:30 +00004
5struct S {
6 int i, j;
7};
8
Justin Bognerbf42cfd2015-02-18 21:24:51 +00009// CHECK: File 0, [[@LINE+1]]:12 -> [[@LINE+10]]:2 = #0
10int main() {
11 struct S arr[32] = { 0 };
12 int n = 0;
13 // CHECK-NEXT: Expansion,File 0, [[@LINE+2]]:7 -> [[@LINE+2]]:12 = #0
14 // CHECK-NEXT: File 0, [[@LINE+1]]:34 -> [[@LINE+3]]:4 = #1
15 if (MACRO(arr[n].j, arr[n].i)) {
16 n = 1;
Alex Lorenz34ac9b52014-08-19 17:32:30 +000017 }
18 return n;
Justin Bognerbf42cfd2015-02-18 21:24:51 +000019}
20
21// CHECK: File 1, 3:29 -> 3:51 = #0