11 int mul1(int x, int y)
16 int mul2(int x, int y, int z)
21 int mul3(int x, int y, int z)
26 int sub0(int x, int y, int z)
31 int sub1(int x, int y)
33 return x - (y * CONST);
36 int sub2(int x, int y)
41 int sub3(int x, int y)
50 int cmp1(int x, int y) {
54 int cmp2(int x, int y) {
58 int cmp3(int x, int y) {
62 int cmp4(int x, int y) {
66 int cmp5(int x, int y, int z) {
67 return x + z == z + y;
70 int cmp6(int x, int y, int z) {
71 return x + z != y + z;
74 int cmp7(int x, int y, int z) {
75 return x - z == y - z;
78 int cmp8(int x, int y, int z) {
90 int cmp11(int x, int y) {
94 int cmp12(int x, int y) {
95 return x + y == x && y + x == y;
98 int and1(int a, int b) {
102 int and2(int a, int b) {
103 return (a|b) & ~(a&b);
134 int shrs1(unsigned x) {
138 int demorgan1(int a, int b) {
142 int demorgan2(int a, int b) {
146 int eor1(int a, int b) {
151 return (a << 3) == (5<<3);
155 return (a << 3) == 41;
158 int shr2(unsigned int a) {
159 return (a >> 3) == 5;
162 int shr3(unsigned int a) {
163 return (a >> 3) == (1 << 29);
167 return (a >> 3) == 5;
171 return (a >> 3) == -5;
175 return (a >> 3) == (1 << 29);
178 int conv1(signed char a) {
182 int conv2(unsigned char a) {
186 int conv3(signed char a) {
187 return (unsigned)a != 0;
211 return (a / b) + (a % b);
216 #define TU(func,x,expect) \
217 printf("%s(%d) = %d (should be %d)\n", #func, x, func(x), expect);
218 #define TB(func,x,y,expect) \
219 printf("%s(%d,%d) = %d (should be %d)\n", #func, x, y, func(x,y), expect);
220 #define TT(func,x,y,z,expect) \
221 printf("%s(%d,%d,%d) = %d (should be %d)\n", #func, x, y, z, func(x,y,z), expect);
225 TT(mul2, 9, 2, 5, 27);
226 TT(mul3, 5, 2, 9, 27);
227 TT(sub0, 42, 17, 59, 84);
228 TB(sub1, 23, 17, -691);
229 TB(sub2, 42, 17, 59);
230 TB(sub3, 42, 17, -59);
236 TT(cmp5, 42, 17, -4, 0);
237 TT(cmp6, 42, 17, -4, 1);
238 TT(cmp7, 42, 17, -4, 0);
239 TT(cmp8, 42, 17, -4, 1);
247 TB(and1, 42, 17, 42);
248 TB(and2, 42, 17, 42^17);
253 TB(demorgan1, 42, 17, ~(42|17));
254 TB(demorgan2, 42, 17, ~(42&17));
255 TB(eor1, 42, 44, 42&~44);