Lines 2-13
Link Here
|
2 |
#define __MONO_DEBUGGER_I386_ARCH_H__ |
2 |
#define __MONO_DEBUGGER_I386_ARCH_H__ |
3 |
|
3 |
|
4 |
#include <glib.h> |
4 |
#include <glib.h> |
|
|
5 |
#include <linux/version.h> |
5 |
|
6 |
|
6 |
G_BEGIN_DECLS |
7 |
G_BEGIN_DECLS |
7 |
|
8 |
|
8 |
#if defined(__i386__) |
9 |
#if defined(__i386__) |
9 |
|
10 |
|
|
|
11 |
/* |
12 |
* added because gentoo linux headers |
13 |
* no longer include asm-i386/user.h |
14 |
*/ |
15 |
|
16 |
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,19) |
17 |
|
18 |
struct user_i387_struct { |
19 |
long cwd; |
20 |
long swd; |
21 |
long twd; |
22 |
long fip; |
23 |
long fcs; |
24 |
long foo; |
25 |
long fos; |
26 |
long st_space[20]; |
27 |
}; |
28 |
|
29 |
struct user_regs_struct { |
30 |
long ebx, ecx, edx, esi, edi, ebp, eax; |
31 |
unsigned short ds, __ds, es, __es; |
32 |
unsigned short fs, __fs, gs, __gs; |
33 |
long orig_eax, eip; |
34 |
unsigned short cs, __cs; |
35 |
long eflags, esp; |
36 |
unsigned short ss, __ss; |
37 |
}; |
38 |
|
39 |
struct user{ |
40 |
struct user_regs_struct regs; |
41 |
int u_fpvalid; |
42 |
struct user_i387_struct i387; |
43 |
unsigned long int u_tsize; |
44 |
unsigned long int u_dsize; |
45 |
unsigned long int u_ssize; |
46 |
unsigned long start_code; |
47 |
unsigned long start_stack; |
48 |
long int signal; |
49 |
int reserved; |
50 |
struct user_pt_regs * u_ar0; |
51 |
struct user_i387_struct* u_fpstate; |
52 |
unsigned long magic; |
53 |
char u_comm[32]; |
54 |
int u_debugreg[8]; |
55 |
}; |
56 |
|
57 |
#else |
10 |
#include <asm/user.h> |
58 |
#include <asm/user.h> |
|
|
59 |
#endif |
60 |
|
61 |
/* end added structs */ |
11 |
|
62 |
|
12 |
#define INFERIOR_REGS_TYPE struct user_regs_struct |
63 |
#define INFERIOR_REGS_TYPE struct user_regs_struct |
13 |
#define INFERIOR_FPREGS_TYPE struct user_i387_struct |
64 |
#define INFERIOR_FPREGS_TYPE struct user_i387_struct |