Home | History | Annotate | Line # | Download | only in bfin
      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