1 /* 2 * Mach Operating System 3 * Copyright (c) 1991,1990 Carnegie Mellon University 4 * All Rights Reserved. 5 * 6 * Permission to use, copy, modify and distribute this software and its 7 * documentation is hereby granted, provided that both the copyright 8 * notice and this permission notice appear in all copies of the 9 * software, derivative works or modified versions, and any portions 10 * thereof, and that both notices appear in supporting documentation. 11 * 12 * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS 13 * CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR 14 * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE. 15 * 16 * Carnegie Mellon requests users of this software to return to 17 * 18 * Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU 19 * School of Computer Science 20 * Carnegie Mellon University 21 * Pittsburgh PA 15213-3890 22 * 23 * any improvements or extensions that they make and grant Carnegie the 24 * rights to redistribute these changes. 25 */ 26 /* 27 * $Id: db_variables.h,v 1.2 1993/05/20 03:39:37 cgd Exp $ 28 * 29 * HISTORY 30 * $Log: db_variables.h,v $ 31 * Revision 1.2 1993/05/20 03:39:37 cgd 32 * add explicit rcs id 33 * 34 * Revision 1.1.1.1 1993/03/21 09:46:27 cgd 35 * initial import of 386bsd-0.1 sources 36 * 37 * Revision 1.1 1992/03/25 21:45:35 pace 38 * Initial revision 39 * 40 * Revision 2.3 91/02/05 17:07:23 mrt 41 * Changed to new Mach copyright 42 * [91/01/31 16:19:54 mrt] 43 * 44 * Revision 2.2 90/08/27 21:53:40 dbg 45 * Modularized typedef name. Documented the calling sequence of 46 * the (optional) access function of a variable. Now the valuep 47 * field can be made opaque, eg be an offset that fcn() resolves. 48 * [90/08/20 af] 49 * 50 * Created. 51 * [90/07/25 dbg] 52 * 53 */ 54 /* 55 * Author: David B. Golub, Carnegie Mellon University 56 * Date: 7/90 57 */ 58 59 #ifndef _DB_VARIABLES_H_ 60 #define _DB_VARIABLES_H_ 61 62 /* 63 * Debugger variables. 64 */ 65 struct db_variable { 66 char *name; /* Name of variable */ 67 int *valuep; /* value of variable */ 68 /* function to call when reading/writing */ 69 int (*fcn)(/* db_variable *vp, db_expr_t *valuep, int op */); 70 #define DB_VAR_GET 0 71 #define DB_VAR_SET 1 72 }; 73 #define FCN_NULL ((int (*)())0) 74 75 extern struct db_variable db_vars[]; /* debugger variables */ 76 extern struct db_variable *db_evars; 77 extern struct db_variable db_regs[]; /* machine registers */ 78 extern struct db_variable *db_eregs; 79 80 #endif /* _DB_VARIABLES_H_ */ 81