summaryrefslogtreecommitdiffstats
path: root/tests/mir-opt/inline/inline_shims.clone.Inline.diff
blob: 09dd35c4c68b142af5c59ecf219ebcd5ce983aa9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
- // 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
      }
  }