public inbox for binutils@sourceware.org
 help / color / mirror / Atom feed
* [RFA] PowerPC e6500 opcodes correction
@ 2012-08-17 23:14 Edmar
  2012-08-18  0:20 ` Andrew Pinski
  2012-08-20  9:55 ` Alan Modra
  0 siblings, 2 replies; 5+ messages in thread
From: Edmar @ 2012-08-17 23:14 UTC (permalink / raw)
  To: binutils, Alan Modra

[-- Attachment #1: Type: text/plain, Size: 962 bytes --]

Alan,

Last year, IBM and Freescale agreed to change the opcodes of four new 
instructions.

When I submitted the e6500 patch early this year, I missed those changes
and used the opcodes from a previous version of our internal documentation.

Attached is a patch that fixes the opcodes for:
vabsdub
vabsduh
vabsduw
mviwsplt

The patch was tested for powerpc 32 bits and 64 bits with no regressions 
against
this week's snapshot.

(Recently I obtained WAA for gcc project, despite this, Freescale 
firewall still does not
allow me to use CVS. I would appreciate if you could do the commit for us.)

Thanks,
Edmar



opcodes/ChangeLog
2012-08-17  Edmar Wienskoski <edmar@freescale.com>

         * ppc-opc.c (powerpc_opcodes): Changed opcode for vabsdub,
         vabsduh, vabsduw, mviwsplt.

gas/testsuite/ChangeLog
2012-08-17  Edmar Wienskoski <edmar@freescale.com>

         * gas/ppc/e6500.d: Changed opcode for vabsdub, vabsduh, vabsduw,
         mviwsplt.



[-- Attachment #2: sub_e6500_update-bin.diff --]
[-- Type: text/x-patch, Size: 5150 bytes --]

diff -ruN binutils-orig/gas/testsuite/gas/ppc/e6500.d binutils-new/gas/testsuite/gas/ppc/e6500.d
--- binutils-orig/gas/testsuite/gas/ppc/e6500.d	2012-03-09 15:39:06.000000000 -0800
+++ binutils-new/gas/testsuite/gas/ppc/e6500.d	2012-08-17 14:13:51.190005756 -0700
@@ -7,11 +7,11 @@
 Disassembly of section \.text:
 
 0+00 <start>:
-   0:	10 01 10 c0 	vabsdub v0,v1,v2
-   4:	10 01 11 00 	vabsduh v0,v1,v2
-   8:	10 01 11 40 	vabsduw v0,v1,v2
+   0:	10 01 14 03 	vabsdub v0,v1,v2
+   4:	10 01 14 43 	vabsduh v0,v1,v2
+   8:	10 01 14 83 	vabsduw v0,v1,v2
    c:	7c 01 10 dc 	mvidsplt v0,r1,r2
-  10:	7c 01 11 1c 	mviwsplt v0,r1,r2
+  10:	7c 01 10 5c 	mviwsplt v0,r1,r2
   14:	7c 00 12 0a 	lvexbx  v0,0,r2
   18:	7c 01 12 0a 	lvexbx  v0,r1,r2
   1c:	7c 00 12 4a 	lvexhx  v0,0,r2
diff -ruN binutils-orig/opcodes/ppc-opc.c binutils-new/opcodes/ppc-opc.c
--- binutils-orig/opcodes/ppc-opc.c	2012-07-25 06:08:55.000000000 -0700
+++ binutils-new/opcodes/ppc-opc.c	2012-08-17 13:50:24.940005751 -0700
@@ -2858,14 +2858,12 @@
 {"machhwsu",	XO (4,	76,0,0),XO_MASK,     MULHW|PPCVLE,  PPCNONE,	{RT, RA, RB}},
 {"machhwsu.",	XO (4,	76,0,1),XO_MASK,     MULHW|PPCVLE,  PPCNONE,	{RT, RA, RB}},
 {"ps_cmpo1",	X  (4,	96), X_MASK|(3<<21), PPCPS,	PPCNONE,	{BF, FRA, FRB}},
-{"vabsdub",	VX (4, 192),	VX_MASK,     PPCVEC2,	PPCNONE,	{VD, VA, VB}},
 {"vcmpeqfp",	VXR(4, 198,0),	VXR_MASK,    PPCVEC|PPCVLE, PPCNONE,	{VD, VA, VB}},
 {"vpkuwus",	VX (4, 206),	VX_MASK,     PPCVEC|PPCVLE, PPCNONE,	{VD, VA, VB}},
 {"machhws",	XO (4, 108,0,0),XO_MASK,     MULHW|PPCVLE, PPCNONE,	{RT, RA, RB}},
 {"machhws.",	XO (4, 108,0,1),XO_MASK,     MULHW|PPCVLE, PPCNONE,	{RT, RA, RB}},
 {"nmachhws",	XO (4, 110,0,0),XO_MASK,     MULHW|PPCVLE, PPCNONE,	{RT, RA, RB}},
 {"nmachhws.",	XO (4, 110,0,1),XO_MASK,     MULHW|PPCVLE, PPCNONE,	{RT, RA, RB}},
-{"vabsduh",	VX (4, 256),	VX_MASK,     PPCVEC2,	PPCNONE,	{VD, VA, VB}},
 {"vmaxsb",	VX (4, 258),	VX_MASK,     PPCVEC|PPCVLE, PPCNONE,	{VD, VA, VB}},
 {"vslb",	VX (4, 260),	VX_MASK,     PPCVEC|PPCVLE, PPCNONE,	{VD, VA, VB}},
 {"vmulosb",	VX (4, 264),	VX_MASK,     PPCVEC|PPCVLE, PPCNONE,	{VD, VA, VB}},
@@ -2878,7 +2876,6 @@
 {"mulchwu.",	XRC(4, 136,1),	X_MASK,      MULHW|PPCVLE, PPCNONE,	{RT, RA, RB}},
 {"macchwu",	XO (4, 140,0,0),XO_MASK,     MULHW|PPCVLE, PPCNONE,	{RT, RA, RB}},
 {"macchwu.",	XO (4, 140,0,1),XO_MASK,     MULHW|PPCVLE, PPCNONE,	{RT, RA, RB}},
-{"vabsduw",	VX (4, 320),	VX_MASK,     PPCVEC2,	PPCNONE,	{VD, VA, VB}},
 {"vmaxsh",	VX (4, 322),	VX_MASK,     PPCVEC|PPCVLE, PPCNONE,	{VD, VA, VB}},
 {"vslh",	VX (4, 324),	VX_MASK,     PPCVEC|PPCVLE, PPCNONE,	{VD, VA, VB}},
 {"vmulosh",	VX (4, 328),	VX_MASK,     PPCVEC|PPCVLE, PPCNONE,	{VD, VA, VB}},
@@ -3142,6 +3139,7 @@
 {"nmaclhws.",	XO (4, 494,0,1),XO_MASK,     MULHW|PPCVLE, PPCNONE,	{RT, RA, RB}},
 {"vsububm",	VX (4,1024),	VX_MASK,     PPCVEC|PPCVLE, PPCNONE,	{VD, VA, VB}},
 {"vavgub",	VX (4,1026),	VX_MASK,     PPCVEC|PPCVLE, PPCNONE,	{VD, VA, VB}},
+{"vabsdub",	VX (4,1027),	VX_MASK,     PPCVEC2,	PPCNONE,	{VD, VA, VB}},
 {"evmhessf",	VX (4,1027),	VX_MASK,     PPCSPE|PPCVLE, PPCNONE,	{RS, RA, RB}},
 {"vand",	VX (4,1028),	VX_MASK,     PPCVEC|PPCVLE, PPCNONE,	{VD, VA, VB}},
 {"vcmpequb.",	VXR(4,	 6,1),	VXR_MASK,    PPCVEC|PPCVLE, PPCNONE,	{VD, VA, VB}},
@@ -3170,6 +3168,7 @@
 {"evmhosmfa",	VX (4,1071),	VX_MASK,     PPCSPE|PPCVLE, PPCNONE,	{RS, RA, RB}},
 {"vsubuhm",	VX (4,1088),	VX_MASK,     PPCVEC|PPCVLE, PPCNONE,	{VD, VA, VB}},
 {"vavguh",	VX (4,1090),	VX_MASK,     PPCVEC|PPCVLE, PPCNONE,	{VD, VA, VB}},
+{"vabsduh",	VX (4,1091),	VX_MASK,     PPCVEC2,	PPCNONE,	{VD, VA, VB}},
 {"vandc",	VX (4,1092),	VX_MASK,     PPCVEC|PPCVLE, PPCNONE,	{VD, VA, VB}},
 {"vcmpequh.",	VXR(4,	70,1),	VXR_MASK,    PPCVEC|PPCVLE, PPCNONE,	{VD, VA, VB}},
 {"udi1fcm.",	APU(4, 547,0), APU_MASK, PPC405|PPC440, PPC476,		{URT, URA, URB}},
@@ -3202,6 +3201,7 @@
 {"evmwsmfa",	VX (4,1147),	VX_MASK,     PPCSPE|PPCVLE, PPCNONE,	{RS, RA, RB}},
 {"vsubuwm",	VX (4,1152),	VX_MASK,     PPCVEC|PPCVLE, PPCNONE,	{VD, VA, VB}},
 {"vavguw",	VX (4,1154),	VX_MASK,     PPCVEC|PPCVLE, PPCNONE,	{VD, VA, VB}},
+{"vabsduw",	VX (4,1155),	VX_MASK,     PPCVEC2,	PPCNONE,	{VD, VA, VB}},
 {"vor",		VX (4,1156),	VX_MASK,     PPCVEC|PPCVLE, PPCNONE,	{VD, VA, VB}},
 {"vcmpequw.",	VXR(4, 134,1),	VXR_MASK,    PPCVEC|PPCVLE, PPCNONE,	{VD, VA, VB}},
 {"udi2fcm.",	APU(4, 579,0), APU_MASK, PPC405|PPC440, PPC476,		{URT, URA, URB}},
@@ -4285,6 +4285,8 @@
 {"lvehx",	X(31,39),	X_MASK,      PPCVEC|PPCVLE, PPCNONE,	{VD, RA0, RB}},
 {"lhfcmx",	APU(31,39,0), 	APU_MASK,    PPC405,	PPCNONE,	{FCRT, RA, RB}},
 
+{"mviwsplt",	X(31,46),	X_MASK,      PPCVEC2,	PPCNONE,	{VD, RA, RB}},
+
 {"iselgt",	X(31,47),	X_MASK,      PPCISEL,	PPCNONE,	{RT, RA0, RB}},
 
 {"lvewx",	X(31,71),	X_MASK,      PPCVEC|PPCVLE, PPCNONE,	{VD, RA0, RB}},
@@ -4409,8 +4411,6 @@
 {"adde.",	XO(31,138,0,1),	XO_MASK,     PPCCOM|PPCVLE, PPCNONE,	{RT, RA, RB}},
 {"ae.",		XO(31,138,0,1),	XO_MASK,     PWRCOM,	PPCNONE,	{RT, RA, RB}},
 
-{"mviwsplt",	X(31,142),	X_MASK,      PPCVEC2,	PPCNONE,	{VD, RA, RB}},
-
 {"dcbtstlse",	X(31,142),	X_MASK,      PPCCHLK,	E500MC,		{CT, RA0, RB}},
 
 {"mtcr",	XFXM(31,144,0xff,0), XRARB_MASK, COM,	PPCNONE,	{RS}},

[-- Attachment #3: sub_e6500_update-bin-Changelog --]
[-- Type: text/plain, Size: 315 bytes --]

opcodes/ChangeLog
2012-08-17  Edmar Wienskoski  <edmar@freescale.com>

	* ppc-opc.c (powerpc_opcodes): Changed opcode for vabsdub,
	vabsduh, vabsduw, mviwsplt.

gas/testsuite/ChangeLog
2012-08-17  Edmar Wienskoski  <edmar@freescale.com>

	* gas/ppc/e6500.d: Changed opcode for vabsdub, vabsduh, vabsduw,
	mviwsplt.

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

* Re: [RFA] PowerPC e6500 opcodes correction
  2012-08-17 23:14 [RFA] PowerPC e6500 opcodes correction Edmar
@ 2012-08-18  0:20 ` Andrew Pinski
  2012-08-18  0:58   ` Peter Bergner
  2012-08-20  9:55 ` Alan Modra
  1 sibling, 1 reply; 5+ messages in thread
From: Andrew Pinski @ 2012-08-18  0:20 UTC (permalink / raw)
  To: Edmar; +Cc: binutils, Alan Modra

On Fri, Aug 17, 2012 at 2:49 PM, Edmar <edmar@freescale.com> wrote:
> (Recently I obtained WAA for gcc project, despite this, Freescale firewall
> still does not
> allow me to use CVS. I would appreciate if you could do the commit for us.)

Even cvs over ssh?  That is the way binutils cvs is handled to commit with.

Thanks,
Andrew

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

* Re: [RFA] PowerPC e6500 opcodes correction
  2012-08-18  0:20 ` Andrew Pinski
@ 2012-08-18  0:58   ` Peter Bergner
  0 siblings, 0 replies; 5+ messages in thread
From: Peter Bergner @ 2012-08-18  0:58 UTC (permalink / raw)
  To: Andrew Pinski; +Cc: Edmar, binutils, Alan Modra

On Fri, 17 Aug 2012 16:14:06 -0700
Andrew Pinski <pinskia@gmail.com> wrote:

> On Fri, Aug 17, 2012 at 2:49 PM, Edmar <edmar@freescale.com> wrote:
> > (Recently I obtained WAA for gcc project, despite this, Freescale firewall
> > still does not
> > allow me to use CVS. I would appreciate if you could do the commit for us.)
> 
> Even cvs over ssh?  That is the way binutils cvs is handled to commit with.

Right, what works for me is to do:

export CVS_RSH=ssh
export CVSROOT=:ext:<username>@sourceware.org:/cvs/src


Edmar, is the above doesn't work for you, I can commit the patch
for you, but you really should get this working.

Peter

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

* Re: [RFA] PowerPC e6500 opcodes correction
  2012-08-17 23:14 [RFA] PowerPC e6500 opcodes correction Edmar
  2012-08-18  0:20 ` Andrew Pinski
@ 2012-08-20  9:55 ` Alan Modra
  2012-08-29  3:05   ` Peter Bergner
  1 sibling, 1 reply; 5+ messages in thread
From: Alan Modra @ 2012-08-20  9:55 UTC (permalink / raw)
  To: Edmar; +Cc: binutils

On Fri, Aug 17, 2012 at 04:49:52PM -0500, Edmar wrote:
> (Recently I obtained WAA for gcc project, despite this, Freescale
> firewall still does not
> allow me to use CVS. I would appreciate if you could do the commit for us.)

I have applied the patch, but I do think it extremely odd that you
can't do this yourself.

-- 
Alan Modra
Australia Development Lab, IBM

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

* Re: [RFA] PowerPC e6500 opcodes correction
  2012-08-20  9:55 ` Alan Modra
@ 2012-08-29  3:05   ` Peter Bergner
  0 siblings, 0 replies; 5+ messages in thread
From: Peter Bergner @ 2012-08-29  3:05 UTC (permalink / raw)
  To: Alan Modra; +Cc: Edmar, binutils

On Mon, 20 Aug 2012 13:02:03 +0930 Alan Modra wrote:
> On Fri, Aug 17, 2012 at 04:49:52PM -0500, Edmar wrote:
>> (Recently I obtained WAA for gcc project, despite this, Freescale
>> firewall still does not
>> allow me to use CVS. I would appreciate if you could do the commit for us.)
> 
> I have applied the patch, but I do think it extremely odd that you
> can't do this yourself.

I have committed this to the branch.

Peter

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

end of thread, other threads:[~2012-08-29  3:03 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-08-17 23:14 [RFA] PowerPC e6500 opcodes correction Edmar
2012-08-18  0:20 ` Andrew Pinski
2012-08-18  0:58   ` Peter Bergner
2012-08-20  9:55 ` Alan Modra
2012-08-29  3:05   ` Peter Bergner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).