2020-11-08 18:00:00 -06:00
|
|
|
- // MIR for `two` before Inline
|
|
|
|
+ // MIR for `two` after Inline
|
|
|
|
|
|
|
|
fn two() -> () {
|
2022-11-02 16:54:49 -05:00
|
|
|
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
|
|
|
|
+ scope 1 (inlined call::<fn() {f}>) { // at $DIR/inline_cycle.rs:49:5: 49:12
|
|
|
|
+ debug f => _2; // in scope 1 at $DIR/inline_cycle.rs:53:22: 53:23
|
|
|
|
+ let _3: (); // in scope 1 at $DIR/inline_cycle.rs:54:5: 54:8
|
|
|
|
+ let mut _4: fn() {f}; // in scope 1 at $DIR/inline_cycle.rs:54:5: 54:6
|
|
|
|
+ let mut _5: (); // in scope 1 at $DIR/inline_cycle.rs:54:5: 54:8
|
|
|
|
+ scope 2 (inlined <fn() {f} as FnOnce<()>>::call_once - shim(fn() {f})) { // at $DIR/inline_cycle.rs:54:5: 54:8
|
2021-12-13 06:46:30 -06:00
|
|
|
+ scope 3 (inlined f) { // at $SRC_DIR/core/src/ops/function.rs:LL:COL
|
2022-11-02 16:54:49 -05:00
|
|
|
+ let _6: (); // in scope 3 at $DIR/inline_cycle.rs:59:5: 59:12
|
2021-12-13 06:46:30 -06:00
|
|
|
+ }
|
2020-11-08 18:00:00 -06:00
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
|
|
|
|
bb0: {
|
2022-11-02 16:54:49 -05:00
|
|
|
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
|
2020-11-08 18:00:00 -06:00
|
|
|
// mir::Constant
|
2022-11-02 16:54:49 -05:00
|
|
|
- // + span: $DIR/inline_cycle.rs:49:5: 49:9
|
|
|
|
+ // + span: $DIR/inline_cycle.rs:49:10: 49:11
|
2022-07-06 09:14:46 -05:00
|
|
|
+ // + literal: Const { ty: fn() {f}, val: Value(<ZST>) }
|
2022-11-02 16:54:49 -05:00
|
|
|
+ StorageLive(_3); // scope 1 at $DIR/inline_cycle.rs:54:5: 54:8
|
|
|
|
+ StorageLive(_4); // scope 1 at $DIR/inline_cycle.rs:54:5: 54:6
|
|
|
|
+ _4 = move _2; // scope 1 at $DIR/inline_cycle.rs:54:5: 54:6
|
|
|
|
+ StorageLive(_5); // scope 1 at $DIR/inline_cycle.rs:54:5: 54:8
|
|
|
|
+ StorageLive(_6); // scope 3 at $DIR/inline_cycle.rs:59:5: 59:12
|
|
|
|
+ _6 = call::<fn() {f}>(f) -> bb1; // scope 3 at $DIR/inline_cycle.rs:59:5: 59:12
|
2021-12-13 06:46:30 -06:00
|
|
|
+ // mir::Constant
|
2022-11-02 16:54:49 -05:00
|
|
|
+ // + span: $DIR/inline_cycle.rs:59:5: 59:9
|
2022-07-06 09:14:46 -05:00
|
|
|
// + literal: Const { ty: fn(fn() {f}) {call::<fn() {f}>}, val: Value(<ZST>) }
|
2021-12-13 06:46:30 -06:00
|
|
|
// mir::Constant
|
2022-11-02 16:54:49 -05:00
|
|
|
- // + span: $DIR/inline_cycle.rs:49:10: 49:11
|
|
|
|
+ // + span: $DIR/inline_cycle.rs:59:10: 59:11
|
2022-07-06 09:14:46 -05:00
|
|
|
// + literal: Const { ty: fn() {f}, val: Value(<ZST>) }
|
2020-11-08 18:00:00 -06:00
|
|
|
}
|
|
|
|
|
|
|
|
bb1: {
|
2022-11-02 16:54:49 -05:00
|
|
|
+ StorageDead(_6); // scope 3 at $DIR/inline_cycle.rs:59:12: 59:13
|
|
|
|
+ StorageDead(_5); // scope 1 at $DIR/inline_cycle.rs:54:7: 54:8
|
|
|
|
+ StorageDead(_4); // scope 1 at $DIR/inline_cycle.rs:54:7: 54:8
|
|
|
|
+ StorageDead(_3); // scope 1 at $DIR/inline_cycle.rs:54:8: 54:9
|
|
|
|
+ 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
|
2020-11-08 18:00:00 -06:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|