1# frv testcase for cldubu @($GRi,$GRj),$GRk,$CCi,$cond 2# mach: all 3 4 .include "testutils.inc" 5 6 start 7 8 .global cldubu 9cldubu: 10 set_spr_immed 0x1b1b,cccr 11 set_gr_gr sp,gr20 12 13 set_mem_limmed 0xdead,0xbeef,sp 14 set_gr_limmed 0xbeef,0xdead,gr8 15 16 set_gr_gr sp,gr9 17 set_gr_immed 0,gr7 18 cldubu @(sp,gr7),gr8,cc0,1 19 test_gr_limmed 0x0000,0x00de,gr8 20 test_gr_gr sp,gr9 21 22 inc_gr_immed 1,gr9 23 set_gr_immed 1,gr7 24 cldubu @(sp,gr7),gr8,cc0,1 25 test_gr_limmed 0x0000,0x00ad,gr8 26 test_gr_gr sp,gr9 27 28 inc_gr_immed 2,gr9 29 inc_gr_immed -1,sp 30 set_mem_limmed 0xffff,0xff00,sp 31 inc_gr_immed 4,sp 32 set_gr_immed -1,gr7 33 cldubu @(sp,gr7),gr8,cc4,1 34 test_gr_limmed 0x0000,0x0000,gr8 35 36 set_gr_gr gr20,sp 37 set_mem_limmed 0xdead,0xbeef,sp 38 set_gr_limmed 0xbeef,0xdead,gr8 39 40 set_gr_gr sp,gr9 41 set_gr_immed 0,gr7 42 cldubu @(sp,gr7),gr8,cc0,0 43 test_gr_limmed 0xbeef,0xdead,gr8 44 test_gr_gr sp,gr9 45 46 set_gr_immed 1,gr7 47 cldubu @(sp,gr7),gr8,cc0,0 48 test_gr_limmed 0xbeef,0xdead,gr8 49 test_gr_gr sp,gr9 50 51 inc_gr_immed 4,gr9 52 set_mem_limmed 0xffff,0xff00,sp 53 inc_gr_immed 4,sp 54 set_gr_immed -1,gr7 55 cldubu @(sp,gr7),gr8,cc4,0 56 test_gr_limmed 0xbeef,0xdead,gr8 57 58 set_gr_gr gr20,sp 59 set_mem_limmed 0xdead,0xbeef,sp 60 set_gr_limmed 0xbeef,0xdead,gr8 61 62 set_gr_gr sp,gr9 63 set_gr_immed 0,gr7 64 cldubu @(sp,gr7),gr8,cc1,0 65 test_gr_limmed 0x0000,0x00de,gr8 66 test_gr_gr sp,gr9 67 68 inc_gr_immed 1,gr9 69 set_gr_immed 1,gr7 70 cldubu @(sp,gr7),gr8,cc1,0 71 test_gr_limmed 0x0000,0x00ad,gr8 72 test_gr_gr sp,gr9 73 74 inc_gr_immed 2,gr9 75 inc_gr_immed -1,sp 76 set_mem_limmed 0xffff,0xff00,sp 77 inc_gr_immed 4,sp 78 set_gr_immed -1,gr7 79 cldubu @(sp,gr7),gr8,cc5,0 80 test_gr_limmed 0x0000,0x0000,gr8 81 82 set_gr_gr gr20,sp 83 set_mem_limmed 0xdead,0xbeef,sp 84 set_gr_limmed 0xbeef,0xdead,gr8 85 86 set_gr_gr sp,gr9 87 set_gr_immed 0,gr7 88 cldubu @(sp,gr7),gr8,cc1,1 89 test_gr_limmed 0xbeef,0xdead,gr8 90 test_gr_gr sp,gr9 91 92 set_gr_immed 1,gr7 93 cldubu @(sp,gr7),gr8,cc1,1 94 test_gr_limmed 0xbeef,0xdead,gr8 95 test_gr_gr sp,gr9 96 97 inc_gr_immed 4,gr9 98 set_mem_limmed 0xffff,0xff00,sp 99 inc_gr_immed 4,sp 100 set_gr_immed -1,gr7 101 cldubu @(sp,gr7),gr8,cc5,1 102 test_gr_limmed 0xbeef,0xdead,gr8 103 104 set_gr_gr gr20,sp 105 set_mem_limmed 0xdead,0xbeef,sp 106 set_gr_limmed 0xbeef,0xdead,gr8 107 108 set_gr_gr sp,gr9 109 set_gr_immed 0,gr7 110 cldubu @(sp,gr7),gr8,cc2,0 111 test_gr_limmed 0xbeef,0xdead,gr8 112 test_gr_gr sp,gr9 113 114 set_gr_immed 1,gr7 115 cldubu @(sp,gr7),gr8,cc2,1 116 test_gr_limmed 0xbeef,0xdead,gr8 117 test_gr_gr sp,gr9 118 119 inc_gr_immed 4,gr9 120 set_mem_limmed 0xffff,0xff00,sp 121 inc_gr_immed 4,sp 122 set_gr_immed -1,gr7 123 cldubu @(sp,gr7),gr8,cc6,0 124 test_gr_limmed 0xbeef,0xdead,gr8 125 126 set_gr_gr gr20,sp 127 set_mem_limmed 0xdead,0xbeef,sp 128 set_gr_limmed 0xbeef,0xdead,gr8 129 130 set_gr_gr sp,gr9 131 set_gr_immed 0,gr7 132 cldubu @(sp,gr7),gr8,cc3,1 133 test_gr_limmed 0xbeef,0xdead,gr8 134 test_gr_gr sp,gr9 135 136 set_gr_immed 1,gr7 137 cldubu @(sp,gr7),gr8,cc3,0 138 test_gr_limmed 0xbeef,0xdead,gr8 139 test_gr_gr sp,gr9 140 141 inc_gr_immed 4,gr9 142 set_mem_limmed 0xffff,0xff00,sp 143 inc_gr_immed 4,sp 144 set_gr_immed -1,gr7 145 cldubu @(sp,gr7),gr8,cc7,1 146 test_gr_limmed 0xbeef,0xdead,gr8 147 148 set_gr_gr gr20,sp 149 set_mem_limmed 0xdead,0xbeef,sp 150 set_gr_gr sp,gr8 151 set_gr_immed 1,gr7 152 cldubu @(gr8,gr7),gr8,cc0,1 153 test_gr_limmed 0x0000,0x00ad,gr8 154 155 pass 156