1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ 2 #ifndef _ASM_IA64_PTRACE_OFFSETS_H 3 #define _ASM_IA64_PTRACE_OFFSETS_H 4 5 /* 6 * Copyright (C) 1999, 2003 Hewlett-Packard Co 7 * David Mosberger-Tang <davidm@hpl.hp.com> 8 */ 9 /* 10 * The "uarea" that can be accessed via PEEKUSER and POKEUSER is a 11 * virtual structure that would have the following definition: 12 * 13 * struct uarea { 14 * struct ia64_fpreg fph[96]; // f32-f127 15 * unsigned long nat_bits; 16 * unsigned long empty1; 17 * struct ia64_fpreg f2; // f2-f5 18 * : 19 * struct ia64_fpreg f5; 20 * struct ia64_fpreg f10; // f10-f31 21 * : 22 * struct ia64_fpreg f31; 23 * unsigned long r4; // r4-r7 24 * : 25 * unsigned long r7; 26 * unsigned long b1; // b1-b5 27 * : 28 * unsigned long b5; 29 * unsigned long ar_ec; 30 * unsigned long ar_lc; 31 * unsigned long empty2[5]; 32 * unsigned long cr_ipsr; 33 * unsigned long cr_iip; 34 * unsigned long cfm; 35 * unsigned long ar_unat; 36 * unsigned long ar_pfs; 37 * unsigned long ar_rsc; 38 * unsigned long ar_rnat; 39 * unsigned long ar_bspstore; 40 * unsigned long pr; 41 * unsigned long b6; 42 * unsigned long ar_bsp; 43 * unsigned long r1; 44 * unsigned long r2; 45 * unsigned long r3; 46 * unsigned long r12; 47 * unsigned long r13; 48 * unsigned long r14; 49 * unsigned long r15; 50 * unsigned long r8; 51 * unsigned long r9; 52 * unsigned long r10; 53 * unsigned long r11; 54 * unsigned long r16; 55 * : 56 * unsigned long r31; 57 * unsigned long ar_ccv; 58 * unsigned long ar_fpsr; 59 * unsigned long b0; 60 * unsigned long b7; 61 * unsigned long f6; 62 * unsigned long f7; 63 * unsigned long f8; 64 * unsigned long f9; 65 * unsigned long ar_csd; 66 * unsigned long ar_ssd; 67 * unsigned long rsvd1[710]; 68 * unsigned long dbr[8]; 69 * unsigned long rsvd2[504]; 70 * unsigned long ibr[8]; 71 * unsigned long rsvd3[504]; 72 * unsigned long pmd[4]; 73 * } 74 */ 75 76 /* fph: */ 77 #define PT_F32 0x0000 78 #define PT_F33 0x0010 79 #define PT_F34 0x0020 80 #define PT_F35 0x0030 81 #define PT_F36 0x0040 82 #define PT_F37 0x0050 83 #define PT_F38 0x0060 84 #define PT_F39 0x0070 85 #define PT_F40 0x0080 86 #define PT_F41 0x0090 87 #define PT_F42 0x00a0 88 #define PT_F43 0x00b0 89 #define PT_F44 0x00c0 90 #define PT_F45 0x00d0 91 #define PT_F46 0x00e0 92 #define PT_F47 0x00f0 93 #define PT_F48 0x0100 94 #define PT_F49 0x0110 95 #define PT_F50 0x0120 96 #define PT_F51 0x0130 97 #define PT_F52 0x0140 98 #define PT_F53 0x0150 99 #define PT_F54 0x0160 100 #define PT_F55 0x0170 101 #define PT_F56 0x0180 102 #define PT_F57 0x0190 103 #define PT_F58 0x01a0 104 #define PT_F59 0x01b0 105 #define PT_F60 0x01c0 106 #define PT_F61 0x01d0 107 #define PT_F62 0x01e0 108 #define PT_F63 0x01f0 109 #define PT_F64 0x0200 110 #define PT_F65 0x0210 111 #define PT_F66 0x0220 112 #define PT_F67 0x0230 113 #define PT_F68 0x0240 114 #define PT_F69 0x0250 115 #define PT_F70 0x0260 116 #define PT_F71 0x0270 117 #define PT_F72 0x0280 118 #define PT_F73 0x0290 119 #define PT_F74 0x02a0 120 #define PT_F75 0x02b0 121 #define PT_F76 0x02c0 122 #define PT_F77 0x02d0 123 #define PT_F78 0x02e0 124 #define PT_F79 0x02f0 125 #define PT_F80 0x0300 126 #define PT_F81 0x0310 127 #define PT_F82 0x0320 128 #define PT_F83 0x0330 129 #define PT_F84 0x0340 130 #define PT_F85 0x0350 131 #define PT_F86 0x0360 132 #define PT_F87 0x0370 133 #define PT_F88 0x0380 134 #define PT_F89 0x0390 135 #define PT_F90 0x03a0 136 #define PT_F91 0x03b0 137 #define PT_F92 0x03c0 138 #define PT_F93 0x03d0 139 #define PT_F94 0x03e0 140 #define PT_F95 0x03f0 141 #define PT_F96 0x0400 142 #define PT_F97 0x0410 143 #define PT_F98 0x0420 144 #define PT_F99 0x0430 145 #define PT_F100 0x0440 146 #define PT_F101 0x0450 147 #define PT_F102 0x0460 148 #define PT_F103 0x0470 149 #define PT_F104 0x0480 150 #define PT_F105 0x0490 151 #define PT_F106 0x04a0 152 #define PT_F107 0x04b0 153 #define PT_F108 0x04c0 154 #define PT_F109 0x04d0 155 #define PT_F110 0x04e0 156 #define PT_F111 0x04f0 157 #define PT_F112 0x0500 158 #define PT_F113 0x0510 159 #define PT_F114 0x0520 160 #define PT_F115 0x0530 161 #define PT_F116 0x0540 162 #define PT_F117 0x0550 163 #define PT_F118 0x0560 164 #define PT_F119 0x0570 165 #define PT_F120 0x0580 166 #define PT_F121 0x0590 167 #define PT_F122 0x05a0 168 #define PT_F123 0x05b0 169 #define PT_F124 0x05c0 170 #define PT_F125 0x05d0 171 #define PT_F126 0x05e0 172 #define PT_F127 0x05f0 173 174 #define PT_NAT_BITS 0x0600 175 176 #define PT_F2 0x0610 177 #define PT_F3 0x0620 178 #define PT_F4 0x0630 179 #define PT_F5 0x0640 180 #define PT_F10 0x0650 181 #define PT_F11 0x0660 182 #define PT_F12 0x0670 183 #define PT_F13 0x0680 184 #define PT_F14 0x0690 185 #define PT_F15 0x06a0 186 #define PT_F16 0x06b0 187 #define PT_F17 0x06c0 188 #define PT_F18 0x06d0 189 #define PT_F19 0x06e0 190 #define PT_F20 0x06f0 191 #define PT_F21 0x0700 192 #define PT_F22 0x0710 193 #define PT_F23 0x0720 194 #define PT_F24 0x0730 195 #define PT_F25 0x0740 196 #define PT_F26 0x0750 197 #define PT_F27 0x0760 198 #define PT_F28 0x0770 199 #define PT_F29 0x0780 200 #define PT_F30 0x0790 201 #define PT_F31 0x07a0 202 #define PT_R4 0x07b0 203 #define PT_R5 0x07b8 204 #define PT_R6 0x07c0 205 #define PT_R7 0x07c8 206 207 #define PT_B1 0x07d8 208 #define PT_B2 0x07e0 209 #define PT_B3 0x07e8 210 #define PT_B4 0x07f0 211 #define PT_B5 0x07f8 212 213 #define PT_AR_EC 0x0800 214 #define PT_AR_LC 0x0808 215 216 #define PT_CR_IPSR 0x0830 217 #define PT_CR_IIP 0x0838 218 #define PT_CFM 0x0840 219 #define PT_AR_UNAT 0x0848 220 #define PT_AR_PFS 0x0850 221 #define PT_AR_RSC 0x0858 222 #define PT_AR_RNAT 0x0860 223 #define PT_AR_BSPSTORE 0x0868 224 #define PT_PR 0x0870 225 #define PT_B6 0x0878 226 #define PT_AR_BSP 0x0880 /* note: this points to the *end* of the backing store! */ 227 #define PT_R1 0x0888 228 #define PT_R2 0x0890 229 #define PT_R3 0x0898 230 #define PT_R12 0x08a0 231 #define PT_R13 0x08a8 232 #define PT_R14 0x08b0 233 #define PT_R15 0x08b8 234 #define PT_R8 0x08c0 235 #define PT_R9 0x08c8 236 #define PT_R10 0x08d0 237 #define PT_R11 0x08d8 238 #define PT_R16 0x08e0 239 #define PT_R17 0x08e8 240 #define PT_R18 0x08f0 241 #define PT_R19 0x08f8 242 #define PT_R20 0x0900 243 #define PT_R21 0x0908 244 #define PT_R22 0x0910 245 #define PT_R23 0x0918 246 #define PT_R24 0x0920 247 #define PT_R25 0x0928 248 #define PT_R26 0x0930 249 #define PT_R27 0x0938 250 #define PT_R28 0x0940 251 #define PT_R29 0x0948 252 #define PT_R30 0x0950 253 #define PT_R31 0x0958 254 #define PT_AR_CCV 0x0960 255 #define PT_AR_FPSR 0x0968 256 #define PT_B0 0x0970 257 #define PT_B7 0x0978 258 #define PT_F6 0x0980 259 #define PT_F7 0x0990 260 #define PT_F8 0x09a0 261 #define PT_F9 0x09b0 262 #define PT_AR_CSD 0x09c0 263 #define PT_AR_SSD 0x09c8 264 265 #define PT_DBR 0x2000 /* data breakpoint registers */ 266 #define PT_IBR 0x3000 /* instruction breakpoint registers */ 267 #define PT_PMD 0x4000 /* performance monitoring counters */ 268 269 #endif /* _ASM_IA64_PTRACE_OFFSETS_H */ 270