12 int mul1(int x, int y)
17 int mul2(int x, int y, int z)
22 int mul3(int x, int y, int z)
27 int sub0(int x, int y, int z)
32 int sub1(int x, int y)
34 return x - (y * CONST);
37 int sub2(int x, int y)
42 int sub3(int x, int y)
51 int cmp1(int x, int y) {
55 int cmp2(int x, int y) {
59 int cmp3(int x, int y) {
63 int cmp4(int x, int y) {
67 int cmp5(int x, int y, int z) {
68 return x + z == z + y;
71 int cmp6(int x, int y, int z) {
72 return x + z != y + z;
75 int cmp7(int x, int y, int z) {
76 return x - z == y - z;
79 int cmp8(int x, int y, int z) {
91 int cmp11(int x, int y) {
95 int cmp12(int x, int y) {
96 return x + y == x && y + x == y;
99 int and1(int a, int b) {
103 int and2(int a, int b) {
104 return (a|b) & ~(a&b);
135 int shrs1(unsigned x) {
139 int demorgan1(int a, int b) {
143 int demorgan2(int a, int b) {
147 int eor1(int a, int b) {
152 return (a << 3) == (5<<3);
156 return (a << 3) == 41;
159 int shr2(unsigned int a) {
160 return (a >> 3) == 5;
163 int shr3(unsigned int a) {
164 return (a >> 3) == (1 << 29);
168 return (a >> 3) == 5;
172 return (a >> 3) == -5;
176 return (a >> 3) == (1 << 29);
179 int conv1(signed char a) {
183 int conv2(unsigned char a) {
187 int conv3(signed char a) {
188 return (unsigned)a != 0;
212 return (a / b) + (a % b);
221 #define TU(func,x,expect) \
222 printf("%s(%d) = %d (should be %d)\n", #func, x, func(x), expect);
223 #define TB(func,x,y,expect) \
224 printf("%s(%d,%d) = %d (should be %d)\n", #func, x, y, func(x,y), expect);
225 #define TT(func,x,y,z,expect) \
226 printf("%s(%d,%d,%d) = %d (should be %d)\n", #func, x, y, z, func(x,y,z), expect);
230 TT(mul2, 9, 2, 5, 27);
231 TT(mul3, 5, 2, 9, 27);
232 TT(sub0, 42, 17, 59, 84);
233 TB(sub1, 23, 17, -691);
234 TB(sub2, 42, 17, 59);
235 TB(sub3, 42, 17, -59);
241 TT(cmp5, 42, 17, -4, 0);
242 TT(cmp6, 42, 17, -4, 1);
243 TT(cmp7, 42, 17, -4, 0);
244 TT(cmp8, 42, 17, -4, 1);
252 TB(and1, 42, 17, 42);
253 TB(and2, 42, 17, 42^17);
258 TB(demorgan1, 42, 17, ~(42|17));
259 TB(demorgan2, 42, 17, ~(42&17));
260 TB(eor1, 42, 44, 42&~44);