Module Name: src Committed By: christos Date: Fri Sep 25 16:05:18 UTC 2015
Modified Files: src/sys/arch/aarch64/include: ptrace.h src/sys/arch/alpha/include: ptrace.h src/sys/arch/amd64/include: ptrace.h src/sys/arch/arm/include: ptrace.h src/sys/arch/hppa/include: ptrace.h src/sys/arch/i386/include: ptrace.h src/sys/arch/m68k/include: ptrace.h src/sys/arch/mips/include: ptrace.h src/sys/arch/sh3/include: ptrace.h src/sys/arch/sparc/include: ptrace.h src/sys/arch/vax/include: ptrace.h Log Message: For processors that have memory breakpoints, add macros for them to help libproc To generate a diff of this commit: cvs rdiff -u -r1.3 -r1.4 src/sys/arch/aarch64/include/ptrace.h cvs rdiff -u -r1.7 -r1.8 src/sys/arch/alpha/include/ptrace.h cvs rdiff -u -r1.5 -r1.6 src/sys/arch/amd64/include/ptrace.h cvs rdiff -u -r1.7 -r1.8 src/sys/arch/arm/include/ptrace.h cvs rdiff -u -r1.4 -r1.5 src/sys/arch/hppa/include/ptrace.h cvs rdiff -u -r1.14 -r1.15 src/sys/arch/i386/include/ptrace.h cvs rdiff -u -r1.9 -r1.10 src/sys/arch/m68k/include/ptrace.h cvs rdiff -u -r1.13 -r1.14 src/sys/arch/mips/include/ptrace.h cvs rdiff -u -r1.11 -r1.12 src/sys/arch/sh3/include/ptrace.h cvs rdiff -u -r1.8 -r1.9 src/sys/arch/sparc/include/ptrace.h cvs rdiff -u -r1.5 -r1.6 src/sys/arch/vax/include/ptrace.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/arch/aarch64/include/ptrace.h diff -u src/sys/arch/aarch64/include/ptrace.h:1.3 src/sys/arch/aarch64/include/ptrace.h:1.4 --- src/sys/arch/aarch64/include/ptrace.h:1.3 Tue Sep 15 11:49:02 2015 +++ src/sys/arch/aarch64/include/ptrace.h Fri Sep 25 12:05:17 2015 @@ -1,4 +1,4 @@ -/* $NetBSD: ptrace.h,v 1.3 2015/09/15 15:49:02 christos Exp $ */ +/* $NetBSD: ptrace.h,v 1.4 2015/09/25 16:05:17 christos Exp $ */ /*- * Copyright (c) 2014 The NetBSD Foundation, Inc. @@ -56,6 +56,9 @@ #define PTRACE_REG_SP(r) (r)->r_sp #define PTRACE_REG_INTRV(r) (r)->r_reg[0] +#define PTRACE_BREAKPOINT ((const uint8_t[]) { 0xd4, 0x20, 0x01, 0xa0 }) +#define PTRACE_BREAKPOINT_SIZE 4 + #elif defined(__arm__) #include <arm/ptrace.h> Index: src/sys/arch/alpha/include/ptrace.h diff -u src/sys/arch/alpha/include/ptrace.h:1.7 src/sys/arch/alpha/include/ptrace.h:1.8 --- src/sys/arch/alpha/include/ptrace.h:1.7 Tue Sep 15 11:49:02 2015 +++ src/sys/arch/alpha/include/ptrace.h Fri Sep 25 12:05:17 2015 @@ -1,4 +1,4 @@ -/* $NetBSD: ptrace.h,v 1.7 2015/09/15 15:49:02 christos Exp $ */ +/* $NetBSD: ptrace.h,v 1.8 2015/09/25 16:05:17 christos Exp $ */ /* * Copyright (c) 1994 Christopher G. Demetriou @@ -46,7 +46,11 @@ "PT_SETFPREGS", #include <machine/reg.h> + #define PTRACE_REG_PC(r) (r)->r_regs[R_ZERO] #define PTRACE_REG_SET_PC(r, v) (r)->r_regs[R_ZERO] = (v) #define PTRACE_REG_SP(r) (r)->r_regs[R_SP] #define PTRACE_REG_INTRV(r) (r)->r_regs[R_V0] + +#define PTRACE_BREAKPOINT ((const uint8_t[]) { 0x80, 0x00, 0x00, 0x00 }) +#define PTRACE_BREAKPOINT_SIZE 4 Index: src/sys/arch/amd64/include/ptrace.h diff -u src/sys/arch/amd64/include/ptrace.h:1.5 src/sys/arch/amd64/include/ptrace.h:1.6 --- src/sys/arch/amd64/include/ptrace.h:1.5 Thu Sep 17 10:39:35 2015 +++ src/sys/arch/amd64/include/ptrace.h Fri Sep 25 12:05:17 2015 @@ -1,4 +1,4 @@ -/* $NetBSD: ptrace.h,v 1.5 2015/09/17 14:39:35 christos Exp $ */ +/* $NetBSD: ptrace.h,v 1.6 2015/09/25 16:05:17 christos Exp $ */ /* * Copyright (c) 1993 Christopher G. Demetriou @@ -55,6 +55,10 @@ #define PTRACE_REG_SP(r) (r)->regs[_REG_RSP] #define PTRACE_REG_INTRV(r) (r)->regs[_REG_RAX] +#define PTRACE_BREAKPOINT ((const uint8_t[]) { 0xcc }) +#define PTRACE_BREAKPOINT_SIZE 1 +#define PTRACE_BREAKPOINT_ADJ 1 + #ifdef _KERNEL_OPT #include "opt_compat_netbsd32.h" Index: src/sys/arch/arm/include/ptrace.h diff -u src/sys/arch/arm/include/ptrace.h:1.7 src/sys/arch/arm/include/ptrace.h:1.8 --- src/sys/arch/arm/include/ptrace.h:1.7 Tue Sep 15 11:49:02 2015 +++ src/sys/arch/arm/include/ptrace.h Fri Sep 25 12:05:17 2015 @@ -1,4 +1,4 @@ -/* $NetBSD: ptrace.h,v 1.7 2015/09/15 15:49:02 christos Exp $ */ +/* $NetBSD: ptrace.h,v 1.8 2015/09/25 16:05:17 christos Exp $ */ /* * Copyright (c) 1995 Frank Lancaster @@ -57,3 +57,6 @@ #define PTRACE_REG_SET_PC(r, v) (r)->r_pc = (v) #define PTRACE_REG_SP(r) (r)->r_sp #define PTRACE_REG_INTRV(r) (r)->r[0] + +#define PTRACE_BREAKPOINT ((const uint8_t[]) { 0xe7, 0xff, 0xff, 0xff }) +#define PTRACE_BREAKPOINT_SIZE 4 Index: src/sys/arch/hppa/include/ptrace.h diff -u src/sys/arch/hppa/include/ptrace.h:1.4 src/sys/arch/hppa/include/ptrace.h:1.5 --- src/sys/arch/hppa/include/ptrace.h:1.4 Tue Sep 15 11:49:02 2015 +++ src/sys/arch/hppa/include/ptrace.h Fri Sep 25 12:05:17 2015 @@ -1,4 +1,4 @@ -/* $NetBSD: ptrace.h,v 1.4 2015/09/15 15:49:02 christos Exp $ */ +/* $NetBSD: ptrace.h,v 1.5 2015/09/25 16:05:17 christos Exp $ */ /* $OpenBSD: ptrace.h,v 1.2 1998/12/01 03:05:44 mickey Exp $ */ @@ -52,3 +52,6 @@ } while (/*CONSTCOND*/0) #define PTRACE_REG_SP(r) (r)->r_out[30] #define PTRACE_REG_INTRV(r) (r)->r_out[28] + +#define PTRACE_BREAKPOINT ((const uint8_t[]) { 0x00, 0x01, 0x00, 0x04 }) +#define PTRACE_BREAKPOINT_SIZE 4 Index: src/sys/arch/i386/include/ptrace.h diff -u src/sys/arch/i386/include/ptrace.h:1.14 src/sys/arch/i386/include/ptrace.h:1.15 --- src/sys/arch/i386/include/ptrace.h:1.14 Tue Sep 15 11:49:02 2015 +++ src/sys/arch/i386/include/ptrace.h Fri Sep 25 12:05:17 2015 @@ -1,4 +1,4 @@ -/* $NetBSD: ptrace.h,v 1.14 2015/09/15 15:49:02 christos Exp $ */ +/* $NetBSD: ptrace.h,v 1.15 2015/09/25 16:05:17 christos Exp $ */ /* * Copyright (c) 2001 Wasabi Systems, Inc. @@ -102,6 +102,10 @@ #define PTRACE_REG_SP(r) (r)->r_esp #define PTRACE_REG_INTRV(r) (r)->r_eax +#define PTRACE_BREAKPOINT ((const uint8_t[]) { 0xcc }) +#define PTRACE_BREAKPOINT_SIZE 1 +#define PTRACE_BREAKPOINT_ADJ sizeof(PTRACE_BREAKPOINT) + #ifdef _KERNEL /* Index: src/sys/arch/m68k/include/ptrace.h diff -u src/sys/arch/m68k/include/ptrace.h:1.9 src/sys/arch/m68k/include/ptrace.h:1.10 --- src/sys/arch/m68k/include/ptrace.h:1.9 Tue Sep 15 11:49:02 2015 +++ src/sys/arch/m68k/include/ptrace.h Fri Sep 25 12:05:17 2015 @@ -1,4 +1,4 @@ -/* $NetBSD: ptrace.h,v 1.9 2015/09/15 15:49:02 christos Exp $ */ +/* $NetBSD: ptrace.h,v 1.10 2015/09/25 16:05:17 christos Exp $ */ /* * Copyright (c) 1993 Christopher G. Demetriou @@ -54,4 +54,7 @@ #define PTRACE_REG_SP(r) (r)->r_regs[15] #define PTRACE_REG_INTRV(r) (r)->r_regs[0] +#define PTRACE_BREAKPOINT ((const uint8_t[]) { 0x4e, 0x4f }) +#define PTRACE_BREAKPOINT_SIZE 2 + #endif /* !_M68K_PTRACE_H_ */ Index: src/sys/arch/mips/include/ptrace.h diff -u src/sys/arch/mips/include/ptrace.h:1.13 src/sys/arch/mips/include/ptrace.h:1.14 --- src/sys/arch/mips/include/ptrace.h:1.13 Tue Sep 15 11:49:02 2015 +++ src/sys/arch/mips/include/ptrace.h Fri Sep 25 12:05:17 2015 @@ -1,4 +1,4 @@ -/* $NetBSD: ptrace.h,v 1.13 2015/09/15 15:49:02 christos Exp $ */ +/* $NetBSD: ptrace.h,v 1.14 2015/09/25 16:05:17 christos Exp $ */ /* * Copyright (c) 1992, 1993 @@ -58,6 +58,10 @@ #define PTRACE_REG_SET_PC(r, v) (r)->r_regs[35] = (v) #define PTRACE_REG_SP(r) (r)->r_regs[29] #define PTRACE_REG_INTRV(r) (r)->r_regs[2] + +#define PTRACE_BREAKPOINT ((const uint8_t[]) { 0x00, 0x00, 0x00, 0x0d }) +#define PTRACE_BREAKPOINT_SIZE 4 + /* * Glue for gdb: map NetBSD register names to legacy ptrace register names */ Index: src/sys/arch/sh3/include/ptrace.h diff -u src/sys/arch/sh3/include/ptrace.h:1.11 src/sys/arch/sh3/include/ptrace.h:1.12 --- src/sys/arch/sh3/include/ptrace.h:1.11 Tue Sep 15 11:49:03 2015 +++ src/sys/arch/sh3/include/ptrace.h Fri Sep 25 12:05:17 2015 @@ -1,4 +1,4 @@ -/* $NetBSD: ptrace.h,v 1.11 2015/09/15 15:49:03 christos Exp $ */ +/* $NetBSD: ptrace.h,v 1.12 2015/09/25 16:05:17 christos Exp $ */ /* * Copyright (c) 1993 Christopher G. Demetriou @@ -64,6 +64,9 @@ #define PTRACE_REG_SP(r) r->r_r15 #define PTRACE_REG_INTV(r) r->r_r0 +#define PTRACE_BREAKPOINT ((const uint8_t[]) { 0xc3, 0xc3 }) +#define PTRACE_BREAKPOINT_SIZE 2 + #ifdef _KERNEL #ifdef _KERNEL_OPT #include "opt_compat_netbsd.h" Index: src/sys/arch/sparc/include/ptrace.h diff -u src/sys/arch/sparc/include/ptrace.h:1.8 src/sys/arch/sparc/include/ptrace.h:1.9 --- src/sys/arch/sparc/include/ptrace.h:1.8 Tue Sep 15 11:49:03 2015 +++ src/sys/arch/sparc/include/ptrace.h Fri Sep 25 12:05:17 2015 @@ -1,4 +1,4 @@ -/* $NetBSD: ptrace.h,v 1.8 2015/09/15 15:49:03 christos Exp $ */ +/* $NetBSD: ptrace.h,v 1.9 2015/09/25 16:05:17 christos Exp $ */ /* * Copyright (c) 1992, 1993 @@ -62,3 +62,6 @@ } while (/*CONSTCOND*/0) #define PTRACE_REG_SP(r) (r)->r_out[6] #define PTRACE_REG_INTRV(r) (r)->r_out[0] + +#define PTRACE_BREAKPOINT ((const uint8_t[]) { 0x91, 0xd0, 0x20, 0x01 }) +#define PTRACE_BREAKPOINT_SIZE 4 Index: src/sys/arch/vax/include/ptrace.h diff -u src/sys/arch/vax/include/ptrace.h:1.5 src/sys/arch/vax/include/ptrace.h:1.6 --- src/sys/arch/vax/include/ptrace.h:1.5 Tue Sep 15 11:49:03 2015 +++ src/sys/arch/vax/include/ptrace.h Fri Sep 25 12:05:18 2015 @@ -1,4 +1,4 @@ -/* $NetBSD: ptrace.h,v 1.5 2015/09/15 15:49:03 christos Exp $ */ +/* $NetBSD: ptrace.h,v 1.6 2015/09/25 16:05:18 christos Exp $ */ /* * Copyright (c) 1994 Ludd, University of Lule}, Sweden. @@ -48,3 +48,6 @@ #define PTRACE_REG_SET_PC(r, v) (r)->pc = (v) #define PTRACE_REG_SP(r) (r)->sp #define PTRACE_REG_INTRV(r) (r)->r0 + +#define PTRACE_BREAKPOINT ((const uint8_t[]) { 0x03 }) +#define PTRACE_BREAKPOINT_SIZE 1