]>
Commit | Line | Data |
---|---|---|
c906108c SS |
1 | /* Parameters for native support on HP 9000 model 320, for GDB, the GNU debugger. |
2 | Copyright (C) 1986, 1987, 1989, 1992 Free Software Foundation, Inc. | |
3 | ||
c5aa993b | 4 | This file is part of GDB. |
c906108c | 5 | |
c5aa993b JM |
6 | This program is free software; you can redistribute it and/or modify |
7 | it under the terms of the GNU General Public License as published by | |
8 | the Free Software Foundation; either version 2 of the License, or | |
9 | (at your option) any later version. | |
c906108c | 10 | |
c5aa993b JM |
11 | This program is distributed in the hope that it will be useful, |
12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
14 | GNU General Public License for more details. | |
c906108c | 15 | |
c5aa993b JM |
16 | You should have received a copy of the GNU General Public License |
17 | along with this program; if not, write to the Free Software | |
18 | Foundation, Inc., 59 Temple Place - Suite 330, | |
19 | Boston, MA 02111-1307, USA. */ | |
c906108c SS |
20 | |
21 | /* Do implement the attach and detach commands. */ | |
22 | ||
23 | #define ATTACH_DETACH | |
24 | ||
25 | /* fetch_inferior_registers is in nat-hp300hpux.c. */ | |
26 | #define FETCH_INFERIOR_REGISTERS | |
27 | ||
28 | /* Get registers from a core file. The floating point stuff is just | |
29 | guesses. */ | |
30 | #define NEED_SYS_CORE_H | |
31 | #define REGISTER_U_ADDR(addr, blockend, regno) \ | |
32 | { \ | |
33 | if (regno < PS_REGNUM) \ | |
34 | addr = (int) (&((struct proc_regs *)(blockend))->d0 + regno); \ | |
35 | else if (regno == PS_REGNUM) \ | |
36 | addr = (int) ((char *) (&((struct proc_regs *)(blockend))->ps) - 2); \ | |
37 | else if (regno == PC_REGNUM) \ | |
38 | addr = (int) &((struct proc_regs *)(blockend))->pc; \ | |
39 | else if (regno < FPC_REGNUM) \ | |
40 | addr = (int) (((struct proc_regs *)(blockend))->mc68881 \ | |
41 | + ((regno) - FP0_REGNUM) / 2); \ | |
42 | else \ | |
43 | addr = (int) (((struct proc_regs *)(blockend))->p_float \ | |
44 | + (regno) - FPC_REGNUM); \ | |
45 | } | |
46 | ||
47 | /* HPUX 8.0, in its infinite wisdom, has chosen to prototype ptrace | |
48 | with five arguments, so programs written for normal ptrace lose. | |
49 | ||
50 | Idiots. | |
51 | ||
52 | (They should have just made it varadic). */ | |
53 | ||
54 | #define FIVE_ARG_PTRACE |