mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-10-17 21:03:55 +08:00
* target.h (target_object): Add TARGET_OBJECT_WCOOKIE.
* inftarg.c: Update copyright year. (child_xfer_partial): Add support for TARGET_OBJECT_WCOOKIE. * sparc-nat.c: Include "target.h" and "gdb_assert.h". (sparc_xfer_wcookie): New function. * sparc-tdep.c (sparc_fetch_wcookie): New function. * Makefile.in (sparc-nat.o): Update dependencies. * config/sparc/nm-nbsd.h: Include "target.h". (NATIVE_XFER_WCOOKIE): New define. (sparc_xfer_wcookie): New prototype.
This commit is contained in:
@ -141,13 +141,21 @@ sparc_fetch_instruction (CORE_ADDR pc)
|
||||
ULONGEST
|
||||
sparc_fetch_wcookie (void)
|
||||
{
|
||||
/* FIXME: kettenis/20040131: We should fetch the cookie from the
|
||||
target. For now, return zero, which is right for targets without
|
||||
StackGhost. */
|
||||
return 0;
|
||||
}
|
||||
struct target_ops *ops = ¤t_target;
|
||||
char buf[8];
|
||||
int len;
|
||||
|
||||
len = target_read_partial (ops, TARGET_OBJECT_WCOOKIE, NULL, buf, 0, 8);
|
||||
if (len == -1)
|
||||
return 0;
|
||||
|
||||
/* We should have either an 32-bit or an 64-bit cookie. */
|
||||
gdb_assert (len == 4 || len == 8);
|
||||
|
||||
return extract_unsigned_integer (buf, len);
|
||||
}
|
||||
|
||||
|
||||
/* Return the contents if register REGNUM as an address. */
|
||||
|
||||
static CORE_ADDR
|
||||
|
Reference in New Issue
Block a user