1 /* Target-specific definition for a Renesas Super-H.
2 Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
3 2003, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
5 This file is part of GDB.
7 This program is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation; either version 3 of the License, or
10 (at your option) any later version.
12 This program is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
17 You should have received a copy of the GNU General Public License
18 along with this program. If not, see <http://www.gnu.org/licenses/>. */
23 /* Contributed by Steve Chamberlain sac@cygnus.com */
25 /* Registers for all SH variants. Used also by sh3-rom.c. */
29 STRUCT_RETURN_REGNUM = 2,
41 /* Floating point registers */
44 FLOAT_ARG0_REGNUM = 29,
45 FLOAT_ARGLAST_REGNUM = 36,
47 /* sh3,sh4 registers */
65 DSP_R0_BANK_REGNUM = 51,
66 DSP_R7_BANK_REGNUM = 58,
78 PSEUDO_BANK_REGNUM = 67,
79 /* Floating point pseudo registers */
86 extern gdbarch_init_ftype sh64_gdbarch_init;
87 extern void sh64_show_regs (struct frame_info *);
89 /* This structure describes a register in a core-file. */
90 struct sh_corefile_regmap
98 /* Non-NULL when debugging from a core file. Provides the offset
99 where each general-purpose register is stored inside the associated
100 core file section. */
101 struct sh_corefile_regmap *core_gregmap;
102 /* Non-NULL when debugging from a core file and when FP registers are
103 available. Provides the offset where each FP register is stored
104 inside the associated core file section. */
105 struct sh_corefile_regmap *core_fpregmap;
108 extern struct regset sh_corefile_gregset;
110 void sh_corefile_supply_regset (const struct regset *regset,
111 struct regcache *regcache,
112 int regnum, const void *regs, size_t len);
113 void sh_corefile_collect_regset (const struct regset *regset,
114 const struct regcache *regcache,
115 int regnum, void *regs, size_t len);
116 #endif /* SH_TDEP_H */