db_watch.h revision 2112
11573Srgrimes/* 21573Srgrimes * Mach Operating System 31573Srgrimes * Copyright (c) 1991,1990 Carnegie Mellon University 41573Srgrimes * All Rights Reserved. 51573Srgrimes * 61573Srgrimes * Permission to use, copy, modify and distribute this software and its 71573Srgrimes * documentation is hereby granted, provided that both the copyright 81573Srgrimes * notice and this permission notice appear in all copies of the 91573Srgrimes * software, derivative works or modified versions, and any portions 101573Srgrimes * thereof, and that both notices appear in supporting documentation. 111573Srgrimes * 121573Srgrimes * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS 131573Srgrimes * CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR 141573Srgrimes * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE. 151573Srgrimes * 161573Srgrimes * Carnegie Mellon requests users of this software to return to 171573Srgrimes * 181573Srgrimes * Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU 191573Srgrimes * School of Computer Science 201573Srgrimes * Carnegie Mellon University 211573Srgrimes * Pittsburgh PA 15213-3890 221573Srgrimes * 231573Srgrimes * any improvements or extensions that they make and grant Carnegie the 241573Srgrimes * rights to redistribute these changes. 251573Srgrimes * 261573Srgrimes * $Id: db_watch.h,v 1.2 1993/10/16 16:47:33 rgrimes Exp $ 271573Srgrimes */ 281573Srgrimes 291573Srgrimes/* 301573Srgrimes * Author: David B. Golub, Carnegie Mellon University 311573Srgrimes * Date: 10/90 321573Srgrimes */ 331573Srgrimes 341573Srgrimes#ifndef _DDB_DB_WATCH_ 351573Srgrimes#define _DDB_DB_WATCH_ 361573Srgrimes 3790045Sobrien#include <vm/vm_map.h> 3890045Sobrien#include <machine/db_machdep.h> 391573Srgrimes 4071579Sdeischen/* 411573Srgrimes * Watchpoint. 421573Srgrimes */ 43143305Sphk 44143305Sphktypedef struct db_watchpoint { 451573Srgrimes vm_map_t map; /* in this map */ 461573Srgrimes db_addr_t loaddr; /* from this address */ 4713545Sjulian db_addr_t hiaddr; /* to this address */ 4810954Speter struct db_watchpoint *link; /* link in in-use or free chain */ 4913545Sjulian} *db_watchpoint_t; 501573Srgrimes 511573Srgrimesextern boolean_t db_find_watchpoint(/* vm_map_t map, db_addr_t addr, 5213545Sjulian db_regs_t *regs */); 53146186Sdelphij 5471579Sdeischen 5513545Sjulian 5671579Sdeischenextern void db_set_watchpoint(/* vm_map_t map, db_addr_t addr, vm_size_t size */); 5771579Sdeischenextern void db_delete_watchpoint(/* vm_map_t map, db_addr_t addr */); 58143305Sphkextern void db_list_watchpoints(); 5971579Sdeischen 6071579Sdeischen#endif _DDB_DB_WATCH_ 6171579Sdeischen