Skip to content

Commit a82e084

Browse files
authored
Merge pull request #23527 from gottesmm/pr-4bddece82480c90aeb5f471211b50debf404143a
[ownership] Enable ownership verification on inline_begin_apply and f…
2 parents a87988b + 2a9fbe1 commit a82e084

File tree

1 file changed

+5
-7
lines changed

1 file changed

+5
-7
lines changed

test/SILOptimizer/inline_begin_apply.sil

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
// RUN: %target-sil-opt -inline -verify %s | %FileCheck %s
2-
// RUN: %target-sil-opt -mandatory-inlining -verify %s | %FileCheck %s
1+
// RUN: %target-sil-opt -verify-sil-ownership -inline -verify %s | %FileCheck %s
2+
// RUN: %target-sil-opt -verify-sil-ownership -mandatory-inlining -verify %s | %FileCheck %s
33

44
import Builtin
55
import Swift
@@ -185,23 +185,22 @@ cont:
185185
// CHECK-NEXT: %2 = function_ref @marker
186186
// CHECK-NEXT: %3 = integer_literal $Builtin.Int32, 1000
187187
// CHECK-NEXT: %4 = apply %2(%3)
188+
// CHECK-NEXT: destroy_value %1
188189
// CHECK-NEXT: cond_br %0, bb1, bb2
189190
// CHECK: bb1:
190191
// CHECK-NEXT: [[T0:%.*]] = integer_literal $Builtin.Int32, 2000
191192
// CHECK-NEXT: apply %2([[T0]])
192-
// CHECK-NEXT: destroy_value %1 : $SomeClass
193193
// CHECK-NEXT: tuple ()
194194
// CHECK-NEXT: br bb3
195195
// CHECK: bb2:
196196
// CHECK-NEXT: [[T1:%.*]] = integer_literal $Builtin.Int32, 3000
197197
// CHECK-NEXT: apply %2([[T1]])
198-
// CHECK-NEXT: destroy_value %1 : $SomeClass
199198
// CHECK-NEXT: br bb3
200199
// CHECK: bb3:
201200
// CHECK-NEXT: [[T0:%.*]] = tuple ()
202201
// CHECK-NEXT: return [[T0]] : $()
203202

204-
sil [transparent] [ossa] [ossa] @yield_owned : $@yield_once(@owned SomeClass) -> (@yields @owned SomeClass) {
203+
sil [transparent] [ossa] @yield_owned : $@yield_once(@owned SomeClass) -> (@yields @owned SomeClass) {
205204
entry(%0 : @owned $SomeClass):
206205
%marker = function_ref @marker : $@convention(thin) (Builtin.Int32) -> ()
207206
%1000 = integer_literal $Builtin.Int32, 1000
@@ -211,21 +210,20 @@ entry(%0 : @owned $SomeClass):
211210
resume:
212211
%2000 = integer_literal $Builtin.Int32, 2000
213212
apply %marker(%2000) : $@convention(thin) (Builtin.Int32) -> ()
214-
destroy_value %0: $SomeClass
215213
%ret = tuple ()
216214
return %ret : $()
217215

218216
unwind:
219217
%3000 = integer_literal $Builtin.Int32, 3000
220218
apply %marker(%3000) : $@convention(thin) (Builtin.Int32) -> ()
221-
destroy_value %0: $SomeClass
222219
unwind
223220
}
224221

225222
sil [ossa] @test_simple_call_yield_owned : $(Builtin.Int1, @owned SomeClass) -> () {
226223
entry(%flag : $Builtin.Int1, %c: @owned $SomeClass):
227224
%0 = function_ref @yield_owned : $@convention(thin) @yield_once(@owned SomeClass) -> (@yields @owned SomeClass)
228225
(%value, %token) = begin_apply %0(%c) : $@convention(thin) @yield_once(@owned SomeClass) -> (@yields @owned SomeClass)
226+
destroy_value %value : $SomeClass
229227
cond_br %flag, yes, no
230228

231229
yes:

0 commit comments

Comments
 (0)