]> git.lizzy.rs Git - rust.git/blob - src/test/mir-opt/const_prop/array_index.main.ConstProp.diff.64bit
Auto merge of #75621 - TimDiekmann:no-fast-realloc, r=Amanieu
[rust.git] / src / test / mir-opt / const_prop / array_index.main.ConstProp.diff.64bit
1 - // MIR for `main` before ConstProp
2 + // MIR for `main` after ConstProp
3   
4   fn main() -> () {
5       let mut _0: ();                      // return place in scope 0 at $DIR/array_index.rs:4:11: 4:11
6       let _1: u32;                         // in scope 0 at $DIR/array_index.rs:5:9: 5:10
7       let mut _2: [u32; 4];                // in scope 0 at $DIR/array_index.rs:5:18: 5:30
8       let _3: usize;                       // in scope 0 at $DIR/array_index.rs:5:31: 5:32
9       let mut _4: usize;                   // in scope 0 at $DIR/array_index.rs:5:18: 5:33
10       let mut _5: bool;                    // in scope 0 at $DIR/array_index.rs:5:18: 5:33
11       scope 1 {
12           debug x => _1;                   // in scope 1 at $DIR/array_index.rs:5:9: 5:10
13       }
14   
15       bb0: {
16           StorageLive(_1);                 // scope 0 at $DIR/array_index.rs:5:9: 5:10
17           StorageLive(_2);                 // scope 0 at $DIR/array_index.rs:5:18: 5:30
18           _2 = [const 0_u32, const 1_u32, const 2_u32, const 3_u32]; // scope 0 at $DIR/array_index.rs:5:18: 5:30
19                                            // ty::Const
20                                            // + ty: u32
21                                            // + val: Value(Scalar(0x00000000))
22                                            // mir::Constant
23                                            // + span: $DIR/array_index.rs:5:19: 5:20
24                                            // + literal: Const { ty: u32, val: Value(Scalar(0x00000000)) }
25                                            // ty::Const
26                                            // + ty: u32
27                                            // + val: Value(Scalar(0x00000001))
28                                            // mir::Constant
29                                            // + span: $DIR/array_index.rs:5:22: 5:23
30                                            // + literal: Const { ty: u32, val: Value(Scalar(0x00000001)) }
31                                            // ty::Const
32                                            // + ty: u32
33                                            // + val: Value(Scalar(0x00000002))
34                                            // mir::Constant
35                                            // + span: $DIR/array_index.rs:5:25: 5:26
36                                            // + literal: Const { ty: u32, val: Value(Scalar(0x00000002)) }
37                                            // ty::Const
38                                            // + ty: u32
39                                            // + val: Value(Scalar(0x00000003))
40                                            // mir::Constant
41                                            // + span: $DIR/array_index.rs:5:28: 5:29
42                                            // + literal: Const { ty: u32, val: Value(Scalar(0x00000003)) }
43           StorageLive(_3);                 // scope 0 at $DIR/array_index.rs:5:31: 5:32
44           _3 = const 2_usize;              // scope 0 at $DIR/array_index.rs:5:31: 5:32
45                                            // ty::Const
46                                            // + ty: usize
47                                            // + val: Value(Scalar(0x0000000000000002))
48                                            // mir::Constant
49                                            // + span: $DIR/array_index.rs:5:31: 5:32
50                                            // + literal: Const { ty: usize, val: Value(Scalar(0x0000000000000002)) }
51           _4 = const 4_usize;              // scope 0 at $DIR/array_index.rs:5:18: 5:33
52                                            // ty::Const
53                                            // + ty: usize
54                                            // + val: Value(Scalar(0x0000000000000004))
55                                            // mir::Constant
56                                            // + span: $DIR/array_index.rs:5:18: 5:33
57                                            // + literal: Const { ty: usize, val: Value(Scalar(0x0000000000000004)) }
58 -         _5 = Lt(_3, _4);                 // scope 0 at $DIR/array_index.rs:5:18: 5:33
59 -         assert(move _5, "index out of bounds: the len is {} but the index is {}", move _4, _3) -> bb1; // scope 0 at $DIR/array_index.rs:5:18: 5:33
60 +         _5 = const true;                 // scope 0 at $DIR/array_index.rs:5:18: 5:33
61 +                                          // ty::Const
62 +                                          // + ty: bool
63 +                                          // + val: Value(Scalar(0x01))
64 +                                          // mir::Constant
65 +                                          // + span: $DIR/array_index.rs:5:18: 5:33
66 +                                          // + literal: Const { ty: bool, val: Value(Scalar(0x01)) }
67 +         assert(const true, "index out of bounds: the len is {} but the index is {}", const 4_usize, const 2_usize) -> bb1; // scope 0 at $DIR/array_index.rs:5:18: 5:33
68 +                                          // ty::Const
69 +                                          // + ty: bool
70 +                                          // + val: Value(Scalar(0x01))
71 +                                          // mir::Constant
72 +                                          // + span: $DIR/array_index.rs:5:18: 5:33
73 +                                          // + literal: Const { ty: bool, val: Value(Scalar(0x01)) }
74 +                                          // ty::Const
75 +                                          // + ty: usize
76 +                                          // + val: Value(Scalar(0x0000000000000004))
77 +                                          // mir::Constant
78 +                                          // + span: $DIR/array_index.rs:5:18: 5:33
79 +                                          // + literal: Const { ty: usize, val: Value(Scalar(0x0000000000000004)) }
80 +                                          // ty::Const
81 +                                          // + ty: usize
82 +                                          // + val: Value(Scalar(0x0000000000000002))
83 +                                          // mir::Constant
84 +                                          // + span: $DIR/array_index.rs:5:18: 5:33
85 +                                          // + literal: Const { ty: usize, val: Value(Scalar(0x0000000000000002)) }
86       }
87   
88       bb1: {
89 -         _1 = _2[_3];                     // scope 0 at $DIR/array_index.rs:5:18: 5:33
90 +         _1 = const 2_u32;                // scope 0 at $DIR/array_index.rs:5:18: 5:33
91 +                                          // ty::Const
92 +                                          // + ty: u32
93 +                                          // + val: Value(Scalar(0x00000002))
94 +                                          // mir::Constant
95 +                                          // + span: $DIR/array_index.rs:5:18: 5:33
96 +                                          // + literal: Const { ty: u32, val: Value(Scalar(0x00000002)) }
97           StorageDead(_3);                 // scope 0 at $DIR/array_index.rs:5:33: 5:34
98           StorageDead(_2);                 // scope 0 at $DIR/array_index.rs:5:33: 5:34
99           _0 = const ();                   // scope 0 at $DIR/array_index.rs:4:11: 6:2
100                                            // ty::Const
101                                            // + ty: ()
102                                            // + val: Value(Scalar(<ZST>))
103                                            // mir::Constant
104                                            // + span: $DIR/array_index.rs:4:11: 6:2
105                                            // + literal: Const { ty: (), val: Value(Scalar(<ZST>)) }
106           StorageDead(_1);                 // scope 0 at $DIR/array_index.rs:6:1: 6:2
107           return;                          // scope 0 at $DIR/array_index.rs:6:2: 6:2
108       }
109   }
110