mips32
[Libc]


Files

file  atomic.h
file  config.h
file  ddi.h
file  faddr.h
file  fibril.h
file  istate.h
file  stacktrace.c
file  syscall.c
file  thread.h
file  tls.c
file  tls.h
file  types.h

Data Structures

struct  context_t
 Fibril context. More...
struct  tcb_t
 TCB (Thread Control Block) struct. More...

Defines

#define __32_BITS__
#define atomic_dec(x)   ((void) atomic_add(x, -1))
#define atomic_inc(x)   ((void) atomic_add(x, 1))
#define atomic_postdec(x)   (atomic_add(x, -1) + 1)
#define atomic_postinc(x)   (atomic_add(x, 1) - 1)
#define atomic_predec(x)   atomic_add(x, -1)
#define atomic_preinc(x)   atomic_add(x, 1)
#define CONFIG_TLS_VARIANT_1
#define context_set(c, _pc, stack, size, ptls)
#define FADDR(fptr)   ((uintptr_t) (fptr))
#define LIBC_ARCH_ATOMIC_H_
#define MIPS_TP_OFFSET   0x7000
#define PAGE_SIZE   (1 << PAGE_WIDTH)
#define PAGE_WIDTH   14
#define PRIdn   PRId32
 Format for native_t.
#define PRIua   PRIu32
 Format for atomic_count_t.
#define PRIun   PRIu32
 Format for sysarg_t.
#define PRIxn   PRIx32
 Format for hexadecimal sysarg_t.
#define SIZE_MAX   UINT32_MAX
#define SIZE_MIN   UINT32_MIN
#define SP_DELTA   (8+16)
#define SSIZE_MAX   INT32_MAX
#define SSIZE_MIN   INT32_MIN

Typedefs

typedef uint32_t atomic_count_t
typedef int32_t atomic_signed_t
typedef uint32_t size_t
typedef int32_t ssize_t
typedef uint32_t sysarg_t
typedef uint32_t uintptr_t

Functions

tcb_t__alloc_tls (void **data, size_t size)
void __free_tls_arch (tcb_t *tcb, size_t size)
sysarg_t __syscall (const sysarg_t p1, const sysarg_t p2, const sysarg_t p3, const sysarg_t p4, const sysarg_t p5, const sysarg_t p6, const syscall_t id)
 Syscall routine.
static tcb_t__tcb_get (void)
static void __tcb_set (tcb_t *tcb)
static atomic_count_t atomic_add (atomic_t *val, atomic_count_t i)
static uintptr_t context_get_fp (context_t *ctx)
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)

Function Documentation

sysarg_t __syscall ( const sysarg_t  p1,
const sysarg_t  p2,
const sysarg_t  p3,
const sysarg_t  p4,
const sysarg_t  p5,
const sysarg_t  p6,
const syscall_t  id 
)

Syscall routine.

Stores p1-p4, id to r0-r4 registers and calls swi instruction. Returned value is read from r0 register.

Parameters:
p1 Parameter 1.
p2 Parameter 2.
p3 Parameter 3.
p4 Parameter 4.
id Number of syscall.
Returns:
Syscall return value.

Definition at line 38 of file syscall.c.


Generated on Thu Jun 2 07:45:57 2011 for HelenOS/USB by  doxygen 1.4.7