Add qemu 2.4.0
[kvmfornfv.git] / qemu / roms / SLOF / slof / prep.h
1 /******************************************************************************
2  * Copyright (c) 2004, 2008 IBM Corporation
3  * All rights reserved.
4  * This program and the accompanying materials
5  * are made available under the terms of the BSD License
6  * which accompanies this distribution, and is available at
7  * http://www.opensource.org/licenses/bsd-license.php
8  *
9  * Contributors:
10  *     IBM Corporation - initial implementation
11  *****************************************************************************/
12 //
13 // Copyright 2002,2003,2004  Segher Boessenkool  <segher@kernel.crashing.org>
14 //
15
16
17 #define _N(_n)          { .n = _n },
18 #define _O(_n)          { .n = CELLSIZE * (_n) },
19 #define _C(_c)          { .c = _c },
20 #define _A(_a)          { .a = _a },
21
22 #define ref(_xt, _nname) _A(xt_ ## _xt + _nname)
23 #define header(_xt, _header...) static cell xt_ ## _xt[] = { _header
24 #define def(_xts...) _xts };
25 #define lab(_xt) _A(&&code_ ## _xt)
26
27 #define DOCOL lab(DOCOL)
28 #define DODOES lab(DODOES)
29 #define DODEFER lab(DODEFER)
30 #define DOALIAS lab(DOALIAS)
31 #define DOCON lab(DOCON)
32 #define DOVAL lab(DOVAL)
33 #define DOFIELD lab(DOFIELD)
34 #define DOVAR lab(DOVAR)
35 #define DOBUFFER_X3a lab(DOBUFFER_X3a)
36
37 #define cod(_xt) def(lab(_xt))
38 #define col(_xt, _def...) def(DOCOL _def SEMICOLON)
39 #define con(_xt, _def) def(DOCON _N(_def))
40 #define dfr(_xt) def(DODEFER _N(0))
41 #define val(_xt, _def) def(DOVAL _N(_def))
42 #define var(_xt, _def) def(DOVAR _N(_def))
43
44
45 #define raw(_xt, _def) def(_def)
46 #define str(_xt, _def...) def(_def)