1# frv testcase for cldq @($GRi,$GRj),$GRk,$CCi,$cond 2# mach: frv 3# as(frv): -mcpu=frv 4 5 .include "testutils.inc" 6 7 start 8 9 .global cldq 10cldq: 11 set_spr_immed 0x1b1b,cccr 12 13 set_mem_limmed 0xdead,0xbeef,sp 14 inc_gr_immed -4,sp 15 set_mem_limmed 0xbeef,0xdead,sp 16 inc_gr_immed -4,sp 17 set_mem_limmed 0x1234,0x5678,sp 18 inc_gr_immed -4,sp 19 set_mem_limmed 0x9abc,0xdef0,sp 20 set_gr_limmed 0xdead,0xbeef,gr8 21 set_gr_limmed 0xbeef,0xdead,gr9 22 set_gr_limmed 0x1234,0x5678,gr10 23 set_gr_limmed 0x9abc,0xdef0,gr11 24 25 set_gr_immed 0,gr7 26 cldq @(sp,gr7),gr8,cc0,1 27 test_gr_limmed 0x9abc,0xdef0,gr8 28 test_gr_limmed 0x1234,0x5678,gr9 29 test_gr_limmed 0xbeef,0xdead,gr10 30 test_gr_limmed 0xdead,0xbeef,gr11 31 32 set_gr_limmed 0xdead,0xbeef,gr8 33 set_gr_limmed 0xbeef,0xdead,gr9 34 set_gr_limmed 0x1234,0x5678,gr10 35 set_gr_limmed 0x9abc,0xdef0,gr11 36 inc_gr_immed -16,sp 37 set_gr_immed 16,gr7 38 cldq @(sp,gr7),gr8,cc0,1 39 test_gr_limmed 0x9abc,0xdef0,gr8 40 test_gr_limmed 0x1234,0x5678,gr9 41 test_gr_limmed 0xbeef,0xdead,gr10 42 test_gr_limmed 0xdead,0xbeef,gr11 43 44 set_gr_limmed 0xdead,0xbeef,gr8 45 set_gr_limmed 0xbeef,0xdead,gr9 46 set_gr_limmed 0x1234,0x5678,gr10 47 set_gr_limmed 0x9abc,0xdef0,gr11 48 inc_gr_immed 32,sp 49 set_gr_immed -16,gr7 50 cldq @(sp,gr7),gr8,cc4,1 51 test_gr_limmed 0x9abc,0xdef0,gr8 52 test_gr_limmed 0x1234,0x5678,gr9 53 test_gr_limmed 0xbeef,0xdead,gr10 54 test_gr_limmed 0xdead,0xbeef,gr11 55 56 inc_gr_immed -4,sp 57 set_mem_limmed 0xdead,0xbeef,sp 58 inc_gr_immed -4,sp 59 set_mem_limmed 0xbeef,0xdead,sp 60 inc_gr_immed -4,sp 61 set_mem_limmed 0x1234,0x5678,sp 62 inc_gr_immed -4,sp 63 set_mem_limmed 0x9abc,0xdef0,sp 64 set_gr_limmed 0xdead,0xbeef,gr8 65 set_gr_limmed 0xbeef,0xdead,gr9 66 set_gr_limmed 0x1234,0x5678,gr10 67 set_gr_limmed 0x9abc,0xdef0,gr11 68 69 set_gr_immed 0,gr7 70 cldq @(sp,gr7),gr8,cc0,0 71 test_gr_limmed 0xdead,0xbeef,gr8 72 test_gr_limmed 0xbeef,0xdead,gr9 73 test_gr_limmed 0x1234,0x5678,gr10 74 test_gr_limmed 0x9abc,0xdef0,gr11 75 76 set_gr_limmed 0xdead,0xbeef,gr8 77 set_gr_limmed 0xbeef,0xdead,gr9 78 set_gr_limmed 0x1234,0x5678,gr10 79 set_gr_limmed 0x9abc,0xdef0,gr11 80 inc_gr_immed -16,sp 81 set_gr_immed 16,gr7 82 cldq @(sp,gr7),gr8,cc0,0 83 test_gr_limmed 0xdead,0xbeef,gr8 84 test_gr_limmed 0xbeef,0xdead,gr9 85 test_gr_limmed 0x1234,0x5678,gr10 86 test_gr_limmed 0x9abc,0xdef0,gr11 87 88 set_gr_limmed 0xdead,0xbeef,gr8 89 set_gr_limmed 0xbeef,0xdead,gr9 90 set_gr_limmed 0x1234,0x5678,gr10 91 set_gr_limmed 0x9abc,0xdef0,gr11 92 inc_gr_immed 32,sp 93 set_gr_immed -16,gr7 94 cldq @(sp,gr7),gr8,cc4,0 95 test_gr_limmed 0xdead,0xbeef,gr8 96 test_gr_limmed 0xbeef,0xdead,gr9 97 test_gr_limmed 0x1234,0x5678,gr10 98 test_gr_limmed 0x9abc,0xdef0,gr11 99 100 inc_gr_immed -4,sp 101 set_mem_limmed 0xdead,0xbeef,sp 102 inc_gr_immed -4,sp 103 set_mem_limmed 0xbeef,0xdead,sp 104 inc_gr_immed -4,sp 105 set_mem_limmed 0x1234,0x5678,sp 106 inc_gr_immed -4,sp 107 set_mem_limmed 0x9abc,0xdef0,sp 108 set_gr_limmed 0xdead,0xbeef,gr8 109 set_gr_limmed 0xbeef,0xdead,gr9 110 set_gr_limmed 0x1234,0x5678,gr10 111 set_gr_limmed 0x9abc,0xdef0,gr11 112 113 set_gr_immed 0,gr7 114 cldq @(sp,gr7),gr8,cc1,0 115 test_gr_limmed 0x9abc,0xdef0,gr8 116 test_gr_limmed 0x1234,0x5678,gr9 117 test_gr_limmed 0xbeef,0xdead,gr10 118 test_gr_limmed 0xdead,0xbeef,gr11 119 120 set_gr_limmed 0xdead,0xbeef,gr8 121 set_gr_limmed 0xbeef,0xdead,gr9 122 set_gr_limmed 0x1234,0x5678,gr10 123 set_gr_limmed 0x9abc,0xdef0,gr11 124 inc_gr_immed -16,sp 125 set_gr_immed 16,gr7 126 cldq @(sp,gr7),gr8,cc1,0 127 test_gr_limmed 0x9abc,0xdef0,gr8 128 test_gr_limmed 0x1234,0x5678,gr9 129 test_gr_limmed 0xbeef,0xdead,gr10 130 test_gr_limmed 0xdead,0xbeef,gr11 131 132 set_gr_limmed 0xdead,0xbeef,gr8 133 set_gr_limmed 0xbeef,0xdead,gr9 134 set_gr_limmed 0x1234,0x5678,gr10 135 set_gr_limmed 0x9abc,0xdef0,gr11 136 inc_gr_immed 32,sp 137 set_gr_immed -16,gr7 138 cldq @(sp,gr7),gr8,cc5,0 139 test_gr_limmed 0x9abc,0xdef0,gr8 140 test_gr_limmed 0x1234,0x5678,gr9 141 test_gr_limmed 0xbeef,0xdead,gr10 142 test_gr_limmed 0xdead,0xbeef,gr11 143 144 inc_gr_immed -4,sp 145 set_mem_limmed 0xdead,0xbeef,sp 146 inc_gr_immed -4,sp 147 set_mem_limmed 0xbeef,0xdead,sp 148 inc_gr_immed -4,sp 149 set_mem_limmed 0x1234,0x5678,sp 150 inc_gr_immed -4,sp 151 set_mem_limmed 0x9abc,0xdef0,sp 152 set_gr_limmed 0xdead,0xbeef,gr8 153 set_gr_limmed 0xbeef,0xdead,gr9 154 set_gr_limmed 0x1234,0x5678,gr10 155 set_gr_limmed 0x9abc,0xdef0,gr11 156 157 set_gr_immed 0,gr7 158 cldq @(sp,gr7),gr8,cc1,1 159 test_gr_limmed 0xdead,0xbeef,gr8 160 test_gr_limmed 0xbeef,0xdead,gr9 161 test_gr_limmed 0x1234,0x5678,gr10 162 test_gr_limmed 0x9abc,0xdef0,gr11 163 164 set_gr_limmed 0xdead,0xbeef,gr8 165 set_gr_limmed 0xbeef,0xdead,gr9 166 set_gr_limmed 0x1234,0x5678,gr10 167 set_gr_limmed 0x9abc,0xdef0,gr11 168 inc_gr_immed -16,sp 169 set_gr_immed 16,gr7 170 cldq @(sp,gr7),gr8,cc1,1 171 test_gr_limmed 0xdead,0xbeef,gr8 172 test_gr_limmed 0xbeef,0xdead,gr9 173 test_gr_limmed 0x1234,0x5678,gr10 174 test_gr_limmed 0x9abc,0xdef0,gr11 175 176 set_gr_limmed 0xdead,0xbeef,gr8 177 set_gr_limmed 0xbeef,0xdead,gr9 178 set_gr_limmed 0x1234,0x5678,gr10 179 set_gr_limmed 0x9abc,0xdef0,gr11 180 inc_gr_immed 32,sp 181 set_gr_immed -16,gr7 182 cldq @(sp,gr7),gr8,cc5,1 183 test_gr_limmed 0xdead,0xbeef,gr8 184 test_gr_limmed 0xbeef,0xdead,gr9 185 test_gr_limmed 0x1234,0x5678,gr10 186 test_gr_limmed 0x9abc,0xdef0,gr11 187 188 inc_gr_immed -4,sp 189 set_mem_limmed 0xdead,0xbeef,sp 190 inc_gr_immed -4,sp 191 set_mem_limmed 0xbeef,0xdead,sp 192 inc_gr_immed -4,sp 193 set_mem_limmed 0x1234,0x5678,sp 194 inc_gr_immed -4,sp 195 set_mem_limmed 0x9abc,0xdef0,sp 196 set_gr_limmed 0xdead,0xbeef,gr8 197 set_gr_limmed 0xbeef,0xdead,gr9 198 set_gr_limmed 0x1234,0x5678,gr10 199 set_gr_limmed 0x9abc,0xdef0,gr11 200 201 set_gr_immed 0,gr7 202 cldq @(sp,gr7),gr8,cc2,0 203 test_gr_limmed 0xdead,0xbeef,gr8 204 test_gr_limmed 0xbeef,0xdead,gr9 205 test_gr_limmed 0x1234,0x5678,gr10 206 test_gr_limmed 0x9abc,0xdef0,gr11 207 208 set_gr_limmed 0xdead,0xbeef,gr8 209 set_gr_limmed 0xbeef,0xdead,gr9 210 set_gr_limmed 0x1234,0x5678,gr10 211 set_gr_limmed 0x9abc,0xdef0,gr11 212 inc_gr_immed -16,sp 213 set_gr_immed 16,gr7 214 cldq @(sp,gr7),gr8,cc2,1 215 test_gr_limmed 0xdead,0xbeef,gr8 216 test_gr_limmed 0xbeef,0xdead,gr9 217 test_gr_limmed 0x1234,0x5678,gr10 218 test_gr_limmed 0x9abc,0xdef0,gr11 219 220 set_gr_limmed 0xdead,0xbeef,gr8 221 set_gr_limmed 0xbeef,0xdead,gr9 222 set_gr_limmed 0x1234,0x5678,gr10 223 set_gr_limmed 0x9abc,0xdef0,gr11 224 inc_gr_immed 32,sp 225 set_gr_immed -16,gr7 226 cldq @(sp,gr7),gr8,cc6,0 227 test_gr_limmed 0xdead,0xbeef,gr8 228 test_gr_limmed 0xbeef,0xdead,gr9 229 test_gr_limmed 0x1234,0x5678,gr10 230 test_gr_limmed 0x9abc,0xdef0,gr11 231 232 inc_gr_immed -4,sp 233 set_mem_limmed 0xdead,0xbeef,sp 234 inc_gr_immed -4,sp 235 set_mem_limmed 0xbeef,0xdead,sp 236 inc_gr_immed -4,sp 237 set_mem_limmed 0x1234,0x5678,sp 238 inc_gr_immed -4,sp 239 set_mem_limmed 0x9abc,0xdef0,sp 240 set_gr_limmed 0xdead,0xbeef,gr8 241 set_gr_limmed 0xbeef,0xdead,gr9 242 set_gr_limmed 0x1234,0x5678,gr10 243 set_gr_limmed 0x9abc,0xdef0,gr11 244 245 set_gr_immed 0,gr7 246 cldq @(sp,gr7),gr8,cc3,1 247 test_gr_limmed 0xdead,0xbeef,gr8 248 test_gr_limmed 0xbeef,0xdead,gr9 249 test_gr_limmed 0x1234,0x5678,gr10 250 test_gr_limmed 0x9abc,0xdef0,gr11 251 252 set_gr_limmed 0xdead,0xbeef,gr8 253 set_gr_limmed 0xbeef,0xdead,gr9 254 set_gr_limmed 0x1234,0x5678,gr10 255 set_gr_limmed 0x9abc,0xdef0,gr11 256 inc_gr_immed -16,sp 257 set_gr_immed 16,gr7 258 cldq @(sp,gr7),gr8,cc3,0 259 test_gr_limmed 0xdead,0xbeef,gr8 260 test_gr_limmed 0xbeef,0xdead,gr9 261 test_gr_limmed 0x1234,0x5678,gr10 262 test_gr_limmed 0x9abc,0xdef0,gr11 263 264 set_gr_limmed 0xdead,0xbeef,gr8 265 set_gr_limmed 0xbeef,0xdead,gr9 266 set_gr_limmed 0x1234,0x5678,gr10 267 set_gr_limmed 0x9abc,0xdef0,gr11 268 inc_gr_immed 32,sp 269 set_gr_immed -16,gr7 270 cldq @(sp,gr7),gr8,cc7,1 271 test_gr_limmed 0xdead,0xbeef,gr8 272 test_gr_limmed 0xbeef,0xdead,gr9 273 test_gr_limmed 0x1234,0x5678,gr10 274 test_gr_limmed 0x9abc,0xdef0,gr11 275 276 pass 277