RTEMS 6.1-rc2
Loading...
Searching...
No Matches
Files | Data Structures | Typedefs | Functions | Variables
Thread-Local Storage (TLS)

This group contains the implementation to support thread-local storage (TLS). More...

Files

file  tls.h
 This header file provides the interfaces of the Thread-Local Storage (TLS).
 
file  tlsallocsize.c
 This source file contains the implementation of _TLS_Get_allocation_size().
 

Data Structures

struct  TLS_Configuration
 Represents the TLS configuration. More...
 
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)
 Gets the allocation size of the thread-local storage area in bytes.
 

Variables

const volatile TLS_Configuration _TLS_Configuration
 Provides the TLS configuration.
 

Detailed Description

This group contains the implementation to support thread-local storage (TLS).

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  )

Gets the allocation size of the thread-local storage area in bytes.

Returns
Returns the allocation size of the thread-local storage area in bytes.

Variable Documentation

◆ _TLS_Configuration

const volatile TLS_Configuration _TLS_Configuration
extern

Provides the TLS configuration.

Directly using symbols with an arbitrary absolute address such as _TLS_Alignment may not work with all code models (for example the AArch64 tiny and small code models). Store the addresses in a read-only object. Using the volatile qualifier ensures that the compiler actually loads the address from the object.