]> rtime.felk.cvut.cz Git - l4.git/blob - kernel/fiasco/src/types/ia32/types-arch.h
update
[l4.git] / kernel / fiasco / src / types / ia32 / types-arch.h
1 #ifndef TYPES_ARCH_H__
2 #define TYPES_ARCH_H__
3
4 #define L4_PTR_ARG(a) ((Address)(a)) 
5
6 #define L4_PTR_FMT             "%08lx"
7 #define L4_MWORD_FMT           "%08lx"
8 #define L4_X64_FMT             "%016llx"
9 #define L4_ADDR_INPUT_FMT      "%8x"
10 #define L4_FRAME_INPUT_FMT     "%5x"
11
12 /// standard fixed-width types
13 typedef unsigned char          Unsigned8;
14 typedef signed char            Signed8;
15 typedef unsigned short         Unsigned16;
16 typedef signed short           Signed16;
17 typedef unsigned int           Unsigned32;
18 typedef signed int             Signed32;
19 typedef unsigned long long int Unsigned64;
20 typedef signed long long int   Signed64;
21
22 /// machine word
23 typedef signed long int        Smword;
24 typedef unsigned long int      Mword;
25
26 enum {
27   MWORD_BITS =32,
28   ARCH_PAGE_SHIFT = 12,
29 };
30
31 /// (virtual or physical address) should be addr_t or something
32 typedef unsigned long int      Address;
33 enum Address_vals
34 #ifdef __cplusplus
35 : Address
36 #endif
37 {
38   Invalid_address = ~0UL
39 };
40
41 typedef Unsigned64 Cpu_time;
42
43
44 #endif