15#ifndef __L4_SYS__INCLUDE__ARCH_X86__UTCB_H__
16#define __L4_SYS__INCLUDE__ARCH_X86__UTCB_H__
26#define L4_UTCB_EXCEPTION_REGS_SIZE 19
29#define L4_UTCB_GENERIC_DATA_SIZE 63
32#define L4_UTCB_GENERIC_BUFFERS_SIZE 58
35#define L4_UTCB_MSG_REGS_OFFSET 0
38#define L4_UTCB_BUF_REGS_OFFSET (64 * sizeof(l4_umword_t))
41#define L4_UTCB_THREAD_REGS_OFFSET (123 * sizeof(l4_umword_t))
44#define L4_UTCB_INHERIT_FPU (1UL << 24)
47#define L4_UTCB_OFFSET 512
87 __asm__ (
"mov %%fs:0, %0" :
"=r" (utcb));
113 return u->trapno == 14;
118 return (u->pfa & ~7UL) | (u->err & 2);
unsigned long l4_umword_t
Unsigned machine word.
unsigned long l4_addr_t
Address type.
struct l4_utcb_t l4_utcb_t
Opaque type for the UTCB.
l4_addr_t l4_utcb_exc_pfa(l4_exc_regs_t const *u) L4_NOTHROW
Function to get the L4 style page fault address out of an exception.
int l4_utcb_exc_is_ex_regs_exception(l4_exc_regs_t const *u) L4_NOTHROW
Check whether an exception IPC was triggered via l4_thread_ex_regs().
int l4_utcb_exc_is_pf(l4_exc_regs_t const *u) L4_NOTHROW
Check whether an exception IPC is a page fault.
l4_umword_t l4_utcb_exc_pc(l4_exc_regs_t const *u) L4_NOTHROW
Access function to get the program counter of the exception state.
l4_umword_t l4_utcb_exc_typeval(l4_exc_regs_t const *u) L4_NOTHROW
Get the value out of an exception UTCB that describes the type of exception.
void l4_utcb_exc_pc_set(l4_exc_regs_t *u, l4_addr_t pc) L4_NOTHROW
Set the program counter register in the exception state.
#define L4_NOTHROW
Mark a function declaration and definition as never throwing an exception.
#define L4_INLINE
L4 Inline function attribute.
Common L4 ABI Data Types.
UTCB structure for exceptions.
l4_umword_t trapno
trap number
l4_umword_t sp
stack pointer
l4_umword_t ss
stack segment register
l4_umword_t pfa
page fault address
l4_umword_t ip
instruction pointer
l4_umword_t edx
edx register
l4_umword_t err
error code
l4_umword_t esi
esi register
l4_umword_t ebp
ebp register
l4_umword_t eax
eax register
l4_umword_t ecx
ecx register
l4_umword_t ebx
ebx register
l4_umword_t edi
edi register