mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-09-15 11:45:27 +08:00
* sparc-nat.c (inf_ptrace_xfer_partial): New variable.
(sparc_xfer_partial): New function. (sparc_target): Save value of to_xfer_partial from ptrace vector. Set to_xfer_partial.
This commit is contained in:
@ -1,5 +1,10 @@
|
|||||||
2004-11-29 Mark Kettenis <kettenis@gnu.org>
|
2004-11-29 Mark Kettenis <kettenis@gnu.org>
|
||||||
|
|
||||||
|
* sparc-nat.c (inf_ptrace_xfer_partial): New variable.
|
||||||
|
(sparc_xfer_partial): New function.
|
||||||
|
(sparc_target): Save value of to_xfer_partial from ptrace vector.
|
||||||
|
Set to_xfer_partial.
|
||||||
|
|
||||||
* fork-child.c (fork_inferior): Fork instead of vfork if
|
* fork-child.c (fork_inferior): Fork instead of vfork if
|
||||||
PRE_TRACE_FUN is non-null.
|
PRE_TRACE_FUN is non-null.
|
||||||
|
|
||||||
|
@ -305,6 +305,23 @@ sparc_xfer_wcookie (struct target_ops *ops, enum target_object object,
|
|||||||
memcpy (readbuf, buf + offset, len);
|
memcpy (readbuf, buf + offset, len);
|
||||||
return len;
|
return len;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
LONGEST (*inf_ptrace_xfer_partial) (struct target_ops *, enum target_object,
|
||||||
|
const char *, void *, const void *,
|
||||||
|
ULONGEST, LONGEST);
|
||||||
|
|
||||||
|
static LONGEST
|
||||||
|
sparc_xfer_partial (struct target_ops *ops, enum target_object object,
|
||||||
|
const char *annex, void *readbuf, const void *writebuf,
|
||||||
|
ULONGEST offset, LONGEST len)
|
||||||
|
{
|
||||||
|
if (object == TARGET_OBJECT_WCOOKIE)
|
||||||
|
return sparc_xfer_wcookie (ops, object, annex, readbuf, writebuf,
|
||||||
|
offset, len);
|
||||||
|
|
||||||
|
return inf_ptrace_xfer_partial (ops, object, annex, readbuf, writebuf,
|
||||||
|
offset, len);
|
||||||
|
}
|
||||||
|
|
||||||
/* Create a prototype generic SPARC target. The client can override
|
/* Create a prototype generic SPARC target. The client can override
|
||||||
it with local methods. */
|
it with local methods. */
|
||||||
@ -317,6 +334,8 @@ sparc_target (void)
|
|||||||
t = inf_ptrace_target ();
|
t = inf_ptrace_target ();
|
||||||
t->to_fetch_registers = fetch_inferior_registers;
|
t->to_fetch_registers = fetch_inferior_registers;
|
||||||
t->to_store_registers = store_inferior_registers;
|
t->to_store_registers = store_inferior_registers;
|
||||||
|
inf_ptrace_xfer_partial = t->to_xfer_partial;
|
||||||
|
t->to_xfer_partial = sparc_xfer_partial;
|
||||||
return t;
|
return t;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user