rust/tests/mir-opt/inline/inline_shims.clone.Inline.diff
2023-01-11 09:32:08 +00:00

27 lines
1.4 KiB
Diff

- // MIR for `clone` before Inline
+ // MIR for `clone` after Inline
fn clone(_1: fn(A, B)) -> fn(A, B) {
debug f => _1; // in scope 0 at $DIR/inline_shims.rs:+0:20: +0:21
let mut _0: fn(A, B); // return place in scope 0 at $DIR/inline_shims.rs:+0:36: +0:44
let mut _2: &fn(A, B); // in scope 0 at $DIR/inline_shims.rs:+1:5: +1:14
+ scope 1 (inlined <fn(A, B) as Clone>::clone - shim(fn(A, B))) { // at $DIR/inline_shims.rs:6:7: 6:14
+ }
bb0: {
StorageLive(_2); // scope 0 at $DIR/inline_shims.rs:+1:5: +1:14
_2 = &_1; // scope 0 at $DIR/inline_shims.rs:+1:5: +1:14
- _0 = <fn(A, B) as Clone>::clone(move _2) -> bb1; // scope 0 at $DIR/inline_shims.rs:+1:5: +1:14
- // mir::Constant
- // + span: $DIR/inline_shims.rs:6:7: 6:12
- // + literal: Const { ty: for<'a> fn(&'a fn(A, B)) -> fn(A, B) {<fn(A, B) as Clone>::clone}, val: Value(<ZST>) }
- }
-
- bb1: {
+ _0 = (*_2); // scope 1 at $SRC_DIR/core/src/clone.rs:LL:COL
StorageDead(_2); // scope 0 at $DIR/inline_shims.rs:+1:13: +1:14
return; // scope 0 at $DIR/inline_shims.rs:+2:2: +2:2
}
}