1 .data 2foodata: .hword 42 3 .text 4footext: 5 .text 6 .global beq16 7 8 .text 9 .global beq 10bgt16: 11 bgt 4 12 bgt 4 13 bgt -4 14 bgt footext 15 bgt foodata 16 bgt 4 17 bgt footext 18 bgt footext 19 .text 20 .global bgt 21 22bgtu16: 23 bgtu 4 24 bgtu -4 25 bgtu footext 26 bgtu 4 27 bgtu -4 28 bgtu footext 29 bgtu footext 30 bgtu 4 31 .text 32 .global bgtu 33 34bgte16: 35 bgte footext 36 bgte footext 37 bgte footext 38 bgte footext 39 bgte footext 40 bgte -4 41 bgte foodata 42 bgte foodata 43 44 .text 45 .global bgteu16 46bgteu16: 47 bgteu 4 48 bgteu -4 49 bgteu foodata 50 bgteu 4 51 bgteu footext 52 bgteu 4 53 bgteu foodata 54 bgteu foodata 55 .text 56 .global bgteu 57bgteu: 58 .text 59 .global blt16 60blt16: 61 blt -4 62 blt 4 63 blt -4 64 blt 4 65 blt -4 66 blt 4 67 blt foodata 68 blt foodata 69 .text 70 .global blt 71blt: 72 .text 73 .global bltu16 74bltu16: 75 bltu -4 76 bltu 4 77 bltu -4 78 bltu footext 79 bltu footext 80 bltu footext 81 bltu 4 82 bltu foodata 83 .text 84 .global bltu 85bltu: 86 .text 87 .global blte16 88blte16: 89 blte footext 90 blte foodata 91 blte foodata 92 blte footext 93 blte -4 94 blte footext 95 blte footext 96 blte 4 97 .text 98 .global blte 99blte: 100 .text 101 .global blteu16 102blteu16: 103 blteu footext 104 blteu foodata 105 blteu footext 106 blteu foodata 107 blteu footext 108 blteu -4 109 blteu foodata 110 blteu foodata 111 .text 112 .global blteu 113blteu: 114 .text 115 .global bbeq16 116bbeq16: 117 bbeq footext 118 bbeq footext 119 bbeq foodata 120 bbeq footext 121 bbeq 4 122 bbeq foodata 123 bbeq foodata 124 bbeq 4 125 .text 126 .global bbeq 127bbeq: 128 .text 129 .global bbne16 130bbne16: 131 bbne foodata 132 bbne -4 133 bbne 4 134 bbne footext 135 bbne 4 136 bbne 4 137 bbne footext 138 bbne footext 139 .text 140 .global bbne 141bbne: 142 .text 143 .global bblt16 144bblt16: 145 bblt foodata 146 bblt 4 147 bblt 4 148 bblt 4 149 bblt -4 150 bblt 4 151 bblt footext 152 bblt -4 153 .text 154 .global bblt 155bblt: 156 .text 157 .global bblte16 158bblte16: 159 bblte 4 160 bblte 4 161 bblte footext 162 bblte footext 163 bblte 4 164 bblte -4 165 bblte foodata 166 bblte 4 167 .text 168 .global bblte 169bblte: 170 .text 171 .global b16 172b16: 173 b footext 174 b footext 175 b 4 176 b -4 177 b footext 178 b foodata 179 b foodata 180 b -4 181 .text 182 .global b 183b: 184 .text 185 .global bl16 186bl16: 187 bl -4 188 bl 4 189 bl footext 190 bl -4 191 bl footext 192 bl -4 193 bl -4 194 bl footext 195 .text 196 .global bl 197bl: 198 .text 199 .global jr16 200jr16: 201 jr ip 202 jr r3 203 jr r0 204 jr fp 205 jr sp 206 jr r0 207 jr r3 208 jr r0 209 .text 210 .global jr 211jr: 212 jr ip 213 jr r59 214 jr r28 215 jr r27 216 jr sp 217 jr r51 218 jr r56 219 jr r45 220 .text 221 .global jalr16 222jalr16: 223 jalr ip 224 jalr r3 225 jalr r0 226 jalr fp 227 jalr sp 228 jalr r3 229 jalr fp 230 jalr ip 231 .text 232 .global jalr 233jalr: 234 jalr ip 235 jalr r59 236 jalr r28 237 jalr r27 238 jalr sp 239 jalr r11 240 jalr r28 241 jalr r59 242 .text 243 .global ldrbx16 244ldrbx16: 245 ldrb ip,[ip,ip] 246 ldrb r3,[r3,r3] 247 ldrb r0,[r0,r0] 248 ldrb fp,[fp,fp] 249 ldrb sp,[sp,sp] 250 ldrb ip,[r0,r0] 251 ldrb r3,[r2,lr] 252 ldrb r2,[ip,r3] 253 .text 254 .global ldrbp16 255ldrbp16: 256 ldrb sp,[r0],fp 257 ldrb lr,[r1],ip 258 ldrb fp,[r0],fp 259 .text 260 .global ldrbx 261ldrbx: 262 ldrb ip,[ip,ip] 263 ldrb r59,[r59,r59] 264 ldrb r28,[r28,r28] 265 ldrb r27,[r27,r27] 266 ldrb sp,[sp,sp] 267 ldrb r41,[r18,r47] 268 ldrb r43,[r16,r21] 269 ldrb r32,[r8,r8] 270 .text 271 .global ldrbp 272ldrbp: 273 ldrb r36,[r49],r18 274 ldrb r32,[r59],r50 275 ldrb r58,[r11],r25 276 .text 277 .global ldrbd16 278ldrbd16: 279 ldrb ip,[ip,0] 280 ldrb r3,[r3,7] 281 ldrb r0,[r0,4] 282 ldrb fp,[fp,3] 283 ldrb sp,[sp,1] 284 ldrb lr,[sp,1] 285 ldrb r1,[r0,0] 286 ldrb r1,[r1,1] 287 .text 288 .global ldrbd 289ldrbd: 290 ldrb ip,[ip,0] 291 ldrb r59,[r59,2047] 292 ldrb r28,[r28,1024] 293 ldrb r27,[r27,1023] 294 ldrb sp,[sp,1] 295 ldrb r7,[r33,1574] 296 ldrb r31,[r6,1957] 297 ldrb r10,[r0,1831] 298 .text 299 .global ldrhx16 300ldrhx16: 301 ldrh ip,[ip,ip] 302 ldrh r3,[r3,r3] 303 ldrh r0,[r0,r0] 304 ldrh fp,[fp,fp] 305 ldrh sp,[sp,sp] 306 ldrh r0,[r0,lr] 307 ldrh lr,[lr,sp] 308 ldrh r0,[fp,fp] 309 .text 310 .global ldrhp16 311ldrhp16: 312 ldrh r2,[sp],fp 313 ldrh r22,[sp],fp 314 .text 315 .global ldrhx 316ldrhx: 317 ldrh ip,[ip,ip] 318 ldrh r59,[r59,r59] 319 ldrh r28,[r28,r28] 320 ldrh r27,[r27,r27] 321 ldrh sp,[sp,sp] 322 ldrh r46,[r17,r21] 323 ldrh r30,[r1,r47] 324 ldrh r43,[r19,r20] 325 .text 326 .global ldrhp 327ldrhp: 328 329 330 331 ldrh r32,[r31],r29 332 ldrh r52,[r47],r10 333 ldrh r31,[r40],r3 334 .text 335 .global ldrhd16 336ldrhd16: 337 ldrh ip,[ip,0] 338 ldrh r3,[r3,7] 339 ldrh r0,[r0,4] 340 ldrh fp,[fp,3] 341 ldrh sp,[sp,1] 342 ldrh lr,[r2,0] 343 ldrh r3,[r0,7] 344 ldrh r0,[r3,6] 345 .text 346 .global ldrhd 347ldrhd: 348 ldrh ip,[ip,0] 349 ldrh r59,[r59,2047] 350 ldrh r28,[r28,1024] 351 ldrh r27,[r27,1023] 352 ldrh sp,[sp,1] 353 ldrh r45,[r24,1221] 354 ldrh r36,[r43,1738] 355 ldrh r42,[r48,25] 356 .text 357 .global ldrx16 358ldrx16: 359 ldr ip,[ip,ip] 360 ldr r3,[r3,r3] 361 ldr r0,[r0,r0] 362 ldr fp,[fp,fp] 363 ldr sp,[sp,sp] 364 ldr r3,[fp,lr] 365 ldr ip,[lr,r2] 366 ldr r3,[r2,lr] 367 .text 368 .global ldrp16 369ldrp16: 370 ldr lr,[fp],sp 371 ldr r0,[sp],r0 372 ldr fp,[r2],r1 373 .text 374 .global ldrx 375ldrx: 376 ldr ip,[ip,ip] 377 ldr r59,[r59,r59] 378 ldr r28,[r28,r28] 379 ldr r27,[r27,r27] 380 ldr sp,[sp,sp] 381 ldr r24,[r16,r47] 382 ldr r22,[r41,r49] 383 ldr r14,[fp,r39] 384 .text 385 .global ldrp 386ldrp: 387 ldr r21,[r5],r30 388 ldr r36,[r12],r14 389 ldr r12,[r4],r11 390 .text 391 .global ldrd16 392ldrd16: 393 ldr ip,[ip,0] 394 ldr r3,[r3,7] 395 ldr r0,[r0,4] 396 ldr fp,[fp,3] 397 ldr sp,[sp,1] 398 ldr r0,[sp,0] 399 ldr ip,[r1,7] 400 ldr fp,[r1,1] 401 .text 402 .global ldrd 403ldrd: 404 ldr ip,[ip,0] 405 ldr r59,[r59,2047] 406 ldr r28,[r28,1024] 407 ldr r27,[r27,1023] 408 ldr sp,[sp,1] 409 ldr r22,[r30,975] 410 ldr r7,[r44,1361] 411 ldr r23,[r19,1855] 412 .text 413 .global ldrdx16 414ldrdx16: 415 ldrd ip,[ip,ip] 416 ldrd r4,[r3,r3] 417 ldrd r0,[r0,r0] 418 ldrd r14,[fp,fp] 419 ldrd r16,[sp,sp] 420 ldrd r30,[r2,ip] 421 ldrd r0,[fp,r3] 422 ldrd r20,[ip,lr] 423 .text 424 .global ldrdp16 425ldrdp16: 426 ldrd r4,[r3],r3 427 ldrd r16,[fp],fp 428 ldrd r20,[sp],sp 429 ldrd r10,[ip],r1 430 ldrd r30,[fp],lr 431 ldrd r62,[lr],sp 432 .text 433 .global ldrdx 434ldrdx: 435 ldrd ip,[ip,ip] 436 ldrd r58,[r59,r59] 437 ldrd r28,[r28,r28] 438 ldrd r26,[r27,r27] 439 ldrd r12,[sp,sp] 440 ldrd r32,[fp,r59] 441 ldrd r4,[r17,r6] 442 ldrd r32,[r40,r1] 443 .text 444 .global ldrdp 445ldrdp: 446 ldrd r16,[sp],sp 447 ldrd r46,[r33],r30 448 ldrd r24,[r36],r59 449 ldrd r58,[r32],r11 450 .text 451 .global ldrdd16 452ldrdd16: 453 ldrd ip,[ip,0] 454 ldrd r4,[r3,7] 455 ldrd r0,[r0,4] 456 ldrd r16,[fp,3] 457 ldrd r18,[sp,1] 458 ldrd r0,[fp,3] 459 ldrd lr,[fp,7] 460 ldrd lr,[ip,1] 461 .text 462 .global ldrdd 463ldrdd: 464 ldrd ip,[ip,0] 465 ldrd r58,[r59,2047] 466 ldrd r28,[r28,1024] 467 ldrd r2,[r27,1023] 468 ldrd r16,[sp,1] 469 ldrd r4,[r21,761] 470 ldrd lr,[r41,1553] 471 ldrd r6,[r14,1922] 472 .text 473 .global strbx16 474strbx16: 475 strb ip,[ip,ip] 476 strb r3,[r3,r3] 477 strb r0,[r0,r0] 478 strb fp,[fp,fp] 479 strb sp,[sp,sp] 480 strb r1,[lr,r3] 481 strb ip,[r3,lr] 482 strb lr,[ip,ip] 483 .text 484 .global strbx 485strbx: 486 strb ip,[ip,ip] 487 strb r59,[r59,r59] 488 strb r28,[r28,r28] 489 strb r27,[r27,r27] 490 strb sp,[sp,sp] 491 strb r50,[r15,sp] 492 strb lr,[fp,r52] 493 strb r14,[r24,r51] 494 .text 495 .global strbp16 496strbp16: 497 strb ip,[ip],ip 498 strb r3,[r3],r3 499 strb r0,[r0],r0 500 strb fp,[fp],fp 501 strb sp,[sp],sp 502 strb r2,[fp],ip 503 strb fp,[r0],r1 504 strb r2,[r2],r3 505 .text 506 .global strbp 507strbp: 508 strb ip,[ip],ip 509 strb r59,[r59],r59 510 strb r28,[r28],r28 511 strb r27,[r27],r27 512 strb sp,[sp],sp 513 strb r14,[r51],r2 514 strb r6,[r44],r50 515 strb r44,[r9],r49 516 .text 517 .global strbd16 518strbd16: 519 strb ip,[ip,0] 520 strb r3,[r3,7] 521 strb r0,[r0,4] 522 strb fp,[fp,3] 523 strb sp,[sp,1] 524 strb r0,[r2,1] 525 strb sp,[r2,3] 526 strb fp,[r2,4] 527 .text 528 .global strbd 529strbd: 530 strb ip,[ip,0] 531 strb r59,[r59,2047] 532 strb r28,[r28,1024] 533 strb r27,[r27,1023] 534 strb sp,[sp,1] 535 strb r23,[r10,1404] 536 strb r12,[r35,1461] 537 strb r54,[r58,1090] 538 .text 539 .global strhx16 540strhx16: 541 strh ip,[ip,ip] 542 strh r3,[r3,r3] 543 strh r0,[r0,r0] 544 strh fp,[fp,fp] 545 strh sp,[sp,sp] 546 strh r0,[r3,r1] 547 strh r1,[fp,r2] 548 strh r3,[r3,fp] 549 .text 550 .global strhx 551strhx: 552 strh ip,[ip,ip] 553 strh r59,[r59,r59] 554 strh r28,[r28,r28] 555 strh r27,[r27,r27] 556 strh sp,[sp,sp] 557 strh r16,[r38,r31] 558 strh r32,[r12,r28] 559 strh r57,[r11,r9] 560 .text 561 .global strhp16 562strhp16: 563 strh ip,[ip],ip 564 strh r3,[r3],r3 565 strh r0,[r0],r0 566 strh fp,[fp],fp 567 strh sp,[sp],sp 568 strh r0,[r2],sp 569 strh sp,[r3],r0 570 strh r1,[r0],r0 571 .text 572 .global strhp 573strhp: 574 strh ip,[ip],ip 575 strh r59,[r59],r59 576 strh r28,[r28],r28 577 strh r27,[r27],r27 578 strh sp,[sp],sp 579 strh r3,[r37],r54 580 strh r4,[r54],r25 581 strh r5,[r32],r25 582 .text 583 .global strhd16 584strhd16: 585 strh ip,[ip,0] 586 strh r3,[r3,7] 587 strh r0,[r0,4] 588 strh fp,[fp,3] 589 strh sp,[sp,1] 590 strh r3,[r0,3] 591 strh lr,[ip,7] 592 strh r3,[r2,7] 593 .text 594 .global strhd 595strhd: 596 strh ip,[ip,0] 597 strh r59,[r59,2047] 598 strh r28,[r28,1024] 599 strh r27,[r27,1023] 600 strh sp,[sp,1] 601 strh r7,[r38,1181] 602 strh r25,[r4,77] 603 strh r11,[fp,631] 604 .text 605 .global strx16 606strx16: 607 str ip,[ip,ip] 608 str r3,[r3,r3] 609 str r0,[r0,r0] 610 str fp,[fp,fp] 611 str sp,[sp,sp] 612 str lr,[r3,r3] 613 str r3,[fp,r0] 614 str ip,[sp,r1] 615 .text 616 .global strx 617strx: 618 str ip,[ip,ip] 619 str r59,[r59,r59] 620 str r28,[r28,r28] 621 str r27,[r27,r27] 622 str sp,[sp,sp] 623 str r53,[r29,r28] 624 str r30,[r22,r34] 625 str r28,[r28,r44] 626 .text 627 .global strp16 628strp16: 629 str ip,[ip],ip 630 str r3,[r3],r3 631 str r0,[r0],r0 632 str fp,[fp],fp 633 str sp,[sp],sp 634 str lr,[r0],r0 635 str fp,[r0],sp 636 str r3,[fp],r0 637 .text 638 .global strp 639strp: 640 str ip,[ip],ip 641 str r59,[r59],r59 642 str r28,[r28],r28 643 str r27,[r27],r27 644 str sp,[sp],sp 645 str r22,[r36],r15 646 str r44,[r13],r47 647 str r19,[r48],sp 648 .text 649 .global strd16 650strd16: 651 str ip,[ip,0] 652 str r3,[r3,7] 653 str r0,[r0,4] 654 str fp,[fp,3] 655 str sp,[sp,1] 656 str r3,[fp,3] 657 str sp,[ip,6] 658 str r1,[lr,3] 659 .text 660 .global strd 661strd: 662 str ip,[ip,0] 663 str r59,[r59,2047] 664 str r28,[r28,1024] 665 str r27,[r27,1023] 666 str sp,[sp,1] 667 str r45,[r44,74] 668 str r58,[r50,370] 669 str r40,[r3,626] 670 .text 671 .global strdx16 672strdx16: 673 strd ip,[ip,ip] 674 strd r2,[r3,r3] 675 strd r0,[r0,r0] 676 strd r16,[fp,fp] 677 strd r18,[sp,sp] 678 strd ip,[r3,r1] 679 strd r2,[lr,fp] 680 strd ip,[r2,r2] 681 .text 682 .global strdx 683strdx: 684 strd ip,[ip,ip] 685 strd r58,[r59,r59] 686 strd r28,[r28,r28] 687 strd r26,[r27,r27] 688 strd r14,[sp,sp] 689 strd r38,[r53,lr] 690 strd r24,[r19,r43] 691 strd r12,[r10,r30] 692 .text 693 .global strdp16 694strdp16: 695 strd ip,[ip],ip 696 strd r2,[r3],r3 697 strd r0,[r0],r0 698 strd r6,[fp],fp 699 strd r4,[sp],sp 700 strd r2,[r3],r0 701 strd r2,[r0],r1 702 strd r2,[lr],r1 703 .text 704 .global strdp 705strdp: 706 strd ip,[ip],ip 707 strd r58,[r59],r59 708 strd r28,[r28],r28 709 strd r26,[r27],r27 710 strd r22,[sp],sp 711 strd r6,[r10],r44 712 strd r10,[r43],r5 713 strd r46,[r17],lr 714 .text 715 .global strdd16 716strdd16: 717 strd r0,[ip,0] 718 strd r2,[r3,7] 719 strd r0,[r0,4] 720 strd r2,[fp,3] 721 strd r4,[sp,1] 722 strd r2,[r2,5] 723 strd r6,[r3,7] 724 strd r6,[r1,2] 725 .text 726 .global strdd 727strdd: 728 strd ip,[ip,0] 729 strd r58,[r59,2047] 730 strd r28,[r28,1024] 731 strd r26,[r27,1023] 732 strd r14,[sp,1] 733 strd r28,[r52,719] 734 strd r40,[r53,1994] 735 strd r44,[r57,494] 736 .text 737 .global mov16EQ 738mov16EQ: 739 moveq ip,ip 740 moveq r3,r3 741 moveq r0,r0 742 moveq fp,fp 743 moveq sp,sp 744 moveq ip,r2 745 moveq r2,fp 746 moveq fp,sp 747 .text 748 .global movEQ 749movEQ: 750 moveq ip,ip 751 moveq r59,r59 752 moveq r28,r28 753 moveq r27,r27 754 moveq sp,sp 755 moveq r32,r30 756 moveq r43,r39 757 moveq r25,r33 758 .text 759 .global mov16NE 760mov16NE: 761 movne ip,ip 762 movne r3,r3 763 movne r0,r0 764 movne fp,fp 765 movne sp,sp 766 movne r3,r3 767 movne r0,fp 768 movne fp,fp 769 .text 770 .global movNE 771movNE: 772 movne ip,ip 773 movne r59,r59 774 movne r28,r28 775 movne r27,r27 776 movne sp,sp 777 movne r4,r3 778 movne r28,fp 779 movne r23,r39 780 .text 781 .global mov16GT 782mov16GT: 783 movgt ip,ip 784 movgt r3,r3 785 movgt r0,r0 786 movgt fp,fp 787 movgt sp,sp 788 movgt r1,r3 789 movgt lr,r3 790 movgt r1,ip 791 .text 792 .global movGT 793movGT: 794 movgt ip,ip 795 movgt r59,r59 796 movgt r28,r28 797 movgt r27,r27 798 movgt sp,sp 799 movgt r1,r21 800 movgt r13,r3 801 movgt r28,r43 802 .text 803 .global mov16GTU 804mov16GTU: 805 movgtu ip,ip 806 movgtu r3,r3 807 movgtu r0,r0 808 movgtu fp,fp 809 movgtu sp,sp 810 movgtu ip,lr 811 movgtu sp,ip 812 movgtu ip,sp 813 .text 814 .global movGTU 815movGTU: 816 movgtu ip,ip 817 movgtu r59,r59 818 movgtu r28,r28 819 movgtu r27,r27 820 movgtu sp,sp 821 movgtu r34,r33 822 movgtu r17,r48 823 movgtu r35,r24 824 .text 825 .global mov16GTE 826mov16GTE: 827 movgte ip,ip 828 movgte r3,r3 829 movgte r0,r0 830 movgte fp,fp 831 movgte sp,sp 832 movgte r0,r0 833 movgte r2,sp 834 movgte lr,r2 835 .text 836 .global movGTE 837movGTE: 838 movgte ip,ip 839 movgte r59,r59 840 movgte r28,r28 841 movgte r27,r27 842 movgte sp,sp 843 movgte ip,r59 844 movgte r37,r42 845 movgte r44,r26 846 .text 847 .global mov16GTEU 848mov16GTEU: 849 movgteu ip,ip 850 movgteu r3,r3 851 movgteu r0,r0 852 movgteu fp,fp 853 movgteu sp,sp 854 movgteu lr,ip 855 movgteu sp,r1 856 movgteu ip,lr 857 .text 858 .global movGTEU 859movGTEU: 860 movgteu ip,ip 861 movgteu r59,r59 862 movgteu r28,r28 863 movgteu r27,r27 864 movgteu sp,sp 865 movgteu r58,r47 866 movgteu r56,r5 867 movgteu r20,r52 868 .text 869 .global mov16LT 870mov16LT: 871 movlt ip,ip 872 movlt r3,r3 873 movlt r0,r0 874 movlt fp,fp 875 movlt sp,sp 876 movlt r3,r3 877 movlt r2,r2 878 movlt ip,lr 879 .text 880 .global movLT 881movLT: 882 movlt ip,ip 883 movlt r59,r59 884 movlt r28,r28 885 movlt r27,r27 886 movlt sp,sp 887 movlt r52,r12 888 movlt r57,r22 889 movlt r8,r7 890 .text 891 .global mov16LTU 892mov16LTU: 893 movltu ip,ip 894 movltu r3,r3 895 movltu r0,r0 896 movltu fp,fp 897 movltu sp,sp 898 movltu ip,r2 899 movltu sp,ip 900 movltu r1,r0 901 .text 902 .global movLTU 903movLTU: 904 movltu ip,ip 905 movltu r59,r59 906 movltu r28,r28 907 movltu r27,r27 908 movltu sp,sp 909 movltu r13,r31 910 movltu r43,ip 911 movltu r7,r56 912 .text 913 .global mov16LTE 914mov16LTE: 915 movlte ip,ip 916 movlte r3,r3 917 movlte r0,r0 918 movlte fp,fp 919 movlte sp,sp 920 movlte r0,r3 921 movlte r3,ip 922 movlte r3,lr 923 .text 924 .global movLTE 925movLTE: 926 movlte ip,ip 927 movlte r59,r59 928 movlte r28,r28 929 movlte r27,r27 930 movlte sp,sp 931 movlte r30,r27 932 movlte r35,r52 933 movlte r15,r53 934 .text 935 .global mov16LTEU 936mov16LTEU: 937 movlteu ip,ip 938 movlteu r3,r3 939 movlteu r0,r0 940 movlteu fp,fp 941 movlteu sp,sp 942 movlteu ip,lr 943 movlteu r2,r2 944 movlteu r2,fp 945 .text 946 .global movLTEU 947movLTEU: 948 movlteu ip,ip 949 movlteu r59,r59 950 movlteu r28,r28 951 movlteu r27,r27 952 movlteu sp,sp 953 movlteu r31,r36 954 movlteu r24,r50 955 movlteu r52,r54 956 .text 957 .global mov16B 958mov16B: 959 mov ip,ip 960 mov r3,r3 961 mov r0,r0 962 mov fp,fp 963 mov sp,sp 964 mov ip,r1 965 mov ip,r0 966 mov r0,ip 967 .text 968 .global movB 969movB: 970 mov ip,ip 971 mov r59,r59 972 mov r28,r28 973 mov r27,r27 974 mov sp,sp 975 mov r1,r59 976 mov r28,r12 977 mov r5,r42 978 .text 979 .global mov16BEQ 980mov16BEQ: 981 movbeq ip,ip 982 movbeq r3,r3 983 movbeq r0,r0 984 movbeq fp,fp 985 movbeq sp,sp 986 movbeq lr,r2 987 movbeq fp,r2 988 movbeq ip,r1 989 .text 990 .global movBEQ 991movBEQ: 992 movbeq ip,ip 993 movbeq r59,r59 994 movbeq r28,r28 995 movbeq r27,r27 996 movbeq sp,sp 997 movbeq r29,r16 998 movbeq r18,r46 999 movbeq lr,r1 1000 .text 1001 .global mov16BNE 1002mov16BNE: 1003 movbne ip,ip 1004 movbne r3,r3 1005 movbne r0,r0 1006 movbne fp,fp 1007 movbne sp,sp 1008 movbne r1,r2 1009 movbne ip,r1 1010 movbne ip,r3 1011 .text 1012 .global movBNE 1013movBNE: 1014 movbne ip,ip 1015 movbne r59,r59 1016 movbne r28,r28 1017 movbne r27,r27 1018 movbne sp,sp 1019 movbne r15,r7 1020 movbne r24,r43 1021 movbne r23,r52 1022 .text 1023 .global mov16BLT 1024mov16BLT: 1025 movblt ip,ip 1026 movblt r3,r3 1027 movblt r0,r0 1028 movblt fp,fp 1029 movblt sp,sp 1030 movblt sp,lr 1031 movblt ip,lr 1032 movblt lr,sp 1033 .text 1034 .global movBLT 1035movBLT: 1036 movblt ip,ip 1037 movblt r59,r59 1038 movblt r28,r28 1039 movblt r27,r27 1040 movblt sp,sp 1041 movblt r52,r44 1042 movblt r57,r35 1043 movblt r53,r33 1044 .text 1045 .global mov16BLTE 1046mov16BLTE: 1047 movblte ip,ip 1048 movblte r3,r3 1049 movblte r0,r0 1050 movblte fp,fp 1051 movblte sp,sp 1052 movblte sp,ip 1053 movblte r0,fp 1054 movblte r0,sp 1055 .text 1056 .global movBLTE 1057movBLTE: 1058 movblte ip,ip 1059 movblte r59,r59 1060 movblte r28,r28 1061 movblte r27,r27 1062 movblte sp,sp 1063 movblte r58,r44 1064 movblte r35,r22 1065 movblte r8,r2 1066 .text 1067 .global movts16 1068movts16: 1069 movts config,ip 1070 movts ipend,r3 1071 movts iret,r0 1072 movts debug,fp 1073 movts status,sp 1074 movts status,fp 1075 movts pc,fp 1076 movts imask,r0 1077 .text 1078 .global movts 1079movts: 1080 movts config,ip 1081 movts ipend,r59 1082 movts iret,r28 1083 movts debug,r27 1084 movts status,sp 1085 movts debug,r50 1086 movts ipend,r33 1087 movts status,ip 1088 .text 1089 .global movfs16 1090movfs16: 1091 movfs ip,config 1092 movfs r3,ipend 1093 movfs r0,iret 1094 movfs fp,debug 1095 movfs sp,status 1096 movfs r1,iret 1097 movfs r2,status 1098 movfs lr,debug 1099 .text 1100 .global movfs 1101movfs: 1102 movfs ip,config 1103 movfs r59,ipend 1104 movfs r28,iret 1105 movfs r27,debug 1106 movfs sp,status 1107 movfs r13,debug 1108 movfs r15,status 1109 movfs r16,imask 1110 .text 1111 .global nop 1112nop: 1113 nop 1114 .text 1115 .global idle 1116idle: 1117 idle 1118 .text 1119 .global bkpt 1120bkpt: 1121 bkpt 1122 .text 1123 .global rti 1124rti: 1125 rti 1126 .text 1127 .global trap16 1128trap16: 1129 trap 0 1130 trap 7 1131 trap 4 1132 trap 3 1133 trap 1 1134 trap 6 1135 trap 3 1136 trap 5 1137 .text 1138 .global add16 1139add16: 1140 add ip,ip,ip 1141 add r3,r3,r3 1142 add r0,r0,r0 1143 add fp,fp,fp 1144 add sp,sp,sp 1145 add sp,r2,lr 1146 add r0,r2,r1 1147 add ip,fp,fp 1148 .text 1149 .global add 1150add: 1151 add ip,ip,ip 1152 add r59,r59,r59 1153 add r28,r28,r28 1154 add r27,r27,r27 1155 add sp,sp,sp 1156 add r56,r10,r16 1157 add r36,r25,r34 1158 add r2,r49,r17 1159 .text 1160 .global sub16 1161sub16: 1162 sub ip,ip,ip 1163 sub r3,r3,r3 1164 sub r0,r0,r0 1165 sub fp,fp,fp 1166 sub sp,sp,sp 1167 sub r2,ip,lr 1168 sub lr,lr,r0 1169 sub r3,r3,r3 1170 .text 1171 .global sub 1172sub: 1173 sub ip,ip,ip 1174 sub r59,r59,r59 1175 sub r28,r28,r28 1176 sub r27,r27,r27 1177 sub sp,sp,sp 1178 sub ip,lr,r20 1179 sub r48,r22,r47 1180 sub r19,r48,r13 1181 .text 1182 .global and16 1183and16: 1184 and ip,ip,ip 1185 and r3,r3,r3 1186 and r0,r0,r0 1187 and fp,fp,fp 1188 and sp,sp,sp 1189 and fp,sp,r3 1190 and r3,r3,r3 1191 and ip,sp,sp 1192 .text 1193 .global and 1194and: 1195 and ip,ip,ip 1196 and r59,r59,r59 1197 and r28,r28,r28 1198 and r27,r27,r27 1199 and sp,sp,sp 1200 and r52,ip,r46 1201 and r44,r40,r44 1202 and r24,r58,r31 1203 .text 1204 .global orr16 1205orr16: 1206 orr ip,ip,ip 1207 orr r3,r3,r3 1208 orr r0,r0,r0 1209 orr fp,fp,fp 1210 orr sp,sp,sp 1211 orr lr,r1,sp 1212 orr r3,lr,lr 1213 orr r2,r3,r2 1214 .text 1215 .global orr 1216orr: 1217 orr ip,ip,ip 1218 orr r59,r59,r59 1219 orr r28,r28,r28 1220 orr r27,r27,r27 1221 orr sp,sp,sp 1222 orr r52,r5,r59 1223 orr r15,r32,r43 1224 orr r56,r29,r44 1225 .text 1226 .global eor16 1227eor16: 1228 eor ip,ip,ip 1229 eor r3,r3,r3 1230 eor r0,r0,r0 1231 eor fp,fp,fp 1232 eor sp,sp,sp 1233 eor ip,r3,r2 1234 eor r3,sp,r2 1235 eor fp,sp,r2 1236 .text 1237 .global eor 1238eor: 1239 eor ip,ip,ip 1240 eor r59,r59,r59 1241 eor r28,r28,r28 1242 eor r27,r27,r27 1243 eor sp,sp,sp 1244 eor r17,r56,r29 1245 eor sp,r41,r27 1246 eor r11,r10,r43 1247 .text 1248 .global asr16 1249asr16: 1250 asr ip,ip,ip 1251 asr r3,r3,r3 1252 asr r0,r0,r0 1253 asr fp,fp,fp 1254 asr sp,sp,sp 1255 asr r3,r0,r3 1256 asr r3,r1,lr 1257 asr r0,fp,sp 1258 .text 1259 .global asr 1260asr: 1261 asr ip,ip,ip 1262 asr r59,r59,r59 1263 asr r28,r28,r28 1264 asr r27,r27,r27 1265 asr sp,sp,sp 1266 asr r34,r9,r25 1267 asr r51,r17,r33 1268 asr ip,r7,r11 1269 .text 1270 .global lsr16 1271lsr16: 1272 lsr ip,ip,ip 1273 lsr r3,r3,r3 1274 lsr r0,r0,r0 1275 lsr fp,fp,fp 1276 lsr sp,sp,sp 1277 lsr sp,r3,fp 1278 lsr fp,r1,lr 1279 lsr lr,r2,r2 1280 .text 1281 .global lsr 1282lsr: 1283 lsr ip,ip,ip 1284 lsr r59,r59,r59 1285 lsr r28,r28,r28 1286 lsr r27,r27,r27 1287 lsr sp,sp,sp 1288 lsr r6,r25,r19 1289 lsr r12,r54,r32 1290 lsr r13,sp,ip 1291 .text 1292 .global lsl16 1293lsl16: 1294 lsl ip,ip,ip 1295 lsl r3,r3,r3 1296 lsl r0,r0,r0 1297 lsl fp,fp,fp 1298 lsl sp,sp,sp 1299 lsl ip,ip,ip 1300 lsl lr,r1,ip 1301 lsl lr,sp,r3 1302 .text 1303 .global lsl 1304lsl: 1305 lsl ip,ip,ip 1306 lsl r59,r59,r59 1307 lsl r28,r28,r28 1308 lsl r27,r27,r27 1309 lsl sp,sp,sp 1310 lsl r36,r43,r15 1311 lsl r34,r39,r37 1312 lsl r23,r33,r29 1313 .text 1314 .global addi16 1315addi16: 1316 add ip,ip,0 1317 add r3,r3,7 1318 add r0,r0,4 1319 add fp,fp,3 1320 add sp,sp,1 1321 add r3,r1,1 1322 add r1,fp,3 1323 add r0,fp,7 1324 .text 1325 .global addi 1326addi: 1327 add ip,ip,0 1328 add r59,r59,1023 1329 add r28,r28,047 1330 add r27,r27,1023 1331 add sp,sp,1 1332 add r49,r28,165 1333 add r31,r2,623 1334 add r16,r9,945 1335 .text 1336 .global subi16 1337subi16: 1338 sub ip,ip,0 1339 sub r3,r3,7 1340 sub r0,r0,4 1341 sub fp,fp,3 1342 sub sp,sp,1 1343 sub ip,r3,2 1344 sub lr,r3,4 1345 sub ip,r2,1 1346 .text 1347 .global subi 1348subi: 1349 sub ip,ip,0 1350 sub r59,r59,-2047 1351 sub r28,r28,1023 1352 sub r27,r27,1022 1353 sub sp,sp,1 1354 sub r51,r6,836 1355 sub r47,r40,772 1356 sub r55,r4,488 1357 .text 1358 .global lsri16 1359lsri16: 1360 lsr ip,ip,0 1361 lsr r3,r3,31 1362 lsr r0,r0,16 1363 lsr fp,fp,15 1364 lsr sp,sp,1 1365 lsr r0,r3,6 1366 lsr r1,r2,8 1367 lsr fp,lr,14 1368 .text 1369 .global lsri32 1370lsri32: 1371 lsr ip,ip,0 1372 lsr r59,r59,31 1373 lsr r28,r28,16 1374 lsr r27,r27,15 1375 lsr sp,sp,1 1376 lsr r30,r48,19 1377 lsr r43,r7,23 1378 lsr r28,r2,28 1379 .text 1380 .global lsli16 1381lsli16: 1382 lsl ip,ip,0 1383 lsl r3,r3,31 1384 lsl r0,r0,16 1385 lsl fp,fp,15 1386 lsl sp,sp,1 1387 lsl r2,r3,11 1388 lsl lr,r2,6 1389 lsl r0,r2,16 1390 .text 1391 .global lsli32 1392lsli32: 1393 lsl ip,ip,0 1394 lsl r59,r59,31 1395 lsl r28,r28,16 1396 lsl r27,r27,15 1397 lsl sp,sp,1 1398 lsl r56,r51,19 1399 lsl r17,r39,19 1400 lsl r2,r12,12 1401 .text 1402 .global asri16 1403asri16: 1404 asr ip,ip,0 1405 asr r3,r3,31 1406 asr r0,r0,16 1407 asr fp,fp,15 1408 asr sp,sp,1 1409 asr lr,ip,21 1410 asr r3,r3,22 1411 asr r3,r3,9 1412 .text 1413 .global asri32 1414asri32: 1415 asr ip,ip,0 1416 asr r59,r59,31 1417 asr r28,r28,16 1418 asr r27,r27,15 1419 asr sp,sp,1 1420 asr r52,r46,17 1421 asr r23,r56,22 1422 asr r21,r46,28 1423 .text 1424 .global mov8 1425mov8: 1426 mov ip,0 1427 mov r3,255 1428 mov r0,128 1429 mov fp,127 1430 mov sp,1 1431 mov lr,91 1432 mov r0,77 1433 mov fp,10 1434 .text 1435 .global mov16 1436mov16: 1437 mov ip,0 1438 mov r59,65535 1439 mov r28,32768 1440 mov r27,32767 1441 mov sp,1 1442 mov r53,61169 1443 mov r18,52207 1444 mov r16,36386 1445 .text 1446 .global faddf16 1447faddf16: 1448 fadd ip,ip,ip 1449 fadd r3,r3,r3 1450 fadd r0,r0,r0 1451 fadd fp,fp,fp 1452 fadd sp,sp,sp 1453 fadd sp,ip,r2 1454 fadd sp,r2,r2 1455 fadd sp,lr,fp 1456 .text 1457 .global faddf32 1458faddf32: 1459 fadd ip,ip,ip 1460 fadd r59,r59,r59 1461 fadd r28,r28,r28 1462 fadd r27,r27,r27 1463 fadd sp,sp,sp 1464 fadd r13,r29,r39 1465 fadd r32,r40,r3 1466 fadd r40,r29,lr 1467 .text 1468 .global fsubf16 1469fsubf16: 1470 fsub ip,ip,ip 1471 fsub r3,r3,r3 1472 fsub r0,r0,r0 1473 fsub fp,fp,fp 1474 fsub sp,sp,sp 1475 fsub r2,lr,sp 1476 fsub r3,r1,ip 1477 fsub r3,ip,r2 1478 .text 1479 .global fsubf32 1480fsubf32: 1481 fsub ip,ip,ip 1482 fsub r59,r59,r59 1483 fsub r28,r28,r28 1484 fsub r27,r27,r27 1485 fsub sp,sp,sp 1486 fsub r1,r56,r11 1487 fsub r3,r22,r15 1488 fsub r6,r48,r45 1489 .text 1490 .global fmulf16 1491fmulf16: 1492 fmul ip,ip,ip 1493 fmul r3,r3,r3 1494 fmul r0,r0,r0 1495 fmul fp,fp,fp 1496 fmul sp,sp,sp 1497 fmul r3,ip,fp 1498 fmul lr,r1,r2 1499 fmul sp,lr,lr 1500 .text 1501 .global fmulf32 1502fmulf32: 1503 fmul ip,ip,ip 1504 fmul r59,r59,r59 1505 fmul r28,r28,r28 1506 fmul r27,r27,r27 1507 fmul sp,sp,sp 1508 fmul r58,r23,r51 1509 fmul r22,r2,r47 1510 fmul r46,r14,r10 1511 .text 1512 .global fmaddf16 1513fmaddf16: 1514 fmadd ip,ip,ip 1515 fmadd r3,r3,r3 1516 fmadd r0,r0,r0 1517 fmadd fp,fp,fp 1518 fmadd sp,sp,sp 1519 fmadd sp,r1,r3 1520 fmadd r3,r3,r0 1521 fmadd r2,ip,ip 1522 .text 1523 .global fmaddf32 1524fmaddf32: 1525 fmadd ip,ip,ip 1526 fmadd r59,r59,r59 1527 fmadd r28,r28,r28 1528 fmadd r27,r27,r27 1529 fmadd sp,sp,sp 1530 fmadd r28,r54,r32 1531 fmadd r12,r2,fp 1532 fmadd fp,r40,r22 1533 .text 1534 .global fmsubf16 1535fmsubf16: 1536 fmsub ip,ip,ip 1537 fmsub r3,r3,r3 1538 fmsub r0,r0,r0 1539 fmsub fp,fp,fp 1540 fmsub sp,sp,sp 1541 fmsub sp,fp,r1 1542 fmsub r1,fp,sp 1543 fmsub r0,r3,r0 1544 .text 1545 .global fmsubf32 1546fmsubf32: 1547 fmsub ip,ip,ip 1548 fmsub r59,r59,r59 1549 fmsub r28,r28,r28 1550 fmsub r27,r27,r27 1551 fmsub sp,sp,sp 1552 fmsub r42,r20,r9 1553 fmsub r22,r24,r42 1554 fmsub r15,r22,r19 1555 1556;; add some negative displacement ld/store 1557 ldr r1,[r2,-12] 1558 strh r22,[r30,-2047] 1559 ldrd r12,[r14,2047] 1560 1561;; add bitr 1562 bitr r1,r0 1563 bitr r31,r15 1564