typedef struct Ureg Ureg; | |
struct Ureg | |
{ | |
ulong di; /* general registers */ | |
ulong si; /* ... */ | |
ulong bp; /* ... */ | |
ulong nsp; | |
ulong bx; /* ... */ | |
ulong dx; /* ... */ | |
ulong cx; /* ... */ | |
ulong ax; /* ... */ | |
ulong gs; /* data segments */ | |
ulong fs; /* ... */ | |
ulong es; /* ... */ | |
ulong ds; /* ... */ | |
ulong trap; /* trap type */ | |
ulong ecode; /* error code (or zero) */ | |
ulong pc; /* pc */ | |
ulong cs; /* old context */ | |
ulong flags; /* old flags */ | |
ulong sp; | |
ulong ss; /* old stack segment */ | |
}; | |
typedef struct UregLinux386 UregLinux386; | |
struct UregLinux386 | |
{ | |
u32int ebx; | |
u32int ecx; | |
u32int edx; | |
u32int esi; | |
u32int edi; | |
u32int ebp; | |
u32int eax; | |
u32int xds; | |
u32int xes; | |
u32int xfs; | |
u32int xgs; | |
u32int origeax; | |
u32int eip; | |
u32int xcs; | |
u32int eflags; | |
u32int esp; | |
u32int xss; | |
}; | |
void linux2ureg386(UregLinux386*, Ureg*); | |
void ureg2linux386(Ureg*, UregLinux386*); |