]> git.proxmox.com Git - rustc.git/blame - src/test/mir-opt/no_drop_for_inactive_variant.unwrap.SimplifyCfg-elaborate-drops.after.mir
New upstream version 1.61.0+dfsg1
[rustc.git] / src / test / mir-opt / no_drop_for_inactive_variant.unwrap.SimplifyCfg-elaborate-drops.after.mir
CommitLineData
ba9703b0
XL
1// MIR for `unwrap` after SimplifyCfg-elaborate-drops
2
1b1a35ee 3fn unwrap(_1: Option<T>) -> T {
ba9703b0
XL
4 debug opt => _1; // in scope 0 at $DIR/no-drop-for-inactive-variant.rs:7:14: 7:17
5 let mut _0: T; // return place in scope 0 at $DIR/no-drop-for-inactive-variant.rs:7:33: 7:34
6 let mut _2: isize; // in scope 0 at $DIR/no-drop-for-inactive-variant.rs:9:9: 9:16
7 let _3: T; // in scope 0 at $DIR/no-drop-for-inactive-variant.rs:9:14: 9:15
5869c6ff 8 let mut _4: !; // in scope 0 at $SRC_DIR/std/src/panic.rs:LL:COL
ba9703b0
XL
9 let mut _5: isize; // in scope 0 at $DIR/no-drop-for-inactive-variant.rs:12:1: 12:2
10 let mut _6: isize; // in scope 0 at $DIR/no-drop-for-inactive-variant.rs:12:1: 12:2
f035d41b 11 let mut _7: isize; // in scope 0 at $DIR/no-drop-for-inactive-variant.rs:12:1: 12:2
ba9703b0
XL
12 scope 1 {
13 debug x => _3; // in scope 1 at $DIR/no-drop-for-inactive-variant.rs:9:14: 9:15
14 }
15
16 bb0: {
94222f64
XL
17 _2 = discriminant(_1); // scope 0 at $DIR/no-drop-for-inactive-variant.rs:8:11: 8:14
18 switchInt(move _2) -> [0_isize: bb1, 1_isize: bb3, otherwise: bb2]; // scope 0 at $DIR/no-drop-for-inactive-variant.rs:8:5: 8:14
ba9703b0
XL
19 }
20
f035d41b 21 bb1: {
5869c6ff
XL
22 StorageLive(_4); // scope 0 at $SRC_DIR/std/src/panic.rs:LL:COL
23 begin_panic::<&str>(const "explicit panic") -> bb4; // scope 0 at $SRC_DIR/std/src/panic.rs:LL:COL
ba9703b0 24 // mir::Constant
5869c6ff 25 // + span: $SRC_DIR/std/src/panic.rs:LL:COL
ee023bcb 26 // + literal: Const { ty: fn(&str) -> ! {begin_panic::<&str>}, val: Value(Scalar(<ZST>)) }
ba9703b0 27 // mir::Constant
5869c6ff 28 // + span: $SRC_DIR/std/src/panic.rs:LL:COL
17df50a5 29 // + literal: Const { ty: &str, val: Value(Slice { data: Allocation { bytes: [101, 120, 112, 108, 105, 99, 105, 116, 32, 112, 97, 110, 105, 99], relocations: Relocations(SortedMap { data: [] }), init_mask: InitMask { blocks: [16383], len: Size { raw: 14 } }, align: Align { pow2: 0 }, mutability: Not, extra: () }, start: 0, end: 14 }) }
ba9703b0
XL
30 }
31
f035d41b 32 bb2: {
f9f354fc 33 unreachable; // scope 0 at $DIR/no-drop-for-inactive-variant.rs:8:11: 8:14
ba9703b0
XL
34 }
35
f035d41b 36 bb3: {
f9f354fc
XL
37 StorageLive(_3); // scope 0 at $DIR/no-drop-for-inactive-variant.rs:9:14: 9:15
38 _3 = move ((_1 as Some).0: T); // scope 0 at $DIR/no-drop-for-inactive-variant.rs:9:14: 9:15
39 _0 = move _3; // scope 1 at $DIR/no-drop-for-inactive-variant.rs:9:20: 9:21
f035d41b 40 StorageDead(_3); // scope 0 at $DIR/no-drop-for-inactive-variant.rs:9:20: 9:21
29967ef6 41 _5 = discriminant(_1); // scope 0 at $DIR/no-drop-for-inactive-variant.rs:12:1: 12:2
f9f354fc 42 return; // scope 0 at $DIR/no-drop-for-inactive-variant.rs:12:2: 12:2
ba9703b0
XL
43 }
44
f035d41b 45 bb4 (cleanup): {
29967ef6 46 _7 = discriminant(_1); // scope 0 at $DIR/no-drop-for-inactive-variant.rs:12:1: 12:2
f035d41b 47 resume; // scope 0 at $DIR/no-drop-for-inactive-variant.rs:7:1: 12:2
ba9703b0
XL
48 }
49}