xref: /netbsd-src/external/gpl3/gdb/dist/sim/testsuite/bfin/random_0030.S (revision 4b169a6ba595ae283ca507b26b15fdff40495b1c)
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