| #include <u.h> |
| #include <libc.h> |
| #include <mach.h> |
| #include <elf.h> |
| #include "ureg386.h" |
| |
| |
| Ureg* |
| _linux2ureg386(UregLinux386 *l) |
| { |
| Ureg *u; |
| |
| u = malloc(sizeof(Ureg)); |
| if(u == nil) |
| return nil; |
| 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; |
| return u; |
| } |