* [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