- // MIR for `ptr_offset` before LowerIntrinsics + // MIR for `ptr_offset` after LowerIntrinsics fn ptr_offset(_1: *const i32, _2: isize) -> *const i32 { debug p => _1; // in scope 0 at $DIR/lower_intrinsics.rs:+0:26: +0:27 debug d => _2; // in scope 0 at $DIR/lower_intrinsics.rs:+0:41: +0:42 let mut _0: *const i32; // return place in scope 0 at $DIR/lower_intrinsics.rs:+0:54: +0:64 let mut _3: *const i32; // in scope 0 at $DIR/lower_intrinsics.rs:+1:30: +1:31 let mut _4: isize; // in scope 0 at $DIR/lower_intrinsics.rs:+1:33: +1:34 bb0: { StorageLive(_3); // scope 0 at $DIR/lower_intrinsics.rs:+1:30: +1:31 _3 = _1; // scope 0 at $DIR/lower_intrinsics.rs:+1:30: +1:31 StorageLive(_4); // scope 0 at $DIR/lower_intrinsics.rs:+1:33: +1:34 _4 = _2; // scope 0 at $DIR/lower_intrinsics.rs:+1:33: +1:34 - _0 = offset::<*const i32, isize>(move _3, move _4) -> [return: bb1, unwind unreachable]; // scope 0 at $DIR/lower_intrinsics.rs:+1:5: +1:35 - // mir::Constant - // + span: $DIR/lower_intrinsics.rs:150:5: 150:29 - // + literal: Const { ty: unsafe extern "rust-intrinsic" fn(*const i32, isize) -> *const i32 {offset::<*const i32, isize>}, val: Value() } + _0 = Offset(move _3, move _4); // scope 0 at $DIR/lower_intrinsics.rs:+1:5: +1:35 + goto -> bb1; // scope 0 at $DIR/lower_intrinsics.rs:+1:5: +1:35 } bb1: { StorageDead(_4); // scope 0 at $DIR/lower_intrinsics.rs:+1:34: +1:35 StorageDead(_3); // scope 0 at $DIR/lower_intrinsics.rs:+1:34: +1:35 return; // scope 0 at $DIR/lower_intrinsics.rs:+2:2: +2:2 } }