aboutsummaryrefslogtreecommitdiff
path: root/gdb/amd64-nat.c
diff options
context:
space:
mode:
authorMarkus Deuling <deuling@de.ibm.com>2008-01-16 04:52:52 +0000
committerMarkus Deuling <deuling@de.ibm.com>2008-01-16 04:52:52 +0000
commitf8028488ab18db040894f2e616282d8bbb4aed1f (patch)
treec1686880a996763aad420bc84ac08393130bb929 /gdb/amd64-nat.c
parente101270fb8a46d43f3ba424cbc393f74b06b3b26 (diff)
downloadfsf-binutils-gdb-f8028488ab18db040894f2e616282d8bbb4aed1f.zip
fsf-binutils-gdb-f8028488ab18db040894f2e616282d8bbb4aed1f.tar.gz
fsf-binutils-gdb-f8028488ab18db040894f2e616282d8bbb4aed1f.tar.bz2
* amd64-nat.h (amd64_native_gregset_supplies_p): Add gdbarch as
parameter. * amd64-nat.c (amd64_native_gregset_supplies_p): Likewise. (amd64_native_gregset_reg_offset): Add gdbarch as parameter. Replace current_gdbarch by gdbarch. Update caller. * amd64-linux-nat.c (amd64_linux_fetch_inferior_registers) (amd64_linux_store_inferior_registers): Use get_regcache_arch to get at the current architecture. Update calls of amd64_native_gregset_supplies_p. * amd64bsd-nat.c (amd64bsd_fetch_inferior_registers) (amd64bsd_store_inferior_registers): Likewise.
Diffstat (limited to 'gdb/amd64-nat.c')
-rw-r--r--gdb/amd64-nat.c22
1 files changed, 11 insertions, 11 deletions
diff --git a/gdb/amd64-nat.c b/gdb/amd64-nat.c
index 51b2f8f..818dd75 100644
--- a/gdb/amd64-nat.c
+++ b/gdb/amd64-nat.c
@@ -51,23 +51,23 @@ int amd64_native_gregset64_num_regs = AMD64_NUM_GREGS;
general-purpose register set. */
static int
-amd64_native_gregset_reg_offset (int regnum)
+amd64_native_gregset_reg_offset (struct gdbarch *gdbarch, int regnum)
{
int *reg_offset = amd64_native_gregset64_reg_offset;
int num_regs = amd64_native_gregset64_num_regs;
gdb_assert (regnum >= 0);
- if (gdbarch_ptr_bit (current_gdbarch) == 32)
+ if (gdbarch_ptr_bit (gdbarch) == 32)
{
reg_offset = amd64_native_gregset32_reg_offset;
num_regs = amd64_native_gregset32_num_regs;
}
- if (num_regs > gdbarch_num_regs (current_gdbarch))
- num_regs = gdbarch_num_regs (current_gdbarch);
+ if (num_regs > gdbarch_num_regs (gdbarch))
+ num_regs = gdbarch_num_regs (gdbarch);
- if (regnum < num_regs && regnum < gdbarch_num_regs (current_gdbarch))
+ if (regnum < num_regs && regnum < gdbarch_num_regs (gdbarch))
return reg_offset[regnum];
return -1;
@@ -77,9 +77,9 @@ amd64_native_gregset_reg_offset (int regnum)
register REGNUM. */
int
-amd64_native_gregset_supplies_p (int regnum)
+amd64_native_gregset_supplies_p (struct gdbarch *gdbarch, int regnum)
{
- return (amd64_native_gregset_reg_offset (regnum) != -1);
+ return (amd64_native_gregset_reg_offset (gdbarch, regnum) != -1);
}
@@ -105,7 +105,7 @@ amd64_supply_native_gregset (struct regcache *regcache,
{
if (regnum == -1 || regnum == i)
{
- int offset = amd64_native_gregset_reg_offset (i);
+ int offset = amd64_native_gregset_reg_offset (gdbarch, i);
if (offset != -1)
regcache_raw_supply (regcache, i, regs + offset);
@@ -135,13 +135,13 @@ amd64_collect_native_gregset (const struct regcache *regcache,
for (i = 0; i <= I386_EIP_REGNUM; i++)
{
if (regnum == -1 || regnum == i)
- memset (regs + amd64_native_gregset_reg_offset (i), 0, 8);
+ memset (regs + amd64_native_gregset_reg_offset (gdbarch, i), 0, 8);
}
/* Ditto for %cs, %ss, %ds, %es, %fs, and %gs. */
for (i = I386_CS_REGNUM; i <= I386_GS_REGNUM; i++)
{
if (regnum == -1 || regnum == i)
- memset (regs + amd64_native_gregset_reg_offset (i), 0, 8);
+ memset (regs + amd64_native_gregset_reg_offset (gdbarch, i), 0, 8);
}
}
@@ -152,7 +152,7 @@ amd64_collect_native_gregset (const struct regcache *regcache,
{
if (regnum == -1 || regnum == i)
{
- int offset = amd64_native_gregset_reg_offset (i);
+ int offset = amd64_native_gregset_reg_offset (gdbarch, i);
if (offset != -1)
regcache_raw_collect (regcache, i, regs + offset);