comparison clang/test/CoverageMapping/branch-templates.cpp @ 221:79ff65ed7e25

LLVM12 Original
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Tue, 15 Jun 2021 19:15:29 +0900
parents
children
comparison
equal deleted inserted replaced
220:42394fc6a535 221:79ff65ed7e25
1 // Test that branch regions are generated for conditions in function template
2 // instantiations.
3
4 // RUN: %clang_cc1 -triple %itanium_abi_triple -std=c++11 -fprofile-instrument=clang -fcoverage-mapping -dump-coverage-mapping -emit-llvm-only -main-file-name branch-templates.cpp %s | FileCheck %s
5
6 template<typename T>
7 void unused(T x) {
8 return;
9 }
10
11 template<typename T>
12 int func(T x) {
13 if(x)
14 return 0;
15 else
16 return 1;
17 int j = 1;
18 }
19
20 int main() {
21 func<int>(0);
22 func<bool>(true);
23 func<float>(0.0);
24 return 0;
25 }
26
27 // CHECK-LABEL: _Z4funcIiEiT_:
28 // CHECK: Branch,File 0, [[@LINE-15]]:6 -> [[@LINE-15]]:7 = #1, (#0 - #1)
29 // CHECK-LABEL: _Z4funcIbEiT_:
30 // CHECK: Branch,File 0, [[@LINE-17]]:6 -> [[@LINE-17]]:7 = #1, (#0 - #1)
31 // CHECK-LABEL: _Z4funcIfEiT_:
32 // CHECK: Branch,File 0, [[@LINE-19]]:6 -> [[@LINE-19]]:7 = #1, (#0 - #1)