• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1- // MIR for `unchecked_shr_signed_bigger` before Inline
2+ // MIR for `unchecked_shr_signed_bigger` after Inline
3
4  fn unchecked_shr_signed_bigger(_1: i64, _2: u32) -> i64 {
5      debug a => _1;
6      debug b => _2;
7      let mut _0: i64;
8      let mut _3: i64;
9      let mut _4: u32;
10+     scope 1 (inlined core::num::<impl i64>::unchecked_shr) {
11+         debug self => _3;
12+         debug rhs => _4;
13+         let mut _5: i64;
14+         scope 2 {
15+         }
16+     }
17
18      bb0: {
19          StorageLive(_3);
20          _3 = _1;
21          StorageLive(_4);
22          _4 = _2;
23-         _0 = core::num::<impl i64>::unchecked_shr(move _3, move _4) -> [return: bb1, unwind continue];
24-     }
25-
26-     bb1: {
27+         StorageLive(_5);
28+         _5 = _4 as i64 (IntToInt);
29+         _0 = ShrUnchecked(_3, move _5);
30+         StorageDead(_5);
31          StorageDead(_4);
32          StorageDead(_3);
33          return;
34      }
35  }
36
37