@@ -19,17 +19,6 @@ struct WithDeinit : ~Copyable {
19
19
deinit
20
20
}
21
21
22
- struct Outer : ~Copyable {
23
- var wd: WithDeinit
24
- }
25
-
26
- enum EnumWithDeinit: ~Copyable {
27
- case A(Int64)
28
- case B
29
-
30
- deinit
31
- }
32
-
33
22
struct TwoEnums {
34
23
var u1: U
35
24
var u2: U
@@ -62,16 +51,6 @@ bb0(%0 : $Builtin.Int8, %1 : $Builtin.NativeObject):
62
51
return %4 : $(Builtin.Int8, Builtin.NativeObject)
63
52
}
64
53
65
- // CHECK-LABEL: sil @dont_remove_struct_with_deinit_field
66
- // CHECK: retain_value %0
67
- // CHECK: } // end sil function 'dont_remove_struct_with_deinit_field'
68
- sil @dont_remove_struct_with_deinit_field : $@convention(thin) (Outer) -> () {
69
- bb0(%0 : $Outer):
70
- retain_value %0 : $Outer
71
- %2 = tuple ()
72
- return %2 : $()
73
- }
74
-
75
54
// CHECK-LABEL: sil @struct_with_two_trivial_enums
76
55
// CHECK-NOT: retain_value
77
56
// CHECK: } // end sil function 'struct_with_two_trivial_enums'
@@ -138,18 +117,6 @@ bb0(%0 : $@thin U.Type, %1 : $C):
138
117
return %6 : $(U, U, U)
139
118
}
140
119
141
- // CHECK-LABEL: sil @dont_replace_payload_of_enum_with_deinit
142
- // CHECK: %1 = enum
143
- // CHECK: retain_value %1
144
- // CHECK: } // end sil function 'dont_replace_payload_of_enum_with_deinit'
145
- sil @dont_replace_payload_of_enum_with_deinit : $@convention(thin) (Int64) -> () {
146
- bb0(%0 : $Int64):
147
- %1 = enum $EnumWithDeinit, #EnumWithDeinit.A!enumelt, %0 : $Int64
148
- retain_value %1 : $EnumWithDeinit
149
- %3 = tuple ()
150
- return %3 : $()
151
- }
152
-
153
120
// CHECK-LABEL: sil @release_then_retain_peephole
154
121
// CHECK: bb0
155
122
// CHECK-NOT: retain_value
0 commit comments