1 //Original:/testcases/core/c_dsp32alu_rp/c_dsp32alu_rp.dsp 2 // Spec Reference: dsp32alu 3 # mach: bfin 4 5 .include "testutils.inc" 6 start 7 8 9 10 11 imm32 r0, 0xa5678911; 12 imm32 r1, 0x2a89ab1d; 13 imm32 r2, 0x34a45515; 14 imm32 r3, 0x466a7717; 15 imm32 r4, 0x5567891b; 16 imm32 r5, 0x6789ab1d; 17 imm32 r6, 0x74445a15; 18 imm32 r7, 0x866677a7; 19 R0 = R0 + R0 (NS); 20 R1 = R0 + R1 (NS); 21 R2 = R0 + R2 (NS); 22 R3 = R0 + R3 (NS); 23 R4 = R0 + R4 (NS); 24 R5 = R0 + R5 (NS); 25 R6 = R0 + R6 (NS); 26 R7 = R0 + R7 (NS); 27 CHECKREG r0, 0x4ACF1222; 28 CHECKREG r1, 0x7558BD3F; 29 CHECKREG r2, 0x7F736737; 30 CHECKREG r3, 0x91398939; 31 CHECKREG r4, 0xA0369B3D; 32 CHECKREG r5, 0xB258BD3F; 33 CHECKREG r6, 0xBF136C37; 34 CHECKREG r7, 0xD13589C9; 35 36 imm32 r0, 0xabc78911; 37 imm32 r1, 0x27c9ab1d; 38 imm32 r2, 0x344c5515; 39 imm32 r3, 0x4666c717; 40 imm32 r4, 0x5567c91b; 41 imm32 r5, 0x6789ab1d; 42 imm32 r6, 0x74445c15; 43 imm32 r7, 0x866677c7; 44 R0 = R1 + R0 (NS); 45 R1 = R1 + R1 (NS); 46 R2 = R1 + R2 (NS); 47 R3 = R1 + R3 (NS); 48 R4 = R1 + R4 (NS); 49 R5 = R1 + R5 (NS); 50 R6 = R1 + R6 (NS); 51 R7 = R1 + R7 (NS); 52 CHECKREG r0, 0xD391342E; 53 CHECKREG r1, 0x4F93563A; 54 CHECKREG r2, 0x83DFAB4F; 55 CHECKREG r3, 0x95FA1D51; 56 CHECKREG r4, 0xA4FB1F55; 57 CHECKREG r5, 0xB71D0157; 58 CHECKREG r6, 0xC3D7B24F; 59 CHECKREG r7, 0xD5F9CE01; 60 61 imm32 r0, 0xdd678911; 62 imm32 r1, 0x2789ab1d; 63 imm32 r2, 0x34445515; 64 imm32 r3, 0x46d67717; 65 imm32 r4, 0x5567891b; 66 imm32 r5, 0x678dab1d; 67 imm32 r6, 0x7444d515; 68 imm32 r7, 0x86667d77; 69 R0 = R2 + R0 (NS); 70 R1 = R2 + R1 (NS); 71 R2 = R2 + R2 (NS); 72 R3 = R2 + R3 (NS); 73 R4 = R2 + R4 (NS); 74 R5 = R2 + R5 (NS); 75 R6 = R2 + R6 (NS); 76 R7 = R2 + R7 (NS); 77 CHECKREG r0, 0x11ABDE26; 78 CHECKREG r1, 0x5BCE0032; 79 CHECKREG r2, 0x6888AA2A; 80 CHECKREG r3, 0xAF5F2141; 81 CHECKREG r4, 0xBDF03345; 82 CHECKREG r5, 0xD0165547; 83 CHECKREG r6, 0xDCCD7F3F; 84 CHECKREG r7, 0xEEEF27A1; 85 86 imm32 r0, 0x15678911; 87 imm32 r1, 0x2789ab1d; 88 imm32 r2, 0x34445515; 89 imm32 r3, 0x46667717; 90 imm32 r4, 0x5567891b; 91 imm32 r5, 0x6789ab1d; 92 imm32 r6, 0x74445515; 93 imm32 r7, 0x86667777; 94 R0 = R3 + R0 (NS); 95 R1 = R3 + R1 (NS); 96 R2 = R3 + R2 (NS); 97 R3 = R3 + R3 (NS); 98 R4 = R3 + R4 (NS); 99 R5 = R3 + R5 (NS); 100 R6 = R3 + R6 (NS); 101 R7 = R3 + R7 (NS); 102 CHECKREG r0, 0x5BCE0028; 103 CHECKREG r1, 0x6DF02234; 104 CHECKREG r2, 0x7AAACC2C; 105 CHECKREG r3, 0x8CCCEE2E; 106 CHECKREG r4, 0xE2347749; 107 CHECKREG r5, 0xF456994B; 108 CHECKREG r6, 0x01114343; 109 CHECKREG r7, 0x133365A5; 110 111 imm32 r0, 0xee678911; 112 imm32 r1, 0x2789ab1d; 113 imm32 r2, 0x34e45515; 114 imm32 r3, 0x46667717; 115 imm32 r4, 0x556e891b; 116 imm32 r5, 0x6789eb1d; 117 imm32 r6, 0x74445515; 118 imm32 r7, 0x86667e77; 119 R0 = R4 + R0 (NS); 120 R1 = R4 + R1 (NS); 121 R2 = R4 + R2 (NS); 122 R3 = R4 + R3 (NS); 123 R4 = R4 + R4 (NS); 124 R5 = R4 + R5 (NS); 125 R6 = R4 + R6 (NS); 126 R7 = R4 + R7 (NS); 127 CHECKREG r0, 0x43D6122C; 128 CHECKREG r1, 0x7CF83438; 129 CHECKREG r2, 0x8A52DE30; 130 CHECKREG r3, 0x9BD50032; 131 CHECKREG r4, 0xAADD1236; 132 CHECKREG r5, 0x1266FD53; 133 CHECKREG r6, 0x1F21674B; 134 CHECKREG r7, 0x314390AD; 135 136 imm32 r0, 0x15678911; 137 imm32 r1, 0x2789ab1d; 138 imm32 r2, 0x34445515; 139 imm32 r3, 0x46667717; 140 imm32 r4, 0x5567891b; 141 imm32 r5, 0x6789ab1d; 142 imm32 r6, 0x74445515; 143 imm32 r7, 0x86667777; 144 R0 = R5 + R0 (NS); 145 R1 = R5 + R1 (NS); 146 R2 = R5 + R2 (NS); 147 R3 = R5 + R3 (NS); 148 R4 = R5 + R4 (NS); 149 R5 = R5 + R5 (NS); 150 R6 = R5 + R6 (NS); 151 R7 = R5 + R7 (NS); 152 CHECKREG r0, 0x7CF1342E; 153 CHECKREG r1, 0x8F13563A; 154 CHECKREG r2, 0x9BCE0032; 155 CHECKREG r3, 0xADF02234; 156 CHECKREG r4, 0xBCF13438; 157 CHECKREG r5, 0xCF13563A; 158 CHECKREG r6, 0x4357AB4F; 159 CHECKREG r7, 0x5579CDB1; 160 161 imm32 r0, 0xff678911; 162 imm32 r1, 0x2789ab1d; 163 imm32 r2, 0x34f45515; 164 imm32 r3, 0x46667717; 165 imm32 r4, 0x556f891b; 166 imm32 r5, 0x6789ab1d; 167 imm32 r6, 0x7444f515; 168 imm32 r7, 0x86667f77; 169 R0 = R6 + R0 (NS); 170 R1 = R6 + R1 (NS); 171 R2 = R6 + R2 (NS); 172 R3 = R6 + R3 (NS); 173 R4 = R6 + R4 (NS); 174 R5 = R6 + R5 (NS); 175 R6 = R6 + R6 (NS); 176 R7 = R6 + R7 (NS); 177 CHECKREG r0, 0x73AC7E26; 178 CHECKREG r1, 0x9BCEA032; 179 CHECKREG r2, 0xA9394A2A; 180 CHECKREG r3, 0xBAAB6C2C; 181 CHECKREG r4, 0xC9B47E30; 182 CHECKREG r5, 0xDBCEA032; 183 CHECKREG r6, 0xE889EA2A; 184 CHECKREG r7, 0x6EF069A1; 185 186 imm32 r0, 0xed678911; 187 imm32 r1, 0x27d9ab1d; 188 imm32 r2, 0x344d5515; 189 imm32 r3, 0x46667717; 190 imm32 r4, 0x5567c91b; 191 imm32 r5, 0x6789ab1d; 192 imm32 r6, 0x74445c15; 193 imm32 r7, 0x866677c7; 194 R0 = R7 + R0 (NS); 195 R1 = R7 + R1 (NS); 196 R2 = R7 + R2 (NS); 197 R3 = R7 + R3 (NS); 198 R4 = R7 + R4 (NS); 199 R5 = R7 + R5 (NS); 200 R6 = R7 + R6 (NS); 201 R7 = R7 + R7 (NS); 202 CHECKREG r0, 0x73CE00D8; 203 CHECKREG r1, 0xAE4022E4; 204 CHECKREG r2, 0xBAB3CCDC; 205 CHECKREG r3, 0xCCCCEEDE; 206 CHECKREG r4, 0xDBCE40E2; 207 CHECKREG r5, 0xEDF022E4; 208 CHECKREG r6, 0xFAAAD3DC; 209 CHECKREG r7, 0x0CCCEF8E; 210 211 imm32 r0, 0x15678911; 212 imm32 r1, 0x2789ab1d; 213 imm32 r2, 0x34445515; 214 imm32 r3, 0x46667717; 215 imm32 r4, 0x5567891b; 216 imm32 r5, 0x6789ab1d; 217 imm32 r6, 0x74445515; 218 imm32 r7, 0x86667777; 219 R3 = R1 + R4 (S); 220 R7 = R4 + R6 (S); 221 R2 = R7 + R7 (S); 222 R4 = R5 + R0 (S); 223 R5 = R3 + R1 (S); 224 R6 = R2 + R3 (S); 225 R0 = R0 + R2 (S); 226 R1 = R6 + R5 (S); 227 CHECKREG r0, 0x7FFFFFFF; 228 CHECKREG r1, 0x7FFFFFFF; 229 CHECKREG r2, 0x7FFFFFFF; 230 CHECKREG r3, 0x7CF13438; 231 CHECKREG r4, 0x7CF1342E; 232 CHECKREG r5, 0x7FFFFFFF; 233 CHECKREG r6, 0x7FFFFFFF; 234 CHECKREG r7, 0x7FFFFFFF; 235 236 imm32 r0, 0x55678911; 237 imm32 r1, 0x6a89ab1d; 238 imm32 r2, 0x74d45515; 239 imm32 r3, 0x866f7717; 240 imm32 r4, 0x5567c91b; 241 imm32 r5, 0x6789ab1d; 242 imm32 r6, 0x74445515; 243 imm32 r7, 0x86667777; 244 R3 = R3 + R3 (S); 245 R1 = R7 + R6 (S); 246 R4 = R1 + R2 (S); 247 R7 = R4 + R0 (S); 248 R5 = R6 + R4 (S); 249 R2 = R5 + R5 (S); 250 R6 = R2 + R1 (S); 251 R0 = R0 + R7 (S); 252 CHECKREG r0, 0x7FFFFFFF; 253 CHECKREG r1, 0xFAAACC8C; 254 CHECKREG r2, 0x7FFFFFFF; 255 CHECKREG r3, 0x80000000; 256 CHECKREG r4, 0x6F7F21A1; 257 CHECKREG r5, 0x7FFFFFFF; 258 CHECKREG r6, 0x7AAACC8B; 259 CHECKREG r7, 0x7FFFFFFF; 260 261 262 pass 263