//===-- tsd_shared.h --------------------------------------------*- C++ -*-===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// #ifndef SCUDO_TSD_SHARED_H_ #define SCUDO_TSD_SHARED_H_ #include "tsd.h" #include "string_utils.h" #if SCUDO_HAS_PLATFORM_TLS_SLOT // This is a platform-provided header that needs to be on the include path when // Scudo is compiled. It must declare a function with the prototype: // uintptr_t *getPlatformAllocatorTlsSlot() // that returns the address of a thread-local word of storage reserved for // Scudo, that must be zero-initialized in newly created threads. #include "scudo_platform_tls_slot.h" #endif namespace scudo { template <class Allocator, u32 TSDsArraySize, u32 DefaultTSDCount> struct TSDRegistrySharedT { … }; } // namespace scudo #endif // SCUDO_TSD_SHARED_H_