1 #define F1(a,b) ((long)(a) - (-1UL * (long)(b)))
2 #define F2(a,b) ((long)(a) - (-2UL * (long)(b)))
3 #define F4(a,b) ((long)(a) - (-4UL * (long)(b)))
4 #define F8(a,b) ((long)(a) - (-8UL * (long)(b)))
5 #define F(a,b,c,d) ((long)(a) - (-8UL * ((long)(b) - (-4UL * ((long)(c) - (-2UL * (long)(d)))))))
7 long f1(long, long, long);
8 long f2(long, long, long);
9 long f4(long, long, long);
10 long f8(long, long, long);
11 long f(long, long, long, long, long);
13 RET(f1(0, 3, 20) == F1( 3, 20) &&
14 f1(0, -100, 80) == F1(-100, 80) &&
15 f1(0, 50, -9) == F1( 50, -9) &&
16 f1(0, -77, -50) == F1( -77, -50) &&
18 f2(0, 3, 20) == F2( 3, 20) &&
19 f2(0, -100, 80) == F2(-100, 80) &&
20 f2(0, 50, -9) == F2( 50, -9) &&
21 f2(0, -77, -50) == F2( -77, -50) &&
23 f4(0, 3, 20) == F4( 3, 20) &&
24 f4(0, -100, 80) == F4(-100, 80) &&
25 f4(0, 50, -9) == F4( 50, -9) &&
26 f4(0, -77, -50) == F4( -77, -50) &&
28 f8(0, 3, 20) == F8( 3, 20) &&
29 f8(0, -100, 80) == F8(-100, 80) &&
30 f8(0, 50, -9) == F8( 50, -9) &&
31 f8(0, -77, -50) == F8( -77, -50) &&
33 f(0, 10, 20, 30, 40) == F( 10, 20, 30, 40) &&
34 f(0, -10, 20, -30, 40) == F(-10, 20, -30, 40) &&
35 f(0, 10, -20, 30, -40) == F( 10, -20, 30, -40) &&
36 f(0, -10, -20, -30, -40) == F(-10, -20, -30, -40) &&
38 f1(0, 0x7FFFFFFFFFFFFFFFUL, 0x7FFFFFFFFFFFFFFFUL) ==
39 F1(0x7FFFFFFFFFFFFFFFUL, 0x7FFFFFFFFFFFFFFFUL) &&
40 f2(0, 0x7FFFFFFFFFFFFFFFUL, 0x7FFFFFFFFFFFFFFFUL) ==
41 F2(0x7FFFFFFFFFFFFFFFUL, 0x7FFFFFFFFFFFFFFFUL) &&
42 f4(0, 0x7FFFFFFFFFFFFFFFUL, 0x7FFFFFFFFFFFFFFFUL) ==
43 F4(0x7FFFFFFFFFFFFFFFUL, 0x7FFFFFFFFFFFFFFFUL) &&
44 f8(0, 0x7FFFFFFFFFFFFFFFUL, 0x7FFFFFFFFFFFFFFFUL) ==
45 F8(0x7FFFFFFFFFFFFFFFUL, 0x7FFFFFFFFFFFFFFFUL) &&
47 f1(0, 0x8FFFFFFFFFFFFFFFUL, 0x8FFFFFFFFFFFFFFFUL) ==
48 F1(0x8FFFFFFFFFFFFFFFUL, 0x8FFFFFFFFFFFFFFFUL) &&
49 f2(0, 0x8FFFFFFFFFFFFFFFUL, 0x8FFFFFFFFFFFFFFFUL) ==
50 F2(0x8FFFFFFFFFFFFFFFUL, 0x8FFFFFFFFFFFFFFFUL) &&
51 f4(0, 0x8FFFFFFFFFFFFFFFUL, 0x8FFFFFFFFFFFFFFFUL) ==
52 F4(0x8FFFFFFFFFFFFFFFUL, 0x8FFFFFFFFFFFFFFFUL) &&
53 f8(0, 0x8FFFFFFFFFFFFFFFUL, 0x8FFFFFFFFFFFFFFFUL) ==
54 F8(0x8FFFFFFFFFFFFFFFUL, 0x8FFFFFFFFFFFFFFFUL));