RTEMS  5.1
Files | Data Structures | Typedefs | Functions | Variables
Thread-Local Storage (TLS)

Thread-local storage (TLS) support. More...

Files

file  tls.h
 Thread-Local Storage (TLS)
 

Data Structures

struct  TLS_Dynamic_thread_vector
 
struct  TLS_Thread_control_block
 
struct  TLS_Index
 

Typedefs

typedef struct TLS_Thread_control_block TLS_Thread_control_block
 

Functions

uintptr_t _TLS_Get_allocation_size (void)
 Return the TLS area allocation size. More...
 

Variables

char _TLS_Data_begin []
 
char _TLS_Data_end []
 
char _TLS_Data_size []
 
char _TLS_BSS_begin []
 
char _TLS_BSS_end []
 
char _TLS_BSS_size []
 
char _TLS_Size []
 
char _TLS_Alignment []
 The TLS section alignment. More...
 

Detailed Description

Thread-local storage (TLS) support.

Variants I and II are according to Ulrich Drepper, "ELF Handling For Thread-Local Storage".

Function Documentation

◆ _TLS_Get_allocation_size()

uintptr_t _TLS_Get_allocation_size ( void  )

Return the TLS area allocation size.

Returns
The TLS area allocation size.

Variable Documentation

◆ _TLS_Alignment

char _TLS_Alignment[]

The TLS section alignment.

This symbol is provided by the linker command file as the maximum alignment of the .tdata and .tbss sections. The linker ensures that the first TLS output section is aligned to the maximum alignment of all TLS output sections, see function _bfd_elf_tls_setup() in bfd/elflink.c of the GNU Binutils sources. The linker command file must take into account the case that the .tdata section is empty and the .tbss section is non-empty.