ronnie
2022-10-23 4bf14332546635f50a1bf7f3df4c0a8e29643280
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
/* Linux-specific definitions: */
 
/* Define various structure offsets to simplify cross-compilation.  */
 
/* The first three 64-bit words in a signal frame contain the signal
   number, siginfo pointer, and sigcontext pointer passed to the
   signal handler.  We use this to locate the sigcontext pointer.  */
 
#define LINUX_SIGFRAME_ARG2_OFF    0x10
 
#define LINUX_SC_FLAGS_OFF    0x000
#define LINUX_SC_NAT_OFF    0x008
#define LINUX_SC_STACK_OFF    0x010
#define LINUX_SC_IP_OFF        0x028
#define LINUX_SC_CFM_OFF    0x030
#define LINUX_SC_UM_OFF        0x038
#define LINUX_SC_AR_RSC_OFF    0x040
#define LINUX_SC_AR_BSP_OFF    0x048
#define LINUX_SC_AR_RNAT_OFF    0x050
#define LINUX_SC_AR_CCV        0x058
#define LINUX_SC_AR_UNAT_OFF    0x060
#define LINUX_SC_AR_FPSR_OFF    0x068
#define LINUX_SC_AR_PFS_OFF    0x070
#define LINUX_SC_AR_LC_OFF    0x078
#define LINUX_SC_PR_OFF        0x080
#define LINUX_SC_BR_OFF        0x088
#define LINUX_SC_GR_OFF        0x0c8
#define LINUX_SC_FR_OFF        0x1d0
#define LINUX_SC_RBS_BASE_OFF    0x9d0
#define LINUX_SC_LOADRS_OFF    0x9d8
#define LINUX_SC_AR_CSD_OFF    0x9e0
#define LINUX_SC_AR_SSD_OFF    0x9e8
#define LINUX_SC_MASK        0xa50
 
/* Layout of old Linux kernel interrupt frame (struct pt_regs).  */
 
#define LINUX_OLD_PT_IPSR_OFF    0x000
#define LINUX_OLD_PT_IIP_OFF    0x008
#define LINUX_OLD_PT_IFS_OFF    0x010
#define LINUX_OLD_PT_UNAT_OFF    0x018
#define LINUX_OLD_PT_PFS_OFF    0x020
#define LINUX_OLD_PT_RSC_OFF    0x028
#define LINUX_OLD_PT_RNAT_OFF    0x030
#define LINUX_OLD_PT_BSPSTORE_OFF 0x038
#define LINUX_OLD_PT_PR_OFF    0x040
#define LINUX_OLD_PT_B6_OFF    0x048
#define LINUX_OLD_PT_LOADRS_OFF    0x050
#define LINUX_OLD_PT_R1_OFF    0x058
#define LINUX_OLD_PT_R2_OFF    0x060
#define LINUX_OLD_PT_R3_OFF    0x068
#define LINUX_OLD_PT_R12_OFF    0x070
#define LINUX_OLD_PT_R13_OFF    0x078
#define LINUX_OLD_PT_R14_OFF    0x080
#define LINUX_OLD_PT_R15_OFF    0x088
#define LINUX_OLD_PT_R8_OFF    0x090
#define LINUX_OLD_PT_R9_OFF    0x098
#define LINUX_OLD_PT_R10_OFF    0x0a0
#define LINUX_OLD_PT_R11_OFF    0x0a8
#define LINUX_OLD_PT_R16_OFF    0x0b0
#define LINUX_OLD_PT_R17_OFF    0x0b8
#define LINUX_OLD_PT_R18_OFF    0x0c0
#define LINUX_OLD_PT_R19_OFF    0x0c8
#define LINUX_OLD_PT_R20_OFF    0x0d0
#define LINUX_OLD_PT_R21_OFF    0x0d8
#define LINUX_OLD_PT_R22_OFF    0x0e0
#define LINUX_OLD_PT_R23_OFF    0x0e8
#define LINUX_OLD_PT_R24_OFF    0x0f0
#define LINUX_OLD_PT_R25_OFF    0x0f8
#define LINUX_OLD_PT_R26_OFF    0x100
#define LINUX_OLD_PT_R27_OFF    0x108
#define LINUX_OLD_PT_R28_OFF    0x110
#define LINUX_OLD_PT_R29_OFF    0x118
#define LINUX_OLD_PT_R30_OFF    0x120
#define LINUX_OLD_PT_R31_OFF    0x128
#define LINUX_OLD_PT_CCV_OFF    0x130
#define LINUX_OLD_PT_FPSR_OFF    0x138
#define LINUX_OLD_PT_B0_OFF    0x140
#define LINUX_OLD_PT_B7_OFF    0x148
#define LINUX_OLD_PT_F6_OFF    0x150
#define LINUX_OLD_PT_F7_OFF    0x160
#define LINUX_OLD_PT_F8_OFF    0x170
#define LINUX_OLD_PT_F9_OFF    0x180
 
/* Layout of new Linux kernel interrupt frame (struct pt_regs).  */
 
#define LINUX_PT_B6_OFF        0
#define LINUX_PT_B7_OFF        8
#define LINUX_PT_CSD_OFF    16
#define LINUX_PT_SSD_OFF    24
#define LINUX_PT_R8_OFF        32
#define LINUX_PT_R9_OFF        40
#define LINUX_PT_R10_OFF    48
#define LINUX_PT_R11_OFF    56
#define LINUX_PT_IPSR_OFF    64
#define LINUX_PT_IIP_OFF    72
#define LINUX_PT_IFS_OFF    80
#define LINUX_PT_UNAT_OFF    88
#define LINUX_PT_PFS_OFF    96
#define LINUX_PT_RSC_OFF    104
#define LINUX_PT_RNAT_OFF    112
#define LINUX_PT_BSPSTORE_OFF    120
#define LINUX_PT_PR_OFF        128
#define LINUX_PT_B0_OFF        136
#define LINUX_PT_LOADRS_OFF    144
#define LINUX_PT_R1_OFF        152
#define LINUX_PT_R12_OFF    160
#define LINUX_PT_R13_OFF    168
#define LINUX_PT_FPSR_OFF    176
#define LINUX_PT_R15_OFF    184
#define LINUX_PT_R14_OFF    192
#define LINUX_PT_R2_OFF        200
#define LINUX_PT_R3_OFF        208
#define LINUX_PT_R16_OFF    216
#define LINUX_PT_R17_OFF    224
#define LINUX_PT_R18_OFF    232
#define LINUX_PT_R19_OFF    240
#define LINUX_PT_R20_OFF    248
#define LINUX_PT_R21_OFF    256
#define LINUX_PT_R22_OFF    264
#define LINUX_PT_R23_OFF    272
#define LINUX_PT_R24_OFF    280
#define LINUX_PT_R25_OFF    288
#define LINUX_PT_R26_OFF    296
#define LINUX_PT_R27_OFF    304
#define LINUX_PT_R28_OFF    312
#define LINUX_PT_R29_OFF    320
#define LINUX_PT_R30_OFF    328
#define LINUX_PT_R31_OFF    336
#define LINUX_PT_CCV_OFF    344
#define LINUX_PT_F6_OFF        352
#define LINUX_PT_F7_OFF        368
#define LINUX_PT_F8_OFF        384
#define LINUX_PT_F9_OFF        400
#define LINUX_PT_F10_OFF    416
#define LINUX_PT_F11_OFF    432
 
#define LINUX_PT_P_NONSYS    5    /* must match pNonSys in entry.h */