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() {
23
23
// FIXME(eddyb) the `void @` forces a match on the instruction, instead of the
24
24
// comment, that's `; call core::intrinsics::drop_in_place::<drop::SomeUniqueName>`
25
25
// 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
26
29
// CHECK-NOT: invoke void @{{.*}}drop_in_place{{.*}}SomeUniqueName
27
30
// CHECK: call void @{{.*}}drop_in_place{{.*}}SomeUniqueName
28
31
// CHECK: call void @{{.*}}drop_in_place{{.*}}SomeUniqueName
29
- // CHECK-NOT: call void @{{.*}}drop_in_place{{.*}}SomeUniqueName
30
- // CHECK: invoke void @{{.*}}drop_in_place{{.*}}SomeUniqueName
31
32
// CHECK: call void @{{.*}}drop_in_place{{.*}}SomeUniqueName
32
- // CHECK: invoke void @{{.*}}drop_in_place{{.*}}SomeUniqueName
33
33
// CHECK: call void @{{.*}}drop_in_place{{.*}}SomeUniqueName
34
34
// CHECK-NOT: {{(call|invoke) void @.*}}drop_in_place{{.*}}SomeUniqueName
35
35
// 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() {
54
54
// bb1: {
55
55
// ...
56
56
// 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];
60
59
// }
61
60
// bb2: {
62
61
// StorageDead(_8);
63
62
// StorageDead(_7);
64
63
// 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];
68
66
// }
69
67
// bb3: {
70
68
// StorageDead(_10);
71
69
// StorageDead(_9);
72
70
// ...
73
71
// StorageDead(_4);
74
72
// StorageDead(_3);
75
- // drop(_1) -> [return: bb4, unwind: bb9];
73
+ // StorageDead(_2);
74
+ // drop(_1) -> [return: bb4, unwind: bb11];
76
75
// }
77
76
// bb4: {
78
77
// return;
79
78
// }
80
79
// bb5: {
81
80
// ...
82
81
// StorageDead(_3);
83
- // drop(_1 ) -> [return: bb6, unwind: bb8 ];
82
+ // drop(_2 ) -> [return: bb6, unwind: bb12 ];
84
83
// }
85
84
// bb6: {
86
- // StorageDead(_3 );
87
- // drop(_1) -> [return: bb7, unwind: bb9 ];
85
+ // StorageDead(_2 );
86
+ // drop(_1) -> [return: bb7, unwind: bb11 ];
88
87
// }
89
88
// bb7: {
90
89
// generator_drop;
91
90
// }
92
91
// bb8 (cleanup): {
93
- // StorageDead(_3);
94
- // drop(_2) -> bb9;
92
+ // StorageDead(_9);
93
+ // StorageDead(_8);
94
+ // goto -> bb10;
95
95
// }
96
96
// bb9 (cleanup): {
97
- // resume;
97
+ // StorageDead(_7);
98
+ // StorageDead(_6);
99
+ // goto -> bb10;
98
100
// }
99
101
// bb10 (cleanup): {
100
- // StorageDead(_10 );
101
- // StorageDead(_9 );
102
- // goto -> bb12 ;
102
+ // StorageDead(_3 );
103
+ // StorageDead(_2 );
104
+ // drop(_1) -> bb11 ;
103
105
// }
104
106
// bb11 (cleanup): {
105
- // StorageDead(_8);
106
- // StorageDead(_7);
107
- // goto -> bb12;
107
+ // resume;
108
108
// }
109
109
// bb12 (cleanup): {
110
- // StorageDead(_4);
111
- // StorageDead(_3);
112
- // drop(_1) -> bb9;
110
+ // StorageDead(_2);
111
+ // drop(_1) -> bb11;
113
112
// }
114
113
115
114
// END rustc.main-{{closure}}.StateTransform.before.mir
You can’t perform that action at this time.
0 commit comments