Imported Upstream version 2.9.0
[debian/cc1111] / src / regression / compare2.c
1 #include "gpsim_assert.h"
2
3 unsigned char failures = 0;
4 unsigned char dummy = 0;
5
6 unsigned int aint0 = 0;
7 unsigned int aint1 = 0;
8 unsigned char achar0 = 0;
9 unsigned char achar1 = 0;
10
11 void
12 done()
13 {
14   ASSERT(MANGLE(failures) == 0);
15   PASSED();
16 }
17
18 void
19 char_lt_char (void)
20 {
21   if (achar0 < achar1)
22     failures++;
23 }
24
25 void
26 char_gt_char (void)
27 {
28   if (achar1 > achar0)
29     failures++;
30 }
31
32 void
33 char_lte_char (void)
34 {
35   if (achar0 <= achar1)
36     failures++;
37 }
38
39 void
40 char_gte_char (void)
41 {
42   if (achar1 >= achar0)
43     failures++;
44 }
45
46 void
47 char_lt_lit (void)
48 {
49   if (achar1 < 0x10)
50     failures++;
51 }
52
53 void
54 char_gt_lit (void)
55 {
56   if (achar1 > 0x10)
57     failures++;
58 }
59
60 void
61 char_lte_lit (void)
62 {
63   if (achar1 <= 0x0f)
64     failures++;
65 }
66
67 void
68 char_gte_lit (void)
69 {
70   if (achar1 >= 0x11)
71     failures++;
72 }
73
74
75 /* now repeat test using negative logic */
76 void
77 char_lt_char_else (void)
78 {
79   if (achar0 >= achar1)
80     dummy++;
81   else
82     failures++;
83 }
84
85 void
86 char_gt_char_else (void)
87 {
88   if (achar1 <= achar0)
89     dummy++;
90   else
91     failures++;
92 }
93
94 void
95 char_lte_char_else (void)
96 {
97   if (achar0 > achar1)
98     dummy++;
99   else
100     failures++;
101 }
102
103 void
104 char_gte_char_else (void)
105 {
106   if (achar1 < achar0)
107     dummy++;
108   else
109     failures++;
110 }
111
112 void
113 char_lt_lit_else (void)
114 {
115   if (achar1 >= 0x10)
116     dummy++;
117   else
118     failures++;
119 }
120
121 void
122 char_gt_lit_else (void)
123 {
124   if (achar1 <= 0x10)
125     dummy++;
126   else
127     failures++;
128 }
129
130 void
131 char_lte_lit_else (void)
132 {
133   if (achar1 > 0x0f)
134     dummy++;
135   else
136     failures++;
137 }
138
139 void
140 char_gte_lit_else (void)
141 {
142   if (achar1 < 0x11)
143     dummy++;
144   else
145     failures++;
146 }
147
148
149 /* ints */
150
151 void
152 int_lt_int (void)
153 {
154   if (aint0 < aint1)
155     failures++;
156 }
157
158 void
159 int_gt_int (void)
160 {
161   if (aint1 > aint0)
162     failures++;
163 }
164
165 void
166 int_lte_int (void)
167 {
168   if (aint0 <= aint1)
169     failures++;
170 }
171
172 void
173 int_gte_int (void)
174 {
175   if (aint1 >= aint0)
176     failures++;
177 }
178
179 void
180 int_lt_lit (void)
181 {
182   if (aint1 < 0x10)
183     failures++;
184 }
185
186 void
187 int_gt_lit (void)
188 {
189   if (aint1 > 0x10)
190     failures++;
191 }
192
193 void
194 int_lte_lit (void)
195 {
196   if (aint1 <= 0x0f)
197     failures++;
198 }
199
200 void
201 int_gte_lit (void)
202 {
203   if (aint1 >= 0x11)
204     failures++;
205 }
206
207
208
209
210 /* now repeat int comparisons using negative logic */
211
212 void
213 int_lt_int_else (void)
214 {
215   if (aint0 >= aint1)
216     dummy++;
217   else
218     failures++;
219 }
220
221 void
222 int_gt_int_else (void)
223 {
224   if (aint1 <= aint0)
225     dummy++;
226   else
227     failures++;
228 }
229
230 void
231 int_lte_int_else (void)
232 {
233   if (aint0 > aint1)
234     dummy++;
235   else
236     failures++;
237 }
238
239 void
240 int_gte_int_else (void)
241 {
242   if (aint1 < aint0)
243     dummy++;
244   else
245     failures++;
246 }
247
248 void
249 int_lt_lit_else (void)
250 {
251   if (aint1 >= 0x10)
252     dummy++;
253   else
254     failures++;
255 }
256
257 void
258 int_gt_lit_else (void)
259 {
260   if (aint1 <= 0x10)
261     dummy++;
262   else
263     failures++;
264 }
265
266 void
267 int_lte_lit_else (void)
268 {
269   if (aint1 > 0x0f)
270     dummy++;
271   else
272     failures++;
273 }
274
275 void
276 int_gte_lit_else (void)
277 {
278   if (aint1 < 0x11)
279     dummy++;
280   else
281     failures++;
282 }
283
284
285
286
287
288
289 void
290 main (void)
291 {
292
293   char_lt_char ();
294   char_gt_char ();
295
296   achar0++;
297   char_lt_char ();
298   char_gt_char ();
299   char_gte_char ();
300   char_lte_char ();
301
302   achar1 = 0x10;
303   char_lt_lit ();
304   char_gt_lit ();
305   char_lte_lit ();
306   char_gte_lit ();
307
308
309   achar0 = 0;
310   achar1 = 0;
311
312   char_lt_char_else ();
313   char_gt_char_else ();
314
315   achar0++;
316   char_lt_char_else ();
317   char_gt_char_else ();
318   char_gte_char_else ();
319   char_lte_char_else ();
320
321   achar1 = 0x10;
322   char_lt_lit_else ();
323   char_gt_lit_else ();
324   char_lte_lit_else ();
325   char_gte_lit_else ();
326
327
328
329   int_lt_int ();
330   int_gt_int ();
331
332   aint0++;
333   int_lt_int ();
334   int_gt_int ();
335   int_gte_int ();
336   int_lte_int ();
337
338   aint1 = 0x10;
339   int_lt_lit ();
340   int_gt_lit ();
341   int_lte_lit ();
342   int_gte_lit ();
343
344   aint0=0;
345   aint1=0;
346   int_lt_int_else ();
347   int_gt_int_else ();
348
349   aint0++;
350   int_lt_int_else ();
351   int_gt_int_else ();
352   int_gte_int_else ();
353   int_lte_int_else ();
354
355   aint1 = 0x10;
356   int_lt_lit_else ();
357   int_gt_lit_else ();
358   int_lte_lit_else ();
359   int_gte_lit_else ();
360
361   done ();
362 }