1 /* Common target dependent code for GDB on Alpha systems running BSD.
2 Copyright (C) 2000, 2001, 2002 Free Software Foundation, Inc.
4 This file is part of GDB.
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.
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.
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., 51 Franklin Street, Fifth Floor,
19 Boston, MA 02110-1301, USA. */
24 #include "alpha-tdep.h"
25 #include "alphabsd-tdep.h"
27 /* Conviently, GDB uses the same register numbering as the
28 ptrace register structure used by BSD on Alpha. */
31 alphabsd_supply_reg (struct regcache
*regcache
, const char *regs
, int regno
)
33 /* PC is at slot 32; UNIQUE not present. */
34 alpha_supply_int_regs (regcache
, regno
, regs
, regs
+ 31 * 8, NULL
);
38 alphabsd_fill_reg (const struct regcache
*regcache
, char *regs
, int regno
)
40 /* PC is at slot 32; UNIQUE not present. */
41 alpha_fill_int_regs (regcache
, regno
, regs
, regs
+ 31 * 8, NULL
);
45 alphabsd_supply_fpreg (struct regcache
*regcache
, const char *fpregs
, int regno
)
47 /* FPCR is at slot 33; slot 32 unused. */
48 alpha_supply_fp_regs (regcache
, regno
, fpregs
, fpregs
+ 32 * 8);
52 alphabsd_fill_fpreg (const struct regcache
*regcache
, char *fpregs
, int regno
)
54 /* FPCR is at slot 33; slot 32 unused. */
55 alpha_fill_fp_regs (regcache
, regno
, fpregs
, fpregs
+ 32 * 8);