rust/tests/mir-opt/inline/inline_cycle.two.Inline.diff
2023-04-06 10:08:07 +01:00

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
}
}