@@ -302,52 +302,6 @@ bbExitBlock(%result : @owned $FakeOptional<Klass>):
302302 return %result : $FakeOptional<Klass>
303303}
304304
305- // CHECK-LABEL: sil [ossa] @unowned_to_guaranteed_rauw_2 : $@convention(thin) (@guaranteed Klass) -> (Klass, Klass) {
306- // CHECK: bb0(
307- // CHECK-NEXT: tuple
308- // CHECK-NEXT: return
309- // CHECK: } // end sil function 'unowned_to_guaranteed_rauw_2'
310- sil [ossa] @unowned_to_guaranteed_rauw_2 : $@convention(thin) (@guaranteed Klass) -> (Klass, Klass) {
311- bb0(%0 : @guaranteed $Klass):
312- %1 = unchecked_bitwise_cast %0 : $Klass to $SubKlass
313- %2 = unchecked_bitwise_cast %1 : $SubKlass to $Klass
314- %3 = tuple(%2 : $Klass, %2 : $Klass)
315- return %3 : $(Klass, Klass)
316- }
317-
318- // CHECK-LABEL: sil [ossa] @unowned_to_guaranteed_rauw_2a : $@convention(thin) (@guaranteed Builtin.NativeObject) -> (Klass, Klass) {
319- // CHECK: bb0(
320- // CHECK-NEXT: unchecked_ref_cast
321- // CHECK-NEXT: tuple
322- // CHECK-NEXT: return
323- // CHECK: } // end sil function 'unowned_to_guaranteed_rauw_2a'
324- sil [ossa] @unowned_to_guaranteed_rauw_2a : $@convention(thin) (@guaranteed Builtin.NativeObject) -> (Klass, Klass) {
325- bb0(%0 : @guaranteed $Builtin.NativeObject):
326- %0a = unchecked_ref_cast %0 : $Builtin.NativeObject to $Klass
327- %1 = unchecked_bitwise_cast %0a : $Klass to $SubKlass
328- %2 = unchecked_bitwise_cast %1 : $SubKlass to $Klass
329- %3 = tuple(%2 : $Klass, %2 : $Klass)
330- return %3 : $(Klass, Klass)
331- }
332-
333- // We need the unchecked_ownership_conversion since our base value is
334- // guaranteed, not a function argument, and our user is a function exiting
335- // terminator.
336- //
337- // CHECK-LABEL: sil [ossa] @unowned_to_guaranteed_rauw_2b : $@convention(thin) (@guaranteed Builtin.NativeObject) -> Klass {
338- // CHECK: bb0(
339- // CHECK-NEXT: unchecked_ref_cast
340- // CHECK-NEXT: return
341- // CHECK: } // end sil function 'unowned_to_guaranteed_rauw_2b'
342- sil [ossa] @unowned_to_guaranteed_rauw_2b : $@convention(thin) (@guaranteed Builtin.NativeObject) -> Klass {
343- bb0(%0 : @guaranteed $Builtin.NativeObject):
344- %0a = unchecked_ref_cast %0 : $Builtin.NativeObject to $Klass
345- %1 = unchecked_bitwise_cast %0a : $Klass to $SubKlass
346- %2 = unchecked_bitwise_cast %1 : $SubKlass to $Klass
347- return %2 : $Klass
348- }
349-
350-
351305// CHECK-LABEL: sil [ossa] @unowned_to_guaranteed_rauw_2_loop : $@convention(thin) (@guaranteed Klass) -> @owned FakeOptional<(Klass, Klass)> {
352306// CHECK: bb0([[ARG:%.*]] : @guaranteed $Klass):
353307// CHECK-NOT: unchecked_bitwise_cast
@@ -404,17 +358,6 @@ bbExitBlock(%result : @owned $FakeOptional<(Klass, Klass)>):
404358 return %result : $FakeOptional<(Klass, Klass)>
405359}
406360
407- // CHECK-LABEL: sil [ossa] @unowned_to_guaranteed_rauw_3 : $@convention(thin) (@guaranteed Klass) -> Klass {
408- // CHECK: bb0(
409- // CHECK-NEXT: return
410- // CHECK: } // end sil function 'unowned_to_guaranteed_rauw_3'
411- sil [ossa] @unowned_to_guaranteed_rauw_3 : $@convention(thin) (@guaranteed Klass) -> Klass {
412- bb0(%0 : @guaranteed $Klass):
413- %1 = unchecked_bitwise_cast %0 : $Klass to $SubKlass
414- %2 = unchecked_bitwise_cast %1 : $SubKlass to $Klass
415- return %2 : $Klass
416- }
417-
418361//===---
419362// Guaranteed Tests
420363//
0 commit comments