- // MIR for `read_via_copy_primitive` before LowerIntrinsics
+ // MIR for `read_via_copy_primitive` after LowerIntrinsics
  
  fn read_via_copy_primitive(_1: &i32) -> i32 {
      debug r => _1;
      let mut _0: i32;
      let mut _2: *const i32;
      scope 1 {
      }
  
      bb0: {
          StorageLive(_2);
          _2 = &raw const (*_1);
-         _0 = read_via_copy::<i32>(move _2) -> [return: bb1, unwind unreachable];
+         _0 = (*_2);
+         goto -> bb1;
      }
  
      bb1: {
          StorageDead(_2);
          return;
      }
  }