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
|
- // MIR for `caller` before Inline
+ // MIR for `caller` after Inline
fn caller(_1: Box<[i32]>) -> () {
debug x => _1;
let mut _0: ();
let _2: ();
let mut _3: std::boxed::Box<[i32]>;
let mut _4: *const [i32];
bb0: {
StorageLive(_2);
StorageLive(_3);
_3 = move _1;
_4 = copy (((_3.0: std::ptr::Unique<[i32]>).0: std::ptr::NonNull<[i32]>).0: *const [i32]);
_2 = callee(move (*_4)) -> [return: bb1, unwind: bb3];
}
bb1: {
drop(_3) -> [return: bb2, unwind: bb4];
}
bb2: {
StorageDead(_3);
StorageDead(_2);
_0 = const ();
return;
}
bb3 (cleanup): {
drop(_3) -> [return: bb4, unwind terminate(cleanup)];
}
bb4 (cleanup): {
resume;
}
}
|