net: tcp: Fix TSO for incoming connections
[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))
18
19 #ifdef __GNUC__
20
21 #define uninitialized_var(x) x = x
22
23 #elif defined(__clang__)
24
25 #define uninitialized_var(x) x = *(&(x))
26
27 #endif