Skip to content

Commit f0c984f

Browse files
committed
[sil-combine] Remove a few tests that do not make sense in OSSA and modify/enablea few tests to ensure we never perform certain opts in OSSA.
1 parent dbd66d8 commit f0c984f

File tree

1 file changed

+12
-29
lines changed

1 file changed

+12
-29
lines changed

test/SILOptimizer/sil_combine_ossa.sil

Lines changed: 12 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -970,11 +970,12 @@ bb0(%0 : @guaranteed $C1):
970970
return %0a : $C1
971971
}
972972

973-
// CHECK-LABEL: sil [ossa] @dead_end_cow_mutation
974-
// XHECK: bb0
975-
// XHECK-NEXT: destroy_value %0
976-
// XHECK-NEXT: tuple
977-
// XHECK-NEXT: return
973+
// CHECK-LABEL: sil [ossa] @dead_end_cow_mutation :
974+
// CHECK: bb0(
975+
// CHECK-NEXT: destroy_value %0
976+
// CHECK-NEXT: tuple
977+
// CHECK-NEXT: return
978+
// CHECK: } // end sil function 'dead_end_cow_mutation'
978979
sil [ossa] @dead_end_cow_mutation : $@convention(thin) (@owned C1) -> () {
979980
bb0(%0 : @owned $C1):
980981
%1 = end_cow_mutation %0 : $C1
@@ -1898,25 +1899,6 @@ bb0:
18981899
return %2 : $()
18991900
}
19001901

1901-
// CHECK-LABEL: sil [ossa] @ref_ops_of_enum_is_equivalent_to_ref_ops_of_payload : $@convention(thin) (@owned Builtin.NativeObject) -> @owned FakeOptional<Builtin.NativeObject> {
1902-
// XHECK: bb0
1903-
// XHECK-NEXT: enum
1904-
// XHECK-NEXT: copy_value
1905-
// XHECK-NEXT: br bb1
1906-
// XHECK: bb1
1907-
// XHECK-NEXT: destroy_value
1908-
// XHECK-NEXT: return
1909-
sil [ossa] @ref_ops_of_enum_is_equivalent_to_ref_ops_of_payload : $@convention(thin) (@owned Builtin.NativeObject) -> @owned FakeOptional<Builtin.NativeObject> {
1910-
bb0(%0 : @owned $Builtin.NativeObject):
1911-
%1 = enum $FakeOptional<Builtin.NativeObject>, #FakeOptional.some!enumelt, %0 : $Builtin.NativeObject
1912-
%1a = copy_value %1 : $FakeOptional<Builtin.NativeObject>
1913-
br bb1
1914-
1915-
bb1:
1916-
destroy_value %1 : $FakeOptional<Builtin.NativeObject>
1917-
return %1a : $FakeOptional<Builtin.NativeObject>
1918-
}
1919-
19201902
// CHECK-LABEL: sil [ossa] @dead_unchecked_take_enum_data_addr :
19211903
// CHECK: bb0(%0 : $*AddressOnlyEnum):
19221904
// CHECK-NEXT: destroy_addr %0
@@ -2587,11 +2569,12 @@ bb3:
25872569
return %2 : $()
25882570
}
25892571

2590-
// CHECK-LABEL: sil [ossa] @resilient_enum_case_propagation
2591-
// XHECK: bb0:
2592-
// XHECK: br bb2
2593-
// XHECK: bb1:
2594-
// XHECK: return
2572+
// We do not perform this optimization in SILCombine in OSSA since we would be
2573+
// deleting an edge from the CFG.
2574+
//
2575+
// CHECK-LABEL: sil [ossa] @resilient_enum_case_propagation :
2576+
// CHECK: switch_enum_addr
2577+
// CHECK: } // end sil function 'resilient_enum_case_propagation'
25952578
sil [ossa] @resilient_enum_case_propagation : $@convention(thin) () -> Builtin.Int64 {
25962579
bb0:
25972580
%0 = alloc_stack $FloatingPointRoundingRule

0 commit comments

Comments
 (0)