]> git.lizzy.rs Git - rust.git/blob - tests/mir-opt/const_allocation2.main.ConstProp.after.32bit.mir
Rollup merge of #107770 - notriddle:notriddle/br2nl, r=GuillaumeGomez
[rust.git] / tests / mir-opt / const_allocation2.main.ConstProp.after.32bit.mir
1 // MIR for `main` after ConstProp
2
3 fn main() -> () {
4     let mut _0: ();                      // return place in scope 0 at $DIR/const_allocation2.rs:+0:11: +0:11
5     let _1: &[(std::option::Option<i32>, &[&u8])]; // in scope 0 at $DIR/const_allocation2.rs:+1:5: +1:8
6     let mut _2: &&[(std::option::Option<i32>, &[&u8])]; // in scope 0 at $DIR/const_allocation2.rs:+1:5: +1:8
7
8     bb0: {
9         StorageLive(_1);                 // scope 0 at $DIR/const_allocation2.rs:+1:5: +1:8
10         StorageLive(_2);                 // scope 0 at $DIR/const_allocation2.rs:+1:5: +1:8
11         _2 = const {alloc1: &&[(Option<i32>, &[&u8])]}; // scope 0 at $DIR/const_allocation2.rs:+1:5: +1:8
12                                          // mir::Constant
13                                          // + span: $DIR/const_allocation2.rs:6:5: 6:8
14                                          // + literal: Const { ty: &&[(Option<i32>, &[&u8])], val: Value(Scalar(alloc1)) }
15         _1 = (*_2);                      // scope 0 at $DIR/const_allocation2.rs:+1:5: +1:8
16         StorageDead(_2);                 // scope 0 at $DIR/const_allocation2.rs:+1:8: +1:9
17         StorageDead(_1);                 // scope 0 at $DIR/const_allocation2.rs:+1:8: +1:9
18         _0 = const ();                   // scope 0 at $DIR/const_allocation2.rs:+0:11: +2:2
19         return;                          // scope 0 at $DIR/const_allocation2.rs:+2:2: +2:2
20     }
21 }
22
23 alloc1 (static: FOO, size: 8, align: 4) {
24     ╾─alloc22─╼ 03 00 00 00                         │ ╾──╼....
25 }
26
27 alloc22 (size: 48, align: 4) {
28     0x00 │ 00 00 00 00 __ __ __ __ ╾─alloc9──╼ 00 00 00 00 │ ....░░░░╾──╼....
29     0x10 │ 00 00 00 00 __ __ __ __ ╾─alloc14─╼ 02 00 00 00 │ ....░░░░╾──╼....
30     0x20 │ 01 00 00 00 2a 00 00 00 ╾─alloc20─╼ 03 00 00 00 │ ....*...╾──╼....
31 }
32
33 alloc9 (size: 0, align: 4) {}
34
35 alloc14 (size: 8, align: 4) {
36     ╾─alloc12─╼ ╾─alloc13─╼                         │ ╾──╼╾──╼
37 }
38
39 alloc12 (size: 1, align: 1) {
40     05                                              │ .
41 }
42
43 alloc13 (size: 1, align: 1) {
44     06                                              │ .
45 }
46
47 alloc20 (size: 12, align: 4) {
48     ╾─a17+0x3─╼ ╾─alloc18─╼ ╾─a19+0x2─╼             │ ╾──╼╾──╼╾──╼
49 }
50
51 alloc17 (size: 4, align: 1) {
52     2a 45 15 6f                                     │ *E.o
53 }
54
55 alloc18 (size: 1, align: 1) {
56     2a                                              │ *
57 }
58
59 alloc19 (size: 4, align: 1) {
60     2a 45 15 6f                                     │ *E.o
61 }