On Sun, 23 Dec 2018 19:48:14 +0100, Pascal Stumpf wrote: > FWIW, here's a WIP patch to update gdb to 8.2.1. It's still a bit rough > around the edges, but working so far on amd64, i386, powerpc, hppa, and > to some extent on arm and aarch64. It does *not* work on sparc64, which > is a blocker. Feel free to play around with it.
Actually, GDB 7.12 did not work on sparc64 either, so this is not a regression and I'd like to move along with it. Please test. > Index: Makefile > =================================================================== > RCS file: /cvs/ports/devel/gdb/Makefile,v > retrieving revision 1.58 > diff -u -p -r1.58 Makefile > --- Makefile 1 Nov 2018 20:36:08 -0000 1.58 > +++ Makefile 23 Dec 2018 18:47:08 -0000 > @@ -3,8 +3,7 @@ > COMMENT= GNU debugger > CATEGORIES= devel > > -DISTNAME= gdb-7.12.1 > -REVISION= 5 > +DISTNAME= gdb-8.2.1 > > HOMEPAGE= https://www.gnu.org/software/gdb/ > > @@ -19,7 +18,7 @@ EXTRACT_SUFX= .tar.xz > > MODGNU_CONFIG_GUESS_DIRS= ${WRKSRC} ${WRKSRC}/gdb > > -WANTLIB = c expat kvm m ncurses pthread ${MODPY_WANTLIB} ${COMPILER_LIBCXX} > util > +WANTLIB = c expat kvm m curses pthread ${MODPY_WANTLIB} ${COMPILER_LIBCXX} > util > > COMPILER = base-clang ports-gcc base-gcc > > @@ -29,6 +28,8 @@ CONFIGURE_ARGS= --program-prefix=e \ > --disable-nls \ > --without-guile \ > --without-lzma \ > + --without-gmp \ > + --without-mpfr \ > --enable-target=all \ > --with-python=${MODPY_BIN} > > @@ -38,6 +39,9 @@ MODULES += lang/python > LIB_DEPENDS += ${MODPY_LIB_DEPENDS} > TEST_DEPENDS += devel/dejagnu > MODPY_BUILDDEP = No > + > +# for max_align_t configure test > +CFLAGS += -std=gnu11 > > post-install: > ${MODPY_BIN} -m compileall ${PREFIX}/share/gdb/python > Index: distinfo > =================================================================== > RCS file: /cvs/ports/devel/gdb/distinfo,v > retrieving revision 1.22 > diff -u -p -r1.22 distinfo > --- distinfo 28 Jan 2017 21:38:15 -0000 1.22 > +++ distinfo 23 Dec 2018 18:47:08 -0000 > @@ -1,2 +1,2 @@ > -SHA256 (gdb/gdb-7.12.1.tar.xz) = RgdoC5c9PsksMK0Cnxt9veOHaGnms6EX2KfpAIERMYY= > -SIZE (gdb/gdb-7.12.1.tar.xz) = 19225392 > +SHA256 (gdb/gdb-8.2.1.tar.xz) = CmpDKQegPFyOqtPDz/1QwApAw6XjxAOUQGJLrnA/IgI= > +SIZE (gdb/gdb-8.2.1.tar.xz) = 20170388 > Index: patches/patch-bfd_config_bfd > =================================================================== > RCS file: /cvs/ports/devel/gdb/patches/patch-bfd_config_bfd,v > retrieving revision 1.3 > diff -u -p -r1.3 patch-bfd_config_bfd > --- patches/patch-bfd_config_bfd 10 Jul 2018 11:03:46 -0000 1.3 > +++ patches/patch-bfd_config_bfd 23 Dec 2018 18:47:08 -0000 > @@ -1,7 +1,16 @@ > $OpenBSD: patch-bfd_config_bfd,v 1.3 2018/07/10 11:03:46 kettenis Exp $ > ---- bfd/config.bfd.orig Sat Jan 21 05:48:42 2017 > -+++ bfd/config.bfd Tue Mar 7 22:55:11 2017 > -@@ -202,6 +202,11 @@ case "${targ}" in > +Index: bfd/config.bfd > +--- bfd/config.bfd.orig > ++++ bfd/config.bfd > +@@ -81,7 +81,6 @@ case $targ in > + arm*-*-aout | \ > + arm-*-coff | \ > + arm-*-netbsd* | \ > +- arm-*-openbsd* | \ > + arm-*-oabi | \ > + arm-*-riscix* | \ > + arm-epoc-pe* | \ > +@@ -259,6 +258,11 @@ case "${targ}" in > targ_selvecs="aarch64_elf64_be_vec aarch64_elf32_le_vec > aarch64_elf32_be_vec arm_elf32_le_vec arm_elf32_be_vec" > want64=true > ;; > @@ -13,3 +22,12 @@ $OpenBSD: patch-bfd_config_bfd,v 1.3 201 > aarch64_be-*-linux*) > targ_defvec=aarch64_elf64_be_vec > targ_selvecs="aarch64_elf64_le_vec aarch64_elf32_le_vec > aarch64_elf32_be_vec arm_elf32_be_vec arm_elf32_le_vec" > +@@ -354,7 +358,7 @@ case "${targ}" in > + targ_defvec=arm_elf32_be_vec > + targ_selvecs="arm_elf32_le_vec" > + ;; > +- arm-*-netbsdelf*) > ++ arm-*-netbsdelf* | arm-*-openbsd*) > + targ_defvec=arm_elf32_le_vec > + targ_selvecs="arm_elf32_be_vec" > + ;; > Index: patches/patch-bfd_elf_c > =================================================================== > RCS file: /cvs/ports/devel/gdb/patches/patch-bfd_elf_c,v > retrieving revision 1.9 > diff -u -p -r1.9 patch-bfd_elf_c > --- patches/patch-bfd_elf_c 9 Oct 2016 11:39:20 -0000 1.9 > +++ patches/patch-bfd_elf_c 23 Dec 2018 18:47:08 -0000 > @@ -1,7 +1,8 @@ > $OpenBSD: patch-bfd_elf_c,v 1.9 2016/10/09 11:39:20 pascal Exp $ > ---- bfd/elf.c.orig Fri Oct 7 19:09:21 2016 > -+++ bfd/elf.c Fri Oct 7 20:53:14 2016 > -@@ -9866,6 +9866,11 @@ elfcore_grok_openbsd_procinfo (bfd *abfd, Elf_Internal > +Index: bfd/elf.c > +--- bfd/elf.c.orig > ++++ bfd/elf.c > +@@ -10261,6 +10261,11 @@ elfcore_grok_openbsd_procinfo (bfd *abfd, > Elf_Internal > static bfd_boolean > elfcore_grok_openbsd_note (bfd *abfd, Elf_Internal_Note *note) > { > Index: patches/patch-gdb_Makefile_in > =================================================================== > RCS file: /cvs/ports/devel/gdb/patches/patch-gdb_Makefile_in,v > retrieving revision 1.3 > diff -u -p -r1.3 patch-gdb_Makefile_in > --- patches/patch-gdb_Makefile_in 10 Jul 2018 11:03:46 -0000 1.3 > +++ patches/patch-gdb_Makefile_in 23 Dec 2018 18:47:08 -0000 > @@ -2,23 +2,29 @@ $OpenBSD: patch-gdb_Makefile_in,v 1.3 20 > Index: gdb/Makefile.in > --- gdb/Makefile.in.orig > +++ gdb/Makefile.in > -@@ -644,7 +644,8 @@ TARGET_OBS = @TARGET_OBS@ > - # All target-dependent objects files that require 64-bit CORE_ADDR > - # (used with --enable-targets=all --enable-64-bit-bfd). > - ALL_64_TARGET_OBS = \ > -- aarch64-tdep.o aarch64-linux-tdep.o aarch64-newlib-tdep.o > aarch64-insn.o \ > -+ aarch64-tdep.o aarch64-linux-tdep.o \ > -+ aarch64-newlib-tdep.o aarch64obsd-tdep.o aarch64-insn.o \ > - alphabsd-tdep.o alphafbsd-tdep.o alpha-linux-tdep.o alpha-mdebug-tdep.o > \ > - alphanbsd-tdep.o alphaobsd-tdep.o alpha-tdep.o \ > - amd64fbsd-tdep.o amd64-darwin-tdep.o amd64-dicos-tdep.o \ > -@@ -1663,7 +1664,8 @@ MAKEOVERRIDES= > +@@ -117,8 +117,6 @@ srcdir = @srcdir@ > + VPATH = @srcdir@ > + top_srcdir = @top_srcdir@ > > - ALLDEPFILES = \ > - aarch64-tdep.c aarch64-linux-tdep.c aarch64-newlib-tdep.c \ > -- aarch64-linux-nat.c \ > -+ aarch64obsd-tdep.c \ > -+ aarch64-linux-nat.c aarch64obsd-nat.c \ > +-include $(srcdir)/silent-rules.mk > +- > + # Note that these are overridden by GNU make-specific code below if > + # GNU make is used. The overrides implement dependency tracking. > + COMPILE.pre = $(CXX) -x c++ $(CXX_DIALECT) > +@@ -646,6 +644,7 @@ ALL_64_TARGET_OBS = \ > + aarch64-fbsd-tdep.o \ > + aarch64-linux-tdep.o \ > + aarch64-newlib-tdep.o \ > ++ aarch64-obsd-tdep.o \ > + aarch64-tdep.o \ > + alpha-bsd-tdep.o \ > + alpha-linux-tdep.o \ > +@@ -2187,6 +2186,8 @@ ALLDEPFILES = \ > + aarch64-linux-nat.c \ > + aarch64-linux-tdep.c \ > + aarch64-newlib-tdep.c \ > ++ aarch64-obsd-nat.c \ > ++ aarch64-obsd-tdep.c \ > + aarch64-tdep.c \ > aix-thread.c \ > - alphabsd-nat.c alpha-linux-nat.c \ > - alpha-tdep.c alpha-mdebug-tdep.c \ > + alpha-bsd-nat.c \ > Index: patches/patch-gdb_aarch64-obsd-nat_c > =================================================================== > RCS file: patches/patch-gdb_aarch64-obsd-nat_c > diff -N patches/patch-gdb_aarch64-obsd-nat_c > --- /dev/null 1 Jan 1970 00:00:00 -0000 > +++ patches/patch-gdb_aarch64-obsd-nat_c 23 Dec 2018 18:47:08 -0000 > @@ -0,0 +1,211 @@ > +$OpenBSD$ > + > +Index: gdb/aarch64-obsd-nat.c > +--- gdb/aarch64-obsd-nat.c.orig > ++++ gdb/aarch64-obsd-nat.c > +@@ -0,0 +1,205 @@ > ++/* Native-dependent code for OpenBSD/arm64 (AArch64) > ++ > ++ Copyright (C) 2011-2017 Free Software Foundation, Inc. > ++ > ++ This file is part of GDB. > ++ > ++ This program is free software; you can redistribute it and/or modify > ++ it under the terms of the GNU General Public License as published by > ++ the Free Software Foundation; either version 3 of the License, or > ++ (at your option) any later version. > ++ > ++ This program is distributed in the hope that it will be useful, > ++ but WITHOUT ANY WARRANTY; without even the implied warranty of > ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the > ++ GNU General Public License for more details. > ++ > ++ You should have received a copy of the GNU General Public License > ++ along with this program. If not, see <http://www.gnu.org/licenses/>. */ > ++ > ++#include "defs.h" > ++#include "gdbcore.h" > ++#include "inferior.h" > ++#include "regcache.h" > ++#include <sys/types.h> > ++#include <sys/ptrace.h> > ++#include <machine/reg.h> > ++ > ++#include "aarch64-tdep.h" > ++#include "inf-ptrace.h" > ++ > ++/* Fill GDB's register array with the general-purpose register values > ++ from the current thread. */ > ++ > ++static void > ++fetch_gregs_from_thread (struct regcache *regcache) > ++{ > ++ struct reg regs; > ++ pid_t pid; > ++ int regno; > ++ int ret; > ++ > ++ pid = ptid_get_pid (inferior_ptid); > ++ > ++ ret = ptrace(PT_GETREGS, pid, (caddr_t)®s, 0); > ++ if (ret < 0) > ++ perror_with_name (_("Unable to fetch general registers.")); > ++ > ++ for (regno = AARCH64_X0_REGNUM; regno <= AARCH64_FP_REGNUM; regno++) > ++ regcache_raw_supply (regcache, regno, ®s.r_reg[regno]); > ++ regcache_raw_supply (regcache, AARCH64_LR_REGNUM, ®s.r_lr); > ++ regcache_raw_supply (regcache, AARCH64_SP_REGNUM, ®s.r_sp); > ++ regcache_raw_supply (regcache, AARCH64_PC_REGNUM, ®s.r_pc); > ++ regcache_raw_supply (regcache, AARCH64_CPSR_REGNUM, ®s.r_spsr); > ++} > ++ > ++/* Store to the current thread the valid general-purpose register > ++ values in the GDB's register array. */ > ++ > ++static void > ++store_gregs_to_thread (const struct regcache *regcache) > ++{ > ++ struct reg regs; > ++ pid_t pid; > ++ int regno; > ++ int ret; > ++ > ++ pid = ptid_get_pid (inferior_ptid); > ++ > ++ // fetch old values as only 'valid' entries will be replaced. > ++ ret = ptrace(PT_GETREGS, pid, (caddr_t)®s, 0); > ++ if (ret < 0) { > ++ perror_with_name (_("Unable to store general registers.")); > ++ return; > ++ } > ++ > ++ for (regno = AARCH64_X0_REGNUM; regno <= AARCH64_FP_REGNUM; regno++) > ++ if (REG_VALID == regcache_register_status (regcache, regno)) > ++ regcache_raw_collect (regcache, regno, ®s.r_reg[regno]); > ++ if (REG_VALID == regcache_register_status (regcache, AARCH64_LR_REGNUM)) > ++ regcache_raw_collect (regcache, AARCH64_LR_REGNUM, ®s.r_lr); > ++ if (REG_VALID == regcache_register_status (regcache, AARCH64_SP_REGNUM)) > ++ regcache_raw_collect (regcache, AARCH64_SP_REGNUM, ®s.r_sp); > ++ if (REG_VALID == regcache_register_status (regcache, AARCH64_PC_REGNUM)) > ++ regcache_raw_collect (regcache, AARCH64_PC_REGNUM, ®s.r_pc); > ++ if (REG_VALID == regcache_register_status (regcache, AARCH64_CPSR_REGNUM)) > ++ regcache_raw_collect (regcache, AARCH64_CPSR_REGNUM, ®s.r_spsr); > ++ > ++ ret = ptrace(PT_SETREGS, pid, (caddr_t)®s, 0); > ++ if (ret < 0) > ++ perror_with_name (_("Unable to store general registers.")); > ++} > ++ > ++/* Fill GDB's register array with the fp/simd register values > ++ from the current thread. */ > ++ > ++static void > ++fetch_fpregs_from_thread (struct regcache *regcache) > ++{ > ++ int ret; > ++ pid_t pid; > ++ int regno; > ++ struct fpreg fpregs; > ++ > ++ pid = ptid_get_pid (inferior_ptid); > ++ > ++ ret = ptrace(PT_GETFPREGS, pid, (caddr_t)&fpregs, 0); > ++ if (ret < 0) { > ++ perror_with_name (_("Unable to fetch general registers.")); > ++ return; > ++ } > ++ > ++ for (regno = AARCH64_V0_REGNUM; regno <= AARCH64_V31_REGNUM; regno++) > ++ regcache_raw_supply (regcache, regno, &fpregs.fp_reg[regno]); > ++ > ++ regcache_raw_supply (regcache, AARCH64_FPSR_REGNUM, &fpregs.fp_sr); > ++ regcache_raw_supply (regcache, AARCH64_FPCR_REGNUM, &fpregs.fp_cr); > ++} > ++ > ++/* Store to the current thread the valid fp/simd register > ++ values in the GDB's register array. */ > ++ > ++static void > ++store_fpregs_to_thread (const struct regcache *regcache) > ++{ > ++ int ret; > ++ pid_t pid; > ++ int regno; > ++ struct fpreg fpregs; > ++ > ++ pid = ptid_get_pid (inferior_ptid); > ++ > ++ ret = ptrace(PT_GETFPREGS, pid, (caddr_t)&fpregs, 0); > ++ if (ret < 0) { > ++ perror_with_name (_("Unable to store general registers.")); > ++ return; > ++ } > ++ > ++ for (regno = AARCH64_V0_REGNUM; regno <= AARCH64_V31_REGNUM; regno++) > ++ if (REG_VALID == regcache_register_status (regcache, regno)) > ++ regcache_raw_collect (regcache, regno, &fpregs.fp_reg[regno]); > ++ > ++ if (REG_VALID == regcache_register_status (regcache, AARCH64_FPSR_REGNUM)) > ++ regcache_raw_collect (regcache, AARCH64_FPSR_REGNUM, &fpregs.fp_sr); > ++ if (REG_VALID == regcache_register_status (regcache, AARCH64_FPCR_REGNUM)) > ++ regcache_raw_collect (regcache, AARCH64_FPCR_REGNUM, &fpregs.fp_cr); > ++ > ++ ret = ptrace(PT_SETFPREGS, pid, (caddr_t)&fpregs, 0); > ++ if (ret < 0) > ++ perror_with_name (_("Unable to store general registers.")); > ++} > ++ > ++/* Implement the "to_fetch_register" target_ops method. */ > ++ > ++static void > ++aarch64_obsd_fetch_inferior_registers (struct target_ops *ops, > ++ struct regcache *regcache, > ++ int regno) > ++{ > ++ if (regno == -1) > ++ { > ++ fetch_gregs_from_thread (regcache); > ++ fetch_fpregs_from_thread (regcache); > ++ } > ++ else if (regno < AARCH64_V0_REGNUM) > ++ fetch_gregs_from_thread (regcache); > ++ else > ++ fetch_fpregs_from_thread (regcache); > ++} > ++ > ++/* Implement the "to_store_register" target_ops method. */ > ++ > ++static void > ++aarch64_obsd_store_inferior_registers (struct target_ops *ops, > ++ struct regcache *regcache, > ++ int regno) > ++{ > ++ if (regno == -1) > ++ { > ++ store_gregs_to_thread (regcache); > ++ store_fpregs_to_thread (regcache); > ++ } > ++ else if (regno < AARCH64_V0_REGNUM) > ++ store_gregs_to_thread (regcache); > ++ else > ++ store_fpregs_to_thread (regcache); > ++} > ++ > ++ > ++/* -Wmissing-prototypes. */ > ++void _initialize_aarch64_obsd_nat (void); > ++ > ++void > ++_initialize_aarch64_obsd_nat (void) > ++{ > ++ struct target_ops *t; > ++ > ++ t = inf_ptrace_target (); > ++ > ++ /* Add our register access methods. */ > ++ t->to_fetch_registers = aarch64_obsd_fetch_inferior_registers; > ++ t->to_store_registers = aarch64_obsd_store_inferior_registers; > ++ > ++ /* Register the target. */ > ++ add_target (t); > ++} > Index: patches/patch-gdb_aarch64-obsd-tdep_c > =================================================================== > RCS file: patches/patch-gdb_aarch64-obsd-tdep_c > diff -N patches/patch-gdb_aarch64-obsd-tdep_c > --- /dev/null 1 Jan 1970 00:00:00 -0000 > +++ patches/patch-gdb_aarch64-obsd-tdep_c 23 Dec 2018 18:47:08 -0000 > @@ -0,0 +1,117 @@ > +$OpenBSD$ > + > +Index: gdb/aarch64-obsd-tdep.c > +--- gdb/aarch64-obsd-tdep.c.orig > ++++ gdb/aarch64-obsd-tdep.c > +@@ -0,0 +1,111 @@ > ++/* Target-dependent code for OpenBSD/aarch64. > ++ > ++ Copyright (C) 2006-2017 Free Software Foundation, Inc. > ++ > ++ This file is part of GDB. > ++ > ++ This program is free software; you can redistribute it and/or modify > ++ it under the terms of the GNU General Public License as published by > ++ the Free Software Foundation; either version 3 of the License, or > ++ (at your option) any later version. > ++ > ++ This program is distributed in the hope that it will be useful, > ++ but WITHOUT ANY WARRANTY; without even the implied warranty of > ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the > ++ GNU General Public License for more details. > ++ > ++ You should have received a copy of the GNU General Public License > ++ along with this program. If not, see <http://www.gnu.org/licenses/>. */ > ++ > ++#include "defs.h" > ++#include "osabi.h" > ++#include "regset.h" > ++#include "trad-frame.h" > ++#include "tramp-frame.h" > ++ > ++#include "aarch64-tdep.h" > ++#include "obsd-tdep.h" > ++#include "solib-svr4.h" > ++ > ++/* The general-purpose regset consists of 31 X registers, plus SP, PC, > ++ and SPSR and TPIDR registers. */ > ++#define AARCH64_OBSD_SIZEOF_GREGSET (35 * X_REGISTER_SIZE) > ++ > ++/* The fp regset consists of 32 V registers, plus FPSR and FPCR which > ++ are 4 bytes wide each, and the whole structure is padded to 128 bit > ++ alignment. */ > ++#define AARCH64_OBSD_SIZEOF_FPREGSET (33 * V_REGISTER_SIZE) > ++ > ++/* Register maps. */ > ++ > ++static const struct regcache_map_entry aarch64_obsd_gregmap[] = > ++ { > ++ { 31, AARCH64_X0_REGNUM, 8 }, /* x0 ... x30 */ > ++ { 1, AARCH64_SP_REGNUM, 8 }, > ++ { 1, AARCH64_PC_REGNUM, 8 }, > ++ { 1, AARCH64_CPSR_REGNUM, 8 }, > ++ { 0 } > ++ }; > ++ > ++static const struct regcache_map_entry aarch64_obsd_fpregmap[] = > ++ { > ++ { 32, AARCH64_V0_REGNUM, 16 }, /* v0 ... v31 */ > ++ { 1, AARCH64_FPSR_REGNUM, 4 }, > ++ { 1, AARCH64_FPCR_REGNUM, 4 }, > ++ { 0 } > ++ }; > ++ > ++/* Register set definitions. */ > ++ > ++const struct regset aarch64_obsd_gregset = > ++ { > ++ aarch64_obsd_gregmap, > ++ regcache_supply_regset, regcache_collect_regset > ++ }; > ++ > ++const struct regset aarch64_obsd_fpregset = > ++ { > ++ aarch64_obsd_fpregmap, > ++ regcache_supply_regset, regcache_collect_regset > ++ }; > ++ > ++static void > ++aarch64_obsd_iterate_over_regset_sections (struct gdbarch *gdbarch, > ++ iterate_over_regset_sections_cb *cb, > ++ void *cb_data, > ++ const struct regcache *regcache) > ++{ > ++ cb (".reg", AARCH64_OBSD_SIZEOF_GREGSET, AARCH64_OBSD_SIZEOF_GREGSET, > ++ &aarch64_obsd_gregset, NULL, cb_data); > ++ cb (".reg2", AARCH64_OBSD_SIZEOF_FPREGSET, AARCH64_OBSD_SIZEOF_FPREGSET, > ++ &aarch64_obsd_fpregset, NULL, cb_data); > ++} > ++ > ++ > ++static void > ++aarch64obsd_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch) > ++{ > ++ struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch); > ++ > ++ /* OpenBSD/aarch64 uses SVR4-style shared libraries. */ > ++ set_solib_svr4_fetch_link_map_offsets > ++ (gdbarch, svr4_lp64_fetch_link_map_offsets); > ++ set_gdbarch_skip_solib_resolver (gdbarch, obsd_skip_solib_resolver); > ++ > ++ /* Enable longjmp. */ > ++ tdep->jb_pc = 13; > ++ > ++ set_gdbarch_iterate_over_regset_sections > ++ (gdbarch, aarch64_obsd_iterate_over_regset_sections); > ++} > ++ > ++ > ++/* Provide a prototype to silence -Wmissing-prototypes. */ > ++extern initialize_file_ftype _initialize_aarch64obsd_tdep; > ++ > ++void > ++_initialize_aarch64obsd_tdep (void) > ++{ > ++ gdbarch_register_osabi (bfd_arch_aarch64, 0, GDB_OSABI_OPENBSD, > ++ aarch64obsd_init_abi); > ++} > Index: patches/patch-gdb_aarch64obsd-nat_c > =================================================================== > RCS file: patches/patch-gdb_aarch64obsd-nat_c > diff -N patches/patch-gdb_aarch64obsd-nat_c > --- patches/patch-gdb_aarch64obsd-nat_c 10 Jul 2018 11:03:46 -0000 > 1.1 > +++ /dev/null 1 Jan 1970 00:00:00 -0000 > @@ -1,210 +0,0 @@ > -$OpenBSD: patch-gdb_aarch64obsd-nat_c,v 1.1 2018/07/10 11:03:46 kettenis Exp > $ > -Index: gdb/aarch64obsd-nat.c > ---- gdb/aarch64obsd-nat.c.orig > -+++ gdb/aarch64obsd-nat.c > -@@ -0,0 +1,205 @@ > -+/* Native-dependent code for OpenBSD/arm64 (AArch64) > -+ > -+ Copyright (C) 2011-2017 Free Software Foundation, Inc. > -+ > -+ This file is part of GDB. > -+ > -+ This program is free software; you can redistribute it and/or modify > -+ it under the terms of the GNU General Public License as published by > -+ the Free Software Foundation; either version 3 of the License, or > -+ (at your option) any later version. > -+ > -+ This program is distributed in the hope that it will be useful, > -+ but WITHOUT ANY WARRANTY; without even the implied warranty of > -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the > -+ GNU General Public License for more details. > -+ > -+ You should have received a copy of the GNU General Public License > -+ along with this program. If not, see <http://www.gnu.org/licenses/>. */ > -+ > -+#include "defs.h" > -+#include "gdbcore.h" > -+#include "inferior.h" > -+#include "regcache.h" > -+#include <sys/types.h> > -+#include <sys/ptrace.h> > -+#include <machine/reg.h> > -+ > -+#include "aarch64-tdep.h" > -+#include "inf-ptrace.h" > -+ > -+/* Fill GDB's register array with the general-purpose register values > -+ from the current thread. */ > -+ > -+static void > -+fetch_gregs_from_thread (struct regcache *regcache) > -+{ > -+ struct reg regs; > -+ pid_t pid; > -+ int regno; > -+ int ret; > -+ > -+ pid = ptid_get_pid (inferior_ptid); > -+ > -+ ret = ptrace(PT_GETREGS, pid, (caddr_t)®s, 0); > -+ if (ret < 0) > -+ perror_with_name (_("Unable to fetch general registers.")); > -+ > -+ for (regno = AARCH64_X0_REGNUM; regno <= AARCH64_FP_REGNUM; regno++) > -+ regcache_raw_supply (regcache, regno, ®s.r_reg[regno]); > -+ regcache_raw_supply (regcache, AARCH64_LR_REGNUM, ®s.r_lr); > -+ regcache_raw_supply (regcache, AARCH64_SP_REGNUM, ®s.r_sp); > -+ regcache_raw_supply (regcache, AARCH64_PC_REGNUM, ®s.r_pc); > -+ regcache_raw_supply (regcache, AARCH64_CPSR_REGNUM, ®s.r_spsr); > -+} > -+ > -+/* Store to the current thread the valid general-purpose register > -+ values in the GDB's register array. */ > -+ > -+static void > -+store_gregs_to_thread (const struct regcache *regcache) > -+{ > -+ struct reg regs; > -+ pid_t pid; > -+ int regno; > -+ int ret; > -+ > -+ pid = ptid_get_pid (inferior_ptid); > -+ > -+ // fetch old values as only 'valid' entries will be replaced. > -+ ret = ptrace(PT_GETREGS, pid, (caddr_t)®s, 0); > -+ if (ret < 0) { > -+ perror_with_name (_("Unable to store general registers.")); > -+ return; > -+ } > -+ > -+ for (regno = AARCH64_X0_REGNUM; regno <= AARCH64_FP_REGNUM; regno++) > -+ if (REG_VALID == regcache_register_status (regcache, regno)) > -+ regcache_raw_collect (regcache, regno, ®s.r_reg[regno]); > -+ if (REG_VALID == regcache_register_status (regcache, AARCH64_LR_REGNUM)) > -+ regcache_raw_collect (regcache, AARCH64_LR_REGNUM, ®s.r_lr); > -+ if (REG_VALID == regcache_register_status (regcache, AARCH64_SP_REGNUM)) > -+ regcache_raw_collect (regcache, AARCH64_SP_REGNUM, ®s.r_sp); > -+ if (REG_VALID == regcache_register_status (regcache, AARCH64_PC_REGNUM)) > -+ regcache_raw_collect (regcache, AARCH64_PC_REGNUM, ®s.r_pc); > -+ if (REG_VALID == regcache_register_status (regcache, AARCH64_CPSR_REGNUM)) > -+ regcache_raw_collect (regcache, AARCH64_CPSR_REGNUM, ®s.r_spsr); > -+ > -+ ret = ptrace(PT_SETREGS, pid, (caddr_t)®s, 0); > -+ if (ret < 0) > -+ perror_with_name (_("Unable to store general registers.")); > -+} > -+ > -+/* Fill GDB's register array with the fp/simd register values > -+ from the current thread. */ > -+ > -+static void > -+fetch_fpregs_from_thread (struct regcache *regcache) > -+{ > -+ int ret; > -+ pid_t pid; > -+ int regno; > -+ struct fpreg fpregs; > -+ > -+ pid = ptid_get_pid (inferior_ptid); > -+ > -+ ret = ptrace(PT_GETFPREGS, pid, (caddr_t)&fpregs, 0); > -+ if (ret < 0) { > -+ perror_with_name (_("Unable to fetch general registers.")); > -+ return; > -+ } > -+ > -+ for (regno = AARCH64_V0_REGNUM; regno <= AARCH64_V31_REGNUM; regno++) > -+ regcache_raw_supply (regcache, regno, &fpregs.fp_reg[regno]); > -+ > -+ regcache_raw_supply (regcache, AARCH64_FPSR_REGNUM, &fpregs.fp_sr); > -+ regcache_raw_supply (regcache, AARCH64_FPCR_REGNUM, &fpregs.fp_cr); > -+} > -+ > -+/* Store to the current thread the valid fp/simd register > -+ values in the GDB's register array. */ > -+ > -+static void > -+store_fpregs_to_thread (const struct regcache *regcache) > -+{ > -+ int ret; > -+ pid_t pid; > -+ int regno; > -+ struct fpreg fpregs; > -+ > -+ pid = ptid_get_pid (inferior_ptid); > -+ > -+ ret = ptrace(PT_GETFPREGS, pid, (caddr_t)&fpregs, 0); > -+ if (ret < 0) { > -+ perror_with_name (_("Unable to store general registers.")); > -+ return; > -+ } > -+ > -+ for (regno = AARCH64_V0_REGNUM; regno <= AARCH64_V31_REGNUM; regno++) > -+ if (REG_VALID == regcache_register_status (regcache, regno)) > -+ regcache_raw_collect (regcache, regno, &fpregs.fp_reg[regno]); > -+ > -+ if (REG_VALID == regcache_register_status (regcache, AARCH64_FPSR_REGNUM)) > -+ regcache_raw_collect (regcache, AARCH64_FPSR_REGNUM, &fpregs.fp_sr); > -+ if (REG_VALID == regcache_register_status (regcache, AARCH64_FPCR_REGNUM)) > -+ regcache_raw_collect (regcache, AARCH64_FPCR_REGNUM, &fpregs.fp_cr); > -+ > -+ ret = ptrace(PT_SETFPREGS, pid, (caddr_t)&fpregs, 0); > -+ if (ret < 0) > -+ perror_with_name (_("Unable to store general registers.")); > -+} > -+ > -+/* Implement the "to_fetch_register" target_ops method. */ > -+ > -+static void > -+aarch64_obsd_fetch_inferior_registers (struct target_ops *ops, > -+ struct regcache *regcache, > -+ int regno) > -+{ > -+ if (regno == -1) > -+ { > -+ fetch_gregs_from_thread (regcache); > -+ fetch_fpregs_from_thread (regcache); > -+ } > -+ else if (regno < AARCH64_V0_REGNUM) > -+ fetch_gregs_from_thread (regcache); > -+ else > -+ fetch_fpregs_from_thread (regcache); > -+} > -+ > -+/* Implement the "to_store_register" target_ops method. */ > -+ > -+static void > -+aarch64_obsd_store_inferior_registers (struct target_ops *ops, > -+ struct regcache *regcache, > -+ int regno) > -+{ > -+ if (regno == -1) > -+ { > -+ store_gregs_to_thread (regcache); > -+ store_fpregs_to_thread (regcache); > -+ } > -+ else if (regno < AARCH64_V0_REGNUM) > -+ store_gregs_to_thread (regcache); > -+ else > -+ store_fpregs_to_thread (regcache); > -+} > -+ > -+ > -+/* -Wmissing-prototypes. */ > -+void _initialize_aarch64_obsd_nat (void); > -+ > -+void > -+_initialize_aarch64_obsd_nat (void) > -+{ > -+ struct target_ops *t; > -+ > -+ t = inf_ptrace_target (); > -+ > -+ /* Add our register access methods. */ > -+ t->to_fetch_registers = aarch64_obsd_fetch_inferior_registers; > -+ t->to_store_registers = aarch64_obsd_store_inferior_registers; > -+ > -+ /* Register the target. */ > -+ add_target (t); > -+} > Index: patches/patch-gdb_aarch64obsd-tdep_c > =================================================================== > RCS file: patches/patch-gdb_aarch64obsd-tdep_c > diff -N patches/patch-gdb_aarch64obsd-tdep_c > --- patches/patch-gdb_aarch64obsd-tdep_c 10 Jul 2018 11:03:46 -0000 > 1.1 > +++ /dev/null 1 Jan 1970 00:00:00 -0000 > @@ -1,116 +0,0 @@ > -$OpenBSD: patch-gdb_aarch64obsd-tdep_c,v 1.1 2018/07/10 11:03:46 kettenis > Exp $ > -Index: gdb/aarch64obsd-tdep.c > ---- gdb/aarch64obsd-tdep.c.orig > -+++ gdb/aarch64obsd-tdep.c > -@@ -0,0 +1,111 @@ > -+/* Target-dependent code for OpenBSD/aarch64. > -+ > -+ Copyright (C) 2006-2017 Free Software Foundation, Inc. > -+ > -+ This file is part of GDB. > -+ > -+ This program is free software; you can redistribute it and/or modify > -+ it under the terms of the GNU General Public License as published by > -+ the Free Software Foundation; either version 3 of the License, or > -+ (at your option) any later version. > -+ > -+ This program is distributed in the hope that it will be useful, > -+ but WITHOUT ANY WARRANTY; without even the implied warranty of > -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the > -+ GNU General Public License for more details. > -+ > -+ You should have received a copy of the GNU General Public License > -+ along with this program. If not, see <http://www.gnu.org/licenses/>. */ > -+ > -+#include "defs.h" > -+#include "osabi.h" > -+#include "regset.h" > -+#include "trad-frame.h" > -+#include "tramp-frame.h" > -+ > -+#include "aarch64-tdep.h" > -+#include "obsd-tdep.h" > -+#include "solib-svr4.h" > -+ > -+/* The general-purpose regset consists of 31 X registers, plus SP, PC, > -+ and SPSR and TPIDR registers. */ > -+#define AARCH64_OBSD_SIZEOF_GREGSET (35 * X_REGISTER_SIZE) > -+ > -+/* The fp regset consists of 32 V registers, plus FPSR and FPCR which > -+ are 4 bytes wide each, and the whole structure is padded to 128 bit > -+ alignment. */ > -+#define AARCH64_OBSD_SIZEOF_FPREGSET (33 * V_REGISTER_SIZE) > -+ > -+/* Register maps. */ > -+ > -+static const struct regcache_map_entry aarch64_obsd_gregmap[] = > -+ { > -+ { 31, AARCH64_X0_REGNUM, 8 }, /* x0 ... x30 */ > -+ { 1, AARCH64_SP_REGNUM, 8 }, > -+ { 1, AARCH64_PC_REGNUM, 8 }, > -+ { 1, AARCH64_CPSR_REGNUM, 8 }, > -+ { 0 } > -+ }; > -+ > -+static const struct regcache_map_entry aarch64_obsd_fpregmap[] = > -+ { > -+ { 32, AARCH64_V0_REGNUM, 16 }, /* v0 ... v31 */ > -+ { 1, AARCH64_FPSR_REGNUM, 4 }, > -+ { 1, AARCH64_FPCR_REGNUM, 4 }, > -+ { 0 } > -+ }; > -+ > -+/* Register set definitions. */ > -+ > -+const struct regset aarch64_obsd_gregset = > -+ { > -+ aarch64_obsd_gregmap, > -+ regcache_supply_regset, regcache_collect_regset > -+ }; > -+ > -+const struct regset aarch64_obsd_fpregset = > -+ { > -+ aarch64_obsd_fpregmap, > -+ regcache_supply_regset, regcache_collect_regset > -+ }; > -+ > -+static void > -+aarch64_obsd_iterate_over_regset_sections (struct gdbarch *gdbarch, > -+ iterate_over_regset_sections_cb *cb, > -+ void *cb_data, > -+ const struct regcache *regcache) > -+{ > -+ cb (".reg", AARCH64_OBSD_SIZEOF_GREGSET, &aarch64_obsd_gregset, > -+ NULL, cb_data); > -+ cb (".reg2", AARCH64_OBSD_SIZEOF_FPREGSET, &aarch64_obsd_fpregset, > -+ NULL, cb_data); > -+} > -+ > -+ > -+static void > -+aarch64obsd_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch) > -+{ > -+ struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch); > -+ > -+ /* OpenBSD/aarch64 uses SVR4-style shared libraries. */ > -+ set_solib_svr4_fetch_link_map_offsets > -+ (gdbarch, svr4_lp64_fetch_link_map_offsets); > -+ set_gdbarch_skip_solib_resolver (gdbarch, obsd_skip_solib_resolver); > -+ > -+ /* Enable longjmp. */ > -+ tdep->jb_pc = 13; > -+ > -+ set_gdbarch_iterate_over_regset_sections > -+ (gdbarch, aarch64_obsd_iterate_over_regset_sections); > -+} > -+ > -+ > -+/* Provide a prototype to silence -Wmissing-prototypes. */ > -+extern initialize_file_ftype _initialize_aarch64obsd_tdep; > -+ > -+void > -+_initialize_aarch64obsd_tdep (void) > -+{ > -+ gdbarch_register_osabi (bfd_arch_aarch64, 0, GDB_OSABI_OPENBSD_ELF, > -+ aarch64obsd_init_abi); > -+} > Index: patches/patch-gdb_alpha-bsd-nat_c > =================================================================== > RCS file: patches/patch-gdb_alpha-bsd-nat_c > diff -N patches/patch-gdb_alpha-bsd-nat_c > --- /dev/null 1 Jan 1970 00:00:00 -0000 > +++ patches/patch-gdb_alpha-bsd-nat_c 23 Dec 2018 18:47:09 -0000 > @@ -0,0 +1,55 @@ > +$OpenBSD$ > + > +Index: gdb/alpha-bsd-nat.c > +--- gdb/alpha-bsd-nat.c.orig > ++++ gdb/alpha-bsd-nat.c > +@@ -98,7 +98,7 @@ alpha_bsd_nat_target::fetch_registers (struct regcache > + { > + struct reg gregs; > + > +- if (ptrace (PT_GETREGS, regcache->ptid ().pid (), > ++ if (ptrace (PT_GETREGS, get_ptrace_pid (regcache->ptid ()), > + (PTRACE_TYPE_ARG3) &gregs, 0) == -1) > + perror_with_name (_("Couldn't get registers")); > + > +@@ -112,7 +112,7 @@ alpha_bsd_nat_target::fetch_registers (struct regcache > + { > + struct fpreg fpregs; > + > +- if (ptrace (PT_GETFPREGS, regcache->ptid ().pid (), > ++ if (ptrace (PT_GETFPREGS, get_ptrace_pid (regcache->ptid ()), > + (PTRACE_TYPE_ARG3) &fpregs, 0) == -1) > + perror_with_name (_("Couldn't get floating point status")); > + > +@@ -129,13 +129,13 @@ alpha_bsd_nat_target::store_registers (struct regcache > + if (regno == -1 || getregs_supplies (regno)) > + { > + struct reg gregs; > +- if (ptrace (PT_GETREGS, regcache->ptid ().pid (), > ++ if (ptrace (PT_GETREGS, get_ptrace_pid (regcache->ptid ()), > + (PTRACE_TYPE_ARG3) &gregs, 0) == -1) > + perror_with_name (_("Couldn't get registers")); > + > + alphabsd_fill_reg (regcache, (char *) &gregs, regno); > + > +- if (ptrace (PT_SETREGS, regcache->ptid ().pid (), > ++ if (ptrace (PT_SETREGS, get_ptrace_pid (regcache->ptid ()), > + (PTRACE_TYPE_ARG3) &gregs, 0) == -1) > + perror_with_name (_("Couldn't write registers")); > + > +@@ -148,13 +148,13 @@ alpha_bsd_nat_target::store_registers (struct regcache > + { > + struct fpreg fpregs; > + > +- if (ptrace (PT_GETFPREGS, regcache->ptid ().pid (), > ++ if (ptrace (PT_GETFPREGS, get_ptrace_pid (regcache->ptid ()), > + (PTRACE_TYPE_ARG3) &fpregs, 0) == -1) > + perror_with_name (_("Couldn't get floating point status")); > + > + alphabsd_fill_fpreg (regcache, (char *) &fpregs, regno); > + > +- if (ptrace (PT_SETFPREGS, regcache->ptid ().pid (), > ++ if (ptrace (PT_SETFPREGS, get_ptrace_pid (regcache->ptid ()), > + (PTRACE_TYPE_ARG3) &fpregs, 0) == -1) > + perror_with_name (_("Couldn't write floating point status")); > + } > Index: patches/patch-gdb_alphabsd-nat_c > =================================================================== > RCS file: patches/patch-gdb_alphabsd-nat_c > diff -N patches/patch-gdb_alphabsd-nat_c > --- patches/patch-gdb_alphabsd-nat_c 3 Sep 2016 13:48:39 -0000 1.1 > +++ /dev/null 1 Jan 1970 00:00:00 -0000 > @@ -1,53 +0,0 @@ > -$OpenBSD: patch-gdb_alphabsd-nat_c,v 1.1 2016/09/03 13:48:39 jca Exp $ > ---- gdb/alphabsd-nat.c.orig Wed Feb 10 04:19:39 2016 > -+++ gdb/alphabsd-nat.c Sat May 14 22:54:35 2016 > -@@ -91,7 +91,7 @@ alphabsd_fetch_inferior_registers (struct target_ops * > - { > - struct reg gregs; > - > -- if (ptrace (PT_GETREGS, ptid_get_pid (inferior_ptid), > -+ if (ptrace (PT_GETREGS, get_ptrace_pid (inferior_ptid), > - (PTRACE_TYPE_ARG3) &gregs, 0) == -1) > - perror_with_name (_("Couldn't get registers")); > - > -@@ -105,7 +105,7 @@ alphabsd_fetch_inferior_registers (struct target_ops * > - { > - struct fpreg fpregs; > - > -- if (ptrace (PT_GETFPREGS, ptid_get_pid (inferior_ptid), > -+ if (ptrace (PT_GETFPREGS, get_ptrace_pid (inferior_ptid), > - (PTRACE_TYPE_ARG3) &fpregs, 0) == -1) > - perror_with_name (_("Couldn't get floating point status")); > - > -@@ -123,13 +123,13 @@ alphabsd_store_inferior_registers (struct target_ops * > - if (regno == -1 || getregs_supplies (regno)) > - { > - struct reg gregs; > -- if (ptrace (PT_GETREGS, ptid_get_pid (inferior_ptid), > -+ if (ptrace (PT_GETREGS, get_ptrace_pid (inferior_ptid), > - (PTRACE_TYPE_ARG3) &gregs, 0) == -1) > - perror_with_name (_("Couldn't get registers")); > - > - alphabsd_fill_reg (regcache, (char *) &gregs, regno); > - > -- if (ptrace (PT_SETREGS, ptid_get_pid (inferior_ptid), > -+ if (ptrace (PT_SETREGS, get_ptrace_pid (inferior_ptid), > - (PTRACE_TYPE_ARG3) &gregs, 0) == -1) > - perror_with_name (_("Couldn't write registers")); > - > -@@ -142,13 +142,13 @@ alphabsd_store_inferior_registers (struct target_ops * > - { > - struct fpreg fpregs; > - > -- if (ptrace (PT_GETFPREGS, ptid_get_pid (inferior_ptid), > -+ if (ptrace (PT_GETFPREGS, get_ptrace_pid (inferior_ptid), > - (PTRACE_TYPE_ARG3) &fpregs, 0) == -1) > - perror_with_name (_("Couldn't get floating point status")); > - > - alphabsd_fill_fpreg (regcache, (char *) &fpregs, regno); > - > -- if (ptrace (PT_SETFPREGS, ptid_get_pid (inferior_ptid), > -+ if (ptrace (PT_SETFPREGS, get_ptrace_pid (inferior_ptid), > - (PTRACE_TYPE_ARG3) &fpregs, 0) == -1) > - perror_with_name (_("Couldn't write floating point status")); > - } > Index: patches/patch-gdb_arm-bsd-tdep_c > =================================================================== > RCS file: patches/patch-gdb_arm-bsd-tdep_c > diff -N patches/patch-gdb_arm-bsd-tdep_c > --- /dev/null 1 Jan 1970 00:00:00 -0000 > +++ patches/patch-gdb_arm-bsd-tdep_c 23 Dec 2018 18:47:09 -0000 > @@ -0,0 +1,41 @@ > +$OpenBSD$ > + > +Index: gdb/arm-bsd-tdep.c > +--- gdb/arm-bsd-tdep.c.orig > ++++ gdb/arm-bsd-tdep.c > +@@ -30,15 +30,12 @@ > + #define ARMBSD_SIZEOF_GREGS (17 * 4) > + > + /* Sizeof `struct fpreg' in <machine/reg.h. */ > +-#define ARMBSD_SIZEOF_FPREGS ((1 + (8 * 3)) * 4) > ++#define ARMBSD_SIZEOF_FPREGS (32 * 8 + 4 + 4) > + > + static int > + armbsd_fpreg_offset (int regnum) > + { > +- if (regnum == ARM_FPS_REGNUM) > +- return 0; > +- > +- return 4 + (regnum - ARM_F0_REGNUM) * 12; > ++ return (regnum - ARM_D0_REGNUM) * 8; > + } > + > + /* Supply register REGNUM from the buffer specified by FPREGS and LEN > +@@ -55,7 +52,7 @@ armbsd_supply_fpregset (const struct regset *regset, > + > + gdb_assert (len >= ARMBSD_SIZEOF_FPREGS); > + > +- for (i = ARM_F0_REGNUM; i <= ARM_FPS_REGNUM; i++) > ++ for (i = ARM_D0_REGNUM; i <= ARM_FPSCR_REGNUM; i++) > + { > + if (regnum == i || regnum == -1) > + regcache->raw_supply (i, regs + armbsd_fpreg_offset (i)); > +@@ -83,7 +80,7 @@ armbsd_supply_gregset (const struct regset *regset, > + } > + > + if (regnum == ARM_PS_REGNUM || regnum == -1) > +- regcache->raw_supply (i, regs + 16 * 4); > ++ regcache->raw_supply (ARM_PS_REGNUM, regs + 16 * 4); > + > + if (len >= ARMBSD_SIZEOF_GREGS + ARMBSD_SIZEOF_FPREGS) > + { > Index: patches/patch-gdb_arm-nbsd-nat_c > =================================================================== > RCS file: patches/patch-gdb_arm-nbsd-nat_c > diff -N patches/patch-gdb_arm-nbsd-nat_c > --- /dev/null 1 Jan 1970 00:00:00 -0000 > +++ patches/patch-gdb_arm-nbsd-nat_c 23 Dec 2018 18:47:09 -0000 > @@ -0,0 +1,158 @@ > +$OpenBSD$ > + > +Index: gdb/arm-nbsd-nat.c > +--- gdb/arm-nbsd-nat.c.orig > ++++ gdb/arm-nbsd-nat.c > +@@ -71,9 +71,9 @@ arm_supply_fparegset (struct regcache *regcache, struc > + > + for (regno = ARM_F0_REGNUM; regno <= ARM_F7_REGNUM; regno++) > + regcache->raw_supply (regno, > +- (char *) &fparegset->fpr[regno - ARM_F0_REGNUM]); > ++ (char *) &fparegset->fp_reg[regno - ARM_F0_REGNUM]); > + > +- regcache->raw_supply (ARM_FPS_REGNUM, (char *) &fparegset->fpr_fpsr); > ++ regcache->raw_supply (ARM_FPS_REGNUM, (char *) &fparegset->fp_scr); > + } > + > + static void > +@@ -82,7 +82,7 @@ fetch_register (struct regcache *regcache, int regno) > + struct reg inferior_registers; > + int ret; > + > +- ret = ptrace (PT_GETREGS, regcache->ptid ().pid (), > ++ ret = ptrace (PT_GETREGS, get_ptrace_pid (regcache->ptid ()), > + (PTRACE_TYPE_ARG3) &inferior_registers, 0); > + > + if (ret < 0) > +@@ -131,7 +131,7 @@ fetch_regs (struct regcache *regcache) > + int ret; > + int regno; > + > +- ret = ptrace (PT_GETREGS, regcache->ptid ().pid (), > ++ ret = ptrace (PT_GETREGS, get_ptrace_pid (regcache->ptid ()), > + (PTRACE_TYPE_ARG3) &inferior_registers, 0); > + > + if (ret < 0) > +@@ -149,7 +149,7 @@ fetch_fp_register (struct regcache *regcache, int regn > + struct fpreg inferior_fp_registers; > + int ret; > + > +- ret = ptrace (PT_GETFPREGS, regcache->ptid ().pid (), > ++ ret = ptrace (PT_GETFPREGS, get_ptrace_pid (regcache->ptid ()), > + (PTRACE_TYPE_ARG3) &inferior_fp_registers, 0); > + > + if (ret < 0) > +@@ -162,12 +162,12 @@ fetch_fp_register (struct regcache *regcache, int regn > + { > + case ARM_FPS_REGNUM: > + regcache->raw_supply (ARM_FPS_REGNUM, > +- (char *) &inferior_fp_registers.fpr_fpsr); > ++ (char *) &inferior_fp_registers.fp_scr); > + break; > + > + default: > + regcache->raw_supply > +- (regno, (char *) &inferior_fp_registers.fpr[regno - ARM_F0_REGNUM]); > ++ (regno, (char *) &inferior_fp_registers.fp_reg[regno - ARM_F0_REGNUM]); > + break; > + } > + } > +@@ -179,7 +179,7 @@ fetch_fp_regs (struct regcache *regcache) > + int ret; > + int regno; > + > +- ret = ptrace (PT_GETFPREGS, regcache->ptid ().pid (), > ++ ret = ptrace (PT_GETFPREGS, get_ptrace_pid (regcache->ptid ()), > + (PTRACE_TYPE_ARG3) &inferior_fp_registers, 0); > + > + if (ret < 0) > +@@ -192,7 +192,7 @@ fetch_fp_regs (struct regcache *regcache) > + } > + > + void > +-arm_nbsd_nat_target::fetch_registers (struct regcache *regcache, int regno) > ++arm_netbsd_nat_target::fetch_registers (struct regcache *regcache, int > regno) > + { > + if (regno >= 0) > + { > +@@ -216,7 +216,7 @@ store_register (const struct regcache *regcache, int r > + struct reg inferior_registers; > + int ret; > + > +- ret = ptrace (PT_GETREGS, regcache->ptid ().pid (), > ++ ret = ptrace (PT_GETREGS, get_ptrace_pid (regcache->ptid ()), > + (PTRACE_TYPE_ARG3) &inferior_registers, 0); > + > + if (ret < 0) > +@@ -274,7 +274,7 @@ store_register (const struct regcache *regcache, int r > + break; > + } > + > +- ret = ptrace (PT_SETREGS, regcache->ptid ().pid (), > ++ ret = ptrace (PT_SETREGS, get_ptrace_pid (regcache->ptid ()), > + (PTRACE_TYPE_ARG3) &inferior_registers, 0); > + > + if (ret < 0) > +@@ -316,7 +316,7 @@ store_regs (const struct regcache *regcache) > + inferior_registers.r_pc = pc_val | psr_val; > + } > + > +- ret = ptrace (PT_SETREGS, regcache->ptid ().pid (), > ++ ret = ptrace (PT_SETREGS, get_ptrace_pid (regcache->ptid ()), > + (PTRACE_TYPE_ARG3) &inferior_registers, 0); > + > + if (ret < 0) > +@@ -329,7 +329,7 @@ store_fp_register (const struct regcache *regcache, in > + struct fpreg inferior_fp_registers; > + int ret; > + > +- ret = ptrace (PT_GETFPREGS, regcache->ptid ().pid (), > ++ ret = ptrace (PT_GETFPREGS, get_ptrace_pid (regcache->ptid ()), > + (PTRACE_TYPE_ARG3) &inferior_fp_registers, 0); > + > + if (ret < 0) > +@@ -342,16 +342,16 @@ store_fp_register (const struct regcache *regcache, in > + { > + case ARM_FPS_REGNUM: > + regcache->raw_collect (ARM_FPS_REGNUM, > +- (char *) &inferior_fp_registers.fpr_fpsr); > ++ (char *) &inferior_fp_registers.fp_scr); > + break; > + > + default: > + regcache->raw_collect > +- (regno, (char *) &inferior_fp_registers.fpr[regno - ARM_F0_REGNUM]); > ++ (regno, (char *) &inferior_fp_registers.fp_reg[regno - ARM_F0_REGNUM]); > + break; > + } > + > +- ret = ptrace (PT_SETFPREGS, regcache->ptid ().pid (), > ++ ret = ptrace (PT_SETFPREGS, get_ptrace_pid (regcache->ptid ()), > + (PTRACE_TYPE_ARG3) &inferior_fp_registers, 0); > + > + if (ret < 0) > +@@ -368,12 +368,12 @@ store_fp_regs (const struct regcache *regcache) > + > + for (regno = ARM_F0_REGNUM; regno <= ARM_F7_REGNUM; regno++) > + regcache->raw_collect > +- (regno, (char *) &inferior_fp_registers.fpr[regno - ARM_F0_REGNUM]); > ++ (regno, (char *) &inferior_fp_registers.fp_reg[regno - > ARM_F0_REGNUM]); > + > + regcache->raw_collect (ARM_FPS_REGNUM, > +- (char *) &inferior_fp_registers.fpr_fpsr); > ++ (char *) &inferior_fp_registers.fp_scr); > + > +- ret = ptrace (PT_SETFPREGS, regcache->ptid ().pid (), > ++ ret = ptrace (PT_SETFPREGS, get_ptrace_pid (regcache->ptid ()), > + (PTRACE_TYPE_ARG3) &inferior_fp_registers, 0); > + > + if (ret < 0) > +@@ -381,7 +381,7 @@ store_fp_regs (const struct regcache *regcache) > + } > + > + void > +-arm_nbsd_nat_target::store_registers (struct regcache *regcache, int regno) > ++arm_netbsd_nat_target::store_registers (struct regcache *regcache, int > regno) > + { > + if (regno >= 0) > + { > Index: patches/patch-gdb_armbsd-tdep_c > =================================================================== > RCS file: patches/patch-gdb_armbsd-tdep_c > diff -N patches/patch-gdb_armbsd-tdep_c > --- patches/patch-gdb_armbsd-tdep_c 18 Jun 2018 14:53:12 -0000 1.1 > +++ /dev/null 1 Jan 1970 00:00:00 -0000 > @@ -1,41 +0,0 @@ > -$OpenBSD: patch-gdb_armbsd-tdep_c,v 1.1 2018/06/18 14:53:12 kettenis Exp $ > - > -Index: gdb/armbsd-tdep.c > ---- gdb/armbsd-tdep.c.orig > -+++ gdb/armbsd-tdep.c > -@@ -30,15 +30,12 @@ > - #define ARMBSD_SIZEOF_GREGS (17 * 4) > - > - /* Sizeof `struct fpreg' in <machine/reg.h. */ > --#define ARMBSD_SIZEOF_FPREGS ((1 + (8 * 3)) * 4) > -+#define ARMBSD_SIZEOF_FPREGS (32 * 8 + 4 + 4) > - > - static int > - armbsd_fpreg_offset (int regnum) > - { > -- if (regnum == ARM_FPS_REGNUM) > -- return 0; > -- > -- return 4 + (regnum - ARM_F0_REGNUM) * 12; > -+ return (regnum - ARM_D0_REGNUM) * 8; > - } > - > - /* Supply register REGNUM from the buffer specified by FPREGS and LEN > -@@ -55,7 +52,7 @@ armbsd_supply_fpregset (const struct regset *regset, > - > - gdb_assert (len >= ARMBSD_SIZEOF_FPREGS); > - > -- for (i = ARM_F0_REGNUM; i <= ARM_FPS_REGNUM; i++) > -+ for (i = ARM_D0_REGNUM; i <= ARM_FPSCR_REGNUM; i++) > - { > - if (regnum == i || regnum == -1) > - regcache_raw_supply (regcache, i, regs + armbsd_fpreg_offset (i)); > -@@ -83,7 +80,7 @@ armbsd_supply_gregset (const struct regset *regset, > - } > - > - if (regnum == ARM_PS_REGNUM || regnum == -1) > -- regcache_raw_supply (regcache, i, regs + 16 * 4); > -+ regcache_raw_supply (regcache, ARM_PS_REGNUM, regs + 16 * 4); > - > - if (len >= ARMBSD_SIZEOF_GREGS + ARMBSD_SIZEOF_FPREGS) > - { > Index: patches/patch-gdb_armnbsd-nat_c > =================================================================== > RCS file: patches/patch-gdb_armnbsd-nat_c > diff -N patches/patch-gdb_armnbsd-nat_c > --- patches/patch-gdb_armnbsd-nat_c 24 Jan 2018 00:19:56 -0000 1.2 > +++ /dev/null 1 Jan 1970 00:00:00 -0000 > @@ -1,140 +0,0 @@ > -$OpenBSD: patch-gdb_armnbsd-nat_c,v 1.2 2018/01/24 00:19:56 jca Exp $ > -Index: gdb/armnbsd-nat.c > ---- gdb/armnbsd-nat.c.orig > -+++ gdb/armnbsd-nat.c > -@@ -65,10 +65,10 @@ arm_supply_fparegset (struct regcache *regcache, struc > - > - for (regno = ARM_F0_REGNUM; regno <= ARM_F7_REGNUM; regno++) > - regcache_raw_supply (regcache, regno, > -- (char *) &fparegset->fpr[regno - ARM_F0_REGNUM]); > -+ (char *) &fparegset->fp_reg[regno - ARM_F0_REGNUM]); > - > - regcache_raw_supply (regcache, ARM_FPS_REGNUM, > -- (char *) &fparegset->fpr_fpsr); > -+ (char *) &fparegset->fp_scr); > - } > - > - static void > -@@ -77,7 +77,7 @@ fetch_register (struct regcache *regcache, int regno) > - struct reg inferior_registers; > - int ret; > - > -- ret = ptrace (PT_GETREGS, ptid_get_pid (inferior_ptid), > -+ ret = ptrace (PT_GETREGS, get_ptrace_pid (inferior_ptid), > - (PTRACE_TYPE_ARG3) &inferior_registers, 0); > - > - if (ret < 0) > -@@ -130,7 +130,7 @@ fetch_regs (struct regcache *regcache) > - int ret; > - int regno; > - > -- ret = ptrace (PT_GETREGS, ptid_get_pid (inferior_ptid), > -+ ret = ptrace (PT_GETREGS, get_ptrace_pid (inferior_ptid), > - (PTRACE_TYPE_ARG3) &inferior_registers, 0); > - > - if (ret < 0) > -@@ -148,7 +148,7 @@ fetch_fp_register (struct regcache *regcache, int regn > - struct fpreg inferior_fp_registers; > - int ret; > - > -- ret = ptrace (PT_GETFPREGS, ptid_get_pid (inferior_ptid), > -+ ret = ptrace (PT_GETFPREGS, get_ptrace_pid (inferior_ptid), > - (PTRACE_TYPE_ARG3) &inferior_fp_registers, 0); > - > - if (ret < 0) > -@@ -161,12 +161,12 @@ fetch_fp_register (struct regcache *regcache, int regn > - { > - case ARM_FPS_REGNUM: > - regcache_raw_supply (regcache, ARM_FPS_REGNUM, > -- (char *) &inferior_fp_registers.fpr_fpsr); > -+ (char *) &inferior_fp_registers.fp_scr); > - break; > - > - default: > - regcache_raw_supply (regcache, regno, > -- (char *) &inferior_fp_registers.fpr[regno - > ARM_F0_REGNUM]); > -+ (char *) &inferior_fp_registers.fp_reg[regno - > ARM_F0_REGNUM]); > - break; > - } > - } > -@@ -178,7 +178,7 @@ fetch_fp_regs (struct regcache *regcache) > - int ret; > - int regno; > - > -- ret = ptrace (PT_GETFPREGS, ptid_get_pid (inferior_ptid), > -+ ret = ptrace (PT_GETFPREGS, get_ptrace_pid (inferior_ptid), > - (PTRACE_TYPE_ARG3) &inferior_fp_registers, 0); > - > - if (ret < 0) > -@@ -216,7 +216,7 @@ store_register (const struct regcache *regcache, int r > - struct reg inferior_registers; > - int ret; > - > -- ret = ptrace (PT_GETREGS, ptid_get_pid (inferior_ptid), > -+ ret = ptrace (PT_GETREGS, get_ptrace_pid (inferior_ptid), > - (PTRACE_TYPE_ARG3) &inferior_registers, 0); > - > - if (ret < 0) > -@@ -279,7 +279,7 @@ store_register (const struct regcache *regcache, int r > - break; > - } > - > -- ret = ptrace (PT_SETREGS, ptid_get_pid (inferior_ptid), > -+ ret = ptrace (PT_SETREGS, get_ptrace_pid (inferior_ptid), > - (PTRACE_TYPE_ARG3) &inferior_registers, 0); > - > - if (ret < 0) > -@@ -327,7 +327,7 @@ store_regs (const struct regcache *regcache) > - inferior_registers.r_pc = pc_val | psr_val; > - } > - > -- ret = ptrace (PT_SETREGS, ptid_get_pid (inferior_ptid), > -+ ret = ptrace (PT_SETREGS, get_ptrace_pid (inferior_ptid), > - (PTRACE_TYPE_ARG3) &inferior_registers, 0); > - > - if (ret < 0) > -@@ -340,7 +340,7 @@ store_fp_register (const struct regcache *regcache, in > - struct fpreg inferior_fp_registers; > - int ret; > - > -- ret = ptrace (PT_GETFPREGS, ptid_get_pid (inferior_ptid), > -+ ret = ptrace (PT_GETFPREGS, get_ptrace_pid (inferior_ptid), > - (PTRACE_TYPE_ARG3) &inferior_fp_registers, 0); > - > - if (ret < 0) > -@@ -353,16 +353,16 @@ store_fp_register (const struct regcache *regcache, in > - { > - case ARM_FPS_REGNUM: > - regcache_raw_collect (regcache, ARM_FPS_REGNUM, > -- (char *) &inferior_fp_registers.fpr_fpsr); > -+ (char *) &inferior_fp_registers.fp_scr); > - break; > - > - default: > - regcache_raw_collect (regcache, regno, > -- (char *) &inferior_fp_registers.fpr[regno - > ARM_F0_REGNUM]); > -+ (char *) &inferior_fp_registers.fp_reg[regno - > ARM_F0_REGNUM]); > - break; > - } > - > -- ret = ptrace (PT_SETFPREGS, ptid_get_pid (inferior_ptid), > -+ ret = ptrace (PT_SETFPREGS, get_ptrace_pid (inferior_ptid), > - (PTRACE_TYPE_ARG3) &inferior_fp_registers, 0); > - > - if (ret < 0) > -@@ -379,12 +379,12 @@ store_fp_regs (const struct regcache *regcache) > - > - for (regno = ARM_F0_REGNUM; regno <= ARM_F7_REGNUM; regno++) > - regcache_raw_collect (regcache, regno, > -- (char *) &inferior_fp_registers.fpr[regno - > ARM_F0_REGNUM]); > -+ (char *) &inferior_fp_registers.fp_reg[regno - > ARM_F0_REGNUM]); > - > - regcache_raw_collect (regcache, ARM_FPS_REGNUM, > -- (char *) &inferior_fp_registers.fpr_fpsr); > -+ (char *) &inferior_fp_registers.fp_scr); > - > -- ret = ptrace (PT_SETFPREGS, ptid_get_pid (inferior_ptid), > -+ ret = ptrace (PT_SETFPREGS, get_ptrace_pid (inferior_ptid), > - (PTRACE_TYPE_ARG3) &inferior_fp_registers, 0); > - > - if (ret < 0) > Index: patches/patch-gdb_configure_host > =================================================================== > RCS file: /cvs/ports/devel/gdb/patches/patch-gdb_configure_host,v > retrieving revision 1.1 > diff -u -p -r1.1 patch-gdb_configure_host > --- patches/patch-gdb_configure_host 10 Jul 2018 11:03:46 -0000 1.1 > +++ patches/patch-gdb_configure_host 23 Dec 2018 18:47:09 -0000 > @@ -1,11 +1,12 @@ > $OpenBSD: patch-gdb_configure_host,v 1.1 2018/07/10 11:03:46 kettenis Exp $ > ---- gdb/configure.host.orig Sat Jan 21 05:48:42 2017 > -+++ gdb/configure.host Tue Mar 7 23:52:43 2017 > -@@ -82,6 +82,7 @@ case "${host}" in > - *-*-darwin*) gdb_host=darwin ;; > +Index: gdb/configure.host > +--- gdb/configure.host.orig > ++++ gdb/configure.host > +@@ -85,6 +85,7 @@ case "${host}" in > > aarch64*-*-linux*) gdb_host=linux ;; > + aarch64*-*-freebsd*) gdb_host=fbsd ;; > +aarch64*-*-openbsd*) gdb_host=obsd ;; > > alpha*-*-linux*) gdb_host=alpha-linux ;; > - alpha*-*-freebsd* | alpha*-*-kfreebsd*-gnu) > + alpha*-*-netbsd* | alpha*-*-knetbsd*-gnu) > Index: patches/patch-gdb_configure_tgt > =================================================================== > RCS file: /cvs/ports/devel/gdb/patches/patch-gdb_configure_tgt,v > retrieving revision 1.1 > diff -u -p -r1.1 patch-gdb_configure_tgt > --- patches/patch-gdb_configure_tgt 10 Jul 2018 11:03:46 -0000 1.1 > +++ patches/patch-gdb_configure_tgt 23 Dec 2018 18:47:09 -0000 > @@ -2,17 +2,17 @@ $OpenBSD: patch-gdb_configure_tgt,v 1.1 > Index: gdb/configure.tgt > --- gdb/configure.tgt.orig > +++ gdb/configure.tgt > -@@ -51,6 +51,13 @@ aarch64*-*-linux*) > +@@ -124,6 +124,13 @@ aarch64*-*-linux*) > build_gdbserver=yes > ;; > > +aarch64*-*-openbsd*) > + # Target: OpenBSD/arm64 > -+ gdb_target_obs="aarch64-tdep.o aarch64obsd-tdep.o aarch64-insn.o \ > ++ gdb_target_obs="aarch64-tdep.o aarch64-obsd-tdep.o \ > + obsd-tdep.o solib-svr4.o \ > -+ symfile-mem.o aarch64-insn.o" > ++ symfile-mem.o" > + ;; > + > alpha*-*-linux*) > # Target: Little-endian Alpha running Linux > - gdb_target_obs="alpha-tdep.o alpha-mdebug-tdep.o alpha-linux-tdep.o \ > + gdb_target_obs="alpha-mdebug-tdep.o alpha-linux-tdep.o \ > Index: patches/patch-gdb_data-directory_Makefile_in > =================================================================== > RCS file: /cvs/ports/devel/gdb/patches/patch-gdb_data-directory_Makefile_in,v > retrieving revision 1.9 > diff -u -p -r1.9 patch-gdb_data-directory_Makefile_in > --- patches/patch-gdb_data-directory_Makefile_in 9 Oct 2016 11:39:20 > -0000 1.9 > +++ patches/patch-gdb_data-directory_Makefile_in 23 Dec 2018 18:47:09 > -0000 > @@ -1,7 +1,8 @@ > $OpenBSD: patch-gdb_data-directory_Makefile_in,v 1.9 2016/10/09 11:39:20 > pascal Exp $ > ---- gdb/data-directory/Makefile.in.orig Mon Aug 1 17:50:20 2016 > -+++ gdb/data-directory/Makefile.in Fri Oct 7 20:53:14 2016 > -@@ -187,7 +187,7 @@ stamp-syscalls: Makefile $(SYSCALLS_FILES) > +Index: gdb/data-directory/Makefile.in > +--- gdb/data-directory/Makefile.in.orig > ++++ gdb/data-directory/Makefile.in > +@@ -198,7 +198,7 @@ stamp-syscalls: Makefile $(SYSCALLS_FILES) > for file in $$files ; do \ > f=$(SYSCALLS_SRCDIR)/$$file ; \ > if test -f $$f ; then \ > @@ -10,7 +11,7 @@ $OpenBSD: patch-gdb_data-directory_Makef > fi ; \ > done > touch $@ > -@@ -229,8 +229,8 @@ stamp-python: Makefile $(PYTHON_FILES) > +@@ -240,8 +240,8 @@ stamp-python: Makefile $(PYTHON_FILES) > if test "x$$files" != x ; then \ > for file in $$files ; do \ > dir=`echo "$$file" | sed 's,/[^/]*$$,,'` ; \ > @@ -21,7 +22,7 @@ $OpenBSD: patch-gdb_data-directory_Makef > done ; \ > fi > touch $@ > -@@ -323,7 +323,7 @@ stamp-system-gdbinit: Makefile $(SYSTEM_GDBINIT_FILES) > +@@ -334,7 +334,7 @@ stamp-system-gdbinit: Makefile $(SYSTEM_GDBINIT_FILES) > for file in $$files ; do \ > f=$(SYSTEM_GDBINIT_SRCDIR)/$$file ; \ > if test -f $$f ; then \ > Index: patches/patch-gdb_hppa-obsd-nat_c > =================================================================== > RCS file: patches/patch-gdb_hppa-obsd-nat_c > diff -N patches/patch-gdb_hppa-obsd-nat_c > --- /dev/null 1 Jan 1970 00:00:00 -0000 > +++ patches/patch-gdb_hppa-obsd-nat_c 23 Dec 2018 18:47:09 -0000 > @@ -0,0 +1,59 @@ > +$OpenBSD$ > + > +Index: gdb/hppa-obsd-nat.c > +--- gdb/hppa-obsd-nat.c.orig > ++++ gdb/hppa-obsd-nat.c > +@@ -57,7 +57,7 @@ static void > + hppaobsd_supply_gregset (struct regcache *regcache, const void *gregs) > + { > + gdb_byte zero[4] = { 0 }; > +- const char *regs = gregs; > ++ const char *regs = (const char *)gregs; > + int regnum; > + > + regcache->raw_supply (HPPA_R0_REGNUM, &zero); > +@@ -96,7 +96,7 @@ hppaobsd_supply_gregset (struct regcache *regcache, co > + static void > + hppaobsd_supply_fpregset (struct regcache *regcache, const void *fpregs) > + { > +- const char *regs = fpregs; > ++ const char *regs = (const char *)fpregs; > + int regnum; > + > + for (regnum = HPPA_FP0_REGNUM; regnum <= HPPA_FP31R_REGNUM; > +@@ -114,7 +114,7 @@ static void > + hppaobsd_collect_gregset (const struct regcache *regcache, > + void *gregs, int regnum) > + { > +- char *regs = gregs; > ++ char *regs = (char *)gregs; > + int i; > + > + for (i = HPPA_R1_REGNUM; i <= HPPA_R31_REGNUM; i++) > +@@ -176,7 +176,7 @@ static void > + hppaobsd_collect_fpregset (struct regcache *regcache, > + void *fpregs, int regnum) > + { > +- char *regs = fpregs; > ++ char *regs = (char *)fpregs; > + int i; > + > + for (i = HPPA_FP0_REGNUM; i <= HPPA_FP31R_REGNUM; i += 2, regs += 8) > +@@ -196,7 +196,7 @@ hppaobsd_collect_fpregset (struct regcache *regcache, > + void > + hppa_obsd_nat_target::fetch_registers (struct regcache *regcache, int > regnum) > + { > +- pid_t pid = regcache->ptid ().pid (); > ++ pid_t pid = get_ptrace_pid (regcache->ptid ()); > + > + if (regnum == -1 || hppaobsd_gregset_supplies_p (regnum)) > + { > +@@ -225,6 +225,8 @@ hppa_obsd_nat_target::fetch_registers (struct regcache > + void > + hppa_obsd_nat_target::store_registers (struct regcache *regcache, int > regnum) > + { > ++ pid_t pid = get_ptrace_pid (regcache->ptid ()); > ++ > + if (regnum == -1 || hppaobsd_gregset_supplies_p (regnum)) > + { > + struct reg regs; > Index: patches/patch-gdb_hppaobsd-nat_c > =================================================================== > RCS file: patches/patch-gdb_hppaobsd-nat_c > diff -N patches/patch-gdb_hppaobsd-nat_c > --- patches/patch-gdb_hppaobsd-nat_c 3 Sep 2016 13:48:39 -0000 1.1 > +++ /dev/null 1 Jan 1970 00:00:00 -0000 > @@ -1,53 +0,0 @@ > -$OpenBSD: patch-gdb_hppaobsd-nat_c,v 1.1 2016/09/03 13:48:39 jca Exp $ > ---- gdb/hppaobsd-nat.c.orig Wed Feb 10 04:19:39 2016 > -+++ gdb/hppaobsd-nat.c Sat May 14 22:54:35 2016 > -@@ -193,7 +193,7 @@ hppaobsd_fetch_registers (struct target_ops *ops, > - { > - struct reg regs; > - > -- if (ptrace (PT_GETREGS, ptid_get_pid (inferior_ptid), > -+ if (ptrace (PT_GETREGS, get_ptrace_pid (inferior_ptid), > - (PTRACE_TYPE_ARG3) ®s, 0) == -1) > - perror_with_name (_("Couldn't get registers")); > - > -@@ -204,7 +204,7 @@ hppaobsd_fetch_registers (struct target_ops *ops, > - { > - struct fpreg fpregs; > - > -- if (ptrace (PT_GETFPREGS, ptid_get_pid (inferior_ptid), > -+ if (ptrace (PT_GETFPREGS, get_ptrace_pid (inferior_ptid), > - (PTRACE_TYPE_ARG3) &fpregs, 0) == -1) > - perror_with_name (_("Couldn't get floating point status")); > - > -@@ -223,13 +223,13 @@ hppaobsd_store_registers (struct target_ops *ops, > - { > - struct reg regs; > - > -- if (ptrace (PT_GETREGS, ptid_get_pid (inferior_ptid), > -+ if (ptrace (PT_GETREGS, get_ptrace_pid (inferior_ptid), > - (PTRACE_TYPE_ARG3) ®s, 0) == -1) > - perror_with_name (_("Couldn't get registers")); > - > - hppaobsd_collect_gregset (regcache, ®s, regnum); > - > -- if (ptrace (PT_SETREGS, ptid_get_pid (inferior_ptid), > -+ if (ptrace (PT_SETREGS, get_ptrace_pid (inferior_ptid), > - (PTRACE_TYPE_ARG3) ®s, 0) == -1) > - perror_with_name (_("Couldn't write registers")); > - } > -@@ -238,13 +238,13 @@ hppaobsd_store_registers (struct target_ops *ops, > - { > - struct fpreg fpregs; > - > -- if (ptrace (PT_GETFPREGS, ptid_get_pid (inferior_ptid), > -+ if (ptrace (PT_GETFPREGS, get_ptrace_pid (inferior_ptid), > - (PTRACE_TYPE_ARG3) &fpregs, 0) == -1) > - perror_with_name (_("Couldn't get floating point status")); > - > - hppaobsd_collect_fpregset (regcache, &fpregs, regnum); > - > -- if (ptrace (PT_SETFPREGS, ptid_get_pid (inferior_ptid), > -+ if (ptrace (PT_SETFPREGS, get_ptrace_pid (inferior_ptid), > - (PTRACE_TYPE_ARG3) &fpregs, 0) == -1) > - perror_with_name (_("Couldn't write floating point status")); > - } > Index: patches/patch-gdb_i386-bsd-nat_h > =================================================================== > RCS file: patches/patch-gdb_i386-bsd-nat_h > diff -N patches/patch-gdb_i386-bsd-nat_h > --- /dev/null 1 Jan 1970 00:00:00 -0000 > +++ patches/patch-gdb_i386-bsd-nat_h 23 Dec 2018 18:47:09 -0000 > @@ -0,0 +1,14 @@ > +$OpenBSD$ > + > +Index: gdb/i386-bsd-nat.h > +--- gdb/i386-bsd-nat.h.orig > ++++ gdb/i386-bsd-nat.h > +@@ -20,6 +20,8 @@ > + #ifndef I386_BSD_NAT_H > + #define I386_BSD_NAT_H > + > ++#include "x86-bsd-nat.h" > ++ > + /* Helper functions. See definitions. */ > + extern void i386bsd_fetch_inferior_registers (struct regcache *regcache, > + int regnum); > Index: patches/patch-gdb_i386-obsd-nat_c > =================================================================== > RCS file: patches/patch-gdb_i386-obsd-nat_c > diff -N patches/patch-gdb_i386-obsd-nat_c > --- /dev/null 1 Jan 1970 00:00:00 -0000 > +++ patches/patch-gdb_i386-obsd-nat_c 23 Dec 2018 18:47:09 -0000 > @@ -0,0 +1,14 @@ > +$OpenBSD$ > + > +Index: gdb/i386-obsd-nat.c > +--- gdb/i386-obsd-nat.c.orig > ++++ gdb/i386-obsd-nat.c > +@@ -93,7 +93,7 @@ static i386_bsd_nat_target<obsd_nat_target> the_i386_o > + void > + _initialize_i386obsd_nat (void) > + { > +- add_inf_child_target (&i386_obsd_nat_target); > ++ add_inf_child_target (&the_i386_obsd_nat_target); > + > + /* Support debugging kernel virtual memory images. */ > + bsd_kvm_add_target (i386obsd_supply_pcb); > Index: patches/patch-gdb_m88kbsd-nat_c > =================================================================== > RCS file: patches/patch-gdb_m88kbsd-nat_c > diff -N patches/patch-gdb_m88kbsd-nat_c > --- patches/patch-gdb_m88kbsd-nat_c 3 Sep 2016 13:48:39 -0000 1.1 > +++ /dev/null 1 Jan 1970 00:00:00 -0000 > @@ -1,28 +0,0 @@ > -$OpenBSD: patch-gdb_m88kbsd-nat_c,v 1.1 2016/09/03 13:48:39 jca Exp $ > ---- gdb/m88kbsd-nat.c.orig Wed Feb 10 04:19:39 2016 > -+++ gdb/m88kbsd-nat.c Sat May 14 22:54:35 2016 > -@@ -68,7 +68,7 @@ m88kbsd_fetch_inferior_registers (struct target_ops *o > - { > - struct reg regs; > - > -- if (ptrace (PT_GETREGS, ptid_get_pid (inferior_ptid), > -+ if (ptrace (PT_GETREGS, get_ptrace_pid (inferior_ptid), > - (PTRACE_TYPE_ARG3) ®s, 0) == -1) > - perror_with_name (_("Couldn't get registers")); > - > -@@ -84,13 +84,13 @@ m88kbsd_store_inferior_registers (struct target_ops *o > - { > - struct reg regs; > - > -- if (ptrace (PT_GETREGS, ptid_get_pid (inferior_ptid), > -+ if (ptrace (PT_GETREGS, get_ptrace_pid (inferior_ptid), > - (PTRACE_TYPE_ARG3) ®s, 0) == -1) > - perror_with_name (_("Couldn't get registers")); > - > - m88kbsd_collect_gregset (regcache, ®s, regnum); > - > -- if (ptrace (PT_SETREGS, ptid_get_pid (inferior_ptid), > -+ if (ptrace (PT_SETREGS, get_ptrace_pid (inferior_ptid), > - (PTRACE_TYPE_ARG3) ®s, 0) == -1) > - perror_with_name (_("Couldn't write registers")); > - } > Index: patches/patch-gdb_mips64-obsd-nat_c > =================================================================== > RCS file: patches/patch-gdb_mips64-obsd-nat_c > diff -N patches/patch-gdb_mips64-obsd-nat_c > --- /dev/null 1 Jan 1970 00:00:00 -0000 > +++ patches/patch-gdb_mips64-obsd-nat_c 23 Dec 2018 18:47:09 -0000 > @@ -0,0 +1,41 @@ > +$OpenBSD$ > + > +Index: gdb/mips64-obsd-nat.c > +--- gdb/mips64-obsd-nat.c.orig > ++++ gdb/mips64-obsd-nat.c > +@@ -48,7 +48,7 @@ static mips64_obsd_nat_target the_mips64_obsd_nat_targ > + static void > + mips64obsd_supply_gregset (struct regcache *regcache, const void *gregs) > + { > +- const char *regs = gregs; > ++ const char *regs = (const char *) gregs; > + int regnum; > + > + for (regnum = MIPS_ZERO_REGNUM; regnum <= MIPS_PC_REGNUM; regnum++) > +@@ -65,7 +65,7 @@ static void > + mips64obsd_collect_gregset (const struct regcache *regcache, > + void *gregs, int regnum) > + { > +- char *regs = gregs; > ++ char *regs = (char *) gregs; > + int i; > + > + for (i = MIPS_ZERO_REGNUM; i <= MIPS_PC_REGNUM; i++) > +@@ -89,7 +89,7 @@ void > + mips64_obsd_nat_target::fetch_registers (struct regcache *regcache, int > regnum) > + { > + struct reg regs; > +- pid_t pid = regcache->ptid ().pid (); > ++ pid_t pid = get_ptrace_pid (regcache->ptid ()), > + > + if (ptrace (PT_GETREGS, pid, (PTRACE_TYPE_ARG3) ®s, 0) == -1) > + perror_with_name (_("Couldn't get registers")); > +@@ -104,7 +104,7 @@ static void > + mips64_obsd_nat_target::store_registers (struct regcache *regcache, int > regnum) > + { > + struct reg regs; > +- pid_t pid = regcache->ptid ().pid (); > ++ pid_t pid = get_ptrace_pid (regcache->ptid ()), > + > + if (ptrace (PT_GETREGS, pid, (PTRACE_TYPE_ARG3) ®s, 0) == -1) > + perror_with_name (_("Couldn't get registers")); > Index: patches/patch-gdb_mips64obsd-nat_c > =================================================================== > RCS file: patches/patch-gdb_mips64obsd-nat_c > diff -N patches/patch-gdb_mips64obsd-nat_c > --- patches/patch-gdb_mips64obsd-nat_c 21 Oct 2016 13:13:31 -0000 > 1.2 > +++ /dev/null 1 Jan 1970 00:00:00 -0000 > @@ -1,46 +0,0 @@ > -$OpenBSD: patch-gdb_mips64obsd-nat_c,v 1.2 2016/10/21 13:13:31 visa Exp $ > ---- gdb/mips64obsd-nat.c.orig Mon Aug 1 09:50:20 2016 > -+++ gdb/mips64obsd-nat.c Tue Oct 18 07:24:31 2016 > -@@ -40,7 +40,7 @@ > - static void > - mips64obsd_supply_gregset (struct regcache *regcache, const void *gregs) > - { > -- const char *regs = gregs; > -+ const char *regs = (const char *) gregs; > - int regnum; > - > - for (regnum = MIPS_ZERO_REGNUM; regnum <= MIPS_PC_REGNUM; regnum++) > -@@ -57,7 +57,7 @@ static void > - mips64obsd_collect_gregset (const struct regcache *regcache, > - void *gregs, int regnum) > - { > -- char *regs = gregs; > -+ char *regs = (char *) gregs; > - int i; > - > - for (i = MIPS_ZERO_REGNUM; i <= MIPS_PC_REGNUM; i++) > -@@ -83,7 +83,7 @@ mips64obsd_fetch_inferior_registers (struct target_ops > - { > - struct reg regs; > - > -- if (ptrace (PT_GETREGS, ptid_get_pid (inferior_ptid), > -+ if (ptrace (PT_GETREGS, get_ptrace_pid (inferior_ptid), > - (PTRACE_TYPE_ARG3) ®s, 0) == -1) > - perror_with_name (_("Couldn't get registers")); > - > -@@ -99,13 +99,13 @@ mips64obsd_store_inferior_registers (struct target_ops > - { > - struct reg regs; > - > -- if (ptrace (PT_GETREGS, ptid_get_pid (inferior_ptid), > -+ if (ptrace (PT_GETREGS, get_ptrace_pid (inferior_ptid), > - (PTRACE_TYPE_ARG3) ®s, 0) == -1) > - perror_with_name (_("Couldn't get registers")); > - > - mips64obsd_collect_gregset (regcache, ®s, regnum); > - > -- if (ptrace (PT_SETREGS, ptid_get_pid (inferior_ptid), > -+ if (ptrace (PT_SETREGS, get_ptrace_pid (inferior_ptid), > - (PTRACE_TYPE_ARG3) ®s, 0) == -1) > - perror_with_name (_("Couldn't write registers")); > - } > Index: patches/patch-gdb_ppc-obsd-nat_c > =================================================================== > RCS file: patches/patch-gdb_ppc-obsd-nat_c > diff -N patches/patch-gdb_ppc-obsd-nat_c > --- /dev/null 1 Jan 1970 00:00:00 -0000 > +++ patches/patch-gdb_ppc-obsd-nat_c 23 Dec 2018 18:47:09 -0000 > @@ -0,0 +1,23 @@ > +$OpenBSD$ > + > +Index: gdb/ppc-obsd-nat.c > +--- gdb/ppc-obsd-nat.c.orig > ++++ gdb/ppc-obsd-nat.c > +@@ -82,7 +82,7 @@ void > + ppc_obsd_nat_target::fetch_registers (struct regcache *regcache, int regnum) > + { > + struct reg regs; > +- pid_t pid = regcache->ptid ().pid (); > ++ pid_t pid = get_ptrace_pid (regcache->ptid ()); > + > + if (ptrace (PT_GETREGS, pid, (PTRACE_TYPE_ARG3) ®s, 0) == -1) > + perror_with_name (_("Couldn't get registers")); > +@@ -116,7 +116,7 @@ void > + ppc_obsd_nat_target::store_registers (struct regcache *regcache, int regnum) > + { > + struct reg regs; > +- pid_t pid = regcache->ptid ().pid (); > ++ pid_t pid = get_ptrace_pid (regcache->ptid ()); > + > + if (ptrace (PT_GETREGS, pid, (PTRACE_TYPE_ARG3) ®s, 0) == -1) > + perror_with_name (_("Couldn't get registers")); > Index: patches/patch-gdb_ppcobsd-nat_c > =================================================================== > RCS file: patches/patch-gdb_ppcobsd-nat_c > diff -N patches/patch-gdb_ppcobsd-nat_c > --- patches/patch-gdb_ppcobsd-nat_c 3 Sep 2016 13:48:39 -0000 1.1 > +++ /dev/null 1 Jan 1970 00:00:00 -0000 > @@ -1,56 +0,0 @@ > -$OpenBSD: patch-gdb_ppcobsd-nat_c,v 1.1 2016/09/03 13:48:39 jca Exp $ > ---- gdb/ppcobsd-nat.c.orig Wed Feb 10 04:19:39 2016 > -+++ gdb/ppcobsd-nat.c Sat May 14 22:54:35 2016 > -@@ -76,7 +76,7 @@ ppcobsd_fetch_registers (struct target_ops *ops, > - { > - struct reg regs; > - > -- if (ptrace (PT_GETREGS, ptid_get_pid (inferior_ptid), > -+ if (ptrace (PT_GETREGS, get_ptrace_pid (inferior_ptid), > - (PTRACE_TYPE_ARG3) ®s, 0) == -1) > - perror_with_name (_("Couldn't get registers")); > - > -@@ -93,7 +93,7 @@ ppcobsd_fetch_registers (struct target_ops *ops, > - { > - struct fpreg fpregs; > - > -- if (ptrace (PT_GETFPREGS, ptid_get_pid (inferior_ptid), > -+ if (ptrace (PT_GETFPREGS, get_ptrace_pid (inferior_ptid), > - (PTRACE_TYPE_ARG3) &fpregs, 0) == -1) > - perror_with_name (_("Couldn't get floating point status")); > - > -@@ -112,7 +112,7 @@ ppcobsd_store_registers (struct target_ops *ops, > - { > - struct reg regs; > - > -- if (ptrace (PT_GETREGS, ptid_get_pid (inferior_ptid), > -+ if (ptrace (PT_GETREGS, get_ptrace_pid (inferior_ptid), > - (PTRACE_TYPE_ARG3) ®s, 0) == -1) > - perror_with_name (_("Couldn't get registers")); > - > -@@ -123,7 +123,7 @@ ppcobsd_store_registers (struct target_ops *ops, > - regnum, ®s, sizeof regs); > - #endif > - > -- if (ptrace (PT_SETREGS, ptid_get_pid (inferior_ptid), > -+ if (ptrace (PT_SETREGS, get_ptrace_pid (inferior_ptid), > - (PTRACE_TYPE_ARG3) ®s, 0) == -1) > - perror_with_name (_("Couldn't write registers")); > - > -@@ -133,14 +133,14 @@ ppcobsd_store_registers (struct target_ops *ops, > - { > - struct fpreg fpregs; > - > -- if (ptrace (PT_GETFPREGS, ptid_get_pid (inferior_ptid), > -+ if (ptrace (PT_GETFPREGS, get_ptrace_pid (inferior_ptid), > - (PTRACE_TYPE_ARG3) &fpregs, 0) == -1) > - perror_with_name (_("Couldn't get floating point status")); > - > - ppc_collect_fpregset (&ppcobsd_fpregset, regcache, > - regnum, &fpregs, sizeof fpregs); > - > -- if (ptrace (PT_SETFPREGS, ptid_get_pid (inferior_ptid), > -+ if (ptrace (PT_SETFPREGS, get_ptrace_pid (inferior_ptid), > - (PTRACE_TYPE_ARG3) &fpregs, 0) == -1) > - perror_with_name (_("Couldn't write floating point status")); > - } > Index: patches/patch-gdb_python_python-config_py > =================================================================== > RCS file: /cvs/ports/devel/gdb/patches/patch-gdb_python_python-config_py,v > retrieving revision 1.3 > diff -u -p -r1.3 patch-gdb_python_python-config_py > --- patches/patch-gdb_python_python-config_py 4 May 2013 21:27:11 -0000 > 1.3 > +++ patches/patch-gdb_python_python-config_py 23 Dec 2018 18:47:09 -0000 > @@ -1,7 +1,8 @@ > $OpenBSD: patch-gdb_python_python-config_py,v 1.3 2013/05/04 21:27:11 pascal > Exp $ > ---- gdb/python/python-config.py.orig Wed Dec 12 17:47:30 2012 > -+++ gdb/python/python-config.py Mon Apr 29 20:28:12 2013 > -@@ -72,6 +72,8 @@ for opt in opt_flags: > +Index: gdb/python/python-config.py > +--- gdb/python/python-config.py.orig > ++++ gdb/python/python-config.py > +@@ -71,6 +71,8 @@ for opt in opt_flags: > libs.insert(0, '-L' + getvar('LIBPL')) > elif os.name == 'nt': > libs.insert(0, '-L' + sysconfig.PREFIX + '/libs') > Index: patches/patch-gdb_sh-nbsd-nat_c > =================================================================== > RCS file: patches/patch-gdb_sh-nbsd-nat_c > diff -N patches/patch-gdb_sh-nbsd-nat_c > --- /dev/null 1 Jan 1970 00:00:00 -0000 > +++ patches/patch-gdb_sh-nbsd-nat_c 23 Dec 2018 18:47:09 -0000 > @@ -0,0 +1,23 @@ > +$OpenBSD$ > + > +Index: gdb/sh-nbsd-nat.c > +--- gdb/sh-nbsd-nat.c.orig > ++++ gdb/sh-nbsd-nat.c > +@@ -51,7 +51,7 @@ static sh_nbsd_nat_target the_sh_nbsd_nat_target; > + void > + sh_nbsd_nat_target::fetch_registers (struct regcache *regcache, int regno) > + { > +- pid_t pid = regcache->ptid ().pid (); > ++ pid_t pid = get_ptrace_pid (regcache->ptid ()), > + > + if (regno == -1 || GETREGS_SUPPLIES (regcache->arch (), regno)) > + { > +@@ -73,7 +73,7 @@ sh_nbsd_nat_target::fetch_registers (struct regcache * > + void > + sh_nbsd_nat_target::store_registers (struct regcache *regcache, int regno) > + { > +- pid_t pid = regcache->ptid ().pid (); > ++ pid_t pid = get_ptrace_pid (regcache->ptid ()), > + > + if (regno == -1 || GETREGS_SUPPLIES (regcache->arch (), regno)) > + { > Index: patches/patch-gdb_shnbsd-nat_c > =================================================================== > RCS file: patches/patch-gdb_shnbsd-nat_c > diff -N patches/patch-gdb_shnbsd-nat_c > --- patches/patch-gdb_shnbsd-nat_c 3 Sep 2016 13:48:39 -0000 1.1 > +++ /dev/null 1 Jan 1970 00:00:00 -0000 > @@ -1,30 +0,0 @@ > -$OpenBSD: patch-gdb_shnbsd-nat_c,v 1.1 2016/09/03 13:48:39 jca Exp $ > ---- gdb/shnbsd-nat.c.orig Wed Feb 10 04:19:39 2016 > -+++ gdb/shnbsd-nat.c Sat May 14 22:54:35 2016 > -@@ -49,7 +49,7 @@ shnbsd_fetch_inferior_registers (struct target_ops *op > - { > - struct reg inferior_registers; > - > -- if (ptrace (PT_GETREGS, ptid_get_pid (inferior_ptid), > -+ if (ptrace (PT_GETREGS, get_ptrace_pid (inferior_ptid), > - (PTRACE_TYPE_ARG3) &inferior_registers, 0) == -1) > - perror_with_name (_("Couldn't get registers")); > - > -@@ -70,7 +70,7 @@ shnbsd_store_inferior_registers (struct target_ops *op > - { > - struct reg inferior_registers; > - > -- if (ptrace (PT_GETREGS, ptid_get_pid (inferior_ptid), > -+ if (ptrace (PT_GETREGS, get_ptrace_pid (inferior_ptid), > - (PTRACE_TYPE_ARG3) &inferior_registers, 0) == -1) > - perror_with_name (_("Couldn't get registers")); > - > -@@ -78,7 +78,7 @@ shnbsd_store_inferior_registers (struct target_ops *op > - (char *) &inferior_registers, > - SHNBSD_SIZEOF_GREGS); > - > -- if (ptrace (PT_SETREGS, ptid_get_pid (inferior_ptid), > -+ if (ptrace (PT_SETREGS, get_ptrace_pid (inferior_ptid), > - (PTRACE_TYPE_ARG3) &inferior_registers, 0) == -1) > - perror_with_name (_("Couldn't set registers")); > - > Index: patches/patch-gdb_sparc-nat_h > =================================================================== > RCS file: patches/patch-gdb_sparc-nat_h > diff -N patches/patch-gdb_sparc-nat_h > --- /dev/null 1 Jan 1970 00:00:00 -0000 > +++ patches/patch-gdb_sparc-nat_h 23 Dec 2018 18:47:09 -0000 > @@ -0,0 +1,26 @@ > +$OpenBSD$ > + > +Index: gdb/sparc-nat.h > +--- gdb/sparc-nat.h.orig > ++++ gdb/sparc-nat.h > +@@ -64,20 +64,6 @@ struct sparc_target : public BaseTarget > + void store_registers (struct regcache *regcache, int regnum) override > + { sparc_store_inferior_registers (regcache, regnum); } > + > +- enum target_xfer_status xfer_partial (enum target_object object, > +- const char *annex, > +- gdb_byte *readbuf, > +- const gdb_byte *writebuf, > +- ULONGEST offset, ULONGEST len, > +- ULONGEST *xfered_len) override > +- { > +- if (object == TARGET_OBJECT_WCOOKIE) > +- return sparc_xfer_wcookie (object, annex, readbuf, writebuf, > +- offset, len, xfered_len); > +- > +- return BaseTarget (object, annex, readbuf, writebuf, > +- offset, len, xfered_len); > +- } > + }; > + > + #endif /* sparc-nat.h */ > Index: patches/patch-gdb_x86-nat_h > =================================================================== > RCS file: patches/patch-gdb_x86-nat_h > diff -N patches/patch-gdb_x86-nat_h > --- /dev/null 1 Jan 1970 00:00:00 -0000 > +++ patches/patch-gdb_x86-nat_h 23 Dec 2018 18:47:09 -0000 > @@ -0,0 +1,47 @@ > +$OpenBSD$ > + > +Index: gdb/x86-nat.h > +--- gdb/x86-nat.h.orig > ++++ gdb/x86-nat.h > +@@ -79,41 +79,6 @@ struct x86_nat_target : public BaseTarget > + bool have_continuable_watchpoint () override > + { return true; } > + > +- int can_use_hw_breakpoint (enum bptype type, int cnt, int othertype) > override > +- { return x86_can_use_hw_breakpoint (type, cnt, othertype); } > +- > +- int region_ok_for_hw_watchpoint (CORE_ADDR addr, int len) override > +- { return x86_region_ok_for_hw_watchpoint (addr, len); } > +- > +- int insert_watchpoint (CORE_ADDR addr, int len, > +- enum target_hw_bp_type type, > +- struct expression *cond) override > +- { return x86_insert_watchpoint (addr, len, type, cond); } > +- > +- int remove_watchpoint (CORE_ADDR addr, int len, > +- enum target_hw_bp_type type, > +- struct expression *cond) override > +- { return x86_remove_watchpoint (addr, len, type, cond); } > +- > +- int insert_hw_breakpoint (struct gdbarch *gdbarch, > +- struct bp_target_info *bp_tgt) override > +- { return x86_insert_hw_breakpoint (gdbarch, bp_tgt); } > +- > +- int remove_hw_breakpoint (struct gdbarch *gdbarch, > +- struct bp_target_info *bp_tgt) override > +- { return x86_remove_hw_breakpoint (gdbarch, bp_tgt); } > +- > +- bool stopped_by_watchpoint () override > +- { return x86_stopped_by_watchpoint (); } > +- > +- bool stopped_data_address (CORE_ADDR *addr_p) override > +- { return x86_stopped_data_address (addr_p); } > +- > +- /* A target must provide an implementation of the > +- "supports_stopped_by_hw_breakpoint" target method before this > +- callback will be used. */ > +- bool stopped_by_hw_breakpoint () override > +- { return x86_stopped_by_hw_breakpoint (); } > + }; > + > + #endif /* X86_NAT_H */ > Index: pkg/PLIST > =================================================================== > RCS file: /cvs/ports/devel/gdb/pkg/PLIST,v > retrieving revision 1.19 > diff -u -p -r1.19 PLIST > --- pkg/PLIST 1 Nov 2018 20:36:09 -0000 1.19 > +++ pkg/PLIST 23 Dec 2018 18:47:09 -0000 > @@ -2,9 +2,11 @@ > @conflict arm-none-eabi-gdb-* > @conflict libbfd-* > @bin bin/egdb > +bin/egdb-add-index > include/ansidecl.h > include/bfd.h > include/bfdlink.h > +include/diagnostics.h > include/dis-asm.h > include/gdb/ > include/gdb/jit-reader.h > @@ -19,6 +21,7 @@ lib/libbfd.a > lib/libbfd.la > lib/libopcodes.a > lib/libopcodes.la > +@man man/man1/egdb-add-index.1 > @man man/man1/egdb.1 > @man man/man1/egdbserver.1 > @man man/man5/egdbinit.5