qemu/tests/tcg/cris/check_asr.s
<<
>>
Prefs
   1# mach: crisv0 crisv3 crisv8 crisv10 crisv32
   2# output: ffffffff\n1\nffffffff\nffffffff\n5a67f\nffffffff\nffffffff\nffffffff\nf699fc67\nffffffff\n1\nffffffff\nffffffff\n5a67f\nda67ffff\nda67ffff\nda67ffff\nda67fc67\nffffffff\nffffffff\n1\nffffffff\nffffffff\n5a670007\nda67f1ff\nda67f1ff\nda67f1ff\nda67f1e7\nffffffff\nffffffff\n1\nffffffff\nffffffff\nffffffff\n5a67f1ff\n5a67f1f9\n0\n5a670000\n
   3
   4 .include "testutils.inc"
   5 start
   6 moveq -1,r3
   7 asrq 0,r3
   8 test_move_cc 1 0 0 0
   9 checkr3 ffffffff
  10
  11 moveq 2,r3
  12 asrq 1,r3
  13 test_move_cc 0 0 0 0
  14 checkr3 1
  15
  16 moveq -1,r3
  17 asrq 31,r3
  18 test_move_cc 1 0 0 0
  19 checkr3 ffffffff
  20
  21 moveq -1,r3
  22 asrq 15,r3
  23 test_move_cc 1 0 0 0
  24 checkr3 ffffffff
  25
  26 move.d 0x5a67f19f,r3
  27 asrq 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 asr.d r4,r3
  34 test_move_cc 1 0 0 0
  35 checkr3 ffffffff
  36
  37 move.d 0xda67f19f,r3
  38 move.d 32,r4
  39 asr.d r4,r3
  40 test_move_cc 1 0 0 0
  41 checkr3 ffffffff
  42
  43 move.d 0xda67f19f,r3
  44 move.d 33,r4
  45 asr.d r4,r3
  46 test_move_cc 1 0 0 0
  47 checkr3 ffffffff
  48
  49 move.d 0xda67f19f,r3
  50 move.d 66,r4
  51 asr.d r4,r3
  52 test_move_cc 1 0 0 0
  53 checkr3 f699fc67
  54
  55 moveq -1,r3
  56 moveq 0,r4
  57 asr.d r4,r3
  58 test_move_cc 1 0 0 0
  59 checkr3 ffffffff
  60
  61 moveq 2,r3
  62 moveq 1,r4
  63 asr.d r4,r3
  64 test_move_cc 0 0 0 0
  65 checkr3 1
  66
  67 moveq -1,r3
  68 moveq 31,r4
  69 asr.d r4,r3
  70 test_move_cc 1 0 0 0
  71 checkr3 ffffffff
  72
  73 moveq -1,r3
  74 moveq 15,r4
  75 asr.d r4,r3
  76 test_move_cc 1 0 0 0
  77 checkr3 ffffffff
  78
  79 move.d 0x5a67f19f,r3
  80 moveq 12,r4
  81 asr.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 asr.w r4,r3
  88 test_move_cc 1 0 0 0
  89 checkr3 da67ffff
  90
  91 move.d 0xda67f19f,r3
  92 move.d 32,r4
  93 asr.w r4,r3
  94 test_move_cc 1 0 0 0
  95 checkr3 da67ffff
  96
  97 move.d 0xda67f19f,r3
  98 move.d 33,r4
  99 asr.w r4,r3
 100 test_move_cc 1 0 0 0
 101 checkr3 da67ffff
 102
 103 move.d 0xda67f19f,r3
 104 move.d 66,r4
 105 asr.w r4,r3
 106 test_move_cc 1 0 0 0
 107 checkr3 da67fc67
 108
 109 moveq -1,r3
 110 moveq 0,r4
 111 asr.w r4,r3
 112 test_move_cc 1 0 0 0
 113 checkr3 ffffffff
 114
 115 moveq -1,r3
 116 moveq 1,r4
 117 asr.w r4,r3
 118 test_move_cc 1 0 0 0
 119 checkr3 ffffffff
 120
 121 moveq 2,r3
 122 moveq 1,r4
 123 asr.w r4,r3
 124 test_move_cc 0 0 0 0
 125 checkr3 1
 126
 127 moveq -1,r3
 128 moveq 31,r4
 129 asr.w r4,r3
 130 test_move_cc 1 0 0 0
 131 checkr3 ffffffff
 132
 133 moveq -1,r3
 134 moveq 15,r4
 135 asr.w r4,r3
 136 test_move_cc 1 0 0 0
 137 checkr3 ffffffff
 138
 139 move.d 0x5a67719f,r3
 140 moveq 12,r4
 141 asr.w r4,r3
 142 test_move_cc 0 0 0 0
 143 checkr3 5a670007
 144
 145 move.d 0xda67f19f,r3
 146 move.d 31,r4
 147 asr.b r4,r3
 148 test_move_cc 1 0 0 0
 149 checkr3 da67f1ff
 150
 151 move.d 0xda67f19f,r3
 152 move.d 32,r4
 153 asr.b r4,r3
 154 test_move_cc 1 0 0 0
 155 checkr3 da67f1ff
 156
 157 move.d 0xda67f19f,r3
 158 move.d 33,r4
 159 asr.b r4,r3
 160 test_move_cc 1 0 0 0
 161 checkr3 da67f1ff
 162
 163 move.d 0xda67f19f,r3
 164 move.d 66,r4
 165 asr.b r4,r3
 166 test_move_cc 1 0 0 0
 167 checkr3 da67f1e7
 168
 169 moveq -1,r3
 170 moveq 0,r4
 171 asr.b r4,r3
 172 test_move_cc 1 0 0 0
 173 checkr3 ffffffff
 174
 175 moveq -1,r3
 176 moveq 1,r4
 177 asr.b r4,r3
 178 test_move_cc 1 0 0 0
 179 checkr3 ffffffff
 180
 181 moveq 2,r3
 182 moveq 1,r4
 183 asr.b r4,r3
 184 test_move_cc 0 0 0 0
 185 checkr3 1
 186
 187 moveq -1,r3
 188 moveq 31,r4
 189 asr.b r4,r3
 190 test_move_cc 1 0 0 0
 191 checkr3 ffffffff
 192
 193 moveq -1,r3
 194 moveq 15,r4
 195 asr.b r4,r3
 196 test_move_cc 1 0 0 0
 197 checkr3 ffffffff
 198
 199 moveq -1,r3
 200 moveq 7,r4
 201 asr.b r4,r3
 202 test_move_cc 1 0 0 0
 203 checkr3 ffffffff
 204
 205; FIXME: was wrong.
 206 move.d 0x5a67f19f,r3
 207 moveq 12,r4
 208 asr.b r4,r3
 209 test_move_cc 1 0 0 0
 210 checkr3 5a67f1ff
 211
 212; FIXME: was wrong.
 213 move.d 0x5a67f19f,r3
 214 moveq 4,r4
 215 asr.b r4,r3
 216 test_move_cc 1 0 0 0
 217 checkr3 5a67f1f9
 218
 219 move.d 0x5a67f19f,r3
 220 asrq 31,r3
 221 test_move_cc 0 1 0 0
 222 checkr3 0
 223
 224 move.d 0x5a67419f,r3
 225 moveq 16,r4
 226 asr.w r4,r3
 227 test_move_cc 0 1 0 0
 228 checkr3 5a670000
 229
 230 quit
 231