@@ -7,23 +7,24 @@ func foo() -> Int {
7
7
8
8
// CHECK-LABEL: sil hidden [ossa] @$s7if_expr3fooSiyF : $@convention(thin) () -> Int
9
9
// CHECK: [[RESULT_STORAGE:%[0-9]+]] = alloc_stack $Int
10
- // CHECK: [[RESULT:%[0-9]+]] = mark_uninitialized [var] [[RESULT_STORAGE]] : $*Int
11
10
// CHECK: cond_br {{%[0-9]+}}, [[TRUEBB:bb[0-9]+]], [[FALSEBB:bb[0-9]+]]
12
11
//
13
12
// CHECK: [[TRUEBB]]:
13
+ // CHECK: [[RESULT:%[0-9]+]] = mark_uninitialized [var] [[RESULT_STORAGE]] : $*Int
14
14
// CHECK: [[ONE_BUILTIN:%[0-9]+]] = integer_literal $Builtin.IntLiteral, 1
15
15
// CHECK: [[ONE:%[0-9]+]] = apply {{%[0-9]+}}([[ONE_BUILTIN]], {{%[0-9]+}}) : $@convention(method) (Builtin.IntLiteral, @thin Int.Type) -> Int
16
16
// CHECK: store [[ONE]] to [trivial] [[RESULT]] : $*Int
17
17
// CHECK: br [[EXITBB:bb[0-9]+]]
18
18
//
19
19
// CHECK: [[FALSEBB]]:
20
+ // CHECK: [[RESULT:%[0-9]+]] = mark_uninitialized [var] [[RESULT_STORAGE]] : $*Int
20
21
// CHECK: [[TWO_BUILTIN:%[0-9]+]] = integer_literal $Builtin.IntLiteral, 2
21
22
// CHECK: [[TWO:%[0-9]+]] = apply {{%[0-9]+}}([[TWO_BUILTIN]], {{%[0-9]+}}) : $@convention(method) (Builtin.IntLiteral, @thin Int.Type) -> Int
22
23
// CHECK: store [[TWO]] to [trivial] [[RESULT]] : $*Int
23
24
// CHECK: br [[EXITBB]]
24
25
//
25
26
// CHECK: [[EXITBB]]:
26
- // CHECK: [[VAL:%[0-9]+]] = load [trivial] [[RESULT ]] : $*Int
27
+ // CHECK: [[VAL:%[0-9]+]] = load [trivial] [[RESULT_STORAGE ]] : $*Int
27
28
// CHECK: dealloc_stack [[RESULT_STORAGE]] : $*Int
28
29
// CHECK: return [[VAL]] : $Int
29
30
@@ -36,22 +37,23 @@ func bar(_ x: C) -> C {
36
37
// CHECK-LABEL: sil hidden [ossa] @$s7if_expr3baryAA1CCADF : $@convention(thin) (@guaranteed C) -> @owned C
37
38
// CHECK: bb0([[CPARAM:%[0-9]+]] : @guaranteed $C):
38
39
// CHECK: [[RESULT_STORAGE:%[0-9]+]] = alloc_stack $C
39
- // CHECK: [[RESULT:%[0-9]+]] = mark_uninitialized [var] [[RESULT_STORAGE]] : $*C
40
40
// CHECK: cond_br {{%[0-9]+}}, [[TRUEBB:bb[0-9]+]], [[FALSEBB:bb[0-9]+]]
41
41
//
42
42
// CHECK: [[TRUEBB]]:
43
+ // CHECK: [[RESULT:%[0-9]+]] = mark_uninitialized [var] [[RESULT_STORAGE]] : $*C
43
44
// CHECK: [[C:%[0-9]+]] = copy_value [[CPARAM]] : $C
44
45
// CHECK: store [[C]] to [init] [[RESULT]] : $*C
45
46
// CHECK: br [[EXITBB:bb[0-9]+]]
46
47
//
47
48
// CHECK: [[FALSEBB]]:
49
+ // CHECK: [[RESULT:%[0-9]+]] = mark_uninitialized [var] [[RESULT_STORAGE]] : $*C
48
50
// CHECK: [[CTOR:%[0-9]+]] = function_ref @$s7if_expr1CCACycfC : $@convention(method) (@thick C.Type) -> @owned C
49
51
// CHECK: [[C:%[0-9]+]] = apply [[CTOR]]({{%[0-9]+}}) : $@convention(method) (@thick C.Type) -> @owned C
50
52
// CHECK: store [[C]] to [init] [[RESULT]] : $*C
51
53
// CHECK: br [[EXITBB]]
52
54
//
53
55
// CHECK: [[EXITBB]]:
54
- // CHECK: [[VAL:%[0-9]+]] = load [take] [[RESULT ]] : $*C
56
+ // CHECK: [[VAL:%[0-9]+]] = load [take] [[RESULT_STORAGE ]] : $*C
55
57
// CHECK: dealloc_stack [[RESULT_STORAGE]] : $*C
56
58
// CHECK: return [[VAL]] : $C
57
59
@@ -69,7 +71,6 @@ func baz() throws -> Int {
69
71
70
72
// CHECK-LABEL: sil hidden [ossa] @$s7if_expr3bazSiyKF : $@convention(thin) () -> (Int, @error any Error)
71
73
// CHECK: [[RESULT_STORAGE:%[0-9]+]] = alloc_stack $Int
72
- // CHECK: [[RESULT:%[0-9]+]] = mark_uninitialized [var] [[RESULT_STORAGE]] : $*Int
73
74
// CHECK: cond_br {{%[0-9]+}}, [[TRUEBB:bb[0-9]+]], [[FALSEBB:bb[0-9]+]]
74
75
//
75
76
// CHECK: [[FALSEBB]]:
@@ -82,7 +83,7 @@ func baz() throws -> Int {
82
83
// CHECK: br [[EXITBB:bb[0-9]+]]
83
84
//
84
85
// CHECK: [[EXITBB]]:
85
- // CHECK: [[VAL:%[0-9]+]] = load [trivial] [[RESULT ]] : $*Int
86
+ // CHECK: [[VAL:%[0-9]+]] = load [trivial] [[RESULT_STORAGE ]] : $*Int
86
87
// CHECK: dealloc_stack [[RESULT_STORAGE]] : $*Int
87
88
// CHECK: return [[VAL]] : $Int
88
89
@@ -92,18 +93,18 @@ func qux() throws -> Int {
92
93
93
94
// CHECK-LABEL: sil hidden [ossa] @$s7if_expr3quxSiyKF : $@convention(thin) () -> (Int, @error any Error)
94
95
// CHECK: [[RESULT_STORAGE:%[0-9]+]] = alloc_stack $Int
95
- // CHECK: [[RESULT:%[0-9]+]] = mark_uninitialized [var] [[RESULT_STORAGE]] : $*Int
96
96
// CHECK: cond_br {{%[0-9]+}}, [[TRUEBB:bb[0-9]+]], [[FALSEBB:bb[0-9]+]]
97
97
//
98
98
// CHECK: [[FALSEBB]]:
99
+ // CHECK: [[RESULT:%[0-9]+]] = mark_uninitialized [var] [[RESULT_STORAGE]] : $*Int
99
100
// CHECK: try_apply {{%[0-9]+}}() : $@convention(thin) () -> (Int, @error any Error), normal [[NORMALBB:bb[0-9]+]], error [[ERRORBB:bb[0-9]+]]
100
101
//
101
102
// CHECK: [[NORMALBB]]([[BAZVAL:%[0-9]+]] : $Int):
102
103
// CHECK: store [[BAZVAL]] to [trivial] [[RESULT]] : $*Int
103
104
// CHECK: br [[EXITBB:bb[0-9]+]]
104
105
//
105
106
// CHECK: [[EXITBB]]:
106
- // CHECK: [[VAL:%[0-9]+]] = load [trivial] [[RESULT ]] : $*Int
107
+ // CHECK: [[VAL:%[0-9]+]] = load [trivial] [[RESULT_STORAGE ]] : $*Int
107
108
// CHECK: dealloc_stack [[RESULT_STORAGE]] : $*Int
108
109
// CHECK: return [[VAL]] : $Int
109
110
//
@@ -141,18 +142,18 @@ func testClosure() throws -> Int {
141
142
142
143
// CHECK-LABEL: sil private [ossa] @$s7if_expr11testClosureSiyKFSiyKcfU_ : $@convention(thin) () -> (Int, @error any Error)
143
144
// CHECK: [[RESULT_STORAGE:%[0-9]+]] = alloc_stack $Int
144
- // CHECK: [[RESULT:%[0-9]+]] = mark_uninitialized [var] [[RESULT_STORAGE]] : $*Int
145
145
// CHECK: cond_br {{%[0-9]+}}, [[TRUEBB:bb[0-9]+]], [[FALSEBB:bb[0-9]+]]
146
146
//
147
147
// CHECK: [[FALSEBB]]:
148
+ // CHECK: [[RESULT:%[0-9]+]] = mark_uninitialized [var] [[RESULT_STORAGE]] : $*Int
148
149
// CHECK: try_apply {{%[0-9]+}}() : $@convention(thin) () -> (Int, @error any Error), normal [[NORMALBB:bb[0-9]+]], error [[ERRORBB:bb[0-9]+]]
149
150
//
150
151
// CHECK: [[NORMALBB]]([[BAZVAL:%[0-9]+]] : $Int):
151
152
// CHECK: store [[BAZVAL]] to [trivial] [[RESULT]] : $*Int
152
153
// CHECK: br [[EXITBB:bb[0-9]+]]
153
154
//
154
155
// CHECK: [[EXITBB]]:
155
- // CHECK: [[VAL:%[0-9]+]] = load [trivial] [[RESULT ]] : $*Int
156
+ // CHECK: [[VAL:%[0-9]+]] = load [trivial] [[RESULT_STORAGE ]] : $*Int
156
157
// CHECK: dealloc_stack [[RESULT_STORAGE]] : $*Int
157
158
// CHECK: return [[VAL]] : $Int
158
159
//
@@ -174,7 +175,6 @@ func testNested() throws -> Int {
174
175
175
176
// CHECK-LABEL: sil hidden [ossa] @$s7if_expr10testNestedSiyKF : $@convention(thin) () -> (Int, @error any Error)
176
177
// CHECK: [[RESULT_STORAGE:%[0-9]+]] = alloc_stack $Int
177
- // CHECK: [[RESULT:%[0-9]+]] = mark_uninitialized [var] [[RESULT_STORAGE]] : $*Int
178
178
// CHECK: cond_br {{%[0-9]+}}, [[TRUEBB:bb[0-9]+]], [[FALSEBB:bb[0-9]+]]
179
179
//
180
180
// CHECK: [[FALSEBB]]:
@@ -187,7 +187,7 @@ func testNested() throws -> Int {
187
187
// CHECK: br [[EXITBB:bb[0-9]+]]
188
188
//
189
189
// CHECK: [[EXITBB]]:
190
- // CHECK: [[VAL:%[0-9]+]] = load [trivial] [[RESULT ]] : $*Int
190
+ // CHECK: [[VAL:%[0-9]+]] = load [trivial] [[RESULT_STORAGE ]] : $*Int
191
191
// CHECK: dealloc_stack [[RESULT_STORAGE]] : $*Int
192
192
// CHECK: return [[VAL]] : $Int
193
193
0 commit comments