Imported Upstream version 2.9.0
[debian/cc1111] / src / regression / compare6.c
1 #include "gpsim_assert.h"
2 // Compound comparisons
3
4 unsigned char success = 0;
5 unsigned char failures = 0;
6 unsigned char dummy = 0;
7
8 //bit bit0 = 0;
9 int int0 = 0;
10 int int1 = 0;
11 unsigned char uchar0 = 0;
12 unsigned char uchar1 = 0;
13 char char0 = 0;
14 char char1 = 0;
15 char long0 = 0;
16 char long1 = 0;
17
18 void
19 done()
20 {
21   ASSERT(MANGLE(failures) == 0);
22   PASSED();
23 }
24
25 void
26 c_char(void)
27 {
28
29   if(char0 || char1)
30     failures++;
31
32   if(char0 && char1)
33     failures++;
34
35   if(char0 > char1)
36     failures++;
37
38   if((char0+1)  < char1)
39     failures++;
40
41   if((char0+5) >= (char1+9))
42     failures++;
43
44   char0++;
45
46   if(char0 && char1)
47     failures++;
48
49   if(char0 != (char1+1) )
50     failures++;
51
52   if(!char0)
53     failures++;
54
55   if(char1 || !char0)
56     failures++;
57
58   if((char0 >5 ) && (char0 < 10)) 
59     failures++;
60
61   char0 +=5; /* char0 = 6 now */
62
63
64   if(!((char0 >5 ) && (char0 < 10)))
65     failures++;
66
67 }
68
69
70 void
71 c_int(void)
72 {
73
74   if(int0 || int1)
75     failures++;
76
77   if(int0 && int1)
78     failures++;
79
80   if(int0 > int1)
81     failures++;
82
83   if((int0+1)  < int1)
84     failures++;
85
86   if((int0+5) >= (int1+9))
87     failures++;
88
89   int0++;
90
91   if(int0 && int1)
92     failures++;
93
94   if(int0 != (int1+1) )
95     failures++;
96
97   if(!int0)
98     failures++;
99
100   if(int1 || !int0)
101     failures++;
102
103   if((int0 >5 ) && (int0 < 10)) 
104     failures++;
105
106   int0 +=5; /* int0 = 6 now */
107
108
109   if(!((int0 >5 ) && (int0 < 10)))
110     failures++;
111
112 }
113
114
115 void
116 c_long(void)
117 {
118
119   if(long0 || long1)
120     failures++;
121
122   if(long0 && long1)
123     failures++;
124
125   if(long0 > long1)
126     failures++;
127
128   if((long0+1)  < long1)
129     failures++;
130
131   if((long0+5) >= (long1+9))
132     failures++;
133
134   long0++;
135
136   if(long0 && long1)
137     failures++;
138
139   if(long0 != (long1+1) )
140     failures++;
141
142   if(!long0)
143     failures++;
144
145   if(long1 || !long0)
146     failures++;
147
148   if((long0 >5 ) && (long0 < 10)) 
149     failures++;
150
151   long0 +=5; /* long0 = 6 now */
152
153
154   if(!((long0 >5 ) && (long0 < 10)))
155     failures++;
156
157 }
158
159 void
160 c_uminus(void)
161 {
162
163   int1 = -int0;
164   if(int1 < 0)
165     failures++;
166 }
167
168 void
169 main (void)
170 {
171
172   c_char();
173   c_int();
174   c_long();
175
176   int0 = -1;
177   c_uminus();
178   if(int1 != 1)
179     failures++;
180
181   success = failures;
182   done ();
183 }
184