]> git.lizzy.rs Git - rust.git/blob - src/test/mir-opt/no_spurious_drop_after_call.main.ElaborateDrops.before.mir
Fix font color for help button in ayu and dark themes
[rust.git] / src / test / mir-opt / no_spurious_drop_after_call.main.ElaborateDrops.before.mir
1 // MIR for `main` before ElaborateDrops
2
3 fn main() -> () {
4     let mut _0: ();                      // return place in scope 0 at $DIR/no-spurious-drop-after-call.rs:8:11: 8:11
5     let _1: ();                          // in scope 0 at $DIR/no-spurious-drop-after-call.rs:9:5: 9:35
6     let mut _2: std::string::String;     // in scope 0 at $DIR/no-spurious-drop-after-call.rs:9:20: 9:34
7     let mut _3: &str;                    // in scope 0 at $DIR/no-spurious-drop-after-call.rs:9:20: 9:22
8     let _4: &str;                        // in scope 0 at $DIR/no-spurious-drop-after-call.rs:9:20: 9:22
9
10     bb0: {
11         StorageLive(_1);                 // scope 0 at $DIR/no-spurious-drop-after-call.rs:9:5: 9:35
12         StorageLive(_2);                 // scope 0 at $DIR/no-spurious-drop-after-call.rs:9:20: 9:34
13         StorageLive(_3);                 // scope 0 at $DIR/no-spurious-drop-after-call.rs:9:20: 9:22
14         StorageLive(_4);                 // scope 0 at $DIR/no-spurious-drop-after-call.rs:9:20: 9:22
15         _4 = const "";                   // scope 0 at $DIR/no-spurious-drop-after-call.rs:9:20: 9:22
16                                          // ty::Const
17                                          // + ty: &str
18                                          // + val: Value(Slice { data: Allocation { bytes: [], relocations: Relocations(SortedMap { data: [] }), init_mask: InitMask { blocks: [], len: Size { raw: 0 } }, size: Size { raw: 0 }, align: Align { pow2: 0 }, mutability: Not, extra: () }, start: 0, end: 0 })
19                                          // mir::Constant
20                                          // + span: $DIR/no-spurious-drop-after-call.rs:9:20: 9:22
21                                          // + literal: Const { ty: &str, val: Value(Slice { data: Allocation { bytes: [], relocations: Relocations(SortedMap { data: [] }), init_mask: InitMask { blocks: [], len: Size { raw: 0 } }, size: Size { raw: 0 }, align: Align { pow2: 0 }, mutability: Not, extra: () }, start: 0, end: 0 }) }
22         _3 = &(*_4);                     // scope 0 at $DIR/no-spurious-drop-after-call.rs:9:20: 9:22
23         _2 = const <str as std::string::ToString>::to_string(move _3) -> bb2; // scope 0 at $DIR/no-spurious-drop-after-call.rs:9:20: 9:34
24                                          // ty::Const
25                                          // + ty: for<'r> fn(&'r str) -> std::string::String {<str as std::string::ToString>::to_string}
26                                          // + val: Value(Scalar(<ZST>))
27                                          // mir::Constant
28                                          // + span: $DIR/no-spurious-drop-after-call.rs:9:23: 9:32
29                                          // + literal: Const { ty: for<'r> fn(&'r str) -> std::string::String {<str as std::string::ToString>::to_string}, val: Value(Scalar(<ZST>)) }
30     }
31
32     bb1 (cleanup): {
33         resume;                          // scope 0 at $DIR/no-spurious-drop-after-call.rs:8:1: 10:2
34     }
35
36     bb2: {
37         StorageDead(_3);                 // scope 0 at $DIR/no-spurious-drop-after-call.rs:9:33: 9:34
38         _1 = const std::mem::drop::<std::string::String>(move _2) -> [return: bb3, unwind: bb4]; // scope 0 at $DIR/no-spurious-drop-after-call.rs:9:5: 9:35
39                                          // ty::Const
40                                          // + ty: fn(std::string::String) {std::mem::drop::<std::string::String>}
41                                          // + val: Value(Scalar(<ZST>))
42                                          // mir::Constant
43                                          // + span: $DIR/no-spurious-drop-after-call.rs:9:5: 9:19
44                                          // + literal: Const { ty: fn(std::string::String) {std::mem::drop::<std::string::String>}, val: Value(Scalar(<ZST>)) }
45     }
46
47     bb3: {
48         StorageDead(_2);                 // scope 0 at $DIR/no-spurious-drop-after-call.rs:9:34: 9:35
49         StorageDead(_4);                 // scope 0 at $DIR/no-spurious-drop-after-call.rs:9:35: 9:36
50         StorageDead(_1);                 // scope 0 at $DIR/no-spurious-drop-after-call.rs:9:35: 9:36
51         _0 = const ();                   // scope 0 at $DIR/no-spurious-drop-after-call.rs:8:11: 10:2
52                                          // ty::Const
53                                          // + ty: ()
54                                          // + val: Value(Scalar(<ZST>))
55                                          // mir::Constant
56                                          // + span: $DIR/no-spurious-drop-after-call.rs:8:11: 10:2
57                                          // + literal: Const { ty: (), val: Value(Scalar(<ZST>)) }
58         return;                          // scope 0 at $DIR/no-spurious-drop-after-call.rs:10:2: 10:2
59     }
60
61     bb4 (cleanup): {
62         drop(_2) -> bb1;                 // scope 0 at $DIR/no-spurious-drop-after-call.rs:9:34: 9:35
63     }
64 }