Files | |
file | atomic.h |
file | config.h |
file | ddi.h |
file | faddr.h |
file | fibril.h |
file | stack.h |
file | stackarg.h |
file | stacktrace.c |
file | thread.h |
file | tls.c |
file | tls.h |
file | types.h |
Data Structures | |
struct | context |
struct | fncptr_t |
struct | int128_t |
struct | tcb_t |
TCB (Thread Control Block) struct. More... | |
struct | uint128_t |
Defines | |
#define | __64_BITS__ |
#define | CONFIG_TLS_VARIANT_1 |
#define | context_set(c, _pc, stack, size, tls) |
#define | FADDR(fptr) (((fncptr_t *) (fptr))->fnc) |
Calculate absolute address of function referenced by fptr pointer. | |
#define | IA64_IOSPACE_ADDRESS |
#define | IO_SPACE_BOUNDARY ((void *) (64 * 1024)) |
#define | LIBC_ARCH_ATOMIC_H_ |
#define | PAGE_SIZE (1 << PAGE_WIDTH) |
#define | PAGE_WIDTH 14 |
#define | PFM_MASK (~0x3fffffffff) |
#define | PSTHREAD_INITIAL_STACK_DIVISION 2 |
#define | PSTHREAD_INITIAL_STACK_PAGES_NO 2 |
#define | REGISTER_STACK_ALIGNMENT 8 |
#define | SIZE_MAX UINT64_MAX |
#define | SIZE_MIN UINT64_MIN |
#define | SP_DELTA (0 + ALIGN_UP(STACK_ITEM_SIZE, STACK_ALIGNMENT)) |
#define | SSIZE_MAX INT64_MAX |
#define | SSIZE_MIN INT64_MIN |
#define | STACK_ALIGNMENT 16 |
#define | STACK_ITEM_SIZE 8 |
#define | STACK_SCRATCH_AREA_SIZE 16 |
#define | THREAD_INITIAL_STACK_PAGES_NO 2 |
Typedefs | |
typedef uint64_t | atomic_count_t |
typedef int64_t | atomic_signed_t |
typedef uint64_t | size_t |
typedef int64_t | ssize_t |
typedef uint64_t | sysarg_t |
typedef uint64_t | uintptr_t |
Functions | |
tcb_t * | __alloc_tls (void **data, size_t size) |
void | __free_tls_arch (tcb_t *tcb, size_t size) |
static tcb_t * | __tcb_get (void) |
static void | __tcb_set (tcb_t *tcb) |
static void | atomic_dec (atomic_t *val) |
static void | atomic_inc (atomic_t *val) |
static atomic_count_t | atomic_postdec (atomic_t *val) |
static atomic_count_t | atomic_postinc (atomic_t *val) |
static atomic_count_t | atomic_predec (atomic_t *val) |
static atomic_count_t | atomic_preinc (atomic_t *val) |
static uintptr_t | context_get_fp (context_t *ctx) |
uint64_t | get_ia64_iospace_address (void) |
static uint16_t | pio_read_16 (ioport16_t *port) |
static uint32_t | pio_read_32 (ioport32_t *port) |
static uint8_t | pio_read_8 (ioport8_t *port) |
static void | pio_write_16 (ioport16_t *port, uint16_t v) |
static void | pio_write_32 (ioport32_t *port, uint32_t v) |
static void | pio_write_8 (ioport8_t *port, uint8_t v) |
int | stacktrace_fp_prev (stacktrace_t *st, uintptr_t fp, uintptr_t *prev) |
bool | stacktrace_fp_valid (stacktrace_t *st, uintptr_t fp) |
int | stacktrace_ra_get (stacktrace_t *st, uintptr_t fp, uintptr_t *ra) |
Variables | |
uint64_t | ia64_iospace_address |
#define FADDR | ( | fptr | ) | (((fncptr_t *) (fptr))->fnc) |