From: Stan Cox Date: Fri, 3 Jan 2003 21:38:50 +0000 (+0000) Subject: * gas/iq2000: New testsuite. X-Git-Tag: cagney-unwind-20030108-branchpoint~107 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=a99bcdd0d53e7959bbbc3e574f957f324ac6a23a;p=external%2Fbinutils.git * gas/iq2000: New testsuite. --- diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog index a010004..3bb9a86 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,3 +1,7 @@ +2003-01-02 Jeff Johnston + + * gas/iq2000: New testsuite. + 2003-01-02 Chris Demetriou * 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 index 0000000..c7178cc --- /dev/null +++ b/gas/testsuite/gas/iq2000/allinsn.d @@ -0,0 +1,442 @@ +#as: +#objdump: -dr +#name: allinsn + +.*: +file format .* + +Disassembly of section .text: + +00000000 : + 0: 00 00 00 20 add r0,r0,r0 + +00000004 : + 4: 20 00 ff fc addi r0,r0,0xfffc + +00000008 : + 8: 24 00 00 04 addiu r0,r0,0x4 + +0000000c : + c: 00 00 00 21 addu r0,r0,r0 + +00000010 : + 10: 00 00 00 29 ado16 r0,r0,r0 + +00000014 : + 14: 00 00 00 24 and r0,r0,r0 + +00000018 : + 18: 30 00 de ad andi r0,r0,0xdead + +0000001c : + 1c: b0 00 00 00 andoi r0,r0,0x0 + +00000020 : + 20: fc 00 00 00 andoui r0,r0,0x0 + +00000024 : + 24: 00 00 00 2d mrgb r0,r0,r0,0x0 + +00000028 : + 28: 00 00 00 27 nor r0,r0,r0 + +0000002c : + 2c: 00 00 00 25 or r0,r0,r0 + +00000030 : + 30: 34 00 ff ff ori r0,r0,0xffff + +00000034 : + 34: bc 00 00 00 orui r0,r0,0x0 + +00000038 : + 38: 9c 00 00 00 ram r0,r0,0x0,0x0,0x0 + +0000003c : + 3c: 00 00 00 00 nop + +00000040 : + 40: 00 00 00 04 sllv r0,r0,r0 + +00000044 : + 44: 00 00 00 01 slmv r0,r0,r0,0x0 + +00000048 : + 48: 00 00 00 2a slt r0,r0,r0 + +0000004c : + 4c: 28 00 00 00 slti r0,r0,0x0 + +00000050 : + 50: 2c 00 00 00 sltiu r0,r0,0x0 + +00000054 : + 54: 00 00 00 2b sltu r0,r0,r0 + +00000058 : + 58: 00 00 00 03 sra r0,r0,0x0 + +0000005c : + 5c: 00 00 00 07 srav r0,r0,r0 + +00000060 : + 60: 00 00 00 02 srl r0,r0,0x0 + +00000064 : + 64: 00 00 00 06 srlv r0,r0,r0 + +00000068 : + 68: 00 00 00 05 srmv r0,r0,r0,0x0 + +0000006c : + 6c: 00 00 00 22 sub r0,r0,r0 + +00000070 : + 70: 00 00 00 23 subu r0,r0,r0 + +00000074 : + 74: 00 00 00 26 xor r0,r0,r0 + +00000078 : + 78: 38 00 00 00 xori r0,r0,0x0 + +0000007c : + 7c: 70 00 ff e0 bbi r0\(0x0\),0 + +00000080 : + 80: 78 00 ff df bbin r0\(0x0\),0 + +00000084 : + 84: 74 00 ff de bbv r0,r0,0 + +00000088 : + 88: 7c 00 ff dd bbvn r0,r0,0 + +0000008c : + 8c: 10 00 ff dc beq r0,r0,0 + +00000090 : + 90: 50 00 ff db beql r0,r0,0 + +00000094 : + 94: 04 01 ff da bgez r0,0 + +00000098 : + 98: 04 11 ff d9 bgezal r0,0 + +0000009c : + 9c: 04 13 ff d8 bgezall r0,0 + +000000a0 : + a0: 04 03 ff d7 bgezl r0,0 + +000000a4 : + a4: 1c 00 ff d6 bgtz r0,0 + +000000a8 : + a8: 5c 00 ff d5 bgtzl r0,0 + +000000ac : + ac: 18 00 ff d4 blez r0,0 + +000000b0 : + b0: 58 00 ff d3 blezl r0,0 + +000000b4 : + b4: 04 00 ff d2 bltz r0,0 + +000000b8 : + b8: 04 02 ff d1 bltzl r0,0 + +000000bc : + bc: 04 10 ff d0 bltzal r0,0 + +000000c0 : + c0: 04 12 ff cf bltzall r0,0 + +000000c4 : + c4: b4 00 ff ce bmb r0,r0,0 + +000000c8 : + c8: 60 00 ff cd bmb0 r0,r0,0 + +000000cc : + cc: 64 00 ff cc bmb1 r0,r0,0 + +000000d0 : + d0: 68 00 ff cb bmb2 r0,r0,0 + +000000d4 : + d4: 6c 00 ff ca bmb3 r0,r0,0 + +000000d8 : + d8: 14 00 ff c9 bne r0,r0,0 + +000000dc : + dc: 54 00 ff c8 bnel r0,r0,0 + +000000e0 : + e0: 04 06 ff c7 bctxt r0,0 + +000000e4 : + e4: 41 00 ff c6 bc0f 0 + +000000e8 : + e8: 41 02 ff c5 bc0fl 0 + +000000ec : + ec: 4d 00 ff c4 bc3f 0 + +000000f0 : + f0: 4d 02 ff c3 bc3fl 0 + +000000f4 : + f4: 41 01 ff c2 bc0t 0 + +000000f8 : + f8: 41 03 ff c1 bc0tl 0 + +000000fc : + fc: 4d 01 ff c0 bc3t 0 + +00000100 : + 100: 4d 03 ff bf bc3tl 0 + +00000104 : + 104: 00 00 00 0d break + +00000108 : + 108: 40 40 00 00 cfc0 r0,r0 + +0000010c : + 10c: 44 40 00 00 cfc1 r0,r0 + +00000110 : + 110: 48 40 00 00 cfc2 r0,r0 + +00000114 : + 114: 4c 40 00 00 cfc3 r0,r0 + +00000118 : + 118: 4d 20 00 00 chkhdr r0,r0 + +0000011c : + 11c: 40 c0 00 00 ctc0 r0,r0 + +00000120 : + 120: 44 c0 00 00 ctc1 r0,r0 + +00000124 : + 124: 48 c0 00 00 ctc2 r0,r0 + +00000128 : + 128: 4c c0 00 00 ctc3 r0,r0 + +0000012c : + 12c: 00 00 00 0a jcr r0 + 130: 00 00 00 00 nop + +00000134 : + 134: 48 20 00 03 luc32 r0,r0 + +00000138 : + 138: 48 20 00 07 luc32l r0,r0 + +0000013c : + 13c: 48 20 00 0b luc64 r0,r0 + +00000140 : + 140: 48 20 00 0f luc64l r0,r0 + +00000144 : + 144: 48 20 00 08 luk r0,r0 + +00000148 : + 148: 48 20 00 04 lulck r0 + +0000014c : + 14c: 48 20 00 02 lum32 r0,r0 + +00000150 : + 150: 48 20 00 06 lum32l r0,r0 + +00000154 : + 154: 48 20 00 0a lum64 r0,r0 + +00000158 : + 158: 48 20 00 0e lum64l r0,r0 + +0000015c : + 15c: 48 20 00 01 lur r0,r0 + +00000160 : + 160: 48 20 00 05 lurl r0,r0 + +00000164 : + 164: 48 20 00 00 luulck r0 + +00000168 : + 168: 40 00 00 00 mfc0 r0,r0 + +0000016c : + 16c: 44 00 00 00 mfc1 r0,r0 + +00000170 : + 170: 48 00 00 00 mfc2 r0,r0 + +00000174 : + 174: 4c 00 00 00 mfc3 r0,r0 + +00000178 : + 178: 40 80 00 00 mtc0 r0,r0 + +0000017c : + 17c: 44 80 00 00 mtc1 r0,r0 + +00000180 : + 180: 48 80 00 00 mtc2 r0,r0 + +00000184 : + 184: 4c 80 00 00 mtc3 r0,r0 + +00000188 : + 188: 4c 20 00 04 rb r0,r0 + +0000018c : + 18c: 4f 00 00 00 rbr1 r0,0x0,0x0 + +00000190 : + 190: 4f 40 00 00 rbr30 r0,0x0,0x0 + +00000194 : + 194: 42 00 00 10 rfe + +00000198 : + 198: 4c 20 00 06 rx r0,r0 + +0000019c : + 19c: 4f 80 00 00 rxr1 r0,0x0,0x0 + +000001a0 : + 1a0: 4f c0 00 00 rxr30 r0,0x0,0x0 + +000001a4 : + 1a4: 00 00 00 0e sleep + +000001a8 : + 1a8: 48 20 00 10 srrd r0 + +000001ac : + 1ac: 48 20 00 14 srrdl r0 + +000001b0 : + 1b0: 48 20 00 16 srulck r0 + +000001b4 : + 1b4: 48 20 00 11 srwr r0,r0 + +000001b8 : + 1b8: 48 20 00 15 srwru r0,r0 + +000001bc : + 1bc: 00 00 00 0c syscall + +000001c0 : + 1c0: 4c 20 00 08 trapqfl + +000001c4 : + 1c4: 4c 20 00 09 trapqne + +000001c8 : + 1c8: 4c 20 00 00 wb r0,r0 + +000001cc : + 1cc: 4c 20 00 01 wbu r0,r0 + +000001d0 : + 1d0: 4e 03 00 00 wbr1 r3,0x0,0x0 + +000001d4 : + 1d4: 4e 20 00 00 wbr1u r0,0x0,0x0 + +000001d8 : + 1d8: 4e 40 00 00 wbr30 r0,0x0,0x0 + +000001dc : + 1dc: 4e 60 00 00 wbr30u r0,0x0,0x0 + +000001e0 : + 1e0: 4c 20 00 02 wx r0,r0 + +000001e4 : + 1e4: 4c 20 00 03 wxu r0,r0 + +000001e8 : + 1e8: 4e 80 00 00 wxr1 r0,0x0,0x0 + +000001ec : + 1ec: 4e a0 00 00 wxr1u r0,0x0,0x0 + +000001f0 : + 1f0: 4e c0 00 00 wxr30 r0,0x0,0x0 + +000001f4 : + 1f4: 4e e0 00 00 wxr30u r0,0x0,0x0 + +000001f8 : + 1f8: 08 00 00 00 j 0 + 1f8: R_IQ2000_OFFSET_16 .text + +000001fc : + 1fc: 0c 00 00 00 jal 0 + 1fc: R_IQ2000_OFFSET_16 .text + +00000200 : + 200: 00 00 00 09 jalr r0,r0 + +00000204 : + 204: 00 00 00 08 jr r0 + +00000208 : + 208: 80 00 10 24 lb r0,0x1024\(r0\) + +0000020c : + 20c: 90 00 10 24 lbu r0,0x1024\(r0\) + +00000210 : + 210: c0 00 10 24 ldw r0,0x1024\(r0\) + +00000214 : + 214: 84 00 10 24 lh r0,0x1024\(r0\) + +00000218 : + 218: 94 00 10 24 lhu r0,0x1024\(r0\) + +0000021c : + 21c: 3c 00 ff ff lui r0,0xffff + +00000220 : + 220: 8c 00 10 24 lw r0,0x1024\(r0\) + +00000224 : + 224: a0 00 10 24 sb r0,0x1024\(r0\) + +00000228 : + 228: e0 00 10 24 sdw r0,0x1024\(r0\) + +0000022c : + 22c: a4 00 10 24 sh r0,0x1024\(r0\) + +00000230 : + 230: ac 00 10 24 sw r0,0x1024\(r0\) + +00000234 : + 234: 4c 20 00 0a traprel r0 + +00000238 : + 238: 4c 21 00 07 pkrl r0,r1 + +0000023c : + 23c: 4f a0 00 00 pkrlr1 r0,0x0,0x0 + +00000240 : + 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 index 0000000..20354e0 --- /dev/null +++ b/gas/testsuite/gas/iq2000/allinsn.exp @@ -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 index 0000000..872dbc4 --- /dev/null +++ b/gas/testsuite/gas/iq2000/allinsn.s @@ -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 index 0000000..6c13af2 --- /dev/null +++ b/gas/testsuite/gas/iq2000/hazard0.s @@ -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 index 0000000..a9cee19 --- /dev/null +++ b/gas/testsuite/gas/iq2000/hazard1.s @@ -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 index 0000000..cb45a5b --- /dev/null +++ b/gas/testsuite/gas/iq2000/hazard2.s @@ -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 index 0000000..fd8eda0 --- /dev/null +++ b/gas/testsuite/gas/iq2000/hazard3.s @@ -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 index 0000000..8608114 --- /dev/null +++ b/gas/testsuite/gas/iq2000/hazard4.s @@ -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 index 0000000..ecbacb7 --- /dev/null +++ b/gas/testsuite/gas/iq2000/hazard5.s @@ -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 index 0000000..654c96a --- /dev/null +++ b/gas/testsuite/gas/iq2000/load-hazards.exp @@ -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 index 0000000..fb25317 --- /dev/null +++ b/gas/testsuite/gas/iq2000/nohazard.s @@ -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 index 0000000..119622b --- /dev/null +++ b/gas/testsuite/gas/iq2000/noyield.s @@ -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 index 0000000..4867c1a --- /dev/null +++ b/gas/testsuite/gas/iq2000/odd-ldw.exp @@ -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 index 0000000..277589b --- /dev/null +++ b/gas/testsuite/gas/iq2000/odd-sdw.exp @@ -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 index 0000000..931fbdf --- /dev/null +++ b/gas/testsuite/gas/iq2000/oddldw.s @@ -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 index 0000000..50d829b --- /dev/null +++ b/gas/testsuite/gas/iq2000/oddsdw.s @@ -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 index 0000000..6e9903a --- /dev/null +++ b/gas/testsuite/gas/iq2000/q10allinsn.d @@ -0,0 +1,492 @@ +#as: -m10 +#objdump: -drz +#name: q10allinsn + +.*: +file format .* + +Disassembly of section .text: + +00000000 : + 0: 03 be 00 20 add r0,r29,r30 + +00000004 : + 4: 20 00 ff fc addi r0,r0,0xfffc + +00000008 : + 8: 24 00 00 04 addiu r0,r0,0x4 + +0000000c : + c: 03 be 00 21 addu r0,r29,r30 + +00000010 : + 10: 03 be 00 29 ado16 r0,r29,r30 + +00000014 : + 14: 03 be 00 24 and r0,r29,r30 + +00000018 : + 18: 30 00 de ad andi r0,r0,0xdead + +0000001c : + 1c: b0 00 00 00 andoi r0,r0,0x0 + +00000020 : + 20: bc 00 00 00 andoui r0,r0,0x0 + +00000024 : + 24: 03 a0 00 2d mrgb r0,r29,r0,0x0 + +00000028 : + 28: 03 be 00 27 nor r0,r29,r30 + +0000002c : + 2c: 03 be 00 25 or r0,r29,r30 + 30: 03 be 08 25 or r1,r29,r30 + +00000034 : + 34: 34 00 ff ff ori r0,r0,0xffff + +00000038 : + 38: 3c 20 00 00 orui r0,r1,0x0 + +0000003c : + 3c: 9c 00 00 00 ram r0,r0,0x0,0x0,0x0 + +00000040 : + 40: 00 00 00 00 nop + 44: 00 02 08 00 sll r1,r2,0x0 + +00000048 : + 48: 03 dd 00 04 sllv r0,r29,r30 + +0000004c : + 4c: 00 00 00 01 slmv r0,r0,r0,0x0 + +00000050 : + 50: 03 be 00 2a slt r0,r29,r30 + +00000054 : + 54: 28 00 00 00 slti r0,r0,0x0 + +00000058 : + 58: 2c 00 00 00 sltiu r0,r0,0x0 + +0000005c : + 5c: 03 be 00 2b sltu r0,r29,r30 + +00000060 : + 60: 00 00 00 03 sra r0,r0,0x0 + +00000064 : + 64: 03 dd 00 07 srav r0,r29,r30 + +00000068 : + 68: 00 00 00 02 srl r0,r0,0x0 + +0000006c : + 6c: 03 dd 00 06 srlv r0,r29,r30 + +00000070 : + 70: 00 00 00 05 srmv r0,r0,r0,0x0 + +00000074 : + 74: 03 be 00 22 sub r0,r29,r30 + +00000078 : + 78: 03 be 00 23 subu r0,r29,r30 + +0000007c : + 7c: 00 00 00 26 xor r0,r0,r0 + +00000080 : + 80: 38 00 00 00 xori r0,r0,0x0 + +00000084 : + 84: 70 00 ff ff bbi r0\(0x0\),84 + +00000088 : + 88: f0 00 ff fe bbil r0\(0x0\),84 + +0000008c : + 8c: f8 00 ff fd bbinl r0\(0x0\),84 + +00000090 : + 90: 78 00 ff fc bbin r0\(0x0\),84 + +00000094 : + 94: 74 00 ff fb bbv r0,r0,84 + +00000098 : + 98: f4 00 ff fa bbvl r0,r0,84 + +0000009c : + 9c: 7c 00 ff f9 bbvn r0,r0,84 + +000000a0 : + a0: fc 00 ff f8 bbvnl r0,r0,84 + +000000a4 : + a4: 10 00 ff f7 beq r0,r0,84 + +000000a8 : + a8: 50 00 ff f6 beql r0,r0,84 + +000000ac : + ac: 04 01 ff f5 bgez r0,84 + +000000b0 : + b0: 04 11 ff f4 bgezal r0,84 + +000000b4 : + b4: 04 13 ff f3 bgezall r0,84 + +000000b8 : + b8: 04 03 ff f2 bgezl r0,84 + +000000bc : + bc: 04 05 ff f1 bgtz r0,84 + +000000c0 : + c0: 04 15 ff f0 bgtzal r0,84 + +000000c4 : + c4: 04 17 ff ef bgtzall r0,84 + +000000c8 : + c8: 04 07 ff ee bgtzl r0,84 + +000000cc : + cc: 04 04 ff ed blez r0,84 + +000000d0 : + d0: 04 14 ff ec blezal r0,84 + +000000d4 : + d4: 04 16 ff eb blezall r0,84 + +000000d8 : + d8: 04 06 ff ea blezl r0,84 + +000000dc : + dc: 04 00 ff e9 bltz r0,84 + +000000e0 : + e0: 04 02 ff e8 bltzl r0,84 + +000000e4 : + e4: 04 10 ff e7 bltzal r0,84 + +000000e8 : + e8: 04 12 ff e6 bltzall r0,84 + +000000ec : + ec: 18 00 ff e5 bmb r0,r0,84 + +000000f0 : + f0: 60 00 ff e4 bmb0 r0,r0,84 + +000000f4 : + f4: 64 00 ff e3 bmb1 r0,r0,84 + +000000f8 : + f8: 68 00 ff e2 bmb2 r0,r0,84 + +000000fc : + fc: 6c 00 ff e1 bmb3 r0,r0,84 + +00000100 : + 100: 58 00 ff e0 bmbl r0,r0,84 + +00000104 : + 104: 14 00 ff df bne r0,r0,84 + +00000108 : + 108: 54 00 ff de bnel r0,r0,84 + +0000010c : + 10c: 00 00 00 0d break + +00000110 : + 110: 04 08 ff dc bri r0,84 + +00000114 : + 114: 04 09 ff db brv r0,84 + +00000118 : + 118: 4c 00 00 26 chkhdr r0,r0 + +0000011c : + 11c: 08 00 00 00 j 0 + 11c: R_IQ2000_OFFSET_16 .text\+0x124 + +00000120 : + 120: 0c 00 00 00 jal r0,0 + 120: R_IQ2000_OFFSET_16 .text\+0x124 + +00000124 : + 124: 00 00 00 09 jalr r0,r0 + +00000128 : + 128: 00 00 00 08 jr r0 + +0000012c : + 12c: 80 00 10 24 lb r0,0x1024\(r0\) + +00000130 : + 130: 90 00 10 24 lbu r0,0x1024\(r0\) + +00000134 : + 134: 84 00 10 24 lh r0,0x1024\(r0\) + +00000138 : + 138: 94 00 10 24 lhu r0,0x1024\(r0\) + +0000013c : + 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 : + 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 : + 150: 8c 00 10 24 lw r0,0x1024\(r0\) + +00000154 : + 154: a0 00 10 24 sb r0,0x1024\(r0\) + +00000158 : + 158: a4 00 10 24 sh r0,0x1024\(r0\) + +0000015c : + 15c: ac 00 10 24 sw r0,0x1024\(r0\) + +00000160 : + 160: 4c 1e e8 04 swrd r29,r30 + +00000164 : + 164: 4c 1e e8 05 swrdl r29,r30 + +00000168 : + 168: 4f be 00 06 swwr r0,r29,r30 + +0000016c : + 16c: 4f be 00 07 swwru r0,r29,r30 + +00000170 : + 170: 4f be 00 08 rba r0,r29,r30 + +00000174 : + 174: 4f be 00 09 rbal r0,r29,r30 + +00000178 : + 178: 4f be 00 0a rbar r0,r29,r30 + +0000017c : + 17c: 4c 1e e0 0c dwrd r28,r30 + +00000180 : + 180: 4c 1e e0 0d dwrdl r28,r30 + +00000184 : + 184: 4f be 00 10 wba r0,r29,r30 + +00000188 : + 188: 4f be 00 11 wbau r0,r29,r30 + +0000018c : + 18c: 4f be 00 12 wbac r0,r29,r30 + +00000190 : + 190: 4f be 00 14 crc32 r0,r29,r30 + +00000194 : + 194: 4f be 00 15 crc32b r0,r29,r30 + +00000198 : + 198: 4c 1e e8 00 cfc r29,r30 + +0000019c : + 19c: 4c 1c e8 01 lock r29,r28 + +000001a0 : + 1a0: 4f be 00 02 ctc r29,r30 + +000001a4 : + 1a4: 4c 1e e8 03 unlk r29,r30 + +000001a8 : + 1a8: 4c 1d 00 20 mcid r0,r29 + +000001ac : + 1ac: 4c 00 f0 22 dba r30 + +000001b0 : + 1b0: 4c 1e 00 21 dbd r0,r0,r30 + +000001b4 : + 1b4: 4f c0 00 23 dpwt r0,r30 + +000001b8 : + 1b8: 4c 00 f8 24 avail r31 + +000001bc : + 1bc: 4f c0 00 25 free r0,r30 + +000001c0 : + 1c0: 4f c0 00 27 tstod r0,r30 + +000001c4 : + 1c4: 00 00 00 0e yield + +000001c8 : + 1c8: 4f be 00 28 pkrla r0,r29,r30 + +000001cc : + 1cc: 4f be 00 2b pkrlac r0,r29,r30 + +000001d0 : + 1d0: 4f be 00 29 pkrlau r0,r29,r30 + +000001d4 : + 1d4: 4f be 00 2a pkrlah r0,r29,r30 + +000001d8 : + 1d8: 4c 00 f8 2c cmphdr r31 + +000001dc : + 1dc: 4c 1e ec 09 cam36 r29,r30,0x1,0x1 + +000001e0 : + 1e0: 4c 1e 04 52 cam72 r0,r30,0x2,0x2 + +000001e4 : + 1e4: 4c 1d 04 9b cam144 r0,r29,0x3,0x3 + +000001e8 : + 1e8: 4c 1d 04 a4 cam144 r0,r29,0x4,0x4 + +000001ec : + 1ec: 4f be 00 ab cm32and r0,r29,r30 + +000001f0 : + 1f0: 4f be 00 a3 cm32andn r0,r29,r30 + +000001f4 : + 1f4: 4f be 00 aa cm32or r0,r29,r30 + +000001f8 : + 1f8: 4f be 00 b0 cm32ra r0,r29,r30 + +000001fc : + 1fc: 4c 1e e8 a1 cm32rd r29,r30 + +00000200 : + 200: 4c 1d 00 a4 cm32ri r0,r29 + +00000204 : + 204: 4f be 00 a0 cm32rs r0,r29,r30 + +00000208 : + 208: 4f be 00 b8 cm32sa r0,r29,r30 + +0000020c : + 20c: 4c 1d 00 a9 cm32sd r0,r29 + +00000210 : + 210: 4c 1d 00 ac cm32si r0,r29 + +00000214 : + 214: 4f be 00 a8 cm32ss r0,r29,r30 + +00000218 : + 218: 4f be 00 a2 cm32xor r0,r29,r30 + +0000021c : + 21c: 4c 1c 00 85 cm64clr r0,r28 + +00000220 : + 220: 4f 9e 00 90 cm64ra r0,r28,r30 + +00000224 : + 224: 4c 1c 00 81 cm64rd r0,r28 + +00000228 : + 228: 4c 1c 00 84 cm64ri r0,r28 + +0000022c : + 22c: 4f 9e 00 94 cm64ria2 r0,r28,r30 + +00000230 : + 230: 4f 9e 00 80 cm64rs r0,r28,r30 + +00000234 : + 234: 4f 9e 00 98 cm64sa r0,r28,r30 + +00000238 : + 238: 4c 1c 00 89 cm64sd r0,r28 + +0000023c : + 23c: 4c 1c 00 8c cm64si r0,r28 + +00000240 : + 240: 4f 9e 00 9c cm64sia2 r0,r28,r30 + +00000244 : + 244: 4f be 00 88 cm64ss r0,r29,r30 + +00000248 : + 248: 4f be 00 95 cm128ria2 r0,r29,r30 + +0000024c : + 24c: 4f be 00 90 cm64ra r0,r29,r30 + +00000250 : + 250: 4f be 00 b7 cm128ria4 r0,r29,r30,0x7 + +00000254 : + 254: 4f be 00 9d cm128sia2 r0,r29,r30 + +00000258 : + 258: 4f be 00 98 cm64sa r0,r29,r30 + +0000025c : + 25c: 4f be 00 bf cm128sia4 r0,r29,r30,0x7 + +00000260 : + 260: 4f be 00 a6 cm128vsa r0,r29,r30 + +00000264 : + 264: 4b fd 08 3f pkrli r1,r31,r29,0x3f + +00000268 : + 268: 4b fd 0b 3f pkrlic r1,r31,r29,0x3f + +0000026c : + 26c: 4b fd 0a 3f pkrlih r1,r31,r29,0x3f + +00000270 : + 270: 4b fd 09 3f pkrliu r1,r31,r29,0x3f + +00000274 : + 274: 4f bc 12 20 rbi r2,r29,r28,0x20 + +00000278 : + 278: 4f bc 13 20 rbil r2,r29,r28,0x20 + +0000027c : + 27c: 4f bc 11 20 rbir r2,r29,r28,0x20 + +00000280 : + 280: 4c 22 06 20 wbi r0,r1,r2,0x20 + +00000284 : + 284: 4c 22 05 20 wbic r0,r1,r2,0x20 + +00000288 : + 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 index 0000000..bb5d0f6 --- /dev/null +++ b/gas/testsuite/gas/iq2000/q10allinsn.s @@ -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 index 0000000..c4170a0 --- /dev/null +++ b/gas/testsuite/gas/iq2000/q10hazard3.s @@ -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 index 0000000..fc9f9a6 --- /dev/null +++ b/gas/testsuite/gas/iq2000/q10hazard4.s @@ -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 index 0000000..6ec51f5 --- /dev/null +++ b/gas/testsuite/gas/iq2000/q10hazard5.s @@ -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 index 0000000..e49bcf9 --- /dev/null +++ b/gas/testsuite/gas/iq2000/q10load-hazards.exp @@ -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 index 0000000..02fc136 --- /dev/null +++ b/gas/testsuite/gas/iq2000/q10nohazard.s @@ -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 index 0000000..7c8cdaf --- /dev/null +++ b/gas/testsuite/gas/iq2000/q10noyield.s @@ -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 index 0000000..a0e77c7 --- /dev/null +++ b/gas/testsuite/gas/iq2000/q10test0.d @@ -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 index 0000000..60ba744 --- /dev/null +++ b/gas/testsuite/gas/iq2000/q10test0.s @@ -0,0 +1,354 @@ +.global _start +_start: + ADD %1,%1,%1 + NOP + ADDI %1,%1,0 + NOP + ADDIU %1,%1,0 + NOP + ADDU %1,%1,%1 + NOP + ADO16 %1,%1,%1 + NOP + AND %1,%1,%1 + NOP + ANDI %1,%1,0 + NOP + ANDOI %1,%1,0 + NOP + ANDOUI %1,%1,0 + NOP + LUI %1,0 + NOP + MRGB %1,%1,%1,0 + NOP + NOR %1,%1,%1 + NOP + OR %1,%1,%1 + NOP + ORI %1,%1,0 + NOP + ORUI %1,%1,0 + NOP + SLL %1,%1,0 + NOP + SLLV %1,%1,%1 + NOP + SLT %1,%1,%1 + NOP + SLTI %1,%1,0 + NOP + SLTIU %1,%1,0 + NOP + SLTU %1,%1,%1 + NOP + SRA %1,%1,0 + NOP + SRAV %1,%1,%1 + NOP + SRL %1,%1,0 + NOP + SRLV %1,%1,%1 + NOP + SUB %1,%1,%1 + NOP + SUBU %1,%1,%1 + NOP + XOR %1,%1,%1 + NOP + XORI %1,%1,0 + NOP + NOP + NOP + SRMV %1,%1,%1,0 + NOP + SLMV %1,%1,%1,0 + NOP + RAM %1,%1,0,0,0 + NOP + BBI %1(0),_start + NOP + BBIN %1(0),_start + NOP + BBV %1,%1,_start + NOP + BBVN %1,%1,_start + NOP + BBIL %1(0),_start + NOP + BBINL %1(0),_start + NOP + BBVL %1,%1,_start + NOP + BBVNL %1,%1,_start + NOP + BEQ %1,%1,_start + NOP + BEQL %1,%1,_start + NOP + BGEZ %1,_start + NOP + BGTZAL %1,_start + NOP + BGEZAL %1,_start + NOP + BGTZALL %1,_start + NOP + BGEZALL %1,_start + NOP + BGEZL %1,_start + NOP + BGTZL %1,_start + NOP + BGTZ %1,_start + NOP + BLEZ %1,_start + NOP + BLEZAL %1,_start + NOP + BLTZ %1,_start + NOP + BLTZAL %1,_start + NOP + BLEZL %1,_start + NOP + BLTZL %1,_start + NOP + BLEZALL %1,_start + NOP + BLTZALL %1,_start + NOP + BMB %1,%1,_start + NOP + BMBL %1,%1,_start + NOP + BMB0 %1,%1,_start + NOP + BMB1 %1,%1,_start + NOP + BMB2 %1,%1,_start + NOP + BMB3 %1,%1,_start + NOP + BNE %1,%1,_start + NOP + BNEL %1,%1,_start + NOP + J 0 + NOP + JAL %1,0 + NOP + JALR %1,%1 + NOP + JR %1 + NOP + BREAK + NOP + CTC %1,%1 + NOP + CFC %1,%1 + NOP + LW %1,0(%1) + NOP + LH %1,0(%1) + NOP + LB %1,0(%1) + NOP + LHU %1,0(%1) + NOP + LBU %1,0(%1) + NOP + SB %1,0(%1) + NOP + SH %1,0(%1) + NOP + SW %1,0(%1) + NOP + RBA %1,%1,%1 + NOP + RBAR %1,%1,%1 + NOP + RBAL %1,%1,%1 + NOP + WBA %1,%1,%1 + NOP + WBAC %1,%1,%1 + NOP + WBAU %1,%1,%1 + NOP + RBI %1,%1,%1,0 + NOP + RBIR %1,%1,%1,0 + NOP + RBIL %1,%1,%1,0 + NOP + WBI %1,%1,%1,0 + NOP + WBIC %1,%1,%1,0 + NOP + WBIU %1,%1,%1,0 + NOP + PKRLA %1,%1,%1 + NOP + PKRLAC %1,%1,%1 + NOP + PKRLAH %1,%1,%1 + NOP + PKRLAU %1,%1,%1 + NOP + PKRLI %1,%1,%1,0 + NOP + PKRLIC %1,%1,%1,0 + NOP + PKRLIH %1,%1,%1,0 + NOP + PKRLIU %1,%1,%1,0 + NOP + LOCK %1,%1 + NOP + UNLK %1,%1 + NOP + SWWR %1,%1,%1 + NOP + SWWRU %1,%1,%1 + NOP + SWRD %1,%1 + NOP + SWRDL %1,%1 + NOP + DWRD %2,%2 + NOP + DWRDL %2,%2 + NOP + CAM36 %1,%1,0,0 + NOP + CAM72 %1,%1,0,0 + NOP + CAM144 %1,%1,0,0 + NOP + CAM288 %1,%1,0,0 + NOP + CM32AND %1,%1,%1 + NOP + CM32ANDN %1,%1,%1 + NOP + CM32OR %1,%1,%1 + NOP + CM32RA %1,%1,%1 + NOP + CM32RD %1,%1 + NOP + CM32RI %1,%1 + NOP + CM32RS %1,%1,%1 + NOP + CM32SA %1,%1,%1 + NOP + CM32SD %1,%1 + NOP + CM32SI %1,%1 + NOP + CM32SS %1,%1,%1 + NOP + CM32XOR %1,%1,%1 + NOP + CM64CLR %2,%2 + NOP + CM64RA %2,%2,%2 + NOP + CM64RD %2,%2 + NOP + CM64RI %2,%2 + NOP + CM64RIA2 %2,%2,%2 + NOP + CM64RS %2,%2,%2 + NOP + CM64SA %2,%2,%2 + NOP + CM64SD %2,%2 + NOP + CM64SI %2,%2 + NOP + CM64SIA2 %2,%2,%2 + NOP + CM64SS %2,%2,%2 + NOP + CM128RIA2 %2,%2,%2 + NOP + CM128RIA3 %2,%2,%2,0 + NOP + CM128RIA3 %2,%2,%2,1 + NOP + CM128RIA3 %2,%2,%2,2 + NOP + CM128RIA3 %2,%2,%2,3 + NOP + CM128RIA4 %2,%2,%2,0 + NOP + CM128RIA4 %2,%2,%2,1 + NOP + CM128RIA4 %2,%2,%2,2 + NOP + CM128RIA4 %2,%2,%2,3 + NOP + CM128RIA4 %2,%2,%2,4 + NOP + CM128RIA4 %2,%2,%2,5 + NOP + CM128RIA4 %2,%2,%2,6 + NOP + CM128RIA4 %2,%2,%2,7 + NOP + CM128SIA2 %2,%2,%2 + NOP + CM128SIA3 %2,%2,%2,0 + NOP + CM128SIA3 %2,%2,%2,1 + NOP + CM128SIA3 %2,%2,%2,2 + NOP + CM128SIA3 %2,%2,%2,3 + NOP + CM128SIA4 %1,%1,%1,0 + NOP + CM128SIA4 %1,%1,%1,1 + NOP + CM128SIA4 %1,%1,%1,2 + NOP + CM128SIA4 %1,%1,%1,3 + NOP + CM128SIA4 %1,%1,%1,4 + NOP + CM128SIA4 %1,%1,%1,5 + NOP + CM128SIA4 %1,%1,%1,6 + NOP + CM128SIA4 %1,%1,%1,7 + NOP + CM128VSA %1,%1,%1 + NOP + CRC32 %1,%1,%1 + NOP + CRC32B %1,%1,%1 + NOP + CHKHDR %1,%1 + NOP + AVAIL %1 + NOP + FREE %1,%1 + NOP + YIELD + NOP + TSTOD %1,%1 + NOP + CMPHDR %1 + NOP + MCID %1,%1 + NOP + DBA %1 + NOP + DBD %1,%1 + NOP + DPWT %1,%1 + NOP diff --git a/gas/testsuite/gas/iq2000/q10test1.d b/gas/testsuite/gas/iq2000/q10test1.d new file mode 100644 index 0000000..97f5cd7 --- /dev/null +++ b/gas/testsuite/gas/iq2000/q10test1.d @@ -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 index 0000000..7505230 --- /dev/null +++ b/gas/testsuite/gas/iq2000/q10test1.s @@ -0,0 +1,310 @@ +.global _start +_start: + ADD %1,%31,%1 + NOP + ADDI %1,%31,0 + NOP + ADDIU %1,%31,0 + NOP + ADDU %1,%31,%1 + NOP + ADO16 %1,%31,%1 + NOP + AND %1,%31,%1 + NOP + ANDI %1,%31,0 + NOP + ANDOI %1,%31,0 + NOP + ANDOUI %1,%31,0 + NOP + LUI %1,0 + NOP + MRGB %1,%31,%1,0 + NOP + NOR %1,%31,%1 + NOP + OR %1,%31,%1 + NOP + ORI %1,%31,0 + NOP + ORUI %1,%31,0 + NOP + SLL %1,%1,0 + NOP + SLLV %1,%1,%31 + NOP + SLT %1,%31,%1 + NOP + SLTI %1,%31,0 + NOP + SLTIU %1,%31,0 + NOP + SLTU %1,%31,%1 + NOP + SRA %1,%1,0 + NOP + SRAV %1,%1,%31 + NOP + SRL %1,%1,0 + NOP + SRLV %1,%1,%31 + NOP + SUB %1,%31,%1 + NOP + SUBU %1,%31,%1 + NOP + XOR %1,%31,%1 + NOP + XORI %1,%31,0 + NOP + NOP + NOP + SRMV %1,%31,%1,0 + NOP + SLMV %1,%31,%1,0 + NOP + RAM %1,%1,0,0,0 + NOP + BBI %31(0),_start + NOP + BBIN %31(0),_start + NOP + BBV %31,%1,_start + NOP + BBVN %31,%1,_start + NOP + BBIL %31(0),_start + NOP + BBINL %31(0),_start + NOP + BBVL %31,%1,_start + NOP + BBVNL %31,%1,_start + NOP + BEQ %31,%1,_start + NOP + BEQL %31,%1,_start + NOP + BGEZ %31,_start + NOP + BGTZAL %31,_start + NOP + BGEZAL %31,_start + NOP + BGTZALL %31,_start + NOP + BGEZALL %31,_start + NOP + BGEZL %31,_start + NOP + BGTZL %31,_start + NOP + BGTZ %31,_start + NOP + BLEZ %31,_start + NOP + BLEZAL %31,_start + NOP + BLTZ %31,_start + NOP + BLTZAL %31,_start + NOP + BLEZL %31,_start + NOP + BLTZL %31,_start + NOP + BLEZALL %31,_start + NOP + BLTZALL %31,_start + NOP + BMB %31,%1,_start + NOP + BMBL %31,%1,_start + NOP + BMB0 %31,%1,_start + NOP + BMB1 %31,%1,_start + NOP + BMB2 %31,%1,_start + NOP + BMB3 %31,%1,_start + NOP + BNE %31,%1,_start + NOP + BNEL %31,%1,_start + NOP + J 0 + NOP + JAL %31,0 + NOP + JALR %1,%31 + NOP + JR %31 + NOP + BREAK + NOP + CTC %31,%1 + NOP + CFC %1,%1 + NOP + LW %1,0(%31) + NOP + LH %1,0(%31) + NOP + LB %1,0(%31) + NOP + LHU %1,0(%31) + NOP + LBU %1,0(%31) + NOP + SB %1,0(%31) + NOP + SH %1,0(%31) + NOP + SW %1,0(%31) + NOP + RBA %31,%1,%1 + NOP + RBAR %31,%1,%1 + NOP + RBAL %31,%1,%1 + NOP + WBA %31,%1,%1 + NOP + WBAC %31,%1,%1 + NOP + WBAU %31,%1,%1 + NOP + RBI %31,%1,%1,0 + NOP + RBIR %31,%1,%1,0 + NOP + RBIL %31,%1,%1,0 + NOP + WBI %31,%1,%1,0 + NOP + WBIC %31,%1,%1,0 + NOP + WBIU %31,%1,%1,0 + NOP + PKRLA %31,%1,%1 + NOP + PKRLAH %31,%1,%1 + NOP + PKRLAU %31,%1,%1 + NOP + PKRLI %31,%1,%1,0 + NOP + PKRLIH %31,%1,%1,0 + NOP + PKRLIU %31,%1,%1,0 + NOP + LOCK %1,%1 + NOP + UNLK %1,%1 + NOP + SWWR %31,%1,%1 + NOP + SWWRU %31,%1,%1 + NOP + SWRD %1,%1 + NOP + SWRDL %1,%1 + NOP + DWRD %2,%2 + NOP + DWRDL %2,%2 + NOP + CAM36 %1,%31,1,0 + NOP + CAM72 %1,%31,1,0 + NOP + CAM144 %1,%31,1,0 + NOP + CAM288 %1,%31,1,0 + NOP + CM32AND %1,%31,%1 + NOP + CM32ANDN %1,%31,%1 + NOP + CM32OR %1,%31,%1 + NOP + CM32RA %1,%31,%1 + NOP + CM32RD %1,%1 + NOP + CM32RI %1,%1 + NOP + CM32RS %1,%31,%1 + NOP + CM32SA %1,%31,%1 + NOP + CM32SD %1,%1 + NOP + CM32SI %1,%1 + NOP + CM32SS %1,%31,%1 + NOP + CM32XOR %1,%31,%1 + NOP + CM64CLR %2,%2 + NOP + CM64RA %2,%31,%2 + NOP + CM64RD %2,%2 + NOP + CM64RI %2,%2 + NOP + CM64RIA2 %2,%31,%2 + NOP + CM64RS %2,%31,%2 + NOP + CM64SA %2,%31,%2 + NOP + CM64SD %2,%2 + NOP + CM64SI %2,%2 + NOP + CM64SIA2 %2,%31,%2 + NOP + CM64SS %2,%31,%2 + NOP + CM128RIA2 %2,%31,%2 + NOP + CM128RIA3 %2,%31,%2,0 + NOP + CM128RIA4 %2,%31,%2,1 + NOP + CM128SIA2 %2,%31,%2 + NOP + CM128SIA3 %2,%31,%2,0 + NOP + CM128SIA4 %1,%31,%1,0 + NOP + CM128VSA %1,%31,%1 + NOP + CRC32 %1,%31,%1 + NOP + CRC32B %1,%31,%1 + NOP + CHKHDR %1,%1 + NOP + AVAIL %1 + NOP + FREE %1,%1 + NOP + TSTOD %1,%31 + NOP + YIELD + NOP + CMPHDR %1 + NOP + MCID %1,%1 + NOP + DBA %31 + NOP + DBD %1,%1 + NOP + DPWT %1,%1 + NOP diff --git a/gas/testsuite/gas/iq2000/q10test10.d b/gas/testsuite/gas/iq2000/q10test10.d new file mode 100644 index 0000000..422e0b7 --- /dev/null +++ b/gas/testsuite/gas/iq2000/q10test10.d @@ -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 index 0000000..1ecf110 --- /dev/null +++ b/gas/testsuite/gas/iq2000/q10test10.s @@ -0,0 +1,294 @@ +.global _start +_start: + ADD %1,%1,%1 + NOP + ADDI %1,%1,0 + NOP + ADDIU %1,%1,0 + NOP + ADDU %1,%1,%1 + NOP + ADO16 %1,%1,%1 + NOP + AND %1,%1,%1 + NOP + ANDI %1,%1,0 + NOP + ANDOI %1,%1,0 + NOP + ANDOUI %1,%1,0 + NOP + LUI %1,0 + NOP + MRGB %1,%1,%1,31 + NOP + NOR %1,%1,%1 + NOP + OR %1,%1,%1 + NOP + ORI %1,%1,0 + NOP + ORUI %1,%1,0 + NOP + SLL %1,%1,0 + NOP + SLLV %1,%1,%1 + NOP + SLT %1,%1,%1 + NOP + SLTI %1,%1,0 + NOP + SLTIU %1,%1,0 + NOP + SLTU %1,%1,%1 + NOP + SRA %1,%1,0 + NOP + SRAV %1,%1,%1 + NOP + SRL %1,%1,0 + NOP + SRLV %1,%1,%1 + NOP + SUB %1,%1,%1 + NOP + SUBU %1,%1,%1 + NOP + XOR %1,%1,%1 + NOP + XORI %1,%1,0 + NOP + NOP + NOP + SRMV %1,%1,%1,0 + NOP + SLMV %1,%1,%1,0 + NOP + RAM %1,%1,0,1,1 + NOP + BBI %1(0),_start + NOP + BBIN %1(0),_start + NOP + BBV %1,%1,_start + NOP + BBVN %1,%1,_start + NOP + BBIL %1(0),_start + NOP + BBINL %1(0),_start + NOP + BBVL %1,%1,_start + NOP + BBVNL %1,%1,_start + NOP + BEQ %1,%1,_start + NOP + BEQL %1,%1,_start + NOP + BGEZ %1,_start + NOP + BGTZAL %1,_start + NOP + BGEZAL %1,_start + NOP + BGTZALL %1,_start + NOP + BGEZALL %1,_start + NOP + BGEZL %1,_start + NOP + BGTZL %1,_start + NOP + BGTZ %1,_start + NOP + BLEZ %1,_start + NOP + BLEZAL %1,_start + NOP + BLTZ %1,_start + NOP + BLTZAL %1,_start + NOP + BLEZL %1,_start + NOP + BLTZL %1,_start + NOP + BLEZALL %1,_start + NOP + BLTZALL %1,_start + NOP + BMB %1,%1,_start + NOP + BMBL %1,%1,_start + NOP + BMB0 %1,%1,_start + NOP + BMB1 %1,%1,_start + NOP + BMB2 %1,%1,_start + NOP + BMB3 %1,%1,_start + NOP + BNE %1,%1,_start + NOP + BNEL %1,%1,_start + NOP + J 0 + NOP + JAL %1,0 + NOP + JALR %1,%1 + NOP + JR %1 + NOP + BREAK + NOP + CTC %1,%1 + NOP + CFC %1,%1 + NOP + LW %1,0(%1) + NOP + LH %1,0(%1) + NOP + LB %1,0(%1) + NOP + LHU %1,0(%1) + NOP + LBU %1,0(%1) + NOP + SB %1,0(%1) + NOP + SH %1,0(%1) + NOP + SW %1,0(%1) + NOP + RBA %1,%1,%1 + NOP + RBAR %1,%1,%1 + NOP + RBAL %1,%1,%1 + NOP + WBA %1,%1,%1 + NOP + WBAC %1,%1,%1 + NOP + WBAU %1,%1,%1 + NOP + RBI %1,%1,%1,255 + NOP + RBIR %1,%1,%1,255 + NOP + RBIL %1,%1,%1,255 + NOP + WBI %1,%1,%1,255 + NOP + WBIC %1,%1,%1,255 + NOP + WBIU %1,%1,%1,255 + NOP + PKRLA %1,%1,%1 + NOP + PKRLAH %1,%1,%1 + NOP + PKRLAU %1,%1,%1 + NOP + PKRLI %1,%1,%1,255 + NOP + PKRLIH %1,%1,%1,255 + NOP + PKRLIU %1,%1,%1,255 + NOP + LOCK %1,%1 + NOP + UNLK %1,%1 + NOP + SWWR %1,%1,%1 + NOP + SWWRU %1,%1,%1 + NOP + SWRD %1,%1 + NOP + SWRDL %1,%1 + NOP + CAM36 %1,%1,0,7 + NOP + CAM72 %1,%1,0,7 + NOP + CAM144 %1,%1,0,7 + NOP + CAM288 %1,%1,0,7 + NOP + CM32AND %1,%1,%1 + NOP + CM32ANDN %1,%1,%1 + NOP + CM32OR %1,%1,%1 + NOP + CM32RA %1,%1,%1 + NOP + CM32RD %1,%1 + NOP + CM32RI %1,%1 + NOP + CM32RS %1,%1,%1 + NOP + CM32SA %1,%1,%1 + NOP + CM32SD %1,%1 + NOP + CM32SI %1,%1 + NOP + CM32SS %1,%1,%1 + NOP + CM32XOR %1,%1,%1 + NOP + CM64CLR %2,%2 + NOP + CM64RA %2,%2,%2 + NOP + CM64RD %2,%2 + NOP + CM64RI %2,%2 + NOP + CM64RIA2 %2,%2,%2 + NOP + CM64RS %2,%2,%2 + NOP + CM64SA %2,%2,%2 + NOP + CM64SD %2,%2 + NOP + CM64SI %2,%2 + NOP + CM64SIA2 %2,%2,%2 + NOP + CM64SS %2,%2,%2 + NOP + CM128RIA2 %2,%2,%2 + NOP + CRC32 %1,%1,%1 + NOP + CRC32B %1,%1,%1 + NOP + CHKHDR %1,%1 + NOP + AVAIL %1 + NOP + FREE %1,%1 + NOP + TSTOD %1,%1 + NOP + YIELD + NOP + CMPHDR %1 + NOP + MCID %1,%1 + NOP + DBA %1 + NOP + DBD %1,%1 + NOP + DPWT %1,%1 + NOP diff --git a/gas/testsuite/gas/iq2000/q10test11.d b/gas/testsuite/gas/iq2000/q10test11.d new file mode 100644 index 0000000..a01fedc --- /dev/null +++ b/gas/testsuite/gas/iq2000/q10test11.d @@ -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 index 0000000..08ee8d5 --- /dev/null +++ b/gas/testsuite/gas/iq2000/q10test11.s @@ -0,0 +1,218 @@ +.global _start +_start: + ADD %1,%1,%1 + NOP + ADDI %1,%1,0 + NOP + ADDIU %1,%1,0 + NOP + ADDU %1,%1,%1 + NOP + ADO16 %1,%1,%1 + NOP + AND %1,%1,%1 + NOP + ANDI %1,%1,0 + NOP + ANDOI %1,%1,0 + NOP + ANDOUI %1,%1,0 + NOP + LUI %1,0 + NOP + MRGB %1,%1,%1,1 + NOP + NOR %1,%1,%1 + NOP + OR %1,%1,%1 + NOP + ORI %1,%1,0 + NOP + ORUI %1,%1,0 + NOP + SLL %1,%1,0 + NOP + SLLV %1,%1,%1 + NOP + SLT %1,%1,%1 + NOP + SLTI %1,%1,0 + NOP + SLTIU %1,%1,0 + NOP + SLTU %1,%1,%1 + NOP + SRA %1,%1,0 + NOP + SRAV %1,%1,%1 + NOP + SRL %1,%1,0 + NOP + SRLV %1,%1,%1 + NOP + SUB %1,%1,%1 + NOP + SUBU %1,%1,%1 + NOP + XOR %1,%1,%1 + NOP + XORI %1,%1,0 + NOP + NOP + NOP + SRMV %1,%1,%1,0 + NOP + SLMV %1,%1,%1,0 + NOP + RAM %1,%1,0,1,15 + NOP + BBI %1(0),_start + NOP + BBIN %1(0),_start + NOP + BBV %1,%1,_start + NOP + BBVN %1,%1,_start + NOP + BBIL %1(0),_start + NOP + BBINL %1(0),_start + NOP + BBVL %1,%1,_start + NOP + BBVNL %1,%1,_start + NOP + BEQ %1,%1,_start + NOP + BEQL %1,%1,_start + NOP + BGEZ %1,_start + NOP + BGTZAL %1,_start + NOP + BGEZAL %1,_start + NOP + BGTZALL %1,_start + NOP + BGEZALL %1,_start + NOP + BGEZL %1,_start + NOP + BGTZL %1,_start + NOP + BGTZ %1,_start + NOP + BLEZ %1,_start + NOP + BLEZAL %1,_start + NOP + BLTZ %1,_start + NOP + BLTZAL %1,_start + NOP + BLEZL %1,_start + NOP + BLTZL %1,_start + NOP + BLEZALL %1,_start + NOP + BLTZALL %1,_start + NOP + BMB %1,%1,_start + NOP + BMBL %1,%1,_start + NOP + BMB0 %1,%1,_start + NOP + BMB1 %1,%1,_start + NOP + BMB2 %1,%1,_start + NOP + BMB3 %1,%1,_start + NOP + BNE %1,%1,_start + NOP + BNEL %1,%1,_start + NOP + J 0 + NOP + JAL %1,0 + NOP + JALR %1,%1 + NOP + JR %1 + NOP + BREAK + NOP + CTC %1,%1 + NOP + CFC %1,%1 + NOP + LW %1,0(%1) + NOP + LH %1,0(%1) + NOP + LB %1,0(%1) + NOP + LHU %1,0(%1) + NOP + LBU %1,0(%1) + NOP + SB %1,0(%1) + NOP + SH %1,0(%1) + NOP + SW %1,0(%1) + NOP + RBA %1,%1,%1 + NOP + RBAR %1,%1,%1 + NOP + RBAL %1,%1,%1 + NOP + WBA %1,%1,%1 + NOP + WBAC %1,%1,%1 + NOP + WBAU %1,%1,%1 + NOP + RBI %1,%1,%1,0 + NOP + RBIR %1,%1,%1,0 + NOP + RBIL %1,%1,%1,0 + NOP + WBI %1,%1,%1,0 + NOP + WBIC %1,%1,%1,0 + NOP + WBIU %1,%1,%1,0 + NOP + PKRLA %1,%1,%1 + NOP + PKRLAC %1,%1,%1 + NOP + PKRLAH %1,%1,%1 + NOP + PKRLAU %1,%1,%1 + NOP + PKRLI %1,%1,%1,0 + NOP + PKRLIC %1,%1,%1,0 + NOP + PKRLIH %1,%1,%1,0 + NOP + PKRLIU %1,%1,%1,0 + NOP + LOCK %1,%1 + NOP + UNLK %1,%1 + NOP + SWWR %1,%1,%1 + NOP + SWWRU %1,%1,%1 + NOP + SWRD %1,%1 + NOP + SWRDL %1,%1 + NOP diff --git a/gas/testsuite/gas/iq2000/q10test12.d b/gas/testsuite/gas/iq2000/q10test12.d new file mode 100644 index 0000000..c261205 --- /dev/null +++ b/gas/testsuite/gas/iq2000/q10test12.d @@ -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 index 0000000..e207ec3 --- /dev/null +++ b/gas/testsuite/gas/iq2000/q10test12.s @@ -0,0 +1,214 @@ +.global _start +_start: + ADD %1,%1,%1 + NOP + ADDI %1,%1,0 + NOP + ADDIU %1,%1,0 + NOP + ADDU %1,%1,%1 + NOP + ADO16 %1,%1,%1 + NOP + AND %1,%1,%1 + NOP + ANDI %1,%1,0 + NOP + ANDOI %1,%1,0 + NOP + ANDOUI %1,%1,0 + NOP + LUI %1,0 + NOP + MRGB %1,%1,%1,1 + NOP + NOR %1,%1,%1 + NOP + OR %1,%1,%1 + NOP + ORI %1,%1,0 + NOP + ORUI %1,%1,0 + NOP + SLL %1,%1,0 + NOP + SLLV %1,%1,%1 + NOP + SLT %1,%1,%1 + NOP + SLTI %1,%1,0 + NOP + SLTIU %1,%1,0 + NOP + SLTU %1,%1,%1 + NOP + SRA %1,%1,0 + NOP + SRAV %1,%1,%1 + NOP + SRL %1,%1,0 + NOP + SRLV %1,%1,%1 + NOP + SUB %1,%1,%1 + NOP + SUBU %1,%1,%1 + NOP + XOR %1,%1,%1 + NOP + XORI %1,%1,0 + NOP + NOP + NOP + SRMV %1,%1,%1,0 + NOP + SLMV %1,%1,%1,0 + NOP + RAM %1,%1,0,15,1 + NOP + BBI %1(0),_start + NOP + BBIN %1(0),_start + NOP + BBV %1,%1,_start + NOP + BBVN %1,%1,_start + NOP + BBIL %1(0),_start + NOP + BBINL %1(0),_start + NOP + BBVL %1,%1,_start + NOP + BBVNL %1,%1,_start + NOP + BEQ %1,%1,_start + NOP + BEQL %1,%1,_start + NOP + BGEZ %1,_start + NOP + BGTZAL %1,_start + NOP + BGEZAL %1,_start + NOP + BGTZALL %1,_start + NOP + BGEZALL %1,_start + NOP + BGEZL %1,_start + NOP + BGTZL %1,_start + NOP + BGTZ %1,_start + NOP + BLEZ %1,_start + NOP + BLEZAL %1,_start + NOP + BLTZ %1,_start + NOP + BLTZAL %1,_start + NOP + BLEZL %1,_start + NOP + BLTZL %1,_start + NOP + BLEZALL %1,_start + NOP + BLTZALL %1,_start + NOP + BMB %1,%1,_start + NOP + BMBL %1,%1,_start + NOP + BMB0 %1,%1,_start + NOP + BMB1 %1,%1,_start + NOP + BMB2 %1,%1,_start + NOP + BMB3 %1,%1,_start + NOP + BNE %1,%1,_start + NOP + BNEL %1,%1,_start + NOP + J 0 + NOP + JAL %1,0 + NOP + JALR %1,%1 + NOP + JR %1 + NOP + BREAK + NOP + CTC %1,%1 + NOP + CFC %1,%1 + NOP + LW %1,0(%1) + NOP + LH %1,0(%1) + NOP + LB %1,0(%1) + NOP + LHU %1,0(%1) + NOP + LBU %1,0(%1) + NOP + SB %1,0(%1) + NOP + SH %1,0(%1) + NOP + SW %1,0(%1) + NOP + RBA %1,%1,%1 + NOP + RBAR %1,%1,%1 + NOP + RBAL %1,%1,%1 + NOP + WBA %1,%1,%1 + NOP + WBAC %1,%1,%1 + NOP + WBAU %1,%1,%1 + NOP + RBI %1,%1,%1,0 + NOP + RBIR %1,%1,%1,0 + NOP + RBIL %1,%1,%1,0 + NOP + WBI %1,%1,%1,0 + NOP + WBIC %1,%1,%1,0 + NOP + WBIU %1,%1,%1,0 + NOP + PKRLA %1,%1,%1 + NOP + PKRLAH %1,%1,%1 + NOP + PKRLAU %1,%1,%1 + NOP + PKRLI %1,%1,%1,0 + NOP + PKRLIH %1,%1,%1,0 + NOP + PKRLIU %1,%1,%1,0 + NOP + LOCK %1,%1 + NOP + UNLK %1,%1 + NOP + SWWR %1,%1,%1 + NOP + SWWRU %1,%1,%1 + NOP + SWRD %1,%1 + NOP + SWRDL %1,%1 + NOP diff --git a/gas/testsuite/gas/iq2000/q10test2.d b/gas/testsuite/gas/iq2000/q10test2.d new file mode 100644 index 0000000..944232a --- /dev/null +++ b/gas/testsuite/gas/iq2000/q10test2.d @@ -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 index 0000000..72a8311 --- /dev/null +++ b/gas/testsuite/gas/iq2000/q10test2.s @@ -0,0 +1,312 @@ +.global _start +_start: + ADD %31,%1,%1 + NOP + ADDI %1,%1,0 + NOP + ADDIU %1,%1,0 + NOP + ADDU %31,%1,%1 + NOP + ADO16 %31,%1,%1 + NOP + AND %31,%1,%1 + NOP + ANDI %1,%1,0 + NOP + ANDOI %1,%1,0 + NOP + ANDOUI %1,%1,0 + NOP + LUI %1,0 + NOP + MRGB %31,%1,%1,0 + NOP + NOR %31,%1,%1 + NOP + OR %31,%1,%1 + NOP + ORI %1,%1,0 + NOP + ORUI %1,%1,0 + NOP + SLL %31,%1,0 + NOP + SLLV %31,%1,%1 + NOP + SLT %31,%1,%1 + NOP + SLTI %1,%1,0 + NOP + SLTIU %1,%1,0 + NOP + SLTU %31,%1,%1 + NOP + SRA %31,%1,0 + NOP + SRAV %31,%1,%1 + NOP + SRL %31,%1,0 + NOP + SRLV %31,%1,%1 + NOP + SUB %31,%1,%1 + NOP + SUBU %31,%1,%1 + NOP + XOR %31,%1,%1 + NOP + XORI %1,%1,0 + NOP + NOP + NOP + SRMV %31,%1,%1,0 + NOP + SLMV %31,%1,%1,0 + NOP + RAM %31,%1,0,0,0 + NOP + BBI %1(0),_start + NOP + BBIN %1(0),_start + NOP + BBV %1,%1,_start + NOP + BBVN %1,%1,_start + NOP + BBIL %1(0),_start + NOP + BBINL %1(0),_start + NOP + BBVL %1,%1,_start + NOP + BBVNL %1,%1,_start + NOP + BEQ %1,%1,_start + NOP + BEQL %1,%1,_start + NOP + BGEZ %1,_start + NOP + BGTZAL %1,_start + NOP + BGEZAL %1,_start + NOP + BGTZALL %1,_start + NOP + BGEZALL %1,_start + NOP + BGEZL %1,_start + NOP + BGTZL %1,_start + NOP + BGTZ %1,_start + NOP + BLEZ %1,_start + NOP + BLEZAL %1,_start + NOP + BLTZ %1,_start + NOP + BLTZAL %1,_start + NOP + BLEZL %1,_start + NOP + BLTZL %1,_start + NOP + BLEZALL %1,_start + NOP + BLTZALL %1,_start + NOP + BMB %1,%1,_start + NOP + BMBL %1,%1,_start + NOP + BMB0 %1,%1,_start + NOP + BMB1 %1,%1,_start + NOP + BMB2 %1,%1,_start + NOP + BMB3 %1,%1,_start + NOP + BNE %1,%1,_start + NOP + BNEL %1,%1,_start + NOP + J 0 + NOP + JAL %1,0 + NOP + JALR %31,%1 + NOP + JR %1 + NOP + BREAK + NOP + CTC %1,%1 + NOP + CFC %31,%1 + NOP + LW %1,0(%1) + NOP + LH %1,0(%1) + NOP + LB %1,0(%1) + NOP + LHU %1,0(%1) + NOP + LBU %1,0(%1) + NOP + SB %1,0(%1) + NOP + SH %1,0(%1) + NOP + SW %1,0(%1) + NOP + RBA %1,%1,%31 + NOP + RBAR %1,%1,%31 + NOP + RBAL %1,%1,%31 + NOP + WBA %1,%1,%31 + NOP + WBAC %1,%1,%31 + NOP + WBAU %1,%1,%31 + NOP + RBI %1,%1,%31,0 + NOP + RBIR %1,%1,%31,0 + NOP + RBIL %1,%1,%31,0 + NOP + WBI %1,%1,%31,0 + NOP + WBIC %1,%1,%31,0 + NOP + WBIU %1,%1,%31,0 + NOP + PKRLA %1,%1,%31 + NOP + PKRLAC %1,%1,%31 + NOP + PKRLAH %1,%1,%31 + NOP + PKRLAU %1,%1,%31 + NOP + PKRLI %1,%1,%31,0 + NOP + PKRLIC %1,%1,%31,0 + NOP + PKRLIH %1,%1,%31,0 + NOP + PKRLIU %1,%1,%31,0 + NOP + LOCK %1,%31 + NOP + UNLK %1,%31 + NOP + SWWR %1,%1,%31 + NOP + SWWRU %1,%1,%31 + NOP + SWRD %31,%1 + NOP + SWRDL %31,%1 + NOP + DWRD %30,%2 + NOP + DWRDL %30,%2 + NOP + CAM36 %31,%1,2,0 + NOP + CAM72 %31,%1,2,0 + NOP + CAM144 %31,%1,2,0 + NOP + CAM288 %31,%1,2,0 + NOP + CM32AND %31,%1,%1 + NOP + CM32ANDN %31,%1,%1 + NOP + CM32OR %31,%1,%1 + NOP + CM32RA %31,%1,%1 + NOP + CM32RD %31,%1 + NOP + CM32RI %31,%1 + NOP + CM32RS %31,%1,%1 + NOP + CM32SA %31,%1,%1 + NOP + CM32SD %31,%1 + NOP + CM32SI %31,%1 + NOP + CM32SS %31,%1,%1 + NOP + CM32XOR %31,%1,%1 + NOP + CM64CLR %30,%2 + NOP + CM64RA %30,%2,%2 + NOP + CM64RD %30,%2 + NOP + CM64RI %30,%2 + NOP + CM64RIA2 %30,%2,%2 + NOP + CM64RS %30,%2,%2 + NOP + CM64SA %30,%2,%2 + NOP + CM64SD %30,%2 + NOP + CM64SI %30,%2 + NOP + CM64SIA2 %30,%2,%2 + NOP + CM64SS %30,%2,%2 + NOP + CM128RIA2 %30,%2,%2 + NOP + CM128RIA3 %30,%2,%2,2 + NOP + CM128RIA4 %30,%2,%2,2 + NOP + CM128SIA2 %30,%2,%2 + NOP + CM128SIA3 %30,%2,%2,2 + NOP + CM128SIA4 %31,%1,%1,2 + NOP + CM128VSA %31,%1,%1 + NOP + CRC32 %31,%1,%1 + NOP + CRC32B %31,%1,%1 + NOP + CHKHDR %31,%1 + NOP + AVAIL %31 + NOP + FREE %31,%1 + NOP + TSTOD %31,%1 + NOP + CMPHDR %31 + NOP + MCID %31,%1 + NOP + DBA %31 + NOP + DBD %1,%31 + NOP + DPWT %1,%31 + NOP diff --git a/gas/testsuite/gas/iq2000/q10test3.d b/gas/testsuite/gas/iq2000/q10test3.d new file mode 100644 index 0000000..a32acdd --- /dev/null +++ b/gas/testsuite/gas/iq2000/q10test3.d @@ -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 index 0000000..c5f0f32 --- /dev/null +++ b/gas/testsuite/gas/iq2000/q10test3.s @@ -0,0 +1,306 @@ +.global _start +_start: + ADD %1,%1,%31 + NOP + ADDI %31,%1,0 + NOP + ADDIU %31,%1,0 + NOP + ADDU %1,%1,%31 + NOP + ADO16 %1,%1,%31 + NOP + AND %1,%1,%31 + NOP + ANDI %31,%1,0 + NOP + ANDOI %31,%1,0 + NOP + ANDOUI %31,%1,0 + NOP + LUI %31,0 + NOP + MRGB %1,%1,%31,0 + NOP + NOR %1,%1,%31 + NOP + OR %1,%1,%31 + NOP + ORI %31,%1,0 + NOP + ORUI %31,%1,0 + NOP + SLL %1,%31,0 + NOP + SLLV %1,%31,%1 + NOP + SLT %1,%1,%31 + NOP + SLTI %31,%1,0 + NOP + SLTIU %31,%1,0 + NOP + SLTU %1,%1,%31 + NOP + SRA %1,%31,0 + NOP + SRAV %1,%31,%1 + NOP + SRL %1,%31,0 + NOP + SRLV %1,%31,%1 + NOP + SUB %1,%1,%31 + NOP + SUBU %1,%1,%31 + NOP + XOR %1,%1,%31 + NOP + XORI %31,%1,0 + NOP + NOP + NOP + SRMV %1,%1,%31,0 + NOP + SLMV %1,%1,%31,0 + NOP + RAM %1,%31,0,0,0 + NOP + BBI %1(0),_start + NOP + BBIN %1(0),_start + NOP + BBV %1,%31,_start + NOP + BBVN %1,%31,_start + NOP + BBIL %1(0),_start + NOP + BBINL %1(0),_start + NOP + BBVL %1,%31,_start + NOP + BBVNL %1,%31,_start + NOP + BEQ %1,%31,_start + NOP + BEQL %1,%31,_start + NOP + BGEZ %1,_start + NOP + BGTZAL %1,_start + NOP + BGEZAL %1,_start + NOP + BGTZALL %1,_start + NOP + BGEZALL %1,_start + NOP + BGEZL %1,_start + NOP + BGTZL %1,_start + NOP + BGTZ %1,_start + NOP + BLEZ %1,_start + NOP + BLEZAL %1,_start + NOP + BLTZ %1,_start + NOP + BLTZAL %1,_start + NOP + BLEZL %1,_start + NOP + BLTZL %1,_start + NOP + BLEZALL %1,_start + NOP + BLTZALL %1,_start + NOP + BMB %1,%31,_start + NOP + BMBL %1,%31,_start + NOP + BMB0 %1,%31,_start + NOP + BMB1 %1,%31,_start + NOP + BMB2 %1,%31,_start + NOP + BMB3 %1,%31,_start + NOP + BNE %1,%31,_start + NOP + BNEL %1,%31,_start + NOP + J 0 + NOP + JAL %1,0 + NOP + JALR %1,%1 + NOP + JR %1 + NOP + BREAK + NOP + CTC %1,%31 + NOP + CFC %1,%31 + NOP + LW %31,0(%1) + NOP + LH %31,0(%1) + NOP + LB %31,0(%1) + NOP + LHU %31,0(%1) + NOP + LBU %31,0(%1) + NOP + SB %31,0(%1) + NOP + SH %31,0(%1) + NOP + SW %31,0(%1) + NOP + RBA %1,%31,%1 + NOP + RBAR %1,%31,%1 + NOP + RBAL %1,%31,%1 + NOP + WBA %1,%31,%1 + NOP + WBAC %1,%31,%1 + NOP + WBAU %1,%31,%1 + NOP + RBI %1,%31,%1,0 + NOP + RBIR %1,%31,%1,0 + NOP + RBIL %1,%31,%1,0 + NOP + WBI %1,%31,%1,0 + NOP + WBIC %1,%31,%1,0 + NOP + WBIU %1,%31,%1,0 + NOP + PKRLA %1,%31,%1 + NOP + PKRLAH %1,%31,%1 + NOP + PKRLAU %1,%31,%1 + NOP + PKRLI %1,%31,%1,0 + NOP + PKRLIH %1,%31,%1,0 + NOP + PKRLIU %1,%31,%1,0 + NOP + LOCK %31,%1 + NOP + UNLK %31,%1 + NOP + SWWR %1,%31,%1 + NOP + SWWRU %1,%31,%1 + NOP + SWRD %1,%31 + NOP + SWRDL %1,%31 + NOP + DWRD %2,%30 + NOP + DWRDL %2,%30 + NOP + CAM36 %1,%31,3,0 + NOP + CAM72 %1,%31,3,0 + NOP + CAM144 %1,%31,3,0 + NOP + CAM288 %1,%31,3,0 + NOP + CM32AND %1,%1,%31 + NOP + CM32ANDN %1,%1,%31 + NOP + CM32OR %1,%1,%31 + NOP + CM32RA %1,%1,%31 + NOP + CM32RD %1,%31 + NOP + CM32RI %1,%31 + NOP + CM32RS %1,%1,%31 + NOP + CM32SA %1,%1,%31 + NOP + CM32SD %1,%31 + NOP + CM32SI %1,%31 + NOP + CM32SS %1,%1,%31 + NOP + CM32XOR %1,%1,%31 + NOP + CM64CLR %2,%30 + NOP + CM64RA %2,%2,%30 + NOP + CM64RD %2,%30 + NOP + CM64RI %2,%30 + NOP + CM64RIA2 %2,%2,%30 + NOP + CM64RS %2,%2,%30 + NOP + CM64SA %2,%2,%30 + NOP + CM64SD %2,%30 + NOP + CM64SI %2,%30 + NOP + CM64SIA2 %2,%2,%30 + NOP + CM64SS %2,%2,%30 + NOP + CM128RIA2 %2,%2,%30 + NOP + CM128RIA3 %2,%2,%30,3 + NOP + CM128RIA4 %2,%2,%30,3 + NOP + CM128SIA2 %2,%2,%30 + NOP + CM128SIA3 %2,%2,%30,3 + NOP + CM128SIA4 %1,%1,%31,3 + NOP + CM128VSA %1,%1,%31 + NOP + CRC32 %1,%1,%31 + NOP + CRC32B %1,%1,%31 + NOP + CHKHDR %1,%31 + NOP + AVAIL %1 + NOP + FREE %31,%1 + NOP + CMPHDR %1 + NOP + MCID %1,%31 + NOP + DBA %31 + NOP + DBD %31,%1 + NOP + DPWT %31,%1 + NOP diff --git a/gas/testsuite/gas/iq2000/q10test4.d b/gas/testsuite/gas/iq2000/q10test4.d new file mode 100644 index 0000000..3b3a77f --- /dev/null +++ b/gas/testsuite/gas/iq2000/q10test4.d @@ -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 index 0000000..3ef2ef9 --- /dev/null +++ b/gas/testsuite/gas/iq2000/q10test4.s @@ -0,0 +1,308 @@ +.global _start +_start: + ADD %1,%30,%31 + NOP + ADDI %31,%30,0 + NOP + ADDIU %31,%30,0 + NOP + ADDU %1,%30,%31 + NOP + ADO16 %1,%30,%31 + NOP + AND %1,%30,%31 + NOP + ANDI %31,%30,0 + NOP + ANDOI %31,%30,0 + NOP + ANDOUI %31,%30,0 + NOP + LUI %31,0 + NOP + MRGB %1,%30,%31,0 + NOP + NOR %1,%30,%31 + NOP + OR %1,%30,%31 + NOP + ORI %31,%30,0 + NOP + ORUI %31,%30,0 + NOP + SLL %1,%31,0 + NOP + SLLV %1,%31,%30 + NOP + SLT %1,%30,%31 + NOP + SLTI %31,%30,0 + NOP + SLTIU %31,%30,0 + NOP + SLTU %1,%30,%31 + NOP + SRA %1,%31,0 + NOP + SRAV %1,%31,%30 + NOP + SRL %1,%31,0 + NOP + SRLV %1,%31,%30 + NOP + SUB %1,%30,%31 + NOP + SUBU %1,%30,%31 + NOP + XOR %1,%30,%31 + NOP + XORI %31,%30,0 + NOP + NOP + NOP + SRMV %1,%30,%31,0 + NOP + SLMV %1,%30,%31,0 + NOP + RAM %1,%31,0,0,0 + NOP + BBI %30(0),_start + NOP + BBIN %30(0),_start + NOP + BBV %30,%31,_start + NOP + BBVN %30,%31,_start + NOP + BBIL %30(0),_start + NOP + BBINL %30(0),_start + NOP + BBVL %30,%31,_start + NOP + BBVNL %30,%31,_start + NOP + BEQ %30,%31,_start + NOP + BEQL %30,%31,_start + NOP + BGEZ %30,_start + NOP + BGTZAL %30,_start + NOP + BGEZAL %30,_start + NOP + BGTZALL %30,_start + NOP + BGEZALL %30,_start + NOP + BGEZL %30,_start + NOP + BGTZL %30,_start + NOP + BGTZ %30,_start + NOP + BLEZ %30,_start + NOP + BLEZAL %30,_start + NOP + BLTZ %30,_start + NOP + BLTZAL %30,_start + NOP + BLEZL %30,_start + NOP + BLTZL %30,_start + NOP + BLEZALL %30,_start + NOP + BLTZALL %30,_start + NOP + BMB %30,%31,_start + NOP + BMBL %30,%31,_start + NOP + BMB0 %30,%31,_start + NOP + BMB1 %30,%31,_start + NOP + BMB2 %30,%31,_start + NOP + BMB3 %30,%31,_start + NOP + BNE %30,%31,_start + NOP + BNEL %30,%31,_start + NOP + J 0 + NOP + JAL %30,0 + NOP + JALR %1,%30 + NOP + JR %30 + NOP + BREAK + NOP + CTC %30,%31 + NOP + CFC %1,%31 + NOP + LW %31,0(%30) + NOP + LH %31,0(%30) + NOP + LB %31,0(%30) + NOP + LHU %31,0(%30) + NOP + LBU %31,0(%30) + NOP + SB %31,0(%30) + NOP + SH %31,0(%30) + NOP + SW %31,0(%30) + NOP + RBA %30,%31,%1 + NOP + RBAR %30,%31,%1 + NOP + RBAL %30,%31,%1 + NOP + WBA %30,%31,%1 + NOP + WBAC %30,%31,%1 + NOP + WBAU %30,%31,%1 + NOP + RBI %30,%31,%1,0 + NOP + RBIR %30,%31,%1,0 + NOP + RBIL %30,%31,%1,0 + NOP + WBI %30,%31,%1,0 + NOP + WBIC %30,%31,%1,0 + NOP + WBIU %30,%31,%1,0 + NOP + PKRLA %30,%31,%1 + NOP + PKRLAH %30,%31,%1 + NOP + PKRLAU %30,%31,%1 + NOP + PKRLI %30,%31,%1,0 + NOP + PKRLIH %30,%31,%1,0 + NOP + PKRLIU %30,%31,%1,0 + NOP + LOCK %31,%1 + NOP + UNLK %31,%1 + NOP + SWWR %30,%31,%1 + NOP + SWWRU %30,%31,%1 + NOP + SWRD %1,%31 + NOP + SWRDL %1,%31 + NOP + DWRD %2,%30 + NOP + DWRDL %2,%30 + NOP + CAM36 %1,%30,4,0 + NOP + CAM72 %1,%30,4,0 + NOP + CAM144 %1,%30,4,0 + NOP + CAM288 %1,%30,4,0 + NOP + CM32AND %1,%30,%31 + NOP + CM32ANDN %1,%30,%31 + NOP + CM32OR %1,%30,%31 + NOP + CM32RA %1,%30,%31 + NOP + CM32RD %1,%31 + NOP + CM32RI %1,%31 + NOP + CM32RS %1,%30,%31 + NOP + CM32SA %1,%30,%31 + NOP + CM32SD %1,%31 + NOP + CM32SI %1,%31 + NOP + CM32SS %1,%30,%31 + NOP + CM32XOR %1,%30,%31 + NOP + CM64CLR %2,%30 + NOP + CM64RA %2,%30,%30 + NOP + CM64RD %2,%30 + NOP + CM64RI %2,%30 + NOP + CM64RIA2 %2,%30,%30 + NOP + CM64RS %2,%30,%30 + NOP + CM64SA %2,%30,%30 + NOP + CM64SD %2,%30 + NOP + CM64SI %2,%30 + NOP + CM64SIA2 %2,%30,%30 + NOP + CM64SS %2,%30,%30 + NOP + CM128RIA2 %2,%30,%30 + NOP + CM128RIA3 %2,%30,%30,3 + NOP + CM128RIA4 %2,%30,%30,4 + NOP + CM128SIA2 %2,%30,%30 + NOP + CM128SIA3 %2,%30,%30,3 + NOP + CM128SIA4 %1,%30,%31,4 + NOP + CM128VSA %1,%30,%31 + NOP + CRC32 %1,%30,%31 + NOP + CRC32B %1,%30,%31 + NOP + CHKHDR %1,%31 + NOP + AVAIL %1 + NOP + FREE %31,%1 + NOP + TSTOD %31,%1 + NOP + CMPHDR %1 + NOP + MCID %1,%31 + NOP + DBA %30 + NOP + DBD %31,%1 + NOP + DPWT %31,%1 + NOP diff --git a/gas/testsuite/gas/iq2000/q10test5.d b/gas/testsuite/gas/iq2000/q10test5.d new file mode 100644 index 0000000..4485a97 --- /dev/null +++ b/gas/testsuite/gas/iq2000/q10test5.d @@ -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 index 0000000..ab80fac --- /dev/null +++ b/gas/testsuite/gas/iq2000/q10test5.s @@ -0,0 +1,308 @@ +.global _start +_start: + ADD %30,%30,%31 + NOP + ADDI %31,%30,0 + NOP + ADDIU %31,%30,0 + NOP + ADDU %30,%30,%31 + NOP + ADO16 %30,%30,%31 + NOP + AND %30,%30,%31 + NOP + ANDI %31,%30,0 + NOP + ANDOI %31,%30,0 + NOP + ANDOUI %31,%30,0 + NOP + LUI %31,0 + NOP + MRGB %30,%30,%31,0 + NOP + NOR %30,%30,%31 + NOP + OR %30,%30,%31 + NOP + ORI %31,%30,0 + NOP + ORUI %31,%30,0 + NOP + SLL %30,%31,0 + NOP + SLLV %30,%31,%30 + NOP + SLT %30,%30,%31 + NOP + SLTI %31,%30,0 + NOP + SLTIU %31,%30,0 + NOP + SLTU %30,%30,%31 + NOP + SRA %30,%31,0 + NOP + SRAV %30,%31,%30 + NOP + SRL %30,%31,0 + NOP + SRLV %30,%31,%30 + NOP + SUB %30,%30,%31 + NOP + SUBU %30,%30,%31 + NOP + XOR %30,%30,%31 + NOP + XORI %31,%30,0 + NOP + NOP + NOP + SRMV %30,%30,%31,0 + NOP + SLMV %30,%30,%31,0 + NOP + RAM %30,%31,0,0,0 + NOP + BBI %30(0),_start + NOP + BBIN %30(0),_start + NOP + BBV %30,%31,_start + NOP + BBVN %30,%31,_start + NOP + BBIL %30(0),_start + NOP + BBINL %30(0),_start + NOP + BBVL %30,%31,_start + NOP + BBVNL %30,%31,_start + NOP + BEQ %30,%31,_start + NOP + BEQL %30,%31,_start + NOP + BGEZ %30,_start + NOP + BGTZAL %30,_start + NOP + BGEZAL %30,_start + NOP + BGTZALL %30,_start + NOP + BGEZALL %30,_start + NOP + BGEZL %30,_start + NOP + BGTZL %30,_start + NOP + BGTZ %30,_start + NOP + BLEZ %30,_start + NOP + BLEZAL %30,_start + NOP + BLTZ %30,_start + NOP + BLTZAL %30,_start + NOP + BLEZL %30,_start + NOP + BLTZL %30,_start + NOP + BLEZALL %30,_start + NOP + BLTZALL %30,_start + NOP + BMB %30,%31,_start + NOP + BMBL %30,%31,_start + NOP + BMB0 %30,%31,_start + NOP + BMB1 %30,%31,_start + NOP + BMB2 %30,%31,_start + NOP + BMB3 %30,%31,_start + NOP + BNE %30,%31,_start + NOP + BNEL %30,%31,_start + NOP + J 0 + NOP + JAL %30,0 + NOP + JALR %30,%30 + NOP + JR %30 + NOP + BREAK + NOP + CTC %30,%31 + NOP + CFC %30,%31 + NOP + LW %31,0(%30) + NOP + LH %31,0(%30) + NOP + LB %31,0(%30) + NOP + LHU %31,0(%30) + NOP + LBU %31,0(%30) + NOP + SB %31,0(%30) + NOP + SH %31,0(%30) + NOP + SW %31,0(%30) + NOP + RBA %30,%31,%30 + NOP + RBAR %30,%31,%30 + NOP + RBAL %30,%31,%30 + NOP + WBA %30,%31,%30 + NOP + WBAC %30,%31,%30 + NOP + WBAU %30,%31,%30 + NOP + RBI %30,%31,%30,0 + NOP + RBIR %30,%31,%30,0 + NOP + RBIL %30,%31,%30,0 + NOP + WBI %30,%31,%30,0 + NOP + WBIC %30,%31,%30,0 + NOP + WBIU %30,%31,%30,0 + NOP + PKRLA %30,%31,%30 + NOP + PKRLAH %30,%31,%30 + NOP + PKRLAU %30,%31,%30 + NOP + PKRLI %30,%31,%30,0 + NOP + PKRLIH %30,%31,%30,0 + NOP + PKRLIU %30,%31,%30,0 + NOP + LOCK %31,%30 + NOP + UNLK %31,%30 + NOP + SWWR %30,%31,%30 + NOP + SWWRU %30,%31,%30 + NOP + SWRD %30,%31 + NOP + SWRDL %30,%31 + NOP + DWRD %30,%30 + NOP + DWRDL %30,%30 + NOP + CAM36 %30,%31,5,0 + NOP + CAM72 %30,%31,5,0 + NOP + CAM144 %30,%31,5,0 + NOP + CAM288 %30,%31,5,0 + NOP + CM32AND %30,%30,%31 + NOP + CM32ANDN %30,%30,%31 + NOP + CM32OR %30,%30,%31 + NOP + CM32RA %30,%30,%31 + NOP + CM32RD %30,%31 + NOP + CM32RI %30,%31 + NOP + CM32RS %30,%30,%31 + NOP + CM32SA %30,%30,%31 + NOP + CM32SD %30,%31 + NOP + CM32SI %30,%31 + NOP + CM32SS %30,%30,%31 + NOP + CM32XOR %30,%30,%31 + NOP + CM64CLR %30,%30 + NOP + CM64RA %30,%30,%30 + NOP + CM64RD %30,%30 + NOP + CM64RI %30,%30 + NOP + CM64RIA2 %30,%30,%30 + NOP + CM64RS %30,%30,%30 + NOP + CM64SA %30,%30,%30 + NOP + CM64SD %30,%30 + NOP + CM64SI %30,%30 + NOP + CM64SIA2 %30,%30,%30 + NOP + CM64SS %30,%30,%30 + NOP + CM128RIA2 %30,%30,%30 + NOP + CM128RIA3 %30,%30,%30,3 + NOP + CM128RIA4 %30,%30,%30,5 + NOP + CM128SIA2 %30,%30,%30 + NOP + CM128SIA3 %30,%30,%30,3 + NOP + CM128SIA4 %30,%30,%31,5 + NOP + CM128VSA %30,%30,%31 + NOP + CRC32 %30,%30,%31 + NOP + CRC32B %30,%30,%31 + NOP + CHKHDR %30,%31 + NOP + AVAIL %30 + NOP + FREE %31,%30 + NOP + TSTOD %31,%30 + NOP + CMPHDR %30 + NOP + MCID %30,%31 + NOP + DBA %30 + NOP + DBD %31,%30 + NOP + DPWT %31,%30 + NOP diff --git a/gas/testsuite/gas/iq2000/q10test6.d b/gas/testsuite/gas/iq2000/q10test6.d new file mode 100644 index 0000000..c7e0adf --- /dev/null +++ b/gas/testsuite/gas/iq2000/q10test6.d @@ -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 index 0000000..c6f58ac --- /dev/null +++ b/gas/testsuite/gas/iq2000/q10test6.s @@ -0,0 +1,308 @@ +.global _start +_start: + ADD %30,%30,%30 + NOP + ADDI %30,%30,0 + NOP + ADDIU %30,%30,0 + NOP + ADDU %30,%30,%30 + NOP + ADO16 %30,%30,%30 + NOP + AND %30,%30,%30 + NOP + ANDI %30,%30,0 + NOP + ANDOI %30,%30,0 + NOP + ANDOUI %30,%30,0 + NOP + LUI %30,0 + NOP + MRGB %30,%30,%30,0 + NOP + NOR %30,%30,%30 + NOP + OR %30,%30,%30 + NOP + ORI %30,%30,0 + NOP + ORUI %30,%30,0 + NOP + SLL %30,%30,0 + NOP + SLLV %30,%30,%30 + NOP + SLT %30,%30,%30 + NOP + SLTI %30,%30,0 + NOP + SLTIU %30,%30,0 + NOP + SLTU %30,%30,%30 + NOP + SRA %30,%30,0 + NOP + SRAV %30,%30,%30 + NOP + SRL %30,%30,0 + NOP + SRLV %30,%30,%30 + NOP + SUB %30,%30,%30 + NOP + SUBU %30,%30,%30 + NOP + XOR %30,%30,%30 + NOP + XORI %30,%30,0 + NOP + NOP + NOP + SRMV %30,%30,%30,0 + NOP + SLMV %30,%30,%30,0 + NOP + RAM %30,%30,0,0,0 + NOP + BBI %30(0),_start + NOP + BBIN %30(0),_start + NOP + BBV %30,%30,_start + NOP + BBVN %30,%30,_start + NOP + BBIL %30(0),_start + NOP + BBINL %30(0),_start + NOP + BBVL %30,%30,_start + NOP + BBVNL %30,%30,_start + NOP + BEQ %30,%30,_start + NOP + BEQL %30,%30,_start + NOP + BGEZ %30,_start + NOP + BGTZAL %30,_start + NOP + BGEZAL %30,_start + NOP + BGTZALL %30,_start + NOP + BGEZALL %30,_start + NOP + BGEZL %30,_start + NOP + BGTZL %30,_start + NOP + BGTZ %30,_start + NOP + BLEZ %30,_start + NOP + BLEZAL %30,_start + NOP + BLTZ %30,_start + NOP + BLTZAL %30,_start + NOP + BLEZL %30,_start + NOP + BLTZL %30,_start + NOP + BLEZALL %30,_start + NOP + BLTZALL %30,_start + NOP + BMB %30,%30,_start + NOP + BMBL %30,%30,_start + NOP + BMB0 %30,%30,_start + NOP + BMB1 %30,%30,_start + NOP + BMB2 %30,%30,_start + NOP + BMB3 %30,%30,_start + NOP + BNE %30,%30,_start + NOP + BNEL %30,%30,_start + NOP + J 0 + NOP + JAL %30,0 + NOP + JALR %30,%30 + NOP + JR %30 + NOP + BREAK + NOP + CTC %30,%30 + NOP + CFC %30,%30 + NOP + LW %30,0(%30) + NOP + LH %30,0(%30) + NOP + LB %30,0(%30) + NOP + LHU %30,0(%30) + NOP + LBU %30,0(%30) + NOP + SB %30,0(%30) + NOP + SH %30,0(%30) + NOP + SW %30,0(%30) + NOP + RBA %30,%30,%30 + NOP + RBAR %30,%30,%30 + NOP + RBAL %30,%30,%30 + NOP + WBA %30,%30,%30 + NOP + WBAC %30,%30,%30 + NOP + WBAU %30,%30,%30 + NOP + RBI %30,%30,%30,0 + NOP + RBIR %30,%30,%30,0 + NOP + RBIL %30,%30,%30,0 + NOP + WBI %30,%30,%30,0 + NOP + WBIC %30,%30,%30,0 + NOP + WBIU %30,%30,%30,0 + NOP + PKRLA %30,%30,%30 + NOP + PKRLAH %30,%30,%30 + NOP + PKRLAU %30,%30,%30 + NOP + PKRLI %30,%30,%30,0 + NOP + PKRLIH %30,%30,%30,0 + NOP + PKRLIU %30,%30,%30,0 + NOP + LOCK %30,%30 + NOP + UNLK %30,%30 + NOP + SWWR %30,%30,%30 + NOP + SWWRU %30,%30,%30 + NOP + SWRD %30,%30 + NOP + SWRDL %30,%30 + NOP + DWRD %30,%30 + NOP + DWRDL %30,%30 + NOP + CAM36 %30,%30,6,0 + NOP + CAM72 %30,%30,6,0 + NOP + CAM144 %30,%30,6,0 + NOP + CAM288 %30,%30,6,0 + NOP + CM32AND %30,%30,%30 + NOP + CM32ANDN %30,%30,%30 + NOP + CM32OR %30,%30,%30 + NOP + CM32RA %30,%30,%30 + NOP + CM32RD %30,%30 + NOP + CM32RI %30,%30 + NOP + CM32RS %30,%30,%30 + NOP + CM32SA %30,%30,%30 + NOP + CM32SD %30,%30 + NOP + CM32SI %30,%30 + NOP + CM32SS %30,%30,%30 + NOP + CM32XOR %30,%30,%30 + NOP + CM64CLR %30,%30 + NOP + CM64RA %30,%30,%30 + NOP + CM64RD %30,%30 + NOP + CM64RI %30,%30 + NOP + CM64RIA2 %30,%30,%30 + NOP + CM64RS %30,%30,%30 + NOP + CM64SA %30,%30,%30 + NOP + CM64SD %30,%30 + NOP + CM64SI %30,%30 + NOP + CM64SIA2 %30,%30,%30 + NOP + CM64SS %30,%30,%30 + NOP + CM128RIA2 %30,%30,%30 + NOP + CM128RIA3 %30,%30,%30,3 + NOP + CM128RIA4 %30,%30,%30,6 + NOP + CM128SIA2 %30,%30,%30 + NOP + CM128SIA3 %30,%30,%30,3 + NOP + CM128SIA4 %30,%30,%30,6 + NOP + CM128VSA %30,%30,%30 + NOP + CRC32 %30,%30,%30 + NOP + CRC32B %30,%30,%30 + NOP + CHKHDR %30,%30 + NOP + AVAIL %30 + NOP + FREE %30,%30 + NOP + TSTOD %30,%30 + NOP + CMPHDR %30 + NOP + MCID %30,%30 + NOP + DBA %30 + NOP + DBD %30,%30 + NOP + DPWT %30,%30 + NOP diff --git a/gas/testsuite/gas/iq2000/q10test7.d b/gas/testsuite/gas/iq2000/q10test7.d new file mode 100644 index 0000000..2bf380c --- /dev/null +++ b/gas/testsuite/gas/iq2000/q10test7.d @@ -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 index 0000000..12b1c99 --- /dev/null +++ b/gas/testsuite/gas/iq2000/q10test7.s @@ -0,0 +1,294 @@ +.global _start +_start: + ADD %1,%1,%1 + NOP + ADDI %1,%1,8 + NOP + ADDIU %1,%1,8 + NOP + ADDU %1,%1,%1 + NOP + ADO16 %1,%1,%1 + NOP + AND %1,%1,%1 + NOP + ANDI %1,%1,8 + NOP + ANDOI %1,%1,8 + NOP + ANDOUI %1,%1,8 + NOP + LUI %1,8 + NOP + MRGB %1,%1,%1,0 + NOP + NOR %1,%1,%1 + NOP + OR %1,%1,%1 + NOP + ORI %1,%1,8 + NOP + ORUI %1,%1,8 + NOP + SLL %1,%1,0 + NOP + SLLV %1,%1,%1 + NOP + SLT %1,%1,%1 + NOP + SLTI %1,%1,8 + NOP + SLTIU %1,%1,8 + NOP + SLTU %1,%1,%1 + NOP + SRA %1,%1,0 + NOP + SRAV %1,%1,%1 + NOP + SRL %1,%1,0 + NOP + SRLV %1,%1,%1 + NOP + SUB %1,%1,%1 + NOP + SUBU %1,%1,%1 + NOP + XOR %1,%1,%1 + NOP + XORI %1,%1,8 + NOP + NOP + NOP + SRMV %1,%1,%1,0 + NOP + SLMV %1,%1,%1,0 + NOP + RAM %1,%1,0,0,0 + NOP + BBI %1(1),8 + NOP + BBIN %1(1),8 + NOP + BBV %1,%1,8 + NOP + BBVN %1,%1,8 + NOP + BBIL %1(1),8 + NOP + BBINL %1(1),8 + NOP + BBVL %1,%1,8 + NOP + BBVNL %1,%1,8 + NOP + BEQ %1,%1,8 + NOP + BEQL %1,%1,8 + NOP + BGEZ %1,8 + NOP + BGTZAL %1,8 + NOP + BGEZAL %1,8 + NOP + BGTZALL %1,8 + NOP + BGEZALL %1,8 + NOP + BGEZL %1,8 + NOP + BGTZL %1,8 + NOP + BGTZ %1,8 + NOP + BLEZ %1,8 + NOP + BLEZAL %1,8 + NOP + BLTZ %1,8 + NOP + BLTZAL %1,8 + NOP + BLEZL %1,8 + NOP + BLTZL %1,8 + NOP + BLEZALL %1,8 + NOP + BLTZALL %1,8 + NOP + BMB %1,%1,8 + NOP + BMBL %1,%1,8 + NOP + BMB0 %1,%1,8 + NOP + BMB1 %1,%1,8 + NOP + BMB2 %1,%1,8 + NOP + BMB3 %1,%1,8 + NOP + BNE %1,%1,8 + NOP + BNEL %1,%1,8 + NOP + J 8 + NOP + JAL %1,8 + NOP + JALR %1,%1 + NOP + JR %1 + NOP + BREAK + NOP + CTC %1,%1 + NOP + CFC %1,%1 + NOP + LW %1,8(%1) + NOP + LH %1,8(%1) + NOP + LB %1,8(%1) + NOP + LHU %1,8(%1) + NOP + LBU %1,8(%1) + NOP + SB %1,8(%1) + NOP + SH %1,8(%1) + NOP + SW %1,8(%1) + NOP + RBA %1,%1,%1 + NOP + RBAR %1,%1,%1 + NOP + RBAL %1,%1,%1 + NOP + WBA %1,%1,%1 + NOP + WBAC %1,%1,%1 + NOP + WBAU %1,%1,%1 + NOP + RBI %1,%1,%1,0 + NOP + RBIR %1,%1,%1,0 + NOP + RBIL %1,%1,%1,0 + NOP + WBI %1,%1,%1,0 + NOP + WBIC %1,%1,%1,0 + NOP + WBIU %1,%1,%1,0 + NOP + PKRLA %1,%1,%1 + NOP + PKRLAH %1,%1,%1 + NOP + PKRLAU %1,%1,%1 + NOP + PKRLI %1,%1,%1,0 + NOP + PKRLIH %1,%1,%1,0 + NOP + PKRLIU %1,%1,%1,0 + NOP + LOCK %1,%1 + NOP + UNLK %1,%1 + NOP + SWWR %1,%1,%1 + NOP + SWWRU %1,%1,%1 + NOP + SWRD %1,%1 + NOP + SWRDL %1,%1 + NOP + DWRD %2,%2 + NOP + DWRDL %2,%2 + NOP + CM32AND %1,%1,%1 + NOP + CM32ANDN %1,%1,%1 + NOP + CM32OR %1,%1,%1 + NOP + CM32RA %1,%1,%1 + NOP + CM32RD %1,%1 + NOP + CM32RI %1,%1 + NOP + CM32RS %1,%1,%1 + NOP + CM32SA %1,%1,%1 + NOP + CM32SD %1,%1 + NOP + CM32SI %1,%1 + NOP + CM32SS %1,%1,%1 + NOP + CM32XOR %1,%1,%1 + NOP + CM64CLR %2,%2 + NOP + CM64RA %2,%2,%2 + NOP + CM64RD %2,%2 + NOP + CM64RI %2,%2 + NOP + CM64RIA2 %2,%2,%2 + NOP + CM64RS %2,%2,%2 + NOP + CM64SA %2,%2,%2 + NOP + CM64SD %2,%2 + NOP + CM64SI %2,%2 + NOP + CM64SIA2 %2,%2,%2 + NOP + CM64SS %2,%2,%2 + NOP + CM128RIA2 %2,%2,%2 + NOP + CM128RIA4 %2,%2,%2,7 + NOP + CM128SIA2 %2,%2,%2 + NOP + CM128SIA4 %1,%1,%1,7 + NOP + CM128VSA %1,%1,%1 + NOP + CRC32 %1,%1,%1 + NOP + CRC32B %1,%1,%1 + NOP + CHKHDR %1,%1 + NOP + AVAIL %1 + NOP + FREE %1,%1 + NOP + CMPHDR %1 + NOP + MCID %1,%1 + NOP + DBA %1 + NOP + DBD %1,%1 + NOP + DPWT %1,%1 + NOP diff --git a/gas/testsuite/gas/iq2000/q10test8.d b/gas/testsuite/gas/iq2000/q10test8.d new file mode 100644 index 0000000..9b18dde --- /dev/null +++ b/gas/testsuite/gas/iq2000/q10test8.d @@ -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 index 0000000..9484f31 --- /dev/null +++ b/gas/testsuite/gas/iq2000/q10test8.s @@ -0,0 +1,286 @@ +.global _start +_start: + ADD %1,%1,%1 + NOP + ADDI %1,%1,0xfff8 + NOP + ADDIU %1,%1,0xfff8 + NOP + ADDU %1,%1,%1 + NOP + ADO16 %1,%1,%1 + NOP + AND %1,%1,%1 + NOP + ANDI %1,%1,0xfff8 + NOP + ANDOI %1,%1,0xfff8 + NOP + ANDOUI %1,%1,0xfff8 + NOP + LUI %1,0xfff8 + NOP + MRGB %1,%1,%1,0 + NOP + NOR %1,%1,%1 + NOP + OR %1,%1,%1 + NOP + ORI %1,%1,0xfff8 + NOP + ORUI %1,%1,0xfff8 + NOP + SLL %1,%1,0 + NOP + SLLV %1,%1,%1 + NOP + SLT %1,%1,%1 + NOP + SLTI %1,%1,0xfff8 + NOP + SLTIU %1,%1,0xfff8 + NOP + SLTU %1,%1,%1 + NOP + SRA %1,%1,0 + NOP + SRAV %1,%1,%1 + NOP + SRL %1,%1,0 + NOP + SRLV %1,%1,%1 + NOP + SUB %1,%1,%1 + NOP + SUBU %1,%1,%1 + NOP + XOR %1,%1,%1 + NOP + XORI %1,%1,0xfff8 + NOP + NOP + NOP + SRMV %1,%1,%1,0 + NOP + SLMV %1,%1,%1,0 + NOP + RAM %1,%1,0,0,0 + NOP + BBI %1(31),_startxfff8 + NOP + BBIN %1(31),_startxfff8 + NOP + BBV %1,%1,_startxfff8 + NOP + BBVN %1,%1,_startxfff8 + NOP + BBIL %1(31),_startxfff8 + NOP + BBINL %1(31),_startxfff8 + NOP + BBVL %1,%1,_startxfff8 + NOP + BBVNL %1,%1,_startxfff8 + NOP + BEQ %1,%1,_startxfff8 + NOP + BEQL %1,%1,_startxfff8 + NOP + BGEZ %1,_startxfff8 + NOP + BGTZAL %1,_startxfff8 + NOP + BGEZAL %1,_startxfff8 + NOP + BGTZALL %1,_startxfff8 + NOP + BGEZALL %1,_startxfff8 + NOP + BGEZL %1,_startxfff8 + NOP + BGTZL %1,_startxfff8 + NOP + BGTZ %1,_startxfff8 + NOP + BLEZ %1,_startxfff8 + NOP + BLEZAL %1,_startxfff8 + NOP + BLTZ %1,_startxfff8 + NOP + BLTZAL %1,_startxfff8 + NOP + BLEZL %1,_startxfff8 + NOP + BLTZL %1,_startxfff8 + NOP + BLEZALL %1,_startxfff8 + NOP + BLTZALL %1,_startxfff8 + NOP + BMB %1,%1,_startxfff8 + NOP + BMBL %1,%1,_startxfff8 + NOP + BMB0 %1,%1,_startxfff8 + NOP + BMB1 %1,%1,_startxfff8 + NOP + BMB2 %1,%1,_startxfff8 + NOP + BMB3 %1,%1,_startxfff8 + NOP + BNE %1,%1,_startxfff8 + NOP + BNEL %1,%1,_startxfff8 + NOP + J 0xfff8 + NOP + JAL %1,0xfff8 + NOP + JALR %1,%1 + NOP + JR %1 + NOP + BREAK + NOP + CTC %1,%1 + NOP + CFC %1,%1 + NOP + LW %1,0xfff8(%1) + NOP + LH %1,0xfff8(%1) + NOP + LB %1,0xfff8(%1) + NOP + LHU %1,0xfff8(%1) + NOP + LBU %1,0xfff8(%1) + NOP + SB %1,0xfff8(%1) + NOP + SH %1,0xfff8(%1) + NOP + SW %1,0xfff8(%1) + NOP + RBA %1,%1,%1 + NOP + RBAR %1,%1,%1 + NOP + RBAL %1,%1,%1 + NOP + WBA %1,%1,%1 + NOP + WBAC %1,%1,%1 + NOP + WBAU %1,%1,%1 + NOP + RBI %1,%1,%1,0 + NOP + RBIR %1,%1,%1,0 + NOP + RBIL %1,%1,%1,0 + NOP + WBI %1,%1,%1,0 + NOP + WBIC %1,%1,%1,0 + NOP + WBIU %1,%1,%1,0 + NOP + PKRLA %1,%1,%1 + NOP + PKRLAH %1,%1,%1 + NOP + PKRLAU %1,%1,%1 + NOP + PKRLI %1,%1,%1,0 + NOP + PKRLIH %1,%1,%1,0 + NOP + PKRLIU %1,%1,%1,0 + NOP + LOCK %1,%1 + NOP + UNLK %1,%1 + NOP + SWWR %1,%1,%1 + NOP + SWWRU %1,%1,%1 + NOP + SWRD %1,%1 + NOP + SWRDL %1,%1 + NOP + DWRD %2,%2 + NOP + DWRDL %2,%2 + NOP + CM32AND %1,%1,%1 + NOP + CM32ANDN %1,%1,%1 + NOP + CM32OR %1,%1,%1 + NOP + CM32RA %1,%1,%1 + NOP + CM32RD %1,%1 + NOP + CM32RI %1,%1 + NOP + CM32RS %1,%1,%1 + NOP + CM32SA %1,%1,%1 + NOP + CM32SD %1,%1 + NOP + CM32SI %1,%1 + NOP + CM32SS %1,%1,%1 + NOP + CM32XOR %1,%1,%1 + NOP + CM64CLR %2,%2 + NOP + CM64RA %2,%2,%2 + NOP + CM64RD %2,%2 + NOP + CM64RI %2,%2 + NOP + CM64RIA2 %2,%2,%2 + NOP + CM64RS %2,%2,%2 + NOP + CM64SA %2,%2,%2 + NOP + CM64SD %2,%2 + NOP + CM64SI %2,%2 + NOP + CM64SIA2 %2,%2,%2 + NOP + CM64SS %2,%2,%2 + NOP + CM128RIA2 %2,%2,%2 + NOP + CRC32 %1,%1,%1 + NOP + CRC32B %1,%1,%1 + NOP + CHKHDR %1,%1 + NOP + AVAIL %1 + NOP + FREE %1,%1 + NOP + CMPHDR %1 + NOP + MCID %1,%1 + NOP + DBA %1 + NOP + DBD %1,%1 + NOP + DPWT %1,%1 + NOP diff --git a/gas/testsuite/gas/iq2000/q10test9.d b/gas/testsuite/gas/iq2000/q10test9.d new file mode 100644 index 0000000..9a1f295 --- /dev/null +++ b/gas/testsuite/gas/iq2000/q10test9.d @@ -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 index 0000000..0481743 --- /dev/null +++ b/gas/testsuite/gas/iq2000/q10test9.s @@ -0,0 +1,284 @@ +.global _start +_start: + ADD %1,%1,%1 + NOP + ADDI %1,%1,0 + NOP + ADDIU %1,%1,0 + NOP + ADDU %1,%1,%1 + NOP + ADO16 %1,%1,%1 + NOP + AND %1,%1,%1 + NOP + ANDI %1,%1,0 + NOP + ANDOI %1,%1,0 + NOP + ANDOUI %1,%1,0 + NOP + LUI %1,0 + NOP + MRGB %1,%1,%1,1 + NOP + NOR %1,%1,%1 + NOP + OR %1,%1,%1 + NOP + ORI %1,%1,0 + NOP + ORUI %1,%1,0 + NOP + SLL %1,%1,0 + NOP + SLLV %1,%1,%1 + NOP + SLT %1,%1,%1 + NOP + SLTI %1,%1,0 + NOP + SLTIU %1,%1,0 + NOP + SLTU %1,%1,%1 + NOP + SRA %1,%1,0 + NOP + SRAV %1,%1,%1 + NOP + SRL %1,%1,0 + NOP + SRLV %1,%1,%1 + NOP + SUB %1,%1,%1 + NOP + SUBU %1,%1,%1 + NOP + XOR %1,%1,%1 + NOP + XORI %1,%1,0 + NOP + NOP + NOP + SRMV %1,%1,%1,0 + NOP + SLMV %1,%1,%1,0 + NOP + RAM %1,%1,0,1,1 + NOP + BBI %1(0),_start + NOP + BBIN %1(0),_start + NOP + BBV %1,%1,_start + NOP + BBVN %1,%1,_start + NOP + BBIL %1(0),_start + NOP + BBINL %1(0),_start + NOP + BBVL %1,%1,_start + NOP + BBVNL %1,%1,_start + NOP + BEQ %1,%1,_start + NOP + BEQL %1,%1,_start + NOP + BGEZ %1,_start + NOP + BGTZAL %1,_start + NOP + BGEZAL %1,_start + NOP + BGTZALL %1,_start + NOP + BGEZALL %1,_start + NOP + BGEZL %1,_start + NOP + BGTZL %1,_start + NOP + BGTZ %1,_start + NOP + BLEZ %1,_start + NOP + BLEZAL %1,_start + NOP + BLTZ %1,_start + NOP + BLTZAL %1,_start + NOP + BLEZL %1,_start + NOP + BLTZL %1,_start + NOP + BLEZALL %1,_start + NOP + BLTZALL %1,_start + NOP + BMB %1,%1,_start + NOP + BMBL %1,%1,_start + NOP + BMB0 %1,%1,_start + NOP + BMB1 %1,%1,_start + NOP + BMB2 %1,%1,_start + NOP + BMB3 %1,%1,_start + NOP + BNE %1,%1,_start + NOP + BNEL %1,%1,_start + NOP + J 0 + NOP + JAL %1,0 + NOP + JALR %1,%1 + NOP + JR %1 + NOP + BREAK + NOP + CTC %1,%1 + NOP + CFC %1,%1 + NOP + LW %1,0(%1) + NOP + LH %1,0(%1) + NOP + LB %1,0(%1) + NOP + LHU %1,0(%1) + NOP + LBU %1,0(%1) + NOP + SB %1,0(%1) + NOP + SH %1,0(%1) + NOP + SW %1,0(%1) + NOP + RBA %1,%1,%1 + NOP + RBAR %1,%1,%1 + NOP + RBAL %1,%1,%1 + NOP + WBA %1,%1,%1 + NOP + WBAC %1,%1,%1 + NOP + WBAU %1,%1,%1 + NOP + RBI %1,%1,%1,8 + NOP + RBIR %1,%1,%1,8 + NOP + RBIL %1,%1,%1,8 + NOP + WBI %1,%1,%1,8 + NOP + WBIC %1,%1,%1,8 + NOP + WBIU %1,%1,%1,8 + NOP + PKRLA %1,%1,%1 + NOP + PKRLAH %1,%1,%1 + NOP + PKRLAU %1,%1,%1 + NOP + PKRLI %1,%1,%1,8 + NOP + PKRLIH %1,%1,%1,8 + NOP + PKRLIU %1,%1,%1,8 + NOP + LOCK %1,%1 + NOP + UNLK %1,%1 + NOP + SWWR %1,%1,%1 + NOP + SWWRU %1,%1,%1 + NOP + SWRD %1,%1 + NOP + SWRDL %1,%1 + NOP + DWRD %2,%2 + NOP + DWRDL %2,%2 + NOP + CM32AND %1,%1,%1 + NOP + CM32ANDN %1,%1,%1 + NOP + CM32OR %1,%1,%1 + NOP + CM32RA %1,%1,%1 + NOP + CM32RD %1,%1 + NOP + CM32RI %1,%1 + NOP + CM32RS %1,%1,%1 + NOP + CM32SA %1,%1,%1 + NOP + CM32SD %1,%1 + NOP + CM32SI %1,%1 + NOP + CM32SS %1,%1,%1 + NOP + CM32XOR %1,%1,%1 + NOP + CM64CLR %2,%2 + NOP + CM64RA %2,%2,%2 + NOP + CM64RD %2,%2 + NOP + CM64RI %2,%2 + NOP + CM64RIA2 %2,%2,%2 + NOP + CM64RS %2,%2,%2 + NOP + CM64SA %2,%2,%2 + NOP + CM64SD %2,%2 + NOP + CM64SI %2,%2 + NOP + CM64SIA2 %2,%2,%2 + NOP + CM64SS %2,%2,%2 + NOP + CRC32 %2,%2,%2 + NOP + CRC32B %2,%2,%2 + NOP + CHKHDR %2,%2 + NOP + AVAIL %1 + NOP + FREE %1,%1 + NOP + CMPHDR %1 + NOP + MCID %1,%1 + NOP + DBA %1 + NOP + DBD %1,%1 + NOP + DPWT %1,%1 + NOP diff --git a/gas/testsuite/gas/iq2000/q10yield.exp b/gas/testsuite/gas/iq2000/q10yield.exp new file mode 100644 index 0000000..9e9d9dc --- /dev/null +++ b/gas/testsuite/gas/iq2000/q10yield.exp @@ -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 index 0000000..3f1553c --- /dev/null +++ b/gas/testsuite/gas/iq2000/test.exp @@ -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 index 0000000..c68095f --- /dev/null +++ b/gas/testsuite/gas/iq2000/yield.exp @@ -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 index 0000000..e317bb9 --- /dev/null +++ b/gas/testsuite/gas/iq2000/yield0.s @@ -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 index 0000000..aee6704 --- /dev/null +++ b/gas/testsuite/gas/iq2000/yield1.s @@ -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 index 0000000..b3bd2d9 --- /dev/null +++ b/gas/testsuite/gas/iq2000/yield2.s @@ -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