Remove ONE_xBYTE #defines
[akaros.git] / kern / arch / x86 / types.h
1 #pragma once
2
3 #include <stddef.h>
4 #ifndef LITTLE_ENDIAN
5 #define LITTLE_ENDIAN
6 #endif /* !LITTLE_ENDIAN */
7
8 // Explicitly-sized versions of integer types
9 typedef __signed char int8_t;
10 typedef unsigned char uint8_t;
11 typedef short int16_t;
12 typedef unsigned short uint16_t;
13 typedef int int32_t;
14 typedef unsigned int uint32_t;
15 typedef long long int64_t;
16 typedef unsigned long long uint64_t;
17
18 typedef long ssize_t;
19 typedef int pid_t;
20 typedef int uid_t;
21 typedef int gid_t;
22
23 #define NUM_ADDR_BITS 64
24 #define BITS_PER_LONG 64
25 #define MAX_VADDR     ((uint64_t)(~0) >> (64-NUM_ADDR_BITS))
26 typedef uint64_t uintptr_t;
27 typedef int64_t intptr_t;
28 #define PAGE_SHIFT 12
29 #define PAGE_SIZE (1<<PAGE_SHIFT)
30 #define PAGE_MASK 0xFFFFFFFFfffff000