2004-03-07 Andrew Cagney <cagney@redhat.com>
[deliverable/binutils-gdb.git] / gdb / config / pa / tm-hppa64.h
CommitLineData
adf40b2e 1/* Parameters for execution on any Hewlett-Packard PA-RISC machine.
b6ba6518
KB
2 Copyright 1986, 1987, 1989, 1990, 1991, 1992, 1993, 1995, 1999, 2000
3 Free Software Foundation, Inc.
adf40b2e
JM
4
5 Contributed by the Center for Software Science at the
6 University of Utah (pa-gdb-bugs@cs.utah.edu).
7
8This file is part of GDB.
9
10This program is free software; you can redistribute it and/or modify
11it under the terms of the GNU General Public License as published by
12the Free Software Foundation; either version 2 of the License, or
13(at your option) any later version.
14
15This program is distributed in the hope that it will be useful,
16but WITHOUT ANY WARRANTY; without even the implied warranty of
17MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18GNU General Public License for more details.
19
20You should have received a copy of the GNU General Public License
21along with this program; if not, write to the Free Software
22Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
23
24/* PA 64-bit specific definitions. Override those which are in
25 tm-hppa.h */
26
4a4b3fed
AC
27struct frame_info;
28
adf40b2e
JM
29/* jimb: this must go. I'm just using it to disable code I haven't
30 gotten working yet. */
31#define GDB_TARGET_IS_HPPA_20W
32
a7e9a47e
AC
33/* NOTE: cagney/2003-07-27: Using CC='cc +DA2.0W -Ae' configure
34 hppa64-hp-hpux11.00; GDB managed to build / start / break main /
35 run with multi-arch enabled. Not sure about much else as there
36 appears to be an unrelated problem in the SOM symbol table reader
d84defb1 37 causing GDB to lose line number information. Since prior to this
a7e9a47e
AC
38 switch and a other recent tweaks, 64 bit PA hadn't been building
39 for some months, this is probably the lesser of several evils. */
61995b3b 40
7be570e7
JM
41#include "pa/tm-hppah.h"
42
adf40b2e 43#undef FP4_REGNUM
adf40b2e 44#define FP4_REGNUM 68
3ff7cf9e 45#define AP_REGNUM 29 /* Argument Pointer Register */
adf40b2e 46#define DP_REGNUM 27
adf40b2e 47#define FP5_REGNUM 70
adf40b2e
JM
48#define SR5_REGNUM 48
49
adf40b2e 50
adf40b2e
JM
51/* For a number of horrible reasons we may have to adjust the location
52 of variables on the stack. Ugh. jimb: why? */
53#define HPREAD_ADJUST_STACK_ADDRESS(ADDR) hpread_adjust_stack_address(ADDR)
54
a14ed312 55extern int hpread_adjust_stack_address (CORE_ADDR);
adf40b2e
JM
56
57
58/* jimb: omitted dynamic linking stuff here */
59
7be570e7
JM
60/* The PA64 ABI reserves 64 bytes of stack space for outgoing register
61 parameters. */
62#undef REG_PARM_STACK_SPACE
63#define REG_PARM_STACK_SPACE 64
64
c2c6d25f
JM
65/* Use the 64-bit calling conventions designed for the PA2.0 in wide mode. */
66#define PA20W_CALLING_CONVENTIONS
53a5351d 67
adf40b2e
JM
68#undef FUNC_LDIL_OFFSET
69#undef FUNC_LDO_OFFSET
70#undef SR4EXPORT_LDIL_OFFSET
71#undef SR4EXPORT_LDO_OFFSET
7be570e7 72
adf40b2e 73#undef FRAME_SAVED_PC_IN_SIGTRAMP
3ff7cf9e
JB
74extern void hppa64_hpux_frame_saved_pc_in_sigtramp (struct frame_info *fi,
75 CORE_ADDR *tmp);
adf40b2e 76#define FRAME_SAVED_PC_IN_SIGTRAMP(FRAME, TMP) \
3ff7cf9e 77 hppa64_hpux_frame_saved_pc_in_sigtramp (FRAME, TMP)
adf40b2e
JM
78
79#undef FRAME_BASE_BEFORE_SIGTRAMP
3ff7cf9e
JB
80extern void hppa64_hpux_frame_base_before_sigtramp (struct frame_info *fi,
81 CORE_ADDR *tmp);
adf40b2e 82#define FRAME_BASE_BEFORE_SIGTRAMP(FRAME, TMP) \
3ff7cf9e 83 hppa64_hpux_frame_base_before_sigtramp (FRAME, TMP)
adf40b2e
JM
84
85#undef FRAME_FIND_SAVED_REGS_IN_SIGTRAMP
3ff7cf9e
JB
86extern void hppa64_hpux_frame_find_saved_regs_in_sigtramp
87 (struct frame_info *fi, CORE_ADDR *fsr);
adf40b2e 88#define FRAME_FIND_SAVED_REGS_IN_SIGTRAMP(FRAME, FSR) \
3ff7cf9e 89 hppa64_hpux_frame_find_saved_regs_in_sigtramp (FRAME, FSR)
adf40b2e
JM
90
91/* jimb: omitted purify call support */
This page took 0.287779 seconds and 4 git commands to generate.