1 1.1 christos //Original:/testcases/core/c_dsp32alu_rm/c_dsp32alu_rm.dsp 2 1.1 christos // Spec Reference: dsp32alu 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, 0x35678911; 12 1.1 christos imm32 r1, 0x2389ab1d; 13 1.1 christos imm32 r2, 0x34345515; 14 1.1 christos imm32 r3, 0x46637717; 15 1.1 christos imm32 r4, 0x5567391b; 16 1.1 christos imm32 r5, 0x6789a31d; 17 1.1 christos imm32 r6, 0x744455a5; 18 1.1 christos imm32 r7, 0x866677a7; 19 1.1 christos R0 = R0 - R0 (NS); 20 1.1 christos R1 = R0 - R1 (NS); 21 1.1 christos R2 = R0 - R2 (NS); 22 1.1 christos R3 = R0 - R3 (NS); 23 1.1 christos R4 = R0 - R4 (NS); 24 1.1 christos R5 = R0 - R5 (NS); 25 1.1 christos R6 = R0 - R6 (NS); 26 1.1 christos R7 = R0 - R7 (NS); 27 1.1 christos CHECKREG r0, 0x00000000; 28 1.1 christos CHECKREG r1, 0xDC7654E3; 29 1.1 christos CHECKREG r2, 0xCBCBAAEB; 30 1.1 christos CHECKREG r3, 0xB99C88E9; 31 1.1 christos CHECKREG r4, 0xAA98C6E5; 32 1.1 christos CHECKREG r5, 0x98765CE3; 33 1.1 christos CHECKREG r6, 0x8BBBAA5B; 34 1.1 christos CHECKREG r7, 0x79998859; 35 1.1 christos 36 1.1 christos imm32 r0, 0xa5678911; 37 1.1 christos imm32 r1, 0x4a89ab1d; 38 1.1 christos imm32 r2, 0x54a45515; 39 1.1 christos imm32 r3, 0x466a7717; 40 1.1 christos imm32 r4, 0x5567a91b; 41 1.1 christos imm32 r5, 0x6789ab1d; 42 1.1 christos imm32 r6, 0x74445a15; 43 1.1 christos imm32 r7, 0x866677a7; 44 1.1 christos R0 = R1 - R0 (NS); 45 1.1 christos R1 = R1 - R1 (NS); 46 1.1 christos R2 = R1 - R2 (NS); 47 1.1 christos R3 = R1 - R3 (NS); 48 1.1 christos R4 = R1 - R4 (NS); 49 1.1 christos R5 = R1 - R5 (NS); 50 1.1 christos R6 = R1 - R6 (NS); 51 1.1 christos R7 = R1 - R7 (NS); 52 1.1 christos CHECKREG r0, 0xA522220C; 53 1.1 christos CHECKREG r1, 0x00000000; 54 1.1 christos CHECKREG r2, 0xAB5BAAEB; 55 1.1 christos CHECKREG r3, 0xB99588E9; 56 1.1 christos CHECKREG r4, 0xAA9856E5; 57 1.1 christos CHECKREG r5, 0x987654E3; 58 1.1 christos CHECKREG r6, 0x8BBBA5EB; 59 1.1 christos CHECKREG r7, 0x79998859; 60 1.1 christos 61 1.1 christos imm32 r0, 0xda678911; 62 1.1 christos imm32 r1, 0x27c9ab1d; 63 1.1 christos imm32 r2, 0x344c5515; 64 1.1 christos imm32 r3, 0x4666c717; 65 1.1 christos imm32 r4, 0x5567891b; 66 1.1 christos imm32 r5, 0x6789ab1d; 67 1.1 christos imm32 r6, 0x744455b5; 68 1.1 christos imm32 r7, 0x8666777b; 69 1.1 christos R0 = R2 - R0 (NS); 70 1.1 christos R1 = R2 - R1 (NS); 71 1.1 christos R2 = R2 - R2 (NS); 72 1.1 christos R3 = R2 - R3 (NS); 73 1.1 christos R4 = R2 - R4 (NS); 74 1.1 christos R5 = R2 - R5 (NS); 75 1.1 christos R6 = R2 - R6 (NS); 76 1.1 christos R7 = R2 - R7 (NS); 77 1.1 christos CHECKREG r0, 0x59E4CC04; 78 1.1 christos CHECKREG r1, 0x0C82A9F8; 79 1.1 christos CHECKREG r2, 0x00000000; 80 1.1 christos CHECKREG r3, 0xB99938E9; 81 1.1 christos CHECKREG r4, 0xAA9876E5; 82 1.1 christos CHECKREG r5, 0x987654E3; 83 1.1 christos CHECKREG r6, 0x8BBBAA4B; 84 1.1 christos CHECKREG r7, 0x79998885; 85 1.1 christos 86 1.1 christos imm32 r0, 0x65678911; 87 1.1 christos imm32 r1, 0x7289ab1d; 88 1.1 christos imm32 r2, 0x84345515; 89 1.1 christos imm32 r3, 0x96647717; 90 1.1 christos imm32 r4, 0x5567591b; 91 1.1 christos imm32 r5, 0x6789a61d; 92 1.1 christos imm32 r6, 0x744d5515; 93 1.1 christos imm32 r7, 0x8666b777; 94 1.1 christos R0 = R3 - R0 (NS); 95 1.1 christos R1 = R3 - R1 (NS); 96 1.1 christos R2 = R3 - R2 (NS); 97 1.1 christos R3 = R3 - R3 (NS); 98 1.1 christos R4 = R3 - R4 (NS); 99 1.1 christos R5 = R3 - R5 (NS); 100 1.1 christos R6 = R3 - R6 (NS); 101 1.1 christos R7 = R3 - R7 (NS); 102 1.1 christos CHECKREG r0, 0x30FCEE06; 103 1.1 christos CHECKREG r1, 0x23DACBFA; 104 1.1 christos CHECKREG r2, 0x12302202; 105 1.1 christos CHECKREG r3, 0x00000000; 106 1.1 christos CHECKREG r4, 0xAA98A6E5; 107 1.1 christos CHECKREG r5, 0x987659E3; 108 1.1 christos CHECKREG r6, 0x8BB2AAEB; 109 1.1 christos CHECKREG r7, 0x79994889; 110 1.1 christos 111 1.1 christos imm32 r0, 0x15678911; 112 1.1 christos imm32 r1, 0x2789ab1d; 113 1.1 christos imm32 r2, 0x34445515; 114 1.1 christos imm32 r3, 0x46667717; 115 1.1 christos imm32 r4, 0x5567891b; 116 1.1 christos imm32 r5, 0x6789ab1d; 117 1.1 christos imm32 r6, 0x74445515; 118 1.1 christos imm32 r7, 0x86667777; 119 1.1 christos R0 = R4 - R0 (NS); 120 1.1 christos R1 = R4 - R1 (NS); 121 1.1 christos R2 = R4 - R2 (NS); 122 1.1 christos R3 = R4 - R3 (NS); 123 1.1 christos R4 = R4 - R4 (NS); 124 1.1 christos R5 = R4 - R5 (NS); 125 1.1 christos R6 = R4 - R6 (NS); 126 1.1 christos R7 = R4 - R7 (NS); 127 1.1 christos CHECKREG r0, 0x4000000A; 128 1.1 christos CHECKREG r1, 0x2DDDDDFE; 129 1.1 christos CHECKREG r2, 0x21233406; 130 1.1 christos CHECKREG r3, 0x0F011204; 131 1.1 christos CHECKREG r4, 0x00000000; 132 1.1 christos CHECKREG r5, 0x987654E3; 133 1.1 christos CHECKREG r6, 0x8BBBAAEB; 134 1.1 christos CHECKREG r7, 0x79998889; 135 1.1 christos 136 1.1 christos imm32 r0, 0x95678911; 137 1.1 christos imm32 r1, 0x8789ab1d; 138 1.1 christos imm32 r2, 0x74445515; 139 1.1 christos imm32 r3, 0x36667717; 140 1.1 christos imm32 r4, 0x3567891b; 141 1.1 christos imm32 r5, 0x6e89ab1d; 142 1.1 christos imm32 r6, 0x74e45515; 143 1.1 christos imm32 r7, 0x866e7777; 144 1.1 christos R0 = R5 - R0 (NS); 145 1.1 christos R1 = R5 - R1 (NS); 146 1.1 christos R2 = R5 - R2 (NS); 147 1.1 christos R3 = R5 - R3 (NS); 148 1.1 christos R4 = R5 - R4 (NS); 149 1.1 christos R5 = R5 - R5 (NS); 150 1.1 christos R6 = R5 - R6 (NS); 151 1.1 christos R7 = R5 - R7 (NS); 152 1.1 christos CHECKREG r0, 0xD922220C; 153 1.1 christos CHECKREG r1, 0xE7000000; 154 1.1 christos CHECKREG r2, 0xFA455608; 155 1.1 christos CHECKREG r3, 0x38233406; 156 1.1 christos CHECKREG r4, 0x39222202; 157 1.1 christos CHECKREG r5, 0x00000000; 158 1.1 christos CHECKREG r6, 0x8B1BAAEB; 159 1.1 christos CHECKREG r7, 0x79918889; 160 1.1 christos 161 1.1 christos imm32 r0, 0x5a678911; 162 1.1 christos imm32 r1, 0x67c9ab1d; 163 1.1 christos imm32 r2, 0x744d5515; 164 1.1 christos imm32 r3, 0x8666b717; 165 1.1 christos imm32 r4, 0x9567891b; 166 1.1 christos imm32 r5, 0x6789db1d; 167 1.1 christos imm32 r6, 0x74445f15; 168 1.1 christos imm32 r7, 0x866677f7; 169 1.1 christos R0 = R6 - R0 (NS); 170 1.1 christos R1 = R6 - R1 (NS); 171 1.1 christos R2 = R6 - R2 (NS); 172 1.1 christos R3 = R6 - R3 (NS); 173 1.1 christos R4 = R6 - R4 (NS); 174 1.1 christos R5 = R6 - R5 (NS); 175 1.1 christos R6 = R6 - R6 (NS); 176 1.1 christos R7 = R6 - R7 (NS); 177 1.1 christos CHECKREG r0, 0x19DCD604; 178 1.1 christos CHECKREG r1, 0x0C7AB3F8; 179 1.1 christos CHECKREG r2, 0xFFF70A00; 180 1.1 christos CHECKREG r3, 0xEDDDA7FE; 181 1.1 christos CHECKREG r4, 0xDEDCD5FA; 182 1.1 christos CHECKREG r5, 0x0CBA83F8; 183 1.1 christos CHECKREG r6, 0x00000000; 184 1.1 christos CHECKREG r7, 0x79998809; 185 1.1 christos 186 1.1 christos imm32 r0, 0x25678911; 187 1.1 christos imm32 r1, 0x2389ab1d; 188 1.1 christos imm32 r2, 0x3a455515; 189 1.1 christos imm32 r3, 0x46d66717; 190 1.1 christos imm32 r4, 0x556b891b; 191 1.1 christos imm32 r5, 0x6789cb1d; 192 1.1 christos imm32 r6, 0x74445515; 193 1.1 christos imm32 r7, 0x86667777; 194 1.1 christos R0 = R7 - R0 (NS); 195 1.1 christos R1 = R7 - R1 (NS); 196 1.1 christos R2 = R7 - R2 (NS); 197 1.1 christos R3 = R7 - R3 (NS); 198 1.1 christos R4 = R7 - R4 (NS); 199 1.1 christos R5 = R7 - R5 (NS); 200 1.1 christos R6 = R7 - R6 (NS); 201 1.1 christos R7 = R7 - R7 (NS); 202 1.1 christos CHECKREG r0, 0x60FEEE66; 203 1.1 christos CHECKREG r1, 0x62DCCC5A; 204 1.1 christos CHECKREG r2, 0x4C212262; 205 1.1 christos CHECKREG r3, 0x3F901060; 206 1.1 christos CHECKREG r4, 0x30FAEE5C; 207 1.1 christos CHECKREG r5, 0x1EDCAC5A; 208 1.1 christos CHECKREG r6, 0x12222262; 209 1.1 christos CHECKREG r7, 0x00000000; 210 1.1 christos 211 1.1 christos imm32 r0, 0xd5678911; 212 1.1 christos imm32 r1, 0x2e89ab1d; 213 1.1 christos imm32 r2, 0x34f45515; 214 1.1 christos imm32 r3, 0x466b7717; 215 1.1 christos imm32 r4, 0x5567c91b; 216 1.1 christos imm32 r5, 0x6789ab1d; 217 1.1 christos imm32 r6, 0x74445115; 218 1.1 christos imm32 r7, 0x866a7d77; 219 1.1 christos R3 = R1 - R4 (S); 220 1.1 christos R7 = R4 - R6 (S); 221 1.1 christos R2 = R7 - R7 (S); 222 1.1 christos R4 = R5 - R0 (S); 223 1.1 christos R5 = R3 - R1 (S); 224 1.1 christos R6 = R2 - R3 (S); 225 1.1 christos R0 = R0 - R2 (S); 226 1.1 christos R1 = R6 - R5 (S); 227 1.1 christos CHECKREG r0, 0xD5678911; 228 1.1 christos CHECKREG r1, 0x7C45E719; 229 1.1 christos CHECKREG r2, 0x00000000; 230 1.1 christos CHECKREG r3, 0xD921E202; 231 1.1 christos CHECKREG r4, 0x7FFFFFFF; 232 1.1 christos CHECKREG r5, 0xAA9836E5; 233 1.1 christos CHECKREG r6, 0x26DE1DFE; 234 1.1 christos CHECKREG r7, 0xE1237806; 235 1.1 christos 236 1.1 christos imm32 r0, 0x15678911; 237 1.1 christos imm32 r1, 0x2789ab1d; 238 1.1 christos imm32 r2, 0x34445515; 239 1.1 christos imm32 r3, 0x46667717; 240 1.1 christos imm32 r4, 0x5567891b; 241 1.1 christos imm32 r5, 0x6789ab1d; 242 1.1 christos imm32 r6, 0x74445515; 243 1.1 christos imm32 r7, 0x86667777; 244 1.1 christos R3 = R3 - R3 (S); 245 1.1 christos R1 = R7 - R6 (S); 246 1.1 christos R4 = R1 - R2 (S); 247 1.1 christos R7 = R4 - R0 (S); 248 1.1 christos R5 = R6 - R4 (S); 249 1.1 christos R2 = R5 - R5 (S); 250 1.1 christos R6 = R2 - R1 (S); 251 1.1 christos R0 = R0 - R7 (S); 252 1.1 christos CHECKREG r0, 0x7FFFFFFF; 253 1.1 christos CHECKREG r1, 0x80000000; 254 1.1 christos CHECKREG r2, 0x00000000; 255 1.1 christos CHECKREG r3, 0x00000000; 256 1.1 christos CHECKREG r4, 0x80000000; 257 1.1 christos CHECKREG r5, 0x7FFFFFFF; 258 1.1 christos CHECKREG r6, 0x7FFFFFFF; 259 1.1 christos CHECKREG r7, 0x80000000; 260 1.1 christos 261 1.1 christos 262 1.1 christos pass 263