1 1.1 christos # frv testcase for slass $GRi,$GRj,$GRk 2 1.1 christos # mach: fr405 fr450 3 1.1 christos 4 1.1 christos .include "../testutils.inc" 5 1.1 christos 6 1.1 christos start 7 1.1 christos 8 1.1 christos .global sll 9 1.1 christos slass0: 10 1.1 christos set_gr_immed 0,gr7 ; Shift by 0 11 1.1 christos set_gr_immed 2,gr8 12 1.1 christos slass gr8,gr7,gr6 13 1.1 christos test_gr_immed 2,gr8 14 1.1 christos test_gr_immed 0,gr7 15 1.1 christos test_gr_immed 2,gr6 16 1.1 christos slass1: 17 1.1 christos set_gr_immed 1,gr7 ; Shift by 1 18 1.1 christos set_gr_immed 2,gr8 19 1.1 christos slass gr8,gr7,gr6 20 1.1 christos test_gr_immed 2,gr8 21 1.1 christos test_gr_immed 1,gr7 22 1.1 christos test_gr_immed 4,gr6 23 1.1 christos 24 1.1 christos slass2: 25 1.1 christos set_gr_immed 31,gr7 ; Shift 1 by 31 26 1.1 christos set_gr_immed 1,gr8 27 1.1 christos slass gr8,gr7,gr6 28 1.1 christos test_gr_immed 1,gr8 29 1.1 christos test_gr_immed 31,gr7 30 1.1 christos test_gr_limmed 0x7fff,0xffff,gr6 31 1.1 christos 32 1.1 christos slass3: 33 1.1 christos set_gr_immed 31,gr7 ; Shift -1 by 31 34 1.1 christos set_gr_immed -1,gr8 35 1.1 christos slass gr8,gr7,gr6 36 1.1 christos test_gr_immed -1,gr8 37 1.1 christos test_gr_immed 31,gr7 38 1.1 christos test_gr_limmed 0x8000,0x0000,gr6 39 1.1 christos 40 1.1 christos slass4: 41 1.1 christos set_gr_immed 14,gr7 ; Shift 0xffff0000 by 14 42 1.1 christos set_gr_limmed 0xffff,0x0000,gr8 43 1.1 christos slass gr8,gr7,gr6 44 1.1 christos test_gr_limmed 0xffff,0x0000,gr8 45 1.1 christos test_gr_immed 14,gr7 46 1.1 christos test_gr_limmed 0xc000,0x0000,gr6 47 1.1 christos 48 1.1 christos slass5: 49 1.1 christos set_gr_immed 15,gr7 ; Shift 0xffff0000 by 15 50 1.1 christos set_gr_limmed 0xffff,0x0000,gr8 51 1.1 christos slass gr8,gr7,gr6 52 1.1 christos test_gr_limmed 0xffff,0x0000,gr8 53 1.1 christos test_gr_immed 15,gr7 54 1.1 christos test_gr_limmed 0x8000,0x0000,gr6 55 1.1 christos 56 1.1 christos slass6: 57 1.1 christos set_gr_immed 20,gr7 ; Shift 0xffff0000 by 20 58 1.1 christos set_gr_limmed 0xffff,0x0000,gr8 59 1.1 christos slass gr8,gr7,gr6 60 1.1 christos test_gr_limmed 0xffff,0x0000,gr8 61 1.1 christos test_gr_immed 20,gr7 62 1.1 christos test_gr_limmed 0x8000,0x0000,gr6 63 1.1 christos 64 1.1 christos slass7: 65 1.1 christos set_gr_immed 14,gr7 ; Shift 0x0000ffff by 14 66 1.1 christos set_gr_limmed 0x0000,0xffff,gr8 67 1.1 christos slass gr8,gr7,gr6 68 1.1 christos test_gr_limmed 0x0000,0xffff,gr8 69 1.1 christos test_gr_immed 14,gr7 70 1.1 christos test_gr_limmed 0x3fff,0xc000,gr6 71 1.1 christos 72 1.1 christos slass8: 73 1.1 christos set_gr_immed 15,gr7 ; Shift 0x0000ffff by 15 74 1.1 christos set_gr_limmed 0x0000,0xffff,gr8 75 1.1 christos slass gr8,gr7,gr6 76 1.1 christos test_gr_limmed 0x0000,0xffff,gr8 77 1.1 christos test_gr_immed 15,gr7 78 1.1 christos test_gr_limmed 0x7fff,0x8000,gr6 79 1.1 christos 80 1.1 christos slass9: 81 1.1 christos set_gr_immed 20,gr7 ; Shift 0x0000ffff by 20 82 1.1 christos set_gr_limmed 0x0000,0xffff,gr8 83 1.1 christos slass gr8,gr7,gr6 84 1.1 christos test_gr_limmed 0x0000,0xffff,gr8 85 1.1 christos test_gr_immed 20,gr7 86 1.1 christos test_gr_limmed 0x7fff,0xffff,gr6 87 1.1 christos 88 1.1 christos slass10: 89 1.1 christos set_gr_immed 30,gr7 ; Shift 1 by 30 90 1.1 christos set_gr_immed 1,gr8 91 1.1 christos slass gr8,gr7,gr6 92 1.1 christos test_gr_immed 1,gr8 93 1.1 christos test_gr_immed 30,gr7 94 1.1 christos test_gr_limmed 0x4000,0x0000,gr6 95 1.1 christos 96 1.1 christos slass11: 97 1.1 christos set_gr_immed 30,gr7 ; Shift -1 by 30 98 1.1 christos set_gr_immed -1,gr8 99 1.1 christos slass gr8,gr7,gr6 100 1.1 christos test_gr_immed -1,gr8 101 1.1 christos test_gr_immed 30,gr7 102 1.1 christos test_gr_limmed 0xc000,0000,gr6 103 1.1 christos 104 1.1 christos pass 105