Add ifdtool, utility to read / modify Intel Firmware Descriptor images
[coreboot.git] / util / romcc / tests / linux_test12.c
1 #include "linux_syscall.h"
2 #include "linux_console.h"
3
4 #define MACRO(hello, hello2) 1
5
6 #ifndef A
7 #define A 135
8 #endif
9 #define B A
10 #define C B
11 #define D C
12 #define E D
13 #define F E
14 #define G F
15 #define H G
16 #define I H
17
18 #define FOO() "hah?\n"
19 #define BAR(X) ( X " There\n" )
20 #define BAZ(X) #X
21 #define SUM(X, Y) ((X) + (Y))
22 #define REALLY_SUM(...) SUM(__VA_ARGS__)
23
24
25 #define hash_hash #     /* comment */    ## #
26 #define mkstr(a) # a
27 #define in_between(a) mkstr(a)
28 #define join(c, d) in_between(c hash_hash d)
29
30 #define ECHO(X) X
31 #define print_debug(X) ECHO(print_debug(X))
32
33 static void test(void)
34 {
35         print_debug(FOO());
36         print_debug(BAR("Hi!!"));
37         print_debug(BAZ(This should be shown as a string... "enclosed in quotes") "\n");
38         print_debug("This is a quote\" see\n");
39         print_debug(BAR(BAZ(I)));
40
41         print_debug_hex32(REALLY_SUM(1,2));
42         print_debug("\n");
43
44         print_debug(join(x, y) "\n");
45
46         print_debug("romcc: ");
47         print_debug_hex8(__ROMCC__);
48         print_debug(".");
49         print_debug_hex8(__ROMCC_MINOR__);
50         print_debug("\n");
51
52         print_debug(__FILE__);
53         print_debug(":");
54         print_debug(__func__);
55         print_debug(":");
56         print_debug_hex32(__LINE__);
57         print_debug("\n");
58
59         print_debug("Compiled at: ");
60         print_debug(__DATE__);
61         print_debug(" ");
62         print_debug(__TIME__);
63         print_debug("\n");
64
65         print_debug("Compile time: ");
66         print_debug(__TIME__);
67         print_debug("\n");
68
69         _exit(0);
70 }