35 lines
952 B
Diff
35 lines
952 B
Diff
![]() |
- // MIR for `test` before Inline
|
||
|
+ // MIR for `test` after Inline
|
||
|
|
||
|
fn test() -> i32 {
|
||
|
let mut _0: i32;
|
||
|
-
|
||
|
- bb0: {
|
||
|
- _0 = inline_fn::<fn() -> i32 {yield_number}>(yield_number) -> [return: bb1, unwind unreachable];
|
||
|
+ let mut _1: fn() -> i32 {yield_number};
|
||
|
+ scope 1 (inlined inline_fn::<fn() -> i32 {yield_number}>) {
|
||
|
+ let mut _2: fn() -> i32 {yield_number};
|
||
|
+ let mut _3: ();
|
||
|
+ scope 2 (inlined <fn() -> i32 {yield_number} as FnOnce<()>>::call_once - shim(fn() -> i32 {yield_number})) {
|
||
|
+ scope 3 (inlined yield_number) {
|
||
|
+ }
|
||
|
+ }
|
||
|
}
|
||
|
|
||
|
- bb1: {
|
||
|
+ bb0: {
|
||
|
+ StorageLive(_1);
|
||
|
+ _1 = yield_number;
|
||
|
+ StorageLive(_2);
|
||
|
+ _2 = move _1;
|
||
|
+ StorageLive(_3);
|
||
|
+ _3 = ();
|
||
|
+ _0 = const 64_i32;
|
||
|
+ StorageDead(_3);
|
||
|
+ StorageDead(_2);
|
||
|
+ StorageDead(_1);
|
||
|
return;
|
||
|
}
|
||
|
}
|
||
|
|