* gas/iq2000: New testsuite.
authorStan Cox <scox@redhat.com>
Fri, 3 Jan 2003 21:38:50 +0000 (21:38 +0000)
committerStan Cox <scox@redhat.com>
Fri, 3 Jan 2003 21:38:50 +0000 (21:38 +0000)
57 files changed:
gas/testsuite/ChangeLog
gas/testsuite/gas/iq2000/allinsn.d [new file with mode: 0644]
gas/testsuite/gas/iq2000/allinsn.exp [new file with mode: 0644]
gas/testsuite/gas/iq2000/allinsn.s [new file with mode: 0644]
gas/testsuite/gas/iq2000/hazard0.s [new file with mode: 0644]
gas/testsuite/gas/iq2000/hazard1.s [new file with mode: 0644]
gas/testsuite/gas/iq2000/hazard2.s [new file with mode: 0644]
gas/testsuite/gas/iq2000/hazard3.s [new file with mode: 0644]
gas/testsuite/gas/iq2000/hazard4.s [new file with mode: 0644]
gas/testsuite/gas/iq2000/hazard5.s [new file with mode: 0644]
gas/testsuite/gas/iq2000/load-hazards.exp [new file with mode: 0644]
gas/testsuite/gas/iq2000/nohazard.s [new file with mode: 0644]
gas/testsuite/gas/iq2000/noyield.s [new file with mode: 0644]
gas/testsuite/gas/iq2000/odd-ldw.exp [new file with mode: 0644]
gas/testsuite/gas/iq2000/odd-sdw.exp [new file with mode: 0644]
gas/testsuite/gas/iq2000/oddldw.s [new file with mode: 0644]
gas/testsuite/gas/iq2000/oddsdw.s [new file with mode: 0644]
gas/testsuite/gas/iq2000/q10allinsn.d [new file with mode: 0644]
gas/testsuite/gas/iq2000/q10allinsn.s [new file with mode: 0644]
gas/testsuite/gas/iq2000/q10hazard3.s [new file with mode: 0644]
gas/testsuite/gas/iq2000/q10hazard4.s [new file with mode: 0644]
gas/testsuite/gas/iq2000/q10hazard5.s [new file with mode: 0644]
gas/testsuite/gas/iq2000/q10load-hazards.exp [new file with mode: 0644]
gas/testsuite/gas/iq2000/q10nohazard.s [new file with mode: 0644]
gas/testsuite/gas/iq2000/q10noyield.s [new file with mode: 0644]
gas/testsuite/gas/iq2000/q10test0.d [new file with mode: 0644]
gas/testsuite/gas/iq2000/q10test0.s [new file with mode: 0644]
gas/testsuite/gas/iq2000/q10test1.d [new file with mode: 0644]
gas/testsuite/gas/iq2000/q10test1.s [new file with mode: 0644]
gas/testsuite/gas/iq2000/q10test10.d [new file with mode: 0644]
gas/testsuite/gas/iq2000/q10test10.s [new file with mode: 0644]
gas/testsuite/gas/iq2000/q10test11.d [new file with mode: 0644]
gas/testsuite/gas/iq2000/q10test11.s [new file with mode: 0644]
gas/testsuite/gas/iq2000/q10test12.d [new file with mode: 0644]
gas/testsuite/gas/iq2000/q10test12.s [new file with mode: 0644]
gas/testsuite/gas/iq2000/q10test2.d [new file with mode: 0644]
gas/testsuite/gas/iq2000/q10test2.s [new file with mode: 0644]
gas/testsuite/gas/iq2000/q10test3.d [new file with mode: 0644]
gas/testsuite/gas/iq2000/q10test3.s [new file with mode: 0644]
gas/testsuite/gas/iq2000/q10test4.d [new file with mode: 0644]
gas/testsuite/gas/iq2000/q10test4.s [new file with mode: 0644]
gas/testsuite/gas/iq2000/q10test5.d [new file with mode: 0644]
gas/testsuite/gas/iq2000/q10test5.s [new file with mode: 0644]
gas/testsuite/gas/iq2000/q10test6.d [new file with mode: 0644]
gas/testsuite/gas/iq2000/q10test6.s [new file with mode: 0644]
gas/testsuite/gas/iq2000/q10test7.d [new file with mode: 0644]
gas/testsuite/gas/iq2000/q10test7.s [new file with mode: 0644]
gas/testsuite/gas/iq2000/q10test8.d [new file with mode: 0644]
gas/testsuite/gas/iq2000/q10test8.s [new file with mode: 0644]
gas/testsuite/gas/iq2000/q10test9.d [new file with mode: 0644]
gas/testsuite/gas/iq2000/q10test9.s [new file with mode: 0644]
gas/testsuite/gas/iq2000/q10yield.exp [new file with mode: 0644]
gas/testsuite/gas/iq2000/test.exp [new file with mode: 0644]
gas/testsuite/gas/iq2000/yield.exp [new file with mode: 0644]
gas/testsuite/gas/iq2000/yield0.s [new file with mode: 0644]
gas/testsuite/gas/iq2000/yield1.s [new file with mode: 0644]
gas/testsuite/gas/iq2000/yield2.s [new file with mode: 0644]

index a010004..3bb9a86 100644 (file)
@@ -1,3 +1,7 @@
+2003-01-02  Jeff Johnston  <jjohnstn@redhat.com>
+
+       * gas/iq2000: New testsuite.
+
 2003-01-02  Chris Demetriou  <cgd@broadcom.com>
 
        * gas/mips/elf_arch_mips32r2.d: Fix file description comment.
diff --git a/gas/testsuite/gas/iq2000/allinsn.d b/gas/testsuite/gas/iq2000/allinsn.d
new file mode 100644 (file)
index 0000000..c7178cc
--- /dev/null
@@ -0,0 +1,442 @@
+#as:
+#objdump: -dr
+#name: allinsn
+
+.*: +file format .*
+
+Disassembly of section .text:
+
+00000000 <add>:
+   0:  00 00 00 20     add r0,r0,r0
+
+00000004 <addi>:
+   4:  20 00 ff fc     addi r0,r0,0xfffc
+
+00000008 <addiu>:
+   8:  24 00 00 04     addiu r0,r0,0x4
+
+0000000c <addu>:
+   c:  00 00 00 21     addu r0,r0,r0
+
+00000010 <ado16>:
+  10:  00 00 00 29     ado16 r0,r0,r0
+
+00000014 <and>:
+  14:  00 00 00 24     and r0,r0,r0
+
+00000018 <andi>:
+  18:  30 00 de ad     andi r0,r0,0xdead
+
+0000001c <andoi>:
+  1c:  b0 00 00 00     andoi r0,r0,0x0
+
+00000020 <andoui>:
+  20:  fc 00 00 00     andoui r0,r0,0x0
+
+00000024 <mrgb>:
+  24:  00 00 00 2d     mrgb r0,r0,r0,0x0
+
+00000028 <nor>:
+  28:  00 00 00 27     nor r0,r0,r0
+
+0000002c <or>:
+  2c:  00 00 00 25     or r0,r0,r0
+
+00000030 <ori>:
+  30:  34 00 ff ff     ori r0,r0,0xffff
+
+00000034 <orui>:
+  34:  bc 00 00 00     orui r0,r0,0x0
+
+00000038 <ram>:
+  38:  9c 00 00 00     ram r0,r0,0x0,0x0,0x0
+
+0000003c <sll>:
+  3c:  00 00 00 00     nop
+
+00000040 <sllv>:
+  40:  00 00 00 04     sllv r0,r0,r0
+
+00000044 <slmv>:
+  44:  00 00 00 01     slmv r0,r0,r0,0x0
+
+00000048 <slt>:
+  48:  00 00 00 2a     slt r0,r0,r0
+
+0000004c <slti>:
+  4c:  28 00 00 00     slti r0,r0,0x0
+
+00000050 <sltiu>:
+  50:  2c 00 00 00     sltiu r0,r0,0x0
+
+00000054 <sltu>:
+  54:  00 00 00 2b     sltu r0,r0,r0
+
+00000058 <sra>:
+  58:  00 00 00 03     sra r0,r0,0x0
+
+0000005c <srav>:
+  5c:  00 00 00 07     srav r0,r0,r0
+
+00000060 <srl>:
+  60:  00 00 00 02     srl r0,r0,0x0
+
+00000064 <srlv>:
+  64:  00 00 00 06     srlv r0,r0,r0
+
+00000068 <srmv>:
+  68:  00 00 00 05     srmv r0,r0,r0,0x0
+
+0000006c <sub>:
+  6c:  00 00 00 22     sub r0,r0,r0
+
+00000070 <subu>:
+  70:  00 00 00 23     subu r0,r0,r0
+
+00000074 <xor>:
+  74:  00 00 00 26     xor r0,r0,r0
+
+00000078 <xori>:
+  78:  38 00 00 00     xori r0,r0,0x0
+
+0000007c <bbi>:
+  7c:  70 00 ff e0     bbi r0\(0x0\),0 <add>
+
+00000080 <bbin>:
+  80:  78 00 ff df     bbin r0\(0x0\),0 <add>
+
+00000084 <bbv>:
+  84:  74 00 ff de     bbv r0,r0,0 <add>
+
+00000088 <bbvn>:
+  88:  7c 00 ff dd     bbvn r0,r0,0 <add>
+
+0000008c <beq>:
+  8c:  10 00 ff dc     beq r0,r0,0 <add>
+
+00000090 <beql>:
+  90:  50 00 ff db     beql r0,r0,0 <add>
+
+00000094 <bgez>:
+  94:  04 01 ff da     bgez r0,0 <add>
+
+00000098 <bgezal>:
+  98:  04 11 ff d9     bgezal r0,0 <add>
+
+0000009c <bgezall>:
+  9c:  04 13 ff d8     bgezall r0,0 <add>
+
+000000a0 <bgezl>:
+  a0:  04 03 ff d7     bgezl r0,0 <add>
+
+000000a4 <bgtz>:
+  a4:  1c 00 ff d6     bgtz r0,0 <add>
+
+000000a8 <bgtzl>:
+  a8:  5c 00 ff d5     bgtzl r0,0 <add>
+
+000000ac <blez>:
+  ac:  18 00 ff d4     blez r0,0 <add>
+
+000000b0 <blezl>:
+  b0:  58 00 ff d3     blezl r0,0 <add>
+
+000000b4 <bltz>:
+  b4:  04 00 ff d2     bltz r0,0 <add>
+
+000000b8 <bltzl>:
+  b8:  04 02 ff d1     bltzl r0,0 <add>
+
+000000bc <bltzal>:
+  bc:  04 10 ff d0     bltzal r0,0 <add>
+
+000000c0 <bltzall>:
+  c0:  04 12 ff cf     bltzall r0,0 <add>
+
+000000c4 <bmb>:
+  c4:  b4 00 ff ce     bmb r0,r0,0 <add>
+
+000000c8 <bmb0>:
+  c8:  60 00 ff cd     bmb0 r0,r0,0 <add>
+
+000000cc <bmb1>:
+  cc:  64 00 ff cc     bmb1 r0,r0,0 <add>
+
+000000d0 <bmb2>:
+  d0:  68 00 ff cb     bmb2 r0,r0,0 <add>
+
+000000d4 <bmb3>:
+  d4:  6c 00 ff ca     bmb3 r0,r0,0 <add>
+
+000000d8 <bne>:
+  d8:  14 00 ff c9     bne r0,r0,0 <add>
+
+000000dc <bnel>:
+  dc:  54 00 ff c8     bnel r0,r0,0 <add>
+
+000000e0 <bctxt>:
+  e0:  04 06 ff c7     bctxt r0,0 <add>
+
+000000e4 <bc0f>:
+  e4:  41 00 ff c6     bc0f 0 <add>
+
+000000e8 <bc0fl>:
+  e8:  41 02 ff c5     bc0fl 0 <add>
+
+000000ec <bc3f>:
+  ec:  4d 00 ff c4     bc3f 0 <add>
+
+000000f0 <bc3fl>:
+  f0:  4d 02 ff c3     bc3fl 0 <add>
+
+000000f4 <bc0t>:
+  f4:  41 01 ff c2     bc0t 0 <add>
+
+000000f8 <bc0tl>:
+  f8:  41 03 ff c1     bc0tl 0 <add>
+
+000000fc <bc3t>:
+  fc:  4d 01 ff c0     bc3t 0 <add>
+
+00000100 <bc3tl>:
+ 100:  4d 03 ff bf     bc3tl 0 <add>
+
+00000104 <break>:
+ 104:  00 00 00 0d     break
+
+00000108 <cfc0>:
+ 108:  40 40 00 00     cfc0 r0,r0
+
+0000010c <cfc1>:
+ 10c:  44 40 00 00     cfc1 r0,r0
+
+00000110 <cfc2>:
+ 110:  48 40 00 00     cfc2 r0,r0
+
+00000114 <cfc3>:
+ 114:  4c 40 00 00     cfc3 r0,r0
+
+00000118 <chkhdr>:
+ 118:  4d 20 00 00     chkhdr r0,r0
+
+0000011c <ctc0>:
+ 11c:  40 c0 00 00     ctc0 r0,r0
+
+00000120 <ctc1>:
+ 120:  44 c0 00 00     ctc1 r0,r0
+
+00000124 <ctc2>:
+ 124:  48 c0 00 00     ctc2 r0,r0
+
+00000128 <ctc3>:
+ 128:  4c c0 00 00     ctc3 r0,r0
+
+0000012c <jcr>:
+ 12c:  00 00 00 0a     jcr r0
+ 130:  00 00 00 00     nop
+
+00000134 <luc32>:
+ 134:  48 20 00 03     luc32 r0,r0
+
+00000138 <luc32l>:
+ 138:  48 20 00 07     luc32l r0,r0
+
+0000013c <luc64>:
+ 13c:  48 20 00 0b     luc64 r0,r0
+
+00000140 <luc64l>:
+ 140:  48 20 00 0f     luc64l r0,r0
+
+00000144 <luk>:
+ 144:  48 20 00 08     luk r0,r0
+
+00000148 <lulck>:
+ 148:  48 20 00 04     lulck r0
+
+0000014c <lum32>:
+ 14c:  48 20 00 02     lum32 r0,r0
+
+00000150 <lum32l>:
+ 150:  48 20 00 06     lum32l r0,r0
+
+00000154 <lum64>:
+ 154:  48 20 00 0a     lum64 r0,r0
+
+00000158 <lum64l>:
+ 158:  48 20 00 0e     lum64l r0,r0
+
+0000015c <lur>:
+ 15c:  48 20 00 01     lur r0,r0
+
+00000160 <lurl>:
+ 160:  48 20 00 05     lurl r0,r0
+
+00000164 <luulck>:
+ 164:  48 20 00 00     luulck r0
+
+00000168 <mfc0>:
+ 168:  40 00 00 00     mfc0 r0,r0
+
+0000016c <mfc1>:
+ 16c:  44 00 00 00     mfc1 r0,r0
+
+00000170 <mfc2>:
+ 170:  48 00 00 00     mfc2 r0,r0
+
+00000174 <mfc3>:
+ 174:  4c 00 00 00     mfc3 r0,r0
+
+00000178 <mtc0>:
+ 178:  40 80 00 00     mtc0 r0,r0
+
+0000017c <mtc1>:
+ 17c:  44 80 00 00     mtc1 r0,r0
+
+00000180 <mtc2>:
+ 180:  48 80 00 00     mtc2 r0,r0
+
+00000184 <mtc3>:
+ 184:  4c 80 00 00     mtc3 r0,r0
+
+00000188 <rb>:
+ 188:  4c 20 00 04     rb r0,r0
+
+0000018c <rbr1>:
+ 18c:  4f 00 00 00     rbr1 r0,0x0,0x0
+
+00000190 <rbr30>:
+ 190:  4f 40 00 00     rbr30 r0,0x0,0x0
+
+00000194 <rfe>:
+ 194:  42 00 00 10     rfe
+
+00000198 <rx>:
+ 198:  4c 20 00 06     rx r0,r0
+
+0000019c <rxr1>:
+ 19c:  4f 80 00 00     rxr1 r0,0x0,0x0
+
+000001a0 <rxr30>:
+ 1a0:  4f c0 00 00     rxr30 r0,0x0,0x0
+
+000001a4 <sleep>:
+ 1a4:  00 00 00 0e     sleep
+
+000001a8 <srrd>:
+ 1a8:  48 20 00 10     srrd r0
+
+000001ac <srrdl>:
+ 1ac:  48 20 00 14     srrdl r0
+
+000001b0 <srulck>:
+ 1b0:  48 20 00 16     srulck r0
+
+000001b4 <srwr>:
+ 1b4:  48 20 00 11     srwr r0,r0
+
+000001b8 <srwru>:
+ 1b8:  48 20 00 15     srwru r0,r0
+
+000001bc <syscall>:
+ 1bc:  00 00 00 0c     syscall
+
+000001c0 <trapqfl>:
+ 1c0:  4c 20 00 08     trapqfl
+
+000001c4 <trapqne>:
+ 1c4:  4c 20 00 09     trapqne
+
+000001c8 <wb>:
+ 1c8:  4c 20 00 00     wb r0,r0
+
+000001cc <wbu>:
+ 1cc:  4c 20 00 01     wbu r0,r0
+
+000001d0 <wbr1>:
+ 1d0:  4e 03 00 00     wbr1 r3,0x0,0x0
+
+000001d4 <wbr1u>:
+ 1d4:  4e 20 00 00     wbr1u r0,0x0,0x0
+
+000001d8 <wbr30>:
+ 1d8:  4e 40 00 00     wbr30 r0,0x0,0x0
+
+000001dc <wbr30u>:
+ 1dc:  4e 60 00 00     wbr30u r0,0x0,0x0
+
+000001e0 <wx>:
+ 1e0:  4c 20 00 02     wx r0,r0
+
+000001e4 <wxu>:
+ 1e4:  4c 20 00 03     wxu r0,r0
+
+000001e8 <wxr1>:
+ 1e8:  4e 80 00 00     wxr1 r0,0x0,0x0
+
+000001ec <wxr1u>:
+ 1ec:  4e a0 00 00     wxr1u r0,0x0,0x0
+
+000001f0 <wxr30>:
+ 1f0:  4e c0 00 00     wxr30 r0,0x0,0x0
+
+000001f4 <wxr30u>:
+ 1f4:  4e e0 00 00     wxr30u r0,0x0,0x0
+
+000001f8 <j>:
+ 1f8:  08 00 00 00     j 0 <add>
+                       1f8: R_IQ2000_OFFSET_16 .text
+
+000001fc <jal>:
+ 1fc:  0c 00 00 00     jal 0 <add>
+                       1fc: R_IQ2000_OFFSET_16 .text
+
+00000200 <jalr>:
+ 200:  00 00 00 09     jalr r0,r0
+
+00000204 <jr>:
+ 204:  00 00 00 08     jr r0
+
+00000208 <lb>:
+ 208:  80 00 10 24     lb r0,0x1024\(r0\)
+
+0000020c <lbu>:
+ 20c:  90 00 10 24     lbu r0,0x1024\(r0\)
+
+00000210 <ldw>:
+ 210:  c0 00 10 24     ldw r0,0x1024\(r0\)
+
+00000214 <lh>:
+ 214:  84 00 10 24     lh r0,0x1024\(r0\)
+
+00000218 <lhu>:
+ 218:  94 00 10 24     lhu r0,0x1024\(r0\)
+
+0000021c <lui>:
+ 21c:  3c 00 ff ff     lui r0,0xffff
+
+00000220 <lw>:
+ 220:  8c 00 10 24     lw r0,0x1024\(r0\)
+
+00000224 <sb>:
+ 224:  a0 00 10 24     sb r0,0x1024\(r0\)
+
+00000228 <sdw>:
+ 228:  e0 00 10 24     sdw r0,0x1024\(r0\)
+
+0000022c <sh>:
+ 22c:  a4 00 10 24     sh r0,0x1024\(r0\)
+
+00000230 <sw>:
+ 230:  ac 00 10 24     sw r0,0x1024\(r0\)
+
+00000234 <traprel>:
+ 234:  4c 20 00 0a     traprel r0
+
+00000238 <pkrl>:
+ 238:  4c 21 00 07     pkrl r0,r1
+
+0000023c <pkrlr1>:
+ 23c:  4f a0 00 00     pkrlr1 r0,0x0,0x0
+
+00000240 <pkrlr30>:
+ 240:  4f e0 00 00     pkrlr30 r0,0x0,0x0
diff --git a/gas/testsuite/gas/iq2000/allinsn.exp b/gas/testsuite/gas/iq2000/allinsn.exp
new file mode 100644 (file)
index 0000000..20354e0
--- /dev/null
@@ -0,0 +1,6 @@
+# IQ2000 assembler testsuite.
+
+if [istarget iq2000*-*-*] {
+    run_dump_test "allinsn"
+    run_dump_test "q10allinsn"
+}
diff --git a/gas/testsuite/gas/iq2000/allinsn.s b/gas/testsuite/gas/iq2000/allinsn.s
new file mode 100644 (file)
index 0000000..872dbc4
--- /dev/null
@@ -0,0 +1,582 @@
+ .data
+foodata: .word 42
+ .text
+footext:
+       .text
+       .global add
+add:
+       add %0,%0,%0
+       .text
+       .global addi
+addi:
+       addi %0,%0,-4
+       .text
+       .global addiu
+addiu:
+       addiu %0,%0,4
+       .text
+       .global addu
+addu:
+       addu %0,%0,%0
+       .text
+       .global ado16
+ado16:
+       ado16 %0,%0,%0
+       .text
+       .global and
+and:
+       and %0,%0,%0
+       .text
+       .global andi
+andi:
+       andi %0,%0,0xdead
+       .text
+       .global andoi
+andoi:
+       andoi %0,%0,0
+       .text
+       .global andoui
+andoui:
+       andoui %0,%0,0
+       .text
+       .global mrgb
+mrgb:
+       mrgb %0,%0,%0,0
+       .text
+       .global nor
+nor:
+       nor %0,%0,%0
+       .text
+       .global or
+or:
+       or %0,%0,%0
+       .text
+       .global ori
+ori:
+       ori %0,%0,-1
+       .text
+       .global orui
+orui:
+       orui %0,%0,0
+       .text
+       .global ram
+ram:
+       ram %0,%0,0,0,0
+       .text
+       .global sll
+sll:
+       sll %0,%0,0
+       .text
+       .global sllv
+sllv:
+       sllv %0,%0,%0
+       .text
+       .global slmv
+slmv:
+       slmv %0,%0,%0,0
+       .text
+       .global slt
+slt:
+       slt %0,%0,%0
+       .text
+       .global slti
+slti:
+       slti %0,%0,0
+       .text
+       .global sltiu
+sltiu:
+       sltiu %0,%0,0
+       .text
+       .global sltu
+sltu:
+       sltu %0,%0,%0
+       .text
+       .global sra
+sra:
+       sra %0,%0,0
+       .text
+       .global srav
+srav:
+       srav %0,%0,%0
+       .text
+       .global srl
+srl:
+       srl %0,%0,0
+       .text
+       .global srlv
+srlv:
+       srlv %0,%0,%0
+       .text
+       .global srmv
+srmv:
+       srmv %0,%0,%0,0
+       .text
+       .global sub
+sub:
+       sub %0,%0,%0
+       .text
+       .global subu
+subu:
+       subu %0,%0,%0
+       .text
+       .global xor
+xor:
+       xor %0,%0,%0
+       .text
+       .global xori
+xori:
+       xori %0,%0,0
+       .text
+       .global bbi
+bbi:
+       bbi %0(0),footext
+       .text
+       .global bbin
+bbin:
+       bbin %0(0),footext
+       .text
+       .global bbv
+bbv:
+       bbv %0,%0,footext
+       .text
+       .global bbvn
+bbvn:
+       bbvn %0,%0,footext
+       .text
+       .global beq
+beq:
+       beq %0,%0,footext
+       .text
+       .global beql
+beql:
+       beql %0,%0,footext
+       .text
+       .global bgez
+bgez:
+       bgez %0,footext
+       .text
+       .global bgezal
+bgezal:
+       bgezal %0,footext
+       .text
+       .global bgezall
+bgezall:
+       bgezall %0,footext
+       .text
+       .global bgezl
+bgezl:
+       bgezl %0,footext
+       .text
+       .global bgtz
+bgtz:
+       bgtz %0,footext
+       .text
+       .global bgtzl
+bgtzl:
+       bgtzl %0,footext
+       .text
+       .global blez
+blez:
+       blez %0,footext
+       .text
+       .global blezl
+blezl:
+       blezl %0,footext
+       .text
+       .global bltz
+bltz:
+       bltz %0,footext
+       .text
+       .global bltzl
+bltzl:
+       bltzl %0,footext
+       .text
+       .global bltzal
+bltzal:
+       bltzal %0,footext
+       .text
+       .global bltzall
+bltzall:
+       bltzall %0,footext
+       .text
+       .global bmb
+bmb:
+       bmb %0,%0,footext
+       .text
+       .global bmb0
+bmb0:
+       bmb0 %0,%0,footext
+       .text
+       .global bmb1
+bmb1:
+       bmb1 %0,%0,footext
+       .text
+       .global bmb2
+bmb2:
+       bmb2 %0,%0,footext
+       .text
+       .global bmb3
+bmb3:
+       bmb3 %0,%0,footext
+       .text
+       .global bne
+bne:
+       bne %0,%0,footext
+       .text
+       .global bnel
+bnel:
+       bnel %0,%0,footext
+       .text
+       .global bctxt
+bctxt:
+       bctxt %0,footext
+       .text
+       .global bc0f
+bc0f:
+       bc0f footext
+       .text
+       .global bc0fl
+bc0fl:
+       bc0fl footext
+       .text
+       .global bc3f
+bc3f:
+       bc3f footext
+       .text
+       .global bc3fl
+bc3fl:
+       bc3fl footext
+       .text
+       .global bc0t
+bc0t:
+       bc0t footext
+       .text
+       .global bc0tl
+bc0tl:
+       bc0tl footext
+       .text
+       .global bc3t
+bc3t:
+       bc3t footext
+       .text
+       .global bc3tl
+bc3tl:
+       bc3tl footext
+       .text
+       .global break
+break:
+       break
+       .text
+       .global cfc0
+cfc0:
+       cfc0 %0,%0
+       .text
+       .global cfc1
+cfc1:
+       cfc1 %0,%0
+       .text
+       .global cfc2
+cfc2:
+       cfc2 %0,%0
+       .text
+       .global cfc3
+cfc3:
+       cfc3 %0,%0
+       .text
+       .global chkhdr
+chkhdr:
+       chkhdr %0,%0
+       .text
+       .global ctc0
+ctc0:
+       ctc0 %0,%0
+       .text
+       .global ctc1
+ctc1:
+       ctc1 %0,%0
+       .text
+       .global ctc2
+ctc2:
+       ctc2 %0,%0
+       .text
+       .global ctc3
+ctc3:
+       ctc3 %0,%0
+       .text
+       .global jcr
+jcr:
+       jcr %0
+       .text
+       .global luc32
+       nop
+luc32:
+       # insert a nop here to pacify the assembler (luc32 may not follow jcr).
+       luc32 %0,%0
+       .text
+       .global luc32l
+luc32l:
+       luc32l %0,%0
+       .text
+       .global luc64
+luc64:
+       luc64 %0,%0
+       .text
+       .global luc64l
+luc64l:
+       luc64l %0,%0
+       .text
+       .global luk
+luk:
+       luk %0,%0
+       .text
+       .global lulck
+lulck:
+       lulck %0
+       .text
+       .global lum32
+lum32:
+       lum32 %0,%0
+       .text
+       .global lum32l
+lum32l:
+       lum32l %0,%0
+       .text
+       .global lum64
+lum64:
+       lum64 %0,%0
+       .text
+       .global lum64l
+lum64l:
+       lum64l %0,%0
+       .text
+       .global lur
+lur:
+       lur %0,%0
+       .text
+       .global lurl
+lurl:
+       lurl %0,%0
+       .text
+       .global luulck
+luulck:
+       luulck %0
+       .text
+       .global mfc0
+mfc0:
+       mfc0 %0,%0
+       .text
+       .global mfc1
+mfc1:
+       mfc1 %0,%0
+       .text
+       .global mfc2
+mfc2:
+       mfc2 %0,%0
+       .text
+       .global mfc3
+mfc3:
+       mfc3 %0,%0
+       .text
+       .global mtc0
+mtc0:
+       mtc0 %0,%0
+       .text
+       .global mtc1
+mtc1:
+       mtc1 %0,%0
+       .text
+       .global mtc2
+mtc2:
+       mtc2 %0,%0
+       .text
+       .global mtc3
+mtc3:
+       mtc3 %0,%0
+       .text
+       .global rb
+rb:
+       rb %0,%0
+       .text
+       .global rbr1
+rbr1:
+       rbr1 %0,0,0
+       .text
+       .global rbr30
+rbr30:
+       rbr30 %0,0,0
+       .text
+       .global rfe
+rfe:
+       rfe
+       .text
+       .global rx
+rx:
+       rx %0,%0
+       .text
+       .global rxr1
+rxr1:
+       rxr1 %0,0,0
+       .text
+       .global rxr30
+rxr30:
+       rxr30 %0,0,0
+       .text
+       .global sleep
+sleep:
+       sleep
+       .text
+       .global srrd
+srrd:
+       srrd %0
+       .text
+       .global srrdl
+srrdl:
+       srrdl %0
+       .text
+       .global srulck
+srulck:
+       srulck %0
+       .text
+       .global srwr
+srwr:
+       srwr %0,%0
+       .text
+       .global srwru
+srwru:
+       srwru %0,%0
+       .text
+       .global syscall
+syscall:
+       syscall
+       .text
+       .global trapqfl
+trapqfl:
+       trapqfl
+       .text
+       .global trapqne
+trapqne:
+       trapqne
+       .text
+       .global wb
+wb:
+       wb %0,%0
+       .text
+       .global wbu
+wbu:
+       wbu %0,%0
+       .text
+       .global wbr1
+wbr1:
+       wbr1 %3,0,0
+       .text
+       .global wbr1u
+wbr1u:
+       wbr1u %0,0,0
+       .text
+       .global wbr30
+wbr30:
+       wbr30 %0,0,0
+       .text
+       .global wbr30u
+wbr30u:
+       wbr30u %0,0,0
+       .text
+       .global wx
+wx:
+       wx %0,%0
+       .text
+       .global wxu
+wxu:
+       wxu %0,%0
+       .text
+       .global wxr1
+wxr1:
+       wxr1 %0,0,0
+       .text
+       .global wxr1u
+wxr1u:
+       wxr1u %0,0,0
+       .text
+       .global wxr30
+wxr30:
+       wxr30 %0,0,0
+       .text
+       .global wxr30u
+wxr30u:
+       wxr30u %0,0,0
+       .text
+       .global j
+j:
+       j footext
+       .text
+       .global jal
+jal:
+       jal footext
+       .text
+       .global jalr
+jalr:
+       jalr %0,%0
+       .text
+       .global jr
+jr:
+       jr %0
+       .text
+       .global lb
+lb:
+       lb %0,0x1024(%0)
+       .text
+       .global lbu
+lbu:
+       lbu %0,0x1024(%0)
+       .text
+       .global ldw
+ldw:
+       ldw %0,0x1024(%0)
+       .text
+       .global lh
+lh:
+       lh %0,0x1024(%0)
+       .text
+       .global lhu
+lhu:
+       lhu %0,0x1024(%0)
+       .text
+       .global lui
+lui:
+       lui %0,-1
+       .text
+       .global lw
+lw:
+       lw %0,0x1024(%0)
+       .text
+       .global sb
+sb:
+       sb %0,0x1024(%0)
+       .text
+       .global sdw
+sdw:
+       sdw %0,0x1024(%0)
+       .text
+       .global sh
+sh:
+       sh %0,0x1024(%0)
+       .text
+       .global sw
+sw:
+       sw %0,0x1024(%0)
+       .text
+       .global traprel
+traprel:
+       traprel %0
+       .text
+       .global pkrl
+pkrl:
+       pkrl %0,%1
+       .text
+       .global pkrlr1
+pkrlr1:
+       pkrlr1 %0,0,0
+       .text
+       .global pkrlr30
+pkrlr30:
+       pkrlr30 %0,0,0
diff --git a/gas/testsuite/gas/iq2000/hazard0.s b/gas/testsuite/gas/iq2000/hazard0.s
new file mode 100644 (file)
index 0000000..6c13af2
--- /dev/null
@@ -0,0 +1,11 @@
+# This test case includes a single case of a load hazard, whereby an
+# instruction references a register which is the target of a load.
+# The assembler must warn about this!
+
+.data
+foodata:
+       .word 42
+
+.text
+       lw %10, foodata(%1)
+       add %10, %1, %2
diff --git a/gas/testsuite/gas/iq2000/hazard1.s b/gas/testsuite/gas/iq2000/hazard1.s
new file mode 100644 (file)
index 0000000..a9cee19
--- /dev/null
@@ -0,0 +1,11 @@
+# This test case includes a single case of a load hazard, whereby an
+# instruction references a register which is the target of a load.
+# The assembler must warn about this!
+
+.data
+foodata:
+       .word 42
+
+.text
+       lw %1, foodata(%1)
+       add %0, %1, %2
diff --git a/gas/testsuite/gas/iq2000/hazard2.s b/gas/testsuite/gas/iq2000/hazard2.s
new file mode 100644 (file)
index 0000000..cb45a5b
--- /dev/null
@@ -0,0 +1,11 @@
+# This test case includes a single case of a load hazard, whereby an
+# instruction references a register which is the target of a load.
+# The assembler must warn about this!
+
+.data
+foodata:
+       .word 42
+
+.text
+       lw %2, foodata(%1)
+       add %0, %1, %2
diff --git a/gas/testsuite/gas/iq2000/hazard3.s b/gas/testsuite/gas/iq2000/hazard3.s
new file mode 100644 (file)
index 0000000..fd8eda0
--- /dev/null
@@ -0,0 +1,14 @@
+# This test case includes a single case of a load hazard, whereby an
+# instruction references a register which is the target of a load.
+# The assembler must warn about this!
+
+.data
+foodata:
+       .word 42
+
+.text
+       lw %31, foodata(%1)
+       jal footext
+
+footext:
+       nop
diff --git a/gas/testsuite/gas/iq2000/hazard4.s b/gas/testsuite/gas/iq2000/hazard4.s
new file mode 100644 (file)
index 0000000..8608114
--- /dev/null
@@ -0,0 +1,11 @@
+# This test case includes a single case of a load hazard, whereby an
+# instruction references a register which is the target of a load.
+# The assembler must warn about this!
+
+.data
+foodata:
+       .word 42
+
+.text
+       ldw %10, foodata(%12)
+       add %3, %10, %9
diff --git a/gas/testsuite/gas/iq2000/hazard5.s b/gas/testsuite/gas/iq2000/hazard5.s
new file mode 100644 (file)
index 0000000..ecbacb7
--- /dev/null
@@ -0,0 +1,11 @@
+# This test case includes a single case of a load hazard, whereby an
+# instruction references a register which is the target of a load.
+# The assembler must warn about this!
+
+.data
+foodata:
+       .word 42
+
+.text
+       ldw %8, foodata(%4)
+       add %8, %1, %9
diff --git a/gas/testsuite/gas/iq2000/load-hazards.exp b/gas/testsuite/gas/iq2000/load-hazards.exp
new file mode 100644 (file)
index 0000000..654c96a
--- /dev/null
@@ -0,0 +1,63 @@
+# Test for warnings when producing load hazards (instructions that
+# reference the target of load one stage further down the pipeline.
+# Written by Ben Elliston (bje@redhat.com)
+
+# Run GAS and check that it emits the desired warning for the test case.
+# Arguments:
+#   file -- name of the test case to assemble.
+#   testname -- a string describing the test.
+#   warnpattern -- a regular expression, suitable for use by the Tcl
+#     regexp command, to decide if the warning string was emitted by
+#     the assembler to stderr.
+
+proc iq2000_warning_test { file testname {warnpattern ""} } {
+    global comp_output
+
+    gas_run $file "" ">/dev/null"
+    verbose "output was $comp_output" 2
+
+    if {$warnpattern == ""} {
+       if {$comp_output == ""} { pass $testname } else { fail $testname }
+       return
+    }
+
+    if {[regexp "Warning: $warnpattern" $comp_output]} {
+       pass $testname
+    } else {
+       fail $testname
+    }
+}
+
+if [istarget iq2000*-*-*] {
+    foreach file [glob -nocomplain -- $srcdir/$subdir/hazard*.s] {
+       set file [file tail $file]
+       switch -- $file {
+           "hazard0.s" {
+               set warnpattern "operand references R10 of previous load"
+           }
+           "hazard1.s" {
+               set warnpattern "operand references R1 of previous load"
+           }
+           "hazard2.s" {
+               set warnpattern "operand references R2 of previous load"
+           }
+           "hazard3.s" {
+               set warnpattern "instruction implicitly accesses R31 of previous load"
+           }
+           "hazard4.s" {
+               set warnpattern "operand references R10 of previous load"
+           }
+           "hazard5.s" {
+               set warnpattern "operand references R8 of previous load"
+           }
+           default {
+               error "no expected result specified for $file"
+               return
+           }
+       }
+       iq2000_warning_test $file "assembler emits load hazard warning for $file" $warnpattern
+    }
+
+    set testname "assembler emits no warnings when there are no load hazards"
+    iq2000_warning_test nohazard.s $testname
+}
diff --git a/gas/testsuite/gas/iq2000/nohazard.s b/gas/testsuite/gas/iq2000/nohazard.s
new file mode 100644 (file)
index 0000000..fb25317
--- /dev/null
@@ -0,0 +1,20 @@
+# This test case includes a number of cases where there is no load
+# hazard between a load and the instruction which follows it in
+# the pipeline.
+
+.data
+.text
+       lw %0, 0x40(%0)
+       add %1, %2, %3
+       lh %0, 0x80(%0)
+       add %1, %2, %3
+       lb %0, 0x80(%0)
+       add %1, %2, %3
+       lw %0, 0x80(%0)
+       nop
+       add %0, %0, %0
+       ldw %0, 0x80(%3)
+       nop
+       ldw %0, 0x80(%3)
+       add %2, %3, %4
+       
\ No newline at end of file
diff --git a/gas/testsuite/gas/iq2000/noyield.s b/gas/testsuite/gas/iq2000/noyield.s
new file mode 100644 (file)
index 0000000..119622b
--- /dev/null
@@ -0,0 +1,13 @@
+# This test case includes a number of cases where a yield instruction
+# (e.g. SLEEP) does NOT appear in the branch delay slot.
+
+.text
+test1: beq %0, %0, test2
+       # nop in the branch delay slot.
+       nop
+test2: sleep
+       nop
+test3: sleep
+       beq %0, %0, test4
+       nop
+test4: sleep
diff --git a/gas/testsuite/gas/iq2000/odd-ldw.exp b/gas/testsuite/gas/iq2000/odd-ldw.exp
new file mode 100644 (file)
index 0000000..4867c1a
--- /dev/null
@@ -0,0 +1,6 @@
+# Test for errors when using an odd numbered base register for LDW.
+# Written by Ben Elliston (bje@redhat.com)
+
+if [istarget iq2000*-*-*] {
+    gas_test_error oddldw.s "" "emits error for odd numbered register in double word load"
+}
diff --git a/gas/testsuite/gas/iq2000/odd-sdw.exp b/gas/testsuite/gas/iq2000/odd-sdw.exp
new file mode 100644 (file)
index 0000000..277589b
--- /dev/null
@@ -0,0 +1,6 @@
+# Test for errors when using an odd numbered base register for SDW.
+# Written by Ben Elliston (bje@redhat.com)
+
+if [istarget iq2000*-*-*] {
+    gas_test_error oddsdw.s "" "emits error for odd numbered register in double word store"
+}
diff --git a/gas/testsuite/gas/iq2000/oddldw.s b/gas/testsuite/gas/iq2000/oddldw.s
new file mode 100644 (file)
index 0000000..931fbdf
--- /dev/null
@@ -0,0 +1,10 @@
+# This test case includes a single case of a load hazard, whereby an
+# instruction references a register which is the target of a load.
+# The assembler must warn about this!
+
+.data
+foodata:
+       .word 42
+
+.text
+       ldw %1, foodata(%12)
diff --git a/gas/testsuite/gas/iq2000/oddsdw.s b/gas/testsuite/gas/iq2000/oddsdw.s
new file mode 100644 (file)
index 0000000..50d829b
--- /dev/null
@@ -0,0 +1,10 @@
+# This test case includes a single case of a load hazard, whereby an
+# instruction references a register which is the target of a load.
+# The assembler must warn about this!
+
+.data
+foodata:
+       .word 42
+
+.text
+       sdw %1, foodata(%12)
diff --git a/gas/testsuite/gas/iq2000/q10allinsn.d b/gas/testsuite/gas/iq2000/q10allinsn.d
new file mode 100644 (file)
index 0000000..6e9903a
--- /dev/null
@@ -0,0 +1,492 @@
+#as: -m10
+#objdump: -drz
+#name: q10allinsn
+
+.*: +file format .*
+
+Disassembly of section .text:
+
+00000000 <add>:
+   0:  03 be 00 20     add r0,r29,r30
+
+00000004 <addi>:
+   4:  20 00 ff fc     addi r0,r0,0xfffc
+
+00000008 <addiu>:
+   8:  24 00 00 04     addiu r0,r0,0x4
+
+0000000c <addu>:
+   c:  03 be 00 21     addu r0,r29,r30
+
+00000010 <ado16>:
+  10:  03 be 00 29     ado16 r0,r29,r30
+
+00000014 <and>:
+  14:  03 be 00 24     and r0,r29,r30
+
+00000018 <andi>:
+  18:  30 00 de ad     andi r0,r0,0xdead
+
+0000001c <andoi>:
+  1c:  b0 00 00 00     andoi r0,r0,0x0
+
+00000020 <andoui>:
+  20:  bc 00 00 00     andoui r0,r0,0x0
+
+00000024 <mrgb>:
+  24:  03 a0 00 2d     mrgb r0,r29,r0,0x0
+
+00000028 <nor>:
+  28:  03 be 00 27     nor r0,r29,r30
+
+0000002c <or>:
+  2c:  03 be 00 25     or r0,r29,r30
+  30:  03 be 08 25     or r1,r29,r30
+
+00000034 <ori>:
+  34:  34 00 ff ff     ori r0,r0,0xffff
+
+00000038 <orui>:
+  38:  3c 20 00 00     orui r0,r1,0x0
+
+0000003c <ram>:
+  3c:  9c 00 00 00     ram r0,r0,0x0,0x0,0x0
+
+00000040 <sll>:
+  40:  00 00 00 00     nop
+  44:  00 02 08 00     sll r1,r2,0x0
+
+00000048 <sllv>:
+  48:  03 dd 00 04     sllv r0,r29,r30
+
+0000004c <slmv>:
+  4c:  00 00 00 01     slmv r0,r0,r0,0x0
+
+00000050 <slt>:
+  50:  03 be 00 2a     slt r0,r29,r30
+
+00000054 <slti>:
+  54:  28 00 00 00     slti r0,r0,0x0
+
+00000058 <sltiu>:
+  58:  2c 00 00 00     sltiu r0,r0,0x0
+
+0000005c <sltu>:
+  5c:  03 be 00 2b     sltu r0,r29,r30
+
+00000060 <sra>:
+  60:  00 00 00 03     sra r0,r0,0x0
+
+00000064 <srav>:
+  64:  03 dd 00 07     srav r0,r29,r30
+
+00000068 <srl>:
+  68:  00 00 00 02     srl r0,r0,0x0
+
+0000006c <srlv>:
+  6c:  03 dd 00 06     srlv r0,r29,r30
+
+00000070 <srmv>:
+  70:  00 00 00 05     srmv r0,r0,r0,0x0
+
+00000074 <sub>:
+  74:  03 be 00 22     sub r0,r29,r30
+
+00000078 <subu>:
+  78:  03 be 00 23     subu r0,r29,r30
+
+0000007c <xor>:
+  7c:  00 00 00 26     xor r0,r0,r0
+
+00000080 <xori>:
+  80:  38 00 00 00     xori r0,r0,0x0
+
+00000084 <bbi>:
+  84:  70 00 ff ff     bbi r0\(0x0\),84 <bbi>
+
+00000088 <bbil>:
+  88:  f0 00 ff fe     bbil r0\(0x0\),84 <bbi>
+
+0000008c <bbinl>:
+  8c:  f8 00 ff fd     bbinl r0\(0x0\),84 <bbi>
+
+00000090 <bbin>:
+  90:  78 00 ff fc     bbin r0\(0x0\),84 <bbi>
+
+00000094 <bbv>:
+  94:  74 00 ff fb     bbv r0,r0,84 <bbi>
+
+00000098 <bbvl>:
+  98:  f4 00 ff fa     bbvl r0,r0,84 <bbi>
+
+0000009c <bbvn>:
+  9c:  7c 00 ff f9     bbvn r0,r0,84 <bbi>
+
+000000a0 <bbvnl>:
+  a0:  fc 00 ff f8     bbvnl r0,r0,84 <bbi>
+
+000000a4 <beq>:
+  a4:  10 00 ff f7     beq r0,r0,84 <bbi>
+
+000000a8 <beql>:
+  a8:  50 00 ff f6     beql r0,r0,84 <bbi>
+
+000000ac <bgez>:
+  ac:  04 01 ff f5     bgez r0,84 <bbi>
+
+000000b0 <bgezal>:
+  b0:  04 11 ff f4     bgezal r0,84 <bbi>
+
+000000b4 <bgezall>:
+  b4:  04 13 ff f3     bgezall r0,84 <bbi>
+
+000000b8 <bgezl>:
+  b8:  04 03 ff f2     bgezl r0,84 <bbi>
+
+000000bc <bgtz>:
+  bc:  04 05 ff f1     bgtz r0,84 <bbi>
+
+000000c0 <bgtzal>:
+  c0:  04 15 ff f0     bgtzal r0,84 <bbi>
+
+000000c4 <bgtzall>:
+  c4:  04 17 ff ef     bgtzall r0,84 <bbi>
+
+000000c8 <bgtzl>:
+  c8:  04 07 ff ee     bgtzl r0,84 <bbi>
+
+000000cc <blez>:
+  cc:  04 04 ff ed     blez r0,84 <bbi>
+
+000000d0 <blezal>:
+  d0:  04 14 ff ec     blezal r0,84 <bbi>
+
+000000d4 <blezall>:
+  d4:  04 16 ff eb     blezall r0,84 <bbi>
+
+000000d8 <blezl>:
+  d8:  04 06 ff ea     blezl r0,84 <bbi>
+
+000000dc <bltz>:
+  dc:  04 00 ff e9     bltz r0,84 <bbi>
+
+000000e0 <bltzl>:
+  e0:  04 02 ff e8     bltzl r0,84 <bbi>
+
+000000e4 <bltzal>:
+  e4:  04 10 ff e7     bltzal r0,84 <bbi>
+
+000000e8 <bltzall>:
+  e8:  04 12 ff e6     bltzall r0,84 <bbi>
+
+000000ec <bmb>:
+  ec:  18 00 ff e5     bmb r0,r0,84 <bbi>
+
+000000f0 <bmb0>:
+  f0:  60 00 ff e4     bmb0 r0,r0,84 <bbi>
+
+000000f4 <bmb1>:
+  f4:  64 00 ff e3     bmb1 r0,r0,84 <bbi>
+
+000000f8 <bmb2>:
+  f8:  68 00 ff e2     bmb2 r0,r0,84 <bbi>
+
+000000fc <bmb3>:
+  fc:  6c 00 ff e1     bmb3 r0,r0,84 <bbi>
+
+00000100 <bmbl>:
+ 100:  58 00 ff e0     bmbl r0,r0,84 <bbi>
+
+00000104 <bne>:
+ 104:  14 00 ff df     bne r0,r0,84 <bbi>
+
+00000108 <bnel>:
+ 108:  54 00 ff de     bnel r0,r0,84 <bbi>
+
+0000010c <break>:
+ 10c:  00 00 00 0d     break
+
+00000110 <bri>:
+ 110:  04 08 ff dc     bri r0,84 <bbi>
+
+00000114 <brv>:
+ 114:  04 09 ff db     brv r0,84 <bbi>
+
+00000118 <chkhdr>:
+ 118:  4c 00 00 26     chkhdr r0,r0
+
+0000011c <j>:
+ 11c:  08 00 00 00     j 0 <add>
+                       11c: R_IQ2000_OFFSET_16 .text\+0x124
+
+00000120 <jal>:
+ 120:  0c 00 00 00     jal r0,0 <add>
+                       120: R_IQ2000_OFFSET_16 .text\+0x124
+
+00000124 <jalr>:
+ 124:  00 00 00 09     jalr r0,r0
+
+00000128 <jr>:
+ 128:  00 00 00 08     jr r0
+
+0000012c <lb>:
+ 12c:  80 00 10 24     lb r0,0x1024\(r0\)
+
+00000130 <lbu>:
+ 130:  90 00 10 24     lbu r0,0x1024\(r0\)
+
+00000134 <lh>:
+ 134:  84 00 10 24     lh r0,0x1024\(r0\)
+
+00000138 <lhu>:
+ 138:  94 00 10 24     lhu r0,0x1024\(r0\)
+
+0000013c <lui>:
+ 13c:  3c 00 ff ff     lui r0,0xffff
+ 140:  3c 1d 00 00     lui r29,0x0
+                       140: R_IQ2000_HI16      foodata
+ 144:  37 bd 00 00     ori r29,r29,0x0
+                       144: R_IQ2000_LO16      foodata
+
+00000148 <la>:
+ 148:  3c 0b 00 00     lui r11,0x0
+                       148: R_IQ2000_HI16      foodata
+ 14c:  35 6b 00 00     ori r11,r11,0x0
+                       14c: R_IQ2000_LO16      foodata
+
+00000150 <lw>:
+ 150:  8c 00 10 24     lw r0,0x1024\(r0\)
+
+00000154 <sb>:
+ 154:  a0 00 10 24     sb r0,0x1024\(r0\)
+
+00000158 <sh>:
+ 158:  a4 00 10 24     sh r0,0x1024\(r0\)
+
+0000015c <sw>:
+ 15c:  ac 00 10 24     sw r0,0x1024\(r0\)
+
+00000160 <swrd>:
+ 160:  4c 1e e8 04     swrd r29,r30
+
+00000164 <swrdl>:
+ 164:  4c 1e e8 05     swrdl r29,r30
+
+00000168 <swwr>:
+ 168:  4f be 00 06     swwr r0,r29,r30
+
+0000016c <swwru>:
+ 16c:  4f be 00 07     swwru r0,r29,r30
+
+00000170 <rba>:
+ 170:  4f be 00 08     rba r0,r29,r30
+
+00000174 <rbal>:
+ 174:  4f be 00 09     rbal r0,r29,r30
+
+00000178 <rbar>:
+ 178:  4f be 00 0a     rbar r0,r29,r30
+
+0000017c <dwrd>:
+ 17c:  4c 1e e0 0c     dwrd r28,r30
+
+00000180 <dwrdl>:
+ 180:  4c 1e e0 0d     dwrdl r28,r30
+
+00000184 <wba>:
+ 184:  4f be 00 10     wba r0,r29,r30
+
+00000188 <wbau>:
+ 188:  4f be 00 11     wbau r0,r29,r30
+
+0000018c <wbac>:
+ 18c:  4f be 00 12     wbac r0,r29,r30
+
+00000190 <crc32>:
+ 190:  4f be 00 14     crc32 r0,r29,r30
+
+00000194 <crc32b>:
+ 194:  4f be 00 15     crc32b r0,r29,r30
+
+00000198 <cfc>:
+ 198:  4c 1e e8 00     cfc r29,r30
+
+0000019c <lock>:
+ 19c:  4c 1c e8 01     lock r29,r28
+
+000001a0 <ctc>:
+ 1a0:  4f be 00 02     ctc r29,r30
+
+000001a4 <unlk>:
+ 1a4:  4c 1e e8 03     unlk r29,r30
+
+000001a8 <mcid>:
+ 1a8:  4c 1d 00 20     mcid r0,r29
+
+000001ac <dba>:
+ 1ac:  4c 00 f0 22     dba r30
+
+000001b0 <dbd>:
+ 1b0:  4c 1e 00 21     dbd r0,r0,r30
+
+000001b4 <dpwt>:
+ 1b4:  4f c0 00 23     dpwt r0,r30
+
+000001b8 <avail>:
+ 1b8:  4c 00 f8 24     avail r31
+
+000001bc <free>:
+ 1bc:  4f c0 00 25     free r0,r30
+
+000001c0 <tstod>:
+ 1c0:  4f c0 00 27     tstod r0,r30
+
+000001c4 <yield>:
+ 1c4:  00 00 00 0e     yield
+
+000001c8 <pkrla>:
+ 1c8:  4f be 00 28     pkrla r0,r29,r30
+
+000001cc <pkrlac>:
+ 1cc:  4f be 00 2b     pkrlac r0,r29,r30
+
+000001d0 <pkrlau>:
+ 1d0:  4f be 00 29     pkrlau r0,r29,r30
+
+000001d4 <pkrlah>:
+ 1d4:  4f be 00 2a     pkrlah r0,r29,r30
+
+000001d8 <cmphdr>:
+ 1d8:  4c 00 f8 2c     cmphdr r31
+
+000001dc <cam36>:
+ 1dc:  4c 1e ec 09     cam36 r29,r30,0x1,0x1
+
+000001e0 <cam72>:
+ 1e0:  4c 1e 04 52     cam72 r0,r30,0x2,0x2
+
+000001e4 <cam144>:
+ 1e4:  4c 1d 04 9b     cam144 r0,r29,0x3,0x3
+
+000001e8 <cam288>:
+ 1e8:  4c 1d 04 a4     cam144 r0,r29,0x4,0x4
+
+000001ec <cm32and>:
+ 1ec:  4f be 00 ab     cm32and r0,r29,r30
+
+000001f0 <cm32andn>:
+ 1f0:  4f be 00 a3     cm32andn r0,r29,r30
+
+000001f4 <cm32or>:
+ 1f4:  4f be 00 aa     cm32or r0,r29,r30
+
+000001f8 <cm32ra>:
+ 1f8:  4f be 00 b0     cm32ra r0,r29,r30
+
+000001fc <cm32rd>:
+ 1fc:  4c 1e e8 a1     cm32rd r29,r30
+
+00000200 <cm32ri>:
+ 200:  4c 1d 00 a4     cm32ri r0,r29
+
+00000204 <cm32rs>:
+ 204:  4f be 00 a0     cm32rs r0,r29,r30
+
+00000208 <cm32sa>:
+ 208:  4f be 00 b8     cm32sa r0,r29,r30
+
+0000020c <cm32sd>:
+ 20c:  4c 1d 00 a9     cm32sd r0,r29
+
+00000210 <cm32si>:
+ 210:  4c 1d 00 ac     cm32si r0,r29
+
+00000214 <cm32ss>:
+ 214:  4f be 00 a8     cm32ss r0,r29,r30
+
+00000218 <cm32xor>:
+ 218:  4f be 00 a2     cm32xor r0,r29,r30
+
+0000021c <cm64clr>:
+ 21c:  4c 1c 00 85     cm64clr r0,r28
+
+00000220 <cm64ra>:
+ 220:  4f 9e 00 90     cm64ra r0,r28,r30
+
+00000224 <cm64rd>:
+ 224:  4c 1c 00 81     cm64rd r0,r28
+
+00000228 <cm64ri>:
+ 228:  4c 1c 00 84     cm64ri r0,r28
+
+0000022c <cm64ria2>:
+ 22c:  4f 9e 00 94     cm64ria2 r0,r28,r30
+
+00000230 <cm64rs>:
+ 230:  4f 9e 00 80     cm64rs r0,r28,r30
+
+00000234 <cm64sa>:
+ 234:  4f 9e 00 98     cm64sa r0,r28,r30
+
+00000238 <cm64sd>:
+ 238:  4c 1c 00 89     cm64sd r0,r28
+
+0000023c <cm64si>:
+ 23c:  4c 1c 00 8c     cm64si r0,r28
+
+00000240 <cm64sia2>:
+ 240:  4f 9e 00 9c     cm64sia2 r0,r28,r30
+
+00000244 <cm64ss>:
+ 244:  4f be 00 88     cm64ss r0,r29,r30
+
+00000248 <cm128ria2>:
+ 248:  4f be 00 95     cm128ria2 r0,r29,r30
+
+0000024c <cm128ria3>:
+ 24c:  4f be 00 90     cm64ra r0,r29,r30
+
+00000250 <cm128ria4>:
+ 250:  4f be 00 b7     cm128ria4 r0,r29,r30,0x7
+
+00000254 <cm128sia2>:
+ 254:  4f be 00 9d     cm128sia2 r0,r29,r30
+
+00000258 <cm128sia3>:
+ 258:  4f be 00 98     cm64sa r0,r29,r30
+
+0000025c <cm128sia4>:
+ 25c:  4f be 00 bf     cm128sia4 r0,r29,r30,0x7
+
+00000260 <cm128vsa>:
+ 260:  4f be 00 a6     cm128vsa r0,r29,r30
+
+00000264 <pkrli>:
+ 264:  4b fd 08 3f     pkrli r1,r31,r29,0x3f
+
+00000268 <pkrlic>:
+ 268:  4b fd 0b 3f     pkrlic r1,r31,r29,0x3f
+
+0000026c <pkrlih>:
+ 26c:  4b fd 0a 3f     pkrlih r1,r31,r29,0x3f
+
+00000270 <pkrliu>:
+ 270:  4b fd 09 3f     pkrliu r1,r31,r29,0x3f
+
+00000274 <rbi>:
+ 274:  4f bc 12 20     rbi r2,r29,r28,0x20
+
+00000278 <rbil>:
+ 278:  4f bc 13 20     rbil r2,r29,r28,0x20
+
+0000027c <rbir>:
+ 27c:  4f bc 11 20     rbir r2,r29,r28,0x20
+
+00000280 <wbi>:
+ 280:  4c 22 06 20     wbi r0,r1,r2,0x20
+
+00000284 <wbic>:
+ 284:  4c 22 05 20     wbic r0,r1,r2,0x20
+
+00000288 <wbiu>:
+ 288:  4c 22 07 20     wbiu r0,r1,r2,0x20
diff --git a/gas/testsuite/gas/iq2000/q10allinsn.s b/gas/testsuite/gas/iq2000/q10allinsn.s
new file mode 100644 (file)
index 0000000..bb5d0f6
--- /dev/null
@@ -0,0 +1,641 @@
+       .globl foodata  
+       .data
+       .align  2
+foodata: 
+       .word 42                
+       .text
+       .global add
+add:
+       add %0,%29,%30
+       .text
+       .global addi
+addi:
+       addi %0,%0,-4
+       .text
+       .global addiu
+addiu:
+       addiu %0,%0,4           
+       .text
+       .global addu
+addu:
+       addu %0,%29,%30
+       .text
+       .global ado16
+ado16:
+       ado16 %0,%29,%30
+       .text
+       .global and
+and:
+       and %0,%29,%30
+       .text
+       .global andi
+andi:
+       andi %0,%0,0xdead
+       .text
+       .global andoi
+andoi:
+       andoi %0,%0,0
+       .text
+       .global andoui
+andoui:
+       andoui %0,%0,0
+       .text
+       .global mrgb
+mrgb:
+       mrgb %0,%29,%0,0
+       .text
+       .global nor
+nor:
+       nor %0,%29,%30
+       .text
+       .global or
+or:
+       or %0,%29,%30
+       or %1,%29,%30
+       .text
+       .global ori
+ori:
+       ori %0,%0,-1
+       .text
+       .global orui
+orui:
+       orui %0,%1,0
+       .text
+       .global ram
+ram:
+       ram %0,%0,0,0,0
+       .text
+       .global sll
+sll:
+       sll %0,%0,0
+       sll %1,%2,0
+       .text
+       .global sllv
+sllv:
+       sllv %0,%29,%30
+       .text
+       .global slmv
+slmv:
+       slmv %0,%0,%0,0
+       .text
+       .global slt
+slt:
+       slt %0,%29,%30
+       .text
+       .global slti
+slti:
+       slti %0,%0,0
+       .text
+       .global sltiu
+sltiu:
+       sltiu %0,%0,0
+       .text
+       .global sltu
+sltu:
+       sltu %0,%29,%30
+       .text
+       .global sra
+sra:
+       sra %0,%0,0
+       .text
+       .global srav
+srav:
+       srav %0,%29,%30
+       .text
+       .global srl
+srl:
+       srl %0,%0,0
+       .text
+       .global srlv
+srlv:
+       srlv %0,%29,%30
+       .text
+       .global srmv
+srmv:
+       srmv %0,%0,%0,0
+       .text
+       .global sub
+sub:
+       sub %0,%29,%30
+       .text
+       .global subu
+subu:
+       subu %0,%29,%30
+       .text
+       .global xor
+xor:
+       xor %0,%0,%0
+       .global xori
+xori:
+       xori %0,%0,0
+footext:
+       .text
+       .global bbi
+bbi:
+       bbi %0(0),footext
+       .text
+       .global bbil
+bbil:  
+       bbil %0(0),footext
+       .text
+       .global bbinl
+bbinl: 
+       bbinl %0(0),footext
+       .text
+       .global bbin
+bbin:
+       bbin %0(0),footext
+       .text
+       .global bbv
+bbv:
+       bbv %0,%0,footext
+       .text
+       .global bbvl
+bbvl:  
+       bbvl %0,%0,footext
+       .text
+       .global bbvn
+bbvn:
+       bbvn %0,%0,footext
+       .text
+       .global bbvnl
+bbvnl:
+       bbvnl %0,%0,footext
+       .text
+       .global beq
+beq:
+       beq %0,%0,footext
+       .text
+       .global beql
+beql:
+       beql %0,%0,footext
+       .text
+       .global bgez
+bgez:
+       bgez %0,footext
+       .text
+       .global bgezal
+bgezal:
+       bgezal %0,footext
+       .text
+       .global bgezall
+bgezall:
+       bgezall %0,footext
+       .text
+       .global bgezl
+bgezl:
+       bgezl %0,footext
+       .text
+       .global bgtz
+bgtz:
+       bgtz %0,footext
+       .text
+       .global bgtzal
+bgtzal:
+       bgtzal %0,footext
+       .text
+       .global bgtzall
+bgtzall:
+       bgtzall %0,footext
+       .text
+       .global bgtzl
+bgtzl:
+       bgtzl %0,footext
+       .text
+       .global blez
+blez:
+       blez %0,footext
+       .text
+       .global blezal
+blezal:
+       blezal %0,footext
+       .text
+       .global blezall
+blezall:
+       blezall %0,footext
+       .text
+       .global blezl
+blezl:
+       blezl %0,footext
+       .text
+       .global bltz
+bltz:
+       bltz %0,footext
+       .text
+       .global bltzl
+bltzl:
+       bltzl %0,footext
+       .text
+       .global bltzal
+bltzal:
+       bltzal %0,footext
+       .text
+       .global bltzall
+bltzall:
+       bltzall %0,footext
+       .text
+       .global bmb
+bmb:
+       bmb %0,%0,footext
+       .text
+       .global bmb0
+bmb0:
+       bmb0 %0,%0,footext
+       .text
+       .global bmb1
+bmb1:
+       bmb1 %0,%0,footext
+       .text
+       .global bmb2
+bmb2:
+       bmb2 %0,%0,footext
+       .text
+       .global bmb3
+bmb3:
+       bmb3 %0,%0,footext
+       .text
+       .global bmbl
+bmbl:
+       bmbl %0,%0,footext
+       .text
+       .global bne
+bne:
+       bne %0,%0,footext
+       .text
+       .global bnel
+bnel:
+       bnel %0,%0,footext
+       .text
+       .global break
+break:
+       break
+       .text
+       .global bri
+bri:
+       bri %0,footext
+       .text
+       .global brv
+brv:
+       brv %0,footext
+       .text
+       .global chkhdr
+chkhdr:
+       chkhdr %0,%0
+       .text
+       .global j
+j:
+       j bartext
+       .text
+       .global jal
+jal:
+       jal %0,bartext
+bartext:
+       .text
+       .global jalr
+jalr:
+       jalr %0,%0
+       .text
+       .global jr
+jr:
+       jr %0
+       .text
+       .global lb
+lb:
+       lb %0,0x1024(%0)
+       .text
+       .global lbu
+lbu:
+       lbu %0,0x1024(%0)
+       .text
+       .global lh
+lh:
+       lh %0,0x1024(%0)
+       .text
+       .global lhu
+lhu:
+       lhu %0,0x1024(%0)
+       .text
+       .global lui
+lui:
+       lui %0,-1
+       lui %29,%hi(foodata)
+       ori %29,%29,%lo(foodata)
+       .text
+       .global la
+la:
+       la %11,foodata
+       .global lw
+lw:
+       lw %0,0x1024(%0)
+       .text
+       .global sb
+sb:
+       sb %0,0x1024(%0)
+       .text
+       .global sh
+sh:
+       sh %0,0x1024(%0)
+       .text
+       .global sw
+sw:
+       sw %0,0x1024(%0)
+       .text
+       .global swrd
+swrd:  
+       swrd %29,%30
+       .text
+       .global swrdl
+swrdl:         
+       swrdl %29,%30
+       .text
+       .global swwr
+swwr:          
+       swwr %0,%29,%30
+       .text
+       .global swwru
+swwru:         
+       swwru %0,%29,%30
+       .text
+       .global rba
+rba:           
+       rba %0,%29,%30
+       .text
+       .global rbal
+rbal:  
+       rbal %0,%29,%30
+       .text
+       .global rbar
+rbar:  
+       rbar %0,%29,%30
+       .text
+       .global dwrd
+dwrd:  
+       dwrd %28,%30
+       .text
+       .global dwrdl
+dwrdl: 
+       dwrdl %28,%30
+       .text
+       .global wba
+wba:                                           
+       wba %0,%29,%30
+       .text
+       .global wbau
+wbau:          
+       wbau %0,%29,%30
+       .text
+       .global wbac
+wbac:          
+       wbac %0,%29,%30
+       .text
+       .global crc32
+crc32:
+       crc32 %0,%29,%30
+       .text
+       .global crc32b
+crc32b:
+       crc32b %0,%29,%30
+       .text
+       .global cfc
+cfc:   
+       cfc %29,%30
+       .text
+       .global lock
+lock:  
+       lock %29,%28
+       .text
+       .global ctc
+ctc:                                   
+       ctc %29,%30
+       .text
+       .global unlk
+unlk:          
+       unlk %29,%30
+       .text
+       .global mcid
+mcid:          
+       mcid %0,%29
+       .text
+       .global dba
+dba:
+       dba %30
+       .text
+       .global dbd
+dbd:   
+       dbd %0,%30
+       .text
+       .global dpwt
+dpwt:                  
+       dpwt %0,%30
+       .text
+       .global avail
+avail:
+       avail %31
+       .text
+       .global free
+free:  
+       free %0,%30
+       .text
+       .global tstod
+tstod: 
+       tstod %0,%30
+       .global yield
+yield: 
+       yield
+       .text
+       .global pkrla
+pkrla: 
+       pkrla %0,%29,%30
+       .text
+       .global pkrlac
+pkrlac:        
+       pkrlac %0,%29,%30
+       .text
+       .global pkrlau
+pkrlau:        
+       pkrlau %0,%29,%30
+       .text
+       .global pkrlah
+pkrlah:        
+       pkrlah %0,%29,%30
+       .text
+       .global cmphdr
+cmphdr:                                                
+       cmphdr %31
+       .text
+       .global cam36
+cam36: 
+       cam36 %29,%30,1,1
+       .text
+       .global cam72
+cam72: 
+       cam72 %0,%30,2,2
+       .text
+       .global cam144
+cam144:        
+       cam144 %0,%29,3,3
+       .text
+       .global cam288
+cam288:        
+       cam144 %0,%29,4,4
+       .text
+       .global cm32and
+cm32and:
+       cm32and %0,%29,%30
+       .text
+       .global cm32andn
+cm32andn:
+       cm32andn %0,%29,%30
+       .text
+       .global cm32or
+cm32or:
+       cm32or %0,%29,%30
+       .text
+       .global cm32ra
+cm32ra:
+       cm32ra %0,%29,%30
+       .text
+       .global cm32rd
+cm32rd:
+       cm32rd %29,%30
+       .text
+       .global cm32ri
+cm32ri:        
+       cm32ri %0,%29
+       .text
+       .global cm32rs
+cm32rs:
+       cm32rs %0,%29,%30
+       .text
+       .global cm32sa
+cm32sa:
+       cm32sa %0,%29,%30
+       .text
+       .global cm32sd
+cm32sd:
+       cm32sd %0,%29
+       .text
+       .global cm32si
+cm32si:
+       cm32si %0,%29
+       .text
+       .global cm32ss
+cm32ss:
+       cm32ss %0,%29,%30
+       .text
+       .global cm32xor
+cm32xor:
+       cm32xor %0,%29,%30
+       .text
+       .global cm64clr
+cm64clr:
+       cm64clr %0,%28
+       .text
+       .global cm64ra
+cm64ra:
+       cm64ra %0,%28,%30
+       .text
+       .global cm64rd
+cm64rd:
+       cm64rd %0,%28
+       .text
+       .global cm64ri
+cm64ri:
+       cm64ri %0,%28
+       .text
+       .global cm64ria2
+cm64ria2:
+       cm64ria2 %0,%28,%30
+       .text
+       .global cm64rs
+cm64rs:
+       cm64rs %0,%28,%30
+       .text
+       .global cm64sa
+cm64sa:
+       cm64sa %0,%28,%30
+       .text
+       .global cm64sd
+cm64sd:
+       cm64sd %0,%28
+       .text
+       .global cm64si
+cm64si:
+       cm64si %0,%28
+       .text
+       .global cm64sia2
+cm64sia2:
+       cm64sia2 %0,%28,%30
+       .text
+       .global cm64ss
+cm64ss:
+       cm64ss %0,%29,%30
+       .text
+       .global cm128ria2
+cm128ria2:
+       cm128ria2 %0,%29,%30
+       .text
+       .global cm128ria30
+cm128ria3:
+       cm128ria3 %0,%29,%30,0
+       .text
+       .global cm128ria4
+cm128ria4:
+       cm128ria4 %0,%29,%30,7
+       .text
+       .global cm128sia2
+cm128sia2:
+       cm128sia2 %0,%29,%30
+       .text
+       .global cm128sia3
+cm128sia3:
+       cm128sia3 %0,%29,%30,0
+       .text
+       .global cm128sia4
+cm128sia4:
+       cm128sia4 %0,%29,%30,7
+       .text
+       .global cm128vsa
+cm128vsa:
+       cm128vsa %0,%29,%30
+       .text
+       .global pkrli
+pkrli: 
+       pkrli %1,%31,%29,63
+       .text
+       .global pkrlic
+pkrlic:        
+       pkrlic %1,%31,%29,63
+       .text
+       .global pkrlih
+pkrlih:        
+       pkrlih %1,%31,%29,63
+       .text
+       .global pkrliu
+pkrliu:        
+       pkrliu %1,%31,%29,63
+       .text
+       .global rbi
+rbi:           
+       rbi %2,%29,%28,32
+       .text
+       .global rbil
+rbil:          
+       rbil %2,%29,%28,32
+       .text
+       .global rbir
+rbir:          
+       rbir %2,%29,%28,32
+       .text
+       .global wbi
+wbi:           
+       wbi %0,%1,%2,32
+       .text
+       .global wbic
+wbic:          
+       wbic %0,%1,%2,32
+       .text
+       .global wbiu
+wbiu:          
+       wbiu %0,%1,%2,32
+                       
diff --git a/gas/testsuite/gas/iq2000/q10hazard3.s b/gas/testsuite/gas/iq2000/q10hazard3.s
new file mode 100644 (file)
index 0000000..c4170a0
--- /dev/null
@@ -0,0 +1,14 @@
+# This test case includes a single case of a load hazard, whereby an
+# instruction references a register which is the target of a load.
+# The assembler must warn about this!
+
+.data
+foodata:
+       .word 42
+
+.text
+       lw %31, foodata(%1)
+       jal %31,footext
+
+footext:
+       nop
diff --git a/gas/testsuite/gas/iq2000/q10hazard4.s b/gas/testsuite/gas/iq2000/q10hazard4.s
new file mode 100644 (file)
index 0000000..fc9f9a6
--- /dev/null
@@ -0,0 +1,11 @@
+# This test case includes a single case of a load hazard, whereby an
+# instruction references a register which is the target of a load.
+# The assembler must warn about this!
+
+.data
+foodata:
+       .word 42
+
+.text
+       lw %10, foodata(%12)
+       add %3, %10, %9
diff --git a/gas/testsuite/gas/iq2000/q10hazard5.s b/gas/testsuite/gas/iq2000/q10hazard5.s
new file mode 100644 (file)
index 0000000..6ec51f5
--- /dev/null
@@ -0,0 +1,11 @@
+# This test case includes a single case of a load hazard, whereby an
+# instruction references a register which is the target of a load.
+# The assembler must warn about this!
+
+.data
+foodata:
+       .word 42
+
+.text
+       lw %1, foodata(%4)
+       add %8, %1, %9
diff --git a/gas/testsuite/gas/iq2000/q10load-hazards.exp b/gas/testsuite/gas/iq2000/q10load-hazards.exp
new file mode 100644 (file)
index 0000000..e49bcf9
--- /dev/null
@@ -0,0 +1,62 @@
+# Test for warnings when producing load hazards (instructions that
+# reference the target of load one stage further down the pipeline.
+
+# Run GAS and check that it emits the desired warning for the test case.
+# Arguments:
+#   file -- name of the test case to assemble.
+#   testname -- a string describing the test.
+#   warnpattern -- a regular expression, suitable for use by the Tcl
+#     regexp command, to decide if the warning string was emitted by
+#     the assembler to stderr.
+
+proc iq2000_warning_test { file testname {warnpattern ""} } {
+    global comp_output
+
+    gas_run $file "-m10" ">/dev/null"
+    verbose "output was $comp_output" 2
+
+    if {$warnpattern == ""} {
+       if {$comp_output == ""} { pass $testname } else { fail $testname }
+       return
+    }
+
+    if {[regexp "Warning: $warnpattern" $comp_output]} {
+       pass $testname
+    } else {
+       fail $testname
+    }
+}
+
+if [istarget iq2000*-*-*] {
+    foreach file [glob -nocomplain -- $srcdir/$subdir/q10hazard*.s] {
+       set file [file tail $file]
+       switch -- $file {
+           "q10hazard0.s" {
+               set warnpattern "operand references R10 of previous load"
+           }
+           "q10hazard1.s" {
+               set warnpattern "operand references R1 of previous load"
+           }
+           "q10hazard2.s" {
+               set warnpattern "operand references R2 of previous load"
+           }
+           "q10hazard3.s" {
+               set warnpattern "operand references R31 of previous load"
+           }
+           "q10hazard4.s" {
+               set warnpattern "operand references R10 of previous load"
+           }
+           "q10hazard5.s" {
+               set warnpattern "operand references R1 of previous load"
+           }
+           default {
+               error "no expected result specified for $file"
+               return
+           }
+       }
+       iq2000_warning_test $file "assembler emits load hazard warning for $file" $warnpattern
+    }
+
+    set testname "assembler emits no warnings when there are no load hazards"
+    iq2000_warning_test q10nohazard.s $testname
+}
diff --git a/gas/testsuite/gas/iq2000/q10nohazard.s b/gas/testsuite/gas/iq2000/q10nohazard.s
new file mode 100644 (file)
index 0000000..02fc136
--- /dev/null
@@ -0,0 +1,20 @@
+# This test case includes a number of cases where there is no load
+# hazard between a load and the instruction which follows it in
+# the pipeline.
+
+.data
+.text
+       lw %0, 0x40(%0)
+       add %1, %2, %3
+       lh %0, 0x80(%0)
+       add %1, %2, %3
+       lb %0, 0x80(%0)
+       add %1, %2, %3
+       lw %0, 0x80(%0)
+       nop
+       add %0, %0, %0
+       lw %0, 0x80(%3)
+       nop
+       lw %0, 0x80(%3)
+       add %2, %3, %4
+       
diff --git a/gas/testsuite/gas/iq2000/q10noyield.s b/gas/testsuite/gas/iq2000/q10noyield.s
new file mode 100644 (file)
index 0000000..7c8cdaf
--- /dev/null
@@ -0,0 +1,14 @@
+# This test case includes a number of cases where a yield instruction
+# (e.g. SLEEP) does NOT appear in the branch delay slot.
+
+.text
+test1: beq %0, %0, test2
+       # nop in the branch delay slot.
+       nop
+test2: cfc %0, %0
+       nop
+test3: cfc %0, %0
+       beq %0, %0, test4
+       nop
+test4: sub %1,%2,%3
+
diff --git a/gas/testsuite/gas/iq2000/q10test0.d b/gas/testsuite/gas/iq2000/q10test0.d
new file mode 100644 (file)
index 0000000..a0e77c7
--- /dev/null
@@ -0,0 +1,361 @@
+#as: -m10
+#objdump: -drz
+#name: q10test0
+
+.*: +file format .*
+
+Disassembly of section .text:
+
+00000000 <_start>:
+   0:  00 21 08 20     add r1,r1,r1
+   4:  00 00 00 00     nop
+   8:  20 21 00 00     addi r1,r1,0x0
+   c:  00 00 00 00     nop
+  10:  24 21 00 00     addiu r1,r1,0x0
+  14:  00 00 00 00     nop
+  18:  00 21 08 21     addu r1,r1,r1
+  1c:  00 00 00 00     nop
+  20:  00 21 08 29     ado16 r1,r1,r1
+  24:  00 00 00 00     nop
+  28:  00 21 08 24     and r1,r1,r1
+  2c:  00 00 00 00     nop
+  30:  30 21 00 00     andi r1,r1,0x0
+  34:  00 00 00 00     nop
+  38:  b0 21 00 00     andoi r1,r1,0x0
+  3c:  00 00 00 00     nop
+  40:  bc 21 00 00     andoui r1,r1,0x0
+  44:  00 00 00 00     nop
+  48:  3c 01 00 00     lui r1,0x0
+  4c:  00 00 00 00     nop
+  50:  00 21 08 2d     mrgb r1,r1,r1,0x0
+  54:  00 00 00 00     nop
+  58:  00 21 08 27     nor r1,r1,r1
+  5c:  00 00 00 00     nop
+  60:  00 21 08 25     or r1,r1,r1
+  64:  00 00 00 00     nop
+  68:  34 21 00 00     ori r1,r1,0x0
+  6c:  00 00 00 00     nop
+  70:  3c 21 00 00     orui r1,r1,0x0
+  74:  00 00 00 00     nop
+  78:  00 01 08 00     sll r1,r1,0x0
+  7c:  00 00 00 00     nop
+  80:  00 21 08 04     sllv r1,r1,r1
+  84:  00 00 00 00     nop
+  88:  00 21 08 2a     slt r1,r1,r1
+  8c:  00 00 00 00     nop
+  90:  28 21 00 00     slti r1,r1,0x0
+  94:  00 00 00 00     nop
+  98:  2c 21 00 00     sltiu r1,r1,0x0
+  9c:  00 00 00 00     nop
+  a0:  00 21 08 2b     sltu r1,r1,r1
+  a4:  00 00 00 00     nop
+  a8:  00 01 08 03     sra r1,r1,0x0
+  ac:  00 00 00 00     nop
+  b0:  00 21 08 07     srav r1,r1,r1
+  b4:  00 00 00 00     nop
+  b8:  00 01 08 02     srl r1,r1,0x0
+  bc:  00 00 00 00     nop
+  c0:  00 21 08 06     srlv r1,r1,r1
+  c4:  00 00 00 00     nop
+  c8:  00 21 08 22     sub r1,r1,r1
+  cc:  00 00 00 00     nop
+  d0:  00 21 08 23     subu r1,r1,r1
+  d4:  00 00 00 00     nop
+  d8:  00 21 08 26     xor r1,r1,r1
+  dc:  00 00 00 00     nop
+  e0:  38 21 00 00     xori r1,r1,0x0
+  e4:  00 00 00 00     nop
+  e8:  00 00 00 00     nop
+  ec:  00 00 00 00     nop
+  f0:  00 21 08 05     srmv r1,r1,r1,0x0
+  f4:  00 00 00 00     nop
+  f8:  00 21 08 01     slmv r1,r1,r1,0x0
+  fc:  00 00 00 00     nop
+ 100:  9c 01 08 00     ram r1,r1,0x0,0x0,0x0
+ 104:  00 00 00 00     nop
+ 108:  70 20 ff bd     bbi r1\(0x0\),0 <_start>
+ 10c:  00 00 00 00     nop
+ 110:  78 20 ff bb     bbin r1\(0x0\),0 <_start>
+ 114:  00 00 00 00     nop
+ 118:  74 21 ff b9     bbv r1,r1,0 <_start>
+ 11c:  00 00 00 00     nop
+ 120:  7c 21 ff b7     bbvn r1,r1,0 <_start>
+ 124:  00 00 00 00     nop
+ 128:  f0 20 ff b5     bbil r1\(0x0\),0 <_start>
+ 12c:  00 00 00 00     nop
+ 130:  f8 20 ff b3     bbinl r1\(0x0\),0 <_start>
+ 134:  00 00 00 00     nop
+ 138:  f4 21 ff b1     bbvl r1,r1,0 <_start>
+ 13c:  00 00 00 00     nop
+ 140:  fc 21 ff af     bbvnl r1,r1,0 <_start>
+ 144:  00 00 00 00     nop
+ 148:  10 21 ff ad     beq r1,r1,0 <_start>
+ 14c:  00 00 00 00     nop
+ 150:  50 21 ff ab     beql r1,r1,0 <_start>
+ 154:  00 00 00 00     nop
+ 158:  04 21 ff a9     bgez r1,0 <_start>
+ 15c:  00 00 00 00     nop
+ 160:  04 35 ff a7     bgtzal r1,0 <_start>
+ 164:  00 00 00 00     nop
+ 168:  04 31 ff a5     bgezal r1,0 <_start>
+ 16c:  00 00 00 00     nop
+ 170:  04 37 ff a3     bgtzall r1,0 <_start>
+ 174:  00 00 00 00     nop
+ 178:  04 33 ff a1     bgezall r1,0 <_start>
+ 17c:  00 00 00 00     nop
+ 180:  04 23 ff 9f     bgezl r1,0 <_start>
+ 184:  00 00 00 00     nop
+ 188:  04 27 ff 9d     bgtzl r1,0 <_start>
+ 18c:  00 00 00 00     nop
+ 190:  04 25 ff 9b     bgtz r1,0 <_start>
+ 194:  00 00 00 00     nop
+ 198:  04 24 ff 99     blez r1,0 <_start>
+ 19c:  00 00 00 00     nop
+ 1a0:  04 34 ff 97     blezal r1,0 <_start>
+ 1a4:  00 00 00 00     nop
+ 1a8:  04 20 ff 95     bltz r1,0 <_start>
+ 1ac:  00 00 00 00     nop
+ 1b0:  04 30 ff 93     bltzal r1,0 <_start>
+ 1b4:  00 00 00 00     nop
+ 1b8:  04 26 ff 91     blezl r1,0 <_start>
+ 1bc:  00 00 00 00     nop
+ 1c0:  04 22 ff 8f     bltzl r1,0 <_start>
+ 1c4:  00 00 00 00     nop
+ 1c8:  04 36 ff 8d     blezall r1,0 <_start>
+ 1cc:  00 00 00 00     nop
+ 1d0:  04 32 ff 8b     bltzall r1,0 <_start>
+ 1d4:  00 00 00 00     nop
+ 1d8:  18 21 ff 89     bmb r1,r1,0 <_start>
+ 1dc:  00 00 00 00     nop
+ 1e0:  58 21 ff 87     bmbl r1,r1,0 <_start>
+ 1e4:  00 00 00 00     nop
+ 1e8:  60 21 ff 85     bmb0 r1,r1,0 <_start>
+ 1ec:  00 00 00 00     nop
+ 1f0:  64 21 ff 83     bmb1 r1,r1,0 <_start>
+ 1f4:  00 00 00 00     nop
+ 1f8:  68 21 ff 81     bmb2 r1,r1,0 <_start>
+ 1fc:  00 00 00 00     nop
+ 200:  6c 21 ff 7f     bmb3 r1,r1,0 <_start>
+ 204:  00 00 00 00     nop
+ 208:  14 21 ff 7d     bne r1,r1,0 <_start>
+ 20c:  00 00 00 00     nop
+ 210:  54 21 ff 7b     bnel r1,r1,0 <_start>
+ 214:  00 00 00 00     nop
+ 218:  08 00 00 00     j 0 <_start>
+ 21c:  00 00 00 00     nop
+ 220:  0c 01 00 00     jal r1,0 <_start>
+ 224:  00 00 00 00     nop
+ 228:  00 20 08 09     jalr r1,r1
+ 22c:  00 00 00 00     nop
+ 230:  00 20 00 08     jr r1
+ 234:  00 00 00 00     nop
+ 238:  00 00 00 0d     break
+ 23c:  00 00 00 00     nop
+ 240:  4c 21 00 02     ctc r1,r1
+ 244:  00 00 00 00     nop
+ 248:  4c 01 08 00     cfc r1,r1
+ 24c:  00 00 00 00     nop
+ 250:  8c 21 00 00     lw r1,0x0\(r1\)
+ 254:  00 00 00 00     nop
+ 258:  84 21 00 00     lh r1,0x0\(r1\)
+ 25c:  00 00 00 00     nop
+ 260:  80 21 00 00     lb r1,0x0\(r1\)
+ 264:  00 00 00 00     nop
+ 268:  94 21 00 00     lhu r1,0x0\(r1\)
+ 26c:  00 00 00 00     nop
+ 270:  90 21 00 00     lbu r1,0x0\(r1\)
+ 274:  00 00 00 00     nop
+ 278:  a0 21 00 00     sb r1,0x0\(r1\)
+ 27c:  00 00 00 00     nop
+ 280:  a4 21 00 00     sh r1,0x0\(r1\)
+ 284:  00 00 00 00     nop
+ 288:  ac 21 00 00     sw r1,0x0\(r1\)
+ 28c:  00 00 00 00     nop
+ 290:  4c 21 08 08     rba r1,r1,r1
+ 294:  00 00 00 00     nop
+ 298:  4c 21 08 0a     rbar r1,r1,r1
+ 29c:  00 00 00 00     nop
+ 2a0:  4c 21 08 09     rbal r1,r1,r1
+ 2a4:  00 00 00 00     nop
+ 2a8:  4c 21 08 10     wba r1,r1,r1
+ 2ac:  00 00 00 00     nop
+ 2b0:  4c 21 08 12     wbac r1,r1,r1
+ 2b4:  00 00 00 00     nop
+ 2b8:  4c 21 08 11     wbau r1,r1,r1
+ 2bc:  00 00 00 00     nop
+ 2c0:  4c 21 0a 00     rbi r1,r1,r1,0x0
+ 2c4:  00 00 00 00     nop
+ 2c8:  4c 21 09 00     rbir r1,r1,r1,0x0
+ 2cc:  00 00 00 00     nop
+ 2d0:  4c 21 0b 00     rbil r1,r1,r1,0x0
+ 2d4:  00 00 00 00     nop
+ 2d8:  4c 21 0e 00     wbi r1,r1,r1,0x0
+ 2dc:  00 00 00 00     nop
+ 2e0:  4c 21 0d 00     wbic r1,r1,r1,0x0
+ 2e4:  00 00 00 00     nop
+ 2e8:  4c 21 0f 00     wbiu r1,r1,r1,0x0
+ 2ec:  00 00 00 00     nop
+ 2f0:  4c 21 08 28     pkrla r1,r1,r1
+ 2f4:  00 00 00 00     nop
+ 2f8:  4c 21 08 2b     pkrlac r1,r1,r1
+ 2fc:  00 00 00 00     nop
+ 300:  4c 21 08 2a     pkrlah r1,r1,r1
+ 304:  00 00 00 00     nop
+ 308:  4c 21 08 29     pkrlau r1,r1,r1
+ 30c:  00 00 00 00     nop
+ 310:  48 21 08 00     pkrli r1,r1,r1,0x0
+ 314:  00 00 00 00     nop
+ 318:  48 21 0b 00     pkrlic r1,r1,r1,0x0
+ 31c:  00 00 00 00     nop
+ 320:  48 21 0a 00     pkrlih r1,r1,r1,0x0
+ 324:  00 00 00 00     nop
+ 328:  48 21 09 00     pkrliu r1,r1,r1,0x0
+ 32c:  00 00 00 00     nop
+ 330:  4c 01 08 01     lock r1,r1
+ 334:  00 00 00 00     nop
+ 338:  4c 01 08 03     unlk r1,r1
+ 33c:  00 00 00 00     nop
+ 340:  4c 21 08 06     swwr r1,r1,r1
+ 344:  00 00 00 00     nop
+ 348:  4c 21 08 07     swwru r1,r1,r1
+ 34c:  00 00 00 00     nop
+ 350:  4c 01 08 04     swrd r1,r1
+ 354:  00 00 00 00     nop
+ 358:  4c 01 08 05     swrdl r1,r1
+ 35c:  00 00 00 00     nop
+ 360:  4c 02 10 0c     dwrd r2,r2
+ 364:  00 00 00 00     nop
+ 368:  4c 02 10 0d     dwrdl r2,r2
+ 36c:  00 00 00 00     nop
+ 370:  4c 01 0c 00     cam36 r1,r1,0x0,0x0
+ 374:  00 00 00 00     nop
+ 378:  4c 01 0c 40     cam72 r1,r1,0x0,0x0
+ 37c:  00 00 00 00     nop
+ 380:  4c 01 0c 80     cam144 r1,r1,0x0,0x0
+ 384:  00 00 00 00     nop
+ 388:  4c 01 0c c0     cam288 r1,r1,0x0,0x0
+ 38c:  00 00 00 00     nop
+ 390:  4c 21 08 ab     cm32and r1,r1,r1
+ 394:  00 00 00 00     nop
+ 398:  4c 21 08 a3     cm32andn r1,r1,r1
+ 39c:  00 00 00 00     nop
+ 3a0:  4c 21 08 aa     cm32or r1,r1,r1
+ 3a4:  00 00 00 00     nop
+ 3a8:  4c 21 08 b0     cm32ra r1,r1,r1
+ 3ac:  00 00 00 00     nop
+ 3b0:  4c 01 08 a1     cm32rd r1,r1
+ 3b4:  00 00 00 00     nop
+ 3b8:  4c 01 08 a4     cm32ri r1,r1
+ 3bc:  00 00 00 00     nop
+ 3c0:  4c 21 08 a0     cm32rs r1,r1,r1
+ 3c4:  00 00 00 00     nop
+ 3c8:  4c 21 08 b8     cm32sa r1,r1,r1
+ 3cc:  00 00 00 00     nop
+ 3d0:  4c 01 08 a9     cm32sd r1,r1
+ 3d4:  00 00 00 00     nop
+ 3d8:  4c 01 08 ac     cm32si r1,r1
+ 3dc:  00 00 00 00     nop
+ 3e0:  4c 21 08 a8     cm32ss r1,r1,r1
+ 3e4:  00 00 00 00     nop
+ 3e8:  4c 21 08 a2     cm32xor r1,r1,r1
+ 3ec:  00 00 00 00     nop
+ 3f0:  4c 02 10 85     cm64clr r2,r2
+ 3f4:  00 00 00 00     nop
+ 3f8:  4c 42 10 90     cm64ra r2,r2,r2
+ 3fc:  00 00 00 00     nop
+ 400:  4c 02 10 81     cm64rd r2,r2
+ 404:  00 00 00 00     nop
+ 408:  4c 02 10 84     cm64ri r2,r2
+ 40c:  00 00 00 00     nop
+ 410:  4c 42 10 94     cm64ria2 r2,r2,r2
+ 414:  00 00 00 00     nop
+ 418:  4c 42 10 80     cm64rs r2,r2,r2
+ 41c:  00 00 00 00     nop
+ 420:  4c 42 10 98     cm64sa r2,r2,r2
+ 424:  00 00 00 00     nop
+ 428:  4c 02 10 89     cm64sd r2,r2
+ 42c:  00 00 00 00     nop
+ 430:  4c 02 10 8c     cm64si r2,r2
+ 434:  00 00 00 00     nop
+ 438:  4c 42 10 9c     cm64sia2 r2,r2,r2
+ 43c:  00 00 00 00     nop
+ 440:  4c 42 10 88     cm64ss r2,r2,r2
+ 444:  00 00 00 00     nop
+ 448:  4c 42 10 95     cm128ria2 r2,r2,r2
+ 44c:  00 00 00 00     nop
+ 450:  4c 42 10 90     cm64ra r2,r2,r2
+ 454:  00 00 00 00     nop
+ 458:  4c 42 10 91     cm128ria3 r2,r2,r2,0x1
+ 45c:  00 00 00 00     nop
+ 460:  4c 42 10 92     cm128ria3 r2,r2,r2,0x2
+ 464:  00 00 00 00     nop
+ 468:  4c 42 10 93     cm128ria3 r2,r2,r2,0x3
+ 46c:  00 00 00 00     nop
+ 470:  4c 42 10 b0     cm32ra r2,r2,r2
+ 474:  00 00 00 00     nop
+ 478:  4c 42 10 b1     cm128ria4 r2,r2,r2,0x1
+ 47c:  00 00 00 00     nop
+ 480:  4c 42 10 b2     cm128ria4 r2,r2,r2,0x2
+ 484:  00 00 00 00     nop
+ 488:  4c 42 10 b3     cm128ria4 r2,r2,r2,0x3
+ 48c:  00 00 00 00     nop
+ 490:  4c 42 10 b4     cm128ria4 r2,r2,r2,0x4
+ 494:  00 00 00 00     nop
+ 498:  4c 42 10 b5     cm128ria4 r2,r2,r2,0x5
+ 49c:  00 00 00 00     nop
+ 4a0:  4c 42 10 b6     cm128ria4 r2,r2,r2,0x6
+ 4a4:  00 00 00 00     nop
+ 4a8:  4c 42 10 b7     cm128ria4 r2,r2,r2,0x7
+ 4ac:  00 00 00 00     nop
+ 4b0:  4c 42 10 9d     cm128sia2 r2,r2,r2
+ 4b4:  00 00 00 00     nop
+ 4b8:  4c 42 10 98     cm64sa r2,r2,r2
+ 4bc:  00 00 00 00     nop
+ 4c0:  4c 42 10 99     cm128sia3 r2,r2,r2,0x1
+ 4c4:  00 00 00 00     nop
+ 4c8:  4c 42 10 9a     cm128sia3 r2,r2,r2,0x2
+ 4cc:  00 00 00 00     nop
+ 4d0:  4c 42 10 9b     cm128sia3 r2,r2,r2,0x3
+ 4d4:  00 00 00 00     nop
+ 4d8:  4c 21 08 b8     cm32sa r1,r1,r1
+ 4dc:  00 00 00 00     nop
+ 4e0:  4c 21 08 b9     cm128sia4 r1,r1,r1,0x1
+ 4e4:  00 00 00 00     nop
+ 4e8:  4c 21 08 ba     cm128sia4 r1,r1,r1,0x2
+ 4ec:  00 00 00 00     nop
+ 4f0:  4c 21 08 bb     cm128sia4 r1,r1,r1,0x3
+ 4f4:  00 00 00 00     nop
+ 4f8:  4c 21 08 bc     cm128sia4 r1,r1,r1,0x4
+ 4fc:  00 00 00 00     nop
+ 500:  4c 21 08 bd     cm128sia4 r1,r1,r1,0x5
+ 504:  00 00 00 00     nop
+ 508:  4c 21 08 be     cm128sia4 r1,r1,r1,0x6
+ 50c:  00 00 00 00     nop
+ 510:  4c 21 08 bf     cm128sia4 r1,r1,r1,0x7
+ 514:  00 00 00 00     nop
+ 518:  4c 21 08 a6     cm128vsa r1,r1,r1
+ 51c:  00 00 00 00     nop
+ 520:  4c 21 08 14     crc32 r1,r1,r1
+ 524:  00 00 00 00     nop
+ 528:  4c 21 08 15     crc32b r1,r1,r1
+ 52c:  00 00 00 00     nop
+ 530:  4c 20 08 26     chkhdr r1,r1
+ 534:  00 00 00 00     nop
+ 538:  4c 00 08 24     avail r1
+ 53c:  00 00 00 00     nop
+ 540:  4c 20 08 25     free r1,r1
+ 544:  00 00 00 00     nop
+ 548:  00 00 00 0e     yield
+ 54c:  00 00 00 00     nop
+ 550:  4c 20 08 27     tstod r1,r1
+ 554:  00 00 00 00     nop
+ 558:  4c 00 08 2c     cmphdr r1
+ 55c:  00 00 00 00     nop
+ 560:  4c 01 08 20     mcid r1,r1
+ 564:  00 00 00 00     nop
+ 568:  4c 00 08 22     dba r1
+ 56c:  00 00 00 00     nop
+ 570:  4c 01 08 21     dbd r1,r0,r1
+ 574:  00 00 00 00     nop
+ 578:  4c 20 08 23     dpwt r1,r1
+ 57c:  00 00 00 00     nop
diff --git a/gas/testsuite/gas/iq2000/q10test0.s b/gas/testsuite/gas/iq2000/q10test0.s
new file mode 100644 (file)
index 0000000..60ba744
--- /dev/null
@@ -0,0 +1,354 @@
+.global _start\r
+_start:\r
+        ADD    %1,%1,%1\r
+        NOP    \r
+        ADDI   %1,%1,0\r
+        NOP    \r
+        ADDIU  %1,%1,0\r
+        NOP    \r
+        ADDU   %1,%1,%1\r
+        NOP    \r
+        ADO16  %1,%1,%1\r
+        NOP    \r
+        AND    %1,%1,%1\r
+        NOP    \r
+        ANDI   %1,%1,0\r
+        NOP    \r
+        ANDOI  %1,%1,0\r
+        NOP    \r
+        ANDOUI %1,%1,0\r
+        NOP    \r
+        LUI    %1,0\r
+        NOP    \r
+        MRGB   %1,%1,%1,0\r
+        NOP    \r
+        NOR    %1,%1,%1\r
+        NOP    \r
+        OR     %1,%1,%1\r
+        NOP    \r
+        ORI    %1,%1,0\r
+        NOP    \r
+        ORUI   %1,%1,0\r
+        NOP    \r
+        SLL    %1,%1,0\r
+        NOP    \r
+        SLLV   %1,%1,%1\r
+        NOP    \r
+        SLT    %1,%1,%1\r
+        NOP    \r
+        SLTI   %1,%1,0\r
+        NOP    \r
+        SLTIU  %1,%1,0\r
+        NOP    \r
+        SLTU   %1,%1,%1\r
+        NOP    \r
+        SRA    %1,%1,0\r
+        NOP    \r
+        SRAV   %1,%1,%1\r
+        NOP    \r
+        SRL    %1,%1,0\r
+        NOP    \r
+        SRLV   %1,%1,%1\r
+        NOP    \r
+        SUB    %1,%1,%1\r
+        NOP    \r
+        SUBU   %1,%1,%1\r
+        NOP    \r
+        XOR    %1,%1,%1\r
+        NOP    \r
+        XORI   %1,%1,0\r
+        NOP    \r
+        NOP    \r
+        NOP    \r
+        SRMV   %1,%1,%1,0\r
+        NOP    \r
+        SLMV   %1,%1,%1,0\r
+        NOP    \r
+        RAM    %1,%1,0,0,0\r
+        NOP    \r
+        BBI    %1(0),_start\r
+        NOP    \r
+        BBIN   %1(0),_start\r
+        NOP    \r
+        BBV    %1,%1,_start\r
+        NOP    \r
+        BBVN   %1,%1,_start\r
+        NOP    \r
+        BBIL   %1(0),_start\r
+        NOP    \r
+        BBINL  %1(0),_start\r
+        NOP    \r
+        BBVL   %1,%1,_start\r
+        NOP    \r
+        BBVNL  %1,%1,_start\r
+        NOP    \r
+        BEQ    %1,%1,_start\r
+        NOP    \r
+        BEQL   %1,%1,_start\r
+        NOP    \r
+        BGEZ   %1,_start\r
+        NOP    \r
+        BGTZAL %1,_start\r
+        NOP    \r
+        BGEZAL %1,_start\r
+        NOP    \r
+        BGTZALL        %1,_start\r
+        NOP    \r
+        BGEZALL        %1,_start\r
+        NOP    \r
+        BGEZL  %1,_start\r
+        NOP    \r
+        BGTZL  %1,_start\r
+        NOP    \r
+        BGTZ   %1,_start\r
+        NOP    \r
+        BLEZ   %1,_start\r
+        NOP    \r
+        BLEZAL %1,_start\r
+        NOP    \r
+        BLTZ   %1,_start\r
+        NOP    \r
+        BLTZAL %1,_start\r
+        NOP    \r
+        BLEZL  %1,_start\r
+        NOP    \r
+        BLTZL  %1,_start\r
+        NOP    \r
+        BLEZALL        %1,_start\r
+        NOP    \r
+        BLTZALL        %1,_start\r
+        NOP    \r
+        BMB    %1,%1,_start\r
+        NOP    \r
+        BMBL   %1,%1,_start\r
+        NOP    \r
+        BMB0   %1,%1,_start\r
+        NOP    \r
+        BMB1   %1,%1,_start\r
+        NOP    \r
+        BMB2   %1,%1,_start\r
+        NOP    \r
+        BMB3   %1,%1,_start\r
+        NOP    \r
+        BNE    %1,%1,_start\r
+        NOP    \r
+        BNEL   %1,%1,_start\r
+        NOP    \r
+        J      0\r
+        NOP    \r
+        JAL    %1,0\r
+        NOP    \r
+        JALR   %1,%1\r
+        NOP    \r
+        JR     %1\r
+        NOP    \r
+        BREAK  \r
+        NOP    \r
+        CTC    %1,%1\r
+        NOP    \r
+        CFC    %1,%1\r
+        NOP    \r
+        LW     %1,0(%1)\r
+        NOP    \r
+        LH     %1,0(%1)\r
+        NOP    \r
+        LB     %1,0(%1)\r
+        NOP    \r
+        LHU    %1,0(%1)\r
+        NOP    \r
+        LBU    %1,0(%1)\r
+        NOP    \r
+        SB     %1,0(%1)\r
+        NOP    \r
+        SH     %1,0(%1)\r
+        NOP    \r
+        SW     %1,0(%1)\r
+        NOP    \r
+        RBA    %1,%1,%1\r
+        NOP    \r
+        RBAR   %1,%1,%1\r
+        NOP    \r
+        RBAL   %1,%1,%1\r
+        NOP    \r
+        WBA    %1,%1,%1\r
+        NOP    \r
+        WBAC   %1,%1,%1\r
+        NOP    \r
+        WBAU   %1,%1,%1\r
+        NOP    \r
+        RBI    %1,%1,%1,0\r
+        NOP    \r
+        RBIR   %1,%1,%1,0\r
+        NOP    \r
+        RBIL   %1,%1,%1,0\r
+        NOP    \r
+        WBI    %1,%1,%1,0\r
+        NOP    \r
+        WBIC   %1,%1,%1,0\r
+        NOP    \r
+        WBIU   %1,%1,%1,0\r
+        NOP    \r
+        PKRLA  %1,%1,%1\r
+        NOP    \r
+        PKRLAC %1,%1,%1\r
+        NOP\r
+        PKRLAH %1,%1,%1\r
+        NOP    \r
+        PKRLAU %1,%1,%1\r
+        NOP    \r
+        PKRLI  %1,%1,%1,0\r
+        NOP    \r
+        PKRLIC %1,%1,%1,0\r
+        NOP    \r
+        PKRLIH %1,%1,%1,0\r
+        NOP    \r
+        PKRLIU %1,%1,%1,0\r
+        NOP    \r
+        LOCK   %1,%1\r
+        NOP    \r
+        UNLK   %1,%1\r
+        NOP    \r
+        SWWR   %1,%1,%1\r
+        NOP    \r
+        SWWRU  %1,%1,%1\r
+        NOP    \r
+        SWRD   %1,%1\r
+        NOP    \r
+        SWRDL  %1,%1\r
+        NOP    \r
+        DWRD   %2,%2\r
+        NOP    \r
+        DWRDL  %2,%2\r
+        NOP    \r
+        CAM36  %1,%1,0,0\r
+        NOP\r
+        CAM72  %1,%1,0,0\r
+        NOP    \r
+        CAM144 %1,%1,0,0\r
+        NOP    \r
+        CAM288 %1,%1,0,0\r
+        NOP    \r
+        CM32AND        %1,%1,%1\r
+        NOP    \r
+        CM32ANDN       %1,%1,%1\r
+        NOP    \r
+        CM32OR %1,%1,%1\r
+        NOP    \r
+        CM32RA %1,%1,%1\r
+        NOP    \r
+        CM32RD %1,%1\r
+        NOP    \r
+        CM32RI %1,%1\r
+        NOP    \r
+        CM32RS %1,%1,%1\r
+        NOP    \r
+        CM32SA %1,%1,%1\r
+        NOP    \r
+        CM32SD %1,%1\r
+        NOP    \r
+        CM32SI %1,%1\r
+        NOP    \r
+        CM32SS %1,%1,%1\r
+        NOP    \r
+        CM32XOR        %1,%1,%1\r
+        NOP    \r
+        CM64CLR        %2,%2\r
+        NOP    \r
+        CM64RA %2,%2,%2\r
+        NOP    \r
+        CM64RD %2,%2\r
+        NOP    \r
+        CM64RI %2,%2\r
+        NOP    \r
+        CM64RIA2       %2,%2,%2\r
+        NOP    \r
+        CM64RS %2,%2,%2\r
+        NOP    \r
+        CM64SA %2,%2,%2\r
+        NOP    \r
+        CM64SD %2,%2\r
+        NOP    \r
+        CM64SI %2,%2\r
+        NOP    \r
+        CM64SIA2       %2,%2,%2\r
+        NOP    \r
+        CM64SS %2,%2,%2\r
+        NOP    \r
+        CM128RIA2      %2,%2,%2\r
+        NOP    \r
+        CM128RIA3      %2,%2,%2,0\r
+        NOP    \r
+        CM128RIA3      %2,%2,%2,1\r
+        NOP    \r
+        CM128RIA3      %2,%2,%2,2\r
+        NOP    \r
+        CM128RIA3      %2,%2,%2,3\r
+        NOP    \r
+        CM128RIA4      %2,%2,%2,0\r
+        NOP    \r
+        CM128RIA4      %2,%2,%2,1\r
+        NOP    \r
+        CM128RIA4      %2,%2,%2,2\r
+        NOP    \r
+        CM128RIA4      %2,%2,%2,3\r
+        NOP    \r
+        CM128RIA4      %2,%2,%2,4\r
+        NOP    \r
+        CM128RIA4      %2,%2,%2,5\r
+        NOP    \r
+        CM128RIA4      %2,%2,%2,6\r
+        NOP    \r
+        CM128RIA4      %2,%2,%2,7\r
+        NOP    \r
+        CM128SIA2      %2,%2,%2\r
+        NOP    \r
+        CM128SIA3      %2,%2,%2,0\r
+        NOP    \r
+        CM128SIA3      %2,%2,%2,1\r
+        NOP    \r
+        CM128SIA3      %2,%2,%2,2\r
+        NOP    \r
+        CM128SIA3      %2,%2,%2,3\r
+        NOP    \r
+        CM128SIA4      %1,%1,%1,0\r
+        NOP    \r
+        CM128SIA4      %1,%1,%1,1\r
+        NOP    \r
+        CM128SIA4      %1,%1,%1,2\r
+        NOP    \r
+        CM128SIA4      %1,%1,%1,3\r
+        NOP    \r
+        CM128SIA4      %1,%1,%1,4\r
+        NOP    \r
+        CM128SIA4      %1,%1,%1,5\r
+        NOP    \r
+        CM128SIA4      %1,%1,%1,6\r
+        NOP    \r
+        CM128SIA4      %1,%1,%1,7\r
+        NOP    \r
+        CM128VSA       %1,%1,%1\r
+        NOP    \r
+        CRC32  %1,%1,%1\r
+        NOP    \r
+        CRC32B %1,%1,%1\r
+        NOP    \r
+        CHKHDR %1,%1\r
+        NOP    \r
+        AVAIL  %1\r
+        NOP    \r
+        FREE   %1,%1\r
+        NOP    \r
+        YIELD\r
+        NOP    \r
+        TSTOD  %1,%1\r
+        NOP    \r
+        CMPHDR %1\r
+        NOP    \r
+        MCID   %1,%1\r
+        NOP    \r
+        DBA    %1\r
+        NOP    \r
+        DBD    %1,%1\r
+        NOP    \r
+        DPWT   %1,%1\r
+        NOP\r
diff --git a/gas/testsuite/gas/iq2000/q10test1.d b/gas/testsuite/gas/iq2000/q10test1.d
new file mode 100644 (file)
index 0000000..97f5cd7
--- /dev/null
@@ -0,0 +1,317 @@
+#as: -m10
+#objdump: -drz
+#name: q10test1
+
+.*: +file format .*
+
+Disassembly of section .text:
+
+00000000 <_start>:
+   0:  03 e1 08 20     add r1,r31,r1
+   4:  00 00 00 00     nop
+   8:  23 e1 00 00     addi r1,r31,0x0
+   c:  00 00 00 00     nop
+  10:  27 e1 00 00     addiu r1,r31,0x0
+  14:  00 00 00 00     nop
+  18:  03 e1 08 21     addu r1,r31,r1
+  1c:  00 00 00 00     nop
+  20:  03 e1 08 29     ado16 r1,r31,r1
+  24:  00 00 00 00     nop
+  28:  03 e1 08 24     and r1,r31,r1
+  2c:  00 00 00 00     nop
+  30:  33 e1 00 00     andi r1,r31,0x0
+  34:  00 00 00 00     nop
+  38:  b3 e1 00 00     andoi r1,r31,0x0
+  3c:  00 00 00 00     nop
+  40:  bf e1 00 00     andoui r1,r31,0x0
+  44:  00 00 00 00     nop
+  48:  3c 01 00 00     lui r1,0x0
+  4c:  00 00 00 00     nop
+  50:  03 e1 08 2d     mrgb r1,r31,r1,0x0
+  54:  00 00 00 00     nop
+  58:  03 e1 08 27     nor r1,r31,r1
+  5c:  00 00 00 00     nop
+  60:  03 e1 08 25     or r1,r31,r1
+  64:  00 00 00 00     nop
+  68:  37 e1 00 00     ori r1,r31,0x0
+  6c:  00 00 00 00     nop
+  70:  3f e1 00 00     orui r1,r31,0x0
+  74:  00 00 00 00     nop
+  78:  00 01 08 00     sll r1,r1,0x0
+  7c:  00 00 00 00     nop
+  80:  03 e1 08 04     sllv r1,r1,r31
+  84:  00 00 00 00     nop
+  88:  03 e1 08 2a     slt r1,r31,r1
+  8c:  00 00 00 00     nop
+  90:  2b e1 00 00     slti r1,r31,0x0
+  94:  00 00 00 00     nop
+  98:  2f e1 00 00     sltiu r1,r31,0x0
+  9c:  00 00 00 00     nop
+  a0:  03 e1 08 2b     sltu r1,r31,r1
+  a4:  00 00 00 00     nop
+  a8:  00 01 08 03     sra r1,r1,0x0
+  ac:  00 00 00 00     nop
+  b0:  03 e1 08 07     srav r1,r1,r31
+  b4:  00 00 00 00     nop
+  b8:  00 01 08 02     srl r1,r1,0x0
+  bc:  00 00 00 00     nop
+  c0:  03 e1 08 06     srlv r1,r1,r31
+  c4:  00 00 00 00     nop
+  c8:  03 e1 08 22     sub r1,r31,r1
+  cc:  00 00 00 00     nop
+  d0:  03 e1 08 23     subu r1,r31,r1
+  d4:  00 00 00 00     nop
+  d8:  03 e1 08 26     xor r1,r31,r1
+  dc:  00 00 00 00     nop
+  e0:  3b e1 00 00     xori r1,r31,0x0
+  e4:  00 00 00 00     nop
+  e8:  00 00 00 00     nop
+  ec:  00 00 00 00     nop
+  f0:  00 3f 08 05     srmv r1,r31,r1,0x0
+  f4:  00 00 00 00     nop
+  f8:  00 3f 08 01     slmv r1,r31,r1,0x0
+  fc:  00 00 00 00     nop
+ 100:  9c 01 08 00     ram r1,r1,0x0,0x0,0x0
+ 104:  00 00 00 00     nop
+ 108:  73 e0 ff bd     bbi r31\(0x0\),0 <_start>
+ 10c:  00 00 00 00     nop
+ 110:  7b e0 ff bb     bbin r31\(0x0\),0 <_start>
+ 114:  00 00 00 00     nop
+ 118:  77 e1 ff b9     bbv r31,r1,0 <_start>
+ 11c:  00 00 00 00     nop
+ 120:  7f e1 ff b7     bbvn r31,r1,0 <_start>
+ 124:  00 00 00 00     nop
+ 128:  f3 e0 ff b5     bbil r31\(0x0\),0 <_start>
+ 12c:  00 00 00 00     nop
+ 130:  fb e0 ff b3     bbinl r31\(0x0\),0 <_start>
+ 134:  00 00 00 00     nop
+ 138:  f7 e1 ff b1     bbvl r31,r1,0 <_start>
+ 13c:  00 00 00 00     nop
+ 140:  ff e1 ff af     bbvnl r31,r1,0 <_start>
+ 144:  00 00 00 00     nop
+ 148:  13 e1 ff ad     beq r31,r1,0 <_start>
+ 14c:  00 00 00 00     nop
+ 150:  53 e1 ff ab     beql r31,r1,0 <_start>
+ 154:  00 00 00 00     nop
+ 158:  07 e1 ff a9     bgez r31,0 <_start>
+ 15c:  00 00 00 00     nop
+ 160:  07 f5 ff a7     bgtzal r31,0 <_start>
+ 164:  00 00 00 00     nop
+ 168:  07 f1 ff a5     bgezal r31,0 <_start>
+ 16c:  00 00 00 00     nop
+ 170:  07 f7 ff a3     bgtzall r31,0 <_start>
+ 174:  00 00 00 00     nop
+ 178:  07 f3 ff a1     bgezall r31,0 <_start>
+ 17c:  00 00 00 00     nop
+ 180:  07 e3 ff 9f     bgezl r31,0 <_start>
+ 184:  00 00 00 00     nop
+ 188:  07 e7 ff 9d     bgtzl r31,0 <_start>
+ 18c:  00 00 00 00     nop
+ 190:  07 e5 ff 9b     bgtz r31,0 <_start>
+ 194:  00 00 00 00     nop
+ 198:  07 e4 ff 99     blez r31,0 <_start>
+ 19c:  00 00 00 00     nop
+ 1a0:  07 f4 ff 97     blezal r31,0 <_start>
+ 1a4:  00 00 00 00     nop
+ 1a8:  07 e0 ff 95     bltz r31,0 <_start>
+ 1ac:  00 00 00 00     nop
+ 1b0:  07 f0 ff 93     bltzal r31,0 <_start>
+ 1b4:  00 00 00 00     nop
+ 1b8:  07 e6 ff 91     blezl r31,0 <_start>
+ 1bc:  00 00 00 00     nop
+ 1c0:  07 e2 ff 8f     bltzl r31,0 <_start>
+ 1c4:  00 00 00 00     nop
+ 1c8:  07 f6 ff 8d     blezall r31,0 <_start>
+ 1cc:  00 00 00 00     nop
+ 1d0:  07 f2 ff 8b     bltzall r31,0 <_start>
+ 1d4:  00 00 00 00     nop
+ 1d8:  1b e1 ff 89     bmb r31,r1,0 <_start>
+ 1dc:  00 00 00 00     nop
+ 1e0:  5b e1 ff 87     bmbl r31,r1,0 <_start>
+ 1e4:  00 00 00 00     nop
+ 1e8:  63 e1 ff 85     bmb0 r31,r1,0 <_start>
+ 1ec:  00 00 00 00     nop
+ 1f0:  67 e1 ff 83     bmb1 r31,r1,0 <_start>
+ 1f4:  00 00 00 00     nop
+ 1f8:  6b e1 ff 81     bmb2 r31,r1,0 <_start>
+ 1fc:  00 00 00 00     nop
+ 200:  6f e1 ff 7f     bmb3 r31,r1,0 <_start>
+ 204:  00 00 00 00     nop
+ 208:  17 e1 ff 7d     bne r31,r1,0 <_start>
+ 20c:  00 00 00 00     nop
+ 210:  57 e1 ff 7b     bnel r31,r1,0 <_start>
+ 214:  00 00 00 00     nop
+ 218:  08 00 00 00     j 0 <_start>
+ 21c:  00 00 00 00     nop
+ 220:  0c 1f 00 00     jal 0 <_start>
+ 224:  00 00 00 00     nop
+ 228:  03 e0 08 09     jalr r1,r31
+ 22c:  00 00 00 00     nop
+ 230:  03 e0 00 08     jr r31
+ 234:  00 00 00 00     nop
+ 238:  00 00 00 0d     break
+ 23c:  00 00 00 00     nop
+ 240:  4f e1 00 02     ctc r31,r1
+ 244:  00 00 00 00     nop
+ 248:  4c 01 08 00     cfc r1,r1
+ 24c:  00 00 00 00     nop
+ 250:  8f e1 00 00     lw r1,0x0\(r31\)
+ 254:  00 00 00 00     nop
+ 258:  87 e1 00 00     lh r1,0x0\(r31\)
+ 25c:  00 00 00 00     nop
+ 260:  83 e1 00 00     lb r1,0x0\(r31\)
+ 264:  00 00 00 00     nop
+ 268:  97 e1 00 00     lhu r1,0x0\(r31\)
+ 26c:  00 00 00 00     nop
+ 270:  93 e1 00 00     lbu r1,0x0\(r31\)
+ 274:  00 00 00 00     nop
+ 278:  a3 e1 00 00     sb r1,0x0\(r31\)
+ 27c:  00 00 00 00     nop
+ 280:  a7 e1 00 00     sh r1,0x0\(r31\)
+ 284:  00 00 00 00     nop
+ 288:  af e1 00 00     sw r1,0x0\(r31\)
+ 28c:  00 00 00 00     nop
+ 290:  4c 21 f8 08     rba r31,r1,r1
+ 294:  00 00 00 00     nop
+ 298:  4c 21 f8 0a     rbar r31,r1,r1
+ 29c:  00 00 00 00     nop
+ 2a0:  4c 21 f8 09     rbal r31,r1,r1
+ 2a4:  00 00 00 00     nop
+ 2a8:  4c 21 f8 10     wba r31,r1,r1
+ 2ac:  00 00 00 00     nop
+ 2b0:  4c 21 f8 12     wbac r31,r1,r1
+ 2b4:  00 00 00 00     nop
+ 2b8:  4c 21 f8 11     wbau r31,r1,r1
+ 2bc:  00 00 00 00     nop
+ 2c0:  4c 21 fa 00     rbi r31,r1,r1,0x0
+ 2c4:  00 00 00 00     nop
+ 2c8:  4c 21 f9 00     rbir r31,r1,r1,0x0
+ 2cc:  00 00 00 00     nop
+ 2d0:  4c 21 fb 00     rbil r31,r1,r1,0x0
+ 2d4:  00 00 00 00     nop
+ 2d8:  4c 21 fe 00     wbi r31,r1,r1,0x0
+ 2dc:  00 00 00 00     nop
+ 2e0:  4c 21 fd 00     wbic r31,r1,r1,0x0
+ 2e4:  00 00 00 00     nop
+ 2e8:  4c 21 ff 00     wbiu r31,r1,r1,0x0
+ 2ec:  00 00 00 00     nop
+ 2f0:  4c 21 f8 28     pkrla r31,r1,r1
+ 2f4:  00 00 00 00     nop
+ 2f8:  4c 21 f8 2a     pkrlah r31,r1,r1
+ 2fc:  00 00 00 00     nop
+ 300:  4c 21 f8 29     pkrlau r31,r1,r1
+ 304:  00 00 00 00     nop
+ 308:  48 21 f8 00     pkrli r31,r1,r1,0x0
+ 30c:  00 00 00 00     nop
+ 310:  48 21 fa 00     pkrlih r31,r1,r1,0x0
+ 314:  00 00 00 00     nop
+ 318:  48 21 f9 00     pkrliu r31,r1,r1,0x0
+ 31c:  00 00 00 00     nop
+ 320:  4c 01 08 01     lock r1,r1
+ 324:  00 00 00 00     nop
+ 328:  4c 01 08 03     unlk r1,r1
+ 32c:  00 00 00 00     nop
+ 330:  4c 21 f8 06     swwr r31,r1,r1
+ 334:  00 00 00 00     nop
+ 338:  4c 21 f8 07     swwru r31,r1,r1
+ 33c:  00 00 00 00     nop
+ 340:  4c 01 08 04     swrd r1,r1
+ 344:  00 00 00 00     nop
+ 348:  4c 01 08 05     swrdl r1,r1
+ 34c:  00 00 00 00     nop
+ 350:  4c 02 10 0c     dwrd r2,r2
+ 354:  00 00 00 00     nop
+ 358:  4c 02 10 0d     dwrdl r2,r2
+ 35c:  00 00 00 00     nop
+ 360:  4c 1f 0c 08     cam36 r1,r31,0x1,0x0
+ 364:  00 00 00 00     nop
+ 368:  4c 1f 0c 41     cam72 r1,r31,0x1,0x0
+ 36c:  00 00 00 00     nop
+ 370:  4c 1f 0c 81     cam144 r1,r31,0x1,0x0
+ 374:  00 00 00 00     nop
+ 378:  4c 1f 0c c1     cam288 r1,r31,0x1,0x0
+ 37c:  00 00 00 00     nop
+ 380:  4f e1 08 ab     cm32and r1,r31,r1
+ 384:  00 00 00 00     nop
+ 388:  4f e1 08 a3     cm32andn r1,r31,r1
+ 38c:  00 00 00 00     nop
+ 390:  4f e1 08 aa     cm32or r1,r31,r1
+ 394:  00 00 00 00     nop
+ 398:  4f e1 08 b0     cm32ra r1,r31,r1
+ 39c:  00 00 00 00     nop
+ 3a0:  4c 01 08 a1     cm32rd r1,r1
+ 3a4:  00 00 00 00     nop
+ 3a8:  4c 01 08 a4     cm32ri r1,r1
+ 3ac:  00 00 00 00     nop
+ 3b0:  4f e1 08 a0     cm32rs r1,r31,r1
+ 3b4:  00 00 00 00     nop
+ 3b8:  4f e1 08 b8     cm32sa r1,r31,r1
+ 3bc:  00 00 00 00     nop
+ 3c0:  4c 01 08 a9     cm32sd r1,r1
+ 3c4:  00 00 00 00     nop
+ 3c8:  4c 01 08 ac     cm32si r1,r1
+ 3cc:  00 00 00 00     nop
+ 3d0:  4f e1 08 a8     cm32ss r1,r31,r1
+ 3d4:  00 00 00 00     nop
+ 3d8:  4f e1 08 a2     cm32xor r1,r31,r1
+ 3dc:  00 00 00 00     nop
+ 3e0:  4c 02 10 85     cm64clr r2,r2
+ 3e4:  00 00 00 00     nop
+ 3e8:  4f e2 10 90     cm64ra r2,r31,r2
+ 3ec:  00 00 00 00     nop
+ 3f0:  4c 02 10 81     cm64rd r2,r2
+ 3f4:  00 00 00 00     nop
+ 3f8:  4c 02 10 84     cm64ri r2,r2
+ 3fc:  00 00 00 00     nop
+ 400:  4f e2 10 94     cm64ria2 r2,r31,r2
+ 404:  00 00 00 00     nop
+ 408:  4f e2 10 80     cm64rs r2,r31,r2
+ 40c:  00 00 00 00     nop
+ 410:  4f e2 10 98     cm64sa r2,r31,r2
+ 414:  00 00 00 00     nop
+ 418:  4c 02 10 89     cm64sd r2,r2
+ 41c:  00 00 00 00     nop
+ 420:  4c 02 10 8c     cm64si r2,r2
+ 424:  00 00 00 00     nop
+ 428:  4f e2 10 9c     cm64sia2 r2,r31,r2
+ 42c:  00 00 00 00     nop
+ 430:  4f e2 10 88     cm64ss r2,r31,r2
+ 434:  00 00 00 00     nop
+ 438:  4f e2 10 95     cm128ria2 r2,r31,r2
+ 43c:  00 00 00 00     nop
+ 440:  4f e2 10 90     cm64ra r2,r31,r2
+ 444:  00 00 00 00     nop
+ 448:  4f e2 10 b1     cm128ria4 r2,r31,r2,0x1
+ 44c:  00 00 00 00     nop
+ 450:  4f e2 10 9d     cm128sia2 r2,r31,r2
+ 454:  00 00 00 00     nop
+ 458:  4f e2 10 98     cm64sa r2,r31,r2
+ 45c:  00 00 00 00     nop
+ 460:  4f e1 08 b8     cm32sa r1,r31,r1
+ 464:  00 00 00 00     nop
+ 468:  4f e1 08 a6     cm128vsa r1,r31,r1
+ 46c:  00 00 00 00     nop
+ 470:  4f e1 08 14     crc32 r1,r31,r1
+ 474:  00 00 00 00     nop
+ 478:  4f e1 08 15     crc32b r1,r31,r1
+ 47c:  00 00 00 00     nop
+ 480:  4c 20 08 26     chkhdr r1,r1
+ 484:  00 00 00 00     nop
+ 488:  4c 00 08 24     avail r1
+ 48c:  00 00 00 00     nop
+ 490:  4c 20 08 25     free r1,r1
+ 494:  00 00 00 00     nop
+ 498:  4f e0 08 27     tstod r1,r31
+ 49c:  00 00 00 00     nop
+ 4a0:  00 00 00 0e     yield
+ 4a4:  00 00 00 00     nop
+ 4a8:  4c 00 08 2c     cmphdr r1
+ 4ac:  00 00 00 00     nop
+ 4b0:  4c 01 08 20     mcid r1,r1
+ 4b4:  00 00 00 00     nop
+ 4b8:  4c 00 f8 22     dba r31
+ 4bc:  00 00 00 00     nop
+ 4c0:  4c 01 08 21     dbd r1,r0,r1
+ 4c4:  00 00 00 00     nop
+ 4c8:  4c 20 08 23     dpwt r1,r1
+ 4cc:  00 00 00 00     nop
diff --git a/gas/testsuite/gas/iq2000/q10test1.s b/gas/testsuite/gas/iq2000/q10test1.s
new file mode 100644 (file)
index 0000000..7505230
--- /dev/null
@@ -0,0 +1,310 @@
+.global _start\r
+_start:\r
+        ADD    %1,%31,%1\r
+        NOP    \r
+        ADDI   %1,%31,0\r
+        NOP    \r
+        ADDIU  %1,%31,0\r
+        NOP    \r
+        ADDU   %1,%31,%1\r
+        NOP    \r
+        ADO16  %1,%31,%1\r
+        NOP    \r
+        AND    %1,%31,%1\r
+        NOP    \r
+        ANDI   %1,%31,0\r
+        NOP    \r
+        ANDOI  %1,%31,0\r
+        NOP    \r
+        ANDOUI %1,%31,0\r
+        NOP    \r
+        LUI    %1,0\r
+        NOP    \r
+        MRGB   %1,%31,%1,0\r
+        NOP    \r
+        NOR    %1,%31,%1\r
+        NOP    \r
+        OR     %1,%31,%1\r
+        NOP    \r
+        ORI    %1,%31,0\r
+        NOP    \r
+        ORUI   %1,%31,0\r
+        NOP    \r
+        SLL    %1,%1,0\r
+        NOP    \r
+        SLLV   %1,%1,%31\r
+        NOP    \r
+        SLT    %1,%31,%1\r
+        NOP    \r
+        SLTI   %1,%31,0\r
+        NOP    \r
+        SLTIU  %1,%31,0\r
+        NOP    \r
+        SLTU   %1,%31,%1\r
+        NOP    \r
+        SRA    %1,%1,0\r
+        NOP    \r
+        SRAV   %1,%1,%31\r
+        NOP    \r
+        SRL    %1,%1,0\r
+        NOP    \r
+        SRLV   %1,%1,%31\r
+        NOP    \r
+        SUB    %1,%31,%1\r
+        NOP    \r
+        SUBU   %1,%31,%1\r
+        NOP    \r
+        XOR    %1,%31,%1\r
+        NOP    \r
+        XORI   %1,%31,0\r
+        NOP    \r
+        NOP    \r
+        NOP    \r
+        SRMV   %1,%31,%1,0\r
+        NOP    \r
+        SLMV   %1,%31,%1,0\r
+        NOP    \r
+        RAM    %1,%1,0,0,0\r
+        NOP    \r
+        BBI    %31(0),_start\r
+        NOP    \r
+        BBIN   %31(0),_start\r
+        NOP    \r
+        BBV    %31,%1,_start\r
+        NOP    \r
+        BBVN   %31,%1,_start\r
+        NOP    \r
+        BBIL   %31(0),_start\r
+        NOP    \r
+        BBINL  %31(0),_start\r
+        NOP    \r
+        BBVL   %31,%1,_start\r
+        NOP    \r
+        BBVNL  %31,%1,_start\r
+        NOP    \r
+        BEQ    %31,%1,_start\r
+        NOP    \r
+        BEQL   %31,%1,_start\r
+        NOP    \r
+        BGEZ   %31,_start\r
+        NOP    \r
+        BGTZAL %31,_start\r
+        NOP    \r
+        BGEZAL %31,_start\r
+        NOP    \r
+        BGTZALL        %31,_start\r
+        NOP    \r
+        BGEZALL        %31,_start\r
+        NOP    \r
+        BGEZL  %31,_start\r
+        NOP    \r
+        BGTZL  %31,_start\r
+        NOP    \r
+        BGTZ   %31,_start\r
+        NOP    \r
+        BLEZ   %31,_start\r
+        NOP    \r
+        BLEZAL %31,_start\r
+        NOP    \r
+        BLTZ   %31,_start\r
+        NOP    \r
+        BLTZAL %31,_start\r
+        NOP    \r
+        BLEZL  %31,_start\r
+        NOP    \r
+        BLTZL  %31,_start\r
+        NOP    \r
+        BLEZALL        %31,_start\r
+        NOP    \r
+        BLTZALL        %31,_start\r
+        NOP    \r
+        BMB    %31,%1,_start\r
+        NOP    \r
+        BMBL   %31,%1,_start\r
+        NOP    \r
+        BMB0   %31,%1,_start\r
+        NOP    \r
+        BMB1   %31,%1,_start\r
+        NOP    \r
+        BMB2   %31,%1,_start\r
+        NOP    \r
+        BMB3   %31,%1,_start\r
+        NOP    \r
+        BNE    %31,%1,_start\r
+        NOP    \r
+        BNEL   %31,%1,_start\r
+        NOP    \r
+        J      0\r
+        NOP    \r
+        JAL    %31,0\r
+        NOP    \r
+        JALR   %1,%31\r
+        NOP    \r
+        JR     %31\r
+        NOP    \r
+        BREAK  \r
+        NOP    \r
+        CTC    %31,%1\r
+        NOP    \r
+        CFC    %1,%1\r
+        NOP    \r
+        LW     %1,0(%31)\r
+        NOP    \r
+        LH     %1,0(%31)\r
+        NOP    \r
+        LB     %1,0(%31)\r
+        NOP    \r
+        LHU    %1,0(%31)\r
+        NOP    \r
+        LBU    %1,0(%31)\r
+        NOP    \r
+        SB     %1,0(%31)\r
+        NOP    \r
+        SH     %1,0(%31)\r
+        NOP    \r
+        SW     %1,0(%31)\r
+        NOP    \r
+        RBA    %31,%1,%1\r
+        NOP    \r
+        RBAR   %31,%1,%1\r
+        NOP    \r
+        RBAL   %31,%1,%1\r
+        NOP    \r
+        WBA    %31,%1,%1\r
+        NOP    \r
+        WBAC   %31,%1,%1\r
+        NOP    \r
+        WBAU   %31,%1,%1\r
+        NOP    \r
+        RBI    %31,%1,%1,0\r
+        NOP    \r
+        RBIR   %31,%1,%1,0\r
+        NOP    \r
+        RBIL   %31,%1,%1,0\r
+        NOP    \r
+        WBI    %31,%1,%1,0\r
+        NOP    \r
+        WBIC   %31,%1,%1,0\r
+        NOP    \r
+        WBIU   %31,%1,%1,0\r
+        NOP    \r
+        PKRLA  %31,%1,%1\r
+        NOP    \r
+        PKRLAH %31,%1,%1\r
+        NOP    \r
+        PKRLAU %31,%1,%1\r
+        NOP    \r
+        PKRLI  %31,%1,%1,0\r
+        NOP    \r
+        PKRLIH %31,%1,%1,0\r
+        NOP    \r
+        PKRLIU %31,%1,%1,0\r
+        NOP    \r
+        LOCK   %1,%1\r
+        NOP    \r
+        UNLK   %1,%1\r
+        NOP    \r
+        SWWR   %31,%1,%1\r
+        NOP    \r
+        SWWRU  %31,%1,%1\r
+        NOP    \r
+        SWRD   %1,%1\r
+        NOP    \r
+        SWRDL  %1,%1\r
+        NOP    \r
+        DWRD   %2,%2\r
+        NOP    \r
+        DWRDL  %2,%2\r
+        NOP    \r
+        CAM36  %1,%31,1,0\r
+        NOP    \r
+        CAM72  %1,%31,1,0\r
+        NOP    \r
+        CAM144 %1,%31,1,0\r
+        NOP    \r
+        CAM288 %1,%31,1,0\r
+        NOP    \r
+        CM32AND        %1,%31,%1\r
+        NOP    \r
+        CM32ANDN       %1,%31,%1\r
+        NOP    \r
+        CM32OR %1,%31,%1\r
+        NOP    \r
+        CM32RA %1,%31,%1\r
+        NOP    \r
+        CM32RD %1,%1\r
+        NOP    \r
+        CM32RI %1,%1\r
+        NOP    \r
+        CM32RS %1,%31,%1\r
+        NOP    \r
+        CM32SA %1,%31,%1\r
+        NOP    \r
+        CM32SD %1,%1\r
+        NOP    \r
+        CM32SI %1,%1\r
+        NOP    \r
+        CM32SS %1,%31,%1\r
+        NOP    \r
+        CM32XOR        %1,%31,%1\r
+        NOP    \r
+        CM64CLR        %2,%2\r
+        NOP    \r
+        CM64RA %2,%31,%2\r
+        NOP    \r
+        CM64RD %2,%2\r
+        NOP    \r
+        CM64RI %2,%2\r
+        NOP    \r
+        CM64RIA2       %2,%31,%2\r
+        NOP    \r
+        CM64RS %2,%31,%2\r
+        NOP    \r
+        CM64SA %2,%31,%2\r
+        NOP    \r
+        CM64SD %2,%2\r
+        NOP    \r
+        CM64SI %2,%2\r
+        NOP    \r
+        CM64SIA2       %2,%31,%2\r
+        NOP    \r
+        CM64SS %2,%31,%2\r
+        NOP    \r
+        CM128RIA2      %2,%31,%2\r
+        NOP    \r
+        CM128RIA3      %2,%31,%2,0\r
+        NOP    \r
+        CM128RIA4      %2,%31,%2,1\r
+        NOP    \r
+        CM128SIA2      %2,%31,%2\r
+        NOP    \r
+        CM128SIA3      %2,%31,%2,0\r
+        NOP    \r
+        CM128SIA4      %1,%31,%1,0\r
+        NOP    \r
+        CM128VSA       %1,%31,%1\r
+        NOP    \r
+        CRC32  %1,%31,%1\r
+        NOP    \r
+        CRC32B %1,%31,%1\r
+        NOP    \r
+        CHKHDR %1,%1\r
+        NOP    \r
+        AVAIL  %1\r
+        NOP    \r
+        FREE   %1,%1\r
+        NOP    \r
+        TSTOD  %1,%31\r
+        NOP    \r
+        YIELD\r
+        NOP    \r
+        CMPHDR %1\r
+        NOP    \r
+        MCID   %1,%1\r
+        NOP    \r
+        DBA    %31\r
+        NOP    \r
+        DBD    %1,%1\r
+        NOP    \r
+        DPWT   %1,%1\r
+        NOP    \r
diff --git a/gas/testsuite/gas/iq2000/q10test10.d b/gas/testsuite/gas/iq2000/q10test10.d
new file mode 100644 (file)
index 0000000..422e0b7
--- /dev/null
@@ -0,0 +1,301 @@
+#as: -m10
+#objdump: -drz
+#name: q10test10
+
+.*: +file format .*
+
+Disassembly of section .text:
+
+00000000 <_start>:
+   0:  00 21 08 20     add r1,r1,r1
+   4:  00 00 00 00     nop
+   8:  20 21 00 00     addi r1,r1,0x0
+   c:  00 00 00 00     nop
+  10:  24 21 00 00     addiu r1,r1,0x0
+  14:  00 00 00 00     nop
+  18:  00 21 08 21     addu r1,r1,r1
+  1c:  00 00 00 00     nop
+  20:  00 21 08 29     ado16 r1,r1,r1
+  24:  00 00 00 00     nop
+  28:  00 21 08 24     and r1,r1,r1
+  2c:  00 00 00 00     nop
+  30:  30 21 00 00     andi r1,r1,0x0
+  34:  00 00 00 00     nop
+  38:  b0 21 00 00     andoi r1,r1,0x0
+  3c:  00 00 00 00     nop
+  40:  bc 21 00 00     andoui r1,r1,0x0
+  44:  00 00 00 00     nop
+  48:  3c 01 00 00     lui r1,0x0
+  4c:  00 00 00 00     nop
+  50:  00 21 0f ed     mrgb r1,r1,r1,0x1f
+  54:  00 00 00 00     nop
+  58:  00 21 08 27     nor r1,r1,r1
+  5c:  00 00 00 00     nop
+  60:  00 21 08 25     or r1,r1,r1
+  64:  00 00 00 00     nop
+  68:  34 21 00 00     ori r1,r1,0x0
+  6c:  00 00 00 00     nop
+  70:  3c 21 00 00     orui r1,r1,0x0
+  74:  00 00 00 00     nop
+  78:  00 01 08 00     sll r1,r1,0x0
+  7c:  00 00 00 00     nop
+  80:  00 21 08 04     sllv r1,r1,r1
+  84:  00 00 00 00     nop
+  88:  00 21 08 2a     slt r1,r1,r1
+  8c:  00 00 00 00     nop
+  90:  28 21 00 00     slti r1,r1,0x0
+  94:  00 00 00 00     nop
+  98:  2c 21 00 00     sltiu r1,r1,0x0
+  9c:  00 00 00 00     nop
+  a0:  00 21 08 2b     sltu r1,r1,r1
+  a4:  00 00 00 00     nop
+  a8:  00 01 08 03     sra r1,r1,0x0
+  ac:  00 00 00 00     nop
+  b0:  00 21 08 07     srav r1,r1,r1
+  b4:  00 00 00 00     nop
+  b8:  00 01 08 02     srl r1,r1,0x0
+  bc:  00 00 00 00     nop
+  c0:  00 21 08 06     srlv r1,r1,r1
+  c4:  00 00 00 00     nop
+  c8:  00 21 08 22     sub r1,r1,r1
+  cc:  00 00 00 00     nop
+  d0:  00 21 08 23     subu r1,r1,r1
+  d4:  00 00 00 00     nop
+  d8:  00 21 08 26     xor r1,r1,r1
+  dc:  00 00 00 00     nop
+  e0:  38 21 00 00     xori r1,r1,0x0
+  e4:  00 00 00 00     nop
+  e8:  00 00 00 00     nop
+  ec:  00 00 00 00     nop
+  f0:  00 21 08 05     srmv r1,r1,r1,0x0
+  f4:  00 00 00 00     nop
+  f8:  00 21 08 01     slmv r1,r1,r1,0x0
+  fc:  00 00 00 00     nop
+ 100:  9c 21 08 01     ram r1,r1,0x0,0x1,0x1
+ 104:  00 00 00 00     nop
+ 108:  70 20 ff bd     bbi r1\(0x0\),0 <_start>
+ 10c:  00 00 00 00     nop
+ 110:  78 20 ff bb     bbin r1\(0x0\),0 <_start>
+ 114:  00 00 00 00     nop
+ 118:  74 21 ff b9     bbv r1,r1,0 <_start>
+ 11c:  00 00 00 00     nop
+ 120:  7c 21 ff b7     bbvn r1,r1,0 <_start>
+ 124:  00 00 00 00     nop
+ 128:  f0 20 ff b5     bbil r1\(0x0\),0 <_start>
+ 12c:  00 00 00 00     nop
+ 130:  f8 20 ff b3     bbinl r1\(0x0\),0 <_start>
+ 134:  00 00 00 00     nop
+ 138:  f4 21 ff b1     bbvl r1,r1,0 <_start>
+ 13c:  00 00 00 00     nop
+ 140:  fc 21 ff af     bbvnl r1,r1,0 <_start>
+ 144:  00 00 00 00     nop
+ 148:  10 21 ff ad     beq r1,r1,0 <_start>
+ 14c:  00 00 00 00     nop
+ 150:  50 21 ff ab     beql r1,r1,0 <_start>
+ 154:  00 00 00 00     nop
+ 158:  04 21 ff a9     bgez r1,0 <_start>
+ 15c:  00 00 00 00     nop
+ 160:  04 35 ff a7     bgtzal r1,0 <_start>
+ 164:  00 00 00 00     nop
+ 168:  04 31 ff a5     bgezal r1,0 <_start>
+ 16c:  00 00 00 00     nop
+ 170:  04 37 ff a3     bgtzall r1,0 <_start>
+ 174:  00 00 00 00     nop
+ 178:  04 33 ff a1     bgezall r1,0 <_start>
+ 17c:  00 00 00 00     nop
+ 180:  04 23 ff 9f     bgezl r1,0 <_start>
+ 184:  00 00 00 00     nop
+ 188:  04 27 ff 9d     bgtzl r1,0 <_start>
+ 18c:  00 00 00 00     nop
+ 190:  04 25 ff 9b     bgtz r1,0 <_start>
+ 194:  00 00 00 00     nop
+ 198:  04 24 ff 99     blez r1,0 <_start>
+ 19c:  00 00 00 00     nop
+ 1a0:  04 34 ff 97     blezal r1,0 <_start>
+ 1a4:  00 00 00 00     nop
+ 1a8:  04 20 ff 95     bltz r1,0 <_start>
+ 1ac:  00 00 00 00     nop
+ 1b0:  04 30 ff 93     bltzal r1,0 <_start>
+ 1b4:  00 00 00 00     nop
+ 1b8:  04 26 ff 91     blezl r1,0 <_start>
+ 1bc:  00 00 00 00     nop
+ 1c0:  04 22 ff 8f     bltzl r1,0 <_start>
+ 1c4:  00 00 00 00     nop
+ 1c8:  04 36 ff 8d     blezall r1,0 <_start>
+ 1cc:  00 00 00 00     nop
+ 1d0:  04 32 ff 8b     bltzall r1,0 <_start>
+ 1d4:  00 00 00 00     nop
+ 1d8:  18 21 ff 89     bmb r1,r1,0 <_start>
+ 1dc:  00 00 00 00     nop
+ 1e0:  58 21 ff 87     bmbl r1,r1,0 <_start>
+ 1e4:  00 00 00 00     nop
+ 1e8:  60 21 ff 85     bmb0 r1,r1,0 <_start>
+ 1ec:  00 00 00 00     nop
+ 1f0:  64 21 ff 83     bmb1 r1,r1,0 <_start>
+ 1f4:  00 00 00 00     nop
+ 1f8:  68 21 ff 81     bmb2 r1,r1,0 <_start>
+ 1fc:  00 00 00 00     nop
+ 200:  6c 21 ff 7f     bmb3 r1,r1,0 <_start>
+ 204:  00 00 00 00     nop
+ 208:  14 21 ff 7d     bne r1,r1,0 <_start>
+ 20c:  00 00 00 00     nop
+ 210:  54 21 ff 7b     bnel r1,r1,0 <_start>
+ 214:  00 00 00 00     nop
+ 218:  08 00 00 00     j 0 <_start>
+ 21c:  00 00 00 00     nop
+ 220:  0c 01 00 00     jal r1,0 <_start>
+ 224:  00 00 00 00     nop
+ 228:  00 20 08 09     jalr r1,r1
+ 22c:  00 00 00 00     nop
+ 230:  00 20 00 08     jr r1
+ 234:  00 00 00 00     nop
+ 238:  00 00 00 0d     break
+ 23c:  00 00 00 00     nop
+ 240:  4c 21 00 02     ctc r1,r1
+ 244:  00 00 00 00     nop
+ 248:  4c 01 08 00     cfc r1,r1
+ 24c:  00 00 00 00     nop
+ 250:  8c 21 00 00     lw r1,0x0\(r1\)
+ 254:  00 00 00 00     nop
+ 258:  84 21 00 00     lh r1,0x0\(r1\)
+ 25c:  00 00 00 00     nop
+ 260:  80 21 00 00     lb r1,0x0\(r1\)
+ 264:  00 00 00 00     nop
+ 268:  94 21 00 00     lhu r1,0x0\(r1\)
+ 26c:  00 00 00 00     nop
+ 270:  90 21 00 00     lbu r1,0x0\(r1\)
+ 274:  00 00 00 00     nop
+ 278:  a0 21 00 00     sb r1,0x0\(r1\)
+ 27c:  00 00 00 00     nop
+ 280:  a4 21 00 00     sh r1,0x0\(r1\)
+ 284:  00 00 00 00     nop
+ 288:  ac 21 00 00     sw r1,0x0\(r1\)
+ 28c:  00 00 00 00     nop
+ 290:  4c 21 08 08     rba r1,r1,r1
+ 294:  00 00 00 00     nop
+ 298:  4c 21 08 0a     rbar r1,r1,r1
+ 29c:  00 00 00 00     nop
+ 2a0:  4c 21 08 09     rbal r1,r1,r1
+ 2a4:  00 00 00 00     nop
+ 2a8:  4c 21 08 10     wba r1,r1,r1
+ 2ac:  00 00 00 00     nop
+ 2b0:  4c 21 08 12     wbac r1,r1,r1
+ 2b4:  00 00 00 00     nop
+ 2b8:  4c 21 08 11     wbau r1,r1,r1
+ 2bc:  00 00 00 00     nop
+ 2c0:  4c 21 0a ff     rbi r1,r1,r1,0xff
+ 2c4:  00 00 00 00     nop
+ 2c8:  4c 21 09 ff     rbir r1,r1,r1,0xff
+ 2cc:  00 00 00 00     nop
+ 2d0:  4c 21 0b ff     rbil r1,r1,r1,0xff
+ 2d4:  00 00 00 00     nop
+ 2d8:  4c 21 0e ff     wbi r1,r1,r1,0xff
+ 2dc:  00 00 00 00     nop
+ 2e0:  4c 21 0d ff     wbic r1,r1,r1,0xff
+ 2e4:  00 00 00 00     nop
+ 2e8:  4c 21 0f ff     wbiu r1,r1,r1,0xff
+ 2ec:  00 00 00 00     nop
+ 2f0:  4c 21 08 28     pkrla r1,r1,r1
+ 2f4:  00 00 00 00     nop
+ 2f8:  4c 21 08 2a     pkrlah r1,r1,r1
+ 2fc:  00 00 00 00     nop
+ 300:  4c 21 08 29     pkrlau r1,r1,r1
+ 304:  00 00 00 00     nop
+ 308:  48 21 08 ff     pkrli r1,r1,r1,0xff
+ 30c:  00 00 00 00     nop
+ 310:  48 21 0a ff     pkrlih r1,r1,r1,0xff
+ 314:  00 00 00 00     nop
+ 318:  48 21 09 ff     pkrliu r1,r1,r1,0xff
+ 31c:  00 00 00 00     nop
+ 320:  4c 01 08 01     lock r1,r1
+ 324:  00 00 00 00     nop
+ 328:  4c 01 08 03     unlk r1,r1
+ 32c:  00 00 00 00     nop
+ 330:  4c 21 08 06     swwr r1,r1,r1
+ 334:  00 00 00 00     nop
+ 338:  4c 21 08 07     swwru r1,r1,r1
+ 33c:  00 00 00 00     nop
+ 340:  4c 01 08 04     swrd r1,r1
+ 344:  00 00 00 00     nop
+ 348:  4c 01 08 05     swrdl r1,r1
+ 34c:  00 00 00 00     nop
+ 350:  4c 01 0c 07     cam36 r1,r1,0x0,0x7
+ 354:  00 00 00 00     nop
+ 358:  4c 01 0c 78     cam72 r1,r1,0x0,0x7
+ 35c:  00 00 00 00     nop
+ 360:  4c 01 0c b8     cam144 r1,r1,0x0,0x7
+ 364:  00 00 00 00     nop
+ 368:  4c 01 0c f8     cam288 r1,r1,0x0,0x7
+ 36c:  00 00 00 00     nop
+ 370:  4c 21 08 ab     cm32and r1,r1,r1
+ 374:  00 00 00 00     nop
+ 378:  4c 21 08 a3     cm32andn r1,r1,r1
+ 37c:  00 00 00 00     nop
+ 380:  4c 21 08 aa     cm32or r1,r1,r1
+ 384:  00 00 00 00     nop
+ 388:  4c 21 08 b0     cm32ra r1,r1,r1
+ 38c:  00 00 00 00     nop
+ 390:  4c 01 08 a1     cm32rd r1,r1
+ 394:  00 00 00 00     nop
+ 398:  4c 01 08 a4     cm32ri r1,r1
+ 39c:  00 00 00 00     nop
+ 3a0:  4c 21 08 a0     cm32rs r1,r1,r1
+ 3a4:  00 00 00 00     nop
+ 3a8:  4c 21 08 b8     cm32sa r1,r1,r1
+ 3ac:  00 00 00 00     nop
+ 3b0:  4c 01 08 a9     cm32sd r1,r1
+ 3b4:  00 00 00 00     nop
+ 3b8:  4c 01 08 ac     cm32si r1,r1
+ 3bc:  00 00 00 00     nop
+ 3c0:  4c 21 08 a8     cm32ss r1,r1,r1
+ 3c4:  00 00 00 00     nop
+ 3c8:  4c 21 08 a2     cm32xor r1,r1,r1
+ 3cc:  00 00 00 00     nop
+ 3d0:  4c 02 10 85     cm64clr r2,r2
+ 3d4:  00 00 00 00     nop
+ 3d8:  4c 42 10 90     cm64ra r2,r2,r2
+ 3dc:  00 00 00 00     nop
+ 3e0:  4c 02 10 81     cm64rd r2,r2
+ 3e4:  00 00 00 00     nop
+ 3e8:  4c 02 10 84     cm64ri r2,r2
+ 3ec:  00 00 00 00     nop
+ 3f0:  4c 42 10 94     cm64ria2 r2,r2,r2
+ 3f4:  00 00 00 00     nop
+ 3f8:  4c 42 10 80     cm64rs r2,r2,r2
+ 3fc:  00 00 00 00     nop
+ 400:  4c 42 10 98     cm64sa r2,r2,r2
+ 404:  00 00 00 00     nop
+ 408:  4c 02 10 89     cm64sd r2,r2
+ 40c:  00 00 00 00     nop
+ 410:  4c 02 10 8c     cm64si r2,r2
+ 414:  00 00 00 00     nop
+ 418:  4c 42 10 9c     cm64sia2 r2,r2,r2
+ 41c:  00 00 00 00     nop
+ 420:  4c 42 10 88     cm64ss r2,r2,r2
+ 424:  00 00 00 00     nop
+ 428:  4c 42 10 95     cm128ria2 r2,r2,r2
+ 42c:  00 00 00 00     nop
+ 430:  4c 21 08 14     crc32 r1,r1,r1
+ 434:  00 00 00 00     nop
+ 438:  4c 21 08 15     crc32b r1,r1,r1
+ 43c:  00 00 00 00     nop
+ 440:  4c 20 08 26     chkhdr r1,r1
+ 444:  00 00 00 00     nop
+ 448:  4c 00 08 24     avail r1
+ 44c:  00 00 00 00     nop
+ 450:  4c 20 08 25     free r1,r1
+ 454:  00 00 00 00     nop
+ 458:  4c 20 08 27     tstod r1,r1
+ 45c:  00 00 00 00     nop
+ 460:  00 00 00 0e     yield
+ 464:  00 00 00 00     nop
+ 468:  4c 00 08 2c     cmphdr r1
+ 46c:  00 00 00 00     nop
+ 470:  4c 01 08 20     mcid r1,r1
+ 474:  00 00 00 00     nop
+ 478:  4c 00 08 22     dba r1
+ 47c:  00 00 00 00     nop
+ 480:  4c 01 08 21     dbd r1,r0,r1
+ 484:  00 00 00 00     nop
+ 488:  4c 20 08 23     dpwt r1,r1
+ 48c:  00 00 00 00     nop
diff --git a/gas/testsuite/gas/iq2000/q10test10.s b/gas/testsuite/gas/iq2000/q10test10.s
new file mode 100644 (file)
index 0000000..1ecf110
--- /dev/null
@@ -0,0 +1,294 @@
+.global _start\r
+_start:\r
+        ADD    %1,%1,%1\r
+        NOP    \r
+        ADDI   %1,%1,0\r
+        NOP    \r
+        ADDIU  %1,%1,0\r
+        NOP    \r
+        ADDU   %1,%1,%1\r
+        NOP    \r
+        ADO16  %1,%1,%1\r
+        NOP    \r
+        AND    %1,%1,%1\r
+        NOP    \r
+        ANDI   %1,%1,0\r
+        NOP    \r
+        ANDOI  %1,%1,0\r
+        NOP    \r
+        ANDOUI %1,%1,0\r
+        NOP    \r
+        LUI    %1,0\r
+        NOP    \r
+        MRGB   %1,%1,%1,31\r
+        NOP    \r
+        NOR    %1,%1,%1\r
+        NOP    \r
+        OR     %1,%1,%1\r
+        NOP    \r
+        ORI    %1,%1,0\r
+        NOP    \r
+        ORUI   %1,%1,0\r
+        NOP    \r
+        SLL    %1,%1,0\r
+        NOP    \r
+        SLLV   %1,%1,%1\r
+        NOP    \r
+        SLT    %1,%1,%1\r
+        NOP    \r
+        SLTI   %1,%1,0\r
+        NOP    \r
+        SLTIU  %1,%1,0\r
+        NOP    \r
+        SLTU   %1,%1,%1\r
+        NOP    \r
+        SRA    %1,%1,0\r
+        NOP    \r
+        SRAV   %1,%1,%1\r
+        NOP    \r
+        SRL    %1,%1,0\r
+        NOP    \r
+        SRLV   %1,%1,%1\r
+        NOP    \r
+        SUB    %1,%1,%1\r
+        NOP    \r
+        SUBU   %1,%1,%1\r
+        NOP    \r
+        XOR    %1,%1,%1\r
+        NOP    \r
+        XORI   %1,%1,0\r
+        NOP    \r
+        NOP    \r
+        NOP    \r
+        SRMV   %1,%1,%1,0\r
+        NOP    \r
+        SLMV   %1,%1,%1,0\r
+        NOP    \r
+        RAM    %1,%1,0,1,1\r
+        NOP    \r
+        BBI    %1(0),_start\r
+        NOP    \r
+        BBIN   %1(0),_start\r
+        NOP    \r
+        BBV    %1,%1,_start\r
+        NOP    \r
+        BBVN   %1,%1,_start\r
+        NOP    \r
+        BBIL   %1(0),_start\r
+        NOP    \r
+        BBINL  %1(0),_start\r
+        NOP    \r
+        BBVL   %1,%1,_start\r
+        NOP    \r
+        BBVNL  %1,%1,_start\r
+        NOP    \r
+        BEQ    %1,%1,_start\r
+        NOP    \r
+        BEQL   %1,%1,_start\r
+        NOP    \r
+        BGEZ   %1,_start\r
+        NOP    \r
+        BGTZAL %1,_start\r
+        NOP    \r
+        BGEZAL %1,_start\r
+        NOP    \r
+        BGTZALL        %1,_start\r
+        NOP    \r
+        BGEZALL        %1,_start\r
+        NOP    \r
+        BGEZL  %1,_start\r
+        NOP    \r
+        BGTZL  %1,_start\r
+        NOP    \r
+        BGTZ   %1,_start\r
+        NOP    \r
+        BLEZ   %1,_start\r
+        NOP    \r
+        BLEZAL %1,_start\r
+        NOP    \r
+        BLTZ   %1,_start\r
+        NOP    \r
+        BLTZAL %1,_start\r
+        NOP    \r
+        BLEZL  %1,_start\r
+        NOP    \r
+        BLTZL  %1,_start\r
+        NOP    \r
+        BLEZALL        %1,_start\r
+        NOP    \r
+        BLTZALL        %1,_start\r
+        NOP    \r
+        BMB    %1,%1,_start\r
+        NOP    \r
+        BMBL   %1,%1,_start\r
+        NOP    \r
+        BMB0   %1,%1,_start\r
+        NOP    \r
+        BMB1   %1,%1,_start\r
+        NOP    \r
+        BMB2   %1,%1,_start\r
+        NOP    \r
+        BMB3   %1,%1,_start\r
+        NOP    \r
+        BNE    %1,%1,_start\r
+        NOP    \r
+        BNEL   %1,%1,_start\r
+        NOP    \r
+        J      0\r
+        NOP    \r
+        JAL    %1,0\r
+        NOP    \r
+        JALR   %1,%1\r
+        NOP    \r
+        JR     %1\r
+        NOP    \r
+        BREAK  \r
+        NOP    \r
+        CTC    %1,%1\r
+        NOP    \r
+        CFC    %1,%1\r
+        NOP    \r
+        LW     %1,0(%1)\r
+        NOP    \r
+        LH     %1,0(%1)\r
+        NOP    \r
+        LB     %1,0(%1)\r
+        NOP    \r
+        LHU    %1,0(%1)\r
+        NOP    \r
+        LBU    %1,0(%1)\r
+        NOP    \r
+        SB     %1,0(%1)\r
+        NOP    \r
+        SH     %1,0(%1)\r
+        NOP    \r
+        SW     %1,0(%1)\r
+        NOP    \r
+        RBA    %1,%1,%1\r
+        NOP    \r
+        RBAR   %1,%1,%1\r
+        NOP    \r
+        RBAL   %1,%1,%1\r
+        NOP    \r
+        WBA    %1,%1,%1\r
+        NOP    \r
+        WBAC   %1,%1,%1\r
+        NOP    \r
+        WBAU   %1,%1,%1\r
+        NOP    \r
+        RBI    %1,%1,%1,255\r
+        NOP    \r
+        RBIR   %1,%1,%1,255\r
+        NOP    \r
+        RBIL   %1,%1,%1,255\r
+        NOP    \r
+        WBI    %1,%1,%1,255\r
+        NOP    \r
+        WBIC   %1,%1,%1,255\r
+        NOP    \r
+        WBIU   %1,%1,%1,255\r
+        NOP    \r
+        PKRLA  %1,%1,%1\r
+        NOP    \r
+        PKRLAH %1,%1,%1\r
+        NOP    \r
+        PKRLAU %1,%1,%1\r
+        NOP    \r
+        PKRLI  %1,%1,%1,255\r
+        NOP    \r
+        PKRLIH %1,%1,%1,255\r
+        NOP    \r
+        PKRLIU %1,%1,%1,255\r
+        NOP    \r
+        LOCK   %1,%1\r
+        NOP    \r
+        UNLK   %1,%1\r
+        NOP    \r
+        SWWR   %1,%1,%1\r
+        NOP    \r
+        SWWRU  %1,%1,%1\r
+        NOP    \r
+        SWRD   %1,%1\r
+        NOP    \r
+        SWRDL  %1,%1\r
+        NOP    \r
+        CAM36  %1,%1,0,7\r
+        NOP    \r
+        CAM72  %1,%1,0,7\r
+        NOP    \r
+        CAM144 %1,%1,0,7\r
+        NOP    \r
+        CAM288 %1,%1,0,7\r
+        NOP    \r
+        CM32AND        %1,%1,%1\r
+        NOP    \r
+        CM32ANDN       %1,%1,%1\r
+        NOP    \r
+        CM32OR %1,%1,%1\r
+        NOP    \r
+        CM32RA %1,%1,%1\r
+        NOP    \r
+        CM32RD %1,%1\r
+        NOP    \r
+        CM32RI %1,%1\r
+        NOP    \r
+        CM32RS %1,%1,%1\r
+        NOP    \r
+        CM32SA %1,%1,%1\r
+        NOP    \r
+        CM32SD %1,%1\r
+        NOP    \r
+        CM32SI %1,%1\r
+        NOP    \r
+        CM32SS %1,%1,%1\r
+        NOP    \r
+        CM32XOR        %1,%1,%1\r
+        NOP    \r
+        CM64CLR        %2,%2\r
+        NOP    \r
+        CM64RA %2,%2,%2\r
+        NOP    \r
+        CM64RD %2,%2\r
+        NOP    \r
+        CM64RI %2,%2\r
+        NOP    \r
+        CM64RIA2       %2,%2,%2\r
+        NOP    \r
+        CM64RS %2,%2,%2\r
+        NOP    \r
+        CM64SA %2,%2,%2\r
+        NOP    \r
+        CM64SD %2,%2\r
+        NOP    \r
+        CM64SI %2,%2\r
+        NOP    \r
+        CM64SIA2       %2,%2,%2\r
+        NOP    \r
+        CM64SS %2,%2,%2\r
+        NOP    \r
+        CM128RIA2      %2,%2,%2\r
+        NOP    \r
+        CRC32  %1,%1,%1\r
+        NOP    \r
+        CRC32B %1,%1,%1\r
+        NOP    \r
+        CHKHDR %1,%1\r
+        NOP    \r
+        AVAIL  %1\r
+        NOP    \r
+        FREE   %1,%1\r
+        NOP    \r
+        TSTOD  %1,%1\r
+        NOP    \r
+        YIELD\r
+        NOP    \r
+        CMPHDR %1\r
+        NOP    \r
+        MCID   %1,%1\r
+        NOP    \r
+        DBA    %1\r
+        NOP    \r
+        DBD    %1,%1\r
+        NOP    \r
+        DPWT   %1,%1\r
+        NOP    \r
diff --git a/gas/testsuite/gas/iq2000/q10test11.d b/gas/testsuite/gas/iq2000/q10test11.d
new file mode 100644 (file)
index 0000000..a01fedc
--- /dev/null
@@ -0,0 +1,225 @@
+#as: -m10
+#objdump: -drz
+#name: q10test11
+
+.*: +file format .*
+
+Disassembly of section .text:
+
+00000000 <_start>:
+   0:  00 21 08 20     add r1,r1,r1
+   4:  00 00 00 00     nop
+   8:  20 21 00 00     addi r1,r1,0x0
+   c:  00 00 00 00     nop
+  10:  24 21 00 00     addiu r1,r1,0x0
+  14:  00 00 00 00     nop
+  18:  00 21 08 21     addu r1,r1,r1
+  1c:  00 00 00 00     nop
+  20:  00 21 08 29     ado16 r1,r1,r1
+  24:  00 00 00 00     nop
+  28:  00 21 08 24     and r1,r1,r1
+  2c:  00 00 00 00     nop
+  30:  30 21 00 00     andi r1,r1,0x0
+  34:  00 00 00 00     nop
+  38:  b0 21 00 00     andoi r1,r1,0x0
+  3c:  00 00 00 00     nop
+  40:  bc 21 00 00     andoui r1,r1,0x0
+  44:  00 00 00 00     nop
+  48:  3c 01 00 00     lui r1,0x0
+  4c:  00 00 00 00     nop
+  50:  00 21 08 6d     mrgb r1,r1,r1,0x1
+  54:  00 00 00 00     nop
+  58:  00 21 08 27     nor r1,r1,r1
+  5c:  00 00 00 00     nop
+  60:  00 21 08 25     or r1,r1,r1
+  64:  00 00 00 00     nop
+  68:  34 21 00 00     ori r1,r1,0x0
+  6c:  00 00 00 00     nop
+  70:  3c 21 00 00     orui r1,r1,0x0
+  74:  00 00 00 00     nop
+  78:  00 01 08 00     sll r1,r1,0x0
+  7c:  00 00 00 00     nop
+  80:  00 21 08 04     sllv r1,r1,r1
+  84:  00 00 00 00     nop
+  88:  00 21 08 2a     slt r1,r1,r1
+  8c:  00 00 00 00     nop
+  90:  28 21 00 00     slti r1,r1,0x0
+  94:  00 00 00 00     nop
+  98:  2c 21 00 00     sltiu r1,r1,0x0
+  9c:  00 00 00 00     nop
+  a0:  00 21 08 2b     sltu r1,r1,r1
+  a4:  00 00 00 00     nop
+  a8:  00 01 08 03     sra r1,r1,0x0
+  ac:  00 00 00 00     nop
+  b0:  00 21 08 07     srav r1,r1,r1
+  b4:  00 00 00 00     nop
+  b8:  00 01 08 02     srl r1,r1,0x0
+  bc:  00 00 00 00     nop
+  c0:  00 21 08 06     srlv r1,r1,r1
+  c4:  00 00 00 00     nop
+  c8:  00 21 08 22     sub r1,r1,r1
+  cc:  00 00 00 00     nop
+  d0:  00 21 08 23     subu r1,r1,r1
+  d4:  00 00 00 00     nop
+  d8:  00 21 08 26     xor r1,r1,r1
+  dc:  00 00 00 00     nop
+  e0:  38 21 00 00     xori r1,r1,0x0
+  e4:  00 00 00 00     nop
+  e8:  00 00 00 00     nop
+  ec:  00 00 00 00     nop
+  f0:  00 21 08 05     srmv r1,r1,r1,0x0
+  f4:  00 00 00 00     nop
+  f8:  00 21 08 01     slmv r1,r1,r1,0x0
+  fc:  00 00 00 00     nop
+ 100:  9d e1 08 01     ram r1,r1,0x0,0x1,0xf
+ 104:  00 00 00 00     nop
+ 108:  70 20 ff bd     bbi r1\(0x0\),0 <_start>
+ 10c:  00 00 00 00     nop
+ 110:  78 20 ff bb     bbin r1\(0x0\),0 <_start>
+ 114:  00 00 00 00     nop
+ 118:  74 21 ff b9     bbv r1,r1,0 <_start>
+ 11c:  00 00 00 00     nop
+ 120:  7c 21 ff b7     bbvn r1,r1,0 <_start>
+ 124:  00 00 00 00     nop
+ 128:  f0 20 ff b5     bbil r1\(0x0\),0 <_start>
+ 12c:  00 00 00 00     nop
+ 130:  f8 20 ff b3     bbinl r1\(0x0\),0 <_start>
+ 134:  00 00 00 00     nop
+ 138:  f4 21 ff b1     bbvl r1,r1,0 <_start>
+ 13c:  00 00 00 00     nop
+ 140:  fc 21 ff af     bbvnl r1,r1,0 <_start>
+ 144:  00 00 00 00     nop
+ 148:  10 21 ff ad     beq r1,r1,0 <_start>
+ 14c:  00 00 00 00     nop
+ 150:  50 21 ff ab     beql r1,r1,0 <_start>
+ 154:  00 00 00 00     nop
+ 158:  04 21 ff a9     bgez r1,0 <_start>
+ 15c:  00 00 00 00     nop
+ 160:  04 35 ff a7     bgtzal r1,0 <_start>
+ 164:  00 00 00 00     nop
+ 168:  04 31 ff a5     bgezal r1,0 <_start>
+ 16c:  00 00 00 00     nop
+ 170:  04 37 ff a3     bgtzall r1,0 <_start>
+ 174:  00 00 00 00     nop
+ 178:  04 33 ff a1     bgezall r1,0 <_start>
+ 17c:  00 00 00 00     nop
+ 180:  04 23 ff 9f     bgezl r1,0 <_start>
+ 184:  00 00 00 00     nop
+ 188:  04 27 ff 9d     bgtzl r1,0 <_start>
+ 18c:  00 00 00 00     nop
+ 190:  04 25 ff 9b     bgtz r1,0 <_start>
+ 194:  00 00 00 00     nop
+ 198:  04 24 ff 99     blez r1,0 <_start>
+ 19c:  00 00 00 00     nop
+ 1a0:  04 34 ff 97     blezal r1,0 <_start>
+ 1a4:  00 00 00 00     nop
+ 1a8:  04 20 ff 95     bltz r1,0 <_start>
+ 1ac:  00 00 00 00     nop
+ 1b0:  04 30 ff 93     bltzal r1,0 <_start>
+ 1b4:  00 00 00 00     nop
+ 1b8:  04 26 ff 91     blezl r1,0 <_start>
+ 1bc:  00 00 00 00     nop
+ 1c0:  04 22 ff 8f     bltzl r1,0 <_start>
+ 1c4:  00 00 00 00     nop
+ 1c8:  04 36 ff 8d     blezall r1,0 <_start>
+ 1cc:  00 00 00 00     nop
+ 1d0:  04 32 ff 8b     bltzall r1,0 <_start>
+ 1d4:  00 00 00 00     nop
+ 1d8:  18 21 ff 89     bmb r1,r1,0 <_start>
+ 1dc:  00 00 00 00     nop
+ 1e0:  58 21 ff 87     bmbl r1,r1,0 <_start>
+ 1e4:  00 00 00 00     nop
+ 1e8:  60 21 ff 85     bmb0 r1,r1,0 <_start>
+ 1ec:  00 00 00 00     nop
+ 1f0:  64 21 ff 83     bmb1 r1,r1,0 <_start>
+ 1f4:  00 00 00 00     nop
+ 1f8:  68 21 ff 81     bmb2 r1,r1,0 <_start>
+ 1fc:  00 00 00 00     nop
+ 200:  6c 21 ff 7f     bmb3 r1,r1,0 <_start>
+ 204:  00 00 00 00     nop
+ 208:  14 21 ff 7d     bne r1,r1,0 <_start>
+ 20c:  00 00 00 00     nop
+ 210:  54 21 ff 7b     bnel r1,r1,0 <_start>
+ 214:  00 00 00 00     nop
+ 218:  08 00 00 00     j 0 <_start>
+ 21c:  00 00 00 00     nop
+ 220:  0c 01 00 00     jal r1,0 <_start>
+ 224:  00 00 00 00     nop
+ 228:  00 20 08 09     jalr r1,r1
+ 22c:  00 00 00 00     nop
+ 230:  00 20 00 08     jr r1
+ 234:  00 00 00 00     nop
+ 238:  00 00 00 0d     break
+ 23c:  00 00 00 00     nop
+ 240:  4c 21 00 02     ctc r1,r1
+ 244:  00 00 00 00     nop
+ 248:  4c 01 08 00     cfc r1,r1
+ 24c:  00 00 00 00     nop
+ 250:  8c 21 00 00     lw r1,0x0\(r1\)
+ 254:  00 00 00 00     nop
+ 258:  84 21 00 00     lh r1,0x0\(r1\)
+ 25c:  00 00 00 00     nop
+ 260:  80 21 00 00     lb r1,0x0\(r1\)
+ 264:  00 00 00 00     nop
+ 268:  94 21 00 00     lhu r1,0x0\(r1\)
+ 26c:  00 00 00 00     nop
+ 270:  90 21 00 00     lbu r1,0x0\(r1\)
+ 274:  00 00 00 00     nop
+ 278:  a0 21 00 00     sb r1,0x0\(r1\)
+ 27c:  00 00 00 00     nop
+ 280:  a4 21 00 00     sh r1,0x0\(r1\)
+ 284:  00 00 00 00     nop
+ 288:  ac 21 00 00     sw r1,0x0\(r1\)
+ 28c:  00 00 00 00     nop
+ 290:  4c 21 08 08     rba r1,r1,r1
+ 294:  00 00 00 00     nop
+ 298:  4c 21 08 0a     rbar r1,r1,r1
+ 29c:  00 00 00 00     nop
+ 2a0:  4c 21 08 09     rbal r1,r1,r1
+ 2a4:  00 00 00 00     nop
+ 2a8:  4c 21 08 10     wba r1,r1,r1
+ 2ac:  00 00 00 00     nop
+ 2b0:  4c 21 08 12     wbac r1,r1,r1
+ 2b4:  00 00 00 00     nop
+ 2b8:  4c 21 08 11     wbau r1,r1,r1
+ 2bc:  00 00 00 00     nop
+ 2c0:  4c 21 0a 00     rbi r1,r1,r1,0x0
+ 2c4:  00 00 00 00     nop
+ 2c8:  4c 21 09 00     rbir r1,r1,r1,0x0
+ 2cc:  00 00 00 00     nop
+ 2d0:  4c 21 0b 00     rbil r1,r1,r1,0x0
+ 2d4:  00 00 00 00     nop
+ 2d8:  4c 21 0e 00     wbi r1,r1,r1,0x0
+ 2dc:  00 00 00 00     nop
+ 2e0:  4c 21 0d 00     wbic r1,r1,r1,0x0
+ 2e4:  00 00 00 00     nop
+ 2e8:  4c 21 0f 00     wbiu r1,r1,r1,0x0
+ 2ec:  00 00 00 00     nop
+ 2f0:  4c 21 08 28     pkrla r1,r1,r1
+ 2f4:  00 00 00 00     nop
+ 2f8:  4c 21 08 2b     pkrlac r1,r1,r1
+ 2fc:  00 00 00 00     nop
+ 300:  4c 21 08 2a     pkrlah r1,r1,r1
+ 304:  00 00 00 00     nop
+ 308:  4c 21 08 29     pkrlau r1,r1,r1
+ 30c:  00 00 00 00     nop
+ 310:  48 21 08 00     pkrli r1,r1,r1,0x0
+ 314:  00 00 00 00     nop
+ 318:  48 21 0b 00     pkrlic r1,r1,r1,0x0
+ 31c:  00 00 00 00     nop
+ 320:  48 21 0a 00     pkrlih r1,r1,r1,0x0
+ 324:  00 00 00 00     nop
+ 328:  48 21 09 00     pkrliu r1,r1,r1,0x0
+ 32c:  00 00 00 00     nop
+ 330:  4c 01 08 01     lock r1,r1
+ 334:  00 00 00 00     nop
+ 338:  4c 01 08 03     unlk r1,r1
+ 33c:  00 00 00 00     nop
+ 340:  4c 21 08 06     swwr r1,r1,r1
+ 344:  00 00 00 00     nop
+ 348:  4c 21 08 07     swwru r1,r1,r1
+ 34c:  00 00 00 00     nop
+ 350:  4c 01 08 04     swrd r1,r1
+ 354:  00 00 00 00     nop
+ 358:  4c 01 08 05     swrdl r1,r1
+ 35c:  00 00 00 00     nop
diff --git a/gas/testsuite/gas/iq2000/q10test11.s b/gas/testsuite/gas/iq2000/q10test11.s
new file mode 100644 (file)
index 0000000..08ee8d5
--- /dev/null
@@ -0,0 +1,218 @@
+.global _start\r
+_start:\r
+        ADD    %1,%1,%1\r
+        NOP    \r
+        ADDI   %1,%1,0\r
+        NOP    \r
+        ADDIU  %1,%1,0\r
+        NOP    \r
+        ADDU   %1,%1,%1\r
+        NOP    \r
+        ADO16  %1,%1,%1\r
+        NOP    \r
+        AND    %1,%1,%1\r
+        NOP    \r
+        ANDI   %1,%1,0\r
+        NOP    \r
+        ANDOI  %1,%1,0\r
+        NOP    \r
+        ANDOUI %1,%1,0\r
+        NOP    \r
+        LUI    %1,0\r
+        NOP    \r
+        MRGB   %1,%1,%1,1\r
+        NOP    \r
+        NOR    %1,%1,%1\r
+        NOP    \r
+        OR     %1,%1,%1\r
+        NOP    \r
+        ORI    %1,%1,0\r
+        NOP    \r
+        ORUI   %1,%1,0\r
+        NOP    \r
+        SLL    %1,%1,0\r
+        NOP    \r
+        SLLV   %1,%1,%1\r
+        NOP    \r
+        SLT    %1,%1,%1\r
+        NOP    \r
+        SLTI   %1,%1,0\r
+        NOP    \r
+        SLTIU  %1,%1,0\r
+        NOP    \r
+        SLTU   %1,%1,%1\r
+        NOP    \r
+        SRA    %1,%1,0\r
+        NOP    \r
+        SRAV   %1,%1,%1\r
+        NOP    \r
+        SRL    %1,%1,0\r
+        NOP    \r
+        SRLV   %1,%1,%1\r
+        NOP    \r
+        SUB    %1,%1,%1\r
+        NOP    \r
+        SUBU   %1,%1,%1\r
+        NOP    \r
+        XOR    %1,%1,%1\r
+        NOP    \r
+        XORI   %1,%1,0\r
+        NOP    \r
+        NOP    \r
+        NOP    \r
+        SRMV   %1,%1,%1,0\r
+        NOP    \r
+        SLMV   %1,%1,%1,0\r
+        NOP    \r
+        RAM    %1,%1,0,1,15\r
+        NOP    \r
+        BBI    %1(0),_start\r
+        NOP    \r
+        BBIN   %1(0),_start\r
+        NOP    \r
+        BBV    %1,%1,_start\r
+        NOP    \r
+        BBVN   %1,%1,_start\r
+        NOP    \r
+        BBIL   %1(0),_start\r
+        NOP    \r
+        BBINL  %1(0),_start\r
+        NOP    \r
+        BBVL   %1,%1,_start\r
+        NOP    \r
+        BBVNL  %1,%1,_start\r
+        NOP    \r
+        BEQ    %1,%1,_start\r
+        NOP    \r
+        BEQL   %1,%1,_start\r
+        NOP    \r
+        BGEZ   %1,_start\r
+        NOP    \r
+        BGTZAL %1,_start\r
+        NOP    \r
+        BGEZAL %1,_start\r
+        NOP    \r
+        BGTZALL        %1,_start\r
+        NOP    \r
+        BGEZALL        %1,_start\r
+        NOP    \r
+        BGEZL  %1,_start\r
+        NOP    \r
+        BGTZL  %1,_start\r
+        NOP    \r
+        BGTZ   %1,_start\r
+        NOP    \r
+        BLEZ   %1,_start\r
+        NOP    \r
+        BLEZAL %1,_start\r
+        NOP    \r
+        BLTZ   %1,_start\r
+        NOP    \r
+        BLTZAL %1,_start\r
+        NOP    \r
+        BLEZL  %1,_start\r
+        NOP    \r
+        BLTZL  %1,_start\r
+        NOP    \r
+        BLEZALL        %1,_start\r
+        NOP    \r
+        BLTZALL        %1,_start\r
+        NOP    \r
+        BMB    %1,%1,_start\r
+        NOP    \r
+        BMBL   %1,%1,_start\r
+        NOP    \r
+        BMB0   %1,%1,_start\r
+        NOP    \r
+        BMB1   %1,%1,_start\r
+        NOP    \r
+        BMB2   %1,%1,_start\r
+        NOP    \r
+        BMB3   %1,%1,_start\r
+        NOP    \r
+        BNE    %1,%1,_start\r
+        NOP    \r
+        BNEL   %1,%1,_start\r
+        NOP    \r
+        J      0\r
+        NOP    \r
+        JAL    %1,0\r
+        NOP    \r
+        JALR   %1,%1\r
+        NOP    \r
+        JR     %1\r
+        NOP    \r
+        BREAK  \r
+        NOP    \r
+        CTC    %1,%1\r
+        NOP    \r
+        CFC    %1,%1\r
+        NOP    \r
+        LW     %1,0(%1)\r
+        NOP    \r
+        LH     %1,0(%1)\r
+        NOP    \r
+        LB     %1,0(%1)\r
+        NOP    \r
+        LHU    %1,0(%1)\r
+        NOP    \r
+        LBU    %1,0(%1)\r
+        NOP    \r
+        SB     %1,0(%1)\r
+        NOP    \r
+        SH     %1,0(%1)\r
+        NOP    \r
+        SW     %1,0(%1)\r
+        NOP    \r
+        RBA    %1,%1,%1\r
+        NOP    \r
+        RBAR   %1,%1,%1\r
+        NOP    \r
+        RBAL   %1,%1,%1\r
+        NOP    \r
+        WBA    %1,%1,%1\r
+        NOP    \r
+        WBAC   %1,%1,%1\r
+        NOP    \r
+        WBAU   %1,%1,%1\r
+        NOP    \r
+        RBI    %1,%1,%1,0\r
+        NOP    \r
+        RBIR   %1,%1,%1,0\r
+        NOP    \r
+        RBIL   %1,%1,%1,0\r
+        NOP    \r
+        WBI    %1,%1,%1,0\r
+        NOP    \r
+        WBIC   %1,%1,%1,0\r
+        NOP    \r
+        WBIU   %1,%1,%1,0\r
+        NOP    \r
+        PKRLA  %1,%1,%1\r
+        NOP    \r
+        PKRLAC %1,%1,%1\r
+        NOP    \r
+        PKRLAH %1,%1,%1\r
+        NOP    \r
+        PKRLAU %1,%1,%1\r
+        NOP    \r
+        PKRLI  %1,%1,%1,0\r
+        NOP    \r
+        PKRLIC %1,%1,%1,0\r
+        NOP    \r
+        PKRLIH %1,%1,%1,0\r
+        NOP    \r
+        PKRLIU %1,%1,%1,0\r
+        NOP    \r
+        LOCK   %1,%1\r
+        NOP    \r
+        UNLK   %1,%1\r
+        NOP    \r
+        SWWR   %1,%1,%1\r
+        NOP    \r
+        SWWRU  %1,%1,%1\r
+        NOP    \r
+        SWRD   %1,%1\r
+        NOP    \r
+        SWRDL  %1,%1\r
+        NOP    \r
diff --git a/gas/testsuite/gas/iq2000/q10test12.d b/gas/testsuite/gas/iq2000/q10test12.d
new file mode 100644 (file)
index 0000000..c261205
--- /dev/null
@@ -0,0 +1,221 @@
+#as: -m10
+#objdump: -drz
+#name: q10test12
+
+.*: +file format .*
+
+Disassembly of section .text:
+
+00000000 <_start>:
+   0:  00 21 08 20     add r1,r1,r1
+   4:  00 00 00 00     nop
+   8:  20 21 00 00     addi r1,r1,0x0
+   c:  00 00 00 00     nop
+  10:  24 21 00 00     addiu r1,r1,0x0
+  14:  00 00 00 00     nop
+  18:  00 21 08 21     addu r1,r1,r1
+  1c:  00 00 00 00     nop
+  20:  00 21 08 29     ado16 r1,r1,r1
+  24:  00 00 00 00     nop
+  28:  00 21 08 24     and r1,r1,r1
+  2c:  00 00 00 00     nop
+  30:  30 21 00 00     andi r1,r1,0x0
+  34:  00 00 00 00     nop
+  38:  b0 21 00 00     andoi r1,r1,0x0
+  3c:  00 00 00 00     nop
+  40:  bc 21 00 00     andoui r1,r1,0x0
+  44:  00 00 00 00     nop
+  48:  3c 01 00 00     lui r1,0x0
+  4c:  00 00 00 00     nop
+  50:  00 21 08 6d     mrgb r1,r1,r1,0x1
+  54:  00 00 00 00     nop
+  58:  00 21 08 27     nor r1,r1,r1
+  5c:  00 00 00 00     nop
+  60:  00 21 08 25     or r1,r1,r1
+  64:  00 00 00 00     nop
+  68:  34 21 00 00     ori r1,r1,0x0
+  6c:  00 00 00 00     nop
+  70:  3c 21 00 00     orui r1,r1,0x0
+  74:  00 00 00 00     nop
+  78:  00 01 08 00     sll r1,r1,0x0
+  7c:  00 00 00 00     nop
+  80:  00 21 08 04     sllv r1,r1,r1
+  84:  00 00 00 00     nop
+  88:  00 21 08 2a     slt r1,r1,r1
+  8c:  00 00 00 00     nop
+  90:  28 21 00 00     slti r1,r1,0x0
+  94:  00 00 00 00     nop
+  98:  2c 21 00 00     sltiu r1,r1,0x0
+  9c:  00 00 00 00     nop
+  a0:  00 21 08 2b     sltu r1,r1,r1
+  a4:  00 00 00 00     nop
+  a8:  00 01 08 03     sra r1,r1,0x0
+  ac:  00 00 00 00     nop
+  b0:  00 21 08 07     srav r1,r1,r1
+  b4:  00 00 00 00     nop
+  b8:  00 01 08 02     srl r1,r1,0x0
+  bc:  00 00 00 00     nop
+  c0:  00 21 08 06     srlv r1,r1,r1
+  c4:  00 00 00 00     nop
+  c8:  00 21 08 22     sub r1,r1,r1
+  cc:  00 00 00 00     nop
+  d0:  00 21 08 23     subu r1,r1,r1
+  d4:  00 00 00 00     nop
+  d8:  00 21 08 26     xor r1,r1,r1
+  dc:  00 00 00 00     nop
+  e0:  38 21 00 00     xori r1,r1,0x0
+  e4:  00 00 00 00     nop
+  e8:  00 00 00 00     nop
+  ec:  00 00 00 00     nop
+  f0:  00 21 08 05     srmv r1,r1,r1,0x0
+  f4:  00 00 00 00     nop
+  f8:  00 21 08 01     slmv r1,r1,r1,0x0
+  fc:  00 00 00 00     nop
+ 100:  9c 21 08 0f     ram r1,r1,0x0,0xf,0x1
+ 104:  00 00 00 00     nop
+ 108:  70 20 ff bd     bbi r1\(0x0\),0 <_start>
+ 10c:  00 00 00 00     nop
+ 110:  78 20 ff bb     bbin r1\(0x0\),0 <_start>
+ 114:  00 00 00 00     nop
+ 118:  74 21 ff b9     bbv r1,r1,0 <_start>
+ 11c:  00 00 00 00     nop
+ 120:  7c 21 ff b7     bbvn r1,r1,0 <_start>
+ 124:  00 00 00 00     nop
+ 128:  f0 20 ff b5     bbil r1\(0x0\),0 <_start>
+ 12c:  00 00 00 00     nop
+ 130:  f8 20 ff b3     bbinl r1\(0x0\),0 <_start>
+ 134:  00 00 00 00     nop
+ 138:  f4 21 ff b1     bbvl r1,r1,0 <_start>
+ 13c:  00 00 00 00     nop
+ 140:  fc 21 ff af     bbvnl r1,r1,0 <_start>
+ 144:  00 00 00 00     nop
+ 148:  10 21 ff ad     beq r1,r1,0 <_start>
+ 14c:  00 00 00 00     nop
+ 150:  50 21 ff ab     beql r1,r1,0 <_start>
+ 154:  00 00 00 00     nop
+ 158:  04 21 ff a9     bgez r1,0 <_start>
+ 15c:  00 00 00 00     nop
+ 160:  04 35 ff a7     bgtzal r1,0 <_start>
+ 164:  00 00 00 00     nop
+ 168:  04 31 ff a5     bgezal r1,0 <_start>
+ 16c:  00 00 00 00     nop
+ 170:  04 37 ff a3     bgtzall r1,0 <_start>
+ 174:  00 00 00 00     nop
+ 178:  04 33 ff a1     bgezall r1,0 <_start>
+ 17c:  00 00 00 00     nop
+ 180:  04 23 ff 9f     bgezl r1,0 <_start>
+ 184:  00 00 00 00     nop
+ 188:  04 27 ff 9d     bgtzl r1,0 <_start>
+ 18c:  00 00 00 00     nop
+ 190:  04 25 ff 9b     bgtz r1,0 <_start>
+ 194:  00 00 00 00     nop
+ 198:  04 24 ff 99     blez r1,0 <_start>
+ 19c:  00 00 00 00     nop
+ 1a0:  04 34 ff 97     blezal r1,0 <_start>
+ 1a4:  00 00 00 00     nop
+ 1a8:  04 20 ff 95     bltz r1,0 <_start>
+ 1ac:  00 00 00 00     nop
+ 1b0:  04 30 ff 93     bltzal r1,0 <_start>
+ 1b4:  00 00 00 00     nop
+ 1b8:  04 26 ff 91     blezl r1,0 <_start>
+ 1bc:  00 00 00 00     nop
+ 1c0:  04 22 ff 8f     bltzl r1,0 <_start>
+ 1c4:  00 00 00 00     nop
+ 1c8:  04 36 ff 8d     blezall r1,0 <_start>
+ 1cc:  00 00 00 00     nop
+ 1d0:  04 32 ff 8b     bltzall r1,0 <_start>
+ 1d4:  00 00 00 00     nop
+ 1d8:  18 21 ff 89     bmb r1,r1,0 <_start>
+ 1dc:  00 00 00 00     nop
+ 1e0:  58 21 ff 87     bmbl r1,r1,0 <_start>
+ 1e4:  00 00 00 00     nop
+ 1e8:  60 21 ff 85     bmb0 r1,r1,0 <_start>
+ 1ec:  00 00 00 00     nop
+ 1f0:  64 21 ff 83     bmb1 r1,r1,0 <_start>
+ 1f4:  00 00 00 00     nop
+ 1f8:  68 21 ff 81     bmb2 r1,r1,0 <_start>
+ 1fc:  00 00 00 00     nop
+ 200:  6c 21 ff 7f     bmb3 r1,r1,0 <_start>
+ 204:  00 00 00 00     nop
+ 208:  14 21 ff 7d     bne r1,r1,0 <_start>
+ 20c:  00 00 00 00     nop
+ 210:  54 21 ff 7b     bnel r1,r1,0 <_start>
+ 214:  00 00 00 00     nop
+ 218:  08 00 00 00     j 0 <_start>
+ 21c:  00 00 00 00     nop
+ 220:  0c 01 00 00     jal r1,0 <_start>
+ 224:  00 00 00 00     nop
+ 228:  00 20 08 09     jalr r1,r1
+ 22c:  00 00 00 00     nop
+ 230:  00 20 00 08     jr r1
+ 234:  00 00 00 00     nop
+ 238:  00 00 00 0d     break
+ 23c:  00 00 00 00     nop
+ 240:  4c 21 00 02     ctc r1,r1
+ 244:  00 00 00 00     nop
+ 248:  4c 01 08 00     cfc r1,r1
+ 24c:  00 00 00 00     nop
+ 250:  8c 21 00 00     lw r1,0x0\(r1\)
+ 254:  00 00 00 00     nop
+ 258:  84 21 00 00     lh r1,0x0\(r1\)
+ 25c:  00 00 00 00     nop
+ 260:  80 21 00 00     lb r1,0x0\(r1\)
+ 264:  00 00 00 00     nop
+ 268:  94 21 00 00     lhu r1,0x0\(r1\)
+ 26c:  00 00 00 00     nop
+ 270:  90 21 00 00     lbu r1,0x0\(r1\)
+ 274:  00 00 00 00     nop
+ 278:  a0 21 00 00     sb r1,0x0\(r1\)
+ 27c:  00 00 00 00     nop
+ 280:  a4 21 00 00     sh r1,0x0\(r1\)
+ 284:  00 00 00 00     nop
+ 288:  ac 21 00 00     sw r1,0x0\(r1\)
+ 28c:  00 00 00 00     nop
+ 290:  4c 21 08 08     rba r1,r1,r1
+ 294:  00 00 00 00     nop
+ 298:  4c 21 08 0a     rbar r1,r1,r1
+ 29c:  00 00 00 00     nop
+ 2a0:  4c 21 08 09     rbal r1,r1,r1
+ 2a4:  00 00 00 00     nop
+ 2a8:  4c 21 08 10     wba r1,r1,r1
+ 2ac:  00 00 00 00     nop
+ 2b0:  4c 21 08 12     wbac r1,r1,r1
+ 2b4:  00 00 00 00     nop
+ 2b8:  4c 21 08 11     wbau r1,r1,r1
+ 2bc:  00 00 00 00     nop
+ 2c0:  4c 21 0a 00     rbi r1,r1,r1,0x0
+ 2c4:  00 00 00 00     nop
+ 2c8:  4c 21 09 00     rbir r1,r1,r1,0x0
+ 2cc:  00 00 00 00     nop
+ 2d0:  4c 21 0b 00     rbil r1,r1,r1,0x0
+ 2d4:  00 00 00 00     nop
+ 2d8:  4c 21 0e 00     wbi r1,r1,r1,0x0
+ 2dc:  00 00 00 00     nop
+ 2e0:  4c 21 0d 00     wbic r1,r1,r1,0x0
+ 2e4:  00 00 00 00     nop
+ 2e8:  4c 21 0f 00     wbiu r1,r1,r1,0x0
+ 2ec:  00 00 00 00     nop
+ 2f0:  4c 21 08 28     pkrla r1,r1,r1
+ 2f4:  00 00 00 00     nop
+ 2f8:  4c 21 08 2a     pkrlah r1,r1,r1
+ 2fc:  00 00 00 00     nop
+ 300:  4c 21 08 29     pkrlau r1,r1,r1
+ 304:  00 00 00 00     nop
+ 308:  48 21 08 00     pkrli r1,r1,r1,0x0
+ 30c:  00 00 00 00     nop
+ 310:  48 21 0a 00     pkrlih r1,r1,r1,0x0
+ 314:  00 00 00 00     nop
+ 318:  48 21 09 00     pkrliu r1,r1,r1,0x0
+ 31c:  00 00 00 00     nop
+ 320:  4c 01 08 01     lock r1,r1
+ 324:  00 00 00 00     nop
+ 328:  4c 01 08 03     unlk r1,r1
+ 32c:  00 00 00 00     nop
+ 330:  4c 21 08 06     swwr r1,r1,r1
+ 334:  00 00 00 00     nop
+ 338:  4c 21 08 07     swwru r1,r1,r1
+ 33c:  00 00 00 00     nop
+ 340:  4c 01 08 04     swrd r1,r1
+ 344:  00 00 00 00     nop
+ 348:  4c 01 08 05     swrdl r1,r1
+ 34c:  00 00 00 00     nop
diff --git a/gas/testsuite/gas/iq2000/q10test12.s b/gas/testsuite/gas/iq2000/q10test12.s
new file mode 100644 (file)
index 0000000..e207ec3
--- /dev/null
@@ -0,0 +1,214 @@
+.global _start\r
+_start:\r
+        ADD    %1,%1,%1\r
+        NOP    \r
+        ADDI   %1,%1,0\r
+        NOP    \r
+        ADDIU  %1,%1,0\r
+        NOP    \r
+        ADDU   %1,%1,%1\r
+        NOP    \r
+        ADO16  %1,%1,%1\r
+        NOP    \r
+        AND    %1,%1,%1\r
+        NOP    \r
+        ANDI   %1,%1,0\r
+        NOP    \r
+        ANDOI  %1,%1,0\r
+        NOP    \r
+        ANDOUI %1,%1,0\r
+        NOP    \r
+        LUI    %1,0\r
+        NOP    \r
+        MRGB   %1,%1,%1,1\r
+        NOP    \r
+        NOR    %1,%1,%1\r
+        NOP    \r
+        OR     %1,%1,%1\r
+        NOP    \r
+        ORI    %1,%1,0\r
+        NOP    \r
+        ORUI   %1,%1,0\r
+        NOP    \r
+        SLL    %1,%1,0\r
+        NOP    \r
+        SLLV   %1,%1,%1\r
+        NOP    \r
+        SLT    %1,%1,%1\r
+        NOP    \r
+        SLTI   %1,%1,0\r
+        NOP    \r
+        SLTIU  %1,%1,0\r
+        NOP    \r
+        SLTU   %1,%1,%1\r
+        NOP    \r
+        SRA    %1,%1,0\r
+        NOP    \r
+        SRAV   %1,%1,%1\r
+        NOP    \r
+        SRL    %1,%1,0\r
+        NOP    \r
+        SRLV   %1,%1,%1\r
+        NOP    \r
+        SUB    %1,%1,%1\r
+        NOP    \r
+        SUBU   %1,%1,%1\r
+        NOP    \r
+        XOR    %1,%1,%1\r
+        NOP    \r
+        XORI   %1,%1,0\r
+        NOP    \r
+        NOP    \r
+        NOP    \r
+        SRMV   %1,%1,%1,0\r
+        NOP    \r
+        SLMV   %1,%1,%1,0\r
+        NOP    \r
+        RAM    %1,%1,0,15,1\r
+        NOP    \r
+        BBI    %1(0),_start\r
+        NOP    \r
+        BBIN   %1(0),_start\r
+        NOP    \r
+        BBV    %1,%1,_start\r
+        NOP    \r
+        BBVN   %1,%1,_start\r
+        NOP    \r
+        BBIL   %1(0),_start\r
+        NOP    \r
+        BBINL  %1(0),_start\r
+        NOP    \r
+        BBVL   %1,%1,_start\r
+        NOP    \r
+        BBVNL  %1,%1,_start\r
+        NOP    \r
+        BEQ    %1,%1,_start\r
+        NOP    \r
+        BEQL   %1,%1,_start\r
+        NOP    \r
+        BGEZ   %1,_start\r
+        NOP    \r
+        BGTZAL %1,_start\r
+        NOP    \r
+        BGEZAL %1,_start\r
+        NOP    \r
+        BGTZALL        %1,_start\r
+        NOP    \r
+        BGEZALL        %1,_start\r
+        NOP    \r
+        BGEZL  %1,_start\r
+        NOP    \r
+        BGTZL  %1,_start\r
+        NOP    \r
+        BGTZ   %1,_start\r
+        NOP    \r
+        BLEZ   %1,_start\r
+        NOP    \r
+        BLEZAL %1,_start\r
+        NOP    \r
+        BLTZ   %1,_start\r
+        NOP    \r
+        BLTZAL %1,_start\r
+        NOP    \r
+        BLEZL  %1,_start\r
+        NOP    \r
+        BLTZL  %1,_start\r
+        NOP    \r
+        BLEZALL        %1,_start\r
+        NOP    \r
+        BLTZALL        %1,_start\r
+        NOP    \r
+        BMB    %1,%1,_start\r
+        NOP    \r
+        BMBL   %1,%1,_start\r
+        NOP    \r
+        BMB0   %1,%1,_start\r
+        NOP    \r
+        BMB1   %1,%1,_start\r
+        NOP    \r
+        BMB2   %1,%1,_start\r
+        NOP    \r
+        BMB3   %1,%1,_start\r
+        NOP    \r
+        BNE    %1,%1,_start\r
+        NOP    \r
+        BNEL   %1,%1,_start\r
+        NOP    \r
+        J      0\r
+        NOP    \r
+        JAL    %1,0\r
+        NOP    \r
+        JALR   %1,%1\r
+        NOP    \r
+        JR     %1\r
+        NOP    \r
+        BREAK  \r
+        NOP    \r
+        CTC    %1,%1\r
+        NOP    \r
+        CFC    %1,%1\r
+        NOP    \r
+        LW     %1,0(%1)\r
+        NOP    \r
+        LH     %1,0(%1)\r
+        NOP    \r
+        LB     %1,0(%1)\r
+        NOP    \r
+        LHU    %1,0(%1)\r
+        NOP    \r
+        LBU    %1,0(%1)\r
+        NOP    \r
+        SB     %1,0(%1)\r
+        NOP    \r
+        SH     %1,0(%1)\r
+        NOP    \r
+        SW     %1,0(%1)\r
+        NOP    \r
+        RBA    %1,%1,%1\r
+        NOP    \r
+        RBAR   %1,%1,%1\r
+        NOP    \r
+        RBAL   %1,%1,%1\r
+        NOP    \r
+        WBA    %1,%1,%1\r
+        NOP    \r
+        WBAC   %1,%1,%1\r
+        NOP    \r
+        WBAU   %1,%1,%1\r
+        NOP    \r
+        RBI    %1,%1,%1,0\r
+        NOP    \r
+        RBIR   %1,%1,%1,0\r
+        NOP    \r
+        RBIL   %1,%1,%1,0\r
+        NOP    \r
+        WBI    %1,%1,%1,0\r
+        NOP    \r
+        WBIC   %1,%1,%1,0\r
+        NOP    \r
+        WBIU   %1,%1,%1,0\r
+        NOP    \r
+        PKRLA  %1,%1,%1\r
+        NOP    \r
+        PKRLAH %1,%1,%1\r
+        NOP    \r
+        PKRLAU %1,%1,%1\r
+        NOP    \r
+        PKRLI  %1,%1,%1,0\r
+        NOP    \r
+        PKRLIH %1,%1,%1,0\r
+        NOP    \r
+        PKRLIU %1,%1,%1,0\r
+        NOP    \r
+        LOCK   %1,%1\r
+        NOP    \r
+        UNLK   %1,%1\r
+        NOP    \r
+        SWWR   %1,%1,%1\r
+        NOP    \r
+        SWWRU  %1,%1,%1\r
+        NOP    \r
+        SWRD   %1,%1\r
+        NOP    \r
+        SWRDL  %1,%1\r
+        NOP    \r
diff --git a/gas/testsuite/gas/iq2000/q10test2.d b/gas/testsuite/gas/iq2000/q10test2.d
new file mode 100644 (file)
index 0000000..944232a
--- /dev/null
@@ -0,0 +1,319 @@
+#as: -m10
+#objdump: -drz
+#name: q10test2
+
+.*: +file format .*
+
+Disassembly of section .text:
+
+00000000 <_start>:
+   0:  00 21 f8 20     add r31,r1,r1
+   4:  00 00 00 00     nop
+   8:  20 21 00 00     addi r1,r1,0x0
+   c:  00 00 00 00     nop
+  10:  24 21 00 00     addiu r1,r1,0x0
+  14:  00 00 00 00     nop
+  18:  00 21 f8 21     addu r31,r1,r1
+  1c:  00 00 00 00     nop
+  20:  00 21 f8 29     ado16 r31,r1,r1
+  24:  00 00 00 00     nop
+  28:  00 21 f8 24     and r31,r1,r1
+  2c:  00 00 00 00     nop
+  30:  30 21 00 00     andi r1,r1,0x0
+  34:  00 00 00 00     nop
+  38:  b0 21 00 00     andoi r1,r1,0x0
+  3c:  00 00 00 00     nop
+  40:  bc 21 00 00     andoui r1,r1,0x0
+  44:  00 00 00 00     nop
+  48:  3c 01 00 00     lui r1,0x0
+  4c:  00 00 00 00     nop
+  50:  00 21 f8 2d     mrgb r31,r1,r1,0x0
+  54:  00 00 00 00     nop
+  58:  00 21 f8 27     nor r31,r1,r1
+  5c:  00 00 00 00     nop
+  60:  00 21 f8 25     or r31,r1,r1
+  64:  00 00 00 00     nop
+  68:  34 21 00 00     ori r1,r1,0x0
+  6c:  00 00 00 00     nop
+  70:  3c 21 00 00     orui r1,r1,0x0
+  74:  00 00 00 00     nop
+  78:  00 01 f8 00     sll r31,r1,0x0
+  7c:  00 00 00 00     nop
+  80:  00 21 f8 04     sllv r31,r1,r1
+  84:  00 00 00 00     nop
+  88:  00 21 f8 2a     slt r31,r1,r1
+  8c:  00 00 00 00     nop
+  90:  28 21 00 00     slti r1,r1,0x0
+  94:  00 00 00 00     nop
+  98:  2c 21 00 00     sltiu r1,r1,0x0
+  9c:  00 00 00 00     nop
+  a0:  00 21 f8 2b     sltu r31,r1,r1
+  a4:  00 00 00 00     nop
+  a8:  00 01 f8 03     sra r31,r1,0x0
+  ac:  00 00 00 00     nop
+  b0:  00 21 f8 07     srav r31,r1,r1
+  b4:  00 00 00 00     nop
+  b8:  00 01 f8 02     srl r31,r1,0x0
+  bc:  00 00 00 00     nop
+  c0:  00 21 f8 06     srlv r31,r1,r1
+  c4:  00 00 00 00     nop
+  c8:  00 21 f8 22     sub r31,r1,r1
+  cc:  00 00 00 00     nop
+  d0:  00 21 f8 23     subu r31,r1,r1
+  d4:  00 00 00 00     nop
+  d8:  00 21 f8 26     xor r31,r1,r1
+  dc:  00 00 00 00     nop
+  e0:  38 21 00 00     xori r1,r1,0x0
+  e4:  00 00 00 00     nop
+  e8:  00 00 00 00     nop
+  ec:  00 00 00 00     nop
+  f0:  00 21 f8 05     srmv r31,r1,r1,0x0
+  f4:  00 00 00 00     nop
+  f8:  00 21 f8 01     slmv r31,r1,r1,0x0
+  fc:  00 00 00 00     nop
+ 100:  9c 01 f8 00     ram r31,r1,0x0,0x0,0x0
+ 104:  00 00 00 00     nop
+ 108:  70 20 ff bd     bbi r1\(0x0\),0 <_start>
+ 10c:  00 00 00 00     nop
+ 110:  78 20 ff bb     bbin r1\(0x0\),0 <_start>
+ 114:  00 00 00 00     nop
+ 118:  74 21 ff b9     bbv r1,r1,0 <_start>
+ 11c:  00 00 00 00     nop
+ 120:  7c 21 ff b7     bbvn r1,r1,0 <_start>
+ 124:  00 00 00 00     nop
+ 128:  f0 20 ff b5     bbil r1\(0x0\),0 <_start>
+ 12c:  00 00 00 00     nop
+ 130:  f8 20 ff b3     bbinl r1\(0x0\),0 <_start>
+ 134:  00 00 00 00     nop
+ 138:  f4 21 ff b1     bbvl r1,r1,0 <_start>
+ 13c:  00 00 00 00     nop
+ 140:  fc 21 ff af     bbvnl r1,r1,0 <_start>
+ 144:  00 00 00 00     nop
+ 148:  10 21 ff ad     beq r1,r1,0 <_start>
+ 14c:  00 00 00 00     nop
+ 150:  50 21 ff ab     beql r1,r1,0 <_start>
+ 154:  00 00 00 00     nop
+ 158:  04 21 ff a9     bgez r1,0 <_start>
+ 15c:  00 00 00 00     nop
+ 160:  04 35 ff a7     bgtzal r1,0 <_start>
+ 164:  00 00 00 00     nop
+ 168:  04 31 ff a5     bgezal r1,0 <_start>
+ 16c:  00 00 00 00     nop
+ 170:  04 37 ff a3     bgtzall r1,0 <_start>
+ 174:  00 00 00 00     nop
+ 178:  04 33 ff a1     bgezall r1,0 <_start>
+ 17c:  00 00 00 00     nop
+ 180:  04 23 ff 9f     bgezl r1,0 <_start>
+ 184:  00 00 00 00     nop
+ 188:  04 27 ff 9d     bgtzl r1,0 <_start>
+ 18c:  00 00 00 00     nop
+ 190:  04 25 ff 9b     bgtz r1,0 <_start>
+ 194:  00 00 00 00     nop
+ 198:  04 24 ff 99     blez r1,0 <_start>
+ 19c:  00 00 00 00     nop
+ 1a0:  04 34 ff 97     blezal r1,0 <_start>
+ 1a4:  00 00 00 00     nop
+ 1a8:  04 20 ff 95     bltz r1,0 <_start>
+ 1ac:  00 00 00 00     nop
+ 1b0:  04 30 ff 93     bltzal r1,0 <_start>
+ 1b4:  00 00 00 00     nop
+ 1b8:  04 26 ff 91     blezl r1,0 <_start>
+ 1bc:  00 00 00 00     nop
+ 1c0:  04 22 ff 8f     bltzl r1,0 <_start>
+ 1c4:  00 00 00 00     nop
+ 1c8:  04 36 ff 8d     blezall r1,0 <_start>
+ 1cc:  00 00 00 00     nop
+ 1d0:  04 32 ff 8b     bltzall r1,0 <_start>
+ 1d4:  00 00 00 00     nop
+ 1d8:  18 21 ff 89     bmb r1,r1,0 <_start>
+ 1dc:  00 00 00 00     nop
+ 1e0:  58 21 ff 87     bmbl r1,r1,0 <_start>
+ 1e4:  00 00 00 00     nop
+ 1e8:  60 21 ff 85     bmb0 r1,r1,0 <_start>
+ 1ec:  00 00 00 00     nop
+ 1f0:  64 21 ff 83     bmb1 r1,r1,0 <_start>
+ 1f4:  00 00 00 00     nop
+ 1f8:  68 21 ff 81     bmb2 r1,r1,0 <_start>
+ 1fc:  00 00 00 00     nop
+ 200:  6c 21 ff 7f     bmb3 r1,r1,0 <_start>
+ 204:  00 00 00 00     nop
+ 208:  14 21 ff 7d     bne r1,r1,0 <_start>
+ 20c:  00 00 00 00     nop
+ 210:  54 21 ff 7b     bnel r1,r1,0 <_start>
+ 214:  00 00 00 00     nop
+ 218:  08 00 00 00     j 0 <_start>
+ 21c:  00 00 00 00     nop
+ 220:  0c 01 00 00     jal r1,0 <_start>
+ 224:  00 00 00 00     nop
+ 228:  00 20 f8 09     jalr r31,r1
+ 22c:  00 00 00 00     nop
+ 230:  00 20 00 08     jr r1
+ 234:  00 00 00 00     nop
+ 238:  00 00 00 0d     break
+ 23c:  00 00 00 00     nop
+ 240:  4c 21 00 02     ctc r1,r1
+ 244:  00 00 00 00     nop
+ 248:  4c 01 f8 00     cfc r31,r1
+ 24c:  00 00 00 00     nop
+ 250:  8c 21 00 00     lw r1,0x0\(r1\)
+ 254:  00 00 00 00     nop
+ 258:  84 21 00 00     lh r1,0x0\(r1\)
+ 25c:  00 00 00 00     nop
+ 260:  80 21 00 00     lb r1,0x0\(r1\)
+ 264:  00 00 00 00     nop
+ 268:  94 21 00 00     lhu r1,0x0\(r1\)
+ 26c:  00 00 00 00     nop
+ 270:  90 21 00 00     lbu r1,0x0\(r1\)
+ 274:  00 00 00 00     nop
+ 278:  a0 21 00 00     sb r1,0x0\(r1\)
+ 27c:  00 00 00 00     nop
+ 280:  a4 21 00 00     sh r1,0x0\(r1\)
+ 284:  00 00 00 00     nop
+ 288:  ac 21 00 00     sw r1,0x0\(r1\)
+ 28c:  00 00 00 00     nop
+ 290:  4c 3f 08 08     rba r1,r1,r31
+ 294:  00 00 00 00     nop
+ 298:  4c 3f 08 0a     rbar r1,r1,r31
+ 29c:  00 00 00 00     nop
+ 2a0:  4c 3f 08 09     rbal r1,r1,r31
+ 2a4:  00 00 00 00     nop
+ 2a8:  4c 3f 08 10     wba r1,r1,r31
+ 2ac:  00 00 00 00     nop
+ 2b0:  4c 3f 08 12     wbac r1,r1,r31
+ 2b4:  00 00 00 00     nop
+ 2b8:  4c 3f 08 11     wbau r1,r1,r31
+ 2bc:  00 00 00 00     nop
+ 2c0:  4c 3f 0a 00     rbi r1,r1,r31,0x0
+ 2c4:  00 00 00 00     nop
+ 2c8:  4c 3f 09 00     rbir r1,r1,r31,0x0
+ 2cc:  00 00 00 00     nop
+ 2d0:  4c 3f 0b 00     rbil r1,r1,r31,0x0
+ 2d4:  00 00 00 00     nop
+ 2d8:  4c 3f 0e 00     wbi r1,r1,r31,0x0
+ 2dc:  00 00 00 00     nop
+ 2e0:  4c 3f 0d 00     wbic r1,r1,r31,0x0
+ 2e4:  00 00 00 00     nop
+ 2e8:  4c 3f 0f 00     wbiu r1,r1,r31,0x0
+ 2ec:  00 00 00 00     nop
+ 2f0:  4c 3f 08 28     pkrla r1,r1,r31
+ 2f4:  00 00 00 00     nop
+ 2f8:  4c 3f 08 2b     pkrlac r1,r1,r31
+ 2fc:  00 00 00 00     nop
+ 300:  4c 3f 08 2a     pkrlah r1,r1,r31
+ 304:  00 00 00 00     nop
+ 308:  4c 3f 08 29     pkrlau r1,r1,r31
+ 30c:  00 00 00 00     nop
+ 310:  48 3f 08 00     pkrli r1,r1,r31,0x0
+ 314:  00 00 00 00     nop
+ 318:  48 3f 0b 00     pkrlic r1,r1,r31,0x0
+ 31c:  00 00 00 00     nop
+ 320:  48 3f 0a 00     pkrlih r1,r1,r31,0x0
+ 324:  00 00 00 00     nop
+ 328:  48 3f 09 00     pkrliu r1,r1,r31,0x0
+ 32c:  00 00 00 00     nop
+ 330:  4c 1f 08 01     lock r1,r31
+ 334:  00 00 00 00     nop
+ 338:  4c 1f 08 03     unlk r1,r31
+ 33c:  00 00 00 00     nop
+ 340:  4c 3f 08 06     swwr r1,r1,r31
+ 344:  00 00 00 00     nop
+ 348:  4c 3f 08 07     swwru r1,r1,r31
+ 34c:  00 00 00 00     nop
+ 350:  4c 01 f8 04     swrd r31,r1
+ 354:  00 00 00 00     nop
+ 358:  4c 01 f8 05     swrdl r31,r1
+ 35c:  00 00 00 00     nop
+ 360:  4c 02 f0 0c     dwrd r30,r2
+ 364:  00 00 00 00     nop
+ 368:  4c 02 f0 0d     dwrdl r30,r2
+ 36c:  00 00 00 00     nop
+ 370:  4c 01 fc 10     cam36 r31,r1,0x2,0x0
+ 374:  00 00 00 00     nop
+ 378:  4c 01 fc 42     cam72 r31,r1,0x2,0x0
+ 37c:  00 00 00 00     nop
+ 380:  4c 01 fc 82     cam144 r31,r1,0x2,0x0
+ 384:  00 00 00 00     nop
+ 388:  4c 01 fc c2     cam288 r31,r1,0x2,0x0
+ 38c:  00 00 00 00     nop
+ 390:  4c 21 f8 ab     cm32and r31,r1,r1
+ 394:  00 00 00 00     nop
+ 398:  4c 21 f8 a3     cm32andn r31,r1,r1
+ 39c:  00 00 00 00     nop
+ 3a0:  4c 21 f8 aa     cm32or r31,r1,r1
+ 3a4:  00 00 00 00     nop
+ 3a8:  4c 21 f8 b0     cm32ra r31,r1,r1
+ 3ac:  00 00 00 00     nop
+ 3b0:  4c 01 f8 a1     cm32rd r31,r1
+ 3b4:  00 00 00 00     nop
+ 3b8:  4c 01 f8 a4     cm32ri r31,r1
+ 3bc:  00 00 00 00     nop
+ 3c0:  4c 21 f8 a0     cm32rs r31,r1,r1
+ 3c4:  00 00 00 00     nop
+ 3c8:  4c 21 f8 b8     cm32sa r31,r1,r1
+ 3cc:  00 00 00 00     nop
+ 3d0:  4c 01 f8 a9     cm32sd r31,r1
+ 3d4:  00 00 00 00     nop
+ 3d8:  4c 01 f8 ac     cm32si r31,r1
+ 3dc:  00 00 00 00     nop
+ 3e0:  4c 21 f8 a8     cm32ss r31,r1,r1
+ 3e4:  00 00 00 00     nop
+ 3e8:  4c 21 f8 a2     cm32xor r31,r1,r1
+ 3ec:  00 00 00 00     nop
+ 3f0:  4c 02 f0 85     cm64clr r30,r2
+ 3f4:  00 00 00 00     nop
+ 3f8:  4c 42 f0 90     cm64ra r30,r2,r2
+ 3fc:  00 00 00 00     nop
+ 400:  4c 02 f0 81     cm64rd r30,r2
+ 404:  00 00 00 00     nop
+ 408:  4c 02 f0 84     cm64ri r30,r2
+ 40c:  00 00 00 00     nop
+ 410:  4c 42 f0 94     cm64ria2 r30,r2,r2
+ 414:  00 00 00 00     nop
+ 418:  4c 42 f0 80     cm64rs r30,r2,r2
+ 41c:  00 00 00 00     nop
+ 420:  4c 42 f0 98     cm64sa r30,r2,r2
+ 424:  00 00 00 00     nop
+ 428:  4c 02 f0 89     cm64sd r30,r2
+ 42c:  00 00 00 00     nop
+ 430:  4c 02 f0 8c     cm64si r30,r2
+ 434:  00 00 00 00     nop
+ 438:  4c 42 f0 9c     cm64sia2 r30,r2,r2
+ 43c:  00 00 00 00     nop
+ 440:  4c 42 f0 88     cm64ss r30,r2,r2
+ 444:  00 00 00 00     nop
+ 448:  4c 42 f0 95     cm128ria2 r30,r2,r2
+ 44c:  00 00 00 00     nop
+ 450:  4c 42 f0 92     cm128ria3 r30,r2,r2,0x2
+ 454:  00 00 00 00     nop
+ 458:  4c 42 f0 b2     cm128ria4 r30,r2,r2,0x2
+ 45c:  00 00 00 00     nop
+ 460:  4c 42 f0 9d     cm128sia2 r30,r2,r2
+ 464:  00 00 00 00     nop
+ 468:  4c 42 f0 9a     cm128sia3 r30,r2,r2,0x2
+ 46c:  00 00 00 00     nop
+ 470:  4c 21 f8 ba     cm128sia4 r31,r1,r1,0x2
+ 474:  00 00 00 00     nop
+ 478:  4c 21 f8 a6     cm128vsa r31,r1,r1
+ 47c:  00 00 00 00     nop
+ 480:  4c 21 f8 14     crc32 r31,r1,r1
+ 484:  00 00 00 00     nop
+ 488:  4c 21 f8 15     crc32b r31,r1,r1
+ 48c:  00 00 00 00     nop
+ 490:  4c 20 f8 26     chkhdr r31,r1
+ 494:  00 00 00 00     nop
+ 498:  4c 00 f8 24     avail r31
+ 49c:  00 00 00 00     nop
+ 4a0:  4c 20 f8 25     free r31,r1
+ 4a4:  00 00 00 00     nop
+ 4a8:  4c 20 f8 27     tstod r31,r1
+ 4ac:  00 00 00 00     nop
+ 4b0:  4c 00 f8 2c     cmphdr r31
+ 4b4:  00 00 00 00     nop
+ 4b8:  4c 01 f8 20     mcid r31,r1
+ 4bc:  00 00 00 00     nop
+ 4c0:  4c 00 f8 22     dba r31
+ 4c4:  00 00 00 00     nop
+ 4c8:  4c 1f 08 21     dbd r1,r0,r31
+ 4cc:  00 00 00 00     nop
+ 4d0:  4f e0 08 23     dpwt r1,r31
+ 4d4:  00 00 00 00     nop
diff --git a/gas/testsuite/gas/iq2000/q10test2.s b/gas/testsuite/gas/iq2000/q10test2.s
new file mode 100644 (file)
index 0000000..72a8311
--- /dev/null
@@ -0,0 +1,312 @@
+.global _start\r
+_start:\r
+        ADD    %31,%1,%1\r
+        NOP    \r
+        ADDI   %1,%1,0\r
+        NOP    \r
+        ADDIU  %1,%1,0\r
+        NOP    \r
+        ADDU   %31,%1,%1\r
+        NOP    \r
+        ADO16  %31,%1,%1\r
+        NOP    \r
+        AND    %31,%1,%1\r
+        NOP    \r
+        ANDI   %1,%1,0\r
+        NOP    \r
+        ANDOI  %1,%1,0\r
+        NOP    \r
+        ANDOUI %1,%1,0\r
+        NOP    \r
+        LUI    %1,0\r
+        NOP    \r
+        MRGB   %31,%1,%1,0\r
+        NOP    \r
+        NOR    %31,%1,%1\r
+        NOP    \r
+        OR     %31,%1,%1\r
+        NOP    \r
+        ORI    %1,%1,0\r
+        NOP    \r
+        ORUI   %1,%1,0\r
+        NOP    \r
+        SLL    %31,%1,0\r
+        NOP    \r
+        SLLV   %31,%1,%1\r
+        NOP    \r
+        SLT    %31,%1,%1\r
+        NOP    \r
+        SLTI   %1,%1,0\r
+        NOP    \r
+        SLTIU  %1,%1,0\r
+        NOP    \r
+        SLTU   %31,%1,%1\r
+        NOP    \r
+        SRA    %31,%1,0\r
+        NOP    \r
+        SRAV   %31,%1,%1\r
+        NOP    \r
+        SRL    %31,%1,0\r
+        NOP    \r
+        SRLV   %31,%1,%1\r
+        NOP    \r
+        SUB    %31,%1,%1\r
+        NOP    \r
+        SUBU   %31,%1,%1\r
+        NOP    \r
+        XOR    %31,%1,%1\r
+        NOP    \r
+        XORI   %1,%1,0\r
+        NOP    \r
+        NOP    \r
+        NOP    \r
+        SRMV   %31,%1,%1,0\r
+        NOP    \r
+        SLMV   %31,%1,%1,0\r
+        NOP    \r
+        RAM    %31,%1,0,0,0\r
+        NOP    \r
+        BBI    %1(0),_start\r
+        NOP    \r
+        BBIN   %1(0),_start\r
+        NOP    \r
+        BBV    %1,%1,_start\r
+        NOP    \r
+        BBVN   %1,%1,_start\r
+        NOP    \r
+        BBIL   %1(0),_start\r
+        NOP    \r
+        BBINL  %1(0),_start\r
+        NOP    \r
+        BBVL   %1,%1,_start\r
+        NOP    \r
+        BBVNL  %1,%1,_start\r
+        NOP    \r
+        BEQ    %1,%1,_start\r
+        NOP    \r
+        BEQL   %1,%1,_start\r
+        NOP    \r
+        BGEZ   %1,_start\r
+        NOP    \r
+        BGTZAL %1,_start\r
+        NOP    \r
+        BGEZAL %1,_start\r
+        NOP    \r
+        BGTZALL        %1,_start\r
+        NOP    \r
+        BGEZALL        %1,_start\r
+        NOP    \r
+        BGEZL  %1,_start\r
+        NOP    \r
+        BGTZL  %1,_start\r
+        NOP    \r
+        BGTZ   %1,_start\r
+        NOP    \r
+        BLEZ   %1,_start\r
+        NOP    \r
+        BLEZAL %1,_start\r
+        NOP    \r
+        BLTZ   %1,_start\r
+        NOP    \r
+        BLTZAL %1,_start\r
+        NOP    \r
+        BLEZL  %1,_start\r
+        NOP    \r
+        BLTZL  %1,_start\r
+        NOP    \r
+        BLEZALL        %1,_start\r
+        NOP    \r
+        BLTZALL        %1,_start\r
+        NOP    \r
+        BMB    %1,%1,_start\r
+        NOP    \r
+        BMBL   %1,%1,_start\r
+        NOP    \r
+        BMB0   %1,%1,_start\r
+        NOP    \r
+        BMB1   %1,%1,_start\r
+        NOP    \r
+        BMB2   %1,%1,_start\r
+        NOP    \r
+        BMB3   %1,%1,_start\r
+        NOP    \r
+        BNE    %1,%1,_start\r
+        NOP    \r
+        BNEL   %1,%1,_start\r
+        NOP    \r
+        J      0\r
+        NOP    \r
+        JAL    %1,0\r
+        NOP    \r
+        JALR   %31,%1\r
+        NOP    \r
+        JR     %1\r
+        NOP    \r
+        BREAK  \r
+        NOP    \r
+        CTC    %1,%1\r
+        NOP    \r
+        CFC    %31,%1\r
+        NOP    \r
+        LW     %1,0(%1)\r
+        NOP    \r
+        LH     %1,0(%1)\r
+        NOP    \r
+        LB     %1,0(%1)\r
+        NOP    \r
+        LHU    %1,0(%1)\r
+        NOP    \r
+        LBU    %1,0(%1)\r
+        NOP    \r
+        SB     %1,0(%1)\r
+        NOP    \r
+        SH     %1,0(%1)\r
+        NOP    \r
+        SW     %1,0(%1)\r
+        NOP    \r
+        RBA    %1,%1,%31\r
+        NOP    \r
+        RBAR   %1,%1,%31\r
+        NOP    \r
+        RBAL   %1,%1,%31\r
+        NOP    \r
+        WBA    %1,%1,%31\r
+        NOP    \r
+        WBAC   %1,%1,%31\r
+        NOP    \r
+        WBAU   %1,%1,%31\r
+        NOP    \r
+        RBI    %1,%1,%31,0\r
+        NOP    \r
+        RBIR   %1,%1,%31,0\r
+        NOP    \r
+        RBIL   %1,%1,%31,0\r
+        NOP    \r
+        WBI    %1,%1,%31,0\r
+        NOP    \r
+        WBIC   %1,%1,%31,0\r
+        NOP    \r
+        WBIU   %1,%1,%31,0\r
+        NOP    \r
+        PKRLA  %1,%1,%31\r
+        NOP    \r
+        PKRLAC %1,%1,%31\r
+        NOP    \r
+        PKRLAH %1,%1,%31\r
+        NOP    \r
+        PKRLAU %1,%1,%31\r
+        NOP    \r
+        PKRLI  %1,%1,%31,0\r
+        NOP    \r
+        PKRLIC %1,%1,%31,0\r
+        NOP    \r
+        PKRLIH %1,%1,%31,0\r
+        NOP    \r
+        PKRLIU %1,%1,%31,0\r
+        NOP    \r
+        LOCK   %1,%31\r
+        NOP    \r
+        UNLK   %1,%31\r
+        NOP    \r
+        SWWR   %1,%1,%31\r
+        NOP    \r
+        SWWRU  %1,%1,%31\r
+        NOP    \r
+        SWRD   %31,%1\r
+        NOP    \r
+        SWRDL  %31,%1\r
+        NOP    \r
+        DWRD   %30,%2\r
+        NOP    \r
+        DWRDL  %30,%2\r
+        NOP    \r
+        CAM36  %31,%1,2,0\r
+        NOP    \r
+        CAM72  %31,%1,2,0\r
+        NOP    \r
+        CAM144 %31,%1,2,0\r
+        NOP    \r
+        CAM288 %31,%1,2,0\r
+        NOP    \r
+        CM32AND        %31,%1,%1\r
+        NOP    \r
+        CM32ANDN       %31,%1,%1\r
+        NOP    \r
+        CM32OR %31,%1,%1\r
+        NOP    \r
+        CM32RA %31,%1,%1\r
+        NOP    \r
+        CM32RD %31,%1\r
+        NOP    \r
+        CM32RI %31,%1\r
+        NOP    \r
+        CM32RS %31,%1,%1\r
+        NOP    \r
+        CM32SA %31,%1,%1\r
+        NOP    \r
+        CM32SD %31,%1\r
+        NOP    \r
+        CM32SI %31,%1\r
+        NOP    \r
+        CM32SS %31,%1,%1\r
+        NOP    \r
+        CM32XOR        %31,%1,%1\r
+        NOP    \r
+        CM64CLR        %30,%2\r
+        NOP    \r
+        CM64RA %30,%2,%2\r
+        NOP    \r
+        CM64RD %30,%2\r
+        NOP    \r
+        CM64RI %30,%2\r
+        NOP    \r
+        CM64RIA2       %30,%2,%2\r
+        NOP    \r
+        CM64RS %30,%2,%2\r
+        NOP    \r
+        CM64SA %30,%2,%2\r
+        NOP    \r
+        CM64SD %30,%2\r
+        NOP    \r
+        CM64SI %30,%2\r
+        NOP    \r
+        CM64SIA2       %30,%2,%2\r
+        NOP    \r
+        CM64SS %30,%2,%2\r
+        NOP    \r
+        CM128RIA2      %30,%2,%2\r
+        NOP    \r
+        CM128RIA3      %30,%2,%2,2\r
+        NOP    \r
+        CM128RIA4      %30,%2,%2,2\r
+        NOP    \r
+        CM128SIA2      %30,%2,%2\r
+        NOP    \r
+        CM128SIA3      %30,%2,%2,2\r
+        NOP    \r
+        CM128SIA4      %31,%1,%1,2\r
+        NOP    \r
+        CM128VSA       %31,%1,%1\r
+        NOP    \r
+        CRC32  %31,%1,%1\r
+        NOP    \r
+        CRC32B %31,%1,%1\r
+        NOP    \r
+        CHKHDR %31,%1\r
+        NOP    \r
+        AVAIL  %31\r
+        NOP    \r
+        FREE   %31,%1\r
+        NOP    \r
+        TSTOD  %31,%1\r
+        NOP    \r
+        CMPHDR %31\r
+        NOP    \r
+        MCID   %31,%1\r
+        NOP    \r
+        DBA    %31\r
+        NOP    \r
+        DBD    %1,%31\r
+        NOP    \r
+        DPWT   %1,%31\r
+        NOP    \r
diff --git a/gas/testsuite/gas/iq2000/q10test3.d b/gas/testsuite/gas/iq2000/q10test3.d
new file mode 100644 (file)
index 0000000..a32acdd
--- /dev/null
@@ -0,0 +1,313 @@
+#as: -m10
+#objdump: -drz
+#name: q10test3
+
+.*: +file format .*
+
+Disassembly of section .text:
+
+00000000 <_start>:
+   0:  00 3f 08 20     add r1,r1,r31
+   4:  00 00 00 00     nop
+   8:  20 3f 00 00     addi r31,r1,0x0
+   c:  00 00 00 00     nop
+  10:  24 3f 00 00     addiu r31,r1,0x0
+  14:  00 00 00 00     nop
+  18:  00 3f 08 21     addu r1,r1,r31
+  1c:  00 00 00 00     nop
+  20:  00 3f 08 29     ado16 r1,r1,r31
+  24:  00 00 00 00     nop
+  28:  00 3f 08 24     and r1,r1,r31
+  2c:  00 00 00 00     nop
+  30:  30 3f 00 00     andi r31,r1,0x0
+  34:  00 00 00 00     nop
+  38:  b0 3f 00 00     andoi r31,r1,0x0
+  3c:  00 00 00 00     nop
+  40:  bc 3f 00 00     andoui r31,r1,0x0
+  44:  00 00 00 00     nop
+  48:  3c 1f 00 00     lui r31,0x0
+  4c:  00 00 00 00     nop
+  50:  00 3f 08 2d     mrgb r1,r1,r31,0x0
+  54:  00 00 00 00     nop
+  58:  00 3f 08 27     nor r1,r1,r31
+  5c:  00 00 00 00     nop
+  60:  00 3f 08 25     or r1,r1,r31
+  64:  00 00 00 00     nop
+  68:  34 3f 00 00     ori r31,r1,0x0
+  6c:  00 00 00 00     nop
+  70:  3c 3f 00 00     orui r31,r1,0x0
+  74:  00 00 00 00     nop
+  78:  00 1f 08 00     sll r1,r31,0x0
+  7c:  00 00 00 00     nop
+  80:  00 3f 08 04     sllv r1,r31,r1
+  84:  00 00 00 00     nop
+  88:  00 3f 08 2a     slt r1,r1,r31
+  8c:  00 00 00 00     nop
+  90:  28 3f 00 00     slti r31,r1,0x0
+  94:  00 00 00 00     nop
+  98:  2c 3f 00 00     sltiu r31,r1,0x0
+  9c:  00 00 00 00     nop
+  a0:  00 3f 08 2b     sltu r1,r1,r31
+  a4:  00 00 00 00     nop
+  a8:  00 1f 08 03     sra r1,r31,0x0
+  ac:  00 00 00 00     nop
+  b0:  00 3f 08 07     srav r1,r31,r1
+  b4:  00 00 00 00     nop
+  b8:  00 1f 08 02     srl r1,r31,0x0
+  bc:  00 00 00 00     nop
+  c0:  00 3f 08 06     srlv r1,r31,r1
+  c4:  00 00 00 00     nop
+  c8:  00 3f 08 22     sub r1,r1,r31
+  cc:  00 00 00 00     nop
+  d0:  00 3f 08 23     subu r1,r1,r31
+  d4:  00 00 00 00     nop
+  d8:  00 3f 08 26     xor r1,r1,r31
+  dc:  00 00 00 00     nop
+  e0:  38 3f 00 00     xori r31,r1,0x0
+  e4:  00 00 00 00     nop
+  e8:  00 00 00 00     nop
+  ec:  00 00 00 00     nop
+  f0:  03 e1 08 05     srmv r1,r1,r31,0x0
+  f4:  00 00 00 00     nop
+  f8:  03 e1 08 01     slmv r1,r1,r31,0x0
+  fc:  00 00 00 00     nop
+ 100:  9c 1f 08 00     ram r1,r31,0x0,0x0,0x0
+ 104:  00 00 00 00     nop
+ 108:  70 20 ff bd     bbi r1\(0x0\),0 <_start>
+ 10c:  00 00 00 00     nop
+ 110:  78 20 ff bb     bbin r1\(0x0\),0 <_start>
+ 114:  00 00 00 00     nop
+ 118:  74 3f ff b9     bbv r1,r31,0 <_start>
+ 11c:  00 00 00 00     nop
+ 120:  7c 3f ff b7     bbvn r1,r31,0 <_start>
+ 124:  00 00 00 00     nop
+ 128:  f0 20 ff b5     bbil r1\(0x0\),0 <_start>
+ 12c:  00 00 00 00     nop
+ 130:  f8 20 ff b3     bbinl r1\(0x0\),0 <_start>
+ 134:  00 00 00 00     nop
+ 138:  f4 3f ff b1     bbvl r1,r31,0 <_start>
+ 13c:  00 00 00 00     nop
+ 140:  fc 3f ff af     bbvnl r1,r31,0 <_start>
+ 144:  00 00 00 00     nop
+ 148:  10 3f ff ad     beq r1,r31,0 <_start>
+ 14c:  00 00 00 00     nop
+ 150:  50 3f ff ab     beql r1,r31,0 <_start>
+ 154:  00 00 00 00     nop
+ 158:  04 21 ff a9     bgez r1,0 <_start>
+ 15c:  00 00 00 00     nop
+ 160:  04 35 ff a7     bgtzal r1,0 <_start>
+ 164:  00 00 00 00     nop
+ 168:  04 31 ff a5     bgezal r1,0 <_start>
+ 16c:  00 00 00 00     nop
+ 170:  04 37 ff a3     bgtzall r1,0 <_start>
+ 174:  00 00 00 00     nop
+ 178:  04 33 ff a1     bgezall r1,0 <_start>
+ 17c:  00 00 00 00     nop
+ 180:  04 23 ff 9f     bgezl r1,0 <_start>
+ 184:  00 00 00 00     nop
+ 188:  04 27 ff 9d     bgtzl r1,0 <_start>
+ 18c:  00 00 00 00     nop
+ 190:  04 25 ff 9b     bgtz r1,0 <_start>
+ 194:  00 00 00 00     nop
+ 198:  04 24 ff 99     blez r1,0 <_start>
+ 19c:  00 00 00 00     nop
+ 1a0:  04 34 ff 97     blezal r1,0 <_start>
+ 1a4:  00 00 00 00     nop
+ 1a8:  04 20 ff 95     bltz r1,0 <_start>
+ 1ac:  00 00 00 00     nop
+ 1b0:  04 30 ff 93     bltzal r1,0 <_start>
+ 1b4:  00 00 00 00     nop
+ 1b8:  04 26 ff 91     blezl r1,0 <_start>
+ 1bc:  00 00 00 00     nop
+ 1c0:  04 22 ff 8f     bltzl r1,0 <_start>
+ 1c4:  00 00 00 00     nop
+ 1c8:  04 36 ff 8d     blezall r1,0 <_start>
+ 1cc:  00 00 00 00     nop
+ 1d0:  04 32 ff 8b     bltzall r1,0 <_start>
+ 1d4:  00 00 00 00     nop
+ 1d8:  18 3f ff 89     bmb r1,r31,0 <_start>
+ 1dc:  00 00 00 00     nop
+ 1e0:  58 3f ff 87     bmbl r1,r31,0 <_start>
+ 1e4:  00 00 00 00     nop
+ 1e8:  60 3f ff 85     bmb0 r1,r31,0 <_start>
+ 1ec:  00 00 00 00     nop
+ 1f0:  64 3f ff 83     bmb1 r1,r31,0 <_start>
+ 1f4:  00 00 00 00     nop
+ 1f8:  68 3f ff 81     bmb2 r1,r31,0 <_start>
+ 1fc:  00 00 00 00     nop
+ 200:  6c 3f ff 7f     bmb3 r1,r31,0 <_start>
+ 204:  00 00 00 00     nop
+ 208:  14 3f ff 7d     bne r1,r31,0 <_start>
+ 20c:  00 00 00 00     nop
+ 210:  54 3f ff 7b     bnel r1,r31,0 <_start>
+ 214:  00 00 00 00     nop
+ 218:  08 00 00 00     j 0 <_start>
+ 21c:  00 00 00 00     nop
+ 220:  0c 01 00 00     jal r1,0 <_start>
+ 224:  00 00 00 00     nop
+ 228:  00 20 08 09     jalr r1,r1
+ 22c:  00 00 00 00     nop
+ 230:  00 20 00 08     jr r1
+ 234:  00 00 00 00     nop
+ 238:  00 00 00 0d     break
+ 23c:  00 00 00 00     nop
+ 240:  4c 3f 00 02     ctc r1,r31
+ 244:  00 00 00 00     nop
+ 248:  4c 1f 08 00     cfc r1,r31
+ 24c:  00 00 00 00     nop
+ 250:  8c 3f 00 00     lw r31,0x0\(r1\)
+ 254:  00 00 00 00     nop
+ 258:  84 3f 00 00     lh r31,0x0\(r1\)
+ 25c:  00 00 00 00     nop
+ 260:  80 3f 00 00     lb r31,0x0\(r1\)
+ 264:  00 00 00 00     nop
+ 268:  94 3f 00 00     lhu r31,0x0\(r1\)
+ 26c:  00 00 00 00     nop
+ 270:  90 3f 00 00     lbu r31,0x0\(r1\)
+ 274:  00 00 00 00     nop
+ 278:  a0 3f 00 00     sb r31,0x0\(r1\)
+ 27c:  00 00 00 00     nop
+ 280:  a4 3f 00 00     sh r31,0x0\(r1\)
+ 284:  00 00 00 00     nop
+ 288:  ac 3f 00 00     sw r31,0x0\(r1\)
+ 28c:  00 00 00 00     nop
+ 290:  4f e1 08 08     rba r1,r31,r1
+ 294:  00 00 00 00     nop
+ 298:  4f e1 08 0a     rbar r1,r31,r1
+ 29c:  00 00 00 00     nop
+ 2a0:  4f e1 08 09     rbal r1,r31,r1
+ 2a4:  00 00 00 00     nop
+ 2a8:  4f e1 08 10     wba r1,r31,r1
+ 2ac:  00 00 00 00     nop
+ 2b0:  4f e1 08 12     wbac r1,r31,r1
+ 2b4:  00 00 00 00     nop
+ 2b8:  4f e1 08 11     wbau r1,r31,r1
+ 2bc:  00 00 00 00     nop
+ 2c0:  4f e1 0a 00     rbi r1,r31,r1,0x0
+ 2c4:  00 00 00 00     nop
+ 2c8:  4f e1 09 00     rbir r1,r31,r1,0x0
+ 2cc:  00 00 00 00     nop
+ 2d0:  4f e1 0b 00     rbil r1,r31,r1,0x0
+ 2d4:  00 00 00 00     nop
+ 2d8:  4f e1 0e 00     wbi r1,r31,r1,0x0
+ 2dc:  00 00 00 00     nop
+ 2e0:  4f e1 0d 00     wbic r1,r31,r1,0x0
+ 2e4:  00 00 00 00     nop
+ 2e8:  4f e1 0f 00     wbiu r1,r31,r1,0x0
+ 2ec:  00 00 00 00     nop
+ 2f0:  4f e1 08 28     pkrla r1,r31,r1
+ 2f4:  00 00 00 00     nop
+ 2f8:  4f e1 08 2a     pkrlah r1,r31,r1
+ 2fc:  00 00 00 00     nop
+ 300:  4f e1 08 29     pkrlau r1,r31,r1
+ 304:  00 00 00 00     nop
+ 308:  4b e1 08 00     pkrli r1,r31,r1,0x0
+ 30c:  00 00 00 00     nop
+ 310:  4b e1 0a 00     pkrlih r1,r31,r1,0x0
+ 314:  00 00 00 00     nop
+ 318:  4b e1 09 00     pkrliu r1,r31,r1,0x0
+ 31c:  00 00 00 00     nop
+ 320:  4c 01 f8 01     lock r31,r1
+ 324:  00 00 00 00     nop
+ 328:  4c 01 f8 03     unlk r31,r1
+ 32c:  00 00 00 00     nop
+ 330:  4f e1 08 06     swwr r1,r31,r1
+ 334:  00 00 00 00     nop
+ 338:  4f e1 08 07     swwru r1,r31,r1
+ 33c:  00 00 00 00     nop
+ 340:  4c 1f 08 04     swrd r1,r31
+ 344:  00 00 00 00     nop
+ 348:  4c 1f 08 05     swrdl r1,r31
+ 34c:  00 00 00 00     nop
+ 350:  4c 1e 10 0c     dwrd r2,r30
+ 354:  00 00 00 00     nop
+ 358:  4c 1e 10 0d     dwrdl r2,r30
+ 35c:  00 00 00 00     nop
+ 360:  4c 1f 0c 18     cam36 r1,r31,0x3,0x0
+ 364:  00 00 00 00     nop
+ 368:  4c 1f 0c 43     cam72 r1,r31,0x3,0x0
+ 36c:  00 00 00 00     nop
+ 370:  4c 1f 0c 83     cam144 r1,r31,0x3,0x0
+ 374:  00 00 00 00     nop
+ 378:  4c 1f 0c c3     cam288 r1,r31,0x3,0x0
+ 37c:  00 00 00 00     nop
+ 380:  4c 3f 08 ab     cm32and r1,r1,r31
+ 384:  00 00 00 00     nop
+ 388:  4c 3f 08 a3     cm32andn r1,r1,r31
+ 38c:  00 00 00 00     nop
+ 390:  4c 3f 08 aa     cm32or r1,r1,r31
+ 394:  00 00 00 00     nop
+ 398:  4c 3f 08 b0     cm32ra r1,r1,r31
+ 39c:  00 00 00 00     nop
+ 3a0:  4c 1f 08 a1     cm32rd r1,r31
+ 3a4:  00 00 00 00     nop
+ 3a8:  4c 1f 08 a4     cm32ri r1,r31
+ 3ac:  00 00 00 00     nop
+ 3b0:  4c 3f 08 a0     cm32rs r1,r1,r31
+ 3b4:  00 00 00 00     nop
+ 3b8:  4c 3f 08 b8     cm32sa r1,r1,r31
+ 3bc:  00 00 00 00     nop
+ 3c0:  4c 1f 08 a9     cm32sd r1,r31
+ 3c4:  00 00 00 00     nop
+ 3c8:  4c 1f 08 ac     cm32si r1,r31
+ 3cc:  00 00 00 00     nop
+ 3d0:  4c 3f 08 a8     cm32ss r1,r1,r31
+ 3d4:  00 00 00 00     nop
+ 3d8:  4c 3f 08 a2     cm32xor r1,r1,r31
+ 3dc:  00 00 00 00     nop
+ 3e0:  4c 1e 10 85     cm64clr r2,r30
+ 3e4:  00 00 00 00     nop
+ 3e8:  4c 5e 10 90     cm64ra r2,r2,r30
+ 3ec:  00 00 00 00     nop
+ 3f0:  4c 1e 10 81     cm64rd r2,r30
+ 3f4:  00 00 00 00     nop
+ 3f8:  4c 1e 10 84     cm64ri r2,r30
+ 3fc:  00 00 00 00     nop
+ 400:  4c 5e 10 94     cm64ria2 r2,r2,r30
+ 404:  00 00 00 00     nop
+ 408:  4c 5e 10 80     cm64rs r2,r2,r30
+ 40c:  00 00 00 00     nop
+ 410:  4c 5e 10 98     cm64sa r2,r2,r30
+ 414:  00 00 00 00     nop
+ 418:  4c 1e 10 89     cm64sd r2,r30
+ 41c:  00 00 00 00     nop
+ 420:  4c 1e 10 8c     cm64si r2,r30
+ 424:  00 00 00 00     nop
+ 428:  4c 5e 10 9c     cm64sia2 r2,r2,r30
+ 42c:  00 00 00 00     nop
+ 430:  4c 5e 10 88     cm64ss r2,r2,r30
+ 434:  00 00 00 00     nop
+ 438:  4c 5e 10 95     cm128ria2 r2,r2,r30
+ 43c:  00 00 00 00     nop
+ 440:  4c 5e 10 93     cm128ria3 r2,r2,r30,0x3
+ 444:  00 00 00 00     nop
+ 448:  4c 5e 10 b3     cm128ria4 r2,r2,r30,0x3
+ 44c:  00 00 00 00     nop
+ 450:  4c 5e 10 9d     cm128sia2 r2,r2,r30
+ 454:  00 00 00 00     nop
+ 458:  4c 5e 10 9b     cm128sia3 r2,r2,r30,0x3
+ 45c:  00 00 00 00     nop
+ 460:  4c 3f 08 bb     cm128sia4 r1,r1,r31,0x3
+ 464:  00 00 00 00     nop
+ 468:  4c 3f 08 a6     cm128vsa r1,r1,r31
+ 46c:  00 00 00 00     nop
+ 470:  4c 3f 08 14     crc32 r1,r1,r31
+ 474:  00 00 00 00     nop
+ 478:  4c 3f 08 15     crc32b r1,r1,r31
+ 47c:  00 00 00 00     nop
+ 480:  4f e0 08 26     chkhdr r1,r31
+ 484:  00 00 00 00     nop
+ 488:  4c 00 08 24     avail r1
+ 48c:  00 00 00 00     nop
+ 490:  4c 20 f8 25     free r31,r1
+ 494:  00 00 00 00     nop
+ 498:  4c 00 08 2c     cmphdr r1
+ 49c:  00 00 00 00     nop
+ 4a0:  4c 1f 08 20     mcid r1,r31
+ 4a4:  00 00 00 00     nop
+ 4a8:  4c 00 f8 22     dba r31
+ 4ac:  00 00 00 00     nop
+ 4b0:  4c 01 f8 21     dbd r31,r0,r1
+ 4b4:  00 00 00 00     nop
+ 4b8:  4c 20 f8 23     dpwt r31,r1
+ 4bc:  00 00 00 00     nop
diff --git a/gas/testsuite/gas/iq2000/q10test3.s b/gas/testsuite/gas/iq2000/q10test3.s
new file mode 100644 (file)
index 0000000..c5f0f32
--- /dev/null
@@ -0,0 +1,306 @@
+.global _start\r
+_start:\r
+        ADD    %1,%1,%31\r
+        NOP    \r
+        ADDI   %31,%1,0\r
+        NOP    \r
+        ADDIU  %31,%1,0\r
+        NOP    \r
+        ADDU   %1,%1,%31\r
+        NOP    \r
+        ADO16  %1,%1,%31\r
+        NOP    \r
+        AND    %1,%1,%31\r
+        NOP    \r
+        ANDI   %31,%1,0\r
+        NOP    \r
+        ANDOI  %31,%1,0\r
+        NOP    \r
+        ANDOUI %31,%1,0\r
+        NOP    \r
+        LUI    %31,0\r
+        NOP    \r
+        MRGB   %1,%1,%31,0\r
+        NOP    \r
+        NOR    %1,%1,%31\r
+        NOP    \r
+        OR     %1,%1,%31\r
+        NOP    \r
+        ORI    %31,%1,0\r
+        NOP    \r
+        ORUI   %31,%1,0\r
+        NOP    \r
+        SLL    %1,%31,0\r
+        NOP    \r
+        SLLV   %1,%31,%1\r
+        NOP    \r
+        SLT    %1,%1,%31\r
+        NOP    \r
+        SLTI   %31,%1,0\r
+        NOP    \r
+        SLTIU  %31,%1,0\r
+        NOP    \r
+        SLTU   %1,%1,%31\r
+        NOP    \r
+        SRA    %1,%31,0\r
+        NOP    \r
+        SRAV   %1,%31,%1\r
+        NOP    \r
+        SRL    %1,%31,0\r
+        NOP    \r
+        SRLV   %1,%31,%1\r
+        NOP    \r
+        SUB    %1,%1,%31\r
+        NOP    \r
+        SUBU   %1,%1,%31\r
+        NOP    \r
+        XOR    %1,%1,%31\r
+        NOP    \r
+        XORI   %31,%1,0\r
+        NOP    \r
+        NOP    \r
+        NOP    \r
+        SRMV   %1,%1,%31,0\r
+        NOP    \r
+        SLMV   %1,%1,%31,0\r
+        NOP    \r
+        RAM    %1,%31,0,0,0\r
+        NOP    \r
+        BBI    %1(0),_start\r
+        NOP    \r
+        BBIN   %1(0),_start\r
+        NOP    \r
+        BBV    %1,%31,_start\r
+        NOP    \r
+        BBVN   %1,%31,_start\r
+        NOP    \r
+        BBIL   %1(0),_start\r
+        NOP    \r
+        BBINL  %1(0),_start\r
+        NOP    \r
+        BBVL   %1,%31,_start\r
+        NOP    \r
+        BBVNL  %1,%31,_start\r
+        NOP    \r
+        BEQ    %1,%31,_start\r
+        NOP    \r
+        BEQL   %1,%31,_start\r
+        NOP    \r
+        BGEZ   %1,_start\r
+        NOP    \r
+        BGTZAL %1,_start\r
+        NOP    \r
+        BGEZAL %1,_start\r
+        NOP    \r
+        BGTZALL        %1,_start\r
+        NOP    \r
+        BGEZALL        %1,_start\r
+        NOP    \r
+        BGEZL  %1,_start\r
+        NOP    \r
+        BGTZL  %1,_start\r
+        NOP    \r
+        BGTZ   %1,_start\r
+        NOP    \r
+        BLEZ   %1,_start\r
+        NOP    \r
+        BLEZAL %1,_start\r
+        NOP    \r
+        BLTZ   %1,_start\r
+        NOP    \r
+        BLTZAL %1,_start\r
+        NOP    \r
+        BLEZL  %1,_start\r
+        NOP    \r
+        BLTZL  %1,_start\r
+        NOP    \r
+        BLEZALL        %1,_start\r
+        NOP    \r
+        BLTZALL        %1,_start\r
+        NOP    \r
+        BMB    %1,%31,_start\r
+        NOP    \r
+        BMBL   %1,%31,_start\r
+        NOP    \r
+        BMB0   %1,%31,_start\r
+        NOP    \r
+        BMB1   %1,%31,_start\r
+        NOP    \r
+        BMB2   %1,%31,_start\r
+        NOP    \r
+        BMB3   %1,%31,_start\r
+        NOP    \r
+        BNE    %1,%31,_start\r
+        NOP    \r
+        BNEL   %1,%31,_start\r
+        NOP    \r
+        J      0\r
+        NOP    \r
+        JAL    %1,0\r
+        NOP    \r
+        JALR   %1,%1\r
+        NOP    \r
+        JR     %1\r
+        NOP    \r
+        BREAK  \r
+        NOP    \r
+        CTC    %1,%31\r
+        NOP    \r
+        CFC    %1,%31\r
+        NOP    \r
+        LW     %31,0(%1)\r
+        NOP    \r
+        LH     %31,0(%1)\r
+        NOP    \r
+        LB     %31,0(%1)\r
+        NOP    \r
+        LHU    %31,0(%1)\r
+        NOP    \r
+        LBU    %31,0(%1)\r
+        NOP    \r
+        SB     %31,0(%1)\r
+        NOP    \r
+        SH     %31,0(%1)\r
+        NOP    \r
+        SW     %31,0(%1)\r
+        NOP    \r
+        RBA    %1,%31,%1\r
+        NOP    \r
+        RBAR   %1,%31,%1\r
+        NOP    \r
+        RBAL   %1,%31,%1\r
+        NOP    \r
+        WBA    %1,%31,%1\r
+        NOP    \r
+        WBAC   %1,%31,%1\r
+        NOP    \r
+        WBAU   %1,%31,%1\r
+        NOP    \r
+        RBI    %1,%31,%1,0\r
+        NOP    \r
+        RBIR   %1,%31,%1,0\r
+        NOP    \r
+        RBIL   %1,%31,%1,0\r
+        NOP    \r
+        WBI    %1,%31,%1,0\r
+        NOP    \r
+        WBIC   %1,%31,%1,0\r
+        NOP    \r
+        WBIU   %1,%31,%1,0\r
+        NOP    \r
+        PKRLA  %1,%31,%1\r
+        NOP    \r
+        PKRLAH %1,%31,%1\r
+        NOP    \r
+        PKRLAU %1,%31,%1\r
+        NOP    \r
+        PKRLI  %1,%31,%1,0\r
+        NOP    \r
+        PKRLIH %1,%31,%1,0\r
+        NOP    \r
+        PKRLIU %1,%31,%1,0\r
+        NOP    \r
+        LOCK   %31,%1\r
+        NOP    \r
+        UNLK   %31,%1\r
+        NOP    \r
+        SWWR   %1,%31,%1\r
+        NOP    \r
+        SWWRU  %1,%31,%1\r
+        NOP    \r
+        SWRD   %1,%31\r
+        NOP    \r
+        SWRDL  %1,%31\r
+        NOP    \r
+        DWRD   %2,%30\r
+        NOP    \r
+        DWRDL  %2,%30\r
+        NOP    \r
+        CAM36  %1,%31,3,0\r
+        NOP    \r
+        CAM72  %1,%31,3,0\r
+        NOP    \r
+        CAM144 %1,%31,3,0\r
+        NOP    \r
+        CAM288 %1,%31,3,0\r
+        NOP    \r
+        CM32AND        %1,%1,%31\r
+        NOP    \r
+        CM32ANDN       %1,%1,%31\r
+        NOP    \r
+        CM32OR %1,%1,%31\r
+        NOP    \r
+        CM32RA %1,%1,%31\r
+        NOP    \r
+        CM32RD %1,%31\r
+        NOP    \r
+        CM32RI %1,%31\r
+        NOP    \r
+        CM32RS %1,%1,%31\r
+        NOP    \r
+        CM32SA %1,%1,%31\r
+        NOP    \r
+        CM32SD %1,%31\r
+        NOP    \r
+        CM32SI %1,%31\r
+        NOP    \r
+        CM32SS %1,%1,%31\r
+        NOP    \r
+        CM32XOR        %1,%1,%31\r
+        NOP    \r
+        CM64CLR        %2,%30\r
+        NOP    \r
+        CM64RA %2,%2,%30\r
+        NOP    \r
+        CM64RD %2,%30\r
+        NOP    \r
+        CM64RI %2,%30\r
+        NOP    \r
+        CM64RIA2       %2,%2,%30\r
+        NOP    \r
+        CM64RS %2,%2,%30\r
+        NOP    \r
+        CM64SA %2,%2,%30\r
+        NOP    \r
+        CM64SD %2,%30\r
+        NOP    \r
+        CM64SI %2,%30\r
+        NOP    \r
+        CM64SIA2       %2,%2,%30\r
+        NOP    \r
+        CM64SS %2,%2,%30\r
+        NOP    \r
+        CM128RIA2      %2,%2,%30\r
+        NOP    \r
+        CM128RIA3      %2,%2,%30,3\r
+        NOP    \r
+        CM128RIA4      %2,%2,%30,3\r
+        NOP    \r
+        CM128SIA2      %2,%2,%30\r
+        NOP    \r
+        CM128SIA3      %2,%2,%30,3\r
+        NOP    \r
+        CM128SIA4      %1,%1,%31,3\r
+        NOP    \r
+        CM128VSA       %1,%1,%31\r
+        NOP    \r
+        CRC32  %1,%1,%31\r
+        NOP    \r
+        CRC32B %1,%1,%31\r
+        NOP    \r
+        CHKHDR %1,%31\r
+        NOP    \r
+        AVAIL  %1\r
+        NOP    \r
+        FREE   %31,%1\r
+        NOP    \r
+        CMPHDR %1\r
+        NOP    \r
+        MCID   %1,%31\r
+        NOP    \r
+        DBA    %31\r
+        NOP    \r
+        DBD    %31,%1\r
+        NOP    \r
+        DPWT   %31,%1\r
+        NOP    \r
diff --git a/gas/testsuite/gas/iq2000/q10test4.d b/gas/testsuite/gas/iq2000/q10test4.d
new file mode 100644 (file)
index 0000000..3b3a77f
--- /dev/null
@@ -0,0 +1,315 @@
+#as: -m10
+#objdump: -drz
+#name: q10test4
+
+.*: +file format .*
+
+Disassembly of section .text:
+
+00000000 <_start>:
+   0:  03 df 08 20     add r1,r30,r31
+   4:  00 00 00 00     nop
+   8:  23 df 00 00     addi r31,r30,0x0
+   c:  00 00 00 00     nop
+  10:  27 df 00 00     addiu r31,r30,0x0
+  14:  00 00 00 00     nop
+  18:  03 df 08 21     addu r1,r30,r31
+  1c:  00 00 00 00     nop
+  20:  03 df 08 29     ado16 r1,r30,r31
+  24:  00 00 00 00     nop
+  28:  03 df 08 24     and r1,r30,r31
+  2c:  00 00 00 00     nop
+  30:  33 df 00 00     andi r31,r30,0x0
+  34:  00 00 00 00     nop
+  38:  b3 df 00 00     andoi r31,r30,0x0
+  3c:  00 00 00 00     nop
+  40:  bf df 00 00     andoui r31,r30,0x0
+  44:  00 00 00 00     nop
+  48:  3c 1f 00 00     lui r31,0x0
+  4c:  00 00 00 00     nop
+  50:  03 df 08 2d     mrgb r1,r30,r31,0x0
+  54:  00 00 00 00     nop
+  58:  03 df 08 27     nor r1,r30,r31
+  5c:  00 00 00 00     nop
+  60:  03 df 08 25     or r1,r30,r31
+  64:  00 00 00 00     nop
+  68:  37 df 00 00     ori r31,r30,0x0
+  6c:  00 00 00 00     nop
+  70:  3f df 00 00     orui r31,r30,0x0
+  74:  00 00 00 00     nop
+  78:  00 1f 08 00     sll r1,r31,0x0
+  7c:  00 00 00 00     nop
+  80:  03 df 08 04     sllv r1,r31,r30
+  84:  00 00 00 00     nop
+  88:  03 df 08 2a     slt r1,r30,r31
+  8c:  00 00 00 00     nop
+  90:  2b df 00 00     slti r31,r30,0x0
+  94:  00 00 00 00     nop
+  98:  2f df 00 00     sltiu r31,r30,0x0
+  9c:  00 00 00 00     nop
+  a0:  03 df 08 2b     sltu r1,r30,r31
+  a4:  00 00 00 00     nop
+  a8:  00 1f 08 03     sra r1,r31,0x0
+  ac:  00 00 00 00     nop
+  b0:  03 df 08 07     srav r1,r31,r30
+  b4:  00 00 00 00     nop
+  b8:  00 1f 08 02     srl r1,r31,0x0
+  bc:  00 00 00 00     nop
+  c0:  03 df 08 06     srlv r1,r31,r30
+  c4:  00 00 00 00     nop
+  c8:  03 df 08 22     sub r1,r30,r31
+  cc:  00 00 00 00     nop
+  d0:  03 df 08 23     subu r1,r30,r31
+  d4:  00 00 00 00     nop
+  d8:  03 df 08 26     xor r1,r30,r31
+  dc:  00 00 00 00     nop
+  e0:  3b df 00 00     xori r31,r30,0x0
+  e4:  00 00 00 00     nop
+  e8:  00 00 00 00     nop
+  ec:  00 00 00 00     nop
+  f0:  03 fe 08 05     srmv r1,r30,r31,0x0
+  f4:  00 00 00 00     nop
+  f8:  03 fe 08 01     slmv r1,r30,r31,0x0
+  fc:  00 00 00 00     nop
+ 100:  9c 1f 08 00     ram r1,r31,0x0,0x0,0x0
+ 104:  00 00 00 00     nop
+ 108:  73 c0 ff bd     bbi r30\(0x0\),0 <_start>
+ 10c:  00 00 00 00     nop
+ 110:  7b c0 ff bb     bbin r30\(0x0\),0 <_start>
+ 114:  00 00 00 00     nop
+ 118:  77 df ff b9     bbv r30,r31,0 <_start>
+ 11c:  00 00 00 00     nop
+ 120:  7f df ff b7     bbvn r30,r31,0 <_start>
+ 124:  00 00 00 00     nop
+ 128:  f3 c0 ff b5     bbil r30\(0x0\),0 <_start>
+ 12c:  00 00 00 00     nop
+ 130:  fb c0 ff b3     bbinl r30\(0x0\),0 <_start>
+ 134:  00 00 00 00     nop
+ 138:  f7 df ff b1     bbvl r30,r31,0 <_start>
+ 13c:  00 00 00 00     nop
+ 140:  ff df ff af     bbvnl r30,r31,0 <_start>
+ 144:  00 00 00 00     nop
+ 148:  13 df ff ad     beq r30,r31,0 <_start>
+ 14c:  00 00 00 00     nop
+ 150:  53 df ff ab     beql r30,r31,0 <_start>
+ 154:  00 00 00 00     nop
+ 158:  07 c1 ff a9     bgez r30,0 <_start>
+ 15c:  00 00 00 00     nop
+ 160:  07 d5 ff a7     bgtzal r30,0 <_start>
+ 164:  00 00 00 00     nop
+ 168:  07 d1 ff a5     bgezal r30,0 <_start>
+ 16c:  00 00 00 00     nop
+ 170:  07 d7 ff a3     bgtzall r30,0 <_start>
+ 174:  00 00 00 00     nop
+ 178:  07 d3 ff a1     bgezall r30,0 <_start>
+ 17c:  00 00 00 00     nop
+ 180:  07 c3 ff 9f     bgezl r30,0 <_start>
+ 184:  00 00 00 00     nop
+ 188:  07 c7 ff 9d     bgtzl r30,0 <_start>
+ 18c:  00 00 00 00     nop
+ 190:  07 c5 ff 9b     bgtz r30,0 <_start>
+ 194:  00 00 00 00     nop
+ 198:  07 c4 ff 99     blez r30,0 <_start>
+ 19c:  00 00 00 00     nop
+ 1a0:  07 d4 ff 97     blezal r30,0 <_start>
+ 1a4:  00 00 00 00     nop
+ 1a8:  07 c0 ff 95     bltz r30,0 <_start>
+ 1ac:  00 00 00 00     nop
+ 1b0:  07 d0 ff 93     bltzal r30,0 <_start>
+ 1b4:  00 00 00 00     nop
+ 1b8:  07 c6 ff 91     blezl r30,0 <_start>
+ 1bc:  00 00 00 00     nop
+ 1c0:  07 c2 ff 8f     bltzl r30,0 <_start>
+ 1c4:  00 00 00 00     nop
+ 1c8:  07 d6 ff 8d     blezall r30,0 <_start>
+ 1cc:  00 00 00 00     nop
+ 1d0:  07 d2 ff 8b     bltzall r30,0 <_start>
+ 1d4:  00 00 00 00     nop
+ 1d8:  1b df ff 89     bmb r30,r31,0 <_start>
+ 1dc:  00 00 00 00     nop
+ 1e0:  5b df ff 87     bmbl r30,r31,0 <_start>
+ 1e4:  00 00 00 00     nop
+ 1e8:  63 df ff 85     bmb0 r30,r31,0 <_start>
+ 1ec:  00 00 00 00     nop
+ 1f0:  67 df ff 83     bmb1 r30,r31,0 <_start>
+ 1f4:  00 00 00 00     nop
+ 1f8:  6b df ff 81     bmb2 r30,r31,0 <_start>
+ 1fc:  00 00 00 00     nop
+ 200:  6f df ff 7f     bmb3 r30,r31,0 <_start>
+ 204:  00 00 00 00     nop
+ 208:  17 df ff 7d     bne r30,r31,0 <_start>
+ 20c:  00 00 00 00     nop
+ 210:  57 df ff 7b     bnel r30,r31,0 <_start>
+ 214:  00 00 00 00     nop
+ 218:  08 00 00 00     j 0 <_start>
+ 21c:  00 00 00 00     nop
+ 220:  0c 1e 00 00     jal r30,0 <_start>
+ 224:  00 00 00 00     nop
+ 228:  03 c0 08 09     jalr r1,r30
+ 22c:  00 00 00 00     nop
+ 230:  03 c0 00 08     jr r30
+ 234:  00 00 00 00     nop
+ 238:  00 00 00 0d     break
+ 23c:  00 00 00 00     nop
+ 240:  4f df 00 02     ctc r30,r31
+ 244:  00 00 00 00     nop
+ 248:  4c 1f 08 00     cfc r1,r31
+ 24c:  00 00 00 00     nop
+ 250:  8f df 00 00     lw r31,0x0\(r30\)
+ 254:  00 00 00 00     nop
+ 258:  87 df 00 00     lh r31,0x0\(r30\)
+ 25c:  00 00 00 00     nop
+ 260:  83 df 00 00     lb r31,0x0\(r30\)
+ 264:  00 00 00 00     nop
+ 268:  97 df 00 00     lhu r31,0x0\(r30\)
+ 26c:  00 00 00 00     nop
+ 270:  93 df 00 00     lbu r31,0x0\(r30\)
+ 274:  00 00 00 00     nop
+ 278:  a3 df 00 00     sb r31,0x0\(r30\)
+ 27c:  00 00 00 00     nop
+ 280:  a7 df 00 00     sh r31,0x0\(r30\)
+ 284:  00 00 00 00     nop
+ 288:  af df 00 00     sw r31,0x0\(r30\)
+ 28c:  00 00 00 00     nop
+ 290:  4f e1 f0 08     rba r30,r31,r1
+ 294:  00 00 00 00     nop
+ 298:  4f e1 f0 0a     rbar r30,r31,r1
+ 29c:  00 00 00 00     nop
+ 2a0:  4f e1 f0 09     rbal r30,r31,r1
+ 2a4:  00 00 00 00     nop
+ 2a8:  4f e1 f0 10     wba r30,r31,r1
+ 2ac:  00 00 00 00     nop
+ 2b0:  4f e1 f0 12     wbac r30,r31,r1
+ 2b4:  00 00 00 00     nop
+ 2b8:  4f e1 f0 11     wbau r30,r31,r1
+ 2bc:  00 00 00 00     nop
+ 2c0:  4f e1 f2 00     rbi r30,r31,r1,0x0
+ 2c4:  00 00 00 00     nop
+ 2c8:  4f e1 f1 00     rbir r30,r31,r1,0x0
+ 2cc:  00 00 00 00     nop
+ 2d0:  4f e1 f3 00     rbil r30,r31,r1,0x0
+ 2d4:  00 00 00 00     nop
+ 2d8:  4f e1 f6 00     wbi r30,r31,r1,0x0
+ 2dc:  00 00 00 00     nop
+ 2e0:  4f e1 f5 00     wbic r30,r31,r1,0x0
+ 2e4:  00 00 00 00     nop
+ 2e8:  4f e1 f7 00     wbiu r30,r31,r1,0x0
+ 2ec:  00 00 00 00     nop
+ 2f0:  4f e1 f0 28     pkrla r30,r31,r1
+ 2f4:  00 00 00 00     nop
+ 2f8:  4f e1 f0 2a     pkrlah r30,r31,r1
+ 2fc:  00 00 00 00     nop
+ 300:  4f e1 f0 29     pkrlau r30,r31,r1
+ 304:  00 00 00 00     nop
+ 308:  4b e1 f0 00     pkrli r30,r31,r1,0x0
+ 30c:  00 00 00 00     nop
+ 310:  4b e1 f2 00     pkrlih r30,r31,r1,0x0
+ 314:  00 00 00 00     nop
+ 318:  4b e1 f1 00     pkrliu r30,r31,r1,0x0
+ 31c:  00 00 00 00     nop
+ 320:  4c 01 f8 01     lock r31,r1
+ 324:  00 00 00 00     nop
+ 328:  4c 01 f8 03     unlk r31,r1
+ 32c:  00 00 00 00     nop
+ 330:  4f e1 f0 06     swwr r30,r31,r1
+ 334:  00 00 00 00     nop
+ 338:  4f e1 f0 07     swwru r30,r31,r1
+ 33c:  00 00 00 00     nop
+ 340:  4c 1f 08 04     swrd r1,r31
+ 344:  00 00 00 00     nop
+ 348:  4c 1f 08 05     swrdl r1,r31
+ 34c:  00 00 00 00     nop
+ 350:  4c 1e 10 0c     dwrd r2,r30
+ 354:  00 00 00 00     nop
+ 358:  4c 1e 10 0d     dwrdl r2,r30
+ 35c:  00 00 00 00     nop
+ 360:  4c 1e 0c 20     cam36 r1,r30,0x4,0x0
+ 364:  00 00 00 00     nop
+ 368:  4c 1e 0c 44     cam72 r1,r30,0x4,0x0
+ 36c:  00 00 00 00     nop
+ 370:  4c 1e 0c 84     cam144 r1,r30,0x4,0x0
+ 374:  00 00 00 00     nop
+ 378:  4c 1e 0c c4     cam288 r1,r30,0x4,0x0
+ 37c:  00 00 00 00     nop
+ 380:  4f df 08 ab     cm32and r1,r30,r31
+ 384:  00 00 00 00     nop
+ 388:  4f df 08 a3     cm32andn r1,r30,r31
+ 38c:  00 00 00 00     nop
+ 390:  4f df 08 aa     cm32or r1,r30,r31
+ 394:  00 00 00 00     nop
+ 398:  4f df 08 b0     cm32ra r1,r30,r31
+ 39c:  00 00 00 00     nop
+ 3a0:  4c 1f 08 a1     cm32rd r1,r31
+ 3a4:  00 00 00 00     nop
+ 3a8:  4c 1f 08 a4     cm32ri r1,r31
+ 3ac:  00 00 00 00     nop
+ 3b0:  4f df 08 a0     cm32rs r1,r30,r31
+ 3b4:  00 00 00 00     nop
+ 3b8:  4f df 08 b8     cm32sa r1,r30,r31
+ 3bc:  00 00 00 00     nop
+ 3c0:  4c 1f 08 a9     cm32sd r1,r31
+ 3c4:  00 00 00 00     nop
+ 3c8:  4c 1f 08 ac     cm32si r1,r31
+ 3cc:  00 00 00 00     nop
+ 3d0:  4f df 08 a8     cm32ss r1,r30,r31
+ 3d4:  00 00 00 00     nop
+ 3d8:  4f df 08 a2     cm32xor r1,r30,r31
+ 3dc:  00 00 00 00     nop
+ 3e0:  4c 1e 10 85     cm64clr r2,r30
+ 3e4:  00 00 00 00     nop
+ 3e8:  4f de 10 90     cm64ra r2,r30,r30
+ 3ec:  00 00 00 00     nop
+ 3f0:  4c 1e 10 81     cm64rd r2,r30
+ 3f4:  00 00 00 00     nop
+ 3f8:  4c 1e 10 84     cm64ri r2,r30
+ 3fc:  00 00 00 00     nop
+ 400:  4f de 10 94     cm64ria2 r2,r30,r30
+ 404:  00 00 00 00     nop
+ 408:  4f de 10 80     cm64rs r2,r30,r30
+ 40c:  00 00 00 00     nop
+ 410:  4f de 10 98     cm64sa r2,r30,r30
+ 414:  00 00 00 00     nop
+ 418:  4c 1e 10 89     cm64sd r2,r30
+ 41c:  00 00 00 00     nop
+ 420:  4c 1e 10 8c     cm64si r2,r30
+ 424:  00 00 00 00     nop
+ 428:  4f de 10 9c     cm64sia2 r2,r30,r30
+ 42c:  00 00 00 00     nop
+ 430:  4f de 10 88     cm64ss r2,r30,r30
+ 434:  00 00 00 00     nop
+ 438:  4f de 10 95     cm128ria2 r2,r30,r30
+ 43c:  00 00 00 00     nop
+ 440:  4f de 10 93     cm128ria3 r2,r30,r30,0x3
+ 444:  00 00 00 00     nop
+ 448:  4f de 10 b4     cm128ria4 r2,r30,r30,0x4
+ 44c:  00 00 00 00     nop
+ 450:  4f de 10 9d     cm128sia2 r2,r30,r30
+ 454:  00 00 00 00     nop
+ 458:  4f de 10 9b     cm128sia3 r2,r30,r30,0x3
+ 45c:  00 00 00 00     nop
+ 460:  4f df 08 bc     cm128sia4 r1,r30,r31,0x4
+ 464:  00 00 00 00     nop
+ 468:  4f df 08 a6     cm128vsa r1,r30,r31
+ 46c:  00 00 00 00     nop
+ 470:  4f df 08 14     crc32 r1,r30,r31
+ 474:  00 00 00 00     nop
+ 478:  4f df 08 15     crc32b r1,r30,r31
+ 47c:  00 00 00 00     nop
+ 480:  4f e0 08 26     chkhdr r1,r31
+ 484:  00 00 00 00     nop
+ 488:  4c 00 08 24     avail r1
+ 48c:  00 00 00 00     nop
+ 490:  4c 20 f8 25     free r31,r1
+ 494:  00 00 00 00     nop
+ 498:  4c 20 f8 27     tstod r31,r1
+ 49c:  00 00 00 00     nop
+ 4a0:  4c 00 08 2c     cmphdr r1
+ 4a4:  00 00 00 00     nop
+ 4a8:  4c 1f 08 20     mcid r1,r31
+ 4ac:  00 00 00 00     nop
+ 4b0:  4c 00 f0 22     dba r30
+ 4b4:  00 00 00 00     nop
+ 4b8:  4c 01 f8 21     dbd r31,r0,r1
+ 4bc:  00 00 00 00     nop
+ 4c0:  4c 20 f8 23     dpwt r31,r1
+ 4c4:  00 00 00 00     nop
diff --git a/gas/testsuite/gas/iq2000/q10test4.s b/gas/testsuite/gas/iq2000/q10test4.s
new file mode 100644 (file)
index 0000000..3ef2ef9
--- /dev/null
@@ -0,0 +1,308 @@
+.global _start\r
+_start:\r
+        ADD    %1,%30,%31\r
+        NOP    \r
+        ADDI   %31,%30,0\r
+        NOP    \r
+        ADDIU  %31,%30,0\r
+        NOP    \r
+        ADDU   %1,%30,%31\r
+        NOP    \r
+        ADO16  %1,%30,%31\r
+        NOP    \r
+        AND    %1,%30,%31\r
+        NOP    \r
+        ANDI   %31,%30,0\r
+        NOP    \r
+        ANDOI  %31,%30,0\r
+        NOP    \r
+        ANDOUI %31,%30,0\r
+        NOP    \r
+        LUI    %31,0\r
+        NOP    \r
+        MRGB   %1,%30,%31,0\r
+        NOP    \r
+        NOR    %1,%30,%31\r
+        NOP    \r
+        OR     %1,%30,%31\r
+        NOP    \r
+        ORI    %31,%30,0\r
+        NOP    \r
+        ORUI   %31,%30,0\r
+        NOP    \r
+        SLL    %1,%31,0\r
+        NOP    \r
+        SLLV   %1,%31,%30\r
+        NOP    \r
+        SLT    %1,%30,%31\r
+        NOP    \r
+        SLTI   %31,%30,0\r
+        NOP    \r
+        SLTIU  %31,%30,0\r
+        NOP    \r
+        SLTU   %1,%30,%31\r
+        NOP    \r
+        SRA    %1,%31,0\r
+        NOP    \r
+        SRAV   %1,%31,%30\r
+        NOP    \r
+        SRL    %1,%31,0\r
+        NOP    \r
+        SRLV   %1,%31,%30\r
+        NOP    \r
+        SUB    %1,%30,%31\r
+        NOP    \r
+        SUBU   %1,%30,%31\r
+        NOP    \r
+        XOR    %1,%30,%31\r
+        NOP    \r
+        XORI   %31,%30,0\r
+        NOP    \r
+        NOP    \r
+        NOP    \r
+        SRMV   %1,%30,%31,0\r
+        NOP    \r
+        SLMV   %1,%30,%31,0\r
+        NOP    \r
+        RAM    %1,%31,0,0,0\r
+        NOP    \r
+        BBI    %30(0),_start\r
+        NOP    \r
+        BBIN   %30(0),_start\r
+        NOP    \r
+        BBV    %30,%31,_start\r
+        NOP    \r
+        BBVN   %30,%31,_start\r
+        NOP    \r
+        BBIL   %30(0),_start\r
+        NOP    \r
+        BBINL  %30(0),_start\r
+        NOP    \r
+        BBVL   %30,%31,_start\r
+        NOP    \r
+        BBVNL  %30,%31,_start\r
+        NOP    \r
+        BEQ    %30,%31,_start\r
+        NOP    \r
+        BEQL   %30,%31,_start\r
+        NOP    \r
+        BGEZ   %30,_start\r
+        NOP    \r
+        BGTZAL %30,_start\r
+        NOP    \r
+        BGEZAL %30,_start\r
+        NOP    \r
+        BGTZALL        %30,_start\r
+        NOP    \r
+        BGEZALL        %30,_start\r
+        NOP    \r
+        BGEZL  %30,_start\r
+        NOP    \r
+        BGTZL  %30,_start\r
+        NOP    \r
+        BGTZ   %30,_start\r
+        NOP    \r
+        BLEZ   %30,_start\r
+        NOP    \r
+        BLEZAL %30,_start\r
+        NOP    \r
+        BLTZ   %30,_start\r
+        NOP    \r
+        BLTZAL %30,_start\r
+        NOP    \r
+        BLEZL  %30,_start\r
+        NOP    \r
+        BLTZL  %30,_start\r
+        NOP    \r
+        BLEZALL        %30,_start\r
+        NOP    \r
+        BLTZALL        %30,_start\r
+        NOP    \r
+        BMB    %30,%31,_start\r
+        NOP    \r
+        BMBL   %30,%31,_start\r
+        NOP    \r
+        BMB0   %30,%31,_start\r
+        NOP    \r
+        BMB1   %30,%31,_start\r
+        NOP    \r
+        BMB2   %30,%31,_start\r
+        NOP    \r
+        BMB3   %30,%31,_start\r
+        NOP    \r
+        BNE    %30,%31,_start\r
+        NOP    \r
+        BNEL   %30,%31,_start\r
+        NOP    \r
+        J      0\r
+        NOP    \r
+        JAL    %30,0\r
+        NOP    \r
+        JALR   %1,%30\r
+        NOP    \r
+        JR     %30\r
+        NOP    \r
+        BREAK  \r
+        NOP    \r
+        CTC    %30,%31\r
+        NOP    \r
+        CFC    %1,%31\r
+        NOP    \r
+        LW     %31,0(%30)\r
+        NOP    \r
+        LH     %31,0(%30)\r
+        NOP    \r
+        LB     %31,0(%30)\r
+        NOP    \r
+        LHU    %31,0(%30)\r
+        NOP    \r
+        LBU    %31,0(%30)\r
+        NOP    \r
+        SB     %31,0(%30)\r
+        NOP    \r
+        SH     %31,0(%30)\r
+        NOP    \r
+        SW     %31,0(%30)\r
+        NOP    \r
+        RBA    %30,%31,%1\r
+        NOP    \r
+        RBAR   %30,%31,%1\r
+        NOP    \r
+        RBAL   %30,%31,%1\r
+        NOP    \r
+        WBA    %30,%31,%1\r
+        NOP    \r
+        WBAC   %30,%31,%1\r
+        NOP    \r
+        WBAU   %30,%31,%1\r
+        NOP    \r
+        RBI    %30,%31,%1,0\r
+        NOP    \r
+        RBIR   %30,%31,%1,0\r
+        NOP    \r
+        RBIL   %30,%31,%1,0\r
+        NOP    \r
+        WBI    %30,%31,%1,0\r
+        NOP    \r
+        WBIC   %30,%31,%1,0\r
+        NOP    \r
+        WBIU   %30,%31,%1,0\r
+        NOP    \r
+        PKRLA  %30,%31,%1\r
+        NOP    \r
+        PKRLAH %30,%31,%1\r
+        NOP    \r
+        PKRLAU %30,%31,%1\r
+        NOP    \r
+        PKRLI  %30,%31,%1,0\r
+        NOP    \r
+        PKRLIH %30,%31,%1,0\r
+        NOP    \r
+        PKRLIU %30,%31,%1,0\r
+        NOP    \r
+        LOCK   %31,%1\r
+        NOP    \r
+        UNLK   %31,%1\r
+        NOP    \r
+        SWWR   %30,%31,%1\r
+        NOP    \r
+        SWWRU  %30,%31,%1\r
+        NOP    \r
+        SWRD   %1,%31\r
+        NOP    \r
+        SWRDL  %1,%31\r
+        NOP    \r
+        DWRD   %2,%30\r
+        NOP    \r
+        DWRDL  %2,%30\r
+        NOP    \r
+        CAM36  %1,%30,4,0\r
+        NOP    \r
+        CAM72  %1,%30,4,0\r
+        NOP    \r
+        CAM144 %1,%30,4,0\r
+        NOP    \r
+        CAM288 %1,%30,4,0\r
+        NOP    \r
+        CM32AND        %1,%30,%31\r
+        NOP    \r
+        CM32ANDN       %1,%30,%31\r
+        NOP    \r
+        CM32OR %1,%30,%31\r
+        NOP    \r
+        CM32RA %1,%30,%31\r
+        NOP    \r
+        CM32RD %1,%31\r
+        NOP    \r
+        CM32RI %1,%31\r
+        NOP    \r
+        CM32RS %1,%30,%31\r
+        NOP    \r
+        CM32SA %1,%30,%31\r
+        NOP    \r
+        CM32SD %1,%31\r
+        NOP    \r
+        CM32SI %1,%31\r
+        NOP    \r
+        CM32SS %1,%30,%31\r
+        NOP    \r
+        CM32XOR        %1,%30,%31\r
+        NOP    \r
+        CM64CLR        %2,%30\r
+        NOP    \r
+        CM64RA %2,%30,%30\r
+        NOP    \r
+        CM64RD %2,%30\r
+        NOP    \r
+        CM64RI %2,%30\r
+        NOP    \r
+        CM64RIA2       %2,%30,%30\r
+        NOP    \r
+        CM64RS %2,%30,%30\r
+        NOP    \r
+        CM64SA %2,%30,%30\r
+        NOP    \r
+        CM64SD %2,%30\r
+        NOP    \r
+        CM64SI %2,%30\r
+        NOP    \r
+        CM64SIA2       %2,%30,%30\r
+        NOP    \r
+        CM64SS %2,%30,%30\r
+        NOP    \r
+        CM128RIA2      %2,%30,%30\r
+        NOP    \r
+        CM128RIA3      %2,%30,%30,3\r
+        NOP    \r
+        CM128RIA4      %2,%30,%30,4\r
+        NOP    \r
+        CM128SIA2      %2,%30,%30\r
+        NOP    \r
+        CM128SIA3      %2,%30,%30,3\r
+        NOP    \r
+        CM128SIA4      %1,%30,%31,4\r
+        NOP    \r
+        CM128VSA       %1,%30,%31\r
+        NOP    \r
+        CRC32  %1,%30,%31\r
+        NOP    \r
+        CRC32B %1,%30,%31\r
+        NOP    \r
+        CHKHDR %1,%31\r
+        NOP    \r
+        AVAIL  %1\r
+        NOP    \r
+        FREE   %31,%1\r
+        NOP    \r
+        TSTOD  %31,%1\r
+        NOP    \r
+        CMPHDR %1\r
+        NOP    \r
+        MCID   %1,%31\r
+        NOP    \r
+        DBA    %30\r
+        NOP    \r
+        DBD    %31,%1\r
+        NOP    \r
+        DPWT   %31,%1\r
+        NOP    \r
diff --git a/gas/testsuite/gas/iq2000/q10test5.d b/gas/testsuite/gas/iq2000/q10test5.d
new file mode 100644 (file)
index 0000000..4485a97
--- /dev/null
@@ -0,0 +1,315 @@
+#as: -m10
+#objdump: -drz
+#name: q10test5
+
+.*: +file format .*
+
+Disassembly of section .text:
+
+00000000 <_start>:
+   0:  03 df f0 20     add r30,r30,r31
+   4:  00 00 00 00     nop
+   8:  23 df 00 00     addi r31,r30,0x0
+   c:  00 00 00 00     nop
+  10:  27 df 00 00     addiu r31,r30,0x0
+  14:  00 00 00 00     nop
+  18:  03 df f0 21     addu r30,r30,r31
+  1c:  00 00 00 00     nop
+  20:  03 df f0 29     ado16 r30,r30,r31
+  24:  00 00 00 00     nop
+  28:  03 df f0 24     and r30,r30,r31
+  2c:  00 00 00 00     nop
+  30:  33 df 00 00     andi r31,r30,0x0
+  34:  00 00 00 00     nop
+  38:  b3 df 00 00     andoi r31,r30,0x0
+  3c:  00 00 00 00     nop
+  40:  bf df 00 00     andoui r31,r30,0x0
+  44:  00 00 00 00     nop
+  48:  3c 1f 00 00     lui r31,0x0
+  4c:  00 00 00 00     nop
+  50:  03 df f0 2d     mrgb r30,r30,r31,0x0
+  54:  00 00 00 00     nop
+  58:  03 df f0 27     nor r30,r30,r31
+  5c:  00 00 00 00     nop
+  60:  03 df f0 25     or r30,r30,r31
+  64:  00 00 00 00     nop
+  68:  37 df 00 00     ori r31,r30,0x0
+  6c:  00 00 00 00     nop
+  70:  3f df 00 00     orui r31,r30,0x0
+  74:  00 00 00 00     nop
+  78:  00 1f f0 00     sll r30,r31,0x0
+  7c:  00 00 00 00     nop
+  80:  03 df f0 04     sllv r30,r31,r30
+  84:  00 00 00 00     nop
+  88:  03 df f0 2a     slt r30,r30,r31
+  8c:  00 00 00 00     nop
+  90:  2b df 00 00     slti r31,r30,0x0
+  94:  00 00 00 00     nop
+  98:  2f df 00 00     sltiu r31,r30,0x0
+  9c:  00 00 00 00     nop
+  a0:  03 df f0 2b     sltu r30,r30,r31
+  a4:  00 00 00 00     nop
+  a8:  00 1f f0 03     sra r30,r31,0x0
+  ac:  00 00 00 00     nop
+  b0:  03 df f0 07     srav r30,r31,r30
+  b4:  00 00 00 00     nop
+  b8:  00 1f f0 02     srl r30,r31,0x0
+  bc:  00 00 00 00     nop
+  c0:  03 df f0 06     srlv r30,r31,r30
+  c4:  00 00 00 00     nop
+  c8:  03 df f0 22     sub r30,r30,r31
+  cc:  00 00 00 00     nop
+  d0:  03 df f0 23     subu r30,r30,r31
+  d4:  00 00 00 00     nop
+  d8:  03 df f0 26     xor r30,r30,r31
+  dc:  00 00 00 00     nop
+  e0:  3b df 00 00     xori r31,r30,0x0
+  e4:  00 00 00 00     nop
+  e8:  00 00 00 00     nop
+  ec:  00 00 00 00     nop
+  f0:  03 fe f0 05     srmv r30,r30,r31,0x0
+  f4:  00 00 00 00     nop
+  f8:  03 fe f0 01     slmv r30,r30,r31,0x0
+  fc:  00 00 00 00     nop
+ 100:  9c 1f f0 00     ram r30,r31,0x0,0x0,0x0
+ 104:  00 00 00 00     nop
+ 108:  73 c0 ff bd     bbi r30\(0x0\),0 <_start>
+ 10c:  00 00 00 00     nop
+ 110:  7b c0 ff bb     bbin r30\(0x0\),0 <_start>
+ 114:  00 00 00 00     nop
+ 118:  77 df ff b9     bbv r30,r31,0 <_start>
+ 11c:  00 00 00 00     nop
+ 120:  7f df ff b7     bbvn r30,r31,0 <_start>
+ 124:  00 00 00 00     nop
+ 128:  f3 c0 ff b5     bbil r30\(0x0\),0 <_start>
+ 12c:  00 00 00 00     nop
+ 130:  fb c0 ff b3     bbinl r30\(0x0\),0 <_start>
+ 134:  00 00 00 00     nop
+ 138:  f7 df ff b1     bbvl r30,r31,0 <_start>
+ 13c:  00 00 00 00     nop
+ 140:  ff df ff af     bbvnl r30,r31,0 <_start>
+ 144:  00 00 00 00     nop
+ 148:  13 df ff ad     beq r30,r31,0 <_start>
+ 14c:  00 00 00 00     nop
+ 150:  53 df ff ab     beql r30,r31,0 <_start>
+ 154:  00 00 00 00     nop
+ 158:  07 c1 ff a9     bgez r30,0 <_start>
+ 15c:  00 00 00 00     nop
+ 160:  07 d5 ff a7     bgtzal r30,0 <_start>
+ 164:  00 00 00 00     nop
+ 168:  07 d1 ff a5     bgezal r30,0 <_start>
+ 16c:  00 00 00 00     nop
+ 170:  07 d7 ff a3     bgtzall r30,0 <_start>
+ 174:  00 00 00 00     nop
+ 178:  07 d3 ff a1     bgezall r30,0 <_start>
+ 17c:  00 00 00 00     nop
+ 180:  07 c3 ff 9f     bgezl r30,0 <_start>
+ 184:  00 00 00 00     nop
+ 188:  07 c7 ff 9d     bgtzl r30,0 <_start>
+ 18c:  00 00 00 00     nop
+ 190:  07 c5 ff 9b     bgtz r30,0 <_start>
+ 194:  00 00 00 00     nop
+ 198:  07 c4 ff 99     blez r30,0 <_start>
+ 19c:  00 00 00 00     nop
+ 1a0:  07 d4 ff 97     blezal r30,0 <_start>
+ 1a4:  00 00 00 00     nop
+ 1a8:  07 c0 ff 95     bltz r30,0 <_start>
+ 1ac:  00 00 00 00     nop
+ 1b0:  07 d0 ff 93     bltzal r30,0 <_start>
+ 1b4:  00 00 00 00     nop
+ 1b8:  07 c6 ff 91     blezl r30,0 <_start>
+ 1bc:  00 00 00 00     nop
+ 1c0:  07 c2 ff 8f     bltzl r30,0 <_start>
+ 1c4:  00 00 00 00     nop
+ 1c8:  07 d6 ff 8d     blezall r30,0 <_start>
+ 1cc:  00 00 00 00     nop
+ 1d0:  07 d2 ff 8b     bltzall r30,0 <_start>
+ 1d4:  00 00 00 00     nop
+ 1d8:  1b df ff 89     bmb r30,r31,0 <_start>
+ 1dc:  00 00 00 00     nop
+ 1e0:  5b df ff 87     bmbl r30,r31,0 <_start>
+ 1e4:  00 00 00 00     nop
+ 1e8:  63 df ff 85     bmb0 r30,r31,0 <_start>
+ 1ec:  00 00 00 00     nop
+ 1f0:  67 df ff 83     bmb1 r30,r31,0 <_start>
+ 1f4:  00 00 00 00     nop
+ 1f8:  6b df ff 81     bmb2 r30,r31,0 <_start>
+ 1fc:  00 00 00 00     nop
+ 200:  6f df ff 7f     bmb3 r30,r31,0 <_start>
+ 204:  00 00 00 00     nop
+ 208:  17 df ff 7d     bne r30,r31,0 <_start>
+ 20c:  00 00 00 00     nop
+ 210:  57 df ff 7b     bnel r30,r31,0 <_start>
+ 214:  00 00 00 00     nop
+ 218:  08 00 00 00     j 0 <_start>
+ 21c:  00 00 00 00     nop
+ 220:  0c 1e 00 00     jal r30,0 <_start>
+ 224:  00 00 00 00     nop
+ 228:  03 c0 f0 09     jalr r30,r30
+ 22c:  00 00 00 00     nop
+ 230:  03 c0 00 08     jr r30
+ 234:  00 00 00 00     nop
+ 238:  00 00 00 0d     break
+ 23c:  00 00 00 00     nop
+ 240:  4f df 00 02     ctc r30,r31
+ 244:  00 00 00 00     nop
+ 248:  4c 1f f0 00     cfc r30,r31
+ 24c:  00 00 00 00     nop
+ 250:  8f df 00 00     lw r31,0x0\(r30\)
+ 254:  00 00 00 00     nop
+ 258:  87 df 00 00     lh r31,0x0\(r30\)
+ 25c:  00 00 00 00     nop
+ 260:  83 df 00 00     lb r31,0x0\(r30\)
+ 264:  00 00 00 00     nop
+ 268:  97 df 00 00     lhu r31,0x0\(r30\)
+ 26c:  00 00 00 00     nop
+ 270:  93 df 00 00     lbu r31,0x0\(r30\)
+ 274:  00 00 00 00     nop
+ 278:  a3 df 00 00     sb r31,0x0\(r30\)
+ 27c:  00 00 00 00     nop
+ 280:  a7 df 00 00     sh r31,0x0\(r30\)
+ 284:  00 00 00 00     nop
+ 288:  af df 00 00     sw r31,0x0\(r30\)
+ 28c:  00 00 00 00     nop
+ 290:  4f fe f0 08     rba r30,r31,r30
+ 294:  00 00 00 00     nop
+ 298:  4f fe f0 0a     rbar r30,r31,r30
+ 29c:  00 00 00 00     nop
+ 2a0:  4f fe f0 09     rbal r30,r31,r30
+ 2a4:  00 00 00 00     nop
+ 2a8:  4f fe f0 10     wba r30,r31,r30
+ 2ac:  00 00 00 00     nop
+ 2b0:  4f fe f0 12     wbac r30,r31,r30
+ 2b4:  00 00 00 00     nop
+ 2b8:  4f fe f0 11     wbau r30,r31,r30
+ 2bc:  00 00 00 00     nop
+ 2c0:  4f fe f2 00     rbi r30,r31,r30,0x0
+ 2c4:  00 00 00 00     nop
+ 2c8:  4f fe f1 00     rbir r30,r31,r30,0x0
+ 2cc:  00 00 00 00     nop
+ 2d0:  4f fe f3 00     rbil r30,r31,r30,0x0
+ 2d4:  00 00 00 00     nop
+ 2d8:  4f fe f6 00     wbi r30,r31,r30,0x0
+ 2dc:  00 00 00 00     nop
+ 2e0:  4f fe f5 00     wbic r30,r31,r30,0x0
+ 2e4:  00 00 00 00     nop
+ 2e8:  4f fe f7 00     wbiu r30,r31,r30,0x0
+ 2ec:  00 00 00 00     nop
+ 2f0:  4f fe f0 28     pkrla r30,r31,r30
+ 2f4:  00 00 00 00     nop
+ 2f8:  4f fe f0 2a     pkrlah r30,r31,r30
+ 2fc:  00 00 00 00     nop
+ 300:  4f fe f0 29     pkrlau r30,r31,r30
+ 304:  00 00 00 00     nop
+ 308:  4b fe f0 00     pkrli r30,r31,r30,0x0
+ 30c:  00 00 00 00     nop
+ 310:  4b fe f2 00     pkrlih r30,r31,r30,0x0
+ 314:  00 00 00 00     nop
+ 318:  4b fe f1 00     pkrliu r30,r31,r30,0x0
+ 31c:  00 00 00 00     nop
+ 320:  4c 1e f8 01     lock r31,r30
+ 324:  00 00 00 00     nop
+ 328:  4c 1e f8 03     unlk r31,r30
+ 32c:  00 00 00 00     nop
+ 330:  4f fe f0 06     swwr r30,r31,r30
+ 334:  00 00 00 00     nop
+ 338:  4f fe f0 07     swwru r30,r31,r30
+ 33c:  00 00 00 00     nop
+ 340:  4c 1f f0 04     swrd r30,r31
+ 344:  00 00 00 00     nop
+ 348:  4c 1f f0 05     swrdl r30,r31
+ 34c:  00 00 00 00     nop
+ 350:  4c 1e f0 0c     dwrd r30,r30
+ 354:  00 00 00 00     nop
+ 358:  4c 1e f0 0d     dwrdl r30,r30
+ 35c:  00 00 00 00     nop
+ 360:  4c 1f f4 28     cam36 r30,r31,0x5,0x0
+ 364:  00 00 00 00     nop
+ 368:  4c 1f f4 45     cam72 r30,r31,0x5,0x0
+ 36c:  00 00 00 00     nop
+ 370:  4c 1f f4 85     cam144 r30,r31,0x5,0x0
+ 374:  00 00 00 00     nop
+ 378:  4c 1f f4 c5     cam288 r30,r31,0x5,0x0
+ 37c:  00 00 00 00     nop
+ 380:  4f df f0 ab     cm32and r30,r30,r31
+ 384:  00 00 00 00     nop
+ 388:  4f df f0 a3     cm32andn r30,r30,r31
+ 38c:  00 00 00 00     nop
+ 390:  4f df f0 aa     cm32or r30,r30,r31
+ 394:  00 00 00 00     nop
+ 398:  4f df f0 b0     cm32ra r30,r30,r31
+ 39c:  00 00 00 00     nop
+ 3a0:  4c 1f f0 a1     cm32rd r30,r31
+ 3a4:  00 00 00 00     nop
+ 3a8:  4c 1f f0 a4     cm32ri r30,r31
+ 3ac:  00 00 00 00     nop
+ 3b0:  4f df f0 a0     cm32rs r30,r30,r31
+ 3b4:  00 00 00 00     nop
+ 3b8:  4f df f0 b8     cm32sa r30,r30,r31
+ 3bc:  00 00 00 00     nop
+ 3c0:  4c 1f f0 a9     cm32sd r30,r31
+ 3c4:  00 00 00 00     nop
+ 3c8:  4c 1f f0 ac     cm32si r30,r31
+ 3cc:  00 00 00 00     nop
+ 3d0:  4f df f0 a8     cm32ss r30,r30,r31
+ 3d4:  00 00 00 00     nop
+ 3d8:  4f df f0 a2     cm32xor r30,r30,r31
+ 3dc:  00 00 00 00     nop
+ 3e0:  4c 1e f0 85     cm64clr r30,r30
+ 3e4:  00 00 00 00     nop
+ 3e8:  4f de f0 90     cm64ra r30,r30,r30
+ 3ec:  00 00 00 00     nop
+ 3f0:  4c 1e f0 81     cm64rd r30,r30
+ 3f4:  00 00 00 00     nop
+ 3f8:  4c 1e f0 84     cm64ri r30,r30
+ 3fc:  00 00 00 00     nop
+ 400:  4f de f0 94     cm64ria2 r30,r30,r30
+ 404:  00 00 00 00     nop
+ 408:  4f de f0 80     cm64rs r30,r30,r30
+ 40c:  00 00 00 00     nop
+ 410:  4f de f0 98     cm64sa r30,r30,r30
+ 414:  00 00 00 00     nop
+ 418:  4c 1e f0 89     cm64sd r30,r30
+ 41c:  00 00 00 00     nop
+ 420:  4c 1e f0 8c     cm64si r30,r30
+ 424:  00 00 00 00     nop
+ 428:  4f de f0 9c     cm64sia2 r30,r30,r30
+ 42c:  00 00 00 00     nop
+ 430:  4f de f0 88     cm64ss r30,r30,r30
+ 434:  00 00 00 00     nop
+ 438:  4f de f0 95     cm128ria2 r30,r30,r30
+ 43c:  00 00 00 00     nop
+ 440:  4f de f0 93     cm128ria3 r30,r30,r30,0x3
+ 444:  00 00 00 00     nop
+ 448:  4f de f0 b5     cm128ria4 r30,r30,r30,0x5
+ 44c:  00 00 00 00     nop
+ 450:  4f de f0 9d     cm128sia2 r30,r30,r30
+ 454:  00 00 00 00     nop
+ 458:  4f de f0 9b     cm128sia3 r30,r30,r30,0x3
+ 45c:  00 00 00 00     nop
+ 460:  4f df f0 bd     cm128sia4 r30,r30,r31,0x5
+ 464:  00 00 00 00     nop
+ 468:  4f df f0 a6     cm128vsa r30,r30,r31
+ 46c:  00 00 00 00     nop
+ 470:  4f df f0 14     crc32 r30,r30,r31
+ 474:  00 00 00 00     nop
+ 478:  4f df f0 15     crc32b r30,r30,r31
+ 47c:  00 00 00 00     nop
+ 480:  4f e0 f0 26     chkhdr r30,r31
+ 484:  00 00 00 00     nop
+ 488:  4c 00 f0 24     avail r30
+ 48c:  00 00 00 00     nop
+ 490:  4f c0 f8 25     free r31,r30
+ 494:  00 00 00 00     nop
+ 498:  4f c0 f8 27     tstod r31,r30
+ 49c:  00 00 00 00     nop
+ 4a0:  4c 00 f0 2c     cmphdr r30
+ 4a4:  00 00 00 00     nop
+ 4a8:  4c 1f f0 20     mcid r30,r31
+ 4ac:  00 00 00 00     nop
+ 4b0:  4c 00 f0 22     dba r30
+ 4b4:  00 00 00 00     nop
+ 4b8:  4c 1e f8 21     dbd r31,r0,r30
+ 4bc:  00 00 00 00     nop
+ 4c0:  4f c0 f8 23     dpwt r31,r30
+ 4c4:  00 00 00 00     nop
diff --git a/gas/testsuite/gas/iq2000/q10test5.s b/gas/testsuite/gas/iq2000/q10test5.s
new file mode 100644 (file)
index 0000000..ab80fac
--- /dev/null
@@ -0,0 +1,308 @@
+.global _start\r
+_start:\r
+        ADD    %30,%30,%31\r
+        NOP    \r
+        ADDI   %31,%30,0\r
+        NOP    \r
+        ADDIU  %31,%30,0\r
+        NOP    \r
+        ADDU   %30,%30,%31\r
+        NOP    \r
+        ADO16  %30,%30,%31\r
+        NOP    \r
+        AND    %30,%30,%31\r
+        NOP    \r
+        ANDI   %31,%30,0\r
+        NOP    \r
+        ANDOI  %31,%30,0\r
+        NOP    \r
+        ANDOUI %31,%30,0\r
+        NOP    \r
+        LUI    %31,0\r
+        NOP    \r
+        MRGB   %30,%30,%31,0\r
+        NOP    \r
+        NOR    %30,%30,%31\r
+        NOP    \r
+        OR     %30,%30,%31\r
+        NOP    \r
+        ORI    %31,%30,0\r
+        NOP    \r
+        ORUI   %31,%30,0\r
+        NOP    \r
+        SLL    %30,%31,0\r
+        NOP    \r
+        SLLV   %30,%31,%30\r
+        NOP    \r
+        SLT    %30,%30,%31\r
+        NOP    \r
+        SLTI   %31,%30,0\r
+        NOP    \r
+        SLTIU  %31,%30,0\r
+        NOP    \r
+        SLTU   %30,%30,%31\r
+        NOP    \r
+        SRA    %30,%31,0\r
+        NOP    \r
+        SRAV   %30,%31,%30\r
+        NOP    \r
+        SRL    %30,%31,0\r
+        NOP    \r
+        SRLV   %30,%31,%30\r
+        NOP    \r
+        SUB    %30,%30,%31\r
+        NOP    \r
+        SUBU   %30,%30,%31\r
+        NOP    \r
+        XOR    %30,%30,%31\r
+        NOP    \r
+        XORI   %31,%30,0\r
+        NOP    \r
+        NOP    \r
+        NOP    \r
+        SRMV   %30,%30,%31,0\r
+        NOP    \r
+        SLMV   %30,%30,%31,0\r
+        NOP    \r
+        RAM    %30,%31,0,0,0\r
+        NOP    \r
+        BBI    %30(0),_start\r
+        NOP    \r
+        BBIN   %30(0),_start\r
+        NOP    \r
+        BBV    %30,%31,_start\r
+        NOP    \r
+        BBVN   %30,%31,_start\r
+        NOP    \r
+        BBIL   %30(0),_start\r
+        NOP    \r
+        BBINL  %30(0),_start\r
+        NOP    \r
+        BBVL   %30,%31,_start\r
+        NOP    \r
+        BBVNL  %30,%31,_start\r
+        NOP    \r
+        BEQ    %30,%31,_start\r
+        NOP    \r
+        BEQL   %30,%31,_start\r
+        NOP    \r
+        BGEZ   %30,_start\r
+        NOP    \r
+        BGTZAL %30,_start\r
+        NOP    \r
+        BGEZAL %30,_start\r
+        NOP    \r
+        BGTZALL        %30,_start\r
+        NOP    \r
+        BGEZALL        %30,_start\r
+        NOP    \r
+        BGEZL  %30,_start\r
+        NOP    \r
+        BGTZL  %30,_start\r
+        NOP    \r
+        BGTZ   %30,_start\r
+        NOP    \r
+        BLEZ   %30,_start\r
+        NOP    \r
+        BLEZAL %30,_start\r
+        NOP    \r
+        BLTZ   %30,_start\r
+        NOP    \r
+        BLTZAL %30,_start\r
+        NOP    \r
+        BLEZL  %30,_start\r
+        NOP    \r
+        BLTZL  %30,_start\r
+        NOP    \r
+        BLEZALL        %30,_start\r
+        NOP    \r
+        BLTZALL        %30,_start\r
+        NOP    \r
+        BMB    %30,%31,_start\r
+        NOP    \r
+        BMBL   %30,%31,_start\r
+        NOP    \r
+        BMB0   %30,%31,_start\r
+        NOP    \r
+        BMB1   %30,%31,_start\r
+        NOP    \r
+        BMB2   %30,%31,_start\r
+        NOP    \r
+        BMB3   %30,%31,_start\r
+        NOP    \r
+        BNE    %30,%31,_start\r
+        NOP    \r
+        BNEL   %30,%31,_start\r
+        NOP    \r
+        J      0\r
+        NOP    \r
+        JAL    %30,0\r
+        NOP    \r
+        JALR   %30,%30\r
+        NOP    \r
+        JR     %30\r
+        NOP    \r
+        BREAK  \r
+        NOP    \r
+        CTC    %30,%31\r
+        NOP    \r
+        CFC    %30,%31\r
+        NOP    \r
+        LW     %31,0(%30)\r
+        NOP    \r
+        LH     %31,0(%30)\r
+        NOP    \r
+        LB     %31,0(%30)\r
+        NOP    \r
+        LHU    %31,0(%30)\r
+        NOP    \r
+        LBU    %31,0(%30)\r
+        NOP    \r
+        SB     %31,0(%30)\r
+        NOP    \r
+        SH     %31,0(%30)\r
+        NOP    \r
+        SW     %31,0(%30)\r
+        NOP    \r
+        RBA    %30,%31,%30\r
+        NOP    \r
+        RBAR   %30,%31,%30\r
+        NOP    \r
+        RBAL   %30,%31,%30\r
+        NOP    \r
+        WBA    %30,%31,%30\r
+        NOP    \r
+        WBAC   %30,%31,%30\r
+        NOP    \r
+        WBAU   %30,%31,%30\r
+        NOP    \r
+        RBI    %30,%31,%30,0\r
+        NOP    \r
+        RBIR   %30,%31,%30,0\r
+        NOP    \r
+        RBIL   %30,%31,%30,0\r
+        NOP    \r
+        WBI    %30,%31,%30,0\r
+        NOP    \r
+        WBIC   %30,%31,%30,0\r
+        NOP    \r
+        WBIU   %30,%31,%30,0\r
+        NOP    \r
+        PKRLA  %30,%31,%30\r
+        NOP    \r
+        PKRLAH %30,%31,%30\r
+        NOP    \r
+        PKRLAU %30,%31,%30\r
+        NOP    \r
+        PKRLI  %30,%31,%30,0\r
+        NOP    \r
+        PKRLIH %30,%31,%30,0\r
+        NOP    \r
+        PKRLIU %30,%31,%30,0\r
+        NOP    \r
+        LOCK   %31,%30\r
+        NOP    \r
+        UNLK   %31,%30\r
+        NOP    \r
+        SWWR   %30,%31,%30\r
+        NOP    \r
+        SWWRU  %30,%31,%30\r
+        NOP    \r
+        SWRD   %30,%31\r
+        NOP    \r
+        SWRDL  %30,%31\r
+        NOP    \r
+        DWRD   %30,%30\r
+        NOP    \r
+        DWRDL  %30,%30\r
+        NOP    \r
+        CAM36  %30,%31,5,0\r
+        NOP    \r
+        CAM72  %30,%31,5,0\r
+        NOP    \r
+        CAM144 %30,%31,5,0\r
+        NOP    \r
+        CAM288 %30,%31,5,0\r
+        NOP    \r
+        CM32AND        %30,%30,%31\r
+        NOP    \r
+        CM32ANDN       %30,%30,%31\r
+        NOP    \r
+        CM32OR %30,%30,%31\r
+        NOP    \r
+        CM32RA %30,%30,%31\r
+        NOP    \r
+        CM32RD %30,%31\r
+        NOP    \r
+        CM32RI %30,%31\r
+        NOP    \r
+        CM32RS %30,%30,%31\r
+        NOP    \r
+        CM32SA %30,%30,%31\r
+        NOP    \r
+        CM32SD %30,%31\r
+        NOP    \r
+        CM32SI %30,%31\r
+        NOP    \r
+        CM32SS %30,%30,%31\r
+        NOP    \r
+        CM32XOR        %30,%30,%31\r
+        NOP    \r
+        CM64CLR        %30,%30\r
+        NOP    \r
+        CM64RA %30,%30,%30\r
+        NOP    \r
+        CM64RD %30,%30\r
+        NOP    \r
+        CM64RI %30,%30\r
+        NOP    \r
+        CM64RIA2       %30,%30,%30\r
+        NOP    \r
+        CM64RS %30,%30,%30\r
+        NOP    \r
+        CM64SA %30,%30,%30\r
+        NOP    \r
+        CM64SD %30,%30\r
+        NOP    \r
+        CM64SI %30,%30\r
+        NOP    \r
+        CM64SIA2       %30,%30,%30\r
+        NOP    \r
+        CM64SS %30,%30,%30\r
+        NOP    \r
+        CM128RIA2      %30,%30,%30\r
+        NOP    \r
+        CM128RIA3      %30,%30,%30,3\r
+        NOP    \r
+        CM128RIA4      %30,%30,%30,5\r
+        NOP    \r
+        CM128SIA2      %30,%30,%30\r
+        NOP    \r
+        CM128SIA3      %30,%30,%30,3\r
+        NOP    \r
+        CM128SIA4      %30,%30,%31,5\r
+        NOP    \r
+        CM128VSA       %30,%30,%31\r
+        NOP    \r
+        CRC32  %30,%30,%31\r
+        NOP    \r
+        CRC32B %30,%30,%31\r
+        NOP    \r
+        CHKHDR %30,%31\r
+        NOP    \r
+        AVAIL  %30\r
+        NOP    \r
+        FREE   %31,%30\r
+        NOP    \r
+        TSTOD  %31,%30\r
+        NOP    \r
+        CMPHDR %30\r
+        NOP    \r
+        MCID   %30,%31\r
+        NOP    \r
+        DBA    %30\r
+        NOP    \r
+        DBD    %31,%30\r
+        NOP    \r
+        DPWT   %31,%30\r
+        NOP    \r
diff --git a/gas/testsuite/gas/iq2000/q10test6.d b/gas/testsuite/gas/iq2000/q10test6.d
new file mode 100644 (file)
index 0000000..c7e0adf
--- /dev/null
@@ -0,0 +1,315 @@
+#as: -m10
+#objdump: -drz
+#name: q10test6
+
+.*: +file format .*
+
+Disassembly of section .text:
+
+00000000 <_start>:
+   0:  03 de f0 20     add r30,r30,r30
+   4:  00 00 00 00     nop
+   8:  23 de 00 00     addi r30,r30,0x0
+   c:  00 00 00 00     nop
+  10:  27 de 00 00     addiu r30,r30,0x0
+  14:  00 00 00 00     nop
+  18:  03 de f0 21     addu r30,r30,r30
+  1c:  00 00 00 00     nop
+  20:  03 de f0 29     ado16 r30,r30,r30
+  24:  00 00 00 00     nop
+  28:  03 de f0 24     and r30,r30,r30
+  2c:  00 00 00 00     nop
+  30:  33 de 00 00     andi r30,r30,0x0
+  34:  00 00 00 00     nop
+  38:  b3 de 00 00     andoi r30,r30,0x0
+  3c:  00 00 00 00     nop
+  40:  bf de 00 00     andoui r30,r30,0x0
+  44:  00 00 00 00     nop
+  48:  3c 1e 00 00     lui r30,0x0
+  4c:  00 00 00 00     nop
+  50:  03 de f0 2d     mrgb r30,r30,r30,0x0
+  54:  00 00 00 00     nop
+  58:  03 de f0 27     nor r30,r30,r30
+  5c:  00 00 00 00     nop
+  60:  03 de f0 25     or r30,r30,r30
+  64:  00 00 00 00     nop
+  68:  37 de 00 00     ori r30,r30,0x0
+  6c:  00 00 00 00     nop
+  70:  3f de 00 00     orui r30,r30,0x0
+  74:  00 00 00 00     nop
+  78:  00 1e f0 00     sll r30,r30,0x0
+  7c:  00 00 00 00     nop
+  80:  03 de f0 04     sllv r30,r30,r30
+  84:  00 00 00 00     nop
+  88:  03 de f0 2a     slt r30,r30,r30
+  8c:  00 00 00 00     nop
+  90:  2b de 00 00     slti r30,r30,0x0
+  94:  00 00 00 00     nop
+  98:  2f de 00 00     sltiu r30,r30,0x0
+  9c:  00 00 00 00     nop
+  a0:  03 de f0 2b     sltu r30,r30,r30
+  a4:  00 00 00 00     nop
+  a8:  00 1e f0 03     sra r30,r30,0x0
+  ac:  00 00 00 00     nop
+  b0:  03 de f0 07     srav r30,r30,r30
+  b4:  00 00 00 00     nop
+  b8:  00 1e f0 02     srl r30,r30,0x0
+  bc:  00 00 00 00     nop
+  c0:  03 de f0 06     srlv r30,r30,r30
+  c4:  00 00 00 00     nop
+  c8:  03 de f0 22     sub r30,r30,r30
+  cc:  00 00 00 00     nop
+  d0:  03 de f0 23     subu r30,r30,r30
+  d4:  00 00 00 00     nop
+  d8:  03 de f0 26     xor r30,r30,r30
+  dc:  00 00 00 00     nop
+  e0:  3b de 00 00     xori r30,r30,0x0
+  e4:  00 00 00 00     nop
+  e8:  00 00 00 00     nop
+  ec:  00 00 00 00     nop
+  f0:  03 de f0 05     srmv r30,r30,r30,0x0
+  f4:  00 00 00 00     nop
+  f8:  03 de f0 01     slmv r30,r30,r30,0x0
+  fc:  00 00 00 00     nop
+ 100:  9c 1e f0 00     ram r30,r30,0x0,0x0,0x0
+ 104:  00 00 00 00     nop
+ 108:  73 c0 ff bd     bbi r30\(0x0\),0 <_start>
+ 10c:  00 00 00 00     nop
+ 110:  7b c0 ff bb     bbin r30\(0x0\),0 <_start>
+ 114:  00 00 00 00     nop
+ 118:  77 de ff b9     bbv r30,r30,0 <_start>
+ 11c:  00 00 00 00     nop
+ 120:  7f de ff b7     bbvn r30,r30,0 <_start>
+ 124:  00 00 00 00     nop
+ 128:  f3 c0 ff b5     bbil r30\(0x0\),0 <_start>
+ 12c:  00 00 00 00     nop
+ 130:  fb c0 ff b3     bbinl r30\(0x0\),0 <_start>
+ 134:  00 00 00 00     nop
+ 138:  f7 de ff b1     bbvl r30,r30,0 <_start>
+ 13c:  00 00 00 00     nop
+ 140:  ff de ff af     bbvnl r30,r30,0 <_start>
+ 144:  00 00 00 00     nop
+ 148:  13 de ff ad     beq r30,r30,0 <_start>
+ 14c:  00 00 00 00     nop
+ 150:  53 de ff ab     beql r30,r30,0 <_start>
+ 154:  00 00 00 00     nop
+ 158:  07 c1 ff a9     bgez r30,0 <_start>
+ 15c:  00 00 00 00     nop
+ 160:  07 d5 ff a7     bgtzal r30,0 <_start>
+ 164:  00 00 00 00     nop
+ 168:  07 d1 ff a5     bgezal r30,0 <_start>
+ 16c:  00 00 00 00     nop
+ 170:  07 d7 ff a3     bgtzall r30,0 <_start>
+ 174:  00 00 00 00     nop
+ 178:  07 d3 ff a1     bgezall r30,0 <_start>
+ 17c:  00 00 00 00     nop
+ 180:  07 c3 ff 9f     bgezl r30,0 <_start>
+ 184:  00 00 00 00     nop
+ 188:  07 c7 ff 9d     bgtzl r30,0 <_start>
+ 18c:  00 00 00 00     nop
+ 190:  07 c5 ff 9b     bgtz r30,0 <_start>
+ 194:  00 00 00 00     nop
+ 198:  07 c4 ff 99     blez r30,0 <_start>
+ 19c:  00 00 00 00     nop
+ 1a0:  07 d4 ff 97     blezal r30,0 <_start>
+ 1a4:  00 00 00 00     nop
+ 1a8:  07 c0 ff 95     bltz r30,0 <_start>
+ 1ac:  00 00 00 00     nop
+ 1b0:  07 d0 ff 93     bltzal r30,0 <_start>
+ 1b4:  00 00 00 00     nop
+ 1b8:  07 c6 ff 91     blezl r30,0 <_start>
+ 1bc:  00 00 00 00     nop
+ 1c0:  07 c2 ff 8f     bltzl r30,0 <_start>
+ 1c4:  00 00 00 00     nop
+ 1c8:  07 d6 ff 8d     blezall r30,0 <_start>
+ 1cc:  00 00 00 00     nop
+ 1d0:  07 d2 ff 8b     bltzall r30,0 <_start>
+ 1d4:  00 00 00 00     nop
+ 1d8:  1b de ff 89     bmb r30,r30,0 <_start>
+ 1dc:  00 00 00 00     nop
+ 1e0:  5b de ff 87     bmbl r30,r30,0 <_start>
+ 1e4:  00 00 00 00     nop
+ 1e8:  63 de ff 85     bmb0 r30,r30,0 <_start>
+ 1ec:  00 00 00 00     nop
+ 1f0:  67 de ff 83     bmb1 r30,r30,0 <_start>
+ 1f4:  00 00 00 00     nop
+ 1f8:  6b de ff 81     bmb2 r30,r30,0 <_start>
+ 1fc:  00 00 00 00     nop
+ 200:  6f de ff 7f     bmb3 r30,r30,0 <_start>
+ 204:  00 00 00 00     nop
+ 208:  17 de ff 7d     bne r30,r30,0 <_start>
+ 20c:  00 00 00 00     nop
+ 210:  57 de ff 7b     bnel r30,r30,0 <_start>
+ 214:  00 00 00 00     nop
+ 218:  08 00 00 00     j 0 <_start>
+ 21c:  00 00 00 00     nop
+ 220:  0c 1e 00 00     jal r30,0 <_start>
+ 224:  00 00 00 00     nop
+ 228:  03 c0 f0 09     jalr r30,r30
+ 22c:  00 00 00 00     nop
+ 230:  03 c0 00 08     jr r30
+ 234:  00 00 00 00     nop
+ 238:  00 00 00 0d     break
+ 23c:  00 00 00 00     nop
+ 240:  4f de 00 02     ctc r30,r30
+ 244:  00 00 00 00     nop
+ 248:  4c 1e f0 00     cfc r30,r30
+ 24c:  00 00 00 00     nop
+ 250:  8f de 00 00     lw r30,0x0\(r30\)
+ 254:  00 00 00 00     nop
+ 258:  87 de 00 00     lh r30,0x0\(r30\)
+ 25c:  00 00 00 00     nop
+ 260:  83 de 00 00     lb r30,0x0\(r30\)
+ 264:  00 00 00 00     nop
+ 268:  97 de 00 00     lhu r30,0x0\(r30\)
+ 26c:  00 00 00 00     nop
+ 270:  93 de 00 00     lbu r30,0x0\(r30\)
+ 274:  00 00 00 00     nop
+ 278:  a3 de 00 00     sb r30,0x0\(r30\)
+ 27c:  00 00 00 00     nop
+ 280:  a7 de 00 00     sh r30,0x0\(r30\)
+ 284:  00 00 00 00     nop
+ 288:  af de 00 00     sw r30,0x0\(r30\)
+ 28c:  00 00 00 00     nop
+ 290:  4f de f0 08     rba r30,r30,r30
+ 294:  00 00 00 00     nop
+ 298:  4f de f0 0a     rbar r30,r30,r30
+ 29c:  00 00 00 00     nop
+ 2a0:  4f de f0 09     rbal r30,r30,r30
+ 2a4:  00 00 00 00     nop
+ 2a8:  4f de f0 10     wba r30,r30,r30
+ 2ac:  00 00 00 00     nop
+ 2b0:  4f de f0 12     wbac r30,r30,r30
+ 2b4:  00 00 00 00     nop
+ 2b8:  4f de f0 11     wbau r30,r30,r30
+ 2bc:  00 00 00 00     nop
+ 2c0:  4f de f2 00     rbi r30,r30,r30,0x0
+ 2c4:  00 00 00 00     nop
+ 2c8:  4f de f1 00     rbir r30,r30,r30,0x0
+ 2cc:  00 00 00 00     nop
+ 2d0:  4f de f3 00     rbil r30,r30,r30,0x0
+ 2d4:  00 00 00 00     nop
+ 2d8:  4f de f6 00     wbi r30,r30,r30,0x0
+ 2dc:  00 00 00 00     nop
+ 2e0:  4f de f5 00     wbic r30,r30,r30,0x0
+ 2e4:  00 00 00 00     nop
+ 2e8:  4f de f7 00     wbiu r30,r30,r30,0x0
+ 2ec:  00 00 00 00     nop
+ 2f0:  4f de f0 28     pkrla r30,r30,r30
+ 2f4:  00 00 00 00     nop
+ 2f8:  4f de f0 2a     pkrlah r30,r30,r30
+ 2fc:  00 00 00 00     nop
+ 300:  4f de f0 29     pkrlau r30,r30,r30
+ 304:  00 00 00 00     nop
+ 308:  4b de f0 00     pkrli r30,r30,r30,0x0
+ 30c:  00 00 00 00     nop
+ 310:  4b de f2 00     pkrlih r30,r30,r30,0x0
+ 314:  00 00 00 00     nop
+ 318:  4b de f1 00     pkrliu r30,r30,r30,0x0
+ 31c:  00 00 00 00     nop
+ 320:  4c 1e f0 01     lock r30,r30
+ 324:  00 00 00 00     nop
+ 328:  4c 1e f0 03     unlk r30,r30
+ 32c:  00 00 00 00     nop
+ 330:  4f de f0 06     swwr r30,r30,r30
+ 334:  00 00 00 00     nop
+ 338:  4f de f0 07     swwru r30,r30,r30
+ 33c:  00 00 00 00     nop
+ 340:  4c 1e f0 04     swrd r30,r30
+ 344:  00 00 00 00     nop
+ 348:  4c 1e f0 05     swrdl r30,r30
+ 34c:  00 00 00 00     nop
+ 350:  4c 1e f0 0c     dwrd r30,r30
+ 354:  00 00 00 00     nop
+ 358:  4c 1e f0 0d     dwrdl r30,r30
+ 35c:  00 00 00 00     nop
+ 360:  4c 1e f4 30     cam36 r30,r30,0x6,0x0
+ 364:  00 00 00 00     nop
+ 368:  4c 1e f4 46     cam72 r30,r30,0x6,0x0
+ 36c:  00 00 00 00     nop
+ 370:  4c 1e f4 86     cam144 r30,r30,0x6,0x0
+ 374:  00 00 00 00     nop
+ 378:  4c 1e f4 c6     cam288 r30,r30,0x6,0x0
+ 37c:  00 00 00 00     nop
+ 380:  4f de f0 ab     cm32and r30,r30,r30
+ 384:  00 00 00 00     nop
+ 388:  4f de f0 a3     cm32andn r30,r30,r30
+ 38c:  00 00 00 00     nop
+ 390:  4f de f0 aa     cm32or r30,r30,r30
+ 394:  00 00 00 00     nop
+ 398:  4f de f0 b0     cm32ra r30,r30,r30
+ 39c:  00 00 00 00     nop
+ 3a0:  4c 1e f0 a1     cm32rd r30,r30
+ 3a4:  00 00 00 00     nop
+ 3a8:  4c 1e f0 a4     cm32ri r30,r30
+ 3ac:  00 00 00 00     nop
+ 3b0:  4f de f0 a0     cm32rs r30,r30,r30
+ 3b4:  00 00 00 00     nop
+ 3b8:  4f de f0 b8     cm32sa r30,r30,r30
+ 3bc:  00 00 00 00     nop
+ 3c0:  4c 1e f0 a9     cm32sd r30,r30
+ 3c4:  00 00 00 00     nop
+ 3c8:  4c 1e f0 ac     cm32si r30,r30
+ 3cc:  00 00 00 00     nop
+ 3d0:  4f de f0 a8     cm32ss r30,r30,r30
+ 3d4:  00 00 00 00     nop
+ 3d8:  4f de f0 a2     cm32xor r30,r30,r30
+ 3dc:  00 00 00 00     nop
+ 3e0:  4c 1e f0 85     cm64clr r30,r30
+ 3e4:  00 00 00 00     nop
+ 3e8:  4f de f0 90     cm64ra r30,r30,r30
+ 3ec:  00 00 00 00     nop
+ 3f0:  4c 1e f0 81     cm64rd r30,r30
+ 3f4:  00 00 00 00     nop
+ 3f8:  4c 1e f0 84     cm64ri r30,r30
+ 3fc:  00 00 00 00     nop
+ 400:  4f de f0 94     cm64ria2 r30,r30,r30
+ 404:  00 00 00 00     nop
+ 408:  4f de f0 80     cm64rs r30,r30,r30
+ 40c:  00 00 00 00     nop
+ 410:  4f de f0 98     cm64sa r30,r30,r30
+ 414:  00 00 00 00     nop
+ 418:  4c 1e f0 89     cm64sd r30,r30
+ 41c:  00 00 00 00     nop
+ 420:  4c 1e f0 8c     cm64si r30,r30
+ 424:  00 00 00 00     nop
+ 428:  4f de f0 9c     cm64sia2 r30,r30,r30
+ 42c:  00 00 00 00     nop
+ 430:  4f de f0 88     cm64ss r30,r30,r30
+ 434:  00 00 00 00     nop
+ 438:  4f de f0 95     cm128ria2 r30,r30,r30
+ 43c:  00 00 00 00     nop
+ 440:  4f de f0 93     cm128ria3 r30,r30,r30,0x3
+ 444:  00 00 00 00     nop
+ 448:  4f de f0 b6     cm128ria4 r30,r30,r30,0x6
+ 44c:  00 00 00 00     nop
+ 450:  4f de f0 9d     cm128sia2 r30,r30,r30
+ 454:  00 00 00 00     nop
+ 458:  4f de f0 9b     cm128sia3 r30,r30,r30,0x3
+ 45c:  00 00 00 00     nop
+ 460:  4f de f0 be     cm128sia4 r30,r30,r30,0x6
+ 464:  00 00 00 00     nop
+ 468:  4f de f0 a6     cm128vsa r30,r30,r30
+ 46c:  00 00 00 00     nop
+ 470:  4f de f0 14     crc32 r30,r30,r30
+ 474:  00 00 00 00     nop
+ 478:  4f de f0 15     crc32b r30,r30,r30
+ 47c:  00 00 00 00     nop
+ 480:  4f c0 f0 26     chkhdr r30,r30
+ 484:  00 00 00 00     nop
+ 488:  4c 00 f0 24     avail r30
+ 48c:  00 00 00 00     nop
+ 490:  4f c0 f0 25     free r30,r30
+ 494:  00 00 00 00     nop
+ 498:  4f c0 f0 27     tstod r30,r30
+ 49c:  00 00 00 00     nop
+ 4a0:  4c 00 f0 2c     cmphdr r30
+ 4a4:  00 00 00 00     nop
+ 4a8:  4c 1e f0 20     mcid r30,r30
+ 4ac:  00 00 00 00     nop
+ 4b0:  4c 00 f0 22     dba r30
+ 4b4:  00 00 00 00     nop
+ 4b8:  4c 1e f0 21     dbd r30,r0,r30
+ 4bc:  00 00 00 00     nop
+ 4c0:  4f c0 f0 23     dpwt r30,r30
+ 4c4:  00 00 00 00     nop
diff --git a/gas/testsuite/gas/iq2000/q10test6.s b/gas/testsuite/gas/iq2000/q10test6.s
new file mode 100644 (file)
index 0000000..c6f58ac
--- /dev/null
@@ -0,0 +1,308 @@
+.global _start\r
+_start:\r
+        ADD    %30,%30,%30\r
+        NOP    \r
+        ADDI   %30,%30,0\r
+        NOP    \r
+        ADDIU  %30,%30,0\r
+        NOP    \r
+        ADDU   %30,%30,%30\r
+        NOP    \r
+        ADO16  %30,%30,%30\r
+        NOP    \r
+        AND    %30,%30,%30\r
+        NOP    \r
+        ANDI   %30,%30,0\r
+        NOP    \r
+        ANDOI  %30,%30,0\r
+        NOP    \r
+        ANDOUI %30,%30,0\r
+        NOP    \r
+        LUI    %30,0\r
+        NOP    \r
+        MRGB   %30,%30,%30,0\r
+        NOP    \r
+        NOR    %30,%30,%30\r
+        NOP    \r
+        OR     %30,%30,%30\r
+        NOP    \r
+        ORI    %30,%30,0\r
+        NOP    \r
+        ORUI   %30,%30,0\r
+        NOP    \r
+        SLL    %30,%30,0\r
+        NOP    \r
+        SLLV   %30,%30,%30\r
+        NOP    \r
+        SLT    %30,%30,%30\r
+        NOP    \r
+        SLTI   %30,%30,0\r
+        NOP    \r
+        SLTIU  %30,%30,0\r
+        NOP    \r
+        SLTU   %30,%30,%30\r
+        NOP    \r
+        SRA    %30,%30,0\r
+        NOP    \r
+        SRAV   %30,%30,%30\r
+        NOP    \r
+        SRL    %30,%30,0\r
+        NOP    \r
+        SRLV   %30,%30,%30\r
+        NOP    \r
+        SUB    %30,%30,%30\r
+        NOP    \r
+        SUBU   %30,%30,%30\r
+        NOP    \r
+        XOR    %30,%30,%30\r
+        NOP    \r
+        XORI   %30,%30,0\r
+        NOP    \r
+        NOP    \r
+        NOP    \r
+        SRMV   %30,%30,%30,0\r
+        NOP    \r
+        SLMV   %30,%30,%30,0\r
+        NOP    \r
+        RAM    %30,%30,0,0,0\r
+        NOP    \r
+        BBI    %30(0),_start\r
+        NOP    \r
+        BBIN   %30(0),_start\r
+        NOP    \r
+        BBV    %30,%30,_start\r
+        NOP    \r
+        BBVN   %30,%30,_start\r
+        NOP    \r
+        BBIL   %30(0),_start\r
+        NOP    \r
+        BBINL  %30(0),_start\r
+        NOP    \r
+        BBVL   %30,%30,_start\r
+        NOP    \r
+        BBVNL  %30,%30,_start\r
+        NOP    \r
+        BEQ    %30,%30,_start\r
+        NOP    \r
+        BEQL   %30,%30,_start\r
+        NOP    \r
+        BGEZ   %30,_start\r
+        NOP    \r
+        BGTZAL %30,_start\r
+        NOP    \r
+        BGEZAL %30,_start\r
+        NOP    \r
+        BGTZALL        %30,_start\r
+        NOP    \r
+        BGEZALL        %30,_start\r
+        NOP    \r
+        BGEZL  %30,_start\r
+        NOP    \r
+        BGTZL  %30,_start\r
+        NOP    \r
+        BGTZ   %30,_start\r
+        NOP    \r
+        BLEZ   %30,_start\r
+        NOP    \r
+        BLEZAL %30,_start\r
+        NOP    \r
+        BLTZ   %30,_start\r
+        NOP    \r
+        BLTZAL %30,_start\r
+        NOP    \r
+        BLEZL  %30,_start\r
+        NOP    \r
+        BLTZL  %30,_start\r
+        NOP    \r
+        BLEZALL        %30,_start\r
+        NOP    \r
+        BLTZALL        %30,_start\r
+        NOP    \r
+        BMB    %30,%30,_start\r
+        NOP    \r
+        BMBL   %30,%30,_start\r
+        NOP    \r
+        BMB0   %30,%30,_start\r
+        NOP    \r
+        BMB1   %30,%30,_start\r
+        NOP    \r
+        BMB2   %30,%30,_start\r
+        NOP    \r
+        BMB3   %30,%30,_start\r
+        NOP    \r
+        BNE    %30,%30,_start\r
+        NOP    \r
+        BNEL   %30,%30,_start\r
+        NOP    \r
+        J      0\r
+        NOP    \r
+        JAL    %30,0\r
+        NOP    \r
+        JALR   %30,%30\r
+        NOP    \r
+        JR     %30\r
+        NOP    \r
+        BREAK  \r
+        NOP    \r
+        CTC    %30,%30\r
+        NOP    \r
+        CFC    %30,%30\r
+        NOP    \r
+        LW     %30,0(%30)\r
+        NOP    \r
+        LH     %30,0(%30)\r
+        NOP    \r
+        LB     %30,0(%30)\r
+        NOP    \r
+        LHU    %30,0(%30)\r
+        NOP    \r
+        LBU    %30,0(%30)\r
+        NOP    \r
+        SB     %30,0(%30)\r
+        NOP    \r
+        SH     %30,0(%30)\r
+        NOP    \r
+        SW     %30,0(%30)\r
+        NOP    \r
+        RBA    %30,%30,%30\r
+        NOP    \r
+        RBAR   %30,%30,%30\r
+        NOP    \r
+        RBAL   %30,%30,%30\r
+        NOP    \r
+        WBA    %30,%30,%30\r
+        NOP    \r
+        WBAC   %30,%30,%30\r
+        NOP    \r
+        WBAU   %30,%30,%30\r
+        NOP    \r
+        RBI    %30,%30,%30,0\r
+        NOP    \r
+        RBIR   %30,%30,%30,0\r
+        NOP    \r
+        RBIL   %30,%30,%30,0\r
+        NOP    \r
+        WBI    %30,%30,%30,0\r
+        NOP    \r
+        WBIC   %30,%30,%30,0\r
+        NOP    \r
+        WBIU   %30,%30,%30,0\r
+        NOP    \r
+        PKRLA  %30,%30,%30\r
+        NOP    \r
+        PKRLAH %30,%30,%30\r
+        NOP    \r
+        PKRLAU %30,%30,%30\r
+        NOP    \r
+        PKRLI  %30,%30,%30,0\r
+        NOP    \r
+        PKRLIH %30,%30,%30,0\r
+        NOP    \r
+        PKRLIU %30,%30,%30,0\r
+        NOP    \r
+        LOCK   %30,%30\r
+        NOP    \r
+        UNLK   %30,%30\r
+        NOP    \r
+        SWWR   %30,%30,%30\r
+        NOP    \r
+        SWWRU  %30,%30,%30\r
+        NOP    \r
+        SWRD   %30,%30\r
+        NOP    \r
+        SWRDL  %30,%30\r
+        NOP    \r
+        DWRD   %30,%30\r
+        NOP    \r
+        DWRDL  %30,%30\r
+        NOP    \r
+        CAM36  %30,%30,6,0\r
+        NOP    \r
+        CAM72  %30,%30,6,0\r
+        NOP    \r
+        CAM144 %30,%30,6,0\r
+        NOP    \r
+        CAM288 %30,%30,6,0\r
+        NOP    \r
+        CM32AND        %30,%30,%30\r
+        NOP    \r
+        CM32ANDN       %30,%30,%30\r
+        NOP    \r
+        CM32OR %30,%30,%30\r
+        NOP    \r
+        CM32RA %30,%30,%30\r
+        NOP    \r
+        CM32RD %30,%30\r
+        NOP    \r
+        CM32RI %30,%30\r
+        NOP    \r
+        CM32RS %30,%30,%30\r
+        NOP    \r
+        CM32SA %30,%30,%30\r
+        NOP    \r
+        CM32SD %30,%30\r
+        NOP    \r
+        CM32SI %30,%30\r
+        NOP    \r
+        CM32SS %30,%30,%30\r
+        NOP    \r
+        CM32XOR        %30,%30,%30\r
+        NOP    \r
+        CM64CLR        %30,%30\r
+        NOP    \r
+        CM64RA %30,%30,%30\r
+        NOP    \r
+        CM64RD %30,%30\r
+        NOP    \r
+        CM64RI %30,%30\r
+        NOP    \r
+        CM64RIA2       %30,%30,%30\r
+        NOP    \r
+        CM64RS %30,%30,%30\r
+        NOP    \r
+        CM64SA %30,%30,%30\r
+        NOP    \r
+        CM64SD %30,%30\r
+        NOP    \r
+        CM64SI %30,%30\r
+        NOP    \r
+        CM64SIA2       %30,%30,%30\r
+        NOP    \r
+        CM64SS %30,%30,%30\r
+        NOP    \r
+        CM128RIA2      %30,%30,%30\r
+        NOP    \r
+        CM128RIA3      %30,%30,%30,3\r
+        NOP    \r
+        CM128RIA4      %30,%30,%30,6\r
+        NOP    \r
+        CM128SIA2      %30,%30,%30\r
+        NOP    \r
+        CM128SIA3      %30,%30,%30,3\r
+        NOP    \r
+        CM128SIA4      %30,%30,%30,6\r
+        NOP    \r
+        CM128VSA       %30,%30,%30\r
+        NOP    \r
+        CRC32  %30,%30,%30\r
+        NOP    \r
+        CRC32B %30,%30,%30\r
+        NOP    \r
+        CHKHDR %30,%30\r
+        NOP    \r
+        AVAIL  %30\r
+        NOP    \r
+        FREE   %30,%30\r
+        NOP    \r
+        TSTOD  %30,%30\r
+        NOP    \r
+        CMPHDR %30\r
+        NOP    \r
+        MCID   %30,%30\r
+        NOP    \r
+        DBA    %30\r
+        NOP    \r
+        DBD    %30,%30\r
+        NOP    \r
+        DPWT   %30,%30\r
+        NOP    \r
diff --git a/gas/testsuite/gas/iq2000/q10test7.d b/gas/testsuite/gas/iq2000/q10test7.d
new file mode 100644 (file)
index 0000000..2bf380c
--- /dev/null
@@ -0,0 +1,301 @@
+#as: -m10
+#objdump: -drz
+#name: q10test7
+
+.*: +file format .*
+
+Disassembly of section .text:
+
+00000000 <_start>:
+   0:  00 21 08 20     add r1,r1,r1
+   4:  00 00 00 00     nop
+   8:  20 21 00 08     addi r1,r1,0x8
+   c:  00 00 00 00     nop
+  10:  24 21 00 08     addiu r1,r1,0x8
+  14:  00 00 00 00     nop
+  18:  00 21 08 21     addu r1,r1,r1
+  1c:  00 00 00 00     nop
+  20:  00 21 08 29     ado16 r1,r1,r1
+  24:  00 00 00 00     nop
+  28:  00 21 08 24     and r1,r1,r1
+  2c:  00 00 00 00     nop
+  30:  30 21 00 08     andi r1,r1,0x8
+  34:  00 00 00 00     nop
+  38:  b0 21 00 08     andoi r1,r1,0x8
+  3c:  00 00 00 00     nop
+  40:  bc 21 00 08     andoui r1,r1,0x8
+  44:  00 00 00 00     nop
+  48:  3c 01 00 08     lui r1,0x8
+  4c:  00 00 00 00     nop
+  50:  00 21 08 2d     mrgb r1,r1,r1,0x0
+  54:  00 00 00 00     nop
+  58:  00 21 08 27     nor r1,r1,r1
+  5c:  00 00 00 00     nop
+  60:  00 21 08 25     or r1,r1,r1
+  64:  00 00 00 00     nop
+  68:  34 21 00 08     ori r1,r1,0x8
+  6c:  00 00 00 00     nop
+  70:  3c 21 00 08     orui r1,r1,0x8
+  74:  00 00 00 00     nop
+  78:  00 01 08 00     sll r1,r1,0x0
+  7c:  00 00 00 00     nop
+  80:  00 21 08 04     sllv r1,r1,r1
+  84:  00 00 00 00     nop
+  88:  00 21 08 2a     slt r1,r1,r1
+  8c:  00 00 00 00     nop
+  90:  28 21 00 08     slti r1,r1,0x8
+  94:  00 00 00 00     nop
+  98:  2c 21 00 08     sltiu r1,r1,0x8
+  9c:  00 00 00 00     nop
+  a0:  00 21 08 2b     sltu r1,r1,r1
+  a4:  00 00 00 00     nop
+  a8:  00 01 08 03     sra r1,r1,0x0
+  ac:  00 00 00 00     nop
+  b0:  00 21 08 07     srav r1,r1,r1
+  b4:  00 00 00 00     nop
+  b8:  00 01 08 02     srl r1,r1,0x0
+  bc:  00 00 00 00     nop
+  c0:  00 21 08 06     srlv r1,r1,r1
+  c4:  00 00 00 00     nop
+  c8:  00 21 08 22     sub r1,r1,r1
+  cc:  00 00 00 00     nop
+  d0:  00 21 08 23     subu r1,r1,r1
+  d4:  00 00 00 00     nop
+  d8:  00 21 08 26     xor r1,r1,r1
+  dc:  00 00 00 00     nop
+  e0:  38 21 00 08     xori r1,r1,0x8
+  e4:  00 00 00 00     nop
+  e8:  00 00 00 00     nop
+  ec:  00 00 00 00     nop
+  f0:  00 21 08 05     srmv r1,r1,r1,0x0
+  f4:  00 00 00 00     nop
+  f8:  00 21 08 01     slmv r1,r1,r1,0x0
+  fc:  00 00 00 00     nop
+ 100:  9c 01 08 00     ram r1,r1,0x0,0x0,0x0
+ 104:  00 00 00 00     nop
+ 108:  70 21 00 02     bbi r1\(0x1\),114 <_start\+0x114>
+ 10c:  00 00 00 00     nop
+ 110:  78 21 00 02     bbin r1\(0x1\),11c <_start\+0x11c>
+ 114:  00 00 00 00     nop
+ 118:  74 21 00 02     bbv r1,r1,124 <_start\+0x124>
+ 11c:  00 00 00 00     nop
+ 120:  7c 21 00 02     bbvn r1,r1,12c <_start\+0x12c>
+ 124:  00 00 00 00     nop
+ 128:  f0 21 00 02     bbil r1\(0x1\),134 <_start\+0x134>
+ 12c:  00 00 00 00     nop
+ 130:  f8 21 00 02     bbinl r1\(0x1\),13c <_start\+0x13c>
+ 134:  00 00 00 00     nop
+ 138:  f4 21 00 02     bbvl r1,r1,144 <_start\+0x144>
+ 13c:  00 00 00 00     nop
+ 140:  fc 21 00 02     bbvnl r1,r1,14c <_start\+0x14c>
+ 144:  00 00 00 00     nop
+ 148:  10 21 00 02     beq r1,r1,154 <_start\+0x154>
+ 14c:  00 00 00 00     nop
+ 150:  50 21 00 02     beql r1,r1,15c <_start\+0x15c>
+ 154:  00 00 00 00     nop
+ 158:  04 21 00 02     bgez r1,164 <_start\+0x164>
+ 15c:  00 00 00 00     nop
+ 160:  04 35 00 02     bgtzal r1,16c <_start\+0x16c>
+ 164:  00 00 00 00     nop
+ 168:  04 31 00 02     bgezal r1,174 <_start\+0x174>
+ 16c:  00 00 00 00     nop
+ 170:  04 37 00 02     bgtzall r1,17c <_start\+0x17c>
+ 174:  00 00 00 00     nop
+ 178:  04 33 00 02     bgezall r1,184 <_start\+0x184>
+ 17c:  00 00 00 00     nop
+ 180:  04 23 00 02     bgezl r1,18c <_start\+0x18c>
+ 184:  00 00 00 00     nop
+ 188:  04 27 00 02     bgtzl r1,194 <_start\+0x194>
+ 18c:  00 00 00 00     nop
+ 190:  04 25 00 02     bgtz r1,19c <_start\+0x19c>
+ 194:  00 00 00 00     nop
+ 198:  04 24 00 02     blez r1,1a4 <_start\+0x1a4>
+ 19c:  00 00 00 00     nop
+ 1a0:  04 34 00 02     blezal r1,1ac <_start\+0x1ac>
+ 1a4:  00 00 00 00     nop
+ 1a8:  04 20 00 02     bltz r1,1b4 <_start\+0x1b4>
+ 1ac:  00 00 00 00     nop
+ 1b0:  04 30 00 02     bltzal r1,1bc <_start\+0x1bc>
+ 1b4:  00 00 00 00     nop
+ 1b8:  04 26 00 02     blezl r1,1c4 <_start\+0x1c4>
+ 1bc:  00 00 00 00     nop
+ 1c0:  04 22 00 02     bltzl r1,1cc <_start\+0x1cc>
+ 1c4:  00 00 00 00     nop
+ 1c8:  04 36 00 02     blezall r1,1d4 <_start\+0x1d4>
+ 1cc:  00 00 00 00     nop
+ 1d0:  04 32 00 02     bltzall r1,1dc <_start\+0x1dc>
+ 1d4:  00 00 00 00     nop
+ 1d8:  18 21 00 02     bmb r1,r1,1e4 <_start\+0x1e4>
+ 1dc:  00 00 00 00     nop
+ 1e0:  58 21 00 02     bmbl r1,r1,1ec <_start\+0x1ec>
+ 1e4:  00 00 00 00     nop
+ 1e8:  60 21 00 02     bmb0 r1,r1,1f4 <_start\+0x1f4>
+ 1ec:  00 00 00 00     nop
+ 1f0:  64 21 00 02     bmb1 r1,r1,1fc <_start\+0x1fc>
+ 1f4:  00 00 00 00     nop
+ 1f8:  68 21 00 02     bmb2 r1,r1,204 <_start\+0x204>
+ 1fc:  00 00 00 00     nop
+ 200:  6c 21 00 02     bmb3 r1,r1,20c <_start\+0x20c>
+ 204:  00 00 00 00     nop
+ 208:  14 21 00 02     bne r1,r1,214 <_start\+0x214>
+ 20c:  00 00 00 00     nop
+ 210:  54 21 00 02     bnel r1,r1,21c <_start\+0x21c>
+ 214:  00 00 00 00     nop
+ 218:  08 00 00 02     j 8 <_start\+0x8>
+ 21c:  00 00 00 00     nop
+ 220:  0c 01 00 02     jal r1,8 <_start\+0x8>
+ 224:  00 00 00 00     nop
+ 228:  00 20 08 09     jalr r1,r1
+ 22c:  00 00 00 00     nop
+ 230:  00 20 00 08     jr r1
+ 234:  00 00 00 00     nop
+ 238:  00 00 00 0d     break
+ 23c:  00 00 00 00     nop
+ 240:  4c 21 00 02     ctc r1,r1
+ 244:  00 00 00 00     nop
+ 248:  4c 01 08 00     cfc r1,r1
+ 24c:  00 00 00 00     nop
+ 250:  8c 21 00 08     lw r1,0x8\(r1\)
+ 254:  00 00 00 00     nop
+ 258:  84 21 00 08     lh r1,0x8\(r1\)
+ 25c:  00 00 00 00     nop
+ 260:  80 21 00 08     lb r1,0x8\(r1\)
+ 264:  00 00 00 00     nop
+ 268:  94 21 00 08     lhu r1,0x8\(r1\)
+ 26c:  00 00 00 00     nop
+ 270:  90 21 00 08     lbu r1,0x8\(r1\)
+ 274:  00 00 00 00     nop
+ 278:  a0 21 00 08     sb r1,0x8\(r1\)
+ 27c:  00 00 00 00     nop
+ 280:  a4 21 00 08     sh r1,0x8\(r1\)
+ 284:  00 00 00 00     nop
+ 288:  ac 21 00 08     sw r1,0x8\(r1\)
+ 28c:  00 00 00 00     nop
+ 290:  4c 21 08 08     rba r1,r1,r1
+ 294:  00 00 00 00     nop
+ 298:  4c 21 08 0a     rbar r1,r1,r1
+ 29c:  00 00 00 00     nop
+ 2a0:  4c 21 08 09     rbal r1,r1,r1
+ 2a4:  00 00 00 00     nop
+ 2a8:  4c 21 08 10     wba r1,r1,r1
+ 2ac:  00 00 00 00     nop
+ 2b0:  4c 21 08 12     wbac r1,r1,r1
+ 2b4:  00 00 00 00     nop
+ 2b8:  4c 21 08 11     wbau r1,r1,r1
+ 2bc:  00 00 00 00     nop
+ 2c0:  4c 21 0a 00     rbi r1,r1,r1,0x0
+ 2c4:  00 00 00 00     nop
+ 2c8:  4c 21 09 00     rbir r1,r1,r1,0x0
+ 2cc:  00 00 00 00     nop
+ 2d0:  4c 21 0b 00     rbil r1,r1,r1,0x0
+ 2d4:  00 00 00 00     nop
+ 2d8:  4c 21 0e 00     wbi r1,r1,r1,0x0
+ 2dc:  00 00 00 00     nop
+ 2e0:  4c 21 0d 00     wbic r1,r1,r1,0x0
+ 2e4:  00 00 00 00     nop
+ 2e8:  4c 21 0f 00     wbiu r1,r1,r1,0x0
+ 2ec:  00 00 00 00     nop
+ 2f0:  4c 21 08 28     pkrla r1,r1,r1
+ 2f4:  00 00 00 00     nop
+ 2f8:  4c 21 08 2a     pkrlah r1,r1,r1
+ 2fc:  00 00 00 00     nop
+ 300:  4c 21 08 29     pkrlau r1,r1,r1
+ 304:  00 00 00 00     nop
+ 308:  48 21 08 00     pkrli r1,r1,r1,0x0
+ 30c:  00 00 00 00     nop
+ 310:  48 21 0a 00     pkrlih r1,r1,r1,0x0
+ 314:  00 00 00 00     nop
+ 318:  48 21 09 00     pkrliu r1,r1,r1,0x0
+ 31c:  00 00 00 00     nop
+ 320:  4c 01 08 01     lock r1,r1
+ 324:  00 00 00 00     nop
+ 328:  4c 01 08 03     unlk r1,r1
+ 32c:  00 00 00 00     nop
+ 330:  4c 21 08 06     swwr r1,r1,r1
+ 334:  00 00 00 00     nop
+ 338:  4c 21 08 07     swwru r1,r1,r1
+ 33c:  00 00 00 00     nop
+ 340:  4c 01 08 04     swrd r1,r1
+ 344:  00 00 00 00     nop
+ 348:  4c 01 08 05     swrdl r1,r1
+ 34c:  00 00 00 00     nop
+ 350:  4c 02 10 0c     dwrd r2,r2
+ 354:  00 00 00 00     nop
+ 358:  4c 02 10 0d     dwrdl r2,r2
+ 35c:  00 00 00 00     nop
+ 360:  4c 21 08 ab     cm32and r1,r1,r1
+ 364:  00 00 00 00     nop
+ 368:  4c 21 08 a3     cm32andn r1,r1,r1
+ 36c:  00 00 00 00     nop
+ 370:  4c 21 08 aa     cm32or r1,r1,r1
+ 374:  00 00 00 00     nop
+ 378:  4c 21 08 b0     cm32ra r1,r1,r1
+ 37c:  00 00 00 00     nop
+ 380:  4c 01 08 a1     cm32rd r1,r1
+ 384:  00 00 00 00     nop
+ 388:  4c 01 08 a4     cm32ri r1,r1
+ 38c:  00 00 00 00     nop
+ 390:  4c 21 08 a0     cm32rs r1,r1,r1
+ 394:  00 00 00 00     nop
+ 398:  4c 21 08 b8     cm32sa r1,r1,r1
+ 39c:  00 00 00 00     nop
+ 3a0:  4c 01 08 a9     cm32sd r1,r1
+ 3a4:  00 00 00 00     nop
+ 3a8:  4c 01 08 ac     cm32si r1,r1
+ 3ac:  00 00 00 00     nop
+ 3b0:  4c 21 08 a8     cm32ss r1,r1,r1
+ 3b4:  00 00 00 00     nop
+ 3b8:  4c 21 08 a2     cm32xor r1,r1,r1
+ 3bc:  00 00 00 00     nop
+ 3c0:  4c 02 10 85     cm64clr r2,r2
+ 3c4:  00 00 00 00     nop
+ 3c8:  4c 42 10 90     cm64ra r2,r2,r2
+ 3cc:  00 00 00 00     nop
+ 3d0:  4c 02 10 81     cm64rd r2,r2
+ 3d4:  00 00 00 00     nop
+ 3d8:  4c 02 10 84     cm64ri r2,r2
+ 3dc:  00 00 00 00     nop
+ 3e0:  4c 42 10 94     cm64ria2 r2,r2,r2
+ 3e4:  00 00 00 00     nop
+ 3e8:  4c 42 10 80     cm64rs r2,r2,r2
+ 3ec:  00 00 00 00     nop
+ 3f0:  4c 42 10 98     cm64sa r2,r2,r2
+ 3f4:  00 00 00 00     nop
+ 3f8:  4c 02 10 89     cm64sd r2,r2
+ 3fc:  00 00 00 00     nop
+ 400:  4c 02 10 8c     cm64si r2,r2
+ 404:  00 00 00 00     nop
+ 408:  4c 42 10 9c     cm64sia2 r2,r2,r2
+ 40c:  00 00 00 00     nop
+ 410:  4c 42 10 88     cm64ss r2,r2,r2
+ 414:  00 00 00 00     nop
+ 418:  4c 42 10 95     cm128ria2 r2,r2,r2
+ 41c:  00 00 00 00     nop
+ 420:  4c 42 10 b7     cm128ria4 r2,r2,r2,0x7
+ 424:  00 00 00 00     nop
+ 428:  4c 42 10 9d     cm128sia2 r2,r2,r2
+ 42c:  00 00 00 00     nop
+ 430:  4c 21 08 bf     cm128sia4 r1,r1,r1,0x7
+ 434:  00 00 00 00     nop
+ 438:  4c 21 08 a6     cm128vsa r1,r1,r1
+ 43c:  00 00 00 00     nop
+ 440:  4c 21 08 14     crc32 r1,r1,r1
+ 444:  00 00 00 00     nop
+ 448:  4c 21 08 15     crc32b r1,r1,r1
+ 44c:  00 00 00 00     nop
+ 450:  4c 20 08 26     chkhdr r1,r1
+ 454:  00 00 00 00     nop
+ 458:  4c 00 08 24     avail r1
+ 45c:  00 00 00 00     nop
+ 460:  4c 20 08 25     free r1,r1
+ 464:  00 00 00 00     nop
+ 468:  4c 00 08 2c     cmphdr r1
+ 46c:  00 00 00 00     nop
+ 470:  4c 01 08 20     mcid r1,r1
+ 474:  00 00 00 00     nop
+ 478:  4c 00 08 22     dba r1
+ 47c:  00 00 00 00     nop
+ 480:  4c 01 08 21     dbd r1,r0,r1
+ 484:  00 00 00 00     nop
+ 488:  4c 20 08 23     dpwt r1,r1
+ 48c:  00 00 00 00     nop
diff --git a/gas/testsuite/gas/iq2000/q10test7.s b/gas/testsuite/gas/iq2000/q10test7.s
new file mode 100644 (file)
index 0000000..12b1c99
--- /dev/null
@@ -0,0 +1,294 @@
+.global _start\r
+_start:\r
+        ADD    %1,%1,%1\r
+        NOP    \r
+        ADDI   %1,%1,8\r
+        NOP    \r
+        ADDIU  %1,%1,8\r
+        NOP    \r
+        ADDU   %1,%1,%1\r
+        NOP    \r
+        ADO16  %1,%1,%1\r
+        NOP    \r
+        AND    %1,%1,%1\r
+        NOP    \r
+        ANDI   %1,%1,8\r
+        NOP    \r
+        ANDOI  %1,%1,8\r
+        NOP    \r
+        ANDOUI %1,%1,8\r
+        NOP    \r
+        LUI    %1,8\r
+        NOP    \r
+        MRGB   %1,%1,%1,0\r
+        NOP    \r
+        NOR    %1,%1,%1\r
+        NOP    \r
+        OR     %1,%1,%1\r
+        NOP    \r
+        ORI    %1,%1,8\r
+        NOP    \r
+        ORUI   %1,%1,8\r
+        NOP    \r
+        SLL    %1,%1,0\r
+        NOP    \r
+        SLLV   %1,%1,%1\r
+        NOP    \r
+        SLT    %1,%1,%1\r
+        NOP    \r
+        SLTI   %1,%1,8\r
+        NOP    \r
+        SLTIU  %1,%1,8\r
+        NOP    \r
+        SLTU   %1,%1,%1\r
+        NOP    \r
+        SRA    %1,%1,0\r
+        NOP    \r
+        SRAV   %1,%1,%1\r
+        NOP    \r
+        SRL    %1,%1,0\r
+        NOP    \r
+        SRLV   %1,%1,%1\r
+        NOP    \r
+        SUB    %1,%1,%1\r
+        NOP    \r
+        SUBU   %1,%1,%1\r
+        NOP    \r
+        XOR    %1,%1,%1\r
+        NOP    \r
+        XORI   %1,%1,8\r
+        NOP    \r
+        NOP    \r
+        NOP    \r
+        SRMV   %1,%1,%1,0\r
+        NOP    \r
+        SLMV   %1,%1,%1,0\r
+        NOP    \r
+        RAM    %1,%1,0,0,0\r
+        NOP    \r
+        BBI    %1(1),8\r
+        NOP    \r
+        BBIN   %1(1),8\r
+        NOP    \r
+        BBV    %1,%1,8\r
+        NOP    \r
+        BBVN   %1,%1,8\r
+        NOP    \r
+        BBIL   %1(1),8\r
+        NOP    \r
+        BBINL  %1(1),8\r
+        NOP    \r
+        BBVL   %1,%1,8\r
+        NOP    \r
+        BBVNL  %1,%1,8\r
+        NOP    \r
+        BEQ    %1,%1,8\r
+        NOP    \r
+        BEQL   %1,%1,8\r
+        NOP    \r
+        BGEZ   %1,8\r
+        NOP    \r
+        BGTZAL %1,8\r
+        NOP    \r
+        BGEZAL %1,8\r
+        NOP    \r
+        BGTZALL        %1,8\r
+        NOP    \r
+        BGEZALL        %1,8\r
+        NOP    \r
+        BGEZL  %1,8\r
+        NOP    \r
+        BGTZL  %1,8\r
+        NOP    \r
+        BGTZ   %1,8\r
+        NOP    \r
+        BLEZ   %1,8\r
+        NOP    \r
+        BLEZAL %1,8\r
+        NOP    \r
+        BLTZ   %1,8\r
+        NOP    \r
+        BLTZAL %1,8\r
+        NOP    \r
+        BLEZL  %1,8\r
+        NOP    \r
+        BLTZL  %1,8\r
+        NOP    \r
+        BLEZALL        %1,8\r
+        NOP    \r
+        BLTZALL        %1,8\r
+        NOP    \r
+        BMB    %1,%1,8\r
+        NOP    \r
+        BMBL   %1,%1,8\r
+        NOP    \r
+        BMB0   %1,%1,8\r
+        NOP    \r
+        BMB1   %1,%1,8\r
+        NOP    \r
+        BMB2   %1,%1,8\r
+        NOP    \r
+        BMB3   %1,%1,8\r
+        NOP    \r
+        BNE    %1,%1,8\r
+        NOP    \r
+        BNEL   %1,%1,8\r
+        NOP    \r
+        J      8\r
+        NOP    \r
+        JAL    %1,8\r
+        NOP    \r
+        JALR   %1,%1\r
+        NOP    \r
+        JR     %1\r
+        NOP    \r
+        BREAK  \r
+        NOP    \r
+        CTC    %1,%1\r
+        NOP    \r
+        CFC    %1,%1\r
+        NOP    \r
+        LW     %1,8(%1)\r
+        NOP    \r
+        LH     %1,8(%1)\r
+        NOP    \r
+        LB     %1,8(%1)\r
+        NOP    \r
+        LHU    %1,8(%1)\r
+        NOP    \r
+        LBU    %1,8(%1)\r
+        NOP    \r
+        SB     %1,8(%1)\r
+        NOP    \r
+        SH     %1,8(%1)\r
+        NOP    \r
+        SW     %1,8(%1)\r
+        NOP    \r
+        RBA    %1,%1,%1\r
+        NOP    \r
+        RBAR   %1,%1,%1\r
+        NOP    \r
+        RBAL   %1,%1,%1\r
+        NOP    \r
+        WBA    %1,%1,%1\r
+        NOP    \r
+        WBAC   %1,%1,%1\r
+        NOP    \r
+        WBAU   %1,%1,%1\r
+        NOP    \r
+        RBI    %1,%1,%1,0\r
+        NOP    \r
+        RBIR   %1,%1,%1,0\r
+        NOP    \r
+        RBIL   %1,%1,%1,0\r
+        NOP    \r
+        WBI    %1,%1,%1,0\r
+        NOP    \r
+        WBIC   %1,%1,%1,0\r
+        NOP    \r
+        WBIU   %1,%1,%1,0\r
+        NOP    \r
+        PKRLA  %1,%1,%1\r
+        NOP    \r
+        PKRLAH %1,%1,%1\r
+        NOP    \r
+        PKRLAU %1,%1,%1\r
+        NOP    \r
+        PKRLI  %1,%1,%1,0\r
+        NOP    \r
+        PKRLIH %1,%1,%1,0\r
+        NOP    \r
+        PKRLIU %1,%1,%1,0\r
+        NOP    \r
+        LOCK   %1,%1\r
+        NOP    \r
+        UNLK   %1,%1\r
+        NOP    \r
+        SWWR   %1,%1,%1\r
+        NOP    \r
+        SWWRU  %1,%1,%1\r
+        NOP    \r
+        SWRD   %1,%1\r
+        NOP    \r
+        SWRDL  %1,%1\r
+        NOP    \r
+        DWRD   %2,%2\r
+        NOP    \r
+        DWRDL  %2,%2\r
+        NOP    \r
+        CM32AND        %1,%1,%1\r
+        NOP    \r
+        CM32ANDN       %1,%1,%1\r
+        NOP    \r
+        CM32OR %1,%1,%1\r
+        NOP    \r
+        CM32RA %1,%1,%1\r
+        NOP    \r
+        CM32RD %1,%1\r
+        NOP    \r
+        CM32RI %1,%1\r
+        NOP    \r
+        CM32RS %1,%1,%1\r
+        NOP    \r
+        CM32SA %1,%1,%1\r
+        NOP    \r
+        CM32SD %1,%1\r
+        NOP    \r
+        CM32SI %1,%1\r
+        NOP    \r
+        CM32SS %1,%1,%1\r
+        NOP    \r
+        CM32XOR        %1,%1,%1\r
+        NOP    \r
+        CM64CLR        %2,%2\r
+        NOP    \r
+        CM64RA %2,%2,%2\r
+        NOP    \r
+        CM64RD %2,%2\r
+        NOP    \r
+        CM64RI %2,%2\r
+        NOP    \r
+        CM64RIA2       %2,%2,%2\r
+        NOP    \r
+        CM64RS %2,%2,%2\r
+        NOP    \r
+        CM64SA %2,%2,%2\r
+        NOP    \r
+        CM64SD %2,%2\r
+        NOP    \r
+        CM64SI %2,%2\r
+        NOP    \r
+        CM64SIA2       %2,%2,%2\r
+        NOP    \r
+        CM64SS %2,%2,%2\r
+        NOP    \r
+        CM128RIA2      %2,%2,%2\r
+        NOP    \r
+        CM128RIA4      %2,%2,%2,7\r
+        NOP    \r
+        CM128SIA2      %2,%2,%2\r
+        NOP    \r
+        CM128SIA4      %1,%1,%1,7\r
+        NOP    \r
+        CM128VSA       %1,%1,%1\r
+        NOP    \r
+        CRC32  %1,%1,%1\r
+        NOP    \r
+        CRC32B %1,%1,%1\r
+        NOP    \r
+        CHKHDR %1,%1\r
+        NOP    \r
+        AVAIL  %1\r
+        NOP    \r
+        FREE   %1,%1\r
+        NOP    \r
+        CMPHDR %1\r
+        NOP    \r
+        MCID   %1,%1\r
+        NOP    \r
+        DBA    %1\r
+        NOP    \r
+        DBD    %1,%1\r
+        NOP    \r
+        DPWT   %1,%1\r
+        NOP    \r
diff --git a/gas/testsuite/gas/iq2000/q10test8.d b/gas/testsuite/gas/iq2000/q10test8.d
new file mode 100644 (file)
index 0000000..9b18dde
--- /dev/null
@@ -0,0 +1,327 @@
+#as: -m10
+#objdump: -drz
+#name: q10test8
+
+.*: +file format .*
+
+Disassembly of section .text:
+
+00000000 <_start>:
+   0:  00 21 08 20     add r1,r1,r1
+   4:  00 00 00 00     nop
+   8:  20 21 ff f8     addi r1,r1,0xfff8
+   c:  00 00 00 00     nop
+  10:  24 21 ff f8     addiu r1,r1,0xfff8
+  14:  00 00 00 00     nop
+  18:  00 21 08 21     addu r1,r1,r1
+  1c:  00 00 00 00     nop
+  20:  00 21 08 29     ado16 r1,r1,r1
+  24:  00 00 00 00     nop
+  28:  00 21 08 24     and r1,r1,r1
+  2c:  00 00 00 00     nop
+  30:  30 21 ff f8     andi r1,r1,0xfff8
+  34:  00 00 00 00     nop
+  38:  b0 21 ff f8     andoi r1,r1,0xfff8
+  3c:  00 00 00 00     nop
+  40:  bc 21 ff f8     andoui r1,r1,0xfff8
+  44:  00 00 00 00     nop
+  48:  3c 01 ff f8     lui r1,0xfff8
+  4c:  00 00 00 00     nop
+  50:  00 21 08 2d     mrgb r1,r1,r1,0x0
+  54:  00 00 00 00     nop
+  58:  00 21 08 27     nor r1,r1,r1
+  5c:  00 00 00 00     nop
+  60:  00 21 08 25     or r1,r1,r1
+  64:  00 00 00 00     nop
+  68:  34 21 ff f8     ori r1,r1,0xfff8
+  6c:  00 00 00 00     nop
+  70:  3c 21 ff f8     orui r1,r1,0xfff8
+  74:  00 00 00 00     nop
+  78:  00 01 08 00     sll r1,r1,0x0
+  7c:  00 00 00 00     nop
+  80:  00 21 08 04     sllv r1,r1,r1
+  84:  00 00 00 00     nop
+  88:  00 21 08 2a     slt r1,r1,r1
+  8c:  00 00 00 00     nop
+  90:  28 21 ff f8     slti r1,r1,0xfff8
+  94:  00 00 00 00     nop
+  98:  2c 21 ff f8     sltiu r1,r1,0xfff8
+  9c:  00 00 00 00     nop
+  a0:  00 21 08 2b     sltu r1,r1,r1
+  a4:  00 00 00 00     nop
+  a8:  00 01 08 03     sra r1,r1,0x0
+  ac:  00 00 00 00     nop
+  b0:  00 21 08 07     srav r1,r1,r1
+  b4:  00 00 00 00     nop
+  b8:  00 01 08 02     srl r1,r1,0x0
+  bc:  00 00 00 00     nop
+  c0:  00 21 08 06     srlv r1,r1,r1
+  c4:  00 00 00 00     nop
+  c8:  00 21 08 22     sub r1,r1,r1
+  cc:  00 00 00 00     nop
+  d0:  00 21 08 23     subu r1,r1,r1
+  d4:  00 00 00 00     nop
+  d8:  00 21 08 26     xor r1,r1,r1
+  dc:  00 00 00 00     nop
+  e0:  38 21 ff f8     xori r1,r1,0xfff8
+  e4:  00 00 00 00     nop
+  e8:  00 00 00 00     nop
+  ec:  00 00 00 00     nop
+  f0:  00 21 08 05     srmv r1,r1,r1,0x0
+  f4:  00 00 00 00     nop
+  f8:  00 21 08 01     slmv r1,r1,r1,0x0
+  fc:  00 00 00 00     nop
+ 100:  9c 01 08 00     ram r1,r1,0x0,0x0,0x0
+ 104:  00 00 00 00     nop
+ 108:  70 3f 00 00     bbi r1\(0x1f\),10c <_start\+0x10c>
+                       108: R_IQ2000_PC16      _startxfff8
+ 10c:  00 00 00 00     nop
+ 110:  78 3f 00 00     bbin r1\(0x1f\),114 <_start\+0x114>
+                       110: R_IQ2000_PC16      _startxfff8
+ 114:  00 00 00 00     nop
+ 118:  74 21 00 00     bbv r1,r1,11c <_start\+0x11c>
+                       118: R_IQ2000_PC16      _startxfff8
+ 11c:  00 00 00 00     nop
+ 120:  7c 21 00 00     bbvn r1,r1,124 <_start\+0x124>
+                       120: R_IQ2000_PC16      _startxfff8
+ 124:  00 00 00 00     nop
+ 128:  f0 3f 00 00     bbil r1\(0x1f\),12c <_start\+0x12c>
+                       128: R_IQ2000_PC16      _startxfff8
+ 12c:  00 00 00 00     nop
+ 130:  f8 3f 00 00     bbinl r1\(0x1f\),134 <_start\+0x134>
+                       130: R_IQ2000_PC16      _startxfff8
+ 134:  00 00 00 00     nop
+ 138:  f4 21 00 00     bbvl r1,r1,13c <_start\+0x13c>
+                       138: R_IQ2000_PC16      _startxfff8
+ 13c:  00 00 00 00     nop
+ 140:  fc 21 00 00     bbvnl r1,r1,144 <_start\+0x144>
+                       140: R_IQ2000_PC16      _startxfff8
+ 144:  00 00 00 00     nop
+ 148:  10 21 00 00     beq r1,r1,14c <_start\+0x14c>
+                       148: R_IQ2000_PC16      _startxfff8
+ 14c:  00 00 00 00     nop
+ 150:  50 21 00 00     beql r1,r1,154 <_start\+0x154>
+                       150: R_IQ2000_PC16      _startxfff8
+ 154:  00 00 00 00     nop
+ 158:  04 21 00 00     bgez r1,15c <_start\+0x15c>
+                       158: R_IQ2000_PC16      _startxfff8
+ 15c:  00 00 00 00     nop
+ 160:  04 35 00 00     bgtzal r1,164 <_start\+0x164>
+                       160: R_IQ2000_PC16      _startxfff8
+ 164:  00 00 00 00     nop
+ 168:  04 31 00 00     bgezal r1,16c <_start\+0x16c>
+                       168: R_IQ2000_PC16      _startxfff8
+ 16c:  00 00 00 00     nop
+ 170:  04 37 00 00     bgtzall r1,174 <_start\+0x174>
+                       170: R_IQ2000_PC16      _startxfff8
+ 174:  00 00 00 00     nop
+ 178:  04 33 00 00     bgezall r1,17c <_start\+0x17c>
+                       178: R_IQ2000_PC16      _startxfff8
+ 17c:  00 00 00 00     nop
+ 180:  04 23 00 00     bgezl r1,184 <_start\+0x184>
+                       180: R_IQ2000_PC16      _startxfff8
+ 184:  00 00 00 00     nop
+ 188:  04 27 00 00     bgtzl r1,18c <_start\+0x18c>
+                       188: R_IQ2000_PC16      _startxfff8
+ 18c:  00 00 00 00     nop
+ 190:  04 25 00 00     bgtz r1,194 <_start\+0x194>
+                       190: R_IQ2000_PC16      _startxfff8
+ 194:  00 00 00 00     nop
+ 198:  04 24 00 00     blez r1,19c <_start\+0x19c>
+                       198: R_IQ2000_PC16      _startxfff8
+ 19c:  00 00 00 00     nop
+ 1a0:  04 34 00 00     blezal r1,1a4 <_start\+0x1a4>
+                       1a0: R_IQ2000_PC16      _startxfff8
+ 1a4:  00 00 00 00     nop
+ 1a8:  04 20 00 00     bltz r1,1ac <_start\+0x1ac>
+                       1a8: R_IQ2000_PC16      _startxfff8
+ 1ac:  00 00 00 00     nop
+ 1b0:  04 30 00 00     bltzal r1,1b4 <_start\+0x1b4>
+                       1b0: R_IQ2000_PC16      _startxfff8
+ 1b4:  00 00 00 00     nop
+ 1b8:  04 26 00 00     blezl r1,1bc <_start\+0x1bc>
+                       1b8: R_IQ2000_PC16      _startxfff8
+ 1bc:  00 00 00 00     nop
+ 1c0:  04 22 00 00     bltzl r1,1c4 <_start\+0x1c4>
+                       1c0: R_IQ2000_PC16      _startxfff8
+ 1c4:  00 00 00 00     nop
+ 1c8:  04 36 00 00     blezall r1,1cc <_start\+0x1cc>
+                       1c8: R_IQ2000_PC16      _startxfff8
+ 1cc:  00 00 00 00     nop
+ 1d0:  04 32 00 00     bltzall r1,1d4 <_start\+0x1d4>
+                       1d0: R_IQ2000_PC16      _startxfff8
+ 1d4:  00 00 00 00     nop
+ 1d8:  18 21 00 00     bmb r1,r1,1dc <_start\+0x1dc>
+                       1d8: R_IQ2000_PC16      _startxfff8
+ 1dc:  00 00 00 00     nop
+ 1e0:  58 21 00 00     bmbl r1,r1,1e4 <_start\+0x1e4>
+                       1e0: R_IQ2000_PC16      _startxfff8
+ 1e4:  00 00 00 00     nop
+ 1e8:  60 21 00 00     bmb0 r1,r1,1ec <_start\+0x1ec>
+                       1e8: R_IQ2000_PC16      _startxfff8
+ 1ec:  00 00 00 00     nop
+ 1f0:  64 21 00 00     bmb1 r1,r1,1f4 <_start\+0x1f4>
+                       1f0: R_IQ2000_PC16      _startxfff8
+ 1f4:  00 00 00 00     nop
+ 1f8:  68 21 00 00     bmb2 r1,r1,1fc <_start\+0x1fc>
+                       1f8: R_IQ2000_PC16      _startxfff8
+ 1fc:  00 00 00 00     nop
+ 200:  6c 21 00 00     bmb3 r1,r1,204 <_start\+0x204>
+                       200: R_IQ2000_PC16      _startxfff8
+ 204:  00 00 00 00     nop
+ 208:  14 21 00 00     bne r1,r1,20c <_start\+0x20c>
+                       208: R_IQ2000_PC16      _startxfff8
+ 20c:  00 00 00 00     nop
+ 210:  54 21 00 00     bnel r1,r1,214 <_start\+0x214>
+                       210: R_IQ2000_PC16      _startxfff8
+ 214:  00 00 00 00     nop
+ 218:  08 00 3f fe     j fff8 <_start\+0xfff8>
+ 21c:  00 00 00 00     nop
+ 220:  0c 01 3f fe     jal r1,fff8 <_start\+0xfff8>
+ 224:  00 00 00 00     nop
+ 228:  00 20 08 09     jalr r1,r1
+ 22c:  00 00 00 00     nop
+ 230:  00 20 00 08     jr r1
+ 234:  00 00 00 00     nop
+ 238:  00 00 00 0d     break
+ 23c:  00 00 00 00     nop
+ 240:  4c 21 00 02     ctc r1,r1
+ 244:  00 00 00 00     nop
+ 248:  4c 01 08 00     cfc r1,r1
+ 24c:  00 00 00 00     nop
+ 250:  8c 21 ff f8     lw r1,0xfff8\(r1\)
+ 254:  00 00 00 00     nop
+ 258:  84 21 ff f8     lh r1,0xfff8\(r1\)
+ 25c:  00 00 00 00     nop
+ 260:  80 21 ff f8     lb r1,0xfff8\(r1\)
+ 264:  00 00 00 00     nop
+ 268:  94 21 ff f8     lhu r1,0xfff8\(r1\)
+ 26c:  00 00 00 00     nop
+ 270:  90 21 ff f8     lbu r1,0xfff8\(r1\)
+ 274:  00 00 00 00     nop
+ 278:  a0 21 ff f8     sb r1,0xfff8\(r1\)
+ 27c:  00 00 00 00     nop
+ 280:  a4 21 ff f8     sh r1,0xfff8\(r1\)
+ 284:  00 00 00 00     nop
+ 288:  ac 21 ff f8     sw r1,0xfff8\(r1\)
+ 28c:  00 00 00 00     nop
+ 290:  4c 21 08 08     rba r1,r1,r1
+ 294:  00 00 00 00     nop
+ 298:  4c 21 08 0a     rbar r1,r1,r1
+ 29c:  00 00 00 00     nop
+ 2a0:  4c 21 08 09     rbal r1,r1,r1
+ 2a4:  00 00 00 00     nop
+ 2a8:  4c 21 08 10     wba r1,r1,r1
+ 2ac:  00 00 00 00     nop
+ 2b0:  4c 21 08 12     wbac r1,r1,r1
+ 2b4:  00 00 00 00     nop
+ 2b8:  4c 21 08 11     wbau r1,r1,r1
+ 2bc:  00 00 00 00     nop
+ 2c0:  4c 21 0a 00     rbi r1,r1,r1,0x0
+ 2c4:  00 00 00 00     nop
+ 2c8:  4c 21 09 00     rbir r1,r1,r1,0x0
+ 2cc:  00 00 00 00     nop
+ 2d0:  4c 21 0b 00     rbil r1,r1,r1,0x0
+ 2d4:  00 00 00 00     nop
+ 2d8:  4c 21 0e 00     wbi r1,r1,r1,0x0
+ 2dc:  00 00 00 00     nop
+ 2e0:  4c 21 0d 00     wbic r1,r1,r1,0x0
+ 2e4:  00 00 00 00     nop
+ 2e8:  4c 21 0f 00     wbiu r1,r1,r1,0x0
+ 2ec:  00 00 00 00     nop
+ 2f0:  4c 21 08 28     pkrla r1,r1,r1
+ 2f4:  00 00 00 00     nop
+ 2f8:  4c 21 08 2a     pkrlah r1,r1,r1
+ 2fc:  00 00 00 00     nop
+ 300:  4c 21 08 29     pkrlau r1,r1,r1
+ 304:  00 00 00 00     nop
+ 308:  48 21 08 00     pkrli r1,r1,r1,0x0
+ 30c:  00 00 00 00     nop
+ 310:  48 21 0a 00     pkrlih r1,r1,r1,0x0
+ 314:  00 00 00 00     nop
+ 318:  48 21 09 00     pkrliu r1,r1,r1,0x0
+ 31c:  00 00 00 00     nop
+ 320:  4c 01 08 01     lock r1,r1
+ 324:  00 00 00 00     nop
+ 328:  4c 01 08 03     unlk r1,r1
+ 32c:  00 00 00 00     nop
+ 330:  4c 21 08 06     swwr r1,r1,r1
+ 334:  00 00 00 00     nop
+ 338:  4c 21 08 07     swwru r1,r1,r1
+ 33c:  00 00 00 00     nop
+ 340:  4c 01 08 04     swrd r1,r1
+ 344:  00 00 00 00     nop
+ 348:  4c 01 08 05     swrdl r1,r1
+ 34c:  00 00 00 00     nop
+ 350:  4c 02 10 0c     dwrd r2,r2
+ 354:  00 00 00 00     nop
+ 358:  4c 02 10 0d     dwrdl r2,r2
+ 35c:  00 00 00 00     nop
+ 360:  4c 21 08 ab     cm32and r1,r1,r1
+ 364:  00 00 00 00     nop
+ 368:  4c 21 08 a3     cm32andn r1,r1,r1
+ 36c:  00 00 00 00     nop
+ 370:  4c 21 08 aa     cm32or r1,r1,r1
+ 374:  00 00 00 00     nop
+ 378:  4c 21 08 b0     cm32ra r1,r1,r1
+ 37c:  00 00 00 00     nop
+ 380:  4c 01 08 a1     cm32rd r1,r1
+ 384:  00 00 00 00     nop
+ 388:  4c 01 08 a4     cm32ri r1,r1
+ 38c:  00 00 00 00     nop
+ 390:  4c 21 08 a0     cm32rs r1,r1,r1
+ 394:  00 00 00 00     nop
+ 398:  4c 21 08 b8     cm32sa r1,r1,r1
+ 39c:  00 00 00 00     nop
+ 3a0:  4c 01 08 a9     cm32sd r1,r1
+ 3a4:  00 00 00 00     nop
+ 3a8:  4c 01 08 ac     cm32si r1,r1
+ 3ac:  00 00 00 00     nop
+ 3b0:  4c 21 08 a8     cm32ss r1,r1,r1
+ 3b4:  00 00 00 00     nop
+ 3b8:  4c 21 08 a2     cm32xor r1,r1,r1
+ 3bc:  00 00 00 00     nop
+ 3c0:  4c 02 10 85     cm64clr r2,r2
+ 3c4:  00 00 00 00     nop
+ 3c8:  4c 42 10 90     cm64ra r2,r2,r2
+ 3cc:  00 00 00 00     nop
+ 3d0:  4c 02 10 81     cm64rd r2,r2
+ 3d4:  00 00 00 00     nop
+ 3d8:  4c 02 10 84     cm64ri r2,r2
+ 3dc:  00 00 00 00     nop
+ 3e0:  4c 42 10 94     cm64ria2 r2,r2,r2
+ 3e4:  00 00 00 00     nop
+ 3e8:  4c 42 10 80     cm64rs r2,r2,r2
+ 3ec:  00 00 00 00     nop
+ 3f0:  4c 42 10 98     cm64sa r2,r2,r2
+ 3f4:  00 00 00 00     nop
+ 3f8:  4c 02 10 89     cm64sd r2,r2
+ 3fc:  00 00 00 00     nop
+ 400:  4c 02 10 8c     cm64si r2,r2
+ 404:  00 00 00 00     nop
+ 408:  4c 42 10 9c     cm64sia2 r2,r2,r2
+ 40c:  00 00 00 00     nop
+ 410:  4c 42 10 88     cm64ss r2,r2,r2
+ 414:  00 00 00 00     nop
+ 418:  4c 42 10 95     cm128ria2 r2,r2,r2
+ 41c:  00 00 00 00     nop
+ 420:  4c 21 08 14     crc32 r1,r1,r1
+ 424:  00 00 00 00     nop
+ 428:  4c 21 08 15     crc32b r1,r1,r1
+ 42c:  00 00 00 00     nop
+ 430:  4c 20 08 26     chkhdr r1,r1
+ 434:  00 00 00 00     nop
+ 438:  4c 00 08 24     avail r1
+ 43c:  00 00 00 00     nop
+ 440:  4c 20 08 25     free r1,r1
+ 444:  00 00 00 00     nop
+ 448:  4c 00 08 2c     cmphdr r1
+ 44c:  00 00 00 00     nop
+ 450:  4c 01 08 20     mcid r1,r1
+ 454:  00 00 00 00     nop
+ 458:  4c 00 08 22     dba r1
+ 45c:  00 00 00 00     nop
+ 460:  4c 01 08 21     dbd r1,r0,r1
+ 464:  00 00 00 00     nop
+ 468:  4c 20 08 23     dpwt r1,r1
+ 46c:  00 00 00 00     nop
diff --git a/gas/testsuite/gas/iq2000/q10test8.s b/gas/testsuite/gas/iq2000/q10test8.s
new file mode 100644 (file)
index 0000000..9484f31
--- /dev/null
@@ -0,0 +1,286 @@
+.global _start\r
+_start:\r
+        ADD    %1,%1,%1\r
+        NOP    \r
+        ADDI   %1,%1,0xfff8\r
+        NOP    \r
+        ADDIU  %1,%1,0xfff8\r
+        NOP    \r
+        ADDU   %1,%1,%1\r
+        NOP    \r
+        ADO16  %1,%1,%1\r
+        NOP    \r
+        AND    %1,%1,%1\r
+        NOP    \r
+        ANDI   %1,%1,0xfff8\r
+        NOP    \r
+        ANDOI  %1,%1,0xfff8\r
+        NOP    \r
+        ANDOUI %1,%1,0xfff8\r
+        NOP    \r
+        LUI    %1,0xfff8\r
+        NOP    \r
+        MRGB   %1,%1,%1,0\r
+        NOP    \r
+        NOR    %1,%1,%1\r
+        NOP    \r
+        OR     %1,%1,%1\r
+        NOP    \r
+        ORI    %1,%1,0xfff8\r
+        NOP    \r
+        ORUI   %1,%1,0xfff8\r
+        NOP    \r
+        SLL    %1,%1,0\r
+        NOP    \r
+        SLLV   %1,%1,%1\r
+        NOP    \r
+        SLT    %1,%1,%1\r
+        NOP    \r
+        SLTI   %1,%1,0xfff8\r
+        NOP    \r
+        SLTIU  %1,%1,0xfff8\r
+        NOP    \r
+        SLTU   %1,%1,%1\r
+        NOP    \r
+        SRA    %1,%1,0\r
+        NOP    \r
+        SRAV   %1,%1,%1\r
+        NOP    \r
+        SRL    %1,%1,0\r
+        NOP    \r
+        SRLV   %1,%1,%1\r
+        NOP    \r
+        SUB    %1,%1,%1\r
+        NOP    \r
+        SUBU   %1,%1,%1\r
+        NOP    \r
+        XOR    %1,%1,%1\r
+        NOP    \r
+        XORI   %1,%1,0xfff8\r
+        NOP    \r
+        NOP    \r
+        NOP    \r
+        SRMV   %1,%1,%1,0\r
+        NOP    \r
+        SLMV   %1,%1,%1,0\r
+        NOP    \r
+        RAM    %1,%1,0,0,0\r
+        NOP    \r
+        BBI    %1(31),_startxfff8\r
+        NOP    \r
+        BBIN   %1(31),_startxfff8\r
+        NOP    \r
+        BBV    %1,%1,_startxfff8\r
+        NOP    \r
+        BBVN   %1,%1,_startxfff8\r
+        NOP    \r
+        BBIL   %1(31),_startxfff8\r
+        NOP    \r
+        BBINL  %1(31),_startxfff8\r
+        NOP    \r
+        BBVL   %1,%1,_startxfff8\r
+        NOP    \r
+        BBVNL  %1,%1,_startxfff8\r
+        NOP    \r
+        BEQ    %1,%1,_startxfff8\r
+        NOP    \r
+        BEQL   %1,%1,_startxfff8\r
+        NOP    \r
+        BGEZ   %1,_startxfff8\r
+        NOP    \r
+        BGTZAL %1,_startxfff8\r
+        NOP    \r
+        BGEZAL %1,_startxfff8\r
+        NOP    \r
+        BGTZALL        %1,_startxfff8\r
+        NOP    \r
+        BGEZALL        %1,_startxfff8\r
+        NOP    \r
+        BGEZL  %1,_startxfff8\r
+        NOP    \r
+        BGTZL  %1,_startxfff8\r
+        NOP    \r
+        BGTZ   %1,_startxfff8\r
+        NOP    \r
+        BLEZ   %1,_startxfff8\r
+        NOP    \r
+        BLEZAL %1,_startxfff8\r
+        NOP    \r
+        BLTZ   %1,_startxfff8\r
+        NOP    \r
+        BLTZAL %1,_startxfff8\r
+        NOP    \r
+        BLEZL  %1,_startxfff8\r
+        NOP    \r
+        BLTZL  %1,_startxfff8\r
+        NOP    \r
+        BLEZALL        %1,_startxfff8\r
+        NOP    \r
+        BLTZALL        %1,_startxfff8\r
+        NOP    \r
+        BMB    %1,%1,_startxfff8\r
+        NOP    \r
+        BMBL   %1,%1,_startxfff8\r
+        NOP    \r
+        BMB0   %1,%1,_startxfff8\r
+        NOP    \r
+        BMB1   %1,%1,_startxfff8\r
+        NOP    \r
+        BMB2   %1,%1,_startxfff8\r
+        NOP    \r
+        BMB3   %1,%1,_startxfff8\r
+        NOP    \r
+        BNE    %1,%1,_startxfff8\r
+        NOP    \r
+        BNEL   %1,%1,_startxfff8\r
+        NOP    \r
+        J      0xfff8\r
+        NOP    \r
+        JAL    %1,0xfff8\r
+        NOP    \r
+        JALR   %1,%1\r
+        NOP    \r
+        JR     %1\r
+        NOP    \r
+        BREAK  \r
+        NOP    \r
+        CTC    %1,%1\r
+        NOP    \r
+        CFC    %1,%1\r
+        NOP    \r
+        LW     %1,0xfff8(%1)\r
+        NOP    \r
+        LH     %1,0xfff8(%1)\r
+        NOP    \r
+        LB     %1,0xfff8(%1)\r
+        NOP    \r
+        LHU    %1,0xfff8(%1)\r
+        NOP    \r
+        LBU    %1,0xfff8(%1)\r
+        NOP    \r
+        SB     %1,0xfff8(%1)\r
+        NOP    \r
+        SH     %1,0xfff8(%1)\r
+        NOP    \r
+        SW     %1,0xfff8(%1)\r
+        NOP    \r
+        RBA    %1,%1,%1\r
+        NOP    \r
+        RBAR   %1,%1,%1\r
+        NOP    \r
+        RBAL   %1,%1,%1\r
+        NOP    \r
+        WBA    %1,%1,%1\r
+        NOP    \r
+        WBAC   %1,%1,%1\r
+        NOP    \r
+        WBAU   %1,%1,%1\r
+        NOP    \r
+        RBI    %1,%1,%1,0\r
+        NOP    \r
+        RBIR   %1,%1,%1,0\r
+        NOP    \r
+        RBIL   %1,%1,%1,0\r
+        NOP    \r
+        WBI    %1,%1,%1,0\r
+        NOP    \r
+        WBIC   %1,%1,%1,0\r
+        NOP    \r
+        WBIU   %1,%1,%1,0\r
+        NOP    \r
+        PKRLA  %1,%1,%1\r
+        NOP    \r
+        PKRLAH %1,%1,%1\r
+        NOP    \r
+        PKRLAU %1,%1,%1\r
+        NOP    \r
+        PKRLI  %1,%1,%1,0\r
+        NOP    \r
+        PKRLIH %1,%1,%1,0\r
+        NOP    \r
+        PKRLIU %1,%1,%1,0\r
+        NOP    \r
+        LOCK   %1,%1\r
+        NOP    \r
+        UNLK   %1,%1\r
+        NOP    \r
+        SWWR   %1,%1,%1\r
+        NOP    \r
+        SWWRU  %1,%1,%1\r
+        NOP    \r
+        SWRD   %1,%1\r
+        NOP    \r
+        SWRDL  %1,%1\r
+        NOP    \r
+        DWRD   %2,%2\r
+        NOP    \r
+        DWRDL  %2,%2\r
+        NOP    \r
+        CM32AND        %1,%1,%1\r
+        NOP    \r
+        CM32ANDN       %1,%1,%1\r
+        NOP    \r
+        CM32OR %1,%1,%1\r
+        NOP    \r
+        CM32RA %1,%1,%1\r
+        NOP    \r
+        CM32RD %1,%1\r
+        NOP    \r
+        CM32RI %1,%1\r
+        NOP    \r
+        CM32RS %1,%1,%1\r
+        NOP    \r
+        CM32SA %1,%1,%1\r
+        NOP    \r
+        CM32SD %1,%1\r
+        NOP    \r
+        CM32SI %1,%1\r
+        NOP    \r
+        CM32SS %1,%1,%1\r
+        NOP    \r
+        CM32XOR        %1,%1,%1\r
+        NOP    \r
+        CM64CLR        %2,%2\r
+        NOP    \r
+        CM64RA %2,%2,%2\r
+        NOP    \r
+        CM64RD %2,%2\r
+        NOP    \r
+        CM64RI %2,%2\r
+        NOP    \r
+        CM64RIA2       %2,%2,%2\r
+        NOP    \r
+        CM64RS %2,%2,%2\r
+        NOP    \r
+        CM64SA %2,%2,%2\r
+        NOP    \r
+        CM64SD %2,%2\r
+        NOP    \r
+        CM64SI %2,%2\r
+        NOP    \r
+        CM64SIA2       %2,%2,%2\r
+        NOP    \r
+        CM64SS %2,%2,%2\r
+        NOP    \r
+        CM128RIA2      %2,%2,%2\r
+        NOP    \r
+        CRC32  %1,%1,%1\r
+        NOP    \r
+        CRC32B %1,%1,%1\r
+        NOP    \r
+        CHKHDR %1,%1\r
+        NOP    \r
+        AVAIL  %1\r
+        NOP    \r
+        FREE   %1,%1\r
+        NOP    \r
+        CMPHDR %1\r
+        NOP    \r
+        MCID   %1,%1\r
+        NOP    \r
+        DBA    %1\r
+        NOP    \r
+        DBD    %1,%1\r
+        NOP    \r
+        DPWT   %1,%1\r
+        NOP    \r
diff --git a/gas/testsuite/gas/iq2000/q10test9.d b/gas/testsuite/gas/iq2000/q10test9.d
new file mode 100644 (file)
index 0000000..9a1f295
--- /dev/null
@@ -0,0 +1,291 @@
+#as: -m10
+#objdump: -drz
+#name: q10test9
+
+.*: +file format .*
+
+Disassembly of section .text:
+
+00000000 <_start>:
+   0:  00 21 08 20     add r1,r1,r1
+   4:  00 00 00 00     nop
+   8:  20 21 00 00     addi r1,r1,0x0
+   c:  00 00 00 00     nop
+  10:  24 21 00 00     addiu r1,r1,0x0
+  14:  00 00 00 00     nop
+  18:  00 21 08 21     addu r1,r1,r1
+  1c:  00 00 00 00     nop
+  20:  00 21 08 29     ado16 r1,r1,r1
+  24:  00 00 00 00     nop
+  28:  00 21 08 24     and r1,r1,r1
+  2c:  00 00 00 00     nop
+  30:  30 21 00 00     andi r1,r1,0x0
+  34:  00 00 00 00     nop
+  38:  b0 21 00 00     andoi r1,r1,0x0
+  3c:  00 00 00 00     nop
+  40:  bc 21 00 00     andoui r1,r1,0x0
+  44:  00 00 00 00     nop
+  48:  3c 01 00 00     lui r1,0x0
+  4c:  00 00 00 00     nop
+  50:  00 21 08 6d     mrgb r1,r1,r1,0x1
+  54:  00 00 00 00     nop
+  58:  00 21 08 27     nor r1,r1,r1
+  5c:  00 00 00 00     nop
+  60:  00 21 08 25     or r1,r1,r1
+  64:  00 00 00 00     nop
+  68:  34 21 00 00     ori r1,r1,0x0
+  6c:  00 00 00 00     nop
+  70:  3c 21 00 00     orui r1,r1,0x0
+  74:  00 00 00 00     nop
+  78:  00 01 08 00     sll r1,r1,0x0
+  7c:  00 00 00 00     nop
+  80:  00 21 08 04     sllv r1,r1,r1
+  84:  00 00 00 00     nop
+  88:  00 21 08 2a     slt r1,r1,r1
+  8c:  00 00 00 00     nop
+  90:  28 21 00 00     slti r1,r1,0x0
+  94:  00 00 00 00     nop
+  98:  2c 21 00 00     sltiu r1,r1,0x0
+  9c:  00 00 00 00     nop
+  a0:  00 21 08 2b     sltu r1,r1,r1
+  a4:  00 00 00 00     nop
+  a8:  00 01 08 03     sra r1,r1,0x0
+  ac:  00 00 00 00     nop
+  b0:  00 21 08 07     srav r1,r1,r1
+  b4:  00 00 00 00     nop
+  b8:  00 01 08 02     srl r1,r1,0x0
+  bc:  00 00 00 00     nop
+  c0:  00 21 08 06     srlv r1,r1,r1
+  c4:  00 00 00 00     nop
+  c8:  00 21 08 22     sub r1,r1,r1
+  cc:  00 00 00 00     nop
+  d0:  00 21 08 23     subu r1,r1,r1
+  d4:  00 00 00 00     nop
+  d8:  00 21 08 26     xor r1,r1,r1
+  dc:  00 00 00 00     nop
+  e0:  38 21 00 00     xori r1,r1,0x0
+  e4:  00 00 00 00     nop
+  e8:  00 00 00 00     nop
+  ec:  00 00 00 00     nop
+  f0:  00 21 08 05     srmv r1,r1,r1,0x0
+  f4:  00 00 00 00     nop
+  f8:  00 21 08 01     slmv r1,r1,r1,0x0
+  fc:  00 00 00 00     nop
+ 100:  9c 21 08 01     ram r1,r1,0x0,0x1,0x1
+ 104:  00 00 00 00     nop
+ 108:  70 20 ff bd     bbi r1\(0x0\),0 <_start>
+ 10c:  00 00 00 00     nop
+ 110:  78 20 ff bb     bbin r1\(0x0\),0 <_start>
+ 114:  00 00 00 00     nop
+ 118:  74 21 ff b9     bbv r1,r1,0 <_start>
+ 11c:  00 00 00 00     nop
+ 120:  7c 21 ff b7     bbvn r1,r1,0 <_start>
+ 124:  00 00 00 00     nop
+ 128:  f0 20 ff b5     bbil r1\(0x0\),0 <_start>
+ 12c:  00 00 00 00     nop
+ 130:  f8 20 ff b3     bbinl r1\(0x0\),0 <_start>
+ 134:  00 00 00 00     nop
+ 138:  f4 21 ff b1     bbvl r1,r1,0 <_start>
+ 13c:  00 00 00 00     nop
+ 140:  fc 21 ff af     bbvnl r1,r1,0 <_start>
+ 144:  00 00 00 00     nop
+ 148:  10 21 ff ad     beq r1,r1,0 <_start>
+ 14c:  00 00 00 00     nop
+ 150:  50 21 ff ab     beql r1,r1,0 <_start>
+ 154:  00 00 00 00     nop
+ 158:  04 21 ff a9     bgez r1,0 <_start>
+ 15c:  00 00 00 00     nop
+ 160:  04 35 ff a7     bgtzal r1,0 <_start>
+ 164:  00 00 00 00     nop
+ 168:  04 31 ff a5     bgezal r1,0 <_start>
+ 16c:  00 00 00 00     nop
+ 170:  04 37 ff a3     bgtzall r1,0 <_start>
+ 174:  00 00 00 00     nop
+ 178:  04 33 ff a1     bgezall r1,0 <_start>
+ 17c:  00 00 00 00     nop
+ 180:  04 23 ff 9f     bgezl r1,0 <_start>
+ 184:  00 00 00 00     nop
+ 188:  04 27 ff 9d     bgtzl r1,0 <_start>
+ 18c:  00 00 00 00     nop
+ 190:  04 25 ff 9b     bgtz r1,0 <_start>
+ 194:  00 00 00 00     nop
+ 198:  04 24 ff 99     blez r1,0 <_start>
+ 19c:  00 00 00 00     nop
+ 1a0:  04 34 ff 97     blezal r1,0 <_start>
+ 1a4:  00 00 00 00     nop
+ 1a8:  04 20 ff 95     bltz r1,0 <_start>
+ 1ac:  00 00 00 00     nop
+ 1b0:  04 30 ff 93     bltzal r1,0 <_start>
+ 1b4:  00 00 00 00     nop
+ 1b8:  04 26 ff 91     blezl r1,0 <_start>
+ 1bc:  00 00 00 00     nop
+ 1c0:  04 22 ff 8f     bltzl r1,0 <_start>
+ 1c4:  00 00 00 00     nop
+ 1c8:  04 36 ff 8d     blezall r1,0 <_start>
+ 1cc:  00 00 00 00     nop
+ 1d0:  04 32 ff 8b     bltzall r1,0 <_start>
+ 1d4:  00 00 00 00     nop
+ 1d8:  18 21 ff 89     bmb r1,r1,0 <_start>
+ 1dc:  00 00 00 00     nop
+ 1e0:  58 21 ff 87     bmbl r1,r1,0 <_start>
+ 1e4:  00 00 00 00     nop
+ 1e8:  60 21 ff 85     bmb0 r1,r1,0 <_start>
+ 1ec:  00 00 00 00     nop
+ 1f0:  64 21 ff 83     bmb1 r1,r1,0 <_start>
+ 1f4:  00 00 00 00     nop
+ 1f8:  68 21 ff 81     bmb2 r1,r1,0 <_start>
+ 1fc:  00 00 00 00     nop
+ 200:  6c 21 ff 7f     bmb3 r1,r1,0 <_start>
+ 204:  00 00 00 00     nop
+ 208:  14 21 ff 7d     bne r1,r1,0 <_start>
+ 20c:  00 00 00 00     nop
+ 210:  54 21 ff 7b     bnel r1,r1,0 <_start>
+ 214:  00 00 00 00     nop
+ 218:  08 00 00 00     j 0 <_start>
+ 21c:  00 00 00 00     nop
+ 220:  0c 01 00 00     jal r1,0 <_start>
+ 224:  00 00 00 00     nop
+ 228:  00 20 08 09     jalr r1,r1
+ 22c:  00 00 00 00     nop
+ 230:  00 20 00 08     jr r1
+ 234:  00 00 00 00     nop
+ 238:  00 00 00 0d     break
+ 23c:  00 00 00 00     nop
+ 240:  4c 21 00 02     ctc r1,r1
+ 244:  00 00 00 00     nop
+ 248:  4c 01 08 00     cfc r1,r1
+ 24c:  00 00 00 00     nop
+ 250:  8c 21 00 00     lw r1,0x0\(r1\)
+ 254:  00 00 00 00     nop
+ 258:  84 21 00 00     lh r1,0x0\(r1\)
+ 25c:  00 00 00 00     nop
+ 260:  80 21 00 00     lb r1,0x0\(r1\)
+ 264:  00 00 00 00     nop
+ 268:  94 21 00 00     lhu r1,0x0\(r1\)
+ 26c:  00 00 00 00     nop
+ 270:  90 21 00 00     lbu r1,0x0\(r1\)
+ 274:  00 00 00 00     nop
+ 278:  a0 21 00 00     sb r1,0x0\(r1\)
+ 27c:  00 00 00 00     nop
+ 280:  a4 21 00 00     sh r1,0x0\(r1\)
+ 284:  00 00 00 00     nop
+ 288:  ac 21 00 00     sw r1,0x0\(r1\)
+ 28c:  00 00 00 00     nop
+ 290:  4c 21 08 08     rba r1,r1,r1
+ 294:  00 00 00 00     nop
+ 298:  4c 21 08 0a     rbar r1,r1,r1
+ 29c:  00 00 00 00     nop
+ 2a0:  4c 21 08 09     rbal r1,r1,r1
+ 2a4:  00 00 00 00     nop
+ 2a8:  4c 21 08 10     wba r1,r1,r1
+ 2ac:  00 00 00 00     nop
+ 2b0:  4c 21 08 12     wbac r1,r1,r1
+ 2b4:  00 00 00 00     nop
+ 2b8:  4c 21 08 11     wbau r1,r1,r1
+ 2bc:  00 00 00 00     nop
+ 2c0:  4c 21 0a 08     rbi r1,r1,r1,0x8
+ 2c4:  00 00 00 00     nop
+ 2c8:  4c 21 09 08     rbir r1,r1,r1,0x8
+ 2cc:  00 00 00 00     nop
+ 2d0:  4c 21 0b 08     rbil r1,r1,r1,0x8
+ 2d4:  00 00 00 00     nop
+ 2d8:  4c 21 0e 08     wbi r1,r1,r1,0x8
+ 2dc:  00 00 00 00     nop
+ 2e0:  4c 21 0d 08     wbic r1,r1,r1,0x8
+ 2e4:  00 00 00 00     nop
+ 2e8:  4c 21 0f 08     wbiu r1,r1,r1,0x8
+ 2ec:  00 00 00 00     nop
+ 2f0:  4c 21 08 28     pkrla r1,r1,r1
+ 2f4:  00 00 00 00     nop
+ 2f8:  4c 21 08 2a     pkrlah r1,r1,r1
+ 2fc:  00 00 00 00     nop
+ 300:  4c 21 08 29     pkrlau r1,r1,r1
+ 304:  00 00 00 00     nop
+ 308:  48 21 08 08     pkrli r1,r1,r1,0x8
+ 30c:  00 00 00 00     nop
+ 310:  48 21 0a 08     pkrlih r1,r1,r1,0x8
+ 314:  00 00 00 00     nop
+ 318:  48 21 09 08     pkrliu r1,r1,r1,0x8
+ 31c:  00 00 00 00     nop
+ 320:  4c 01 08 01     lock r1,r1
+ 324:  00 00 00 00     nop
+ 328:  4c 01 08 03     unlk r1,r1
+ 32c:  00 00 00 00     nop
+ 330:  4c 21 08 06     swwr r1,r1,r1
+ 334:  00 00 00 00     nop
+ 338:  4c 21 08 07     swwru r1,r1,r1
+ 33c:  00 00 00 00     nop
+ 340:  4c 01 08 04     swrd r1,r1
+ 344:  00 00 00 00     nop
+ 348:  4c 01 08 05     swrdl r1,r1
+ 34c:  00 00 00 00     nop
+ 350:  4c 02 10 0c     dwrd r2,r2
+ 354:  00 00 00 00     nop
+ 358:  4c 02 10 0d     dwrdl r2,r2
+ 35c:  00 00 00 00     nop
+ 360:  4c 21 08 ab     cm32and r1,r1,r1
+ 364:  00 00 00 00     nop
+ 368:  4c 21 08 a3     cm32andn r1,r1,r1
+ 36c:  00 00 00 00     nop
+ 370:  4c 21 08 aa     cm32or r1,r1,r1
+ 374:  00 00 00 00     nop
+ 378:  4c 21 08 b0     cm32ra r1,r1,r1
+ 37c:  00 00 00 00     nop
+ 380:  4c 01 08 a1     cm32rd r1,r1
+ 384:  00 00 00 00     nop
+ 388:  4c 01 08 a4     cm32ri r1,r1
+ 38c:  00 00 00 00     nop
+ 390:  4c 21 08 a0     cm32rs r1,r1,r1
+ 394:  00 00 00 00     nop
+ 398:  4c 21 08 b8     cm32sa r1,r1,r1
+ 39c:  00 00 00 00     nop
+ 3a0:  4c 01 08 a9     cm32sd r1,r1
+ 3a4:  00 00 00 00     nop
+ 3a8:  4c 01 08 ac     cm32si r1,r1
+ 3ac:  00 00 00 00     nop
+ 3b0:  4c 21 08 a8     cm32ss r1,r1,r1
+ 3b4:  00 00 00 00     nop
+ 3b8:  4c 21 08 a2     cm32xor r1,r1,r1
+ 3bc:  00 00 00 00     nop
+ 3c0:  4c 02 10 85     cm64clr r2,r2
+ 3c4:  00 00 00 00     nop
+ 3c8:  4c 42 10 90     cm64ra r2,r2,r2
+ 3cc:  00 00 00 00     nop
+ 3d0:  4c 02 10 81     cm64rd r2,r2
+ 3d4:  00 00 00 00     nop
+ 3d8:  4c 02 10 84     cm64ri r2,r2
+ 3dc:  00 00 00 00     nop
+ 3e0:  4c 42 10 94     cm64ria2 r2,r2,r2
+ 3e4:  00 00 00 00     nop
+ 3e8:  4c 42 10 80     cm64rs r2,r2,r2
+ 3ec:  00 00 00 00     nop
+ 3f0:  4c 42 10 98     cm64sa r2,r2,r2
+ 3f4:  00 00 00 00     nop
+ 3f8:  4c 02 10 89     cm64sd r2,r2
+ 3fc:  00 00 00 00     nop
+ 400:  4c 02 10 8c     cm64si r2,r2
+ 404:  00 00 00 00     nop
+ 408:  4c 42 10 9c     cm64sia2 r2,r2,r2
+ 40c:  00 00 00 00     nop
+ 410:  4c 42 10 88     cm64ss r2,r2,r2
+ 414:  00 00 00 00     nop
+ 418:  4c 42 10 14     crc32 r2,r2,r2
+ 41c:  00 00 00 00     nop
+ 420:  4c 42 10 15     crc32b r2,r2,r2
+ 424:  00 00 00 00     nop
+ 428:  4c 40 10 26     chkhdr r2,r2
+ 42c:  00 00 00 00     nop
+ 430:  4c 00 08 24     avail r1
+ 434:  00 00 00 00     nop
+ 438:  4c 20 08 25     free r1,r1
+ 43c:  00 00 00 00     nop
+ 440:  4c 00 08 2c     cmphdr r1
+ 444:  00 00 00 00     nop
+ 448:  4c 01 08 20     mcid r1,r1
+ 44c:  00 00 00 00     nop
+ 450:  4c 00 08 22     dba r1
+ 454:  00 00 00 00     nop
+ 458:  4c 01 08 21     dbd r1,r0,r1
+ 45c:  00 00 00 00     nop
+ 460:  4c 20 08 23     dpwt r1,r1
+ 464:  00 00 00 00     nop
diff --git a/gas/testsuite/gas/iq2000/q10test9.s b/gas/testsuite/gas/iq2000/q10test9.s
new file mode 100644 (file)
index 0000000..0481743
--- /dev/null
@@ -0,0 +1,284 @@
+.global _start\r
+_start:\r
+        ADD    %1,%1,%1\r
+        NOP    \r
+        ADDI   %1,%1,0\r
+        NOP    \r
+        ADDIU  %1,%1,0\r
+        NOP    \r
+        ADDU   %1,%1,%1\r
+        NOP    \r
+        ADO16  %1,%1,%1\r
+        NOP    \r
+        AND    %1,%1,%1\r
+        NOP    \r
+        ANDI   %1,%1,0\r
+        NOP    \r
+        ANDOI  %1,%1,0\r
+        NOP    \r
+        ANDOUI %1,%1,0\r
+        NOP    \r
+        LUI    %1,0\r
+        NOP    \r
+        MRGB   %1,%1,%1,1\r
+        NOP    \r
+        NOR    %1,%1,%1\r
+        NOP    \r
+        OR     %1,%1,%1\r
+        NOP    \r
+        ORI    %1,%1,0\r
+        NOP    \r
+        ORUI   %1,%1,0\r
+        NOP    \r
+        SLL    %1,%1,0\r
+        NOP    \r
+        SLLV   %1,%1,%1\r
+        NOP    \r
+        SLT    %1,%1,%1\r
+        NOP    \r
+        SLTI   %1,%1,0\r
+        NOP    \r
+        SLTIU  %1,%1,0\r
+        NOP    \r
+        SLTU   %1,%1,%1\r
+        NOP    \r
+        SRA    %1,%1,0\r
+        NOP    \r
+        SRAV   %1,%1,%1\r
+        NOP    \r
+        SRL    %1,%1,0\r
+        NOP    \r
+        SRLV   %1,%1,%1\r
+        NOP    \r
+        SUB    %1,%1,%1\r
+        NOP    \r
+        SUBU   %1,%1,%1\r
+        NOP    \r
+        XOR    %1,%1,%1\r
+        NOP    \r
+        XORI   %1,%1,0\r
+        NOP    \r
+        NOP    \r
+        NOP    \r
+        SRMV   %1,%1,%1,0\r
+        NOP    \r
+        SLMV   %1,%1,%1,0\r
+        NOP    \r
+        RAM    %1,%1,0,1,1\r
+        NOP    \r
+        BBI    %1(0),_start\r
+        NOP    \r
+        BBIN   %1(0),_start\r
+        NOP    \r
+        BBV    %1,%1,_start\r
+        NOP    \r
+        BBVN   %1,%1,_start\r
+        NOP    \r
+        BBIL   %1(0),_start\r
+        NOP    \r
+        BBINL  %1(0),_start\r
+        NOP    \r
+        BBVL   %1,%1,_start\r
+        NOP    \r
+        BBVNL  %1,%1,_start\r
+        NOP    \r
+        BEQ    %1,%1,_start\r
+        NOP    \r
+        BEQL   %1,%1,_start\r
+        NOP    \r
+        BGEZ   %1,_start\r
+        NOP    \r
+        BGTZAL %1,_start\r
+        NOP    \r
+        BGEZAL %1,_start\r
+        NOP    \r
+        BGTZALL        %1,_start\r
+        NOP    \r
+        BGEZALL        %1,_start\r
+        NOP    \r
+        BGEZL  %1,_start\r
+        NOP    \r
+        BGTZL  %1,_start\r
+        NOP    \r
+        BGTZ   %1,_start\r
+        NOP    \r
+        BLEZ   %1,_start\r
+        NOP    \r
+        BLEZAL %1,_start\r
+        NOP    \r
+        BLTZ   %1,_start\r
+        NOP    \r
+        BLTZAL %1,_start\r
+        NOP    \r
+        BLEZL  %1,_start\r
+        NOP    \r
+        BLTZL  %1,_start\r
+        NOP    \r
+        BLEZALL        %1,_start\r
+        NOP    \r
+        BLTZALL        %1,_start\r
+        NOP    \r
+        BMB    %1,%1,_start\r
+        NOP    \r
+        BMBL   %1,%1,_start\r
+        NOP    \r
+        BMB0   %1,%1,_start\r
+        NOP    \r
+        BMB1   %1,%1,_start\r
+        NOP    \r
+        BMB2   %1,%1,_start\r
+        NOP    \r
+        BMB3   %1,%1,_start\r
+        NOP    \r
+        BNE    %1,%1,_start\r
+        NOP    \r
+        BNEL   %1,%1,_start\r
+        NOP    \r
+        J      0\r
+        NOP    \r
+        JAL    %1,0\r
+        NOP    \r
+        JALR   %1,%1\r
+        NOP    \r
+        JR     %1\r
+        NOP    \r
+        BREAK  \r
+        NOP    \r
+        CTC    %1,%1\r
+        NOP    \r
+        CFC    %1,%1\r
+        NOP    \r
+        LW     %1,0(%1)\r
+        NOP    \r
+        LH     %1,0(%1)\r
+        NOP    \r
+        LB     %1,0(%1)\r
+        NOP    \r
+        LHU    %1,0(%1)\r
+        NOP    \r
+        LBU    %1,0(%1)\r
+        NOP    \r
+        SB     %1,0(%1)\r
+        NOP    \r
+        SH     %1,0(%1)\r
+        NOP    \r
+        SW     %1,0(%1)\r
+        NOP    \r
+        RBA    %1,%1,%1\r
+        NOP    \r
+        RBAR   %1,%1,%1\r
+        NOP    \r
+        RBAL   %1,%1,%1\r
+        NOP    \r
+        WBA    %1,%1,%1\r
+        NOP    \r
+        WBAC   %1,%1,%1\r
+        NOP    \r
+        WBAU   %1,%1,%1\r
+        NOP    \r
+        RBI    %1,%1,%1,8\r
+        NOP    \r
+        RBIR   %1,%1,%1,8\r
+        NOP    \r
+        RBIL   %1,%1,%1,8\r
+        NOP    \r
+        WBI    %1,%1,%1,8\r
+        NOP    \r
+        WBIC   %1,%1,%1,8\r
+        NOP    \r
+        WBIU   %1,%1,%1,8\r
+        NOP    \r
+        PKRLA  %1,%1,%1\r
+        NOP    \r
+        PKRLAH %1,%1,%1\r
+        NOP    \r
+        PKRLAU %1,%1,%1\r
+        NOP    \r
+        PKRLI  %1,%1,%1,8\r
+        NOP    \r
+        PKRLIH %1,%1,%1,8\r
+        NOP    \r
+        PKRLIU %1,%1,%1,8\r
+        NOP    \r
+        LOCK   %1,%1\r
+        NOP    \r
+        UNLK   %1,%1\r
+        NOP    \r
+        SWWR   %1,%1,%1\r
+        NOP    \r
+        SWWRU  %1,%1,%1\r
+        NOP    \r
+        SWRD   %1,%1\r
+        NOP    \r
+        SWRDL  %1,%1\r
+        NOP    \r
+        DWRD   %2,%2\r
+        NOP    \r
+        DWRDL  %2,%2\r
+        NOP    \r
+        CM32AND        %1,%1,%1\r
+        NOP    \r
+        CM32ANDN       %1,%1,%1\r
+        NOP    \r
+        CM32OR %1,%1,%1\r
+        NOP    \r
+        CM32RA %1,%1,%1\r
+        NOP    \r
+        CM32RD %1,%1\r
+        NOP    \r
+        CM32RI %1,%1\r
+        NOP    \r
+        CM32RS %1,%1,%1\r
+        NOP    \r
+        CM32SA %1,%1,%1\r
+        NOP    \r
+        CM32SD %1,%1\r
+        NOP    \r
+        CM32SI %1,%1\r
+        NOP    \r
+        CM32SS %1,%1,%1\r
+        NOP    \r
+        CM32XOR        %1,%1,%1\r
+        NOP    \r
+        CM64CLR        %2,%2\r
+        NOP    \r
+        CM64RA %2,%2,%2\r
+        NOP    \r
+        CM64RD %2,%2\r
+        NOP    \r
+        CM64RI %2,%2\r
+        NOP    \r
+        CM64RIA2       %2,%2,%2\r
+        NOP    \r
+        CM64RS %2,%2,%2\r
+        NOP    \r
+        CM64SA %2,%2,%2\r
+        NOP    \r
+        CM64SD %2,%2\r
+        NOP    \r
+        CM64SI %2,%2\r
+        NOP    \r
+        CM64SIA2       %2,%2,%2\r
+        NOP    \r
+        CM64SS %2,%2,%2\r
+        NOP    \r
+        CRC32  %2,%2,%2\r
+        NOP    \r
+        CRC32B %2,%2,%2\r
+        NOP    \r
+        CHKHDR %2,%2\r
+        NOP    \r
+        AVAIL  %1\r
+        NOP    \r
+        FREE   %1,%1\r
+        NOP    \r
+        CMPHDR %1\r
+        NOP    \r
+        MCID   %1,%1\r
+        NOP    \r
+        DBA    %1\r
+        NOP    \r
+        DBD    %1,%1\r
+        NOP    \r
+        DPWT   %1,%1\r
+        NOP    \r
diff --git a/gas/testsuite/gas/iq2000/q10yield.exp b/gas/testsuite/gas/iq2000/q10yield.exp
new file mode 100644 (file)
index 0000000..9e9d9dc
--- /dev/null
@@ -0,0 +1,39 @@
+# Test for warnings when placing yield instructions into IQ2000's
+# branch delay slot.  Written by Ben Elliston (bje@redhat.com)
+
+# Run GAS and check that it emits the desired warning for the test case.
+# Arguments:
+#   file -- name of the test case to assemble.
+#   testname -- a string describing the test.
+#   warnpattern -- a regular expression, suitable for use by the Tcl
+#     regexp command, to decide if the warning string was emitted by
+#     the assembler to stderr.
+
+proc iq2000_warning_test { file testname {warnpattern ""} } {
+    global comp_output
+
+    gas_run $file "-m10" ">/dev/null"
+    verbose "output was $comp_output" 2
+
+    if {$warnpattern == ""} {
+       if {$comp_output == ""} { pass $testname } else { fail $testname }
+       return
+    }
+
+    if {[regexp "Warning: $warnpattern" $comp_output]} {
+       pass $testname
+    } else {
+       fail $testname
+    }
+}
+
+if [istarget iq2000*-*-*] {
+    foreach file [glob -nocomplain -- $srcdir/$subdir/q10yield*.s] {
+       set file [file tail $file]
+       iq2000_warning_test $file \
+               "assembler emits yield instruction in delay slot warning for $file" \
+               "instruction \[a-zA-Z0-9\]+ may not follow a branch/jump"
+    }
+    set testname "assembler emits no warnings for non-yield instruction in delay slot"
+    iq2000_warning_test q10noyield.s $testname
+}
diff --git a/gas/testsuite/gas/iq2000/test.exp b/gas/testsuite/gas/iq2000/test.exp
new file mode 100644 (file)
index 0000000..3f1553c
--- /dev/null
@@ -0,0 +1,17 @@
+# IQ2000 assembler testsuite.
+
+if [istarget iq2000*-*-*] {
+    run_dump_test "q10test0"
+    run_dump_test "q10test1"
+    run_dump_test "q10test2"
+    run_dump_test "q10test3"
+    run_dump_test "q10test4"
+    run_dump_test "q10test5"
+    run_dump_test "q10test6"
+    run_dump_test "q10test7"
+    run_dump_test "q10test8"
+    run_dump_test "q10test9"
+    run_dump_test "q10test10"
+    run_dump_test "q10test11"
+    run_dump_test "q10test12"
+}
diff --git a/gas/testsuite/gas/iq2000/yield.exp b/gas/testsuite/gas/iq2000/yield.exp
new file mode 100644 (file)
index 0000000..c68095f
--- /dev/null
@@ -0,0 +1,39 @@
+# Test for warnings when placing yield instructions into IQ2000's
+# branch delay slot.  Written by Ben Elliston (bje@redhat.com)
+
+# Run GAS and check that it emits the desired error for the test case.
+# Arguments:
+#   file -- name of the test case to assemble.
+#   testname -- a string describing the test.
+#   pattern -- a regular expression, suitable for use by the Tcl
+#     regexp command, to decide if the error string was emitted by
+#     the assembler to stderr.
+
+proc iq2000_error_test { file testname {pattern ""} } {
+    global comp_output
+
+    gas_run $file "" ">/dev/null"
+    verbose "output was $comp_output" 2
+
+    if {$pattern == ""} {
+       if {$comp_output == ""} { pass $testname } else { fail $testname }
+       return
+    }
+
+    if {[regexp "Error: $pattern" $comp_output]} {
+       pass $testname
+    } else {
+       fail $testname
+    }
+}
+
+if [istarget iq2000*-*-*] {
+    foreach file [glob -nocomplain -- $srcdir/$subdir/yield*.s] {
+       set file [file tail $file]
+       iq2000_error_test $file \
+               "assembler emits yield instruction in delay slot error for $file" \
+               "the yielding instruction \[a-zA-Z0-9\]+ may not be in a delay slot."
+    }
+    set testname "assembler emits no warnings for non-yield instruction in delay slot"
+    iq2000_error_test noyield.s $testname
+}
diff --git a/gas/testsuite/gas/iq2000/yield0.s b/gas/testsuite/gas/iq2000/yield0.s
new file mode 100644 (file)
index 0000000..e317bb9
--- /dev/null
@@ -0,0 +1,140 @@
+# This test case includes a single case of a yield instruction
+# (e.g. SLEEP) appearing in the branch delay slot.  We expect
+# the assembler to issue a warning about this!
+       
+.text
+       # yield insn in the branch delay slot.
+       beq %0,%0,foo
+       cfc2 %1, %1
+
+       # likewise for the rest.
+       beq %0,%0,foo
+       cfc3 %1, %1
+       
+       beq %0,%0,foo
+       chkhdr %1, %1
+
+       beq %0,%0,foo
+       luc32 %1, %1
+
+       beq %0,%0,foo
+       luc32l %1, %1
+
+       beq %0,%0,foo
+       luc64 %1, %1
+
+       beq %0,%0,foo
+       luc64l %1, %1
+
+       beq %0,%0,foo
+       lulck %1
+
+       beq %0,%0,foo
+       lum32 %1, %1
+
+       beq %0,%0,foo
+       lum32l %1, %1
+
+       beq %0,%0,foo
+       lum64 %1, %1
+
+       beq %0,%0,foo
+       lum64l %1, %1
+
+       beq %0,%0,foo
+       lur %1, %1
+
+       beq %0,%0,foo
+       lurl %1, %1
+
+       beq %0,%0,foo
+       luulck %1
+
+       beq %0,%0,foo
+       mfc2 %1, %1
+
+       beq %0,%0,foo
+       mfc3 %1, %1
+
+       beq %0,%0,foo
+       rb %1, %1
+
+       beq %0,%0,foo
+       rbr1 %1, 1, 1
+
+       beq %0,%0,foo
+       rbr30 %1, 1, 1
+
+       beq %0,%0,foo
+       rx %1, %1
+
+       beq %0,%0,foo
+       rxr1 %1, 1, 1
+
+       beq %0,%0,foo
+       rxr30 %1, 1, 1
+
+       beq %0,%0,foo
+       sleep
+
+       beq %0,%0,foo
+       srrd %1
+
+       beq %0,%0,foo
+       srrdl %1
+       
+       beq %0,%0,foo
+       srulck %1
+
+       beq %0,%0,foo
+       srwr %1, %1
+
+       beq %0,%0,foo
+       srwru %1, %1
+
+       beq %0,%0,foo
+       syscall
+
+       beq %0,%0,foo
+       trapqfl
+
+       beq %0,%0,foo
+       trapqne
+
+       beq %0,%0,foo
+       wb %1, %1
+
+       beq %0,%0,foo
+       wbu %1, %1
+
+       beq %0,%0,foo
+       wbr1 %1, 1, 1
+
+       beq %0,%0,foo
+       wbr1u %1, 1, 1
+
+       beq %0,%0,foo
+       wbr30 %1, 1, 1
+
+       beq %0,%0,foo
+       wbr30u %1, 1, 1
+
+       beq %0,%0,foo
+       wx %1, %1
+
+       beq %0,%0,foo
+       wxu %1, %1
+
+       beq %0,%0,foo
+       wxr1 %1, 1, 1
+
+       beq %0,%0,foo
+       wxr1u %1, 1, 1
+
+       beq %0,%0,foo
+       wxr30 %1, 1, 1
+
+       beq %0,%0,foo
+       wxr30u %1, 1, 1
+       
+foo:   nop
diff --git a/gas/testsuite/gas/iq2000/yield1.s b/gas/testsuite/gas/iq2000/yield1.s
new file mode 100644 (file)
index 0000000..aee6704
--- /dev/null
@@ -0,0 +1,9 @@
+# This test case includes a single case of a yield instruction
+# (e.g. SLEEP) appearing in the branch delay slot.  We expect
+# the assembler to issue a warning about this!
+       
+.text
+       jalr %3, %4
+       # sleep insn in the branch delay slot.
+       sleep
+foo:   nop
\ No newline at end of file
diff --git a/gas/testsuite/gas/iq2000/yield2.s b/gas/testsuite/gas/iq2000/yield2.s
new file mode 100644 (file)
index 0000000..b3bd2d9
--- /dev/null
@@ -0,0 +1,10 @@
+# This test case includes a single case of a yield instruction
+# (e.g. SLEEP) appearing in the branch delay slot.  We expect
+# the assembler to issue a warning about this!
+       
+.text
+       sleep
+       beq %0, %0, foo
+       # sleep insn in the branch delay slot.
+       sleep
+foo:   nop