check_lsr.s (3308B)
1# mach: crisv0 crisv3 crisv8 crisv10 crisv32 2# output: ffffffff\n1\n1\n1ffff\n5a67f\n1\n0\n0\n3699fc67\nffffffff\n1\n1\n1ffff\n5a67f\nda670000\nda670000\nda670000\nda673c67\nffffffff\nffff7fff\n1\nffff0000\nffff0001\n5a67000f\nda67f100\nda67f100\nda67f100\nda67f127\nffffffff\nffffff7f\n1\nffffff00\nffffff00\nffffff01\n5a67f100\n5a67f109\n 3 4 .include "testutils.inc" 5 start 6 moveq -1,r3 7 lsrq 0,r3 8 test_move_cc 1 0 0 0 9 checkr3 ffffffff 10 11 moveq 2,r3 12 lsrq 1,r3 13 test_move_cc 0 0 0 0 14 checkr3 1 15 16 moveq -1,r3 17 lsrq 31,r3 18 test_move_cc 0 0 0 0 19 checkr3 1 20 21 moveq -1,r3 22 lsrq 15,r3 23 test_move_cc 0 0 0 0 24 checkr3 1ffff 25 26 move.d 0x5a67f19f,r3 27 lsrq 12,r3 28 test_move_cc 0 0 0 0 29 checkr3 5a67f 30 31 move.d 0xda67f19f,r3 32 move.d 31,r4 33 lsr.d r4,r3 34 test_move_cc 0 0 0 0 35 checkr3 1 36 37 move.d 0xda67f19f,r3 38 move.d 32,r4 39 lsr.d r4,r3 40 test_move_cc 0 1 0 0 41 checkr3 0 42 43 move.d 0xda67f19f,r3 44 move.d 33,r4 45 lsr.d r4,r3 46 test_move_cc 0 1 0 0 47 checkr3 0 48 49 move.d 0xda67f19f,r3 50 move.d 66,r4 51 lsr.d r4,r3 52 test_move_cc 0 0 0 0 53 checkr3 3699fc67 54 55 moveq -1,r3 56 moveq 0,r4 57 lsr.d r4,r3 58 test_move_cc 1 0 0 0 59 checkr3 ffffffff 60 61 moveq 2,r3 62 moveq 1,r4 63 lsr.d r4,r3 64 test_move_cc 0 0 0 0 65 checkr3 1 66 67 moveq -1,r3 68 moveq 31,r4 69 lsr.d r4,r3 70 test_move_cc 0 0 0 0 71 checkr3 1 72 73 moveq -1,r3 74 moveq 15,r4 75 lsr.d r4,r3 76 test_move_cc 0 0 0 0 77 checkr3 1ffff 78 79 move.d 0x5a67f19f,r3 80 moveq 12,r4 81 lsr.d r4,r3 82 test_move_cc 0 0 0 0 83 checkr3 5a67f 84 85 move.d 0xda67f19f,r3 86 move.d 31,r4 87 lsr.w r4,r3 88 test_move_cc 0 1 0 0 89 checkr3 da670000 90 91 move.d 0xda67f19f,r3 92 move.d 32,r4 93 lsr.w r4,r3 94 test_move_cc 0 1 0 0 95 checkr3 da670000 96 97 move.d 0xda67f19f,r3 98 move.d 33,r4 99 lsr.w r4,r3 100 test_move_cc 0 1 0 0 101 checkr3 da670000 102 103 move.d 0xda67f19f,r3 104 move.d 66,r4 105 lsr.w r4,r3 106 test_move_cc 0 0 0 0 107 checkr3 da673c67 108 109 moveq -1,r3 110 moveq 0,r4 111 lsr.w r4,r3 112 test_move_cc 1 0 0 0 113 checkr3 ffffffff 114 115 moveq -1,r3 116 moveq 1,r4 117 lsr.w r4,r3 118 test_move_cc 0 0 0 0 119 checkr3 ffff7fff 120 121 moveq 2,r3 122 moveq 1,r4 123 lsr.w r4,r3 124 test_move_cc 0 0 0 0 125 checkr3 1 126 127;; FIXME: this was wrong. Z should be set. 128 moveq -1,r3 129 moveq 31,r4 130 lsr.w r4,r3 131 test_move_cc 0 1 0 0 132 checkr3 ffff0000 133 134 moveq -1,r3 135 moveq 15,r4 136 lsr.w r4,r3 137 test_move_cc 0 0 0 0 138 checkr3 ffff0001 139 140 move.d 0x5a67f19f,r3 141 moveq 12,r4 142 lsr.w r4,r3 143 test_move_cc 0 0 0 0 144 checkr3 5a67000f 145 146 move.d 0xda67f19f,r3 147 move.d 31,r4 148 lsr.b r4,r3 149 test_move_cc 0 1 0 0 150 checkr3 da67f100 151 152 move.d 0xda67f19f,r3 153 move.d 32,r4 154 lsr.b r4,r3 155 test_move_cc 0 1 0 0 156 checkr3 da67f100 157 158 move.d 0xda67f19f,r3 159 move.d 33,r4 160 lsr.b r4,r3 161 test_move_cc 0 1 0 0 162 checkr3 da67f100 163 164 move.d 0xda67f19f,r3 165 move.d 66,r4 166 lsr.b r4,r3 167 test_move_cc 0 0 0 0 168 checkr3 da67f127 169 170 moveq -1,r3 171 moveq 0,r4 172 lsr.b r4,r3 173 test_move_cc 1 0 0 0 174 checkr3 ffffffff 175 176 moveq -1,r3 177 moveq 1,r4 178 lsr.b r4,r3 179 test_move_cc 0 0 0 0 180 checkr3 ffffff7f 181 182 moveq 2,r3 183 moveq 1,r4 184 lsr.b r4,r3 185 test_move_cc 0 0 0 0 186 checkr3 1 187 188 moveq -1,r3 189 moveq 31,r4 190 lsr.b r4,r3 191 test_move_cc 0 1 0 0 192 checkr3 ffffff00 193 194 moveq -1,r3 195 moveq 15,r4 196 lsr.b r4,r3 197 test_move_cc 0 1 0 0 198 checkr3 ffffff00 199 200 moveq -1,r3 201 moveq 7,r4 202 lsr.b r4,r3 203 test_move_cc 0 0 0 0 204 checkr3 ffffff01 205 206 move.d 0x5a67f19f,r3 207 moveq 12,r4 208 lsr.b r4,r3 209 test_move_cc 0 1 0 0 210 checkr3 5a67f100 211 212 move.d 0x5a67f19f,r3 213 moveq 4,r4 214 lsr.b r4,r3 215 test_move_cc 0 0 0 0 216 checkr3 5a67f109 217 218 quit