- // MIR for `generic_ref` before InstSimplify-after-simplifycfg
+ // MIR for `generic_ref` after InstSimplify-after-simplifycfg
  
  fn generic_ref() -> () {
      let mut _0: ();
      let _1: ();
  
      bb0: {
          StorageLive(_1);
          _1 = assert_mem_uninitialized_valid::<&T>() -> [return: bb1, unwind unreachable];
      }
  
      bb1: {
          StorageDead(_1);
          _0 = const ();
          return;
      }
  }
  
