gdb: add target_ops::supports_displaced_step
[deliverable/binutils-gdb.git] / gdb / alpha-bsd-tdep.c
CommitLineData
8fe7c54b
MK
1/* Common target dependent code Alpha BSD's.
2
b811d2c2 3 Copyright (C) 2000-2020 Free Software Foundation, Inc.
12bcb0fe
JT
4
5 This file is part of GDB.
6
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
a9762ec7 9 the Free Software Foundation; either version 3 of the License, or
12bcb0fe
JT
10 (at your option) any later version.
11
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.
16
17 You should have received a copy of the GNU General Public License
a9762ec7 18 along with this program. If not, see <http://www.gnu.org/licenses/>. */
12bcb0fe
JT
19
20#include "defs.h"
4de283e4 21#include "regcache.h"
12bcb0fe 22
d55e5aa6 23#include "alpha-tdep.h"
4de283e4 24#include "alpha-bsd-tdep.h"
12bcb0fe 25
12bcb0fe
JT
26/* Conviently, GDB uses the same register numbering as the
27 ptrace register structure used by BSD on Alpha. */
28
29void
390c1522 30alphabsd_supply_reg (struct regcache *regcache, const char *regs, int regno)
12bcb0fe 31{
98a8e1e5 32 /* PC is at slot 32; UNIQUE not present. */
390c1522 33 alpha_supply_int_regs (regcache, regno, regs, regs + 31 * 8, NULL);
12bcb0fe
JT
34}
35
36void
390c1522 37alphabsd_fill_reg (const struct regcache *regcache, char *regs, int regno)
12bcb0fe 38{
98a8e1e5 39 /* PC is at slot 32; UNIQUE not present. */
390c1522 40 alpha_fill_int_regs (regcache, regno, regs, regs + 31 * 8, NULL);
12bcb0fe
JT
41}
42
43void
0963b4bd
MS
44alphabsd_supply_fpreg (struct regcache *regcache,
45 const char *fpregs, int regno)
12bcb0fe 46{
98a8e1e5 47 /* FPCR is at slot 33; slot 32 unused. */
390c1522 48 alpha_supply_fp_regs (regcache, regno, fpregs, fpregs + 32 * 8);
12bcb0fe
JT
49}
50
51void
390c1522 52alphabsd_fill_fpreg (const struct regcache *regcache, char *fpregs, int regno)
12bcb0fe 53{
98a8e1e5 54 /* FPCR is at slot 33; slot 32 unused. */
390c1522 55 alpha_fill_fp_regs (regcache, regno, fpregs, fpregs + 32 * 8);
12bcb0fe 56}
This page took 1.087933 seconds and 4 git commands to generate.