1 1.1 christos //Original:/testcases/core/c_dsp32alu_rrpm/c_dsp32alu_rrpm.dsp 2 1.1 christos // Spec Reference: dsp32alu (dreg, dreg) 3 1.1 christos # mach: bfin 4 1.1 christos 5 1.1 christos .include "testutils.inc" 6 1.1 christos start 7 1.1 christos 8 1.1 christos 9 1.1 christos 10 1.1 christos 11 1.1 christos imm32 r0, 0x75678911; 12 1.1 christos imm32 r1, 0x2789ab1d; 13 1.1 christos imm32 r2, 0x34745515; 14 1.1 christos imm32 r3, 0x46677717; 15 1.1 christos imm32 r0, 0x5567a91b; 16 1.1 christos imm32 r1, 0x6789aa1d; 17 1.1 christos imm32 r2, 0x744455a5; 18 1.1 christos imm32 r3, 0x8666777a; 19 1.1 christos R0 = R0 + R0, R7 = R0 - R0 (NS); 20 1.1 christos R1 = R0 + R1, R6 = R0 - R1 (NS); 21 1.1 christos R2 = R0 + R2, R5 = R0 - R2 (NS); 22 1.1 christos R3 = R0 + R3, R4 = R0 - R3 (NS); 23 1.1 christos R4 = R0 + R4, R3 = R0 - R4 (NS); 24 1.1 christos R5 = R0 + R5, R2 = R0 - R5 (NS); 25 1.1 christos R6 = R0 + R6, R1 = R0 - R6 (NS); 26 1.1 christos R7 = R0 + R7, R0 = R0 - R7 (NS); 27 1.1 christos CHECKREG r0, 0xAACF5236; 28 1.1 christos CHECKREG r1, 0x6789AA1D; 29 1.1 christos CHECKREG r2, 0x744455A5; 30 1.1 christos CHECKREG r3, 0x8666777A; 31 1.1 christos CHECKREG r4, 0xCF382CF2; 32 1.1 christos CHECKREG r5, 0xE15A4EC7; 33 1.1 christos CHECKREG r6, 0xEE14FA4F; 34 1.1 christos CHECKREG r7, 0xAACF5236; 35 1.1 christos 36 1.1 christos imm32 r0, 0x4567892b; 37 1.1 christos imm32 r1, 0x4489ab2d; 38 1.1 christos imm32 r2, 0x54445525; 39 1.1 christos imm32 r3, 0x66645727; 40 1.1 christos imm32 r4, 0x78889629; 41 1.1 christos imm32 r5, 0x8aaabb6b; 42 1.1 christos imm32 r6, 0x9cccdd2d; 43 1.1 christos imm32 r7, 0x0eee3fff; 44 1.1 christos R0 = R1 + R0, R7 = R1 - R0 (NS); 45 1.1 christos R1 = R1 + R1, R6 = R1 - R1 (NS); 46 1.1 christos R2 = R1 + R2, R5 = R1 - R2 (NS); 47 1.1 christos R3 = R1 + R3, R4 = R1 - R3 (NS); 48 1.1 christos R4 = R1 + R4, R3 = R1 - R4 (NS); 49 1.1 christos R5 = R1 + R5, R2 = R1 - R5 (NS); 50 1.1 christos R6 = R1 + R6, R1 = R1 - R6 (NS); 51 1.1 christos R7 = R1 + R7, R0 = R1 - R7 (NS); 52 1.1 christos CHECKREG r0, 0x89F13458; 53 1.1 christos CHECKREG r1, 0x8913565A; 54 1.1 christos CHECKREG r2, 0x54445525; 55 1.1 christos CHECKREG r3, 0x66645727; 56 1.1 christos CHECKREG r4, 0xABC2558D; 57 1.1 christos CHECKREG r5, 0xBDE2578F; 58 1.1 christos CHECKREG r6, 0x8913565A; 59 1.1 christos CHECKREG r7, 0x8835785C; 60 1.1 christos 61 1.1 christos 62 1.1 christos imm32 r0, 0x496789ab; 63 1.1 christos imm32 r1, 0x6489abcd; 64 1.1 christos imm32 r2, 0x4b445555; 65 1.1 christos imm32 r3, 0x6c647777; 66 1.1 christos imm32 r4, 0x8d889999; 67 1.1 christos imm32 r5, 0x1eaa4bbb; 68 1.1 christos imm32 r6, 0x2fccd44d; 69 1.1 christos imm32 r7, 0x31eefff4; 70 1.1 christos R0 = R2 + R0, R7 = R2 - R0 (NS); 71 1.1 christos R1 = R2 + R1, R6 = R2 - R1 (NS); 72 1.1 christos R2 = R2 + R2, R5 = R2 - R2 (NS); 73 1.1 christos R3 = R2 + R3, R4 = R2 - R3 (NS); 74 1.1 christos R4 = R2 + R4, R3 = R2 - R4 (NS); 75 1.1 christos R5 = R2 + R5, R2 = R2 - R5 (NS); 76 1.1 christos R6 = R2 + R6, R1 = R2 - R6 (NS); 77 1.1 christos R7 = R2 + R7, R0 = R2 - R7 (NS); 78 1.1 christos CHECKREG r0, 0x94ABDF00; 79 1.1 christos CHECKREG r1, 0xAFCE0122; 80 1.1 christos CHECKREG r2, 0x9688AAAA; 81 1.1 christos CHECKREG r3, 0x6C647777; 82 1.1 christos CHECKREG r4, 0xC0ACDDDD; 83 1.1 christos CHECKREG r5, 0x9688AAAA; 84 1.1 christos CHECKREG r6, 0x7D435432; 85 1.1 christos CHECKREG r7, 0x98657654; 86 1.1 christos 87 1.1 christos imm32 r0, 0xa537891b; 88 1.1 christos imm32 r1, 0x6a59ab2d; 89 1.1 christos imm32 r2, 0x44a55535; 90 1.1 christos imm32 r3, 0x166a5747; 91 1.1 christos imm32 r4, 0x6878a565; 92 1.1 christos imm32 r5, 0x7a8aba5b; 93 1.1 christos imm32 r6, 0x8c9cdd85; 94 1.1 christos imm32 r7, 0x9eaeffaf; 95 1.1 christos R0 = R3 + R0, R7 = R3 - R0 (NS); 96 1.1 christos R1 = R3 + R1, R6 = R3 - R1 (NS); 97 1.1 christos R2 = R3 + R2, R5 = R3 - R2 (NS); 98 1.1 christos R3 = R3 + R3, R4 = R3 - R3 (NS); 99 1.1 christos R4 = R3 + R4, R3 = R3 - R4 (NS); 100 1.1 christos R5 = R3 + R5, R2 = R3 - R5 (NS); 101 1.1 christos R6 = R3 + R6, R1 = R3 - R6 (NS); 102 1.1 christos R7 = R3 + R7, R0 = R3 - R7 (NS); 103 1.1 christos CHECKREG r0, 0xBBA1E062; 104 1.1 christos CHECKREG r1, 0x80C40274; 105 1.1 christos CHECKREG r2, 0x5B0FAC7C; 106 1.1 christos CHECKREG r3, 0x2CD4AE8E; 107 1.1 christos CHECKREG r4, 0x2CD4AE8E; 108 1.1 christos CHECKREG r5, 0xFE99B0A0; 109 1.1 christos CHECKREG r6, 0xD8E55AA8; 110 1.1 christos CHECKREG r7, 0x9E077CBA; 111 1.1 christos 112 1.1 christos imm32 r0, 0x15678911; 113 1.1 christos imm32 r1, 0x9789ab1d; 114 1.1 christos imm32 r2, 0x94445515; 115 1.1 christos imm32 r3, 0x96667717; 116 1.1 christos imm32 r0, 0x5267891b; 117 1.1 christos imm32 r1, 0x67a9ab1d; 118 1.1 christos imm32 r2, 0x744c5515; 119 1.1 christos imm32 r3, 0x8666d777; 120 1.1 christos R0 = R4 + R0, R7 = R4 - R0 (NS); 121 1.1 christos R1 = R4 + R1, R6 = R4 - R1 (NS); 122 1.1 christos R2 = R4 + R2, R5 = R4 - R2 (NS); 123 1.1 christos R3 = R4 + R3, R4 = R4 - R3 (NS); 124 1.1 christos R4 = R4 + R4, R3 = R4 - R4 (NS); 125 1.1 christos R5 = R4 + R5, R2 = R4 - R5 (NS); 126 1.1 christos R6 = R4 + R6, R1 = R4 - R6 (NS); 127 1.1 christos R7 = R4 + R7, R0 = R4 - R7 (NS); 128 1.1 christos CHECKREG r0, 0x726E88BB; 129 1.1 christos CHECKREG r1, 0x87B0AABD; 130 1.1 christos CHECKREG r2, 0x945354B5; 131 1.1 christos CHECKREG r3, 0x00000000; 132 1.1 christos CHECKREG r4, 0x4CDBAE2E; 133 1.1 christos CHECKREG r5, 0x056407A7; 134 1.1 christos CHECKREG r6, 0x1206B19F; 135 1.1 christos CHECKREG r7, 0x2748D3A1; 136 1.1 christos 137 1.1 christos imm32 r0, 0xa567892b; 138 1.1 christos imm32 r1, 0x4a89ab2d; 139 1.1 christos imm32 r2, 0x54a45525; 140 1.1 christos imm32 r3, 0x666d7727; 141 1.1 christos imm32 r4, 0x7888d929; 142 1.1 christos imm32 r5, 0x8aaabe2b; 143 1.1 christos imm32 r6, 0x9cccdd2d; 144 1.1 christos imm32 r7, 0x0eeeffef; 145 1.1 christos R0 = R5 + R0, R7 = R5 - R0 (NS); 146 1.1 christos R1 = R5 + R1, R6 = R5 - R1 (NS); 147 1.1 christos R2 = R5 + R2, R5 = R5 - R2 (NS); 148 1.1 christos R3 = R5 + R3, R4 = R5 - R3 (NS); 149 1.1 christos R4 = R5 + R4, R3 = R5 - R4 (NS); 150 1.1 christos R5 = R5 + R5, R2 = R5 - R5 (NS); 151 1.1 christos R6 = R5 + R6, R1 = R5 - R6 (NS); 152 1.1 christos R7 = R5 + R7, R0 = R5 - R7 (NS); 153 1.1 christos CHECKREG r0, 0x86C99D0C; 154 1.1 christos CHECKREG r1, 0x2BEBBF0E; 155 1.1 christos CHECKREG r2, 0x00000000; 156 1.1 christos CHECKREG r3, 0x666D7727; 157 1.1 christos CHECKREG r4, 0x059F5AE5; 158 1.1 christos CHECKREG r5, 0x6C0CD20C; 159 1.1 christos CHECKREG r6, 0xAC2DE50A; 160 1.1 christos CHECKREG r7, 0x5150070C; 161 1.1 christos 162 1.1 christos 163 1.1 christos imm32 r0, 0x496789ab; 164 1.1 christos imm32 r1, 0x6489abcd; 165 1.1 christos imm32 r2, 0x4b445555; 166 1.1 christos imm32 r3, 0x6c647777; 167 1.1 christos imm32 r4, 0x8d889999; 168 1.1 christos imm32 r5, 0x1eaa4bbb; 169 1.1 christos imm32 r6, 0x2fccd44d; 170 1.1 christos imm32 r7, 0x31eefff4; 171 1.1 christos R0 = R6 + R0, R7 = R6 - R0 (NS); 172 1.1 christos R1 = R6 + R1, R6 = R6 - R1 (NS); 173 1.1 christos R2 = R6 + R2, R5 = R6 - R2 (NS); 174 1.1 christos R3 = R6 + R3, R4 = R6 - R3 (NS); 175 1.1 christos R4 = R6 + R4, R3 = R6 - R4 (NS); 176 1.1 christos R5 = R6 + R5, R2 = R6 - R5 (NS); 177 1.1 christos R6 = R6 + R6, R1 = R6 - R6 (NS); 178 1.1 christos R7 = R6 + R7, R0 = R6 - R7 (NS); 179 1.1 christos CHECKREG r0, 0xB021065E; 180 1.1 christos CHECKREG r1, 0x00000000; 181 1.1 christos CHECKREG r2, 0x4B445555; 182 1.1 christos CHECKREG r3, 0x6C647777; 183 1.1 christos CHECKREG r4, 0x2A21D989; 184 1.1 christos CHECKREG r5, 0x4B41FBAB; 185 1.1 christos CHECKREG r6, 0x96865100; 186 1.1 christos CHECKREG r7, 0x7CEB9BA2; 187 1.1 christos 188 1.1 christos imm32 r0, 0xe537891b; 189 1.1 christos imm32 r1, 0xe759ab2d; 190 1.1 christos imm32 r2, 0x4e555535; 191 1.1 christos imm32 r3, 0x16e65747; 192 1.1 christos imm32 r4, 0x687e9565; 193 1.1 christos imm32 r5, 0x7a8aeb5b; 194 1.1 christos imm32 r6, 0x8c9cdd85; 195 1.1 christos imm32 r7, 0x9eaefe9f; 196 1.1 christos R0 = R7 + R0, R7 = R7 - R0 (NS); 197 1.1 christos R1 = R7 + R1, R6 = R7 - R1 (NS); 198 1.1 christos R2 = R7 + R2, R5 = R7 - R2 (NS); 199 1.1 christos R3 = R7 + R3, R4 = R7 - R3 (NS); 200 1.1 christos R4 = R7 + R4, R3 = R7 - R4 (NS); 201 1.1 christos R5 = R7 + R5, R2 = R7 - R5 (NS); 202 1.1 christos R6 = R7 + R6, R1 = R7 - R6 (NS); 203 1.1 christos R7 = R7 + R7, R0 = R7 - R7 (NS); 204 1.1 christos CHECKREG r0, 0x00000000; 205 1.1 christos CHECKREG r1, 0xE759AB2D; 206 1.1 christos CHECKREG r2, 0x4E555535; 207 1.1 christos CHECKREG r3, 0x16E65747; 208 1.1 christos CHECKREG r4, 0x5C0893C1; 209 1.1 christos CHECKREG r5, 0x249995D3; 210 1.1 christos CHECKREG r6, 0x8B953FDB; 211 1.1 christos CHECKREG r7, 0x72EEEB08; 212 1.1 christos 213 1.1 christos imm32 r0, 0x496789ab; 214 1.1 christos imm32 r1, 0x6489abcd; 215 1.1 christos imm32 r2, 0x4b445555; 216 1.1 christos imm32 r3, 0x6c647777; 217 1.1 christos imm32 r4, 0x8d889999; 218 1.1 christos imm32 r5, 0x1eaa4bbb; 219 1.1 christos imm32 r6, 0x2fccd44d; 220 1.1 christos imm32 r7, 0x31eefff4; 221 1.1 christos R2 = R4 + R0, R7 = R4 - R0 (S); 222 1.1 christos R3 = R7 + R1, R6 = R7 - R1 (NS); 223 1.1 christos R4 = R0 + R2, R5 = R0 - R2 (S); 224 1.1 christos R5 = R4 + R3, R4 = R4 - R3 (NS); 225 1.1 christos R6 = R2 + R4, R3 = R2 - R4 (S); 226 1.1 christos R7 = R3 + R5, R2 = R3 - R5 (NS); 227 1.1 christos R0 = R1 + R6, R1 = R1 - R6 (S); 228 1.1 christos R1 = R5 + R7, R0 = R5 - R7 (S); 229 1.1 christos CHECKREG r0, 0x64DDDDDE; 230 1.1 christos CHECKREG r1, 0xA4E4D39A; 231 1.1 christos CHECKREG r2, 0x9640C966; 232 1.1 christos CHECKREG r3, 0x9B222222; 233 1.1 christos CHECKREG r4, 0x3BCE0122; 234 1.1 christos CHECKREG r5, 0x04E158BC; 235 1.1 christos CHECKREG r6, 0x12BE2466; 236 1.1 christos CHECKREG r7, 0xA0037ADE; 237 1.1 christos 238 1.1 christos imm32 r0, 0xa537891b; 239 1.1 christos imm32 r1, 0x6d59ab2d; 240 1.1 christos imm32 r2, 0x4f555535; 241 1.1 christos imm32 r3, 0x16c65747; 242 1.1 christos imm32 r4, 0x687c9565; 243 1.1 christos imm32 r5, 0x7a8acb5b; 244 1.1 christos imm32 r6, 0x8c9cdc85; 245 1.1 christos imm32 r7, 0x9eaefb9f; 246 1.1 christos R4 = R3 + R0, R1 = R3 - R0 (S); 247 1.1 christos R5 = R6 + R1, R2 = R6 - R1 (S); 248 1.1 christos R6 = R7 + R2, R3 = R7 - R2 (S); 249 1.1 christos R7 = R0 + R3, R4 = R0 - R3 (NS); 250 1.1 christos R0 = R2 + R4, R5 = R2 - R4 (S); 251 1.1 christos R1 = R1 + R5, R6 = R1 - R5 (S); 252 1.1 christos R2 = R5 + R6, R7 = R5 - R6 (NS); 253 1.1 christos R3 = R4 + R7, R0 = R4 - R7 (S); 254 1.1 christos CHECKREG r0, 0x052876A0; 255 1.1 christos CHECKREG r1, 0x6B0640B0; 256 1.1 christos CHECKREG r2, 0x718ECE2C; 257 1.1 christos CHECKREG r3, 0x80000000; 258 1.1 christos CHECKREG r4, 0x86888D7C; 259 1.1 christos CHECKREG r5, 0xF9777284; 260 1.1 christos CHECKREG r6, 0x78175BA8; 261 1.1 christos CHECKREG r7, 0x816016DC; 262 1.1 christos 263 1.1 christos 264 1.1 christos 265 1.1 christos pass 266