15#define kCookieMag0Idx (0U)
16#define kCookieMag1Idx (1U)
17#define kCookieMag2Idx (2U)
19#define kCookieMag0 'N'
20#define kCookieMag1 'K'
21#define kCookieMag2 'O'
23#define kCookieMagLen (3U)
55template <
typename T,
typename... Args>
EXTERN_C Kernel::Bool tls_check_syscall_impl(Kernel::VoidPtr TIB)
TLS check (syscall).
Definition ThreadLocalStorage.cc:43
T * tls_new_ptr(void)
!
Definition ThreadLocalStorage.inl:15
EXTERN_C Kernel::Void rt_install_tib(THREAD_INFORMATION_BLOCK *TIB, THREAD_INFORMATION_BLOCK *PIB)
TLS install TIB and PIB. (syscall).
Kernel::Boolean tls_delete_ptr(T *ptr)
!
Definition ThreadLocalStorage.inl:31
Kernel::Boolean tls_check_tib(THREAD_INFORMATION_BLOCK *the_tib)
!
Definition ThreadLocalStorage.cc:30
T * tls_new_class(Args &&... args)
Allocate a C++ class, and then call the constructor of it.
Definition ThreadLocalStorage.inl:64
#define kCookieMagLen
Definition ThreadLocalStorage.h:23
Allocate resources from the process's heap storage.
ErrorOr class for error handling.
Definition ErrorOr.h:22
char Char
Definition Config.h:51
void Void
Definition Config.h:87
void * VoidPtr
Definition Config.h:33
bool Boolean
Definition Config.h:49
bool Bool
Definition Config.h:50
Thread Information Block. Located in GS on AMD64, other architectures have their own stuff....
Definition ThreadLocalStorage.h:29
Kernel::Char Cookie[kCookieMagLen]
Definition ThreadLocalStorage.h:30
Kernel::VoidPtr UserData
Thread Magic Number.
Definition ThreadLocalStorage.h:31