NetBSD Problem Report #49520

From www@NetBSD.org  Thu Jan  1 17:48:21 2015
Return-Path: <www@NetBSD.org>
Received: from mail.netbsd.org (mail.netbsd.org [149.20.53.66])
	(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
	(Client CN "mail.netbsd.org", Issuer "Postmaster NetBSD.org" (verified OK))
	by mollari.NetBSD.org (Postfix) with ESMTPS id 6766BA6562
	for <gnats-bugs@gnats.NetBSD.org>; Thu,  1 Jan 2015 17:48:21 +0000 (UTC)
Message-Id: <20150101174820.3F561A65BE@mollari.NetBSD.org>
Date: Thu,  1 Jan 2015 17:48:20 +0000 (UTC)
From: pguyot@kallisys.net
Reply-To: pguyot@kallisys.net
To: gnats-bugs@NetBSD.org
Subject: arm/disassem.c doesn't use proper address mode name for loads
X-Send-Pr-Version: www-1.0

>Number:         49520
>Category:       port-arm
>Synopsis:       arm/disassem.c doesn't use proper address mode name for loads
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    port-arm-maintainer
>State:          closed
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Thu Jan 01 17:50:00 +0000 2015
>Closed-Date:    Thu Jan 08 08:24:25 +0000 2015
>Last-Modified:  Thu Jan 08 08:24:25 +0000 2015
>Originator:     Paul Guyot
>Release:        NetBSD 6 — Revision 1.25, Fri Nov 21 23:36:20 2014 UTC
>Organization:
>Environment:
not applicable
>Description:
The following code is incorrect:

#define insn_stkblktrans(x)	insn_stack_block_transfers[(x >> 23) & 3]

It uses bits P and U to determine the stack-based name of the address mode. However, this name also depends on bit L (load or store) and the macro is only valid for store operations.

Cf ARM-ARM, "Load and Store Multiple addressing modes (alternative names)"
>How-To-Repeat:

>Fix:
Give up using alternate stack-based address modes or use the L bit.

>Release-Note:

>Audit-Trail:
From: "Nick Hudson" <skrll@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/49520 CVS commit: src/sys/arch/arm/arm
Date: Fri, 2 Jan 2015 10:03:42 +0000

 Module Name:	src
 Committed By:	skrll
 Date:		Fri Jan  2 10:03:42 UTC 2015

 Modified Files:
 	src/sys/arch/arm/arm: disassem.c

 Log Message:
 The mode synonyms are different for stm and ldm - handle this.

 PR/49520: arm/disassem.c doesn't use proper address mode name for loads


 To generate a diff of this commit:
 cvs rdiff -u -r1.25 -r1.26 src/sys/arch/arm/arm/disassem.c

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

State-Changed-From-To: open->pending-pullups
State-Changed-By: skrll@NetBSD.org
State-Changed-When: Fri, 02 Jan 2015 10:32:06 +0000
State-Changed-Why:
[pullup-6 #1225]
[pullup-7 #375]
[pullup-5 #1939] has also been requested.


From: "Martin Husemann" <martin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/49520 CVS commit: [netbsd-6] src/sys/arch/arm/arm
Date: Fri, 2 Jan 2015 13:37:35 +0000

 Module Name:	src
 Committed By:	martin
 Date:		Fri Jan  2 13:37:35 UTC 2015

 Modified Files:
 	src/sys/arch/arm/arm [netbsd-6]: disassem.c

 Log Message:
 Pull up following revision(s) (requested by skrll in ticket #1225):
 	sys/arch/arm/arm/disassem.c: revision 1.26
 The mode synonyms are different for stm and ldm - handle this.
 PR/49520: arm/disassem.c doesn't use proper address mode name for loads


 To generate a diff of this commit:
 cvs rdiff -u -r1.18 -r1.18.40.1 src/sys/arch/arm/arm/disassem.c

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "Martin Husemann" <martin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/49520 CVS commit: [netbsd-7] src/sys/arch/arm/arm
Date: Sun, 4 Jan 2015 11:40:17 +0000

 Module Name:	src
 Committed By:	martin
 Date:		Sun Jan  4 11:40:17 UTC 2015

 Modified Files:
 	src/sys/arch/arm/arm [netbsd-7]: disassem.c

 Log Message:
 Pull up following revision(s) (requested by skrll in ticket #375):
 	sys/arch/arm/arm/disassem.c: revision 1.26
 The mode synonyms are different for stm and ldm - handle this.
 PR/49520: arm/disassem.c doesn't use proper address mode name for loads


 To generate a diff of this commit:
 cvs rdiff -u -r1.24 -r1.24.4.1 src/sys/arch/arm/arm/disassem.c

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "SAITOH Masanobu" <msaitoh@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/49520 CVS commit: [netbsd-5] src/sys/arch/arm/arm
Date: Wed, 7 Jan 2015 13:03:42 +0000

 Module Name:	src
 Committed By:	msaitoh
 Date:		Wed Jan  7 13:03:42 UTC 2015

 Modified Files:
 	src/sys/arch/arm/arm [netbsd-5]: disassem.c

 Log Message:
 Pull up following revision(s) (requested by hick in ticket #1939):
 	sys/arch/arm/arm/disassem.c: revision 1.26
 The mode synonyms are different for stm and ldm - handle this.
 PR/49520: arm/disassem.c doesn't use proper address mode name for loads


 To generate a diff of this commit:
 cvs rdiff -u -r1.18 -r1.18.10.1 src/sys/arch/arm/arm/disassem.c

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

State-Changed-From-To: pending-pullups->closed
State-Changed-By: msaitoh@NetBSD.org
State-Changed-When: Thu, 08 Jan 2015 08:24:25 +0000
State-Changed-Why:
Pulled up.
Thanks.


>Unformatted:

NetBSD Home
NetBSD PR Database Search

(Contact us) $NetBSD: query-full-pr,v 1.39 2013/11/01 18:47:49 spz Exp $
$NetBSD: gnats_config.sh,v 1.8 2006/05/07 09:23:38 tsutsui Exp $
Copyright © 1994-2014 The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.