ptrace.h revision 1.6
11.6Schristos/* $NetBSD: ptrace.h,v 1.6 2015/09/25 16:05:18 christos Exp $ */ 21.2Scgd 31.1Sragge/* 41.1Sragge * Copyright (c) 1994 Ludd, University of Lule}, Sweden. 51.1Sragge * All rights reserved. 61.1Sragge * 71.1Sragge * Redistribution and use in source and binary forms, with or without 81.1Sragge * modification, are permitted provided that the following conditions 91.1Sragge * are met: 101.1Sragge * 1. Redistributions of source code must retain the above copyright 111.1Sragge * notice, this list of conditions and the following disclaimer. 121.1Sragge * 2. Redistributions in binary form must reproduce the above copyright 131.1Sragge * notice, this list of conditions and the following disclaimer in the 141.1Sragge * documentation and/or other materials provided with the distribution. 151.1Sragge * 3. All advertising materials mentioning features or use of this software 161.1Sragge * must display the following acknowledgement: 171.1Sragge * This product includes software developed at Ludd, University of Lule}. 181.1Sragge * 4. The name of the author may not be used to endorse or promote products 191.1Sragge * derived from this software without specific prior written permission 201.1Sragge * 211.1Sragge * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 221.1Sragge * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 231.1Sragge * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 241.1Sragge * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 251.1Sragge * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 261.1Sragge * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 271.1Sragge * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 281.1Sragge * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 291.1Sragge * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 301.1Sragge * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 311.1Sragge */ 321.1Sragge 331.1Sragge /* All bugs are subject to removal without further notice */ 341.1Sragge 351.1Sragge 361.3Sragge#define PT_STEP (PT_FIRSTMACH + 0) 371.3Sragge#define PT_GETREGS (PT_FIRSTMACH + 1) 381.3Sragge#define PT_SETREGS (PT_FIRSTMACH + 2) 391.1Sragge 401.4Sskrll#define PT_MACHDEP_STRINGS \ 411.4Sskrll "PT_STEP", \ 421.4Sskrll "PT_GETREGS", \ 431.4Sskrll "PT_SETREGS", 441.5Schristos 451.5Schristos#include <machine/reg.h> 461.5Schristos 471.5Schristos#define PTRACE_REG_PC(r) (r)->pc 481.5Schristos#define PTRACE_REG_SET_PC(r, v) (r)->pc = (v) 491.5Schristos#define PTRACE_REG_SP(r) (r)->sp 501.5Schristos#define PTRACE_REG_INTRV(r) (r)->r0 511.6Schristos 521.6Schristos#define PTRACE_BREAKPOINT ((const uint8_t[]) { 0x03 }) 531.6Schristos#define PTRACE_BREAKPOINT_SIZE 1 54