This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH v2][RX] Add RXv2 Instructions (2/3)


This paches test for RXv2 instructions.

diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog
index e26755e..627ce89 100644
--- a/gas/testsuite/ChangeLog
+++ b/gas/testsuite/ChangeLog
@@ -1,3 +1,78 @@
+2015-04-04  Yoshinori Sato  <ysato@users.sourceforge.jp>
+
+	* gas/testsuite/gas/rx/rx.exp: Added rxv2 option.
+	* gas/testsuite/gas/rx/fadd.d: Added RXv2 instruction case.
+	* gas/testsuite/gas/rx/fadd.sm: Likewise.
+	* gas/testsuite/gas/rx/fmul.d: Likewise.
+	* gas/testsuite/gas/rx/fmul.sm: Likewise.
+	* gas/testsuite/gas/rx/fsub.d: Likewise.
+	* gas/testsuite/gas/rx/fsub.sm: Likewise.
+	* gas/testsuite/gas/rx/machi.d: Likewise.
+	* gas/testsuite/gas/rx/machi.sm: Likewise.
+	* gas/testsuite/gas/rx/maclo.d: Likewise.
+	* gas/testsuite/gas/rx/maclo.sm: Likewise.
+	* gas/testsuite/gas/rx/macros.inc: Likewise.
+	* gas/testsuite/gas/rx/mulhi.d: Likewise.
+	* gas/testsuite/gas/rx/mulhi.sm: Likewise.
+	* gas/testsuite/gas/rx/mullo.d: Likewise.
+	* gas/testsuite/gas/rx/mullo.sm: Likewise.
+	* gas/testsuite/gas/rx/mvtachi.d: Likewise.
+	* gas/testsuite/gas/rx/mvtachi.sm: Likewise.
+	* gas/testsuite/gas/rx/mvtaclo.d: Likewise.
+	* gas/testsuite/gas/rx/mvtaclo.sm: Likewise.
+	* gas/testsuite/gas/rx/mvtc.d: Likewise.
+	* gas/testsuite/gas/rx/popc.d: Likewise.
+	* gas/testsuite/gas/rx/pushc.d: Likewise.
+	* gas/testsuite/gas/rx/mvfachi.d: Likewise.
+	* gas/testsuite/gas/rx/mvfachi.sm: Likewise.
+	* gas/testsuite/gas/rx/mvfaclo.d: Likewise.
+	* gas/testsuite/gas/rx/mvfaclo.sm: Likewise.
+	* gas/testsuite/gas/rx/mvfacmi.d: Likewise.
+	* gas/testsuite/gas/rx/mvfacmi.sm: Likewise.
+	* gas/testsuite/gas/rx/mvfc.d: Likewise.
+	* gas/testsuite/gas/rx/racw.d: Likewise.
+	* gas/testsuite/gas/rx/racw.sm: Likewise.
+	* gas/testsuite/gas/rx/stnz.d: Likewise.
+	* gas/testsuite/gas/rx/stnz.sm: Likewise.
+	* gas/testsuite/gas/rx/stz.d: Likewise.
+	* gas/testsuite/gas/rx/stz.sm: Likewise,.
+	* gas/testsuite/gas/rx/emaca.d: New tests.
+	* gas/testsuite/gas/rx/emaca.sm: Likewise.
+	* gas/testsuite/gas/rx/emsba.d: Likewise.
+	* gas/testsuite/gas/rx/emsba.sm: Likewise.
+	* gas/testsuite/gas/rx/emula.d: Likewise.
+	* gas/testsuite/gas/rx/emula.sm: Likewise.
+	* gas/testsuite/gas/rx/fsqrt.d: Likewise.
+	* gas/testsuite/gas/rx/fsqrt.sm: Likewise.
+	* gas/testsuite/gas/rx/ftou.d: Likewise.
+	* gas/testsuite/gas/rx/ftou.sm: Likewise.
+	* gas/testsuite/gas/rx/maclh.d: Likewise.
+	* gas/testsuite/gas/rx/maclh.sm: Likewise.
+	* gas/testsuite/gas/rx/movco.d: Likewise.
+	* gas/testsuite/gas/rx/movco.sm: Likewise.
+	* gas/testsuite/gas/rx/movli.d: Likewise.
+	* gas/testsuite/gas/rx/movli.sm: Likewise.
+	* gas/testsuite/gas/rx/msbhi.d: Likewise.
+	* gas/testsuite/gas/rx/msbhi.sm: Likewise.
+	* gas/testsuite/gas/rx/msblh.d: Likewise.
+	* gas/testsuite/gas/rx/msblh.sm: Likewise.
+	* gas/testsuite/gas/rx/msblo.d: Likewise.
+	* gas/testsuite/gas/rx/msblo.sm: Likewise.
+	* gas/testsuite/gas/rx/mullh.d: Likewise.
+	* gas/testsuite/gas/rx/mullh.sm: Likewise.
+	* gas/testsuite/gas/rx/mvfacgu.d: Likewise.
+	* gas/testsuite/gas/rx/mvfacgu.sm: Likewise.
+	* gas/testsuite/gas/rx/mvtacgu.d: Likewise.
+	* gas/testsuite/gas/rx/mvtacgu.sm: Likewise.
+	* gas/testsuite/gas/rx/racl.d: Likewise.
+	* gas/testsuite/gas/rx/racl.sm: Likewise.
+	* gas/testsuite/gas/rx/rdacl.d: Likewise.
+	* gas/testsuite/gas/rx/rdacl.sm: Likewise.
+	* gas/testsuite/gas/rx/rdacw.d: Likewise.
+	* gas/testsuite/gas/rx/rdacw.sm: Likewise.
+	* gas/testsuite/gas/rx/utof.d: Likewise.
+	* gas/testsuite/gas/rx/utof.sm: Likewise.
+
 2015-03-20  H.J. Lu  <hongjiu.lu@intel.com>
 
 	* gas/i386/i386.exp: Don't run nops-1-bdver1, nops-1-bdver2,
diff --git a/gas/testsuite/gas/rx/emaca.d b/gas/testsuite/gas/rx/emaca.d
new file mode 100644
index 0000000..5cb5dea
--- /dev/null
+++ b/gas/testsuite/gas/rx/emaca.d
@@ -0,0 +1,16 @@
+#objdump: -dr
+
+dump\.o:     file format .*
+
+
+Disassembly of section \.text:
+
+00000000 <\.text>:
+   0:	fd 07 00                      	emaca	r0, r0, a0
+   3:	fd 07 0f                      	emaca	r0, r15, a0
+   6:	fd 07 f0                      	emaca	r15, r0, a0
+   9:	fd 07 ff                      	emaca	r15, r15, a0
+   c:	fd 0f 00                      	emaca	r0, r0, a1
+   f:	fd 0f 0f                      	emaca	r0, r15, a1
+  12:	fd 0f f0                      	emaca	r15, r0, a1
+  15:	fd 0f ff                      	emaca	r15, r15, a1
diff --git a/gas/testsuite/gas/rx/emaca.sm b/gas/testsuite/gas/rx/emaca.sm
new file mode 100644
index 0000000..3740676
--- /dev/null
+++ b/gas/testsuite/gas/rx/emaca.sm
@@ -0,0 +1,2 @@
+	emaca	{reg},{reg},a0
+	emaca	{reg},{reg},a1
diff --git a/gas/testsuite/gas/rx/emsba.d b/gas/testsuite/gas/rx/emsba.d
new file mode 100644
index 0000000..1910107
--- /dev/null
+++ b/gas/testsuite/gas/rx/emsba.d
@@ -0,0 +1,16 @@
+#objdump: -dr
+
+dump\.o:     file format .*
+
+
+Disassembly of section \.text:
+
+00000000 <\.text>:
+   0:	fd 47 00                      	emsba	r0, r0, a0
+   3:	fd 47 0f                      	emsba	r0, r15, a0
+   6:	fd 47 f0                      	emsba	r15, r0, a0
+   9:	fd 47 ff                      	emsba	r15, r15, a0
+   c:	fd 4f 00                      	emsba	r0, r0, a1
+   f:	fd 4f 0f                      	emsba	r0, r15, a1
+  12:	fd 4f f0                      	emsba	r15, r0, a1
+  15:	fd 4f ff                      	emsba	r15, r15, a1
diff --git a/gas/testsuite/gas/rx/emsba.sm b/gas/testsuite/gas/rx/emsba.sm
new file mode 100644
index 0000000..70938fa
--- /dev/null
+++ b/gas/testsuite/gas/rx/emsba.sm
@@ -0,0 +1,2 @@
+	emsba	{reg},{reg},a0
+	emsba	{reg},{reg},a1
diff --git a/gas/testsuite/gas/rx/emula.d b/gas/testsuite/gas/rx/emula.d
new file mode 100644
index 0000000..9c689db
--- /dev/null
+++ b/gas/testsuite/gas/rx/emula.d
@@ -0,0 +1,16 @@
+#objdump: -dr
+
+dump\.o:     file format .*
+
+
+Disassembly of section \.text:
+
+00000000 <\.text>:
+   0:	fd 03 00                      	emula	r0, r0, a0
+   3:	fd 03 0f                      	emula	r0, r15, a0
+   6:	fd 03 f0                      	emula	r15, r0, a0
+   9:	fd 03 ff                      	emula	r15, r15, a0
+   c:	fd 0b 00                      	emula	r0, r0, a1
+   f:	fd 0b 0f                      	emula	r0, r15, a1
+  12:	fd 0b f0                      	emula	r15, r0, a1
+  15:	fd 0b ff                      	emula	r15, r15, a1
diff --git a/gas/testsuite/gas/rx/emula.sm b/gas/testsuite/gas/rx/emula.sm
new file mode 100644
index 0000000..95c7767
--- /dev/null
+++ b/gas/testsuite/gas/rx/emula.sm
@@ -0,0 +1,2 @@
+	emula	{reg},{reg},a0
+	emula	{reg},{reg},a1
diff --git a/gas/testsuite/gas/rx/fadd.d b/gas/testsuite/gas/rx/fadd.d
index 406052b..718193c 100644
--- a/gas/testsuite/gas/rx/fadd.d
+++ b/gas/testsuite/gas/rx/fadd.d
@@ -26,3 +26,11 @@ Disassembly of section \.text:
   49:	fc 8a 0f ff 3f                	fadd	65532\[r0\]\.l, r15
   4e:	fc 8a f0 ff 3f                	fadd	65532\[r15\]\.l, r0
   53:	fc 8a ff ff 3f                	fadd	65532\[r15\]\.l, r15
+  58:	ff a0 00                      	fadd	r0, r0, r0
+  5b:	ff af 00                      	fadd	r0, r0, r15
+  5e:	ff a0 0f                      	fadd	r0, r15, r0
+  61:	ff af 0f                      	fadd	r0, r15, r15
+  64:	ff a0 f0                      	fadd	r15, r0, r0
+  67:	ff af f0                      	fadd	r15, r0, r15
+  6a:	ff a0 ff                      	fadd	r15, r15, r0
+  6d:	ff af ff                      	fadd	r15, r15, r15
diff --git a/gas/testsuite/gas/rx/fadd.sm b/gas/testsuite/gas/rx/fadd.sm
index 94021af..34cb78e 100644
--- a/gas/testsuite/gas/rx/fadd.sm
+++ b/gas/testsuite/gas/rx/fadd.sm
@@ -1,3 +1,4 @@
 	fadd	#{imm32},{reg}
 	fadd	{reg},{reg}
 	fadd	{mem}.L,{reg}
+	fadd	{reg},{reg},{reg}
diff --git a/gas/testsuite/gas/rx/fmul.d b/gas/testsuite/gas/rx/fmul.d
index 7fec0af..2685e78 100644
--- a/gas/testsuite/gas/rx/fmul.d
+++ b/gas/testsuite/gas/rx/fmul.d
@@ -26,3 +26,11 @@ Disassembly of section \.text:
   49:	fc 8e 0f ff 3f                	fmul	65532\[r0\]\.l, r15
   4e:	fc 8e f0 ff 3f                	fmul	65532\[r15\]\.l, r0
   53:	fc 8e ff ff 3f                	fmul	65532\[r15\]\.l, r15
+  58:	ff b0 00                      	fmul	r0, r0, r0
+  5b:	ff bf 00                      	fmul	r0, r0, r15
+  5e:	ff b0 0f                      	fmul	r0, r15, r0
+  61:	ff bf 0f                      	fmul	r0, r15, r15
+  64:	ff b0 f0                      	fmul	r15, r0, r0
+  67:	ff bf f0                      	fmul	r15, r0, r15
+  6a:	ff b0 ff                      	fmul	r15, r15, r0
+  6d:	ff bf ff                      	fmul	r15, r15, r15
diff --git a/gas/testsuite/gas/rx/fmul.sm b/gas/testsuite/gas/rx/fmul.sm
index e68f24f..37408e4 100644
--- a/gas/testsuite/gas/rx/fmul.sm
+++ b/gas/testsuite/gas/rx/fmul.sm
@@ -1,3 +1,4 @@
 	fmul	#{imm32},{reg}
 	fmul	{reg},{reg}
 	fmul	{mem}.L,{reg}
+	fmul	{reg},{reg},{reg}
diff --git a/gas/testsuite/gas/rx/fsqrt.d b/gas/testsuite/gas/rx/fsqrt.d
new file mode 100644
index 0000000..31b84dc
--- /dev/null
+++ b/gas/testsuite/gas/rx/fsqrt.d
@@ -0,0 +1,24 @@
+#objdump: -dr
+
+dump\.o:     file format .*
+
+
+Disassembly of section \.text:
+
+00000000 <\.text>:
+   0:	fc a3 00                      	fsqrt	r0, r0
+   3:	fc a3 0f                      	fsqrt	r0, r15
+   6:	fc a3 f0                      	fsqrt	r15, r0
+   9:	fc a3 ff                      	fsqrt	r15, r15
+   c:	fc a0 00                      	fsqrt	\[r0\]\.l, r0
+   f:	fc a0 0f                      	fsqrt	\[r0\]\.l, r15
+  12:	fc a0 f0                      	fsqrt	\[r15\]\.l, r0
+  15:	fc a0 ff                      	fsqrt	\[r15\]\.l, r15
+  18:	fc a1 00 3f                   	fsqrt	252\[r0\]\.l, r0
+  1c:	fc a1 0f 3f                   	fsqrt	252\[r0\]\.l, r15
+  20:	fc a1 f0 3f                   	fsqrt	252\[r15\]\.l, r0
+  24:	fc a1 ff 3f                   	fsqrt	252\[r15\]\.l, r15
+  28:	fc a2 00 ff 3f                	fsqrt	65532\[r0\]\.l, r0
+  2d:	fc a2 0f ff 3f                	fsqrt	65532\[r0\]\.l, r15
+  32:	fc a2 f0 ff 3f                	fsqrt	65532\[r15\]\.l, r0
+  37:	fc a2 ff ff 3f                	fsqrt	65532\[r15\]\.l, r15
diff --git a/gas/testsuite/gas/rx/fsqrt.sm b/gas/testsuite/gas/rx/fsqrt.sm
new file mode 100644
index 0000000..b187839
--- /dev/null
+++ b/gas/testsuite/gas/rx/fsqrt.sm
@@ -0,0 +1,2 @@
+	fsqrt	{reg},{reg}
+	fsqrt	{mem}.L,{reg}
diff --git a/gas/testsuite/gas/rx/fsub.d b/gas/testsuite/gas/rx/fsub.d
index 5d26e5a..e36ddb6 100644
--- a/gas/testsuite/gas/rx/fsub.d
+++ b/gas/testsuite/gas/rx/fsub.d
@@ -26,3 +26,11 @@ Disassembly of section \.text:
   49:	fc 82 0f ff 3f                	fsub	65532\[r0\]\.l, r15
   4e:	fc 82 f0 ff 3f                	fsub	65532\[r15\]\.l, r0
   53:	fc 82 ff ff 3f                	fsub	65532\[r15\]\.l, r15
+  58:	ff 80 00                      	fsub	r0, r0, r0
+  5b:	ff 8f 00                      	fsub	r0, r0, r15
+  5e:	ff 80 0f                      	fsub	r0, r15, r0
+  61:	ff 8f 0f                      	fsub	r0, r15, r15
+  64:	ff 80 f0                      	fsub	r15, r0, r0
+  67:	ff 8f f0                      	fsub	r15, r0, r15
+  6a:	ff 80 ff                      	fsub	r15, r15, r0
+  6d:	ff 8f ff                      	fsub	r15, r15, r15
diff --git a/gas/testsuite/gas/rx/fsub.sm b/gas/testsuite/gas/rx/fsub.sm
index 64b93c9..5dfe022 100644
--- a/gas/testsuite/gas/rx/fsub.sm
+++ b/gas/testsuite/gas/rx/fsub.sm
@@ -1,3 +1,4 @@
 	fsub	#{imm32},{reg}
 	fsub	{reg},{reg}
 	fsub	{mem}.L,{reg}
+	fsub	{reg},{reg},{reg}
diff --git a/gas/testsuite/gas/rx/ftou.d b/gas/testsuite/gas/rx/ftou.d
new file mode 100644
index 0000000..84a285b
--- /dev/null
+++ b/gas/testsuite/gas/rx/ftou.d
@@ -0,0 +1,24 @@
+#objdump: -dr
+
+dump\.o:     file format .*
+
+
+Disassembly of section \.text:
+
+00000000 <\.text>:
+   0:	fc a7 00                      	ftou	r0, r0
+   3:	fc a7 0f                      	ftou	r0, r15
+   6:	fc a7 f0                      	ftou	r15, r0
+   9:	fc a7 ff                      	ftou	r15, r15
+   c:	fc a4 00                      	ftou	\[r0\]\.l, r0
+   f:	fc a4 0f                      	ftou	\[r0\]\.l, r15
+  12:	fc a4 f0                      	ftou	\[r15\]\.l, r0
+  15:	fc a4 ff                      	ftou	\[r15\]\.l, r15
+  18:	fc a5 00 3f                   	ftou	252\[r0\]\.l, r0
+  1c:	fc a5 0f 3f                   	ftou	252\[r0\]\.l, r15
+  20:	fc a5 f0 3f                   	ftou	252\[r15\]\.l, r0
+  24:	fc a5 ff 3f                   	ftou	252\[r15\]\.l, r15
+  28:	fc a6 00 ff 3f                	ftou	65532\[r0\]\.l, r0
+  2d:	fc a6 0f ff 3f                	ftou	65532\[r0\]\.l, r15
+  32:	fc a6 f0 ff 3f                	ftou	65532\[r15\]\.l, r0
+  37:	fc a6 ff ff 3f                	ftou	65532\[r15\]\.l, r15
diff --git a/gas/testsuite/gas/rx/ftou.sm b/gas/testsuite/gas/rx/ftou.sm
new file mode 100644
index 0000000..95fc1fe
--- /dev/null
+++ b/gas/testsuite/gas/rx/ftou.sm
@@ -0,0 +1,2 @@
+	ftou	{reg},{reg}
+	ftou	{mem}.L,{reg}
diff --git a/gas/testsuite/gas/rx/machi.d b/gas/testsuite/gas/rx/machi.d
index 0800696..9be594d 100644
--- a/gas/testsuite/gas/rx/machi.d
+++ b/gas/testsuite/gas/rx/machi.d
@@ -6,7 +6,15 @@ dump\.o:     file format .*
 Disassembly of section \.text:
 
 00000000 <\.text>:
-   0:	fd 04 00                      	machi	r0, r0
-   3:	fd 04 0f                      	machi	r0, r15
-   6:	fd 04 f0                      	machi	r15, r0
-   9:	fd 04 ff                      	machi	r15, r15
+   0:	fd 04 00                      	machi	r0, r0, a0
+   3:	fd 04 0f                      	machi	r0, r15, a0
+   6:	fd 04 f0                      	machi	r15, r0, a0
+   9:	fd 04 ff                      	machi	r15, r15, a0
+   c:	fd 04 00                      	machi	r0, r0, a0
+   f:	fd 04 0f                      	machi	r0, r15, a0
+  12:	fd 04 f0                      	machi	r15, r0, a0
+  15:	fd 04 ff                      	machi	r15, r15, a0
+  18:	fd 0c 00                      	machi	r0, r0, a1
+  1b:	fd 0c 0f                      	machi	r0, r15, a1
+  1e:	fd 0c f0                      	machi	r15, r0, a1
+  21:	fd 0c ff                      	machi	r15, r15, a1
diff --git a/gas/testsuite/gas/rx/machi.sm b/gas/testsuite/gas/rx/machi.sm
index f3651d0..ed2a456 100644
--- a/gas/testsuite/gas/rx/machi.sm
+++ b/gas/testsuite/gas/rx/machi.sm
@@ -1 +1,3 @@
 	machi	{reg},{reg}
+	machi	{reg},{reg},a0
+	machi	{reg},{reg},a1
diff --git a/gas/testsuite/gas/rx/maclh.d b/gas/testsuite/gas/rx/maclh.d
new file mode 100644
index 0000000..90fc4cd
--- /dev/null
+++ b/gas/testsuite/gas/rx/maclh.d
@@ -0,0 +1,16 @@
+#objdump: -dr
+
+dump\.o:     file format .*
+
+
+Disassembly of section \.text:
+
+00000000 <\.text>:
+   0:	fd 06 00                      	maclh	r0, r0, a0
+   3:	fd 06 0f                      	maclh	r0, r15, a0
+   6:	fd 06 f0                      	maclh	r15, r0, a0
+   9:	fd 06 ff                      	maclh	r15, r15, a0
+   c:	fd 0e 00                      	maclh	r0, r0, a1
+   f:	fd 0e 0f                      	maclh	r0, r15, a1
+  12:	fd 0e f0                      	maclh	r15, r0, a1
+  15:	fd 0e ff                      	maclh	r15, r15, a1
diff --git a/gas/testsuite/gas/rx/maclh.sm b/gas/testsuite/gas/rx/maclh.sm
new file mode 100644
index 0000000..7322b2a
--- /dev/null
+++ b/gas/testsuite/gas/rx/maclh.sm
@@ -0,0 +1,2 @@
+	maclh	{reg},{reg},a0
+	maclh	{reg},{reg},a1
diff --git a/gas/testsuite/gas/rx/maclo.d b/gas/testsuite/gas/rx/maclo.d
index 41ee1f2..abf299f 100644
--- a/gas/testsuite/gas/rx/maclo.d
+++ b/gas/testsuite/gas/rx/maclo.d
@@ -6,7 +6,15 @@ dump\.o:     file format .*
 Disassembly of section \.text:
 
 00000000 <\.text>:
-   0:	fd 05 00                      	maclo	r0, r0
-   3:	fd 05 0f                      	maclo	r0, r15
-   6:	fd 05 f0                      	maclo	r15, r0
-   9:	fd 05 ff                      	maclo	r15, r15
+   0:	fd 05 00                      	maclo	r0, r0, a0
+   3:	fd 05 0f                      	maclo	r0, r15, a0
+   6:	fd 05 f0                      	maclo	r15, r0, a0
+   9:	fd 05 ff                      	maclo	r15, r15, a0
+   c:	fd 05 00                      	maclo	r0, r0, a0
+   f:	fd 05 0f                      	maclo	r0, r15, a0
+  12:	fd 05 f0                      	maclo	r15, r0, a0
+  15:	fd 05 ff                      	maclo	r15, r15, a0
+  18:	fd 0d 00                      	maclo	r0, r0, a1
+  1b:	fd 0d 0f                      	maclo	r0, r15, a1
+  1e:	fd 0d f0                      	maclo	r15, r0, a1
+  21:	fd 0d ff                      	maclo	r15, r15, a1
diff --git a/gas/testsuite/gas/rx/maclo.sm b/gas/testsuite/gas/rx/maclo.sm
index 84a019c..7ba11ef 100644
--- a/gas/testsuite/gas/rx/maclo.sm
+++ b/gas/testsuite/gas/rx/maclo.sm
@@ -1 +1,3 @@
 	maclo	{reg},{reg}
+	maclo	{reg},{reg},a0
+	maclo	{reg},{reg},a1
diff --git a/gas/testsuite/gas/rx/macros.inc b/gas/testsuite/gas/rx/macros.inc
index 60921e6..02d2fac 100644
--- a/gas/testsuite/gas/rx/macros.inc
+++ b/gas/testsuite/gas/rx/macros.inc
@@ -4,7 +4,7 @@ macro	reg2	{r0;r14}
 macro	reg7	{r0;r7}
 macro	regPlo	{r1;r7}
 macro	regPhi	{r8;r14}
-macro	creg	{psw;fpsw;usp;isp;intb;bpsw;bpc;fintv}
+macro	creg	{psw;fpsw;usp;isp;intb;bpsw;bpc;fintv;extb}
 macro	pswf	{U;I;O;S;Z;C}
 
 macro	simm8	{-128;127}
diff --git a/gas/testsuite/gas/rx/movco.d b/gas/testsuite/gas/rx/movco.d
new file mode 100644
index 0000000..2041201
--- /dev/null
+++ b/gas/testsuite/gas/rx/movco.d
@@ -0,0 +1,12 @@
+#objdump: -dr
+
+dump\.o:     file format .*
+
+
+Disassembly of section \.text:
+
+00000000 <\.text>:
+   0:	fd 27 00                      	movco	r0, \[r0\]
+   3:	fd 27 f0                      	movco	r0, \[r15\]
+   6:	fd 27 0f                      	movco	r15, \[r0\]
+   9:	fd 27 ff                      	movco	r15, \[r15\]
diff --git a/gas/testsuite/gas/rx/movco.sm b/gas/testsuite/gas/rx/movco.sm
new file mode 100644
index 0000000..686f075
--- /dev/null
+++ b/gas/testsuite/gas/rx/movco.sm
@@ -0,0 +1 @@
+	movco	{reg},[{reg}]
diff --git a/gas/testsuite/gas/rx/movli.d b/gas/testsuite/gas/rx/movli.d
new file mode 100644
index 0000000..5799d63
--- /dev/null
+++ b/gas/testsuite/gas/rx/movli.d
@@ -0,0 +1,12 @@
+#objdump: -dr
+
+dump\.o:     file format .*
+
+
+Disassembly of section \.text:
+
+00000000 <\.text>:
+   0:	fd 2f 00                      	movli	\[r0\], r0
+   3:	fd 2f 0f                      	movli	\[r0\], r15
+   6:	fd 2f f0                      	movli	\[r15\], r0
+   9:	fd 2f ff                      	movli	\[r15\], r15
diff --git a/gas/testsuite/gas/rx/movli.sm b/gas/testsuite/gas/rx/movli.sm
new file mode 100644
index 0000000..76a0d15
--- /dev/null
+++ b/gas/testsuite/gas/rx/movli.sm
@@ -0,0 +1 @@
+	movli	[{reg}],{reg}
diff --git a/gas/testsuite/gas/rx/msbhi.d b/gas/testsuite/gas/rx/msbhi.d
new file mode 100644
index 0000000..e92d3f2
--- /dev/null
+++ b/gas/testsuite/gas/rx/msbhi.d
@@ -0,0 +1,16 @@
+#objdump: -dr
+
+dump\.o:     file format .*
+
+
+Disassembly of section \.text:
+
+00000000 <\.text>:
+   0:	fd 44 00                      	msbhi	r0, r0, a0
+   3:	fd 44 0f                      	msbhi	r0, r15, a0
+   6:	fd 44 f0                      	msbhi	r15, r0, a0
+   9:	fd 44 ff                      	msbhi	r15, r15, a0
+   c:	fd 4c 00                      	msbhi	r0, r0, a1
+   f:	fd 4c 0f                      	msbhi	r0, r15, a1
+  12:	fd 4c f0                      	msbhi	r15, r0, a1
+  15:	fd 4c ff                      	msbhi	r15, r15, a1
diff --git a/gas/testsuite/gas/rx/msbhi.sm b/gas/testsuite/gas/rx/msbhi.sm
new file mode 100644
index 0000000..db290a9
--- /dev/null
+++ b/gas/testsuite/gas/rx/msbhi.sm
@@ -0,0 +1,2 @@
+	msbhi	{reg},{reg},a0
+	msbhi	{reg},{reg},a1
diff --git a/gas/testsuite/gas/rx/msblh.d b/gas/testsuite/gas/rx/msblh.d
new file mode 100644
index 0000000..15dfea8
--- /dev/null
+++ b/gas/testsuite/gas/rx/msblh.d
@@ -0,0 +1,16 @@
+#objdump: -dr
+
+dump\.o:     file format .*
+
+
+Disassembly of section \.text:
+
+00000000 <\.text>:
+   0:	fd 46 00                      	msblh	r0, r0, a0
+   3:	fd 46 0f                      	msblh	r0, r15, a0
+   6:	fd 46 f0                      	msblh	r15, r0, a0
+   9:	fd 46 ff                      	msblh	r15, r15, a0
+   c:	fd 4e 00                      	msblh	r0, r0, a1
+   f:	fd 4e 0f                      	msblh	r0, r15, a1
+  12:	fd 4e f0                      	msblh	r15, r0, a1
+  15:	fd 4e ff                      	msblh	r15, r15, a1
diff --git a/gas/testsuite/gas/rx/msblh.sm b/gas/testsuite/gas/rx/msblh.sm
new file mode 100644
index 0000000..99d4134
--- /dev/null
+++ b/gas/testsuite/gas/rx/msblh.sm
@@ -0,0 +1,2 @@
+	msblh	{reg},{reg},a0
+	msblh	{reg},{reg},a1
diff --git a/gas/testsuite/gas/rx/msblo.d b/gas/testsuite/gas/rx/msblo.d
new file mode 100644
index 0000000..e085785
--- /dev/null
+++ b/gas/testsuite/gas/rx/msblo.d
@@ -0,0 +1,16 @@
+#objdump: -dr
+
+dump\.o:     file format .*
+
+
+Disassembly of section \.text:
+
+00000000 <\.text>:
+   0:	fd 45 00                      	msblo	r0, r0, a0
+   3:	fd 45 0f                      	msblo	r0, r15, a0
+   6:	fd 45 f0                      	msblo	r15, r0, a0
+   9:	fd 45 ff                      	msblo	r15, r15, a0
+   c:	fd 4d 00                      	msblo	r0, r0, a1
+   f:	fd 4d 0f                      	msblo	r0, r15, a1
+  12:	fd 4d f0                      	msblo	r15, r0, a1
+  15:	fd 4d ff                      	msblo	r15, r15, a1
diff --git a/gas/testsuite/gas/rx/msblo.sm b/gas/testsuite/gas/rx/msblo.sm
new file mode 100644
index 0000000..e3a4736
--- /dev/null
+++ b/gas/testsuite/gas/rx/msblo.sm
@@ -0,0 +1,2 @@
+	msblo	{reg},{reg},a0
+	msblo	{reg},{reg},a1
diff --git a/gas/testsuite/gas/rx/mulhi.d b/gas/testsuite/gas/rx/mulhi.d
index 0653bb4..c1a21ba 100644
--- a/gas/testsuite/gas/rx/mulhi.d
+++ b/gas/testsuite/gas/rx/mulhi.d
@@ -6,7 +6,15 @@ dump\.o:     file format .*
 Disassembly of section \.text:
 
 00000000 <\.text>:
-   0:	fd 00 00                      	mulhi	r0, r0
-   3:	fd 00 0f                      	mulhi	r0, r15
-   6:	fd 00 f0                      	mulhi	r15, r0
-   9:	fd 00 ff                      	mulhi	r15, r15
+   0:	fd 00 00                      	mulhi	r0, r0, a0
+   3:	fd 00 0f                      	mulhi	r0, r15, a0
+   6:	fd 00 f0                      	mulhi	r15, r0, a0
+   9:	fd 00 ff                      	mulhi	r15, r15, a0
+   c:	fd 00 00                      	mulhi	r0, r0, a0
+   f:	fd 00 0f                      	mulhi	r0, r15, a0
+  12:	fd 00 f0                      	mulhi	r15, r0, a0
+  15:	fd 00 ff                      	mulhi	r15, r15, a0
+  18:	fd 08 00                      	mulhi	r0, r0, a1
+  1b:	fd 08 0f                      	mulhi	r0, r15, a1
+  1e:	fd 08 f0                      	mulhi	r15, r0, a1
+  21:	fd 08 ff                      	mulhi	r15, r15, a1
diff --git a/gas/testsuite/gas/rx/mulhi.sm b/gas/testsuite/gas/rx/mulhi.sm
index a9765a4..f71b03a 100644
--- a/gas/testsuite/gas/rx/mulhi.sm
+++ b/gas/testsuite/gas/rx/mulhi.sm
@@ -1 +1,3 @@
 	mulhi	{reg},{reg}
+	mulhi	{reg},{reg},a0
+	mulhi	{reg},{reg},a1
diff --git a/gas/testsuite/gas/rx/mullh.d b/gas/testsuite/gas/rx/mullh.d
new file mode 100644
index 0000000..057d4e4
--- /dev/null
+++ b/gas/testsuite/gas/rx/mullh.d
@@ -0,0 +1,16 @@
+#objdump: -dr
+
+dump\.o:     file format .*
+
+
+Disassembly of section \.text:
+
+00000000 <\.text>:
+   0:	fd 02 00                      	mullh	r0, r0, a0
+   3:	fd 02 0f                      	mullh	r0, r15, a0
+   6:	fd 02 f0                      	mullh	r15, r0, a0
+   9:	fd 02 ff                      	mullh	r15, r15, a0
+   c:	fd 0a 00                      	mullh	r0, r0, a1
+   f:	fd 0a 0f                      	mullh	r0, r15, a1
+  12:	fd 0a f0                      	mullh	r15, r0, a1
+  15:	fd 0a ff                      	mullh	r15, r15, a1
diff --git a/gas/testsuite/gas/rx/mullh.sm b/gas/testsuite/gas/rx/mullh.sm
new file mode 100644
index 0000000..0c7d0ed
--- /dev/null
+++ b/gas/testsuite/gas/rx/mullh.sm
@@ -0,0 +1,2 @@
+	mullh	{reg},{reg},a0
+	mullh	{reg},{reg},a1
diff --git a/gas/testsuite/gas/rx/mullo.d b/gas/testsuite/gas/rx/mullo.d
index fbf014f..9ce4c0e 100644
--- a/gas/testsuite/gas/rx/mullo.d
+++ b/gas/testsuite/gas/rx/mullo.d
@@ -6,7 +6,15 @@ dump\.o:     file format .*
 Disassembly of section \.text:
 
 00000000 <\.text>:
-   0:	fd 01 00                      	mullo	r0, r0
-   3:	fd 01 0f                      	mullo	r0, r15
-   6:	fd 01 f0                      	mullo	r15, r0
-   9:	fd 01 ff                      	mullo	r15, r15
+   0:	fd 01 00                      	mullo	r0, r0, a0
+   3:	fd 01 0f                      	mullo	r0, r15, a0
+   6:	fd 01 f0                      	mullo	r15, r0, a0
+   9:	fd 01 ff                      	mullo	r15, r15, a0
+   c:	fd 01 00                      	mullo	r0, r0, a0
+   f:	fd 01 0f                      	mullo	r0, r15, a0
+  12:	fd 01 f0                      	mullo	r15, r0, a0
+  15:	fd 01 ff                      	mullo	r15, r15, a0
+  18:	fd 09 00                      	mullo	r0, r0, a1
+  1b:	fd 09 0f                      	mullo	r0, r15, a1
+  1e:	fd 09 f0                      	mullo	r15, r0, a1
+  21:	fd 09 ff                      	mullo	r15, r15, a1
diff --git a/gas/testsuite/gas/rx/mullo.sm b/gas/testsuite/gas/rx/mullo.sm
index 56d6b8b..dc3708e 100644
--- a/gas/testsuite/gas/rx/mullo.sm
+++ b/gas/testsuite/gas/rx/mullo.sm
@@ -1 +1,3 @@
 	mullo	{reg},{reg}
+	mullo	{reg},{reg},a0
+	mullo	{reg},{reg},a1
diff --git a/gas/testsuite/gas/rx/mvfacgu.d b/gas/testsuite/gas/rx/mvfacgu.d
new file mode 100644
index 0000000..79d71e7
--- /dev/null
+++ b/gas/testsuite/gas/rx/mvfacgu.d
@@ -0,0 +1,20 @@
+#objdump: -dr
+
+dump\.o:     file format .*
+
+
+Disassembly of section \.text:
+
+00000000 <\.text>:
+   0:	fd 1f 30                      	mvfacgu	#0, a0, r0
+   3:	fd 1f 3f                      	mvfacgu	#0, a0, r15
+   6:	fd 1f 70                      	mvfacgu	#1, a0, r0
+   9:	fd 1f 7f                      	mvfacgu	#1, a0, r15
+   c:	fd 1e 30                      	mvfacgu	#2, a0, r0
+   f:	fd 1e 3f                      	mvfacgu	#2, a0, r15
+  12:	fd 1f b0                      	mvfacgu	#0, a1, r0
+  15:	fd 1f bf                      	mvfacgu	#0, a1, r15
+  18:	fd 1f f0                      	mvfacgu	#1, a1, r0
+  1b:	fd 1f ff                      	mvfacgu	#1, a1, r15
+  1e:	fd 1e b0                      	mvfacgu	#2, a1, r0
+  21:	fd 1e bf                      	mvfacgu	#2, a1, r15
diff --git a/gas/testsuite/gas/rx/mvfacgu.sm b/gas/testsuite/gas/rx/mvfacgu.sm
new file mode 100644
index 0000000..67a9fe1
--- /dev/null
+++ b/gas/testsuite/gas/rx/mvfacgu.sm
@@ -0,0 +1,6 @@
+	mvfacgu	#0,a0,{reg}
+	mvfacgu	#1,a0,{reg}
+	mvfacgu	#2,a0,{reg}
+	mvfacgu	#0,a1,{reg}
+	mvfacgu	#1,a1,{reg}
+	mvfacgu	#2,a1,{reg}
diff --git a/gas/testsuite/gas/rx/mvfachi.d b/gas/testsuite/gas/rx/mvfachi.d
index de0abf1..153c821 100644
--- a/gas/testsuite/gas/rx/mvfachi.d
+++ b/gas/testsuite/gas/rx/mvfachi.d
@@ -6,5 +6,17 @@ dump\.o:     file format .*
 Disassembly of section \.text:
 
 00000000 <\.text>:
-   0:	fd 1f 00                      	mvfachi	r0
-   3:	fd 1f 0f                      	mvfachi	r15
+   0:	fd 1f 00                      	mvfachi	#0, a0, r0
+   3:	fd 1f 0f                      	mvfachi	#0, a0, r15
+   6:	fd 1f 00                      	mvfachi	#0, a0, r0
+   9:	fd 1f 0f                      	mvfachi	#0, a0, r15
+   c:	fd 1f 40                      	mvfachi	#1, a0, r0
+   f:	fd 1f 4f                      	mvfachi	#1, a0, r15
+  12:	fd 1e 00                      	mvfachi	#2, a0, r0
+  15:	fd 1e 0f                      	mvfachi	#2, a0, r15
+  18:	fd 1f 80                      	mvfachi	#0, a1, r0
+  1b:	fd 1f 8f                      	mvfachi	#0, a1, r15
+  1e:	fd 1f c0                      	mvfachi	#1, a1, r0
+  21:	fd 1f cf                      	mvfachi	#1, a1, r15
+  24:	fd 1e 80                      	mvfachi	#2, a1, r0
+  27:	fd 1e 8f                      	mvfachi	#2, a1, r15
diff --git a/gas/testsuite/gas/rx/mvfachi.sm b/gas/testsuite/gas/rx/mvfachi.sm
index e8755d6..83d7f66 100644
--- a/gas/testsuite/gas/rx/mvfachi.sm
+++ b/gas/testsuite/gas/rx/mvfachi.sm
@@ -1 +1,7 @@
 	mvfachi	{reg}
+	mvfachi	#0,a0,{reg}
+	mvfachi	#1,a0,{reg}
+	mvfachi	#2,a0,{reg}
+	mvfachi	#0,a1,{reg}
+	mvfachi	#1,a1,{reg}
+	mvfachi	#2,a1,{reg}
diff --git a/gas/testsuite/gas/rx/mvfaclo.d b/gas/testsuite/gas/rx/mvfaclo.d
index 33df9b0..46f6349 100644
--- a/gas/testsuite/gas/rx/mvfaclo.d
+++ b/gas/testsuite/gas/rx/mvfaclo.d
@@ -6,5 +6,17 @@ dump\.o:     file format .*
 Disassembly of section \.text:
 
 00000000 <\.text>:
-   0:	fd 1f 10                      	mvfaclo	r0
-   3:	fd 1f 1f                      	mvfaclo	r15
+   0:	fd 1f 10                      	mvfaclo	#0, a0, r0
+   3:	fd 1f 1f                      	mvfaclo	#0, a0, r15
+   6:	fd 1f 10                      	mvfaclo	#0, a0, r0
+   9:	fd 1f 1f                      	mvfaclo	#0, a0, r15
+   c:	fd 1f 50                      	mvfaclo	#1, a0, r0
+   f:	fd 1f 5f                      	mvfaclo	#1, a0, r15
+  12:	fd 1e 10                      	mvfaclo	#2, a0, r0
+  15:	fd 1e 1f                      	mvfaclo	#2, a0, r15
+  18:	fd 1f 90                      	mvfaclo	#0, a1, r0
+  1b:	fd 1f 9f                      	mvfaclo	#0, a1, r15
+  1e:	fd 1f d0                      	mvfaclo	#1, a1, r0
+  21:	fd 1f df                      	mvfaclo	#1, a1, r15
+  24:	fd 1e 90                      	mvfaclo	#2, a1, r0
+  27:	fd 1e 9f                      	mvfaclo	#2, a1, r15
diff --git a/gas/testsuite/gas/rx/mvfaclo.sm b/gas/testsuite/gas/rx/mvfaclo.sm
index b9080e4..2e9b106 100644
--- a/gas/testsuite/gas/rx/mvfaclo.sm
+++ b/gas/testsuite/gas/rx/mvfaclo.sm
@@ -1 +1,7 @@
 	mvfaclo	{reg}
+	mvfaclo	#0,a0,{reg}
+	mvfaclo	#1,a0,{reg}
+	mvfaclo	#2,a0,{reg}
+	mvfaclo	#0,a1,{reg}
+	mvfaclo	#1,a1,{reg}
+	mvfaclo	#2,a1,{reg}
diff --git a/gas/testsuite/gas/rx/mvfacmi.d b/gas/testsuite/gas/rx/mvfacmi.d
index c24479a..2795f3d 100644
--- a/gas/testsuite/gas/rx/mvfacmi.d
+++ b/gas/testsuite/gas/rx/mvfacmi.d
@@ -6,5 +6,17 @@ dump\.o:     file format .*
 Disassembly of section \.text:
 
 00000000 <\.text>:
-   0:	fd 1f 20                      	mvfacmi	r0
-   3:	fd 1f 2f                      	mvfacmi	r15
+   0:	fd 1f 20                      	mvfacmi	#0, a0, r0
+   3:	fd 1f 2f                      	mvfacmi	#0, a0, r15
+   6:	fd 1f 20                      	mvfacmi	#0, a0, r0
+   9:	fd 1f 2f                      	mvfacmi	#0, a0, r15
+   c:	fd 1f 60                      	mvfacmi	#1, a0, r0
+   f:	fd 1f 6f                      	mvfacmi	#1, a0, r15
+  12:	fd 1e 20                      	mvfacmi	#2, a0, r0
+  15:	fd 1e 2f                      	mvfacmi	#2, a0, r15
+  18:	fd 1f a0                      	mvfacmi	#0, a1, r0
+  1b:	fd 1f af                      	mvfacmi	#0, a1, r15
+  1e:	fd 1f e0                      	mvfacmi	#1, a1, r0
+  21:	fd 1f ef                      	mvfacmi	#1, a1, r15
+  24:	fd 1e a0                      	mvfacmi	#2, a1, r0
+  27:	fd 1e af                      	mvfacmi	#2, a1, r15
diff --git a/gas/testsuite/gas/rx/mvfacmi.sm b/gas/testsuite/gas/rx/mvfacmi.sm
index 400f125..cdc3402 100644
--- a/gas/testsuite/gas/rx/mvfacmi.sm
+++ b/gas/testsuite/gas/rx/mvfacmi.sm
@@ -1 +1,7 @@
 	mvfacmi	{reg}
+	mvfacmi	#0,a0,{reg}
+	mvfacmi	#1,a0,{reg}
+	mvfacmi	#2,a0,{reg}
+	mvfacmi	#0,a1,{reg}
+	mvfacmi	#1,a1,{reg}
+	mvfacmi	#2,a1,{reg}
diff --git a/gas/testsuite/gas/rx/mvfc.d b/gas/testsuite/gas/rx/mvfc.d
index 7f6ca64..e89db68 100644
--- a/gas/testsuite/gas/rx/mvfc.d
+++ b/gas/testsuite/gas/rx/mvfc.d
@@ -22,4 +22,6 @@ Disassembly of section \.text:
   27:	fd 6a 9f                      	mvfc	bpc, r15
   2a:	fd 6a b0                      	mvfc	fintv, r0
   2d:	fd 6a bf                      	mvfc	fintv, r15
+  30:	fd 6a d0                      	mvfc	extb, r0
+  33:	fd 6a df                      	mvfc	extb, r15
 
diff --git a/gas/testsuite/gas/rx/mvtacgu.d b/gas/testsuite/gas/rx/mvtacgu.d
new file mode 100644
index 0000000..96fe2ce
--- /dev/null
+++ b/gas/testsuite/gas/rx/mvtacgu.d
@@ -0,0 +1,12 @@
+#objdump: -dr
+
+dump\.o:     file format .*
+
+
+Disassembly of section \.text:
+
+00000000 <\.text>:
+   0:	fd 17 30                      	mvtacgu	r0, a0
+   3:	fd 17 3f                      	mvtacgu	r15, a0
+   6:	fd 17 b0                      	mvtacgu	r0, a1
+   9:	fd 17 bf                      	mvtacgu	r15, a1
diff --git a/gas/testsuite/gas/rx/mvtacgu.sm b/gas/testsuite/gas/rx/mvtacgu.sm
new file mode 100644
index 0000000..ff4568d
--- /dev/null
+++ b/gas/testsuite/gas/rx/mvtacgu.sm
@@ -0,0 +1,2 @@
+	mvtacgu	{reg},a0
+	mvtacgu	{reg},a1
diff --git a/gas/testsuite/gas/rx/mvtachi.d b/gas/testsuite/gas/rx/mvtachi.d
index c9f02ee..31f4a5a 100644
--- a/gas/testsuite/gas/rx/mvtachi.d
+++ b/gas/testsuite/gas/rx/mvtachi.d
@@ -6,5 +6,9 @@ dump\.o:     file format .*
 Disassembly of section \.text:
 
 00000000 <\.text>:
-   0:	fd 17 00                      	mvtachi	r0
-   3:	fd 17 0f                      	mvtachi	r15
+   0:	fd 17 00                      	mvtachi	r0, a0
+   3:	fd 17 0f                      	mvtachi	r15, a0
+   6:	fd 17 00                      	mvtachi	r0, a0
+   9:	fd 17 0f                      	mvtachi	r15, a0
+   c:	fd 17 80                      	mvtachi	r0, a1
+   f:	fd 17 8f                      	mvtachi	r15, a1
diff --git a/gas/testsuite/gas/rx/mvtachi.sm b/gas/testsuite/gas/rx/mvtachi.sm
index 53dad05..9f7c204 100644
--- a/gas/testsuite/gas/rx/mvtachi.sm
+++ b/gas/testsuite/gas/rx/mvtachi.sm
@@ -1 +1,3 @@
 	mvtachi	{reg}
+	mvtachi	{reg},a0
+	mvtachi	{reg},a1
diff --git a/gas/testsuite/gas/rx/mvtaclo.d b/gas/testsuite/gas/rx/mvtaclo.d
index 09c7ca6..706fc29 100644
--- a/gas/testsuite/gas/rx/mvtaclo.d
+++ b/gas/testsuite/gas/rx/mvtaclo.d
@@ -6,5 +6,9 @@ dump\.o:     file format .*
 Disassembly of section \.text:
 
 00000000 <\.text>:
-   0:	fd 17 10                      	mvtaclo	r0
-   3:	fd 17 1f                      	mvtaclo	r15
+   0:	fd 17 10                      	mvtaclo	r0, a0
+   3:	fd 17 1f                      	mvtaclo	r15, a0
+   6:	fd 17 10                      	mvtaclo	r0, a0
+   9:	fd 17 1f                      	mvtaclo	r15, a0
+   c:	fd 17 90                      	mvtaclo	r0, a1
+   f:	fd 17 9f                      	mvtaclo	r15, a1
diff --git a/gas/testsuite/gas/rx/mvtaclo.sm b/gas/testsuite/gas/rx/mvtaclo.sm
index 840bd88..fc24918 100644
--- a/gas/testsuite/gas/rx/mvtaclo.sm
+++ b/gas/testsuite/gas/rx/mvtaclo.sm
@@ -1 +1,3 @@
 	mvtaclo	{reg}
+	mvtaclo	{reg},a0
+	mvtaclo	{reg},a1
diff --git a/gas/testsuite/gas/rx/mvtc.d b/gas/testsuite/gas/rx/mvtc.d
index 1deb67e..33c1bd2 100644
--- a/gas/testsuite/gas/rx/mvtc.d
+++ b/gas/testsuite/gas/rx/mvtc.d
@@ -14,14 +14,16 @@ Disassembly of section \.text:
   14:	fd 77 08 80                   	mvtc	#-128, bpsw
   18:	fd 77 09 80                   	mvtc	#-128, bpc
   1c:	fd 77 0b 80                   	mvtc	#-128, fintv
-  20:	fd 77 00 7f                   	mvtc	#127, psw
-  24:	fd 77 03 7f                   	mvtc	#127, fpsw
-  28:	fd 77 02 7f                   	mvtc	#127, usp
-  2c:	fd 77 0a 7f                   	mvtc	#127, isp
-  30:	fd 77 0c 7f                   	mvtc	#127, intb
-  34:	fd 77 08 7f                   	mvtc	#127, bpsw
-  38:	fd 77 09 7f                   	mvtc	#127, bpc
-  3c:	fd 77 0b 7f                   	mvtc	#127, fintv
+  20:	fd 77 0d 80                   	mvtc	#-128, extb
+  24:	fd 77 00 7f                   	mvtc	#127, psw
+  28:	fd 77 03 7f                   	mvtc	#127, fpsw
+  2c:	fd 77 02 7f                   	mvtc	#127, usp
+  30:	fd 77 0a 7f                   	mvtc	#127, isp
+  34:	fd 77 0c 7f                   	mvtc	#127, intb
+  38:	fd 77 08 7f                   	mvtc	#127, bpsw
+  3c:	fd 77 09 7f                   	mvtc	#127, bpc
+  40:	fd 77 0b 7f                   	mvtc	#127, fintv
+  44:	fd 77 0d 7f                   	mvtc	#127, extb
   ..:	fd 7b 00 00 80                	mvtc	#0xffff8000, psw
   ..:	fd 7b 03 00 80                	mvtc	#0xffff8000, fpsw
   ..:	fd 7b 02 00 80                	mvtc	#0xffff8000, usp
@@ -30,6 +32,7 @@ Disassembly of section \.text:
   ..:	fd 7b 08 00 80                	mvtc	#0xffff8000, bpsw
   ..:	fd 7b 09 00 80                	mvtc	#0xffff8000, bpc
   ..:	fd 7b 0b 00 80                	mvtc	#0xffff8000, fintv
+  ..:	fd 7b 0d 00 80                	mvtc	#0xffff8000, extb
   ..:	fd 7f 00 00 80 00             	mvtc	#0x8000, psw
   ..:	fd 7f 03 00 80 00             	mvtc	#0x8000, fpsw
   ..:	fd 7f 02 00 80 00             	mvtc	#0x8000, usp
@@ -38,6 +41,7 @@ Disassembly of section \.text:
   ..:	fd 7f 08 00 80 00             	mvtc	#0x8000, bpsw
   ..:	fd 7f 09 00 80 00             	mvtc	#0x8000, bpc
   ..:	fd 7f 0b 00 80 00             	mvtc	#0x8000, fintv
+  ..:	fd 7f 0d 00 80 00             	mvtc	#0x8000, extb
   ..:	fd 7f 00 00 00 80             	mvtc	#0xff800000, psw
   ..:	fd 7f 03 00 00 80             	mvtc	#0xff800000, fpsw
   ..:	fd 7f 02 00 00 80             	mvtc	#0xff800000, usp
@@ -46,14 +50,16 @@ Disassembly of section \.text:
   ..:	fd 7f 08 00 00 80             	mvtc	#0xff800000, bpsw
   ..:	fd 7f 09 00 00 80             	mvtc	#0xff800000, bpc
   ..:	fd 7f 0b 00 00 80             	mvtc	#0xff800000, fintv
+  ..:	fd 7f 0d 00 00 80             	mvtc	#0xff800000, extb
   ..:	fd 7f 00 ff ff 7f             	mvtc	#0x7fffff, psw
   ..:	fd 7f 03 ff ff 7f             	mvtc	#0x7fffff, fpsw
   ..:	fd 7f 02 ff ff 7f             	mvtc	#0x7fffff, usp
   ..:	fd 7f 0a ff ff 7f             	mvtc	#0x7fffff, isp
   ..:	fd 7f 0c ff ff 7f             	mvtc	#0x7fffff, intb
-  ..:	fd 7f 08 ff ff 7f             	mvtc	#0x7fffff, bpsw
+ ...:	fd 7f 08 ff ff 7f             	mvtc	#0x7fffff, bpsw
  ...:	fd 7f 09 ff ff 7f             	mvtc	#0x7fffff, bpc
  ...:	fd 7f 0b ff ff 7f             	mvtc	#0x7fffff, fintv
+ ...:	fd 7f 0d ff ff 7f             	mvtc	#0x7fffff, extb
  ...:	fd 73 00 00 00 00 80          	mvtc	#0x80000000, psw
  ...:	fd 73 03 00 00 00 80          	mvtc	#0x80000000, fpsw
  ...:	fd 73 02 00 00 00 80          	mvtc	#0x80000000, usp
@@ -62,6 +68,7 @@ Disassembly of section \.text:
  ...:	fd 73 08 00 00 00 80          	mvtc	#0x80000000, bpsw
  ...:	fd 73 09 00 00 00 80          	mvtc	#0x80000000, bpc
  ...:	fd 73 0b 00 00 00 80          	mvtc	#0x80000000, fintv
+ ...:	fd 73 0d 00 00 00 80          	mvtc	#0x80000000, extb
  ...:	fd 73 00 ff ff ff 7f          	mvtc	#0x7fffffff, psw
  ...:	fd 73 03 ff ff ff 7f          	mvtc	#0x7fffffff, fpsw
  ...:	fd 73 02 ff ff ff 7f          	mvtc	#0x7fffffff, usp
@@ -70,6 +77,7 @@ Disassembly of section \.text:
  ...:	fd 73 08 ff ff ff 7f          	mvtc	#0x7fffffff, bpsw
  ...:	fd 73 09 ff ff ff 7f          	mvtc	#0x7fffffff, bpc
  ...:	fd 73 0b ff ff ff 7f          	mvtc	#0x7fffffff, fintv
+ ...:	fd 73 0d ff ff ff 7f          	mvtc	#0x7fffffff, extb
  ...:	fd 68 00                      	mvtc	r0, psw
  ...:	fd 68 03                      	mvtc	r0, fpsw
  ...:	fd 68 02                      	mvtc	r0, usp
@@ -78,6 +86,7 @@ Disassembly of section \.text:
  ...:	fd 68 08                      	mvtc	r0, bpsw
  ...:	fd 68 09                      	mvtc	r0, bpc
  ...:	fd 68 0b                      	mvtc	r0, fintv
+ ...:	fd 68 0d                      	mvtc	r0, extb
  ...:	fd 68 f0                      	mvtc	r15, psw
  ...:	fd 68 f3                      	mvtc	r15, fpsw
  ...:	fd 68 f2                      	mvtc	r15, usp
@@ -86,4 +95,5 @@ Disassembly of section \.text:
  ...:	fd 68 f8                      	mvtc	r15, bpsw
  ...:	fd 68 f9                      	mvtc	r15, bpc
  ...:	fd 68 fb                      	mvtc	r15, fintv
+ ...:	fd 68 fd                      	mvtc	r15, extb
 
diff --git a/gas/testsuite/gas/rx/popc.d b/gas/testsuite/gas/rx/popc.d
index da1b248..cddbe05 100644
--- a/gas/testsuite/gas/rx/popc.d
+++ b/gas/testsuite/gas/rx/popc.d
@@ -14,4 +14,5 @@ Disassembly of section \.text:
    a:	7e e8                         	popc	bpsw
    c:	7e e9                         	popc	bpc
    e:	7e eb                         	popc	fintv
+  10:	7e ed                         	popc	extb
 
diff --git a/gas/testsuite/gas/rx/pushc.d b/gas/testsuite/gas/rx/pushc.d
index 307a7a0..2a93da2 100644
--- a/gas/testsuite/gas/rx/pushc.d
+++ b/gas/testsuite/gas/rx/pushc.d
@@ -14,4 +14,5 @@ Disassembly of section \.text:
    a:	7e c8                         	pushc	bpsw
    c:	7e c9                         	pushc	bpc
    e:	7e cb                         	pushc	fintv
+  10:	7e cd                         	pushc	extb
 
diff --git a/gas/testsuite/gas/rx/racl.d b/gas/testsuite/gas/rx/racl.d
new file mode 100644
index 0000000..ae784bd
--- /dev/null
+++ b/gas/testsuite/gas/rx/racl.d
@@ -0,0 +1,12 @@
+#objdump: -dr
+
+dump\.o:     file format .*
+
+
+Disassembly of section \.text:
+
+00000000 <\.text>:
+   0:	fd 19 00                      	racl	#1, a0
+   3:	fd 19 10                      	racl	#2, a0
+   6:	fd 19 80                      	racl	#1, a1
+   9:	fd 19 90                      	racl	#2, a1
diff --git a/gas/testsuite/gas/rx/racl.sm b/gas/testsuite/gas/rx/racl.sm
new file mode 100644
index 0000000..96c6cb5
--- /dev/null
+++ b/gas/testsuite/gas/rx/racl.sm
@@ -0,0 +1,4 @@
+	racl	#1,a0
+	racl	#2,a0
+	racl	#1,a1
+	racl	#2,a1
diff --git a/gas/testsuite/gas/rx/racw.d b/gas/testsuite/gas/rx/racw.d
index 6735254..f6a60c6 100644
--- a/gas/testsuite/gas/rx/racw.d
+++ b/gas/testsuite/gas/rx/racw.d
@@ -6,5 +6,9 @@ dump\.o:     file format .*
 Disassembly of section \.text:
 
 00000000 <\.text>:
-   0:	fd 18 00                      	racw	#1
-   3:	fd 18 10                      	racw	#2
+   0:	fd 18 00                      	racw	#1, a0
+   3:	fd 18 10                      	racw	#2, a0
+   6:	fd 18 00                      	racw	#1, a0
+   9:	fd 18 10                      	racw	#2, a0
+   c:	fd 18 80                      	racw	#1, a1
+   f:	fd 18 90                      	racw	#2, a1
diff --git a/gas/testsuite/gas/rx/racw.sm b/gas/testsuite/gas/rx/racw.sm
index f7dfd5b..26a726c 100644
--- a/gas/testsuite/gas/rx/racw.sm
+++ b/gas/testsuite/gas/rx/racw.sm
@@ -1,2 +1,6 @@
 	racw	#1
 	racw	#2
+	racw	#1,a0
+	racw	#2,a0
+	racw	#1,a1
+	racw	#2,a1
diff --git a/gas/testsuite/gas/rx/rdacl.d b/gas/testsuite/gas/rx/rdacl.d
new file mode 100644
index 0000000..1e7e49d
--- /dev/null
+++ b/gas/testsuite/gas/rx/rdacl.d
@@ -0,0 +1,12 @@
+#objdump: -dr
+
+dump\.o:     file format .*
+
+
+Disassembly of section \.text:
+
+00000000 <\.text>:
+   0:	fd 19 40                      	rdacl	#1, a0
+   3:	fd 19 50                      	rdacl	#2, a0
+   6:	fd 19 c0                      	rdacl	#1, a1
+   9:	fd 19 d0                      	rdacl	#2, a1
diff --git a/gas/testsuite/gas/rx/rdacl.sm b/gas/testsuite/gas/rx/rdacl.sm
new file mode 100644
index 0000000..965a206
--- /dev/null
+++ b/gas/testsuite/gas/rx/rdacl.sm
@@ -0,0 +1,4 @@
+	rdacl	#1,a0
+	rdacl	#2,a0
+	rdacl	#1,a1
+	rdacl	#2,a1
diff --git a/gas/testsuite/gas/rx/rdacw.d b/gas/testsuite/gas/rx/rdacw.d
new file mode 100644
index 0000000..8ec7bd4
--- /dev/null
+++ b/gas/testsuite/gas/rx/rdacw.d
@@ -0,0 +1,12 @@
+#objdump: -dr
+
+dump\.o:     file format .*
+
+
+Disassembly of section \.text:
+
+00000000 <\.text>:
+   0:	fd 18 40                      	rdacw	#1, a0
+   3:	fd 18 50                      	rdacw	#2, a0
+   6:	fd 18 c0                      	rdacw	#1, a1
+   9:	fd 18 d0                      	rdacw	#2, a1
diff --git a/gas/testsuite/gas/rx/rdacw.sm b/gas/testsuite/gas/rx/rdacw.sm
new file mode 100644
index 0000000..665f760
--- /dev/null
+++ b/gas/testsuite/gas/rx/rdacw.sm
@@ -0,0 +1,4 @@
+	rdacw	#1,a0
+	rdacw	#2,a0
+	rdacw	#1,a1
+	rdacw	#2,a1
diff --git a/gas/testsuite/gas/rx/rx.exp b/gas/testsuite/gas/rx/rx.exp
index 6fa5ca5..d78768a 100644
--- a/gas/testsuite/gas/rx/rx.exp
+++ b/gas/testsuite/gas/rx/rx.exp
@@ -21,6 +21,9 @@ if { ! [istarget rx-*-*] } {
     return
 }
 
+global ASFLAGS
+set ASFLAGS "--mcpu=rxv2"
+
 foreach test [lsort [glob $srcdir/$subdir/*.sm]] {
     regexp ".*/(.*)\.sm" $test rxjunk rxbase
     exec "$srcdir/$subdir/explode" "-I" "$srcdir/$subdir" "$test" "$srcdir/$subdir/$rxbase.s"
diff --git a/gas/testsuite/gas/rx/stnz.d b/gas/testsuite/gas/rx/stnz.d
index 8dfb0c3..ff2f857 100644
--- a/gas/testsuite/gas/rx/stnz.d
+++ b/gas/testsuite/gas/rx/stnz.d
@@ -22,3 +22,7 @@ Disassembly of section \.text:
   45:	fd 70 ff 00 00 00 80          	stnz	#0x80000000, r15
   4c:	fd 70 f0 ff ff ff 7f          	stnz	#0x7fffffff, r0
   53:	fd 70 ff ff ff ff 7f          	stnz	#0x7fffffff, r15
+  5a:	fc 4f 00                      	stnz	r0, r0
+  5d:	fc 4f 0f                      	stnz	r0, r15
+  60:	fc 4f f0                      	stnz	r15, r0
+  63:	fc 4f ff                      	stnz	r15, r15
diff --git a/gas/testsuite/gas/rx/stnz.sm b/gas/testsuite/gas/rx/stnz.sm
index 853f1ce..903a32e 100644
--- a/gas/testsuite/gas/rx/stnz.sm
+++ b/gas/testsuite/gas/rx/stnz.sm
@@ -1 +1,2 @@
 	stnz	#{imm},{reg}
+	stnz	{reg},{reg}
diff --git a/gas/testsuite/gas/rx/stz.d b/gas/testsuite/gas/rx/stz.d
index f9c6b77..d3426dc 100644
--- a/gas/testsuite/gas/rx/stz.d
+++ b/gas/testsuite/gas/rx/stz.d
@@ -22,3 +22,7 @@ Disassembly of section \.text:
   45:	fd 70 ef 00 00 00 80          	stz	#0x80000000, r15
   4c:	fd 70 e0 ff ff ff 7f          	stz	#0x7fffffff, r0
   53:	fd 70 ef ff ff ff 7f          	stz	#0x7fffffff, r15
+  5a:	fc 4b 00                      	stz	r0, r0
+  5d:	fc 4b 0f                      	stz	r0, r15
+  60:	fc 4b f0                      	stz	r15, r0
+  63:	fc 4b ff                      	stz	r15, r15
diff --git a/gas/testsuite/gas/rx/stz.sm b/gas/testsuite/gas/rx/stz.sm
index e366213..34b79fe 100644
--- a/gas/testsuite/gas/rx/stz.sm
+++ b/gas/testsuite/gas/rx/stz.sm
@@ -1 +1,2 @@
 	stz	#{imm},{reg}
+	stz	{reg},{reg}
diff --git a/gas/testsuite/gas/rx/utof.d b/gas/testsuite/gas/rx/utof.d
new file mode 100644
index 0000000..5059ad1
--- /dev/null
+++ b/gas/testsuite/gas/rx/utof.d
@@ -0,0 +1,72 @@
+#objdump: -dr
+
+dump\.o:     file format .*
+
+
+Disassembly of section \.text:
+
+00000000 <\.text>:
+   0:	fc 57 00                      	utof	r0, r0
+   3:	fc 57 0f                      	utof	r0, r15
+   6:	fc 57 f0                      	utof	r15, r0
+   9:	fc 57 ff                      	utof	r15, r15
+   c:	fc 54 00                      	utof	\[r0\]\.ub, r0
+   f:	fc 54 0f                      	utof	\[r0\]\.ub, r15
+  12:	06 20 15 00                   	utof	\[r0\]\.b, r0
+  16:	06 20 15 0f                   	utof	\[r0\]\.b, r15
+  1a:	06 e0 15 00                   	utof	\[r0\]\.uw, r0
+  1e:	06 e0 15 0f                   	utof	\[r0\]\.uw, r15
+  22:	06 60 15 00                   	utof	\[r0\]\.w, r0
+  26:	06 60 15 0f                   	utof	\[r0\]\.w, r15
+  2a:	06 a0 15 00                   	utof	\[r0\]\.l, r0
+  2e:	06 a0 15 0f                   	utof	\[r0\]\.l, r15
+  32:	fc 54 f0                      	utof	\[r15\]\.ub, r0
+  35:	fc 54 ff                      	utof	\[r15\]\.ub, r15
+  38:	06 20 15 f0                   	utof	\[r15\]\.b, r0
+  3c:	06 20 15 ff                   	utof	\[r15\]\.b, r15
+  40:	06 e0 15 f0                   	utof	\[r15\]\.uw, r0
+  44:	06 e0 15 ff                   	utof	\[r15\]\.uw, r15
+  48:	06 60 15 f0                   	utof	\[r15\]\.w, r0
+  4c:	06 60 15 ff                   	utof	\[r15\]\.w, r15
+  50:	06 a0 15 f0                   	utof	\[r15\]\.l, r0
+  54:	06 a0 15 ff                   	utof	\[r15\]\.l, r15
+  58:	fc 55 00 fc                   	utof	252\[r0\]\.ub, r0
+  5c:	fc 55 0f fc                   	utof	252\[r0\]\.ub, r15
+  60:	06 21 15 00 fc                	utof	252\[r0\]\.b, r0
+  65:	06 21 15 0f fc                	utof	252\[r0\]\.b, r15
+  6a:	06 e1 15 00 7e                	utof	252\[r0\]\.uw, r0
+  6f:	06 e1 15 0f 7e                	utof	252\[r0\]\.uw, r15
+  74:	06 61 15 00 7e                	utof	252\[r0\]\.w, r0
+  79:	06 61 15 0f 7e                	utof	252\[r0\]\.w, r15
+  7e:	06 a1 15 00 3f                	utof	252\[r0\]\.l, r0
+  83:	06 a1 15 0f 3f                	utof	252\[r0\]\.l, r15
+  88:	fc 55 f0 fc                   	utof	252\[r15\]\.ub, r0
+  8c:	fc 55 ff fc                   	utof	252\[r15\]\.ub, r15
+  90:	06 21 15 f0 fc                	utof	252\[r15\]\.b, r0
+  95:	06 21 15 ff fc                	utof	252\[r15\]\.b, r15
+  9a:	06 e1 15 f0 7e                	utof	252\[r15\]\.uw, r0
+  9f:	06 e1 15 ff 7e                	utof	252\[r15\]\.uw, r15
+  a4:	06 61 15 f0 7e                	utof	252\[r15\]\.w, r0
+  a9:	06 61 15 ff 7e                	utof	252\[r15\]\.w, r15
+  ae:	06 a1 15 f0 3f                	utof	252\[r15\]\.l, r0
+  b3:	06 a1 15 ff 3f                	utof	252\[r15\]\.l, r15
+  b8:	fc 56 00 fc ff                	utof	65532\[r0\]\.ub, r0
+  bd:	fc 56 0f fc ff                	utof	65532\[r0\]\.ub, r15
+  c2:	06 22 15 00 fc ff             	utof	65532\[r0\]\.b, r0
+  c8:	06 22 15 0f fc ff             	utof	65532\[r0\]\.b, r15
+  ce:	06 e2 15 00 fe 7f             	utof	65532\[r0\]\.uw, r0
+  d4:	06 e2 15 0f fe 7f             	utof	65532\[r0\]\.uw, r15
+  da:	06 62 15 00 fe 7f             	utof	65532\[r0\]\.w, r0
+  e0:	06 62 15 0f fe 7f             	utof	65532\[r0\]\.w, r15
+  e6:	06 a2 15 00 ff 3f             	utof	65532\[r0\]\.l, r0
+  ec:	06 a2 15 0f ff 3f             	utof	65532\[r0\]\.l, r15
+  f2:	fc 56 f0 fc ff                	utof	65532\[r15\]\.ub, r0
+  f7:	fc 56 ff fc ff                	utof	65532\[r15\]\.ub, r15
+  fc:	06 22 15 f0 fc ff             	utof	65532\[r15\]\.b, r0
+ 102:	06 22 15 ff fc ff             	utof	65532\[r15\]\.b, r15
+ 108:	06 e2 15 f0 fe 7f             	utof	65532\[r15\]\.uw, r0
+ 10e:	06 e2 15 ff fe 7f             	utof	65532\[r15\]\.uw, r15
+ 114:	06 62 15 f0 fe 7f             	utof	65532\[r15\]\.w, r0
+ 11a:	06 62 15 ff fe 7f             	utof	65532\[r15\]\.w, r15
+ 120:	06 a2 15 f0 ff 3f             	utof	65532\[r15\]\.l, r0
+ 126:	06 a2 15 ff ff 3f             	utof	65532\[r15\]\.l, r15
diff --git a/gas/testsuite/gas/rx/utof.sm b/gas/testsuite/gas/rx/utof.sm
new file mode 100644
index 0000000..8a11bac
--- /dev/null
+++ b/gas/testsuite/gas/rx/utof.sm
@@ -0,0 +1,2 @@
+	utof	{reg},{reg}
+	utof	{memx},{reg}

-- 
Yoshinori Sato
<ysato@users.sourceforge.jp>


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]