Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: "Carl E. Love" <cel@us.ibm.com>
To: Pedro Alves <palves@redhat.com>
Cc: Ulrich Weigand <Ulrich.Weigand@de.ibm.com>,
	       Edjunior Barbosa Machado	 <emachado@linux.vnet.ibm.com>,
	       gdb-patches@sourceware.org
Subject: Re: [PATCH] Fix for gdb.base/pc-fp.exp.
Date: Tue, 23 Aug 2016 16:17:00 -0000	[thread overview]
Message-ID: <1471969030.4102.52.camel@us.ibm.com> (raw)
In-Reply-To: <8f1a63df-5140-831e-0892-34be046144c5@redhat.com>

On Tue, 2016-08-23 at 00:17 +0100, Pedro Alves wrote:
> Can you provide more details?
> 
> E.g.:
> 
> What's was wrong?  What failed?  Why is removing this line the
> right fix?
> 
> I'm not suggesting that the fix is wrong (or right, I have no
> idea).  Just pointing out that context is missing.
> 
> Thanks,
> Pedro Alves
> 



Here is an updated patch with the missing detail.
--------------------------------------------------------------------------
Fix for gdb.base/pc-fp.exp.

It is my understanding that GDB used to require each architecture to
define a Frame Pointer (fp).  However, this functionality was deprecated
some time ago so the call to setup the fp_reg was changed to deprecated
(set_gdbarch_deprecated_fp_regnum).  It should have been removed from the
Power code.

That said, the code "set_gdbarch_deprecated_fp_regnum
(gdbarch, PPC_R0_REGNUM + 1);" sets up register r1 as the frame pointer.
Register r1 is no longer used to hold the frame pointer on Power.  By
removing the fp definition for Power in GDB, it causes GDB to fall back
to the call get_frame_base_address (frame) which returns the correct value
depending on the specific senario but most of the time is the DWARF
canonical frame address.

gdb/ChangeLog

2016-08-22  Carl Love  <cel@us.ibm.com>

	* rs6000-tdep.c (rs6000_gdbarch_init): Remove deprecated call set_gdbarch_deprecated_fp_regnum()
	from Power architecture initialization function.
---
 gdb/rs6000-tdep.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/gdb/rs6000-tdep.c b/gdb/rs6000-tdep.c
index a616cbe..db63be0 100644
--- a/gdb/rs6000-tdep.c
+++ b/gdb/rs6000-tdep.c
@@ -5957,7 +5957,6 @@ rs6000_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
 
   set_gdbarch_pc_regnum (gdbarch, PPC_PC_REGNUM);
   set_gdbarch_sp_regnum (gdbarch, PPC_R0_REGNUM + 1);
-  set_gdbarch_deprecated_fp_regnum (gdbarch, PPC_R0_REGNUM + 1);
   set_gdbarch_fp0_regnum (gdbarch, tdep->ppc_fp0_regnum);
   set_gdbarch_register_sim_regno (gdbarch, rs6000_register_sim_regno);
 
-- 
1.8.3.1




  reply	other threads:[~2016-08-23 16:17 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-08-22 21:16 Carl E. Love
2016-08-22 23:17 ` Pedro Alves
2016-08-23 16:17   ` Carl E. Love [this message]
2016-08-23 16:26     ` Luis Machado
2016-08-23 17:06       ` Ulrich Weigand
2016-08-23 17:19         ` Luis Machado
2016-08-23 16:30     ` Ulrich Weigand
2016-08-24 15:15       ` Carl E. Love

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1471969030.4102.52.camel@us.ibm.com \
    --to=cel@us.ibm.com \
    --cc=Ulrich.Weigand@de.ibm.com \
    --cc=emachado@linux.vnet.ibm.com \
    --cc=gdb-patches@sourceware.org \
    --cc=palves@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox