1/* Target-dependent code for OpenBSD/powerpc.
2
3   Copyright (C) 2004, 2006, 2007 Free Software Foundation, Inc.
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
9   the Free Software Foundation; either version 3 of the License, or
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
18   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
19
20#ifndef PPCOBSD_TDEP_H
21#define PPCOBSD_TDEP_H
22
23#include <stddef.h>
24
25struct regset;
26struct regcache;
27
28/* Register offsets for OpenBSD/powerpc.  */
29extern struct ppc_reg_offsets ppcobsd_reg_offsets;
30extern struct ppc_reg_offsets ppcobsd_fpreg_offsets;
31
32/* Register sets for OpenBSD/powerpc.  */
33extern struct regset ppcobsd_gregset;
34extern struct regset ppcobsd_fpregset;
35
36
37/* Supply register REGNUM in the general-purpose register set REGSET
38   from the buffer specified by GREGS and LEN to register cache
39   REGCACHE.  If REGNUM is -1, do this for all registers in REGSET.  */
40
41extern void ppcobsd_supply_gregset (const struct regset *regset,
42				    struct regcache *regcache, int regnum,
43				    const void *gregs, size_t len);
44
45/* Collect register REGNUM in the general-purpose register set
46   REGSET. from register cache REGCACHE into the buffer specified by
47   GREGS and LEN.  If REGNUM is -1, do this for all registers in
48   REGSET.  */
49
50extern void ppcobsd_collect_gregset (const struct regset *regset,
51				     const struct regcache *regcache,
52				     int regnum, void *gregs, size_t len);
53
54#endif /* ppcobsd-tdep.h */
55