#include <u.h> | |
#include <libc.h> | |
#include <mach.h> | |
#include "ureg386.h" | |
void | |
linux2ureg386(UregLinux386 *l, Ureg *u) | |
{ | |
u->di = l->edi; | |
u->si = l->esi; | |
u->bp = l->ebp; | |
u->nsp = l->esp; | |
u->bx = l->ebx; | |
u->dx = l->edx; | |
u->cx = l->ecx; | |
u->ax = l->eax; | |
u->gs = l->xgs; | |
u->fs = l->xfs; | |
u->es = l->xes; | |
u->ds = l->xds; | |
u->trap = ~0; /* l->trapno; */ | |
u->ecode = ~0; /* l->err; */ | |
u->pc = l->eip; | |
u->cs = l->xcs; | |
u->flags = l->eflags; | |
u->sp = l->esp; | |
u->ss = l->xss; | |
} | |
void | |
ureg2linux386(Ureg *u, UregLinux386 *l) | |
{ | |
l->edi = u->di; | |
l->esi = u->si; | |
l->ebp = u->bp; | |
l->esp = u->nsp; | |
l->ebx = u->bx; | |
l->edx = u->dx; | |
l->ecx = u->cx; | |
l->eax = u->ax; | |
l->xgs = u->gs; | |
l->xfs = u->fs; | |
l->xes = u->es; | |
l->xds = u->ds; | |
l->eip = u->pc; | |
l->xcs = u->cs; | |
l->eflags = u->flags; | |
l->esp = u->sp; | |
l->xss = u->ss; | |
} | |