1# mach: bfin 2#include "test.h" 3.include "testutils.inc" 4 5 start 6 7 dmm32 ASTAT, (0x74308400 | _VS | _AV1S | _AV0S | _CC | _AN); 8 dmm32 A0.w, 0x5d4cf98c; 9 dmm32 A0.x, 0xffffffff; 10 imm32 R0, 0xba16ffff; 11 imm32 R4, 0x8000109d; 12 imm32 R6, 0x8000b212; 13 R6.L = (A0 -= R4.L * R0.L) (IH); 14 checkreg R6, 0x80008000; 15 checkreg A0.w, 0x80000000; 16 checkreg A0.x, 0xffffffff; 17 checkreg ASTAT, (0x74308400 | _VS | _V | _AV1S | _AV0S | _AV0 | _CC | _V_COPY | _AN); 18 19 dmm32 ASTAT, (0x34e0ce80 | _VS | _V | _AV1S | _V_COPY | _AN); 20 dmm32 A0.w, 0x64bb88af; 21 dmm32 A0.x, 0xffffffff; 22 imm32 R5, 0x00008000; 23 imm32 R7, 0x0001ad69; 24 R5.L = (A0 += R7.H * R7.L) (IH); 25 checkreg A0.w, 0x80000000; 26 checkreg A0.x, 0xffffffff; 27 checkreg ASTAT, (0x34e0ce80 | _VS | _V | _AV1S | _AV0S | _AV0 | _V_COPY | _AN); 28 29 dmm32 ASTAT, (0x4c204c10 | _VS | _V | _AV0S | _AQ | _V_COPY | _AN); 30 dmm32 A1.w, 0x75642aaf; 31 dmm32 A1.x, 0xffffffff; 32 imm32 R2, 0x133dffff; 33 imm32 R4, 0xc00006aa; 34 imm32 R7, 0x7fffffff; 35 R4.H = (A1 -= R2.L * R7.H) (IH); 36 checkreg R4, 0x800006aa; 37 checkreg A1.w, 0x80000000; 38 checkreg A1.x, 0xffffffff; 39 checkreg ASTAT, (0x4c204c10 | _VS | _V | _AV1S | _AV1 | _AV0S | _AQ | _V_COPY | _AN); 40 41 dmm32 ASTAT, (0x48600400 | _VS | _V | _AV0S | _AC1 | _AC0 | _CC | _V_COPY | _AN); 42 dmm32 A0.w, 0x534a596c; 43 dmm32 A0.x, 0xffffffff; 44 imm32 R1, 0x7fff86a7; 45 imm32 R5, 0x1163d244; 46 R1.L = (A0 -= R5.L * R1.L) (IH); 47 checkreg R1, 0x7fff8000; 48 checkreg A0.w, 0x80000000; 49 checkreg A0.x, 0xffffffff; 50 checkreg ASTAT, (0x48600400 | _VS | _V | _AV0S | _AV0 | _AC1 | _AC0 | _CC | _V_COPY | _AN); 51 52 dmm32 ASTAT, (0x38008c90 | _VS | _V | _AV1S | _AC1 | _CC | _V_COPY | _AN); 53 dmm32 A1.w, 0x80000000; 54 dmm32 A1.x, 0xffffffff; 55 imm32 R0, 0x7fffffff; 56 imm32 R1, 0xdee9214c; 57 imm32 R4, 0x79f3c80a; 58 R1.H = (A1 += R0.L * R4.H) (M, IH); 59 checkreg R1, 0x8000214c; 60 checkreg ASTAT, (0x38008c90 | _VS | _AV1S | _AV1 | _AC1 | _CC | _AN); 61 62 dmm32 ASTAT, (0x4cb00a00 | _VS | _AV1S | _AV0S | _AC1 | _AN); 63 dmm32 A0.w, 0x804e7e2f; 64 dmm32 A0.x, 0xffffffff; 65 imm32 R1, 0x3fccdf09; 66 imm32 R2, 0x09e71015; 67 imm32 R6, 0x761ac984; 68 R2.L = (A0 += R6.L * R1.H) (IH); 69 checkreg R2, 0x09e78000; 70 checkreg A0.w, 0x80000000; 71 checkreg A0.x, 0xffffffff; 72 checkreg ASTAT, (0x4cb00a00 | _VS | _V | _AV1S | _AV0S | _AV0 | _AC1 | _V_COPY | _AN); 73 74 dmm32 ASTAT, (0x08904c00 | _VS | _AV0S | _AQ | _AZ); 75 dmm32 A0.w, 0x00000000; 76 dmm32 A0.x, 0x00000000; 77 imm32 R1, 0x80000000; 78 imm32 R2, 0x0001de54; 79 imm32 R5, 0x80000000; 80 R1.L = (A0 -= R5.H * R2.H) (TFU); 81 checkreg ASTAT, (0x08904c00 | _VS | _V | _AV0S | _AV0 | _AQ | _V_COPY | _AZ); 82 checkreg A0.w, 0x00000000; 83 checkreg A0.x, 0x00000000; 84 checkreg R1, 0x80000000; 85 checkreg R2, 0x0001de54; 86 checkreg R5, 0x80000000; 87 88 dmm32 ASTAT, (0x00d04810 | _VS | _AV0S | _CC | _AC0_COPY | _AZ); 89 dmm32 A0.w, 0x00000000; 90 dmm32 A0.x, 0x00000000; 91 imm32 R4, 0x00020000; 92 imm32 R5, 0x35a26677; 93 R4.L = (A0 -= R5.H * R4.H) (TFU); 94 checkreg ASTAT, (0x00d04810 | _VS | _V | _AV0S | _AV0 | _CC | _V_COPY | _AC0_COPY | _AZ); 95 checkreg A0.w, 0x00000000; 96 checkreg A0.x, 0x00000000; 97 checkreg R4, 0x00020000; 98 checkreg R5, 0x35a26677; 99 100 dmm32 ASTAT, (0x08100a80 | _VS | _AV0S | _AQ | _CC); 101 dmm32 A0.w, 0x00000000; 102 dmm32 A0.x, 0x00000000; 103 imm32 R0, 0x000300cc; 104 imm32 R4, 0x00029150; 105 imm32 R7, 0x00ff00ff; 106 R4.L = (A0 -= R0.L * R7.L) (IU); 107 checkreg R4, 0x00020000; 108 checkreg A0.w, 0x00000000; 109 checkreg A0.x, 0x00000000; 110 checkreg ASTAT, (0x08100a80 | _VS | _V | _AV0S | _AV0 | _AQ | _CC | _V_COPY); 111 112 dmm32 ASTAT, (0x6c20c400 | _VS | _AV1S | _AV0S | _CC); 113 dmm32 A0.w, 0x860c9ac9; 114 dmm32 A0.x, 0xffffffff; 115 imm32 R2, 0x860c9a1b; 116 R2.L = (A0 -= R2.H * R2.L) (IH); 117 checkreg R2, 0x860c8000; 118 checkreg A0.w, 0x80000000; 119 checkreg A0.x, 0xffffffff; 120 checkreg ASTAT, (0x6c20c400 | _VS | _V | _AV1S | _AV0S | _AV0 | _CC | _V_COPY); 121 122 dmm32 ASTAT, (0x20f00c10 | _VS | _AV0S | _AQ); 123 dmm32 A0.w, 0x0000de90; 124 dmm32 A0.x, 0x00000000; 125 imm32 R0, 0x00000003; 126 imm32 R1, 0xfffd8000; 127 imm32 R5, 0x4a31921c; 128 R1.L = (A0 -= R5.L * R0.L) (FU); 129 checkreg R1, 0xfffd0000; 130 checkreg A0.w, 0x00000000; 131 checkreg A0.x, 0x00000000; 132 checkreg ASTAT, (0x20f00c10 | _VS | _V | _AV0S | _AV0 | _AQ | _V_COPY); 133 134 dmm32 ASTAT, (0x38700690 | _VS | _V | _AV1S | _AC1 | _AQ | _V_COPY); 135 dmm32 A1.w, 0x00000000; 136 dmm32 A1.x, 0x00000000; 137 imm32 R0, 0x58863d39; 138 imm32 R1, 0x45377355; 139 imm32 R6, 0x00030000; 140 R1.H = (A1 -= R0.L * R6.H) (TFU); 141 checkreg R1, 0x00007355; 142 checkreg ASTAT, (0x38700690 | _VS | _V | _AV1S | _AV1 | _AC1 | _AQ | _V_COPY); 143 144 dmm32 ASTAT, (0x48704880 | _VS | _AV0S | _AC1 | _AC0 | _AQ | _AC0_COPY | _AN); 145 dmm32 A0.w, 0x7fffd68a; 146 dmm32 A0.x, 0xffffffff; 147 imm32 R7, 0x06d88000; 148 R7.L = A0 (IH); 149 checkreg A0.w, 0x7fffd68a; 150 checkreg A0.x, 0xffffffff; 151 checkreg R7, 0x06d88000; 152 checkreg ASTAT, (0x48704880 | _VS | _AV0S | _AC1 | _AC0 | _AQ | _AC0_COPY | _AN); 153 154 pass 155