projects
/
deliverable
/
binutils-gdb.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Updare French translation for binutils and German translation for opcodes.
[deliverable/binutils-gdb.git]
/
gdb
/
m68kbsd-nat.c
diff --git
a/gdb/m68kbsd-nat.c
b/gdb/m68kbsd-nat.c
index 285c149428dadb2147f56f350bc75849a1dd40db..0b7ea2169ec2872d2c866458628fcfc2a04d5453 100644
(file)
--- a/
gdb/m68kbsd-nat.c
+++ b/
gdb/m68kbsd-nat.c
@@
-1,12
+1,12
@@
/* Native-dependent code for Motorola 68000 BSD's.
/* Native-dependent code for Motorola 68000 BSD's.
- Copyright
2004
Free Software Foundation, Inc.
+ Copyright
(C) 2004-2015
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
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
2
of the License, or
+ 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,
(at your option) any later version.
This program is distributed in the hope that it will be useful,
@@
-15,21
+15,19
@@
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
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, write to the Free Software
- Foundation, Inc., 59 Temple Place - Suite 330,
- Boston, MA 02111-1307, USA. */
+ 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 "defs.h"
#include "gdbcore.h"
#include "inferior.h"
#include "regcache.h"
-#include "gdb_assert.h"
#include <sys/types.h>
#include <sys/ptrace.h>
#include <machine/reg.h>
#include "m68k-tdep.h"
#include <sys/types.h>
#include <sys/ptrace.h>
#include <machine/reg.h>
#include "m68k-tdep.h"
+#include "inf-ptrace.h"
static int
m68kbsd_gregset_supplies_p (int regnum)
static int
m68kbsd_gregset_supplies_p (int regnum)
@@
-60,12
+58,13
@@
m68kbsd_supply_gregset (struct regcache *regcache, const void *gregs)
static void
m68kbsd_supply_fpregset (struct regcache *regcache, const void *fpregs)
{
static void
m68kbsd_supply_fpregset (struct regcache *regcache, const void *fpregs)
{
+ struct gdbarch *gdbarch = get_regcache_arch (regcache);
const char *regs = fpregs;
int regnum;
for (regnum = M68K_FP0_REGNUM; regnum <= M68K_FPI_REGNUM; regnum++)
regcache_raw_supply (regcache, regnum,
const char *regs = fpregs;
int regnum;
for (regnum = M68K_FP0_REGNUM; regnum <= M68K_FPI_REGNUM; regnum++)
regcache_raw_supply (regcache, regnum,
- regs + m68kbsd_fpreg_offset (regnum));
+ regs + m68kbsd_fpreg_offset (
gdbarch,
regnum));
}
/* Collect the general-purpose registers from REGCACHE and store them
}
/* Collect the general-purpose registers from REGCACHE and store them
@@
-92,13
+91,15
@@
static void
m68kbsd_collect_fpregset (struct regcache *regcache,
void *fpregs, int regnum)
{
m68kbsd_collect_fpregset (struct regcache *regcache,
void *fpregs, int regnum)
{
+ struct gdbarch *gdbarch = get_regcache_arch (regcache);
char *regs = fpregs;
int i;
for (i = M68K_FP0_REGNUM; i <= M68K_FPI_REGNUM; i++)
{
if (regnum == -1 || regnum == i)
char *regs = fpregs;
int i;
for (i = M68K_FP0_REGNUM; i <= M68K_FPI_REGNUM; i++)
{
if (regnum == -1 || regnum == i)
- regcache_raw_collect (regcache, i, regs + m68kbsd_fpreg_offset (i));
+ regcache_raw_collect (regcache, i,
+ regs + m68kbsd_fpreg_offset (gdbarch, i));
}
}
\f
}
}
\f
@@
-106,73
+107,74
@@
m68kbsd_collect_fpregset (struct regcache *regcache,
/* Fetch register REGNUM from the inferior. If REGNUM is -1, do this
for all registers (including the floating-point registers). */
/* Fetch register REGNUM from the inferior. If REGNUM is -1, do this
for all registers (including the floating-point registers). */
-void
-fetch_inferior_registers (int regnum)
+static void
+m68kbsd_fetch_inferior_registers (struct target_ops *ops,
+ struct regcache *regcache, int regnum)
{
if (regnum == -1 || m68kbsd_gregset_supplies_p (regnum))
{
struct reg regs;
{
if (regnum == -1 || m68kbsd_gregset_supplies_p (regnum))
{
struct reg regs;
- if (ptrace (PT_GETREGS,
PIDGET
(inferior_ptid),
- (PTRACE_
ARG3_TYPE
) ®s, 0) == -1)
- perror_with_name (
"Couldn't get registers"
);
+ if (ptrace (PT_GETREGS,
ptid_get_pid
(inferior_ptid),
+ (PTRACE_
TYPE_ARG3
) ®s, 0) == -1)
+ perror_with_name (
_("Couldn't get registers")
);
- m68kbsd_supply_gregset (
current_
regcache, ®s);
+ m68kbsd_supply_gregset (regcache, ®s);
}
if (regnum == -1 || m68kbsd_fpregset_supplies_p (regnum))
{
struct fpreg fpregs;
}
if (regnum == -1 || m68kbsd_fpregset_supplies_p (regnum))
{
struct fpreg fpregs;
- if (ptrace (PT_GETFPREGS,
PIDGET
(inferior_ptid),
- (PTRACE_
ARG3_TYPE
) &fpregs, 0) == -1)
- perror_with_name (
"Couldn't get floating point status"
);
+ if (ptrace (PT_GETFPREGS,
ptid_get_pid
(inferior_ptid),
+ (PTRACE_
TYPE_ARG3
) &fpregs, 0) == -1)
+ perror_with_name (
_("Couldn't get floating point status")
);
- m68kbsd_supply_fpregset (
current_
regcache, &fpregs);
+ m68kbsd_supply_fpregset (regcache, &fpregs);
}
}
/* Store register REGNUM back into the inferior. If REGNUM is -1, do
this for all registers (including the floating-point registers). */
}
}
/* Store register REGNUM back into the inferior. If REGNUM is -1, do
this for all registers (including the floating-point registers). */
-void
-store_inferior_registers (int regnum)
+static void
+m68kbsd_store_inferior_registers (struct target_ops *ops,
+ struct regcache *regcache, int regnum)
{
if (regnum == -1 || m68kbsd_gregset_supplies_p (regnum))
{
struct reg regs;
{
if (regnum == -1 || m68kbsd_gregset_supplies_p (regnum))
{
struct reg regs;
- if (ptrace (PT_GETREGS,
PIDGET
(inferior_ptid),
- (PTRACE_
ARG3_TYPE
) ®s, 0) == -1)
- perror_with_name (
"Couldn't get registers"
);
+ if (ptrace (PT_GETREGS,
ptid_get_pid
(inferior_ptid),
+ (PTRACE_
TYPE_ARG3
) ®s, 0) == -1)
+ perror_with_name (
_("Couldn't get registers")
);
- m68kbsd_collect_gregset (
current_
regcache, ®s, regnum);
+ m68kbsd_collect_gregset (regcache, ®s, regnum);
- if (ptrace (PT_SETREGS,
PIDGET
(inferior_ptid),
- (PTRACE_
ARG3_TYPE
) ®s, 0) == -1)
- perror_with_name (
"Couldn't write registers"
);
+ if (ptrace (PT_SETREGS,
ptid_get_pid
(inferior_ptid),
+ (PTRACE_
TYPE_ARG3
) ®s, 0) == -1)
+ perror_with_name (
_("Couldn't write registers")
);
}
if (regnum == -1 || m68kbsd_fpregset_supplies_p (regnum))
{
struct fpreg fpregs;
}
if (regnum == -1 || m68kbsd_fpregset_supplies_p (regnum))
{
struct fpreg fpregs;
- if (ptrace (PT_GETFPREGS,
PIDGET
(inferior_ptid),
- (PTRACE_
ARG3_TYPE
) &fpregs, 0) == -1)
- perror_with_name (
"Couldn't get floating point status"
);
+ if (ptrace (PT_GETFPREGS,
ptid_get_pid
(inferior_ptid),
+ (PTRACE_
TYPE_ARG3
) &fpregs, 0) == -1)
+ perror_with_name (
_("Couldn't get floating point status")
);
- m68kbsd_collect_fpregset (
current_
regcache, &fpregs, regnum);
+ m68kbsd_collect_fpregset (regcache, &fpregs, regnum);
- if (ptrace (PT_SETFPREGS,
PIDGET
(inferior_ptid),
- (PTRACE_
ARG3_TYPE
) &fpregs, 0) == -1)
- perror_with_name (
"Couldn't write floating point status"
);
+ if (ptrace (PT_SETFPREGS,
ptid_get_pid
(inferior_ptid),
+ (PTRACE_
TYPE_ARG3
) &fpregs, 0) == -1)
+ perror_with_name (
_("Couldn't write floating point status")
);
}
}
\f
/* Support for debugging kernel virtual memory images. */
}
}
\f
/* Support for debugging kernel virtual memory images. */
-#include <sys/types.h>
#include <machine/pcb.h>
#include "bsd-kvm.h"
#include <machine/pcb.h>
#include "bsd-kvm.h"
@@
-223,6
+225,13
@@
void _initialize_m68kbsd_nat (void);
void
_initialize_m68kbsd_nat (void)
{
void
_initialize_m68kbsd_nat (void)
{
+ struct target_ops *t;
+
+ t = inf_ptrace_target ();
+ t->to_fetch_registers = m68kbsd_fetch_inferior_registers;
+ t->to_store_registers = m68kbsd_store_inferior_registers;
+ add_target (t);
+
/* Support debugging kernel virtual memory images. */
bsd_kvm_add_target (m68kbsd_supply_pcb);
}
/* Support debugging kernel virtual memory images. */
bsd_kvm_add_target (m68kbsd_supply_pcb);
}
This page took
0.026138 seconds
and
4
git commands to generate.