Message ID | 1410898465-28350-1-git-send-email-sergiodj@redhat.com |
---|---|
State | New, archived |
Headers |
Received: (qmail 3695 invoked by alias); 16 Sep 2014 20:14:37 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: <gdb-patches.sourceware.org> List-Unsubscribe: <mailto:gdb-patches-unsubscribe-##L=##H@sourceware.org> List-Subscribe: <mailto:gdb-patches-subscribe@sourceware.org> List-Archive: <http://sourceware.org/ml/gdb-patches/> List-Post: <mailto:gdb-patches@sourceware.org> List-Help: <mailto:gdb-patches-help@sourceware.org>, <http://sourceware.org/ml/#faqs> Sender: gdb-patches-owner@sourceware.org Delivered-To: mailing list gdb-patches@sourceware.org Received: (qmail 3685 invoked by uid 89); 16 Sep 2014 20:14:36 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-3.5 required=5.0 tests=AWL, BAYES_00, RP_MATCHES_RCVD, SPF_HELO_PASS, SPF_PASS autolearn=ham version=3.3.2 X-HELO: mx1.redhat.com Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES256-GCM-SHA384 encrypted) ESMTPS; Tue, 16 Sep 2014 20:14:35 +0000 Received: from int-mx09.intmail.prod.int.phx2.redhat.com (int-mx09.intmail.prod.int.phx2.redhat.com [10.5.11.22]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id s8GKEXxM008656 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL) for <gdb-patches@sourceware.org>; Tue, 16 Sep 2014 16:14:33 -0400 Received: from psique.yyz.redhat.com (dhcp-10-15-16-169.yyz.redhat.com [10.15.16.169]) by int-mx09.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id s8GKEWq0029486; Tue, 16 Sep 2014 16:14:33 -0400 From: Sergio Durigan Junior <sergiodj@redhat.com> To: GDB Patches <gdb-patches@sourceware.org> Cc: Sergio Durigan Junior <sergiodj@redhat.com> Subject: [PATCH] PR tdep/9390: Fix possible typo on xstorxstormy16-tdep.c Date: Tue, 16 Sep 2014 16:14:25 -0400 Message-Id: <1410898465-28350-1-git-send-email-sergiodj@redhat.com> X-IsSubscribed: yes |
Commit Message
Sergio Durigan Junior
Sept. 16, 2014, 8:14 p.m. UTC
This patch (probably) fixes the bug described in PR tdep/9390, which is about a wrong check in the following code: ... /* optional copying of args in r2-r7 to r10-r13. */ /* Probably only in optimized case but legal action for prologue. */ else if ((inst & 0xff00) == 0x4600 /* 46SD mov rD, rS */ && (inst & 0x00f0) >= 0x0020 && (inst & 0x00f0) <= 0x0070 && (inst & 0x000f) >= 0x00a0 && (inst & 0x000f) <= 0x000d) ^^^^^^^^^^^^^^^^^^^^^^^^^ ... This condition will never trigger, and the fix proposed in the bug (which made sense to me) was to test against 0x000a. I tried finding documentation about this target, but couldn't find anything. I don't even know if it is still used, but decided to submit the fix anyway. Tested on my x86_64 Fedora 20 GNU/Linux. gdb/ChangeLog: 2014-09-16 Sergio Durigan Junior <sergiodj@redhat.com> PR tdep/9390 * xstorxstormy16-tdep.c (xstormy16_analyze_prologue): Fix possible typo when using logical AND to determine instruction type. --- gdb/ChangeLog | 6 ++++++ gdb/xstormy16-tdep.c | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-)
Comments
[Adding Corinna, listed as xstormy16 maintainer in MAINTAINERS. Hi Corinna. Do we still care about this port?] The fix makes sense to me, though I know nothing about xstormy16 either. Thanks, Pedro Alves On 09/16/2014 09:14 PM, Sergio Durigan Junior wrote: > This patch (probably) fixes the bug described in PR tdep/9390, which > is about a wrong check in the following code: > > ... > > /* optional copying of args in r2-r7 to r10-r13. */ > /* Probably only in optimized case but legal action for prologue. */ > else if ((inst & 0xff00) == 0x4600 /* 46SD mov rD, rS */ > && (inst & 0x00f0) >= 0x0020 && (inst & 0x00f0) <= 0x0070 > && (inst & 0x000f) >= 0x00a0 && (inst & 0x000f) <= 0x000d) > ^^^^^^^^^^^^^^^^^^^^^^^^^ > ... > > This condition will never trigger, and the fix proposed in the bug > (which made sense to me) was to test against 0x000a. I tried finding > documentation about this target, but couldn't find anything. I don't > even know if it is still used, but decided to submit the fix anyway. > > Tested on my x86_64 Fedora 20 GNU/Linux. > > gdb/ChangeLog: > 2014-09-16 Sergio Durigan Junior <sergiodj@redhat.com> > > PR tdep/9390 > * xstorxstormy16-tdep.c (xstormy16_analyze_prologue): Fix possible > typo when using logical AND to determine instruction type. > --- > gdb/ChangeLog | 6 ++++++ > gdb/xstormy16-tdep.c | 2 +- > 2 files changed, 7 insertions(+), 1 deletion(-) > > diff --git a/gdb/ChangeLog b/gdb/ChangeLog > index 8216274..622976d 100644 > --- a/gdb/ChangeLog > +++ b/gdb/ChangeLog > @@ -1,5 +1,11 @@ > 2014-09-16 Sergio Durigan Junior <sergiodj@redhat.com> > > + PR tdep/9390 > + * xstorxstormy16-tdep.c (xstormy16_analyze_prologue): Fix possible > + typo when using logical AND to determine instruction type. > + > +2014-09-16 Sergio Durigan Junior <sergiodj@redhat.com> > + > * objc-lang.c (find_implementation_from_class): Remove dead code. > > 2014-09-16 Sergio Durigan Junior <sergiodj@redhat.com> > diff --git a/gdb/xstormy16-tdep.c b/gdb/xstormy16-tdep.c > index af3ff32..9692742 100644 > --- a/gdb/xstormy16-tdep.c > +++ b/gdb/xstormy16-tdep.c > @@ -374,7 +374,7 @@ xstormy16_analyze_prologue (struct gdbarch *gdbarch, > /* Probably only in optimized case but legal action for prologue. */ > else if ((inst & 0xff00) == 0x4600 /* 46SD mov rD, rS */ > && (inst & 0x00f0) >= 0x0020 && (inst & 0x00f0) <= 0x0070 > - && (inst & 0x000f) >= 0x00a0 && (inst & 0x000f) <= 0x000d) > + && (inst & 0x000f) >= 0x000a && (inst & 0x000f) <= 0x000d) > ; > > /* Optional copying of args in r2-r7 to stack. */ >
On Sep 16 21:27, Pedro Alves wrote: > [Adding Corinna, listed as xstormy16 maintainer in MAINTAINERS. > Hi Corinna. Do we still care about this port?] Hi Pedro. Sorry for the delay. Yes, we still care for this port. > The fix makes sense to me, though I know nothing about > xstormy16 either. The patch is fine. The expression is trying to check for certain registers in a mov, and the register numbers are encoded in the lowest nibble. There's definitely a typo. Thanks, Corinna > > Thanks, > Pedro Alves > > On 09/16/2014 09:14 PM, Sergio Durigan Junior wrote: > > This patch (probably) fixes the bug described in PR tdep/9390, which > > is about a wrong check in the following code: > > > > ... > > > > /* optional copying of args in r2-r7 to r10-r13. */ > > /* Probably only in optimized case but legal action for prologue. */ > > else if ((inst & 0xff00) == 0x4600 /* 46SD mov rD, rS */ > > && (inst & 0x00f0) >= 0x0020 && (inst & 0x00f0) <= 0x0070 > > && (inst & 0x000f) >= 0x00a0 && (inst & 0x000f) <= 0x000d) > > ^^^^^^^^^^^^^^^^^^^^^^^^^ > > ... > > > > This condition will never trigger, and the fix proposed in the bug > > (which made sense to me) was to test against 0x000a. I tried finding > > documentation about this target, but couldn't find anything. I don't > > even know if it is still used, but decided to submit the fix anyway. > > > > Tested on my x86_64 Fedora 20 GNU/Linux. > > > > gdb/ChangeLog: > > 2014-09-16 Sergio Durigan Junior <sergiodj@redhat.com> > > > > PR tdep/9390 > > * xstorxstormy16-tdep.c (xstormy16_analyze_prologue): Fix possible > > typo when using logical AND to determine instruction type. > > --- > > gdb/ChangeLog | 6 ++++++ > > gdb/xstormy16-tdep.c | 2 +- > > 2 files changed, 7 insertions(+), 1 deletion(-) > > > > diff --git a/gdb/ChangeLog b/gdb/ChangeLog > > index 8216274..622976d 100644 > > --- a/gdb/ChangeLog > > +++ b/gdb/ChangeLog > > @@ -1,5 +1,11 @@ > > 2014-09-16 Sergio Durigan Junior <sergiodj@redhat.com> > > > > + PR tdep/9390 > > + * xstorxstormy16-tdep.c (xstormy16_analyze_prologue): Fix possible > > + typo when using logical AND to determine instruction type. > > + > > +2014-09-16 Sergio Durigan Junior <sergiodj@redhat.com> > > + > > * objc-lang.c (find_implementation_from_class): Remove dead code. > > > > 2014-09-16 Sergio Durigan Junior <sergiodj@redhat.com> > > diff --git a/gdb/xstormy16-tdep.c b/gdb/xstormy16-tdep.c > > index af3ff32..9692742 100644 > > --- a/gdb/xstormy16-tdep.c > > +++ b/gdb/xstormy16-tdep.c > > @@ -374,7 +374,7 @@ xstormy16_analyze_prologue (struct gdbarch *gdbarch, > > /* Probably only in optimized case but legal action for prologue. */ > > else if ((inst & 0xff00) == 0x4600 /* 46SD mov rD, rS */ > > && (inst & 0x00f0) >= 0x0020 && (inst & 0x00f0) <= 0x0070 > > - && (inst & 0x000f) >= 0x00a0 && (inst & 0x000f) <= 0x000d) > > + && (inst & 0x000f) >= 0x000a && (inst & 0x000f) <= 0x000d) > > ; > > > > /* Optional copying of args in r2-r7 to stack. */ > >
On Wednesday, October 08 2014, Corinna Vinschen wrote: > On Sep 16 21:27, Pedro Alves wrote: >> [Adding Corinna, listed as xstormy16 maintainer in MAINTAINERS. >> Hi Corinna. Do we still care about this port?] > > Hi Pedro. Sorry for the delay. Yes, we still care for this port. > >> The fix makes sense to me, though I know nothing about >> xstormy16 either. > > The patch is fine. The expression is trying to check for certain > registers in a mov, and the register numbers are encoded in the lowest > nibble. There's definitely a typo. Thanks, Corinna. I have pushed the patch. <https://sourceware.org/ml/gdb-cvs/2014-10/msg00026.html>
On Oct 9 13:47, Sergio Durigan Junior wrote: > On Wednesday, October 08 2014, Corinna Vinschen wrote: > > > On Sep 16 21:27, Pedro Alves wrote: > >> [Adding Corinna, listed as xstormy16 maintainer in MAINTAINERS. > >> Hi Corinna. Do we still care about this port?] > > > > Hi Pedro. Sorry for the delay. Yes, we still care for this port. > > > >> The fix makes sense to me, though I know nothing about > >> xstormy16 either. > > > > The patch is fine. The expression is trying to check for certain > > registers in a mov, and the register numbers are encoded in the lowest > > nibble. There's definitely a typo. > > Thanks, Corinna. > > I have pushed the patch. > > <https://sourceware.org/ml/gdb-cvs/2014-10/msg00026.html> Thanks! Corinna
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 8216274..622976d 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,11 @@ 2014-09-16 Sergio Durigan Junior <sergiodj@redhat.com> + PR tdep/9390 + * xstorxstormy16-tdep.c (xstormy16_analyze_prologue): Fix possible + typo when using logical AND to determine instruction type. + +2014-09-16 Sergio Durigan Junior <sergiodj@redhat.com> + * objc-lang.c (find_implementation_from_class): Remove dead code. 2014-09-16 Sergio Durigan Junior <sergiodj@redhat.com> diff --git a/gdb/xstormy16-tdep.c b/gdb/xstormy16-tdep.c index af3ff32..9692742 100644 --- a/gdb/xstormy16-tdep.c +++ b/gdb/xstormy16-tdep.c @@ -374,7 +374,7 @@ xstormy16_analyze_prologue (struct gdbarch *gdbarch, /* Probably only in optimized case but legal action for prologue. */ else if ((inst & 0xff00) == 0x4600 /* 46SD mov rD, rS */ && (inst & 0x00f0) >= 0x0020 && (inst & 0x00f0) <= 0x0070 - && (inst & 0x000f) >= 0x00a0 && (inst & 0x000f) <= 0x000d) + && (inst & 0x000f) >= 0x000a && (inst & 0x000f) <= 0x000d) ; /* Optional copying of args in r2-r7 to stack. */