1 # mach: bfin 2 #include "test.h" 3 .include "testutils.inc" 4 5 start 6 7 dmm32 ASTAT, (0x44004010 | _VS | _AV1S | _AV0S | _AC1 | _AC0 | _AQ | _CC | _AC0_COPY); 8 dmm32 A1.w, 0x851fa4fc; 9 dmm32 A1.x, 0x00000000; 10 imm32 R0, 0x00000000; 11 imm32 R2, 0x80000000; 12 imm32 R5, 0x139d77b4; 13 R5.H = (A1 += R2.L * R0.L) (M, S2RND); 14 checkreg R5, 0x7fff77b4; 15 checkreg A1.w, 0x851fa4fc; 16 checkreg A1.x, 0x00000000; 17 checkreg ASTAT, (0x44004010 | _VS | _V | _AV1S | _AV0S | _AC1 | _AC0 | _AQ | _CC | _V_COPY | _AC0_COPY); 18 19 dmm32 ASTAT, (0x48000600 | _VS | _V | _AV1S | _CC | _V_COPY); 20 dmm32 A1.w, 0xc5ee7420; 21 dmm32 A1.x, 0x00000000; 22 imm32 R1, 0x45f17fff; 23 imm32 R2, 0x00000000; 24 imm32 R4, 0xffffffff; 25 R1 = (A1 -= R2.L * R4.H) (M, S2RND); 26 checkreg R1, 0x7fffffff; 27 checkreg A1.w, 0xc5ee7420; 28 checkreg A1.x, 0x00000000; 29 checkreg ASTAT, (0x48000600 | _VS | _V | _AV1S | _CC | _V_COPY); 30 31 dmm32 ASTAT, (0x48500a10 | _VS | _V | _AV1S | _AC0 | _CC | _V_COPY | _AC0_COPY | _AZ); 32 dmm32 A1.w, 0x965cddab; 33 dmm32 A1.x, 0x00000063; 34 imm32 R1, 0x1d4cc3e7; 35 imm32 R3, 0xe7ce9d8e; 36 imm32 R6, 0x3cc80b2f; 37 R6.H = (A1 -= R3.L * R1.L) (M, S2RND); 38 checkreg R6, 0x7fff0b2f; 39 checkreg A1.w, 0xe1b28889; 40 checkreg A1.x, 0x00000063; 41 checkreg ASTAT, (0x48500a10 | _VS | _V | _AV1S | _AC0 | _CC | _V_COPY | _AC0_COPY | _AZ); 42 43 dmm32 ASTAT, (0x44308410 | _VS | _AV0S | _CC | _AN); 44 dmm32 A1.w, 0x92315df7; 45 dmm32 A1.x, 0x0000007e; 46 imm32 R1, 0x9e4b24e0; 47 imm32 R4, 0xe3da8000; 48 imm32 R7, 0x00ba086c; 49 R1.H = (A1 -= R7.L * R4.H) (M, S2RND); 50 checkreg R1, 0x7fff24e0; 51 checkreg A1.w, 0x8ab26dff; 52 checkreg A1.x, 0x0000007e; 53 checkreg ASTAT, (0x44308410 | _VS | _V | _AV0S | _CC | _V_COPY | _AN); 54 55 dmm32 ASTAT, (0x10a00090 | _VS | _V | _AC0 | _AQ | _CC | _V_COPY | _AC0_COPY); 56 dmm32 A1.w, 0x8ed084bf; 57 dmm32 A1.x, 0xffffffbe; 58 imm32 R0, 0x8000ffff; 59 imm32 R3, 0xbb4e34ef; 60 imm32 R5, 0x7af8492d; 61 R5 = (A1 += R3.L * R0.L) (M, S2RND); 62 checkreg R5, 0x80000000; 63 checkreg A1.w, 0xc3bf4fd0; 64 checkreg A1.x, 0xffffffbe; 65 checkreg ASTAT, (0x10a00090 | _VS | _V | _AC0 | _AQ | _CC | _V_COPY | _AC0_COPY); 66 67 dmm32 ASTAT, (0x10f04e10 | _VS | _V | _AV1S | _AV0S | _AC1 | _AN | _AZ); 68 dmm32 A1.w, 0x81becdd8; 69 dmm32 A1.x, 0x00000058; 70 imm32 R2, 0x14946201; 71 imm32 R4, 0x1a162edd; 72 R2.H = (A1 -= R2.L * R4.L) (M, S2RND); 73 checkreg R2, 0x7fff6201; 74 checkreg A1.w, 0x6fce04fb; 75 checkreg A1.x, 0x00000058; 76 checkreg ASTAT, (0x10f04e10 | _VS | _V | _AV1S | _AV0S | _AC1 | _V_COPY | _AN | _AZ); 77 78 dmm32 ASTAT, (0x20f04c80 | _VS | _AV0S | _AN); 79 dmm32 A1.w, 0xe9cc0041; 80 dmm32 A1.x, 0x00000079; 81 imm32 R1, 0x0f62a5a2; 82 imm32 R3, 0x4e8e9bdd; 83 imm32 R7, 0x6630d991; 84 R1 = (A1 -= R3.L * R7.H) (M, S2RND); 85 checkreg R1, 0x7fffffff; 86 checkreg A1.w, 0x11c4b8d1; 87 checkreg A1.x, 0x0000007a; 88 checkreg ASTAT, (0x20f04c80 | _VS | _V | _AV0S | _V_COPY | _AN); 89 90 dmm32 ASTAT, (0x20104e00 | _VS | _AC1 | _AC0 | _AQ | _AN); 91 dmm32 A1.w, 0xadeb5c67; 92 dmm32 A1.x, 0xffffffa6; 93 imm32 R1, 0x07911840; 94 imm32 R7, 0x01070000; 95 R7 = (A1 += R1.L * R7.H) (M, S2RND); 96 checkreg R7, 0x80000000; 97 checkreg A1.w, 0xae044627; 98 checkreg A1.x, 0xffffffa6; 99 checkreg ASTAT, (0x20104e00 | _VS | _V | _AC1 | _AC0 | _AQ | _V_COPY | _AN); 100 101 dmm32 ASTAT, (0x08e04010 | _VS | _AV0S); 102 dmm32 A1.w, 0xff80f384; 103 dmm32 A1.x, 0x00000003; 104 imm32 R1, 0x00000000; 105 imm32 R2, 0x8000387c; 106 imm32 R3, 0x1e547fff; 107 R2.H = (A1 -= R1.L * R3.L) (M, S2RND); 108 checkreg R2, 0x7fff387c; 109 checkreg A1.w, 0xff80f384; 110 checkreg A1.x, 0x00000003; 111 checkreg ASTAT, (0x08e04010 | _VS | _V | _AV0S | _V_COPY); 112 113 dmm32 ASTAT, (0x0cf08280 | _VS | _AV1S | _AC1 | _CC | _AN); 114 dmm32 A1.w, 0x80000000; 115 dmm32 A1.x, 0xffffff80; 116 imm32 R2, 0xecc35cac; 117 imm32 R4, 0x00007fff; 118 imm32 R7, 0x80000000; 119 R7 = (A1 -= R4.L * R2.L) (M, S2RND); 120 checkreg R7, 0x80000000; 121 checkreg A1.w, 0x51aa5cac; 122 checkreg A1.x, 0xffffff80; 123 checkreg ASTAT, (0x0cf08280 | _VS | _V | _AV1S | _AC1 | _CC | _V_COPY | _AN); 124 125 dmm32 ASTAT, (0x40c08090 | _VS | _AV1S | _AV0S | _AV0 | _AC1 | _AC0 | _AQ | _CC | _AC0_COPY | _AN); 126 dmm32 A1.w, 0xfcbe6525; 127 dmm32 A1.x, 0x00000039; 128 imm32 R0, 0x0003f3c0; 129 imm32 R2, 0xfffffffc; 130 imm32 R6, 0xffff0000; 131 R0.H = (A1 -= R2.L * R6.H) (M, S2RND); 132 checkreg R0, 0x7ffff3c0; 133 checkreg A1.w, 0xfcc26521; 134 checkreg A1.x, 0x00000039; 135 checkreg ASTAT, (0x40c08090 | _VS | _V | _AV1S | _AV0S | _AV0 | _AC1 | _AC0 | _AQ | _CC | _V_COPY | _AC0_COPY | _AN); 136 137 dmm32 ASTAT, (0x00704c10 | _VS | _V | _AV0S | _AC1 | _AC0 | _AQ | _V_COPY); 138 dmm32 A1.w, 0xdfbb3c19; 139 dmm32 A1.x, 0x00000000; 140 imm32 R0, 0x50407788; 141 imm32 R4, 0x50407788; 142 imm32 R6, 0x0d3f0c0a; 143 R6.H = (A1 -= R4.L * R0.L) (M, S2RND); 144 checkreg R6, 0x7fff0c0a; 145 checkreg A1.w, 0xa7eb83d9; 146 checkreg A1.x, 0x00000000; 147 checkreg ASTAT, (0x00704c10 | _VS | _V | _AV0S | _AC1 | _AC0 | _AQ | _V_COPY); 148 149 dmm32 ASTAT, (0x3c50c610 | _VS | _V | _AV1S | _AC1 | _CC | _V_COPY | _AN); 150 dmm32 A1.w, 0xbc7ca70b; 151 dmm32 A1.x, 0xffffff80; 152 imm32 R1, 0x76b3a772; 153 imm32 R2, 0x5cc87864; 154 imm32 R5, 0x33169c34; 155 R1 = (A1 += R2.L * R5.H) (M, S2RND); 156 checkreg R1, 0x80000000; 157 checkreg A1.w, 0xd482eba3; 158 checkreg A1.x, 0xffffff80; 159 checkreg ASTAT, (0x3c50c610 | _VS | _V | _AV1S | _AC1 | _CC | _V_COPY | _AN); 160 161 dmm32 ASTAT, (0x50008480 | _VS | _AC1 | _AC0 | _AQ | _AC0_COPY); 162 dmm32 A1.w, 0xd843bd0f; 163 dmm32 A1.x, 0x00000027; 164 imm32 R0, 0xc5d36b7c; 165 imm32 R7, 0x7fff8000; 166 R0.H = (A1 += R0.L * R7.L) (M, S2RND); 167 checkreg R0, 0x7fff6b7c; 168 checkreg A1.w, 0x0e01bd0f; 169 checkreg A1.x, 0x00000028; 170 checkreg ASTAT, (0x50008480 | _VS | _V | _AC1 | _AC0 | _AQ | _V_COPY | _AC0_COPY); 171 172 dmm32 ASTAT, (0x50208610 | _VS | _V | _AV1S | _AV0S | _V_COPY | _AN); 173 dmm32 A1.w, 0xcf30f0be; 174 dmm32 A1.x, 0xffffffad; 175 imm32 R0, 0x6d8f3470; 176 imm32 R4, 0x4174b386; 177 imm32 R6, 0x0793b3dd; 178 R0.H = (A1 -= R4.L * R6.H) (M, S2RND); 179 checkreg R0, 0x80003470; 180 checkreg A1.w, 0xd17430cc; 181 checkreg A1.x, 0xffffffad; 182 checkreg ASTAT, (0x50208610 | _VS | _V | _AV1S | _AV0S | _V_COPY | _AN); 183 184 dmm32 ASTAT, (0x60700c10 | _VS | _V | _AV1S | _AV0S | _AQ | _V_COPY | _AC0_COPY); 185 dmm32 A1.w, 0xc867b111; 186 dmm32 A1.x, 0xffffff90; 187 imm32 R4, 0x580f445e; 188 imm32 R5, 0x1fb2e64b; 189 imm32 R6, 0xb6bc814b; 190 R6.H = (A1 += R5.L * R4.L) (M, S2RND); 191 checkreg R6, 0x8000814b; 192 checkreg A1.w, 0xc18a2c9b; 193 checkreg A1.x, 0xffffff90; 194 checkreg ASTAT, (0x60700c10 | _VS | _V | _AV1S | _AV0S | _AQ | _V_COPY | _AC0_COPY); 195 196 dmm32 ASTAT, (0x4070c080 | _AV0S | _CC); 197 dmm32 A1.w, 0xe1239b9f; 198 dmm32 A1.x, 0xffffffcd; 199 imm32 R4, 0xe4d2beb4; 200 imm32 R5, 0x1c919600; 201 imm32 R6, 0x18356124; 202 R5.H = (A1 -= R4.L * R6.L) (M, S2RND); 203 checkreg R5, 0x80009600; 204 checkreg A1.w, 0xf9ea964f; 205 checkreg A1.x, 0xffffffcd; 206 checkreg ASTAT, (0x4070c080 | _VS | _V | _AV0S | _CC | _V_COPY); 207 208 dmm32 ASTAT, (0x50608210 | _VS | _AV1S | _AV0S | _AV0 | _AC0 | _AQ | _CC | _AC0_COPY | _AN); 209 dmm32 A1.w, 0xe8c00d5a; 210 dmm32 A1.x, 0xffffffbe; 211 imm32 R1, 0x2baf99f2; 212 imm32 R4, 0x03e69887; 213 imm32 R7, 0x07f45a0f; 214 R1 = (A1 -= R7.L * R4.H) (M, S2RND); 215 checkreg R1, 0x80000000; 216 checkreg A1.w, 0xe760f6e0; 217 checkreg A1.x, 0xffffffbe; 218 checkreg ASTAT, (0x50608210 | _VS | _V | _AV1S | _AV0S | _AV0 | _AC0 | _AQ | _CC | _V_COPY | _AC0_COPY | _AN); 219 220 pass 221