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()73cab2bb3SpatrickHwasanThreadList &hwasanThreadList() { return *hwasan_thread_list; } 83cab2bb3Spatrick InitThreadList(uptr storage,uptr size)93cab2bb3Spatrickvoid 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