VMX: Report the correct flags in IA32_APICBASE MSR emulation
[akaros.git] / kern / include / compiler.h
1 #pragma once
2
3 #ifdef __GNUC__
4
5 #define likely(x) __builtin_expect(!!(x), 1)
6 #define unlikely(x) __builtin_expect(!!(x), 0)
7 #define __weak __attribute__((weak))
8
9 #else /* #ifdef __GNUC__ */
10
11 #define likely(x) (x)
12 #define unlikely(x) (x)
13 #define __weak
14
15 #endif /* #ifdef __GNUC__ */
16
17 #define __always_inline inline __attribute__((always_inline))