Release 950122
[wine] / debugger / regpos.h
1
2 #ifdef linux
3 /* Register numbers */
4 #define  RN_GS                  0
5 #define  RN_FS                  1
6 #define  RN_ES                  2
7 #define  RN_DS                  3
8 #define  RN_EDI                 4
9 #define  RN_ESI                 5
10 #define  RN_EBP                 6
11 #define  RN_ESP                 7
12 #define  RN_EBX                 8
13 #define  RN_EDX                 9
14 #define  RN_ECX                 10
15 #define  RN_EAX                 11
16 #define  RN_TRAPNO              12
17 #define  RN_ERR                 13
18 #define  RN_EIP                 14
19 #define  RN_CS                  15
20 #define  RN_EFLAGS              16
21 #define  RN_ESP_AT_SIGNAL       17
22 #define  RN_SS                  18
23 #define  RN_I387                19
24 #define  RN_OLDMASK             20
25 #define  RN_CR2                 21
26 #endif
27
28 #if defined(__NetBSD__) || defined(__FreeBSD__)
29 #define  RN_OLDMASK             1
30 /* Register numbers */
31 #define  RN_ESP                 2
32 #define  RN_EBP                 3
33 #define  RN_ESP_AT_SIGNAL       4
34 #define  RN_EIP                 5
35 #define  RN_EFLAGS              6
36 #define  RN_ES                  7
37 #define  RN_DS                  8
38 #define  RN_CS                  9
39 #define  RN_SS                  10
40 #define  RN_EDI                 11
41 #define  RN_ESI                 12
42 #define  RN_EBX                 13
43 #define  RN_EDX                 14
44 #define  RN_ECX                 15
45 #define  RN_EAX                 16
46 /* NetBSD doesn't context switch gs or fs */
47 #define  SC_GS                  0x27
48 #define  SC_FS                  0x27
49 #endif
50
51 #ifdef linux
52 #define  SC_GS                  regval[RN_GS]
53 #define  SC_FS                  regval[RN_FS]
54 #define  I387                   regval[RN_I387]
55 #define  CR2                    regval[RN_CR2]
56 #endif
57 #define  SC_ES                  regval[RN_ES]
58 #define  SC_DS                  regval[RN_DS]
59 #define  SC_EDI(dbg_mask)       (regval[RN_EDI] & dbg_mask)
60 #define  SC_ESI(dbg_mask)       (regval[RN_ESI] & dbg_mask)
61 #define  SC_EBP(dbg_mask)       (regval[RN_EBP] & dbg_mask)
62 #define  SC_ESP(dbg_mask)       (regval[RN_ESP] & dbg_mask)
63 #define  SC_EBX(dbg_mask)       (regval[RN_EBX] & dbg_mask)
64 #define  SC_EDX(dbg_mask)       (regval[RN_EDX] & dbg_mask)
65 #define  SC_ECX(dbg_mask)       (regval[RN_ECX] & dbg_mask)
66 #define  SC_EAX(dbg_mask)       (regval[RN_EAX] & dbg_mask)
67 #define  SC_TRAPNO              regval[RN_TRAPNO]
68 #define  SC_ERR                 regval[RN_ERR]
69 #define  SC_EIP(dbg_mask)       (regval[RN_EIP] & dbg_mask)
70 #define  SC_CS                  regval[RN_CS]
71 #define  SC_EFLAGS              regval[RN_EFLAGS]
72 #define  ESP_AT_SIGNAL          regval[RN_ESP_AT_SIGNAL]
73 #define  SC_SS                  regval[RN_SS]
74 #define  OLDMASK                regval[RN_OLDMASK]