Revert "remove ThreadLocalStorage::StaticSlot"

This reverts commit 88a96c6e1b592b920cd00655b88225334c0c4541.

Reason for revert: breaks base_unittests failing on multiple builders (ThreadHeapUsageShimTest.HooksIntoMallocWhenShimAvailable)

BUG=812650
Original change's description:
> remove ThreadLocalStorage::StaticSlot
> 
> in favor of the pattern with
> NoDestructor<ThreadLocalStorage::Slot> as discussed on PS1 @
> https://chromium-review.googlesource.com/c/chromium/src/+/881017/1
> 
> StaticSlot has been subject to a possible initialization race:
> CHECK_NE(slot_, kInvalidSlotValue) in StaticSlot::Initialize
> could fail if another thread initialized it to kInvalidSlotValue
> 
> Change-Id: Iefaa1dde6f85842d20561851a9a26ad5f3a20973
> Reviewed-on: https://chromium-review.googlesource.com/881017
> Reviewed-by: Erik Chen <erikchen@chromium.org>
> Reviewed-by: Miriam Gershenson <mgersh@chromium.org>
> Reviewed-by: Robert Sesek <rsesek@chromium.org>
> Reviewed-by: Peter Kasting <pkasting@chromium.org>
> Reviewed-by: Gabriel Charette <gab@chromium.org>
> Commit-Queue: Gabriel Charette <gab@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#537009}

TBR=pkasting@chromium.org,danakj@chromium.org,gab@chromium.org,mgersh@chromium.org,erikchen@chromium.org,rsesek@chromium.org,akhaustov@yandex-team.ru

Change-Id: If5a61c5448c361ba2df22909930f6b1e8879e454
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/922068
Reviewed-by: Tim Schumann <tschumann@chromium.org>
Commit-Queue: Tim Schumann <tschumann@chromium.org>
Cr-Commit-Position: refs/heads/master@{#537040}

CrOS-Libchrome-Original-Commit: 5a5d5d9d63a1540226bfb22a4db878efee822a6d
8 files changed
tree: 0151667d7ad991a1d98dc9d2e9cf3ddc58c40220
  1. base/
  2. build/
  3. components/
  4. dbus/
  5. device/
  6. ipc/
  7. mojo/
  8. testing/
  9. third_party/
  10. ui/