message: prevent 'attempt to shift left with overflow' panic on platforms where pthread_key_t is 64 bits
diff: @@ -739,11 +739,11 @@ impl<'a, 'tcx> EvalContext<'a, 'tcx> {
  };
  // Create key and write it into the memory where key_ptr wants it
  - let key = self.memory.create_tls_key(dtor);
  - if key >= (1 << key_size.bits()) {
  + let key = self.memory.create_tls_key(dtor) as u128;
  + if key_size.bits() < 128 && key >= (1u128 << key_size.bits() as u128) {
  return Err(EvalError::OutOfTls);
  }
  - self.memory.write_int(key_ptr, key as i128, key_size.bytes())?;
  + self.memory.write_uint(key_ptr, key, key_size.bytes())?;
  // Return success (0)
  self.write_primval(dest, PrimVal::Bytes(0), dest_ty)?;
  