1 #include "gpsim_assert.h"
3 // Addition tests - mostly int's
5 /* bit types are not ANSI - so provide a way of disabling bit types
6 * if this file is used to test other compilers besides SDCC */
7 #define SUPPORT_BIT_TYPES 0
10 unsigned char failures=0;
20 unsigned long ulong0 = 0;
21 unsigned long ulong1 = 0;
44 ASSERT(MANGLE(failures) == 0);
48 void add_char2char(void)
55 char0 = char0 + char1;
70 void add_compound_char(void)
77 if((char0+char1) != 13)
81 void add_int2int(void)
98 void add_compound_int(void)
105 if((int0+int1) != 13)
110 void add_lit2long(void)
121 long0 = long0 + 0xff;
126 long0 = long0 + 0x100;
131 long0 = long0 + 0xfe00;
135 long0 = long0 + 0xff0000;
136 if(long0 != 0x1000000)
139 long0 = long0 + 0x7e000000;
140 if(long0 != 0x7f000000)
143 /* wrap around zero */
144 long0 = long0 + 0x2000000;
145 if(long0 != -0x7f000000)
148 long0 = long0 + 0x7f000000;
154 void add_lit2ulong(void)
165 ulong0 = ulong0 + 0xff;
170 ulong0 = ulong0 + 0x100;
175 ulong0 = ulong0 + 0xfe00;
176 if(ulong0 != 0x10000)
179 ulong0 = ulong0 + 0xff0000;
180 if(ulong0 != 0x1000000)
183 ulong0 = ulong0 + 0x7e000000;
184 if(ulong0 != 0x7f000000)
187 ulong0 = ulong0 + 0x2000000;
188 if(ulong0 != 0x81000000)
191 /* wrap around zero */
192 ulong0 = ulong0 + 0x7f000000;