198944Sobrien/* Register protocol definition structures for the GNU Debugger
298944Sobrien   Copyright 2001, 2002 Free Software Foundation, Inc.
398944Sobrien
498944Sobrien   This file is part of GDB.
598944Sobrien
698944Sobrien   This program is free software; you can redistribute it and/or modify
798944Sobrien   it under the terms of the GNU General Public License as published by
898944Sobrien   the Free Software Foundation; either version 2 of the License, or
998944Sobrien   (at your option) any later version.
1098944Sobrien
1198944Sobrien   This program is distributed in the hope that it will be useful,
1298944Sobrien   but WITHOUT ANY WARRANTY; without even the implied warranty of
1398944Sobrien   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
1498944Sobrien   GNU General Public License for more details.
1598944Sobrien
1698944Sobrien   You should have received a copy of the GNU General Public License
1798944Sobrien   along with this program; if not, write to the Free Software
1898944Sobrien   Foundation, Inc., 59 Temple Place - Suite 330,
1998944Sobrien   Boston, MA 02111-1307, USA.  */
2098944Sobrien
2198944Sobrien#ifndef REGDEF_H
2298944Sobrien#define REGDEF_H
2398944Sobrien
2498944Sobrienstruct reg
2598944Sobrien{
2698944Sobrien  /* The name of this register - NULL for pad entries.  */
2798944Sobrien  const char *name;
2898944Sobrien
2998944Sobrien  /* At the moment, both of the following bit counts must be divisible
3098944Sobrien     by eight (to match the representation as two hex digits) and divisible
3198944Sobrien     by the size of a byte (to match the layout of each register in
3298944Sobrien     memory).  */
3398944Sobrien
3498944Sobrien  /* The offset (in bits) of the value of this register in the buffer.  */
3598944Sobrien  int offset;
3698944Sobrien
3798944Sobrien  /* The size (in bits) of the value of this register, as transmitted.  */
3898944Sobrien  int size;
3998944Sobrien};
4098944Sobrien
4198944Sobrien/* Set the current remote protocol and register cache according to the array
4298944Sobrien   ``regs'', with ``n'' elements.  */
4398944Sobrien
4498944Sobrienvoid set_register_cache (struct reg *regs, int n);
4598944Sobrien
4698944Sobrien#endif /* REGDEF_H */
47