Add qemu 2.4.0
[kvmfornfv.git] / qemu / roms / openbios / include / arch / amd64 / types.h
1 /* tag: data types for forth engine
2  *
3  * This file is autogenerated by types.sh. Do not edit!
4  *
5  * Copyright (C) 2003 Patrick Mauritz, Stefan Reinauer
6  *
7  * See the file "COPYING" for further information about
8  * the copyright and warranty status of this work.
9  */
10
11 #ifndef __TYPES_H
12 #define __TYPES_H
13
14 #include <inttypes.h>
15
16 /* endianess */
17 #include "autoconf.h"
18
19 /* physical address */
20
21 typedef uint64_t phys_addr_t;
22
23 #define FMT_plx "%016" PRIx64
24
25 /* cell based types */
26
27 typedef int64_t     cell;
28 typedef uint64_t    ucell;
29 typedef __int128_t  dcell;
30 typedef __uint128_t ducell;
31
32 #define FMT_cell    "%" PRId64
33 #define FMT_ucellx  "%016" PRIx64
34 #define FMT_ucell   "%" PRIu64
35
36 typedef int64_t         prom_arg_t;
37 typedef uint64_t        prom_uarg_t;
38
39 #define PRIdPROMARG     PRId64
40 #define PRIuPROMARG     PRIu64
41 #define PRIxPROMARG     PRIx64
42 #define FMT_prom_arg    "%" PRIdPROMARG
43 #define FMT_prom_uarg   "%" PRIuPROMARG
44 #define FMT_prom_uargx  "%016" PRIxPROMARG
45
46 #define FMT_elf     "%#x"
47
48 #define bitspercell     (sizeof(cell)<<3)
49 #define bitsperdcell    (sizeof(dcell)<<3)
50
51 #define BITS            64
52
53 #define PAGE_SHIFT      12
54
55 /* size named types */
56
57 typedef unsigned char   u8;
58 typedef unsigned short u16;
59 typedef unsigned int   u32;
60 typedef unsigned long  u64;
61
62 typedef char            s8;
63 typedef short           s16;
64 typedef int             s32;
65 typedef long            s64;
66
67 #endif