xref: /openbsd-src/gnu/llvm/compiler-rt/lib/hwasan/hwasan_thread_list.cpp (revision d89ec533011f513df1010f142a111086a0785f09)
13cab2bb3Spatrick #include "hwasan_thread_list.h"
23cab2bb3Spatrick 
33cab2bb3Spatrick namespace __hwasan {
43cab2bb3Spatrick static ALIGNED(16) char thread_list_placeholder[sizeof(HwasanThreadList)];
53cab2bb3Spatrick static HwasanThreadList *hwasan_thread_list;
63cab2bb3Spatrick 
hwasanThreadList()73cab2bb3Spatrick HwasanThreadList &hwasanThreadList() { return *hwasan_thread_list; }
83cab2bb3Spatrick 
InitThreadList(uptr storage,uptr size)93cab2bb3Spatrick void InitThreadList(uptr storage, uptr size) {
103cab2bb3Spatrick   CHECK(hwasan_thread_list == nullptr);
113cab2bb3Spatrick   hwasan_thread_list =
123cab2bb3Spatrick       new (thread_list_placeholder) HwasanThreadList(storage, size);
133cab2bb3Spatrick }
143cab2bb3Spatrick 
15*d89ec533Spatrick } // namespace __hwasan
16