diff options
Diffstat (limited to 'gdb')
-rw-r--r-- | gdb/ChangeLog | 7 | ||||
-rw-r--r-- | gdb/aix-thread.c | 63 | ||||
-rw-r--r-- | gdb/arm-linux-nat.c | 22 | ||||
-rw-r--r-- | gdb/i386gnu-nat.c | 4 |
4 files changed, 59 insertions, 37 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index a164d82..373ccfc 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,10 @@ +2011-01-31 Yao Qi <yao@codesourcery.com> + + * arm-linux-nat.c: Update calls to regcache_register_status + instead of regcache_valid_p. + * aix-thread.c: Likewise. + * i386gnu-nat.c: Likewise. + 2011-01-29 Jan Kratochvil <jan.kratochvil@redhat.com> Fix crash. diff --git a/gdb/aix-thread.c b/gdb/aix-thread.c index 2a4d6f3..37b798a 100644 --- a/gdb/aix-thread.c +++ b/gdb/aix-thread.c @@ -1321,7 +1321,8 @@ fill_gprs64 (const struct regcache *regcache, uint64_t *vals) int regno; for (regno = 0; regno < ppc_num_gprs; regno++) - if (regcache_valid_p (regcache, tdep->ppc_gp0_regnum + regno)) + if (REG_VALID == regcache_register_status (regcache, + tdep->ppc_gp0_regnum + regno)) regcache_raw_collect (regcache, tdep->ppc_gp0_regnum + regno, vals + regno); } @@ -1333,7 +1334,8 @@ fill_gprs32 (const struct regcache *regcache, uint32_t *vals) int regno; for (regno = 0; regno < ppc_num_gprs; regno++) - if (regcache_valid_p (regcache, tdep->ppc_gp0_regnum + regno)) + if (REG_VALID == regcache_register_status (regcache, + tdep->ppc_gp0_regnum + regno)) regcache_raw_collect (regcache, tdep->ppc_gp0_regnum + regno, vals + regno); } @@ -1353,7 +1355,7 @@ fill_fprs (const struct regcache *regcache, double *vals) for (regno = tdep->ppc_fp0_regnum; regno < tdep->ppc_fp0_regnum + ppc_num_fprs; regno++) - if (regcache_valid_p (regcache, regno)) + if (REG_VALID == regcache_register_status (regcache, regno)) regcache_raw_collect (regcache, regno, vals + regno); } @@ -1377,20 +1379,22 @@ fill_sprs64 (const struct regcache *regcache, gdb_assert (sizeof (*iar) == register_size (gdbarch, gdbarch_pc_regnum (gdbarch))); - if (regcache_valid_p (regcache, gdbarch_pc_regnum (gdbarch))) + if (REG_VALID == regcache_register_status (regcache, + gdbarch_pc_regnum (gdbarch))) regcache_raw_collect (regcache, gdbarch_pc_regnum (gdbarch), iar); - if (regcache_valid_p (regcache, tdep->ppc_ps_regnum)) + if (REG_VALID == regcache_register_status (regcache, tdep->ppc_ps_regnum)) regcache_raw_collect (regcache, tdep->ppc_ps_regnum, msr); - if (regcache_valid_p (regcache, tdep->ppc_cr_regnum)) + if (REG_VALID == regcache_register_status (regcache, tdep->ppc_cr_regnum)) regcache_raw_collect (regcache, tdep->ppc_cr_regnum, cr); - if (regcache_valid_p (regcache, tdep->ppc_lr_regnum)) + if (REG_VALID == regcache_register_status (regcache, tdep->ppc_lr_regnum)) regcache_raw_collect (regcache, tdep->ppc_lr_regnum, lr); - if (regcache_valid_p (regcache, tdep->ppc_ctr_regnum)) + if (REG_VALID == regcache_register_status (regcache, tdep->ppc_ctr_regnum)) regcache_raw_collect (regcache, tdep->ppc_ctr_regnum, ctr); - if (regcache_valid_p (regcache, tdep->ppc_xer_regnum)) + if (REG_VALID == regcache_register_status (regcache, tdep->ppc_xer_regnum)) regcache_raw_collect (regcache, tdep->ppc_xer_regnum, xer); if (tdep->ppc_fpscr_regnum >= 0 - && regcache_valid_p (regcache, tdep->ppc_fpscr_regnum)) + && REG_VALID == regcache_register_status (regcache, + tdep->ppc_fpscr_regnum)) regcache_raw_collect (regcache, tdep->ppc_fpscr_regnum, fpscr); } @@ -1411,20 +1415,21 @@ fill_sprs32 (const struct regcache *regcache, gdb_assert (sizeof (*iar) == register_size (gdbarch, gdbarch_pc_regnum (gdbarch))); - if (regcache_valid_p (regcache, gdbarch_pc_regnum (gdbarch))) + if (REG_VALID == regcache_register_status (regcache, + gdbarch_pc_regnum (gdbarch))) regcache_raw_collect (regcache, gdbarch_pc_regnum (gdbarch), iar); - if (regcache_valid_p (regcache, tdep->ppc_ps_regnum)) + if (REG_VALID == regcache_register_status (regcache, tdep->ppc_ps_regnum)) regcache_raw_collect (regcache, tdep->ppc_ps_regnum, msr); - if (regcache_valid_p (regcache, tdep->ppc_cr_regnum)) + if (REG_VALID == regcache_register_status (regcache, tdep->ppc_cr_regnum)) regcache_raw_collect (regcache, tdep->ppc_cr_regnum, cr); - if (regcache_valid_p (regcache, tdep->ppc_lr_regnum)) + if (REG_VALID == regcache_register_status (regcache, tdep->ppc_lr_regnum)) regcache_raw_collect (regcache, tdep->ppc_lr_regnum, lr); - if (regcache_valid_p (regcache, tdep->ppc_ctr_regnum)) + if (REG_VALID == regcache_register_status (regcache, tdep->ppc_ctr_regnum)) regcache_raw_collect (regcache, tdep->ppc_ctr_regnum, ctr); - if (regcache_valid_p (regcache, tdep->ppc_xer_regnum)) + if (REG_VALID == regcache_register_status (regcache, tdep->ppc_xer_regnum)) regcache_raw_collect (regcache, tdep->ppc_xer_regnum, xer); if (tdep->ppc_fpscr_regnum >= 0 - && regcache_valid_p (regcache, tdep->ppc_fpscr_regnum)) + && REG_VALID == regcache_register_status (regcache, tdep->ppc_fpscr_regnum)) regcache_raw_collect (regcache, tdep->ppc_fpscr_regnum, fpscr); } @@ -1459,7 +1464,8 @@ store_regs_user_thread (const struct regcache *regcache, pthdb_pthread_t pdtid) /* Collect general-purpose register values from the regcache. */ for (i = 0; i < ppc_num_gprs; i++) - if (regcache_valid_p (regcache, tdep->ppc_gp0_regnum + i)) + if (REG_VALID == regcache_register_status (regcache, + tdep->ppc_gp0_regnum + i)) { if (arch64) { @@ -1494,19 +1500,23 @@ store_regs_user_thread (const struct regcache *regcache, pthdb_pthread_t pdtid) fill_sprs32 (regcache, &tmp_iar, &tmp_msr, &tmp_cr, &tmp_lr, &tmp_ctr, &tmp_xer, &tmp_fpscr); - if (regcache_valid_p (regcache, gdbarch_pc_regnum (gdbarch))) + if (REG_VALID == regcache_register_status (regcache, + gdbarch_pc_regnum (gdbarch))) ctx.iar = tmp_iar; - if (regcache_valid_p (regcache, tdep->ppc_ps_regnum)) + if (REG_VALID == regcache_register_status (regcache, tdep->ppc_ps_regnum)) ctx.msr = tmp_msr; - if (regcache_valid_p (regcache, tdep->ppc_cr_regnum)) + if (REG_VALID == regcache_register_status (regcache, tdep->ppc_cr_regnum)) ctx.cr = tmp_cr; - if (regcache_valid_p (regcache, tdep->ppc_lr_regnum)) + if (REG_VALID == regcache_register_status (regcache, tdep->ppc_lr_regnum)) ctx.lr = tmp_lr; - if (regcache_valid_p (regcache, tdep->ppc_ctr_regnum)) + if (REG_VALID == regcache_register_status (regcache, + tdep->ppc_ctr_regnum)) ctx.ctr = tmp_ctr; - if (regcache_valid_p (regcache, tdep->ppc_xer_regnum)) + if (REG_VALID == regcache_register_status (regcache, + tdep->ppc_xer_regnum)) ctx.xer = tmp_xer; - if (regcache_valid_p (regcache, tdep->ppc_xer_regnum)) + if (REG_VALID == regcache_register_status (regcache, + tdep->ppc_xer_regnum)) ctx.fpscr = tmp_fpscr; } @@ -1620,7 +1630,8 @@ store_regs_kernel_thread (const struct regcache *regcache, int regno, sprs32.pt_fpscr = tmp_fpscr; if (tdep->ppc_mq_regnum >= 0) - if (regcache_valid_p (regcache, tdep->ppc_mq_regnum)) + if (REG_VALID == regcache_register_status (regcache, + tdep->ppc_mq_regnum)) regcache_raw_collect (regcache, tdep->ppc_mq_regnum, &sprs32.pt_mq); diff --git a/gdb/arm-linux-nat.c b/gdb/arm-linux-nat.c index 23ac1eb..e501882 100644 --- a/gdb/arm-linux-nat.c +++ b/gdb/arm-linux-nat.c @@ -190,7 +190,8 @@ store_fpregister (const struct regcache *regcache, int regno) } /* Store fpsr. */ - if (ARM_FPS_REGNUM == regno && regcache_valid_p (regcache, ARM_FPS_REGNUM)) + if (ARM_FPS_REGNUM == regno + && REG_VALID == regcache_register_status (regcache, ARM_FPS_REGNUM)) regcache_raw_collect (regcache, ARM_FPS_REGNUM, fp + NWFPE_FPSR_OFFSET); /* Store the floating point register. */ @@ -226,12 +227,12 @@ store_fpregs (const struct regcache *regcache) } /* Store fpsr. */ - if (regcache_valid_p (regcache, ARM_FPS_REGNUM)) + if (REG_VALID == regcache_register_status (regcache, ARM_FPS_REGNUM)) regcache_raw_collect (regcache, ARM_FPS_REGNUM, fp + NWFPE_FPSR_OFFSET); /* Store the floating point registers. */ for (regno = ARM_F0_REGNUM; regno <= ARM_F7_REGNUM; regno++) - if (regcache_valid_p (regcache, regno)) + if (REG_VALID == regcache_register_status (regcache, regno)) collect_nwfpe_register (regcache, regno, fp); ret = ptrace (PTRACE_SETFPREGS, tid, 0, fp); @@ -328,7 +329,7 @@ store_register (const struct regcache *regcache, int regno) int ret, tid; elf_gregset_t regs; - if (!regcache_valid_p (regcache, regno)) + if (REG_VALID != regcache_register_status (regcache, regno)) return; /* Get the thread id for the ptrace call. */ @@ -378,11 +379,11 @@ store_regs (const struct regcache *regcache) for (regno = ARM_A1_REGNUM; regno <= ARM_PC_REGNUM; regno++) { - if (regcache_valid_p (regcache, regno)) + if (REG_VALID == regcache_register_status (regcache, regno)) regcache_raw_collect (regcache, regno, (char *) ®s[regno]); } - if (arm_apcs_32 && regcache_valid_p (regcache, ARM_PS_REGNUM)) + if (arm_apcs_32 && REG_VALID == regcache_register_status (regcache, ARM_PS_REGNUM)) regcache_raw_collect (regcache, ARM_PS_REGNUM, (char *) ®s[ARM_CPSR_GREGNUM]); @@ -446,17 +447,20 @@ store_wmmx_regs (const struct regcache *regcache) } for (regno = 0; regno < 16; regno++) - if (regcache_valid_p (regcache, regno + ARM_WR0_REGNUM)) + if (REG_VALID == regcache_register_status (regcache, + regno + ARM_WR0_REGNUM)) regcache_raw_collect (regcache, regno + ARM_WR0_REGNUM, ®buf[regno * 8]); for (regno = 0; regno < 2; regno++) - if (regcache_valid_p (regcache, regno + ARM_WCSSF_REGNUM)) + if (REG_VALID == regcache_register_status (regcache, + regno + ARM_WCSSF_REGNUM)) regcache_raw_collect (regcache, regno + ARM_WCSSF_REGNUM, ®buf[16 * 8 + regno * 4]); for (regno = 0; regno < 4; regno++) - if (regcache_valid_p (regcache, regno + ARM_WCGR0_REGNUM)) + if (REG_VALID == regcache_register_status (regcache, + regno + ARM_WCGR0_REGNUM)) regcache_raw_collect (regcache, regno + ARM_WCGR0_REGNUM, ®buf[16 * 8 + 2 * 4 + regno * 4]); diff --git a/gdb/i386gnu-nat.c b/gdb/i386gnu-nat.c index 8089729..89354dc 100644 --- a/gdb/i386gnu-nat.c +++ b/gdb/i386gnu-nat.c @@ -272,7 +272,7 @@ gnu_store_registers (struct target_ops *ops, proc_debug (thread, "storing all registers"); for (i = 0; i < I386_NUM_GREGS; i++) - if (regcache_valid_p (regcache, i)) + if (REG_VALID == regcache_register_status (regcache, i)) regcache_raw_collect (regcache, i, REG_ADDR (state, i)); } else @@ -280,7 +280,7 @@ gnu_store_registers (struct target_ops *ops, proc_debug (thread, "storing register %s", gdbarch_register_name (gdbarch, regno)); - gdb_assert (regcache_valid_p (regcache, regno)); + gdb_assert (REG_VALID == regcache_register_status (regcache, regno)); regcache_raw_collect (regcache, regno, REG_ADDR (state, regno)); } |