diff options
author | Ulrich Weigand <uweigand@de.ibm.com> | 2007-10-09 18:18:50 +0000 |
---|---|---|
committer | Ulrich Weigand <uweigand@de.ibm.com> | 2007-10-09 18:18:50 +0000 |
commit | 875f8d0e3a0a1a550502f906bbca0892004c8caa (patch) | |
tree | 4b404425fd263da8df3b8a8a26752d71a704b96d /gdb/i386-linux-nat.c | |
parent | 9b072297d839dae1448ecaccc3480c720cfc4c35 (diff) | |
download | gdb-875f8d0e3a0a1a550502f906bbca0892004c8caa.zip gdb-875f8d0e3a0a1a550502f906bbca0892004c8caa.tar.gz gdb-875f8d0e3a0a1a550502f906bbca0892004c8caa.tar.bz2 |
2007-10-09 Markus Deuling <deuling@de.ibm.com>
* i386-linux-nat.c (fetch_register): Use get_regcache_arch to get at
the current architecture by regcache.
(store_register, supply_gregset, fill_gregset, i386_linux_resume)
(i386_linux_fetch_inferior_registers)
(i386_linux_store_inferior_registers): Likewise.
* i386gnu-nat.c (gnu_fetch_registers, gnu_store_registers): Likewise.
* i386-nto-tdep.c (i386nto_supply_gregset): Likewise.
* i386v4-nat.c (supply_fpregset, fill_fpregset): Likewise.
* i386-tdep.c (i386_unwind_pc): Replace current_gdbarch by gdbarch.
(i386_extract_return_value, i386_store_return_value): Likewise.
* i386-tdep.c (i386_frame_prev_register): Use get_frame_arch to get at
the current architecture by frame_info.
(i386_sigtramp_frame_cache, i386_get_longjmp_target)
(i386_register_to_value, i386_value_to_register): Likewise.
Diffstat (limited to 'gdb/i386-linux-nat.c')
-rw-r--r-- | gdb/i386-linux-nat.c | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/gdb/i386-linux-nat.c b/gdb/i386-linux-nat.c index 2447ecb..5a5cf8d3 100644 --- a/gdb/i386-linux-nat.c +++ b/gdb/i386-linux-nat.c @@ -161,7 +161,7 @@ fetch_register (struct regcache *regcache, int regno) val = ptrace (PTRACE_PEEKUSER, tid, 4 * regmap[regno], 0); if (errno != 0) error (_("Couldn't read register %s (#%d): %s."), - gdbarch_register_name (current_gdbarch, regno), + gdbarch_register_name (get_regcache_arch (regcache), regno), regno, safe_strerror (errno)); regcache_raw_supply (regcache, regno, &val); @@ -189,7 +189,7 @@ store_register (const struct regcache *regcache, int regno) ptrace (PTRACE_POKEUSER, tid, 4 * regmap[regno], val); if (errno != 0) error (_("Couldn't write register %s (#%d): %s."), - gdbarch_register_name (current_gdbarch, regno), + gdbarch_register_name (get_regcache_arch (regcache), regno), regno, safe_strerror (errno)); } @@ -209,7 +209,8 @@ supply_gregset (struct regcache *regcache, const elf_gregset_t *gregsetp) for (i = 0; i < I386_NUM_GREGS; i++) regcache_raw_supply (regcache, i, regp + regmap[i]); - if (I386_LINUX_ORIG_EAX_REGNUM < gdbarch_num_regs (current_gdbarch)) + if (I386_LINUX_ORIG_EAX_REGNUM + < gdbarch_num_regs (get_regcache_arch (regcache))) regcache_raw_supply (regcache, I386_LINUX_ORIG_EAX_REGNUM, regp + ORIG_EAX); } @@ -230,7 +231,8 @@ fill_gregset (const struct regcache *regcache, regcache_raw_collect (regcache, i, regp + regmap[i]); if ((regno == -1 || regno == I386_LINUX_ORIG_EAX_REGNUM) - && I386_LINUX_ORIG_EAX_REGNUM < gdbarch_num_regs (current_gdbarch)) + && I386_LINUX_ORIG_EAX_REGNUM + < gdbarch_num_regs (get_regcache_arch (regcache))) regcache_raw_collect (regcache, I386_LINUX_ORIG_EAX_REGNUM, regp + ORIG_EAX); } @@ -458,7 +460,7 @@ i386_linux_fetch_inferior_registers (struct regcache *regcache, int regno) { int i; - for (i = 0; i < gdbarch_num_regs (current_gdbarch); i++) + for (i = 0; i < gdbarch_num_regs (get_regcache_arch (regcache)); i++) if (regno == -1 || regno == i) fetch_register (regcache, i); @@ -530,7 +532,7 @@ i386_linux_store_inferior_registers (struct regcache *regcache, int regno) { int i; - for (i = 0; i < gdbarch_num_regs (current_gdbarch); i++) + for (i = 0; i < gdbarch_num_regs (get_regcache_arch (regcache)); i++) if (regno == -1 || regno == i) store_register (regcache, i); @@ -756,8 +758,8 @@ i386_linux_resume (ptid_t ptid, int step, enum target_signal signal) request = PTRACE_SINGLESTEP; - regcache_cooked_read_unsigned (regcache, - gdbarch_pc_regnum (current_gdbarch), &pc); + regcache_cooked_read_unsigned + (regcache, gdbarch_pc_regnum (get_regcache_arch (regcache)), &pc); /* Returning from a signal trampoline is done by calling a special system call (sigreturn or rt_sigreturn, see |