OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-old/] [gdb-7.1/] [gdb/] [regset.h] - Diff between revs 834 and 842

Go to most recent revision | Only display areas with differences | Details | Blame | View Log

Rev 834 Rev 842
/* Manage register sets.
/* Manage register sets.
 
 
   Copyright (C) 2003, 2004, 2007, 2008, 2009, 2010
   Copyright (C) 2003, 2004, 2007, 2008, 2009, 2010
   Free Software Foundation, Inc.
   Free Software Foundation, Inc.
 
 
   This file is part of GDB.
   This file is part of GDB.
 
 
   This program is free software; you can redistribute it and/or modify
   This program is free software; you can redistribute it and/or modify
   it under the terms of the GNU General Public License as published by
   it under the terms of the GNU General Public License as published by
   the Free Software Foundation; either version 3 of the License, or
   the Free Software Foundation; either version 3 of the License, or
   (at your option) any later version.
   (at your option) any later version.
 
 
   This program is distributed in the hope that it will be useful,
   This program is distributed in the hope that it will be useful,
   but WITHOUT ANY WARRANTY; without even the implied warranty of
   but WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   GNU General Public License for more details.
   GNU General Public License for more details.
 
 
   You should have received a copy of the GNU General Public License
   You should have received a copy of the GNU General Public License
   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
 
 
#ifndef REGSET_H
#ifndef REGSET_H
#define REGSET_H 1
#define REGSET_H 1
 
 
struct gdbarch;
struct gdbarch;
struct regcache;
struct regcache;
 
 
/* Data structure for the supported register notes in a core file.  */
/* Data structure for the supported register notes in a core file.  */
struct core_regset_section
struct core_regset_section
{
{
  const char *sect_name;
  const char *sect_name;
  int size;
  int size;
  const char *human_name;
  const char *human_name;
};
};
 
 
/* Data structure describing a register set.  */
/* Data structure describing a register set.  */
 
 
typedef void (supply_regset_ftype) (const struct regset *, struct regcache *,
typedef void (supply_regset_ftype) (const struct regset *, struct regcache *,
                                    int, const void *, size_t);
                                    int, const void *, size_t);
typedef void (collect_regset_ftype) (const struct regset *,
typedef void (collect_regset_ftype) (const struct regset *,
                                     const struct regcache *,
                                     const struct regcache *,
                                     int, void *, size_t);
                                     int, void *, size_t);
 
 
struct regset
struct regset
{
{
  /* Data pointer for private use by the methods below, presumably
  /* Data pointer for private use by the methods below, presumably
     providing some sort of description of the register set.  */
     providing some sort of description of the register set.  */
  const void *descr;
  const void *descr;
 
 
  /* Function supplying values in a register set to a register cache.  */
  /* Function supplying values in a register set to a register cache.  */
  supply_regset_ftype *supply_regset;
  supply_regset_ftype *supply_regset;
 
 
  /* Function collecting values in a register set from a register cache.  */
  /* Function collecting values in a register set from a register cache.  */
  collect_regset_ftype *collect_regset;
  collect_regset_ftype *collect_regset;
 
 
  /* Architecture associated with the register set.  */
  /* Architecture associated with the register set.  */
  struct gdbarch *arch;
  struct gdbarch *arch;
};
};
 
 
/* Allocate a fresh 'struct regset' whose supply_regset function is
/* Allocate a fresh 'struct regset' whose supply_regset function is
   SUPPLY_REGSET, and whose collect_regset function is COLLECT_REGSET.
   SUPPLY_REGSET, and whose collect_regset function is COLLECT_REGSET.
   If the regset has no collect_regset function, pass NULL for
   If the regset has no collect_regset function, pass NULL for
   COLLECT_REGSET.
   COLLECT_REGSET.
 
 
   The object returned is allocated on ARCH's obstack.  */
   The object returned is allocated on ARCH's obstack.  */
 
 
extern struct regset *regset_alloc (struct gdbarch *arch,
extern struct regset *regset_alloc (struct gdbarch *arch,
                                    supply_regset_ftype *supply_regset,
                                    supply_regset_ftype *supply_regset,
                                    collect_regset_ftype *collect_regset);
                                    collect_regset_ftype *collect_regset);
 
 
#endif /* regset.h */
#endif /* regset.h */
 
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.