xref: /aosp_15_r20/external/llvm/test/tools/llvm-cov/combine_expansions.cpp (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker // Check that we combine expansion regions.
2*9880d681SAndroid Build Coastguard Worker 
3*9880d681SAndroid Build Coastguard Worker // RUN: llvm-profdata merge %S/Inputs/combine_expansions.proftext -o %t.profdata
4*9880d681SAndroid Build Coastguard Worker // RUN: llvm-cov show %S/Inputs/combine_expansions.covmapping -instr-profile %t.profdata -filename-equivalence %s | FileCheck %s
5*9880d681SAndroid Build Coastguard Worker 
6*9880d681SAndroid Build Coastguard Worker #define SIMPLE_OP \
7*9880d681SAndroid Build Coastguard Worker   ++x
8*9880d681SAndroid Build Coastguard Worker // CHECK:       | [[@LINE-2]]|#define SIMPLE_OP
9*9880d681SAndroid Build Coastguard Worker // CHECK-NEXT: 2| [[@LINE-2]]|  ++x
10*9880d681SAndroid Build Coastguard Worker 
11*9880d681SAndroid Build Coastguard Worker #define DO_SOMETHING \
12*9880d681SAndroid Build Coastguard Worker   {                  \
13*9880d681SAndroid Build Coastguard Worker     int x = 0;       \
14*9880d681SAndroid Build Coastguard Worker     SIMPLE_OP;       \
15*9880d681SAndroid Build Coastguard Worker   }
16*9880d681SAndroid Build Coastguard Worker // CHECK:       | [[@LINE-5]]|#define DO_SOMETHING
17*9880d681SAndroid Build Coastguard Worker // CHECK-NEXT: 2| [[@LINE-5]]|  {
18*9880d681SAndroid Build Coastguard Worker // CHECK-NEXT: 2| [[@LINE-5]]|    int x = 0;
19*9880d681SAndroid Build Coastguard Worker // CHECK-NEXT: 2| [[@LINE-5]]|    SIMPLE_OP;
20*9880d681SAndroid Build Coastguard Worker // CHECK-NEXT: 2| [[@LINE-5]]|  }
21*9880d681SAndroid Build Coastguard Worker 
main()22*9880d681SAndroid Build Coastguard Worker int main() {    // CHECK:      1| [[@LINE]]|int main() {
23*9880d681SAndroid Build Coastguard Worker   DO_SOMETHING; // CHECK-NEXT: 1| [[@LINE]]|  DO_SOMETHING;
24*9880d681SAndroid Build Coastguard Worker   DO_SOMETHING; // CHECK-NEXT: 1| [[@LINE]]|  DO_SOMETHING;
25*9880d681SAndroid Build Coastguard Worker   return 0;     // CHECK-NEXT: 1| [[@LINE]]|  return 0;
26*9880d681SAndroid Build Coastguard Worker }               // CHECK-NEXT: 1| [[@LINE]]|}
27