1 # test all instructions 2 3 start: 4 abs r21,r42 5 6 add r1,r2,r3 7 add r50,r51,0x1a 8 add r50,r51,0xdeadbeef 9 10 add2h r1,r2,r3 11 add2h r50,r51,0x1a 12 add2h r50,r51,0xdeadbeef 13 14 addc r1,r2,r3 15 addc r50,r51,0x1a 16 addc r50,r51,0xdeadbeef 17 18 addhlll r1,r2,r3 19 addhlll r50,r51,0x1a 20 addhlll r50,r51,0xdeadbeef 21 22 addhllh r1,r2,r3 23 addhllh r50,r51,0x1a 24 addhllh r50,r51,0xdeadbeef 25 26 addhlhl r1,r2,r3 27 addhlhl r50,r51,0x1a 28 addhlhl r50,r51,0xdeadbeef 29 30 addhlhh r1,r2,r3 31 addhlhh r50,r51,0x1a 32 addhlhh r50,r51,0xdeadbeef 33 34 addhhll r1,r2,r3 35 addhhll r50,r51,0x1a 36 addhhll r50,r51,0xdeadbeef 37 38 addhhlh r1,r2,r3 39 addhhlh r50,r51,0x1a 40 addhhlh r50,r51,0xdeadbeef 41 42 addhhhl r1,r2,r3 43 addhhhl r50,r51,0x1a 44 addhhhl r50,r51,0xdeadbeef 45 46 addhhhh r1,r2,r3 47 addhhhh r50,r51,0x1a 48 addhhhh r50,r51,0xdeadbeef 49 50 adds r1,r2,r3 51 adds r50,r51,0x1a 52 adds r50,r51,0xdeadbeef 53 54 adds2h r1,r2,r3 55 adds2h r50,r51,0x1a 56 adds2h r50,r51,0xdeadbeef 57 58 and r1,r2,r3 59 and r50,r51,0x1a 60 and r50,r51,0xdeadbeef 61 62 andfg f0,f1,f2 63 andfg f3,f4,5 64 65 avg r1,r2,r3 66 avg r4,r5,6 67 avg r50,r51,0xdeadbeef 68 69 avg2h r1,r2,r3 70 avg2h r4,r5,6 71 avg2h r50,r51,0xdeadbeef 72 73 bclr r1,r2,r3 74 bclr r4,r5,6 75 76 bnot r1,r2,r3 77 bnot r5,r51,6 78 79 bra r41 80 bra 0x40 81 bra 0xf00d 82 83 bratnz r41,r42 84 bratnz r1,0xf00d 85 bratnz r1,0xdeadf00d 86 87 bratzr r41,r42 88 bratzr r1,0xf00d 89 bratzr r1,0xdeadf00d 90 91 bset r1,r2,r3 92 bset r5,r51,6 93 94 bsr r41 95 bsr 0xf00d 96 bsr 0xdeadf00d 97 98 bsrtnz r41,r42 99 bsrtnz r1,0xf00d 100 bsrtnz r1,0xdeadf00d 101 102 bsrtzr r41,r42 103 bsrtzr r1,0xf00d 104 bsrtzr r1,0xdeadf00d 105 106 btst f1,r2,r3 107 btst f5,r51,6 108 109 cmpeq f0,r3,r1 110 cmpne f1,r20,r21 111 cmpgt f2,r31,r32 112 cmpge f3,r3,r4 113 cmplt f4,r3,r4 114 cmple f5,r3,r4 115 cmpps f6,r3,r4 116 cmpng f7,r3,r4 117 118 cmpugt f2,r31,r32 119 cmpuge f3,r3,r4 120 cmpult f4,r3,r4 121 cmpule f5,r3,r4 122 123 dbra r1,r8 124 dbra r1,0x100 125 dbra r1,0xdeadf00d 126 127 dbrai 0x10,r31 128 dbrai 0x10,0x100 129 dbrai 0x10,0xdeadf00d 130 131 dbsr r1,r8 || nop 132 dbsr r1,0x100 || nop 133 dbsr r1,0xdeadf00d 134 135 dbsri 0x20,r31 || nop 136 dbsri 0x20,0x100 || nop 137 dbsri 0x20,0xdeadf00d 138 139 djmp r1,r32 140 djmp r1,0xf00d 141 djmp r1,0xdeadf00d 142 143 djmpi 0x30,r32 144 djmpi 0x30,0xf00d 145 djmpi 0x30,0xdeadf00d 146 147 djsr r1,r32 148 djsr r1,0xf00d 149 djsr r1,0xdeadf00d 150 151 djsri 0x10,r32 152 djsri 0x20,0xf00d 153 djsri 0x40,0xdeadf00d 154 155 jmp r41 156 jmp 0xf00d 157 jmp 0xdeadf00d 158 159 jmptnz r41,r42 160 jmptnz r1,0xf00d 161 jmptnz r1,0xdeadf00d 162 163 jmptzr r41,r42 164 jmptzr r1,0xf00d 165 jmptzr r1,0xdeadf00d 166 167 joinll r1,r2,r4 168 joinll r1,r2,0xf 169 joinll r1,r2,0xdeadf00d 170 171 joinlh r1,r2,r4 172 joinlh r1,r2,0xf 173 joinlh r1,r2,0xdeadf00d 174 175 joinhl r1,r2,r4 176 joinhl r1,r2,0xf 177 joinhl r1,r2,0xdeadf00d 178 179 joinhh r1,r2,r4 180 joinhh r1,r2,0xf 181 joinhh r1,r2,0xdeadf00d 182 183 jsr r41 184 jsr 0xf00d 185 jsr 0xdeadf00d 186 187 jsrtnz r41,r42 188 jsrtnz r1,0xf00d 189 jsrtnz r1,0xdeadf00d 190 191 jsrtzr r41,r42 192 jsrtzr r1,0xf00d 193 jsrtzr r1,0xdeadf00d 194 195 ld2h r6,@(r7,r8) 196 ld2h r6,@(r7+,r8) 197 ld2h r6,@(r7-,r8) 198 ld2h r6,@(r7,0x1a) 199 ld2h r6,@(r7,0x1234) 200 201 ld2w r6,@(r7,r8) 202 ld2w r6,@(r7+,r8) 203 ld2w r6,@(r7-,r8) 204 ld2w r6,@(r7,0x1a) 205 ld2w r6,@(r7,0x1234) 206 207 ld4bh r6,@(r7,r8) 208 ld4bh r6,@(r7+,r8) 209 ld4bh r6,@(r7-,r8) 210 ld4bh r6,@(r7,0x1a) 211 ld4bh r6,@(r7,0x1234) 212 213 ld4bhu r6,@(r7,r8) 214 ld4bhu r6,@(r7+,r8) 215 ld4bhu r6,@(r7-,r8) 216 ld4bhu r6,@(r7,0x1a) 217 ld4bhu r6,@(r7,0x1234) 218 219 ldb r6,@(r7,r8) 220 ldb r6,@(r7+,r8) 221 ldb r6,@(r7-,r8) 222 ldb r6,@(r7,0x1a) 223 ldb r6,@(r7,0x1234) 224 225 ldbu r6,@(r7,r8) 226 ldbu r6,@(r7+,r8) 227 ldbu r6,@(r7-,r8) 228 ldbu r6,@(r7,0x1a) 229 ldbu r6,@(r7,0x1234) 230 231 ldh r6,@(r7,r8) 232 ldh r6,@(r7+,r8) 233 ldh r6,@(r7-,r8) 234 ldh r6,@(r7,0x1a) 235 ldh r6,@(r7,0x1234) 236 237 ldhh r6,@(r7,r8) 238 ldhh r6,@(r7+,r8) 239 ldhh r6,@(r7-,r8) 240 ldhh r6,@(r7,0x1a) 241 ldhh r6,@(r7,0x1234) 242 243 ldhu r6,@(r7,r8) 244 ldhu r6,@(r7+,r8) 245 ldhu r6,@(r7-,r8) 246 ldhu r6,@(r7,0x1a) 247 ldhu r6,@(r7,0x1234) 248 249 ldw r6,@(r7,r8) 250 ldw r6,@(r7+,r8) 251 ldw r6,@(r7-,r8) 252 ldw r6,@(r7,0x1a) 253 ldw r6,@(r7,0x1234) 254 255 mac0 r1,r2,r4 256 mac0 r1,r2,0x1f 257 mac1 r1,r2,r4 258 mac1 r1,r2,0x1f 259 260 macs0 r1,r2,r4 261 macs0 r1,r2,0x1f 262 macs1 r1,r2,r4 263 macs1 r1,r2,0x1f 264 265 moddec r1,0xa 266 267 modinc r1,0xa 268 269 msub0 r1,r2,r4 270 msub0 r1,r2,0x1f 271 msub1 r1,r2,r4 272 msub1 r1,r2,0x1f 273 274 mul r1,r2,r4 275 mul r1,r2,0xa 276 277 msubs0 r1,r2,r4 278 msubs0 r1,r2,0x1f 279 msubs1 r1,r2,r4 280 msubs1 r1,r2,0x1f 281 282 mul2h r1,r2,r4 283 mul2h r1,r2,0xa 284 285 mulhxll r1,r2,r4 286 mulhxll r1,r2,0xa 287 288 mulhxlh r1,r2,r4 289 mulhxlh r1,r2,0xa 290 291 mulhxhl r1,r2,r4 292 mulhxhl r1,r2,0xa 293 294 mulhxhh r1,r2,r4 295 mulhxhh r1,r2,0xa 296 297 mulx2h r8,r2,r4 298 mulxs a0,r1,r4 299 300 mulx a0,r1,r4 301 mulx a1,r2,0xa 302 303 mvfacc r1,a0,r4 304 mvfacc r2,a1,0xa 305 306 mulx2h r8,r2,0xa 307 mulxs a1,r2,0xa 308 309 mvfsys r10,pc 310 mvfsys r10,rpt_c 311 mvfsys r10,psw 312 mvfsys r10,pswh 313 mvfsys r10,pswl 314 mvfsys r10,f0 315 mvfsys r10,S 316 317 mvtacc a1,r2,r4 318 319 mvtsys rpt_c, r10 320 mvtsys psw, r10 321 mvtsys pswh, r10 322 mvtsys pswl, r10 323 mvtsys f0, r10 324 mvtsys f3, r10 325 mvtsys S, r10 326 mvtsys V, r10 327 mvtsys VA, r10 328 mvtsys C, r10 329 330 nop 331 332 not r1,r2 333 334 notfg f1,f2 335 336 or r1,r2,r4 337 or r1,r2,0x1a 338 or r1,r2,0xdeadf00d 339 340 orfg f1,f2,f4 341 orfg f4,f2,0x1 342 343 reit 344 345 repeat r1,r2 346 repeat r4,0xdead 347 repeat r4,0xdeadf00d 348 349 repeati 0xa,r1 350 repeati 0xa,0x1001 351 352 nop || nop 353 354 rot r1,r2,r4 355 rot r1,r2,0xa 356 357 rot2h r1,r2,r4 358 rot2h r1,r2,0xa 359 360 sat r1,r2,r4 361 sat r1,r2,0xa 362 363 sat2h r1,r2,r4 364 sat2h r1,r2,0xa 365 366 sathl r1,r2,r4 367 sathl r1,r2,0xa 368 369 sathh r1,r2,r4 370 sathh r1,r2,0xa 371 372 satz r1,r2,r4 373 satz r1,r2,0xa 374 375 satz2h r1,r2,r4 376 satz2h r1,r2,0xa 377 378 sra r1,r2,r4 379 sra r1,r2,0xa 380 381 sra2h r1,r2,r4 382 sra2h r1,r2,0xa 383 384 src r1,r2,r4 385 src r1,r2,0xa 386 387 srl r1,r2,r4 388 srl r1,r2,0xa 389 390 srl2h r1,r2,r4 391 srl2h r1,r2,0xa 392 393 394 st2h r6,@(r7,r8) 395 st2h r6,@(r7+,r8) 396 st2h r6,@(r7-,r8) 397 st2h r6,@(r7,0x1a) 398 st2h r6,@(r7,0x1234) 399 400 st2w r6,@(r7,r8) 401 st2w r6,@(r7+,r8) 402 st2w r6,@(r7-,r8) 403 st2w r6,@(r7,0x1a) 404 st2w r6,@(r7,0x1234) 405 406 st4hb r6,@(r7,r8) 407 st4hb r6,@(r7+,r8) 408 st4hb r6,@(r7-,r8) 409 st4hb r6,@(r7,0x1a) 410 st4hb r6,@(r7,0x1234) 411 412 stb r6,@(r7,r8) 413 stb r6,@(r7+,r8) 414 stb r6,@(r7-,r8) 415 stb r6,@(r7,0x1a) 416 stb r6,@(r7,0x1234) 417 418 sth r6,@(r7,r8) 419 sth r6,@(r7+,r8) 420 sth r6,@(r7-,r8) 421 sth r6,@(r7,0x1a) 422 sth r6,@(r7,0x1234) 423 424 sthh r6,@(r7,r8) 425 sthh r6,@(r7+,r8) 426 sthh r6,@(r7-,r8) 427 sthh r6,@(r7,0x1a) 428 sthh r6,@(r7,0x1234) 429 430 stw r6,@(r7,r8) 431 stw r6,@(r7+,r8) 432 stw r6,@(r7-,r8) 433 stw r6,@(r7,0x1a) 434 stw r6,@(r7,0x1234) 435 436 sub r1,r2,r3 437 sub r50,r51,0x1a 438 sub r50,r51,0xdeadbeef 439 440 sub2h r1,r2,r3 441 sub2h r50,r51,0x1a 442 sub2h r50,r51,0xdeadbeef 443 444 subb r1,r2,r3 445 subb r50,r51,0x1a 446 subb r50,r51,0xdeadbeef 447 448 subhlll r1,r2,r3 449 subhlll r50,r51,0x1a 450 subhlll r50,r51,0xdeadbeef 451 452 subhllh r1,r2,r3 453 subhllh r50,r51,0x1a 454 subhllh r50,r51,0xdeadbeef 455 456 subhlhl r1,r2,r3 457 subhlhl r50,r51,0x1a 458 subhlhl r50,r51,0xdeadbeef 459 460 subhlhh r1,r2,r3 461 subhlhh r50,r51,0x1a 462 subhlhh r50,r51,0xdeadbeef 463 464 subhhll r1,r2,r3 465 subhhll r50,r51,0x1a 466 subhhll r50,r51,0xdeadbeef 467 468 subhhlh r1,r2,r3 469 subhhlh r50,r51,0x1a 470 subhhlh r50,r51,0xdeadbeef 471 472 subhhhl r1,r2,r3 473 subhhhl r50,r51,0x1a 474 subhhhl r50,r51,0xdeadbeef 475 476 subhhhh r1,r2,r3 477 subhhhh r50,r51,0x1a 478 subhhhh r50,r51,0xdeadbeef 479 480 trap r1 481 trap 0xa 482 483 xor r1,r2,r4 484 xor r1,r2,0xa 485 xor r1,r2,0xdeadf00d 486 487 xorfg f1,f2,f4 488 xorfg f1,f4,0xa 489 490 # VLIW syntax test 491 nop 492 nop 493 nop -> nop 494 nop || nop 495 nop <- nop 496 497 # try changing sections 498 not r1,r2 499 .section .foo 500 add r10,r12,6 501 .text 502 not r2,r3 503 nop 504