1# mach: bfin 2#include "test.h" 3.include "testutils.inc" 4 5 start 6 7 dmm32 ASTAT, (0x00a0cc80 | _VS | _AV1S | _AQ | _CC | _AN); 8 dmm32 A1.w, 0x8f7fea28; 9 dmm32 A1.x, 0x00000005; 10 imm32 R2, 0x000014f2; 11 imm32 R4, 0x7fff7fff; 12 imm32 R7, 0x14d3a258; 13 R7.H = (A1 -= R4.L * R2.H) (M, T); 14 checkreg R7, 0x7fffa258; 15 checkreg A1.w, 0x8f7fea28; 16 checkreg A1.x, 0x00000005; 17 checkreg ASTAT, (0x00a0cc80 | _VS | _V | _AV1S | _AQ | _CC | _V_COPY | _AN); 18 19 dmm32 ASTAT, (0x7c90c410 | _VS | _V | _AV1S | _AV0S | _AQ | _CC | _V_COPY); 20 dmm32 A1.w, 0xbfed6ffc; 21 dmm32 A1.x, 0x00000000; 22 imm32 R0, 0x7fffffff; 23 imm32 R5, 0x00000000; 24 imm32 R6, 0xf70a7fff; 25 R0.H = (A1 -= R5.L * R6.L) (M, T); 26 checkreg ASTAT, (0x7c90c410 | _VS | _V | _AV1S | _AV0S | _AQ | _CC | _V_COPY); 27 checkreg A1.w, 0xbfed6ffc; 28 checkreg A1.x, 0x00000000; 29 checkreg R0, 0x7fffffff; 30 checkreg R5, 0x00000000; 31 checkreg R6, 0xf70a7fff; 32 33 dmm32 ASTAT, (0x2c508a10 | _VS | _AV1S | _AV0S | _AC1 | _AQ); 34 dmm32 A1.w, 0xfffd8001; 35 dmm32 A1.x, 0x00000000; 36 imm32 R3, 0x00018000; 37 imm32 R4, 0x7fff8000; 38 imm32 R5, 0x7fff0002; 39 R3.H = (A1 += R5.L * R4.L) (M, T); 40 checkreg R3, 0x7fff8000; 41 checkreg A1.w, 0xfffe8001; 42 checkreg A1.x, 0x00000000; 43 checkreg ASTAT, (0x2c508a10 | _VS | _V | _AV1S | _AV0S | _AC1 | _AQ | _V_COPY); 44 45 dmm32 ASTAT, (0x28408c90 | _VS | _AV1S | _AC0 | _AQ | _AC0_COPY | _AN); 46 dmm32 A1.w, 0x842fbc0a; 47 dmm32 A1.x, 0x00000000; 48 imm32 R0, 0x04c44422; 49 imm32 R3, 0x40f67fff; 50 imm32 R7, 0x448c0856; 51 R7.H = (A1 -= R3.L * R0.H) (M, T); 52 checkreg R7, 0x7fff0856; 53 checkreg A1.w, 0x81cdc0ce; 54 checkreg A1.x, 0x00000000; 55 checkreg ASTAT, (0x28408c90 | _VS | _V | _AV1S | _AC0 | _AQ | _V_COPY | _AC0_COPY | _AN); 56 57 dmm32 ASTAT, (0x44708c10 | _AV1S | _CC | _AC0_COPY | _AN); 58 dmm32 A1.w, 0xaa016cf5; 59 dmm32 A1.x, 0xffffffdb; 60 imm32 R2, 0x25908079; 61 imm32 R5, 0x46eabfcd; 62 imm32 R7, 0x67066230; 63 R2.H = (A1 += R5.L * R7.H) (M, T); 64 checkreg R2, 0x80008079; 65 checkreg A1.w, 0x902b66c3; 66 checkreg A1.x, 0xffffffdb; 67 checkreg ASTAT, (0x44708c10 | _VS | _V | _AV1S | _CC | _V_COPY | _AC0_COPY | _AN); 68 69 dmm32 ASTAT, (0x3c604090 | _VS | _V | _AC0 | _AQ | _CC | _V_COPY | _AC0_COPY); 70 dmm32 A1.w, 0x8eef28b0; 71 dmm32 A1.x, 0x00000023; 72 imm32 R0, 0x000156b2; 73 imm32 R1, 0xfc1a8000; 74 imm32 R5, 0x7fff7fff; 75 R5.H = (A1 += R1.L * R0.H) (M, T); 76 checkreg A1.w, 0x8eeea8b0; 77 checkreg A1.x, 0x00000023; 78 checkreg ASTAT, (0x3c604090 | _VS | _V | _AC0 | _AQ | _CC | _V_COPY | _AC0_COPY); 79 80 dmm32 ASTAT, (0x74208e00 | _VS | _AV0S | _AC0 | _AQ | _AC0_COPY); 81 dmm32 A1.w, 0xed3c9973; 82 dmm32 A1.x, 0x00000000; 83 imm32 R0, 0x80000000; 84 imm32 R1, 0x7fff8000; 85 imm32 R2, 0x00000000; 86 R1.H = (A1 -= R2.L * R0.H) (M, T); 87 checkreg ASTAT, (0x74208e00 | _VS | _V | _AV0S | _AC0 | _AQ | _V_COPY | _AC0_COPY); 88 checkreg A1.w, 0xed3c9973; 89 checkreg A1.x, 0x00000000; 90 checkreg R0, 0x80000000; 91 checkreg R1, 0x7fff8000; 92 checkreg R2, 0x00000000; 93 94 dmm32 ASTAT, (0x10308800 | _VS | _AV0S | _AC0 | _AC0_COPY); 95 dmm32 A1.w, 0x8b345e6e; 96 dmm32 A1.x, 0x00000000; 97 imm32 R3, 0xc40c1663; 98 imm32 R4, 0xd0347fff; 99 imm32 R7, 0x4249da20; 100 R3.H = (A1 += R4.L * R7.H) (M, T); 101 checkreg R3, 0x7fff1663; 102 checkreg A1.w, 0xac589c25; 103 checkreg A1.x, 0x00000000; 104 checkreg ASTAT, (0x10308800 | _VS | _V | _AV0S | _AC0 | _V_COPY | _AC0_COPY); 105 106 dmm32 ASTAT, (0x1c104880 | _VS | _V | _AV1S | _AV0S | _AC1 | _AQ | _CC | _V_COPY | _AZ); 107 dmm32 A1.w, 0xa333ecbc; 108 dmm32 A1.x, 0xffffffea; 109 imm32 R2, 0x7fffffff; 110 imm32 R3, 0x72ea7fff; 111 imm32 R4, 0x07348ad1; 112 R4.H = (A1 += R2.L * R3.L) (M, T); 113 checkreg R4, 0x80008ad1; 114 checkreg A1.w, 0xa3336cbd; 115 checkreg A1.x, 0xffffffea; 116 checkreg ASTAT, (0x1c104880 | _VS | _V | _AV1S | _AV0S | _AC1 | _AQ | _CC | _V_COPY | _AZ); 117 118 dmm32 ASTAT, (0x44904e00 | _VS); 119 dmm32 A1.w, 0x90202372; 120 dmm32 A1.x, 0xffffffc4; 121 imm32 R2, 0x138ac9fc; 122 imm32 R3, 0x720a427f; 123 imm32 R4, 0x800000f5; 124 R3.H = (A1 += R4.L * R2.H) (M, T); 125 checkreg R3, 0x8000427f; 126 checkreg A1.w, 0x9032d684; 127 checkreg A1.x, 0xffffffc4; 128 checkreg ASTAT, (0x44904e00 | _VS | _V | _V_COPY); 129 130 dmm32 ASTAT, (0x48f04c90 | _VS | _V | _AV0S | _AC1 | _AC0 | _AQ | _CC | _V_COPY | _AN); 131 dmm32 A1.w, 0xe9c97364; 132 dmm32 A1.x, 0xffffffef; 133 imm32 R2, 0x001dffe9; 134 imm32 R3, 0x50f06d20; 135 imm32 R6, 0x6179b75b; 136 R6.H = (A1 -= R3.L * R2.L) (M, T); 137 checkreg R6, 0x8000b75b; 138 checkreg A1.w, 0x7cb34144; 139 checkreg A1.x, 0xffffffef; 140 checkreg ASTAT, (0x48f04c90 | _VS | _V | _AV0S | _AC1 | _AC0 | _AQ | _CC | _V_COPY | _AN); 141 142 dmm32 ASTAT, (0x68d00e90 | _VS | _V | _AC0 | _CC | _V_COPY | _AC0_COPY | _AN); 143 dmm32 A1.w, 0xf3d34812; 144 dmm32 A1.x, 0xffffff95; 145 imm32 R1, 0xf7419a18; 146 imm32 R6, 0x0fdf83b3; 147 imm32 R7, 0x0b831070; 148 R7.H = (A1 -= R6.L * R1.H) (M, T); 149 checkreg R7, 0x80001070; 150 checkreg A1.w, 0x6be1229f; 151 checkreg A1.x, 0xffffff96; 152 checkreg ASTAT, (0x68d00e90 | _VS | _V | _AC0 | _CC | _V_COPY | _AC0_COPY | _AN); 153 154 dmm32 ASTAT, (0x3060ce80 | _VS | _AV1S | _AC1 | _CC | _AN); 155 dmm32 A1.w, 0xe0c1fc60; 156 dmm32 A1.x, 0x00000000; 157 imm32 R1, 0x00e97fff; 158 imm32 R7, 0x3fff0001; 159 R1.H = (A1 += R1.L * R7.H) (M, T); 160 checkreg R1, 0x7fff7fff; 161 checkreg A1.w, 0x00c13c61; 162 checkreg A1.x, 0x00000001; 163 checkreg ASTAT, (0x3060ce80 | _VS | _V | _AV1S | _AC1 | _CC | _V_COPY | _AN); 164 165 dmm32 ASTAT, (0x3c80c000 | _VS | _AV0S | _AC0_COPY | _AN); 166 dmm32 A1.w, 0xb0e43973; 167 dmm32 A1.x, 0xffffffbc; 168 imm32 R0, 0x511a6fe3; 169 imm32 R1, 0x43fe2c80; 170 imm32 R2, 0x424b5c19; 171 R0.H = (A1 -= R2.L * R1.H) (M, T); 172 checkreg R0, 0x80006fe3; 173 checkreg A1.w, 0x986e4da5; 174 checkreg A1.x, 0xffffffbc; 175 checkreg ASTAT, (0x3c80c000 | _VS | _V | _AV0S | _V_COPY | _AC0_COPY | _AN); 176 177 pass 178