mirror of
https://github.com/rust-lang/rust.git
synced 2024-11-23 15:23:46 +00:00
43 lines
2.7 KiB
Diff
43 lines
2.7 KiB
Diff
- // MIR for `two` before Inline
|
|
+ // MIR for `two` after Inline
|
|
|
|
fn two() -> () {
|
|
let mut _0: (); // return place in scope 0 at $DIR/inline_cycle.rs:+0:10: +0:10
|
|
let _1: (); // in scope 0 at $DIR/inline_cycle.rs:+1:5: +1:12
|
|
+ let mut _2: fn() {f}; // in scope 0 at $DIR/inline_cycle.rs:+1:5: +1:12
|
|
+ let mut _4: (); // in scope 0 at $DIR/inline_cycle.rs:55:5: 55:8
|
|
+ scope 1 (inlined call::<fn() {f}>) { // at $DIR/inline_cycle.rs:50:5: 50:12
|
|
+ debug f => _2; // in scope 1 at $DIR/inline_cycle.rs:54:22: 54:23
|
|
+ let _3: (); // in scope 1 at $DIR/inline_cycle.rs:55:5: 55:8
|
|
+ scope 2 (inlined <fn() {f} as FnOnce<()>>::call_once - shim(fn() {f})) { // at $DIR/inline_cycle.rs:55:5: 55:8
|
|
+ }
|
|
+ }
|
|
|
|
bb0: {
|
|
StorageLive(_1); // scope 0 at $DIR/inline_cycle.rs:+1:5: +1:12
|
|
- _1 = call::<fn() {f}>(f) -> bb1; // scope 0 at $DIR/inline_cycle.rs:+1:5: +1:12
|
|
+ StorageLive(_2); // scope 0 at $DIR/inline_cycle.rs:+1:5: +1:12
|
|
+ _2 = f; // scope 0 at $DIR/inline_cycle.rs:+1:5: +1:12
|
|
// mir::Constant
|
|
- // + span: $DIR/inline_cycle.rs:50:5: 50:9
|
|
- // + literal: Const { ty: fn(fn() {f}) {call::<fn() {f}>}, val: Value(<ZST>) }
|
|
- // mir::Constant
|
|
// + span: $DIR/inline_cycle.rs:50:10: 50:11
|
|
// + literal: Const { ty: fn() {f}, val: Value(<ZST>) }
|
|
+ StorageLive(_3); // scope 0 at $DIR/inline_cycle.rs:+1:5: +1:12
|
|
+ StorageLive(_4); // scope 1 at $DIR/inline_cycle.rs:55:5: 55:8
|
|
+ _4 = const (); // scope 1 at $DIR/inline_cycle.rs:55:5: 55:8
|
|
+ _3 = move _2() -> bb1; // scope 2 at $SRC_DIR/core/src/ops/function.rs:LL:COL
|
|
}
|
|
|
|
bb1: {
|
|
+ StorageDead(_4); // scope 1 at $DIR/inline_cycle.rs:55:5: 55:8
|
|
+ StorageDead(_3); // scope 0 at $DIR/inline_cycle.rs:+1:5: +1:12
|
|
+ StorageDead(_2); // scope 0 at $DIR/inline_cycle.rs:+1:5: +1:12
|
|
StorageDead(_1); // scope 0 at $DIR/inline_cycle.rs:+1:12: +1:13
|
|
_0 = const (); // scope 0 at $DIR/inline_cycle.rs:+0:10: +2:2
|
|
return; // scope 0 at $DIR/inline_cycle.rs:+2:2: +2:2
|
|
}
|
|
}
|
|
|