| // MIR for `main` after ConstProp |
| |
| fn main() -> () { |
| let mut _0: (); |
| let _1: &[(std::option::Option<i32>, &[&str])]; |
| let mut _2: &&[(std::option::Option<i32>, &[&str])]; |
| |
| bb0: { |
| StorageLive(_1); |
| StorageLive(_2); |
| _2 = const {alloc1: &&[(Option<i32>, &[&str])]}; |
| _1 = (*_2); |
| StorageDead(_2); |
| StorageDead(_1); |
| _0 = const (); |
| return; |
| } |
| } |
| |
| alloc1 (static: FOO, size: 16, align: 8) { |
| ╾───────alloc19───────╼ 03 00 00 00 00 00 00 00 │ ╾──────╼........ |
| } |
| |
| alloc19 (size: 72, align: 8) { |
| 0x00 │ 00 00 00 00 __ __ __ __ ╾───────alloc6────────╼ │ ....░░░░╾──────╼ |
| 0x10 │ 00 00 00 00 00 00 00 00 00 00 00 00 __ __ __ __ │ ............░░░░ |
| 0x20 │ ╾───────alloc10───────╼ 02 00 00 00 00 00 00 00 │ ╾──────╼........ |
| 0x30 │ 01 00 00 00 2a 00 00 00 ╾───────alloc15───────╼ │ ....*...╾──────╼ |
| 0x40 │ 03 00 00 00 00 00 00 00 │ ........ |
| } |
| |
| alloc6 (size: 0, align: 8) {} |
| |
| alloc10 (size: 32, align: 8) { |
| 0x00 │ ╾───────alloc9────────╼ 03 00 00 00 00 00 00 00 │ ╾──────╼........ |
| 0x10 │ ╾───────alloc11───────╼ 03 00 00 00 00 00 00 00 │ ╾──────╼........ |
| } |
| |
| alloc9 (size: 3, align: 1) { |
| 66 6f 6f │ foo |
| } |
| |
| alloc11 (size: 3, align: 1) { |
| 62 61 72 │ bar |
| } |
| |
| alloc15 (size: 48, align: 8) { |
| 0x00 │ ╾───────alloc14───────╼ 03 00 00 00 00 00 00 00 │ ╾──────╼........ |
| 0x10 │ ╾───────alloc16───────╼ 03 00 00 00 00 00 00 00 │ ╾──────╼........ |
| 0x20 │ ╾───────alloc17───────╼ 04 00 00 00 00 00 00 00 │ ╾──────╼........ |
| } |
| |
| alloc14 (size: 3, align: 1) { |
| 6d 65 68 │ meh |
| } |
| |
| alloc16 (size: 3, align: 1) { |
| 6d 6f 70 │ mop |
| } |
| |
| alloc17 (size: 4, align: 1) { |
| 6d c3 b6 70 │ m..p |
| } |