File tree Expand file tree Collapse file tree 2 files changed +24
-25
lines changed Expand file tree Collapse file tree 2 files changed +24
-25
lines changed Original file line number Diff line number Diff line change @@ -23,13 +23,13 @@ pub fn droppy() {
2323// FIXME(eddyb) the `void @` forces a match on the instruction, instead of the
2424// comment, that's `; call core::intrinsics::drop_in_place::<drop::SomeUniqueName>`
2525// for the `v0` mangling, should switch to matching on that once `legacy` is gone.
26+ // CHECK-NOT: call void @{{.*}}drop_in_place{{.*}}SomeUniqueName
27+ // CHECK: invoke void @{{.*}}drop_in_place{{.*}}SomeUniqueName
28+ // CHECK: invoke void @{{.*}}drop_in_place{{.*}}SomeUniqueName
2629// CHECK-NOT: invoke void @{{.*}}drop_in_place{{.*}}SomeUniqueName
2730// CHECK: call void @{{.*}}drop_in_place{{.*}}SomeUniqueName
2831// CHECK: call void @{{.*}}drop_in_place{{.*}}SomeUniqueName
29- // CHECK-NOT: call void @{{.*}}drop_in_place{{.*}}SomeUniqueName
30- // CHECK: invoke void @{{.*}}drop_in_place{{.*}}SomeUniqueName
3132// CHECK: call void @{{.*}}drop_in_place{{.*}}SomeUniqueName
32- // CHECK: invoke void @{{.*}}drop_in_place{{.*}}SomeUniqueName
3333// CHECK: call void @{{.*}}drop_in_place{{.*}}SomeUniqueName
3434// CHECK-NOT: {{(call|invoke) void @.*}}drop_in_place{{.*}}SomeUniqueName
3535// The next line checks for the } that ends the function definition
Original file line number Diff line number Diff line change @@ -54,62 +54,61 @@ fn main() {
5454// bb1: {
5555// ...
5656// StorageLive(_7);
57- // StorageLive(_8);
58- // _8 = move _3;
59- // _7 = const take::<Foo>(move _8) -> [return: bb2, unwind: bb11];
57+ // _7 = move _2;
58+ // _6 = const take::<Foo>(move _7) -> [return: bb2, unwind: bb9];
6059// }
6160// bb2: {
6261// StorageDead(_8);
6362// StorageDead(_7);
6463// StorageLive(_9);
65- // StorageLive(_10);
66- // _10 = move _4;
67- // _9 = const take::<Bar>(move _10) -> [return: bb3, unwind: bb10];
64+ // _9 = move _3;
65+ // _8 = const take::<Bar>(move _9) -> [return: bb3, unwind: bb8];
6866// }
6967// bb3: {
7068// StorageDead(_10);
7169// StorageDead(_9);
7270// ...
7371// StorageDead(_4);
7472// StorageDead(_3);
75- // drop(_1) -> [return: bb4, unwind: bb9];
73+ // StorageDead(_2);
74+ // drop(_1) -> [return: bb4, unwind: bb11];
7675// }
7776// bb4: {
7877// return;
7978// }
8079// bb5: {
8180// ...
8281// StorageDead(_3);
83- // drop(_1 ) -> [return: bb6, unwind: bb8 ];
82+ // drop(_2 ) -> [return: bb6, unwind: bb12 ];
8483// }
8584// bb6: {
86- // StorageDead(_3 );
87- // drop(_1) -> [return: bb7, unwind: bb9 ];
85+ // StorageDead(_2 );
86+ // drop(_1) -> [return: bb7, unwind: bb11 ];
8887// }
8988// bb7: {
9089// generator_drop;
9190// }
9291// bb8 (cleanup): {
93- // StorageDead(_3);
94- // drop(_2) -> bb9;
92+ // StorageDead(_9);
93+ // StorageDead(_8);
94+ // goto -> bb10;
9595// }
9696// bb9 (cleanup): {
97- // resume;
97+ // StorageDead(_7);
98+ // StorageDead(_6);
99+ // goto -> bb10;
98100// }
99101// bb10 (cleanup): {
100- // StorageDead(_10 );
101- // StorageDead(_9 );
102- // goto -> bb12 ;
102+ // StorageDead(_3 );
103+ // StorageDead(_2 );
104+ // drop(_1) -> bb11 ;
103105// }
104106// bb11 (cleanup): {
105- // StorageDead(_8);
106- // StorageDead(_7);
107- // goto -> bb12;
107+ // resume;
108108// }
109109// bb12 (cleanup): {
110- // StorageDead(_4);
111- // StorageDead(_3);
112- // drop(_1) -> bb9;
110+ // StorageDead(_2);
111+ // drop(_1) -> bb11;
113112// }
114113
115114// END rustc.main-{{closure}}.StateTransform.before.mir
You can’t perform that action at this time.
0 commit comments