From: Ulrich Weigand Date: Fri, 5 Sep 2008 11:46:46 +0000 (+0000) Subject: * nto-tdep.h (struct nto_target_ops): Add gdbarch parameter to X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=60441ab9edac79737e5cd961caf351951f349c1a;p=binutils-gdb.git * nto-tdep.h (struct nto_target_ops): Add gdbarch parameter to register_area callback function. * i386-nto-tdep.c (i386nto_register_area): Add gdbarch parameter. Use it instead of current_gdbarch. * nto-procfs.c (procfs_store_registers): Update call. --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 314a4739cf0..6d12caef9bd 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,11 @@ +2008-09-05 Ulrich Weigand + + * nto-tdep.h (struct nto_target_ops): Add gdbarch parameter to + register_area callback function. + * i386-nto-tdep.c (i386nto_register_area): Add gdbarch parameter. + Use it instead of current_gdbarch. + * nto-procfs.c (procfs_store_registers): Update call. + 2008-09-05 Ulrich Weigand * mips-tdep.c (deprecated_mips_set_processor_regs_hack): Use diff --git a/gdb/i386-nto-tdep.c b/gdb/i386-nto-tdep.c index 9b065a6c8f9..8e720e9d607 100644 --- a/gdb/i386-nto-tdep.c +++ b/gdb/i386-nto-tdep.c @@ -131,7 +131,8 @@ i386nto_regset_id (int regno) } static int -i386nto_register_area (int regno, int regset, unsigned *off) +i386nto_register_area (struct gdbarch *gdbarch, + int regno, int regset, unsigned *off) { int len; @@ -166,8 +167,7 @@ i386nto_register_area (int regno, int regset, unsigned *off) if (regno == -1) return regset_size; - *off = (regno - gdbarch_fp0_regnum (current_gdbarch)) - * regsize + off_adjust; + *off = (regno - gdbarch_fp0_regnum (gdbarch)) * regsize + off_adjust; return 10; /* Why 10 instead of regsize? GDB only stores 10 bytes per FP register so if we're sending a register back to the target, diff --git a/gdb/nto-procfs.c b/gdb/nto-procfs.c index 028394bdd9b..23b76ce1b45 100644 --- a/gdb/nto-procfs.c +++ b/gdb/nto-procfs.c @@ -1194,7 +1194,8 @@ procfs_store_registers (struct regcache *regcache, int regno) if (dev_set == -1) return; - len = nto_register_area (regno, regset, &off); + len = nto_register_area (get_regcache_arch (regcache), + regno, regset, &off); if (len < 1) return; diff --git a/gdb/nto-tdep.h b/gdb/nto-tdep.h index 30be3c54857..567cbb64877 100644 --- a/gdb/nto-tdep.h +++ b/gdb/nto-tdep.h @@ -61,7 +61,7 @@ struct nto_target_ops and stuff it into the last argument. If regno is -1, calculate the size of the entire regset. Returns length of data, -1 if unknown regset, 0 if unknown register. */ - int (*register_area) (int, int, unsigned *); + int (*register_area) (struct gdbarch *, int, int, unsigned *); /* Build the Neutrino register set info into the data buffer. Return -1 if unknown regset, 0 otherwise. */