Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
* [7.5] PATCH: PR backtrace/14646 [x32] backtrace doesn't work
@ 2012-10-20 23:47 H.J. Lu
  2012-10-21  1:56 ` Joel Brobecker
  0 siblings, 1 reply; 7+ messages in thread
From: H.J. Lu @ 2012-10-20 23:47 UTC (permalink / raw)
  To: GDB

Hi,

This patch backports the fix from trunk to 7.5 branch.  Tested on
Linux/x86-64 and Linux/x32.  OK to install?

Thanks.


H.J.
----
	PR backtrace/14646
	PR gdb/14647
	* i386-tdep.h (gdbarch_tdep): Remove sp_regnum_from_eax and
	pc_regnum_from_eax.
	* i386-tdep.c (i386_gdbarch_init): Don't use sp_regnum_from_eax
	nor pc_regnum_from_eax.
	* amd64-tdep.c (amd64_x32_init_abi): Don't set sp_regnum_from_eax
	nor pc_regnum_from_eax.

diff --git a/gdb/amd64-tdep.c b/gdb/amd64-tdep.c
index 5424926..8ae1142 100644
--- a/gdb/amd64-tdep.c
+++ b/gdb/amd64-tdep.c
@@ -2946,9 +2946,6 @@ amd64_x32_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
     tdesc = tdesc_x32;
   tdep->tdesc = tdesc;
 
-  tdep->sp_regnum_from_eax = AMD64_RSP_REGNUM;
-  tdep->pc_regnum_from_eax = AMD64_RIP_REGNUM;
-
   tdep->num_dword_regs = 17;
   set_tdesc_pseudo_register_type (gdbarch, amd64_x32_pseudo_register_type);
 
diff --git a/gdb/i386-tdep.c b/gdb/i386-tdep.c
index 84e9794..ddb20aa 100644
--- a/gdb/i386-tdep.c
+++ b/gdb/i386-tdep.c
@@ -7705,9 +7705,6 @@ i386_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   tdep->num_mmx_regs = 8;
   tdep->num_ymm_regs = 0;
 
-  tdep->sp_regnum_from_eax = -1;
-  tdep->pc_regnum_from_eax = -1;
-
   tdesc_data = tdesc_data_alloc ();
 
   set_gdbarch_relocate_instruction (gdbarch, i386_relocate_instruction);
@@ -7752,14 +7749,6 @@ i386_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
       /* Support dword pseudo-register if it hasn't been disabled.  */
       tdep->eax_regnum = ymm0_regnum;
       ymm0_regnum += tdep->num_dword_regs;
-      if (tdep->sp_regnum_from_eax != -1)
-	set_gdbarch_sp_regnum (gdbarch,
-			       (tdep->eax_regnum
-				+ tdep->sp_regnum_from_eax));
-      if (tdep->pc_regnum_from_eax != -1)
-	set_gdbarch_pc_regnum (gdbarch,
-			       (tdep->eax_regnum
-				+ tdep->pc_regnum_from_eax));
     }
   else
     tdep->eax_regnum = -1;
diff --git a/gdb/i386-tdep.h b/gdb/i386-tdep.h
index 76afdce..5f233f5 100644
--- a/gdb/i386-tdep.h
+++ b/gdb/i386-tdep.h
@@ -149,14 +149,6 @@ struct gdbarch_tdep
      of pseudo dword register support.  */
   int eax_regnum;
 
-  /* Register number for SP, relative to %eax.  Set this to -1 to
-     indicate the absence of pseudo SP register support.  */
-  int sp_regnum_from_eax;
-
-  /* Register number for PC, relative to %eax.  Set this to -1 to
-     indicate the absence of pseudo PC register support.  */
-  int pc_regnum_from_eax;
-
   /* Number of core registers.  */
   int num_core_regs;
 


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [7.5] PATCH: PR backtrace/14646 [x32] backtrace doesn't work
  2012-10-20 23:47 [7.5] PATCH: PR backtrace/14646 [x32] backtrace doesn't work H.J. Lu
@ 2012-10-21  1:56 ` Joel Brobecker
  2012-10-21  2:06   ` H.J. Lu
  2012-11-09  0:15   ` Pedro Alves
  0 siblings, 2 replies; 7+ messages in thread
From: Joel Brobecker @ 2012-10-21  1:56 UTC (permalink / raw)
  To: H.J. Lu; +Cc: GDB

> This patch backports the fix from trunk to 7.5 branch.  Tested on
> Linux/x86-64 and Linux/x32.  OK to install?
[...]
> 	PR backtrace/14646
> 	PR gdb/14647
> 	* i386-tdep.h (gdbarch_tdep): Remove sp_regnum_from_eax and
> 	pc_regnum_from_eax.
> 	* i386-tdep.c (i386_gdbarch_init): Don't use sp_regnum_from_eax
> 	nor pc_regnum_from_eax.
> 	* amd64-tdep.c (amd64_x32_init_abi): Don't set sp_regnum_from_eax
> 	nor pc_regnum_from_eax.

I'm sorry to say that I am not comfortable at all with this going
in the 7.5 branch. If Mark is super confident, then OK, but this is
touching sp/pc handling for all x86 and x86-64 targets. And I don't
think that the issue this patch is fixing is that critical.

-- 
Joel


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [7.5] PATCH: PR backtrace/14646 [x32] backtrace doesn't work
  2012-10-21  1:56 ` Joel Brobecker
@ 2012-10-21  2:06   ` H.J. Lu
  2012-11-09  0:15   ` Pedro Alves
  1 sibling, 0 replies; 7+ messages in thread
From: H.J. Lu @ 2012-10-21  2:06 UTC (permalink / raw)
  To: Joel Brobecker; +Cc: GDB

On Sat, Oct 20, 2012 at 6:56 PM, Joel Brobecker <brobecker@adacore.com> wrote:
>> This patch backports the fix from trunk to 7.5 branch.  Tested on
>> Linux/x86-64 and Linux/x32.  OK to install?
> [...]
>>       PR backtrace/14646
>>       PR gdb/14647
>>       * i386-tdep.h (gdbarch_tdep): Remove sp_regnum_from_eax and
>>       pc_regnum_from_eax.
>>       * i386-tdep.c (i386_gdbarch_init): Don't use sp_regnum_from_eax
>>       nor pc_regnum_from_eax.
>>       * amd64-tdep.c (amd64_x32_init_abi): Don't set sp_regnum_from_eax
>>       nor pc_regnum_from_eax.
>
> I'm sorry to say that I am not comfortable at all with this going
> in the 7.5 branch. If Mark is super confident, then OK, but this is
> touching sp/pc handling for all x86 and x86-64 targets. And I don't
> think that the issue this patch is fixing is that critical.
>

This patch reverts the changed made on 7.5 branch, which
brings 7.5 branch back to 7.4 branch.  It should be 100% safe.

-- 
H.J.


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [7.5] PATCH: PR backtrace/14646 [x32] backtrace doesn't work
  2012-10-21  1:56 ` Joel Brobecker
  2012-10-21  2:06   ` H.J. Lu
@ 2012-11-09  0:15   ` Pedro Alves
  2012-11-09  9:59     ` Mark Kettenis
  1 sibling, 1 reply; 7+ messages in thread
From: Pedro Alves @ 2012-11-09  0:15 UTC (permalink / raw)
  To: Joel Brobecker; +Cc: H.J. Lu, GDB

On 10/21/2012 02:56 AM, Joel Brobecker wrote:
>> This patch backports the fix from trunk to 7.5 branch.  Tested on
>> Linux/x86-64 and Linux/x32.  OK to install?
> [...]
>> 	PR backtrace/14646
>> 	PR gdb/14647
>> 	* i386-tdep.h (gdbarch_tdep): Remove sp_regnum_from_eax and
>> 	pc_regnum_from_eax.
>> 	* i386-tdep.c (i386_gdbarch_init): Don't use sp_regnum_from_eax
>> 	nor pc_regnum_from_eax.
>> 	* amd64-tdep.c (amd64_x32_init_abi): Don't set sp_regnum_from_eax
>> 	nor pc_regnum_from_eax.
> 
> I'm sorry to say that I am not comfortable at all with this going
> in the 7.5 branch. If Mark is super confident, then OK, but this is
> touching sp/pc handling for all x86 and x86-64 targets. And I don't
> think that the issue this patch is fixing is that critical.

I'm not Mark, but it looks safe on all x86 and x86-64 targets to me.
Note how tdep->sp_regnum_from_eax and tdep->sp_regnum_from_eax are -1
by default, and only x32 sets it to something else.  Then, the only use
for those fields:

-      if (tdep->sp_regnum_from_eax != -1)
-	set_gdbarch_sp_regnum (gdbarch,
-			       (tdep->eax_regnum
-				+ tdep->sp_regnum_from_eax));
-      if (tdep->pc_regnum_from_eax != -1)
-	set_gdbarch_pc_regnum (gdbarch,
-			       (tdep->eax_regnum
-				+ tdep->pc_regnum_from_eax));

only had effect on x32.

-- 
Pedro Alves


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [7.5] PATCH: PR backtrace/14646 [x32] backtrace doesn't work
  2012-11-09  0:15   ` Pedro Alves
@ 2012-11-09  9:59     ` Mark Kettenis
  2012-11-09 16:54       ` Joel Brobecker
  0 siblings, 1 reply; 7+ messages in thread
From: Mark Kettenis @ 2012-11-09  9:59 UTC (permalink / raw)
  To: palves; +Cc: brobecker, hjl.tools, gdb-patches

> Comment: DKIM? See http://www.dkim.org
> DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed;
> 	d=sourceware.org; s=default; x=1353024963; h=Comment:
> 	DomainKey-Signature:Received:Received:Received:Received:Received:
> 	Message-ID:Date:From:User-Agent:MIME-Version:To:CC:Subject:
> 	References:In-Reply-To:Content-Type:Content-Transfer-Encoding:
> 	Mailing-List:Precedence:List-Id:List-Unsubscribe:List-Subscribe:
> 	List-Archive:List-Post:List-Help:Sender:Delivered-To; bh=fQ2iB/y
> 	Eg2HuhqTeKRylTb4WTT0=; b=FLPU875R2QT9MXKu6e+WmhcbYPWpsjXJa3WwEjD
> 	PGW76VcrElXC6LiwtWx3KE9FvDEdwunETMJ/ZSWDL+FZRig8G+girKGiSiCTsBAf
> 	iP+y5uwHXxm/0u3gUuyNZcfirK73wRuBF9zxAsCdc4MwVwqChYfT1/MPGRTzpFU8
> 	xcBY=
> Comment: DomainKeys? See http://antispam.yahoo.com/domainkeys
> DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws;
> 	s=default; d=sourceware.org;
> 	h=Received:Received:X-SWARE-Spam-Status:X-Spam-Check-By:Received:Received:Received:Message-ID:Date:From:User-Agent:MIME-Version:To:CC:Subject:References:In-Reply-To:Content-Type:Content-Transfer-Encoding:Mailing-List:Precedence:List-Id:List-Unsubscribe:List-Subscribe:List-Archive:List-Post:List-Help:Sender:Delivered-To;
> 	b=oRSzNMyrz9j0FxY3zCGoPUERnkq2zu7qDxnXUw/MUST8U3iRpnsY6pYiqqIlwx
> 	ozksGcOAQsWvd6C+3Cap8U5ZbAcVMcmXHPsCzr0ZlAYJlQWwnT0R389gzUJ+zt/o
> 	RtxSw7TaPcbmLG7+iUWWjtPecvKGCRnbc8xoxlADQL8BA=;
> X-SWARE-Spam-Status: No, hits=-7.8 required=5.0	tests=AWL,BAYES_00,KHOP_RCVD_UNTRUST,KHOP_THREADED,RCVD_IN_DNSWL_HI,RCVD_IN_HOSTKARMA_W,RP_MATCHES_RCVD,SPF_HELO_PASS
> X-Spam-Check-By: sourceware.org
> Date: Fri, 09 Nov 2012 00:15:41 +0000
> From: Pedro Alves <palves@redhat.com>
> CC: "H.J. Lu" <hjl.tools@gmail.com>, GDB <gdb-patches@sourceware.org>
> Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm
> Sender: gdb-patches-owner@sourceware.org
> X-XS4ALL-DNSBL-Checked: mxdrop108.xs4all.nl checked 209.132.180.131 against DNS blacklists
> X-CNFS-Analysis: v=2.0 cv=L5WqtZv8 c=1 sm=0 a=vbYRN7G9ZuyAWxq09MFwFw==:17
> 	a=33DZqpkaCd4A:10 a=YN_KAqlbJ3EA:10 a=K_0WnIvp2iAA:10
> 	a=8nJEP1OIZ-IA:10 a=20KFwNOVAAAA:8 a=_q_Hcc1DeB8A:10
> 	a=tesWsYECI-Fj5byH-2sA:9 a=wPNLvfGTeEIA:10
> 	a=vbYRN7G9ZuyAWxq09MFwFw==:117
> X-Virus-Scanned: by XS4ALL Virus Scanner
> X-XS4ALL-Spam-Score: -0.0 () DKIM_SIGNED, SPF_HELO_PASS, SPF_PASS
> X-XS4ALL-Spam: NO
> Envelope-To: m.m.kettenis@xs4all.nl
> 
> On 10/21/2012 02:56 AM, Joel Brobecker wrote:
> >> This patch backports the fix from trunk to 7.5 branch.  Tested on
> >> Linux/x86-64 and Linux/x32.  OK to install?
> > [...]
> >> 	PR backtrace/14646
> >> 	PR gdb/14647
> >> 	* i386-tdep.h (gdbarch_tdep): Remove sp_regnum_from_eax and
> >> 	pc_regnum_from_eax.
> >> 	* i386-tdep.c (i386_gdbarch_init): Don't use sp_regnum_from_eax
> >> 	nor pc_regnum_from_eax.
> >> 	* amd64-tdep.c (amd64_x32_init_abi): Don't set sp_regnum_from_eax
> >> 	nor pc_regnum_from_eax.
> > 
> > I'm sorry to say that I am not comfortable at all with this going
> > in the 7.5 branch. If Mark is super confident, then OK, but this is
> > touching sp/pc handling for all x86 and x86-64 targets. And I don't
> > think that the issue this patch is fixing is that critical.
> 
> I'm not Mark, but it looks safe on all x86 and x86-64 targets to me.
> Note how tdep->sp_regnum_from_eax and tdep->sp_regnum_from_eax are -1
> by default, and only x32 sets it to something else.  Then, the only use
> for those fields:
> 
> -      if (tdep->sp_regnum_from_eax != -1)
> -	set_gdbarch_sp_regnum (gdbarch,
> -			       (tdep->eax_regnum
> -				+ tdep->sp_regnum_from_eax));
> -      if (tdep->pc_regnum_from_eax != -1)
> -	set_gdbarch_pc_regnum (gdbarch,
> -			       (tdep->eax_regnum
> -				+ tdep->pc_regnum_from_eax));
> 
> only had effect on x32.

Yeah, it's pretty safe.  Must say that I don't see the urgency as x32
is still in its infancy.


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [7.5] PATCH: PR backtrace/14646 [x32] backtrace doesn't work
  2012-11-09  9:59     ` Mark Kettenis
@ 2012-11-09 16:54       ` Joel Brobecker
  2012-11-10  0:53         ` H.J. Lu
  0 siblings, 1 reply; 7+ messages in thread
From: Joel Brobecker @ 2012-11-09 16:54 UTC (permalink / raw)
  To: Mark Kettenis; +Cc: palves, hjl.tools, gdb-patches

> > only had effect on x32.
> 
> Yeah, it's pretty safe.  Must say that I don't see the urgency as x32
> is still in its infancy.

Thanks, guys. This takes care of my concerns regarding this patch.

-- 
Joel


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [7.5] PATCH: PR backtrace/14646 [x32] backtrace doesn't work
  2012-11-09 16:54       ` Joel Brobecker
@ 2012-11-10  0:53         ` H.J. Lu
  0 siblings, 0 replies; 7+ messages in thread
From: H.J. Lu @ 2012-11-10  0:53 UTC (permalink / raw)
  To: Joel Brobecker; +Cc: Mark Kettenis, palves, gdb-patches

On Fri, Nov 9, 2012 at 8:53 AM, Joel Brobecker <brobecker@adacore.com> wrote:
>> > only had effect on x32.
>>
>> Yeah, it's pretty safe.  Must say that I don't see the urgency as x32
>> is still in its infancy.
>
> Thanks, guys. This takes care of my concerns regarding this patch.
>
> --
> Joel

Fixed on 7.5 branch.

Thanks.

-- 
H.J.


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2012-11-10  0:53 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-10-20 23:47 [7.5] PATCH: PR backtrace/14646 [x32] backtrace doesn't work H.J. Lu
2012-10-21  1:56 ` Joel Brobecker
2012-10-21  2:06   ` H.J. Lu
2012-11-09  0:15   ` Pedro Alves
2012-11-09  9:59     ` Mark Kettenis
2012-11-09 16:54       ` Joel Brobecker
2012-11-10  0:53         ` H.J. Lu

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox