summaryrefslogtreecommitdiffstats
path: root/src/test/mir-opt/issue_76432.test.SimplifyComparisonIntegral.diff
blob: 2368c021eda574375eb7f87e7212576871e48cef (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
- // MIR for `test` before SimplifyComparisonIntegral
+ // MIR for `test` after SimplifyComparisonIntegral
  
  fn test(_1: T) -> () {
      debug x => _1;                       // in scope 0 at $DIR/issue_76432.rs:+0:38: +0:39
      let mut _0: ();                      // return place in scope 0 at $DIR/issue_76432.rs:+0:44: +0:44
      let _2: &[T];                        // in scope 0 at $DIR/issue_76432.rs:+1:9: +1:10
      let mut _3: &[T; 3];                 // in scope 0 at $DIR/issue_76432.rs:+1:19: +1:29
      let _4: &[T; 3];                     // in scope 0 at $DIR/issue_76432.rs:+1:19: +1:29
      let _5: [T; 3];                      // in scope 0 at $DIR/issue_76432.rs:+1:20: +1:29
      let mut _6: T;                       // in scope 0 at $DIR/issue_76432.rs:+1:21: +1:22
      let mut _7: T;                       // in scope 0 at $DIR/issue_76432.rs:+1:24: +1:25
      let mut _8: T;                       // in scope 0 at $DIR/issue_76432.rs:+1:27: +1:28
      let _9: [*const T; 3];               // in scope 0 at $DIR/issue_76432.rs:+2:5: +5:6
      let mut _10: usize;                  // in scope 0 at $DIR/issue_76432.rs:+3:9: +3:33
      let mut _11: usize;                  // in scope 0 at $DIR/issue_76432.rs:+3:9: +3:33
      let mut _12: bool;                   // in scope 0 at $DIR/issue_76432.rs:+3:9: +3:33
      let mut _16: *const T;               // in scope 0 at $DIR/issue_76432.rs:+3:38: +3:52
      let mut _17: *const T;               // in scope 0 at $DIR/issue_76432.rs:+3:38: +3:52
      let mut _18: *const T;               // in scope 0 at $DIR/issue_76432.rs:+3:54: +3:68
      let mut _19: *const T;               // in scope 0 at $DIR/issue_76432.rs:+3:54: +3:68
      let mut _20: *const T;               // in scope 0 at $DIR/issue_76432.rs:+3:70: +3:84
      let mut _21: *const T;               // in scope 0 at $DIR/issue_76432.rs:+3:70: +3:84
      let mut _22: !;                      // in scope 0 at $SRC_DIR/core/src/panic.rs:LL:COL
      let mut _23: &[T; 3];                // in scope 0 at $DIR/issue_76432.rs:+1:19: +1:29
      scope 1 {
          debug v => _2;                   // in scope 1 at $DIR/issue_76432.rs:+1:9: +1:10
          let _13: &T;                     // in scope 1 at $DIR/issue_76432.rs:+3:10: +3:16
          let _14: &T;                     // in scope 1 at $DIR/issue_76432.rs:+3:18: +3:24
          let _15: &T;                     // in scope 1 at $DIR/issue_76432.rs:+3:26: +3:32
          scope 2 {
              debug v1 => _13;             // in scope 2 at $DIR/issue_76432.rs:+3:10: +3:16
              debug v2 => _14;             // in scope 2 at $DIR/issue_76432.rs:+3:18: +3:24
              debug v3 => _15;             // in scope 2 at $DIR/issue_76432.rs:+3:26: +3:32
          }
      }
  
      bb0: {
          StorageLive(_2);                 // scope 0 at $DIR/issue_76432.rs:+1:9: +1:10
          StorageLive(_3);                 // scope 0 at $DIR/issue_76432.rs:+1:19: +1:29
          StorageLive(_4);                 // scope 0 at $DIR/issue_76432.rs:+1:19: +1:29
          StorageLive(_5);                 // scope 0 at $DIR/issue_76432.rs:+1:20: +1:29
          StorageLive(_6);                 // scope 0 at $DIR/issue_76432.rs:+1:21: +1:22
          _6 = _1;                         // scope 0 at $DIR/issue_76432.rs:+1:21: +1:22
          StorageLive(_7);                 // scope 0 at $DIR/issue_76432.rs:+1:24: +1:25
          _7 = _1;                         // scope 0 at $DIR/issue_76432.rs:+1:24: +1:25
          StorageLive(_8);                 // scope 0 at $DIR/issue_76432.rs:+1:27: +1:28
          _8 = _1;                         // scope 0 at $DIR/issue_76432.rs:+1:27: +1:28
          _5 = [move _6, move _7, move _8]; // scope 0 at $DIR/issue_76432.rs:+1:20: +1:29
          StorageDead(_8);                 // scope 0 at $DIR/issue_76432.rs:+1:28: +1:29
          StorageDead(_7);                 // scope 0 at $DIR/issue_76432.rs:+1:28: +1:29
          StorageDead(_6);                 // scope 0 at $DIR/issue_76432.rs:+1:28: +1:29
          _4 = &_5;                        // scope 0 at $DIR/issue_76432.rs:+1:19: +1:29
          _3 = _4;                         // scope 0 at $DIR/issue_76432.rs:+1:19: +1:29
          StorageLive(_23);                // scope 0 at $DIR/issue_76432.rs:+1:19: +1:29
          _23 = _3;                        // scope 0 at $DIR/issue_76432.rs:+1:19: +1:29
          _2 = move _3 as &[T] (Pointer(Unsize)); // scope 0 at $DIR/issue_76432.rs:+1:19: +1:29
          StorageDead(_3);                 // scope 0 at $DIR/issue_76432.rs:+1:28: +1:29
          StorageDead(_4);                 // scope 0 at $DIR/issue_76432.rs:+1:29: +1:30
          StorageLive(_9);                 // scope 1 at $DIR/issue_76432.rs:+2:5: +5:6
          _10 = const 3_usize;             // scope 1 at $DIR/issue_76432.rs:+3:9: +3:33
          StorageDead(_23);                // scope 1 at $DIR/issue_76432.rs:+3:9: +3:33
          _11 = const 3_usize;             // scope 1 at $DIR/issue_76432.rs:+3:9: +3:33
          _12 = const true;                // scope 1 at $DIR/issue_76432.rs:+3:9: +3:33
          goto -> bb2;                     // scope 1 at $DIR/issue_76432.rs:+3:9: +3:33
      }
  
      bb1: {
          StorageLive(_22);                // scope 1 at $SRC_DIR/core/src/panic.rs:LL:COL
          _22 = core::panicking::panic(const "internal error: entered unreachable code"); // scope 1 at $SRC_DIR/core/src/panic.rs:LL:COL
                                           // mir::Constant
                                           // + span: $SRC_DIR/core/src/panic.rs:LL:COL
                                           // + literal: Const { ty: fn(&'static str) -> ! {core::panicking::panic}, val: Value(<ZST>) }
                                           // mir::Constant
                                           // + span: $SRC_DIR/core/src/panic.rs:LL:COL
                                           // + literal: Const { ty: &str, val: Value(Slice(..)) }
      }
  
      bb2: {
          StorageLive(_13);                // scope 1 at $DIR/issue_76432.rs:+3:10: +3:16
          _13 = &(*_2)[0 of 3];            // scope 1 at $DIR/issue_76432.rs:+3:10: +3:16
          StorageLive(_14);                // scope 1 at $DIR/issue_76432.rs:+3:18: +3:24
          _14 = &(*_2)[1 of 3];            // scope 1 at $DIR/issue_76432.rs:+3:18: +3:24
          StorageLive(_15);                // scope 1 at $DIR/issue_76432.rs:+3:26: +3:32
          _15 = &(*_2)[2 of 3];            // scope 1 at $DIR/issue_76432.rs:+3:26: +3:32
          StorageLive(_16);                // scope 2 at $DIR/issue_76432.rs:+3:38: +3:52
          StorageLive(_17);                // scope 2 at $DIR/issue_76432.rs:+3:38: +3:52
          _17 = &raw const (*_13);         // scope 2 at $DIR/issue_76432.rs:+3:38: +3:40
          _16 = _17;                       // scope 2 at $DIR/issue_76432.rs:+3:38: +3:52
          StorageLive(_18);                // scope 2 at $DIR/issue_76432.rs:+3:54: +3:68
          StorageLive(_19);                // scope 2 at $DIR/issue_76432.rs:+3:54: +3:68
          _19 = &raw const (*_14);         // scope 2 at $DIR/issue_76432.rs:+3:54: +3:56
          _18 = _19;                       // scope 2 at $DIR/issue_76432.rs:+3:54: +3:68
          StorageLive(_20);                // scope 2 at $DIR/issue_76432.rs:+3:70: +3:84
          StorageLive(_21);                // scope 2 at $DIR/issue_76432.rs:+3:70: +3:84
          _21 = &raw const (*_15);         // scope 2 at $DIR/issue_76432.rs:+3:70: +3:72
          _20 = _21;                       // scope 2 at $DIR/issue_76432.rs:+3:70: +3:84
          _9 = [move _16, move _18, move _20]; // scope 2 at $DIR/issue_76432.rs:+3:37: +3:85
          StorageDead(_21);                // scope 2 at $DIR/issue_76432.rs:+3:84: +3:85
          StorageDead(_20);                // scope 2 at $DIR/issue_76432.rs:+3:84: +3:85
          StorageDead(_19);                // scope 2 at $DIR/issue_76432.rs:+3:84: +3:85
          StorageDead(_18);                // scope 2 at $DIR/issue_76432.rs:+3:84: +3:85
          StorageDead(_17);                // scope 2 at $DIR/issue_76432.rs:+3:84: +3:85
          StorageDead(_16);                // scope 2 at $DIR/issue_76432.rs:+3:84: +3:85
          StorageDead(_15);                // scope 1 at $DIR/issue_76432.rs:+3:84: +3:85
          StorageDead(_14);                // scope 1 at $DIR/issue_76432.rs:+3:84: +3:85
          StorageDead(_13);                // scope 1 at $DIR/issue_76432.rs:+3:84: +3:85
          StorageDead(_9);                 // scope 1 at $DIR/issue_76432.rs:+5:6: +5:7
          nop;                             // scope 0 at $DIR/issue_76432.rs:+0:44: +6:2
          StorageDead(_5);                 // scope 0 at $DIR/issue_76432.rs:+6:1: +6:2
          StorageDead(_2);                 // scope 0 at $DIR/issue_76432.rs:+6:1: +6:2
          return;                          // scope 0 at $DIR/issue_76432.rs:+6:2: +6:2
      }
  }