]> git.lizzy.rs Git - rust.git/blob - src/test/mir-opt/const_prop/bad_op_mod_by_zero/rustc.main.ConstProp.diff
Auto merge of #72696 - jethrogb:jb/llvm-zlib, r=Mark-Simulacrum
[rust.git] / src / test / mir-opt / const_prop / bad_op_mod_by_zero / rustc.main.ConstProp.diff
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/bad_op_mod_by_zero.rs:3:11: 3:11
6       let _1: i32;                         // in scope 0 at $DIR/bad_op_mod_by_zero.rs:4:9: 4:10
7       let mut _3: i32;                     // in scope 0 at $DIR/bad_op_mod_by_zero.rs:5:18: 5:19
8       let mut _4: bool;                    // in scope 0 at $DIR/bad_op_mod_by_zero.rs:5:14: 5:19
9       let mut _5: bool;                    // in scope 0 at $DIR/bad_op_mod_by_zero.rs:5:14: 5:19
10       let mut _6: bool;                    // in scope 0 at $DIR/bad_op_mod_by_zero.rs:5:14: 5:19
11       let mut _7: bool;                    // in scope 0 at $DIR/bad_op_mod_by_zero.rs:5:14: 5:19
12       scope 1 {
13           debug y => _1;                   // in scope 1 at $DIR/bad_op_mod_by_zero.rs:4:9: 4:10
14           let _2: i32;                     // in scope 1 at $DIR/bad_op_mod_by_zero.rs:5:9: 5:11
15           scope 2 {
16               debug _z => _2;              // in scope 2 at $DIR/bad_op_mod_by_zero.rs:5:9: 5:11
17           }
18       }
19   
20       bb0: {
21           StorageLive(_1);                 // scope 0 at $DIR/bad_op_mod_by_zero.rs:4:9: 4:10
22           _1 = const 0i32;                 // scope 0 at $DIR/bad_op_mod_by_zero.rs:4:13: 4:14
23                                            // ty::Const
24                                            // + ty: i32
25                                            // + val: Value(Scalar(0x00000000))
26                                            // mir::Constant
27                                            // + span: $DIR/bad_op_mod_by_zero.rs:4:13: 4:14
28                                            // + literal: Const { ty: i32, val: Value(Scalar(0x00000000)) }
29           StorageLive(_2);                 // scope 1 at $DIR/bad_op_mod_by_zero.rs:5:9: 5:11
30           StorageLive(_3);                 // scope 1 at $DIR/bad_op_mod_by_zero.rs:5:18: 5:19
31 -         _3 = _1;                         // scope 1 at $DIR/bad_op_mod_by_zero.rs:5:18: 5:19
32 -         _4 = Eq(_3, const 0i32);         // scope 1 at $DIR/bad_op_mod_by_zero.rs:5:14: 5:19
33 +         _3 = const 0i32;                 // scope 1 at $DIR/bad_op_mod_by_zero.rs:5:18: 5:19
34                                            // ty::Const
35                                            // + ty: i32
36                                            // + val: Value(Scalar(0x00000000))
37                                            // mir::Constant
38 -                                          // + span: $DIR/bad_op_mod_by_zero.rs:5:14: 5:19
39 +                                          // + span: $DIR/bad_op_mod_by_zero.rs:5:18: 5:19
40                                            // + literal: Const { ty: i32, val: Value(Scalar(0x00000000)) }
41 +         _4 = const true;                 // scope 1 at $DIR/bad_op_mod_by_zero.rs:5:14: 5:19
42 +                                          // ty::Const
43 +                                          // + ty: bool
44 +                                          // + val: Value(Scalar(0x01))
45 +                                          // mir::Constant
46 +                                          // + span: $DIR/bad_op_mod_by_zero.rs:5:14: 5:19
47 +                                          // + literal: Const { ty: bool, val: Value(Scalar(0x01)) }
48           assert(!move _4, "attempt to calculate the remainder with a divisor of zero") -> bb1; // scope 1 at $DIR/bad_op_mod_by_zero.rs:5:14: 5:19
49       }
50   
51       bb1: {
52 -         _5 = Eq(_3, const -1i32);        // scope 1 at $DIR/bad_op_mod_by_zero.rs:5:14: 5:19
53 +         _5 = const false;                // scope 1 at $DIR/bad_op_mod_by_zero.rs:5:14: 5:19
54                                            // ty::Const
55 -                                          // + ty: i32
56 -                                          // + val: Value(Scalar(0xffffffff))
57 +                                          // + ty: bool
58 +                                          // + val: Value(Scalar(0x00))
59                                            // mir::Constant
60                                            // + span: $DIR/bad_op_mod_by_zero.rs:5:14: 5:19
61 -                                          // + literal: Const { ty: i32, val: Value(Scalar(0xffffffff)) }
62 -         _6 = Eq(const 1i32, const i32::MIN); // scope 1 at $DIR/bad_op_mod_by_zero.rs:5:14: 5:19
63 +                                          // + literal: Const { ty: bool, val: Value(Scalar(0x00)) }
64 +         _6 = const false;                // scope 1 at $DIR/bad_op_mod_by_zero.rs:5:14: 5:19
65                                            // ty::Const
66 -                                          // + ty: i32
67 -                                          // + val: Value(Scalar(0x00000001))
68 +                                          // + ty: bool
69 +                                          // + val: Value(Scalar(0x00))
70                                            // mir::Constant
71 -                                          // + span: $DIR/bad_op_mod_by_zero.rs:5:14: 5:15
72 -                                          // + literal: Const { ty: i32, val: Value(Scalar(0x00000001)) }
73 +                                          // + span: $DIR/bad_op_mod_by_zero.rs:5:14: 5:19
74 +                                          // + literal: Const { ty: bool, val: Value(Scalar(0x00)) }
75 +         _7 = const false;                // scope 1 at $DIR/bad_op_mod_by_zero.rs:5:14: 5:19
76                                            // ty::Const
77 -                                          // + ty: i32
78 -                                          // + val: Value(Scalar(0x80000000))
79 +                                          // + ty: bool
80 +                                          // + val: Value(Scalar(0x00))
81                                            // mir::Constant
82                                            // + span: $DIR/bad_op_mod_by_zero.rs:5:14: 5:19
83 -                                          // + literal: Const { ty: i32, val: Value(Scalar(0x80000000)) }
84 -         _7 = BitAnd(move _5, move _6);   // scope 1 at $DIR/bad_op_mod_by_zero.rs:5:14: 5:19
85 -         assert(!move _7, "attempt to calculate the remainder with overflow") -> bb2; // scope 1 at $DIR/bad_op_mod_by_zero.rs:5:14: 5:19
86 +                                          // + literal: Const { ty: bool, val: Value(Scalar(0x00)) }
87 +         assert(!const false, "attempt to calculate the remainder with overflow") -> bb2; // scope 1 at $DIR/bad_op_mod_by_zero.rs:5:14: 5:19
88 +                                          // ty::Const
89 +                                          // + ty: bool
90 +                                          // + val: Value(Scalar(0x00))
91 +                                          // mir::Constant
92 +                                          // + span: $DIR/bad_op_mod_by_zero.rs:5:14: 5:19
93 +                                          // + literal: Const { ty: bool, val: Value(Scalar(0x00)) }
94       }
95   
96       bb2: {
97           _2 = Rem(const 1i32, move _3);   // scope 1 at $DIR/bad_op_mod_by_zero.rs:5:14: 5:19
98                                            // ty::Const
99                                            // + ty: i32
100                                            // + val: Value(Scalar(0x00000001))
101                                            // mir::Constant
102                                            // + span: $DIR/bad_op_mod_by_zero.rs:5:14: 5:15
103                                            // + literal: Const { ty: i32, val: Value(Scalar(0x00000001)) }
104           StorageDead(_3);                 // scope 1 at $DIR/bad_op_mod_by_zero.rs:5:18: 5:19
105           _0 = const ();                   // scope 0 at $DIR/bad_op_mod_by_zero.rs:3:11: 6:2
106                                            // ty::Const
107                                            // + ty: ()
108                                            // + val: Value(Scalar(<ZST>))
109                                            // mir::Constant
110                                            // + span: $DIR/bad_op_mod_by_zero.rs:3:11: 6:2
111                                            // + literal: Const { ty: (), val: Value(Scalar(<ZST>)) }
112           StorageDead(_2);                 // scope 1 at $DIR/bad_op_mod_by_zero.rs:6:1: 6:2
113           StorageDead(_1);                 // scope 0 at $DIR/bad_op_mod_by_zero.rs:6:1: 6:2
114           return;                          // scope 0 at $DIR/bad_op_mod_by_zero.rs:6:2: 6:2
115       }
116   }
117