*** empty log message ***
[deliverable/binutils-gdb.git] / gdb / arm-linux-tdep.h
CommitLineData
cb587d83
DJ
1/* GNU/Linux on ARM target support, prototypes.
2
4c38e0a4 3 Copyright (C) 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
cb587d83
DJ
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
cb587d83
DJ
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/>. */
cb587d83
DJ
19
20struct regset;
21struct regcache;
22
cb587d83
DJ
23#define ARM_LINUX_SIZEOF_NWFPE (8 * FP_REGISTER_SIZE \
24 + 2 * INT_REGISTER_SIZE \
25 + 8 + INT_REGISTER_SIZE)
26
17c12639
KH
27/* The index to access CSPR in user_regs defined in GLIBC. */
28#define ARM_CPSR_GREGNUM 16
29
cb587d83
DJ
30/* Support for register format used by the NWFPE FPA emulator. Each
31 register takes three words, where either the first one, two, or
32 three hold a single, double, or extended precision value (depending
33 on the corresponding tag). The register set is eight registers,
34 followed by the fpsr and fpcr, followed by eight tag bytes, and a
35 final word flag which indicates whether NWFPE has been
36 initialized. */
37
38#define NWFPE_FPSR_OFFSET (8 * FP_REGISTER_SIZE)
39#define NWFPE_FPCR_OFFSET (NWFPE_FPSR_OFFSET + INT_REGISTER_SIZE)
40#define NWFPE_TAGS_OFFSET (NWFPE_FPCR_OFFSET + INT_REGISTER_SIZE)
41#define NWFPE_INITFLAG_OFFSET (NWFPE_TAGS_OFFSET + 8)
42
43void arm_linux_supply_gregset (const struct regset *regset,
44 struct regcache *regcache,
45 int regnum, const void *gregs_buf, size_t len);
46void arm_linux_collect_gregset (const struct regset *regset,
47 const struct regcache *regcache,
48 int regnum, void *gregs_buf, size_t len);
49
50void supply_nwfpe_register (struct regcache *regcache, int regno,
51 const gdb_byte *regs);
52void collect_nwfpe_register (const struct regcache *regcache, int regno,
53 gdb_byte *regs);
54
55void arm_linux_supply_nwfpe (const struct regset *regset,
56 struct regcache *regcache,
57 int regnum, const void *regs_buf, size_t len);
58void arm_linux_collect_nwfpe (const struct regset *regset,
59 const struct regcache *regcache,
60 int regnum, void *regs_buf, size_t len);
This page took 0.259082 seconds and 4 git commands to generate.