@@ -15,6 +15,7 @@ sil_stage canonical
15
15
class C {}
16
16
17
17
// CHECK-LABEL: @{{.*}}8MOStructVWV" =
18
+ // CHECK-SAME: @__swift_cannot_copy_noncopyable_type
18
19
// noncopyable, nontrivial deinit, pointer aligned
19
20
// CHECK-64-SAME: <i32 0x81_0007>
20
21
// CHECK-32-SAME: <i32 0x81_0003>
@@ -27,6 +28,7 @@ struct MOStruct {
27
28
}
28
29
29
30
// CHECK-LABEL: @{{.*}}6MOEnumOWV" =
31
+ // CHECK-SAME: @__swift_cannot_copy_noncopyable_type
30
32
// noncopyable, enum, nontrivial deinit, pointer aligned
31
33
// CHECK-64-SAME: <i32 0xA1_0007>
32
34
// CHECK-32-SAME: <i32 0xA1_0003>
@@ -39,6 +41,7 @@ enum MOEnum {
39
41
}
40
42
41
43
// CHECK-LABEL: @{{.*}}13MOComboStructVWV" =
44
+ // CHECK-SAME: @__swift_cannot_copy_noncopyable_type
42
45
// noncopyable, non-inline, nontrivial deinit, pointer aligned
43
46
// CHECK-64-SAME: <i32 0x83_0007>
44
47
// CHECK-32-SAME: <i32 0x83_0003>
@@ -50,6 +53,7 @@ struct MOComboStruct {
50
53
}
51
54
52
55
// CHECK-LABEL: @{{.*}}11MOComboEnumOWV" =
56
+ // CHECK-SAME: @__swift_cannot_copy_noncopyable_type
53
57
// noncopyable, enum, nontrivial deinit, pointer aligned
54
58
// CHECK-64-SAME: <i32 0xA1_0007>
55
59
// CHECK-32-SAME: <i32 0xA1_0003>
@@ -64,6 +68,7 @@ enum MOComboEnum {
64
68
// common layout types.
65
69
66
70
// CHECK-LABEL: @{{.*}}13MOEmptyStructVWV" =
71
+ // CHECK-SAME: @__swift_cannot_copy_noncopyable_type
67
72
// noncopyable, nontrivial deinit, byte aligned
68
73
// CHECK-SAME: <i32 0x81_0000>
69
74
@_moveOnly
@@ -72,6 +77,7 @@ struct MOEmptyStruct {
72
77
}
73
78
74
79
// CHECK-LABEL: @{{.*}}15MOIntLikeStructVWV" =
80
+ // CHECK-SAME: @__swift_cannot_copy_noncopyable_type
75
81
// noncopyable, nontrivial deinit, pointer aligned
76
82
// CHECK-64-SAME: <i32 0x81_0007>
77
83
// CHECK-32-SAME: <i32 0x81_0003>
@@ -83,6 +89,7 @@ struct MOIntLikeStruct {
83
89
}
84
90
85
91
// CHECK-LABEL: @{{.*}}26MOSingleRefcountLikeStructVWV" =
92
+ // CHECK-SAME: @__swift_cannot_copy_noncopyable_type
86
93
// noncopyable, nontrivial deinit, pointer aligned
87
94
// CHECK-64-SAME: <i32 0x81_0007>
88
95
// CHECK-32-SAME: <i32 0x81_0003>
@@ -96,13 +103,15 @@ struct MOSingleRefcountLikeStruct {
96
103
// Even if they don't have deinits, we shouldn't share a vwt.
97
104
98
105
// CHECK-LABEL: @{{.*}}21MOEmptyStructNoDeinitVWV" =
106
+ // CHECK-SAME: @__swift_cannot_copy_noncopyable_type
99
107
// noncopyable, trivial deinit, byte aligned
100
108
// CHECK-SAME: <i32 0x80_0000>
101
109
@_moveOnly
102
110
struct MOEmptyStructNoDeinit {
103
111
}
104
112
105
113
// CHECK-LABEL: @{{.*}}23MOIntLikeStructNoDeinitVWV" =
114
+ // CHECK-SAME: @__swift_cannot_copy_noncopyable_type
106
115
// noncopyable, trivial deinit, pointer aligned
107
116
// CHECK-64-SAME: <i32 0x80_0007>
108
117
// CHECK-32-SAME: <i32 0x80_0003>
@@ -112,6 +121,7 @@ struct MOIntLikeStructNoDeinit {
112
121
}
113
122
114
123
// CHECK-LABEL: @{{.*}}34MOSingleRefcountLikeStructNoDeinitVWV" =
124
+ // CHECK-SAME: @__swift_cannot_copy_noncopyable_type
115
125
// noncopyable, nontrivial deinit, pointer aligned
116
126
// CHECK-64-SAME: <i32 0x81_0007>
117
127
// CHECK-32-SAME: <i32 0x81_0003>
@@ -319,7 +329,7 @@ sil_moveonlydeinit MOGenericDeinit { @destroy_generic }
319
329
// CHECK-LABEL: define {{.*}} @"{{.*}}13MOComboStructVwxx"
320
330
// CHECK: call {{.*}} @destroy_struct(
321
331
// CHECK: call {{.*}} @destroy_enum(
322
- // CHECK: call {{.*}} @swift_retain(
332
+ // CHECK: call {{.*}} @swift_release
323
333
// CHECK-LABEL: define {{.*}} @"{{.*}}11MOComboEnumOwxx"
324
334
// CHECK: call {{.*}} @[[COMBO_ENUM_OUTLINED_DESTROY]]
325
335
0 commit comments