From b2cb219a9d9b9e689c14ff470f09d04228808870 Mon Sep 17 00:00:00 2001 From: Ulrich Weigand Date: Tue, 30 Oct 2007 21:42:22 +0000 Subject: [PATCH] 2007-10-30 Markus Deuling * armnbsd-nat.c (arm_supply_gregset, fetch_register, store_register) (store_regs): Use get_regcache_arch to get at the current architecture by regcache. --- gdb/ChangeLog | 6 ++++++ gdb/armnbsd-nat.c | 21 +++++++++++---------- 2 files changed, 17 insertions(+), 10 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 455fd99afcd..54510e41c19 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,9 @@ +2007-10-30 Markus Deuling + + * armnbsd-nat.c (arm_supply_gregset, fetch_register, store_register) + (store_regs): Use get_regcache_arch to get at the current architecture + by regcache. + 2007-10-30 Markus Deuling * arm-linux-tdep.c (arm_linux_supply_gregset): Use get_regcache_arch diff --git a/gdb/armnbsd-nat.c b/gdb/armnbsd-nat.c index 6fb7b473308..7d992e8a5cf 100644 --- a/gdb/armnbsd-nat.c +++ b/gdb/armnbsd-nat.c @@ -50,7 +50,7 @@ arm_supply_gregset (struct regcache *regcache, struct reg *gregset) regcache_raw_supply (regcache, ARM_LR_REGNUM, (char *) &gregset->r_lr); /* This is ok: we're running native... */ - r_pc = gdbarch_addr_bits_remove (current_gdbarch, gregset->r_pc); + r_pc = gdbarch_addr_bits_remove (get_regcache_arch (regcache), gregset->r_pc); regcache_raw_supply (regcache, ARM_PC_REGNUM, (char *) &r_pc); if (arm_apcs_32) @@ -104,7 +104,8 @@ fetch_register (struct regcache *regcache, int regno) case ARM_PC_REGNUM: /* This is ok: we're running native... */ inferior_registers.r_pc = gdbarch_addr_bits_remove - (current_gdbarch, inferior_registers.r_pc); + (get_regcache_arch (regcache), + inferior_registers.r_pc); regcache_raw_supply (regcache, ARM_PC_REGNUM, (char *) &inferior_registers.r_pc); break; @@ -213,6 +214,7 @@ armnbsd_fetch_registers (struct regcache *regcache, int regno) static void store_register (const struct regcache *regcache, int regno) { + struct gdbarch *gdbarch = get_regcache_arch (regcache); struct reg inferior_registers; int ret; @@ -248,10 +250,9 @@ store_register (const struct regcache *regcache, int regno) regcache_raw_collect (regcache, ARM_PC_REGNUM, (char *) &pc_val); - pc_val = gdbarch_addr_bits_remove (current_gdbarch, pc_val); + pc_val = gdbarch_addr_bits_remove (gdbarch, pc_val); inferior_registers.r_pc ^= gdbarch_addr_bits_remove - (current_gdbarch, - inferior_registers.r_pc); + (gdbarch, inferior_registers.r_pc); inferior_registers.r_pc |= pc_val; } break; @@ -267,10 +268,9 @@ store_register (const struct regcache *regcache, int regno) regcache_raw_collect (regcache, ARM_PS_REGNUM, (char *) &psr_val); - psr_val ^= gdbarch_addr_bits_remove (current_gdbarch, psr_val); + psr_val ^= gdbarch_addr_bits_remove (gdbarch, psr_val); inferior_registers.r_pc = gdbarch_addr_bits_remove - (current_gdbarch, - inferior_registers.r_pc); + (gdbarch, inferior_registers.r_pc); inferior_registers.r_pc |= psr_val; } break; @@ -291,6 +291,7 @@ store_register (const struct regcache *regcache, int regno) static void store_regs (const struct regcache *regcache) { + struct gdbarch *gdbarch = get_regcache_arch (regcache); struct reg inferior_registers; int ret; int regno; @@ -322,8 +323,8 @@ store_regs (const struct regcache *regcache) regcache_raw_collect (regcache, ARM_PS_REGNUM, (char *) &psr_val); - pc_val = gdbarch_addr_bits_remove (current_gdbarch, pc_val); - psr_val ^= gdbarch_addr_bits_remove (current_gdbarch, psr_val); + pc_val = gdbarch_addr_bits_remove (gdbarch, pc_val); + psr_val ^= gdbarch_addr_bits_remove (gdbarch, psr_val); inferior_registers.r_pc = pc_val | psr_val; } -- 2.30.2