DMTCP
|
#include <dl-sysdep.h>
#include <stdbool.h>
#include <stddef.h>
#include <stdint.h>
#include <stdlib.h>
#include <list.h>
#include <sysdep.h>
#include <nptl/descr.h>
Go to the source code of this file.
Classes | |
union | dtv |
struct | tcbhead_t |
struct | user_desc |
union | user_desc_init |
Macros | |
#define | TLS_MULTIPLE_THREADS_IN_TCB 1 |
#define | USE_TLS 1 |
#define | STACK_ALIGN 16 |
#define | TLS_INIT_TCB_SIZE sizeof (struct pthread) |
#define | TLS_INIT_TCB_ALIGN __alignof__ (struct pthread) |
#define | TLS_TCB_SIZE sizeof (struct pthread) |
#define | TLS_TCB_ALIGN __alignof__ (struct pthread) |
#define | TLS_TCB_AT_TP 1 |
#define | INSTALL_DTV(descr, dtvp) ((tcbhead_t *) (descr))->dtv = (dtvp) + 1 |
#define | INSTALL_NEW_DTV(dtvp) |
#define | GET_DTV(descr) (((tcbhead_t *) (descr))->dtv) |
#define | THREAD_SELF_SYSINFO THREAD_GETMEM (THREAD_SELF, header.sysinfo) |
#define | THREAD_SYSINFO(pd) ((pd)->header.sysinfo) |
#define | TLS_GET_GS() ({ int __seg; __asm ("movw %%gs, %w0" : "=q" (__seg)); __seg & 0xffff; }) |
#define | TLS_SET_GS(val) __asm ("movw %w0, %%gs" :: "q" (val)) |
#define | __NR_set_thread_area 243 |
#define | TLS_FLAG_WRITABLE 0x00000001 |
#define | TLS_EBX_ARG "b" |
#define | TLS_LOAD_EBX |
#define | INIT_SYSINFO |
#define | LOCK_PREFIX "lock;" |
#define | TLS_INIT_TP(thrdescr, secondcall) |
#define | THREAD_DTV() |
#define | THREAD_SELF |
#define | DB_THREAD_SELF |
#define | THREAD_GETMEM(descr, member) |
#define | THREAD_GETMEM_NC(descr, member, idx) |
#define | THREAD_SETMEM(descr, member, value) |
#define | THREAD_SETMEM_NC(descr, member, idx, value) |
#define | THREAD_ATOMIC_CMPXCHG_VAL(descr, member, newval, oldval) |
#define | THREAD_ATOMIC_BIT_SET(descr, member, bit) |
#define | CALL_THREAD_FCT(descr) |
#define | THREAD_SET_STACK_GUARD(value) THREAD_SETMEM (THREAD_SELF, header.stack_guard, value) |
#define | THREAD_COPY_STACK_GUARD(descr) |
#define | THREAD_SET_POINTER_GUARD(value) THREAD_SETMEM (THREAD_SELF, header.pointer_guard, value) |
#define | THREAD_COPY_POINTER_GUARD(descr) |
Typedefs | |
typedef union dtv | dtv_t |
#define __NR_set_thread_area 243 |
Definition at line 155 of file tls-i386.h.
#define CALL_THREAD_FCT | ( | descr) |
Definition at line 406 of file tls-i386.h.
#define DB_THREAD_SELF |
Definition at line 266 of file tls-i386.h.
Definition at line 137 of file tls-i386.h.
#define INIT_SYSINFO |
Definition at line 180 of file tls-i386.h.
Definition at line 128 of file tls-i386.h.
#define INSTALL_NEW_DTV | ( | dtvp) |
Definition at line 132 of file tls-i386.h.
#define LOCK_PREFIX "lock;" |
Definition at line 187 of file tls-i386.h.
#define STACK_ALIGN 16 |
Definition at line 73 of file tls-i386.h.
#define THREAD_ATOMIC_BIT_SET | ( | descr, | |
member, | |||
bit | |||
) |
Definition at line 395 of file tls-i386.h.
#define THREAD_ATOMIC_CMPXCHG_VAL | ( | descr, | |
member, | |||
newval, | |||
oldval | |||
) |
Definition at line 380 of file tls-i386.h.
#define THREAD_COPY_POINTER_GUARD | ( | descr) |
Definition at line 432 of file tls-i386.h.
#define THREAD_COPY_STACK_GUARD | ( | descr) |
Definition at line 424 of file tls-i386.h.
#define THREAD_DTV | ( | ) |
Definition at line 248 of file tls-i386.h.
#define THREAD_GETMEM | ( | descr, | |
member | |||
) |
Definition at line 272 of file tls-i386.h.
#define THREAD_GETMEM_NC | ( | descr, | |
member, | |||
idx | |||
) |
Definition at line 299 of file tls-i386.h.
#define THREAD_SELF |
Definition at line 259 of file tls-i386.h.
#define THREAD_SELF_SYSINFO THREAD_GETMEM (THREAD_SELF, header.sysinfo) |
Definition at line 140 of file tls-i386.h.
#define THREAD_SET_POINTER_GUARD | ( | value) | THREAD_SETMEM (THREAD_SELF, header.pointer_guard, value) |
Definition at line 430 of file tls-i386.h.
#define THREAD_SET_STACK_GUARD | ( | value) | THREAD_SETMEM (THREAD_SELF, header.stack_guard, value) |
Definition at line 422 of file tls-i386.h.
#define THREAD_SETMEM | ( | descr, | |
member, | |||
value | |||
) |
Definition at line 328 of file tls-i386.h.
#define THREAD_SETMEM_NC | ( | descr, | |
member, | |||
idx, | |||
value | |||
) |
Definition at line 353 of file tls-i386.h.
#define THREAD_SYSINFO | ( | pd) | ((pd)->header.sysinfo) |
Definition at line 141 of file tls-i386.h.
#define TLS_EBX_ARG "b" |
Definition at line 172 of file tls-i386.h.
#define TLS_FLAG_WRITABLE 0x00000001 |
Definition at line 158 of file tls-i386.h.
#define TLS_GET_GS | ( | ) | ({ int __seg; __asm ("movw %%gs, %w0" : "=q" (__seg)); __seg & 0xffff; }) |
Definition at line 145 of file tls-i386.h.
#define TLS_INIT_TCB_ALIGN __alignof__ (struct pthread) |
Definition at line 113 of file tls-i386.h.
#define TLS_INIT_TCB_SIZE sizeof (struct pthread) |
Definition at line 110 of file tls-i386.h.
#define TLS_INIT_TP | ( | thrdescr, | |
secondcall | |||
) |
Definition at line 194 of file tls-i386.h.
#define TLS_LOAD_EBX |
Definition at line 173 of file tls-i386.h.
#define TLS_MULTIPLE_THREADS_IN_TCB 1 |
Definition at line 56 of file tls-i386.h.
#define TLS_SET_GS | ( | val) | __asm ("movw %w0, %%gs" :: "q" (val)) |
Definition at line 149 of file tls-i386.h.
#define TLS_TCB_ALIGN __alignof__ (struct pthread) |
Definition at line 119 of file tls-i386.h.
#define TLS_TCB_AT_TP 1 |
Definition at line 123 of file tls-i386.h.
#define TLS_TCB_SIZE sizeof (struct pthread) |
Definition at line 116 of file tls-i386.h.
#define USE_TLS 1 |
Definition at line 69 of file tls-i386.h.