2
2
// RUN: | FileCheck %s --check-prefix=CHECK-SIL
3
3
// RUN: %target-swift-frontend %s -O -I %t -emit-ir -g -o - | FileCheck %s
4
4
5
+ public var glob : Int = 0
6
+ @inline ( never) public func hold( _ n : Int ) { glob = n }
7
+
5
8
#sourceLocation(file: "abc.swift", line: 100)
6
9
@inline ( __always)
7
- func h( _ k : Int ) -> Int { // 101
8
- return k // 102
10
+ func h( _ k : Int ) -> Int { // 101
11
+ hold ( k) // 102
12
+ return k // 103
9
13
}
10
14
11
15
#sourceLocation(file: "abc.swift", line: 200)
12
16
@inline ( __always)
13
- func g( _ j : Int ) -> Int { // 201
14
- return h ( j) // 202
17
+ func g( _ j : Int ) -> Int { // 201
18
+ hold ( j) // 202
19
+ return h ( j) // 203
15
20
}
16
21
17
22
#sourceLocation(file: "abc.swift", line: 301)
18
23
public func f( _ i : Int ) -> Int { // 301
19
- return g ( i) // 302
24
+ return g ( i) // 302
20
25
}
21
26
22
27
// CHECK-SIL: sil {{.*}}@_TF9inlinedAt1fFSiSi :
23
28
// CHECK-SIL-NOT: return
24
29
// CHECK-SIL: debug_value %0 : $Int, let, name "k", argno 1
25
30
// CHECK-SIL-SAME: line:101:10:in_prologue
26
- // CHECK-SIL-SAME: perf_inlined_at line:202 :10
31
+ // CHECK-SIL-SAME: perf_inlined_at line:203 :10
27
32
// CHECK-SIL-SAME: perf_inlined_at line:302:10
28
33
29
34
// CHECK: define {{.*}}@_TF9inlinedAt1fFSiSi
@@ -40,9 +45,9 @@ public func f(_ i : Int) -> Int { // 301
40
45
// CHECK-SAME: scope: ![[F_SCOPE:.*]])
41
46
// CHECK: ![[F_SCOPE]] = distinct !DILexicalBlock(scope: ![[F]],
42
47
// CHECK-SAME: line: 301, column: 33)
48
+ // CHECK: ![[G_SCOPE:.*]] = distinct !DILexicalBlock(scope: ![[G]],
49
+ // CHECK-SAME: line: 201, column: 26)
43
50
// CHECK: ![[L1]] = !DILocation(line: 101, column: 8, scope: ![[H]],
44
51
// CHECK-SAME: inlinedAt: ![[L2:.*]])
45
- // CHECK: ![[L2]] = !DILocation(line: 202 , column: 13, scope: ![[G_SCOPE:.* ]],
52
+ // CHECK: ![[L2]] = !DILocation(line: 203 , column: 13, scope: ![[G_SCOPE]],
46
53
// CHECK-SAME: inlinedAt: ![[L3]])
47
- // CHECK: ![[G_SCOPE]] = distinct !DILexicalBlock(scope: ![[G]],
48
- // CHECK-SAME: line: 201, column: 26)
0 commit comments