xref: /llvm-project/llvm/test/tools/llvm-cov/showExpansions.cpp (revision a80d9ce5cfa1d109b895cd4837d0c1bb564775d7)
19edfeac9SSean Eveson // RUN: llvm-cov show %S/Inputs/showExpansions.covmapping -instr-profile %S/Inputs/showExpansions.profdata -dump -show-expansions -path-equivalence="/Users/bogner/code/llvm/test/tools,%S/.." %s 2>&1 | FileCheck %s
23d7260e7SJustin Bogner 
33d7260e7SJustin Bogner #define DO_SOMETHING_ELSE() \
43d7260e7SJustin Bogner   do {                      \
53d7260e7SJustin Bogner   } while (0)
63d7260e7SJustin Bogner #define ANOTHER_THING() \
73d7260e7SJustin Bogner   do {                  \
83d7260e7SJustin Bogner     if (0) {            \
93d7260e7SJustin Bogner     }                   \
103d7260e7SJustin Bogner   } while (0)
113d7260e7SJustin Bogner 
123d7260e7SJustin Bogner #define DO_SOMETHING(x)    \
133d7260e7SJustin Bogner   do {                     \
143d7260e7SJustin Bogner     if (x)                 \
153d7260e7SJustin Bogner       DO_SOMETHING_ELSE(); \
163d7260e7SJustin Bogner     else                   \
173d7260e7SJustin Bogner       ANOTHER_THING();     \
183d7260e7SJustin Bogner   } while (0)
19a829fde1SJustin Bogner // CHECK-DAG: Expansion at line [[@LINE-4]], 7 -> 24
20a829fde1SJustin Bogner // CHECK-DAG: Expansion at line [[@LINE-3]], 7 -> 20
213d7260e7SJustin Bogner 
main(int argc,const char * argv[])223d7260e7SJustin Bogner int main(int argc, const char *argv[]) {
233d7260e7SJustin Bogner   for (int i = 0; i < 100; ++i)
24a829fde1SJustin Bogner     DO_SOMETHING(i); // CHECK-DAG: Expansion at line [[@LINE]], 5 -> 17
253d7260e7SJustin Bogner   return 0;
263d7260e7SJustin Bogner }
277101d73cSVedant Kumar // RUN: llvm-cov export %S/Inputs/showExpansions.covmapping -instr-profile %S/Inputs/showExpansions.profdata 2>&1 | FileCheck %S/Inputs/showExpansions.json
28*a80d9ce5SMax Moroz 
29*a80d9ce5SMax Moroz // RUN: llvm-cov export %S/Inputs/showExpansions.covmapping -instr-profile %S/Inputs/showExpansions.profdata -skip-expansions 2>&1 | FileCheck %s -check-prefix=SKIP-EXPANSIONS
30*a80d9ce5SMax Moroz // SKIP-EXPANSIONS-NOT: "expansions"
31