From 9f7efd5bf76aa5065298d13aefb109ecfd7a825a Mon Sep 17 00:00:00 2001 From: Edjunior Barbosa Machado Date: Tue, 20 Sep 2016 12:24:30 -0300 Subject: [PATCH] ppc: Fix record support of Store String Word instructions gdb/ChangeLog 2016-09-20 Edjunior Barbosa Machado * rs6000-tdep.c (ppc_process_record_op31): Fix record of Store String Word instructions. --- gdb/ChangeLog | 5 +++++ gdb/rs6000-tdep.c | 10 +++++++--- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 0dacaf67679..2b0589a4900 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2016-09-20 Edjunior Barbosa Machado + + * rs6000-tdep.c (ppc_process_record_op31): Fix record of Store String + Word instructions. + 2016-09-20 Sergio Durigan Junior * fork-inferior.c (startup_inferior): Pass 'event_ptid' instead of diff --git a/gdb/rs6000-tdep.c b/gdb/rs6000-tdep.c index 5f157808203..263dda04fd7 100644 --- a/gdb/rs6000-tdep.c +++ b/gdb/rs6000-tdep.c @@ -4540,7 +4540,8 @@ ppc_process_record_op31 (struct gdbarch *gdbarch, struct regcache *regcache, case 725: /* Store String Word Immediate */ ra = 0; if (PPC_RA (insn) != 0) - regcache_raw_read_unsigned (regcache, tdep->ppc_xer_regnum, &ra); + regcache_raw_read_unsigned (regcache, + tdep->ppc_gp0_regnum + PPC_RA (insn), &ra); ea += ra; nb = PPC_NB (insn); @@ -4554,7 +4555,8 @@ ppc_process_record_op31 (struct gdbarch *gdbarch, struct regcache *regcache, case 661: /* Store String Word Indexed */ ra = 0; if (PPC_RA (insn) != 0) - regcache_raw_read_unsigned (regcache, tdep->ppc_xer_regnum, &ra); + regcache_raw_read_unsigned (regcache, + tdep->ppc_gp0_regnum + PPC_RA (insn), &ra); ea += ra; regcache_raw_read_unsigned (regcache, tdep->ppc_xer_regnum, &xer); @@ -4562,7 +4564,9 @@ ppc_process_record_op31 (struct gdbarch *gdbarch, struct regcache *regcache, if (nb != 0) { - regcache_raw_read_unsigned (regcache, tdep->ppc_xer_regnum, &rb); + regcache_raw_read_unsigned (regcache, + tdep->ppc_gp0_regnum + PPC_RB (insn), + &rb); ea += rb; record_full_arch_list_add_mem (ea, nb); } -- 2.30.2