- // MIR for `t4` before SimplifyLocals-before-const-prop
+ // MIR for `t4` after SimplifyLocals-before-const-prop
  
  fn t4() -> u32 {
      let mut _0: u32;
      let mut _1: u32;
      let mut _2: *mut u32;
  
      bb0: {
          StorageLive(_1);
          StorageLive(_2);
          _2 = &/*tls*/ mut X;
          _1 = copy (*_2);
          _0 = Add(move _1, const 1_u32);
          StorageDead(_1);
          StorageDead(_2);
          return;
      }
  }
  
