From de6784544abc97d5e396cb1e83eda1ae09f63d40 Mon Sep 17 00:00:00 2001 From: Edjunior Barbosa Machado Date: Thu, 22 Sep 2016 11:33:56 -0300 Subject: [PATCH] Fix build breakage from commit 6ec2b2 I was notified by buildbot that my patch (commit 6ec2b2) has broken the build on x86_64: ../../binutils-gdb/gdb/rs6000-tdep.c: In function int ppc_process_record_op31(gdbarch*, regcache*, CORE_ADDR, uint32_t): ../../binutils-gdb/gdb/rs6000-tdep.c:4705:50: error: cannot convert CORE_ADDR* {aka long unsigned int*} to ULONGEST* {aka long long unsigned int*} for argument 3 to register_status regcache_raw_read_unsigned(regcache*, int, ULONGEST*) tdep->ppc_gp0_regnum + PPC_RA (insn), &ea); ^ ../../binutils-gdb/gdb/rs6000-tdep.c:4718:50: error: cannot convert CORE_ADDR* {aka long unsigned int*} to ULONGEST* {aka long long unsigned int*} for argument 3 to register_status regcache_raw_read_unsigned(regcache*, int, ULONGEST*) tdep->ppc_gp0_regnum + PPC_RA (insn), &ea); ^ The patch below should fix it. gdb/ChangeLog: 2016-09-22 Edjunior Barbosa Machado * rs6000-tdep.c (ppc_process_record_op31): Fix regcache_raw_read_unsigned call using the correct parameter type. --- gdb/ChangeLog | 5 +++++ gdb/rs6000-tdep.c | 8 ++++++-- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 8215c41d446..ea14f041c02 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2016-09-22 Edjunior Barbosa Machado + + * rs6000-tdep.c (ppc_process_record_op31): Fix + regcache_raw_read_unsigned call using the correct parameter type. + 2016-09-22 Anton Kolesov * arc-tdep.c: Fix ARI warning for printf(%p). diff --git a/gdb/rs6000-tdep.c b/gdb/rs6000-tdep.c index 1add49897f8..ca4d66863e2 100644 --- a/gdb/rs6000-tdep.c +++ b/gdb/rs6000-tdep.c @@ -4700,9 +4700,11 @@ ppc_process_record_op31 (struct gdbarch *gdbarch, struct regcache *regcache, case 397: /* Store VSX Vector with Length */ case 429: /* Store VSX Vector Left-justified with Length */ + ra = 0; if (PPC_RA (insn) != 0) regcache_raw_read_unsigned (regcache, - tdep->ppc_gp0_regnum + PPC_RA (insn), &ea); + tdep->ppc_gp0_regnum + PPC_RA (insn), &ra); + ea = ra; regcache_raw_read_unsigned (regcache, tdep->ppc_gp0_regnum + PPC_RB (insn), &rb); /* Store up to 16 bytes. */ @@ -4713,9 +4715,11 @@ ppc_process_record_op31 (struct gdbarch *gdbarch, struct regcache *regcache, case 710: /* Store Word Atomic */ case 742: /* Store Doubleword Atomic */ + ra = 0; if (PPC_RA (insn) != 0) regcache_raw_read_unsigned (regcache, - tdep->ppc_gp0_regnum + PPC_RA (insn), &ea); + tdep->ppc_gp0_regnum + PPC_RA (insn), &ra); + ea = ra; switch (ext) { case 710: /* Store Word Atomic */ -- 2.30.2