X-Git-Url: https://scm.lunaixsky.com/lunaix-os.git/blobdiff_plain/69777bdcab284335651a8002e2896f3862fa423d..09497c11197e622fc2657e82b4da7cb2e4b6bb22:/lunaix-os/includes/lunaix/compiler.h diff --git a/lunaix-os/includes/lunaix/compiler.h b/lunaix-os/includes/lunaix/compiler.h index a0b8374..28ae36e 100644 --- a/lunaix-os/includes/lunaix/compiler.h +++ b/lunaix-os/includes/lunaix/compiler.h @@ -14,6 +14,8 @@ #define unreachable __builtin_unreachable() #define no_inline __attribute__((noinline)) +#define defualt weak + #define clz(bits) __builtin_clz(bits) #define sadd_overflow(a, b, of) __builtin_sadd_overflow(a, b, of) #define umul_overflow(a, b, of) __builtin_umul_overflow(a, b, of) @@ -28,8 +30,12 @@ #define compact __attribute__((packed)) #define align(v) __attribute__((aligned (v))) +#define cacheline_size 64 +#define cacheline_align align(cacheline_size) + #define export_symbol(domain, namespace, symbol)\ - typeof(symbol)* must_emit __SYMEXPORT_Z##domain##_N##namespace##_S##symbol = &(symbol) + typeof(symbol)* must_emit __SYMEXPORT_Z##domain##_N##namespace##_S##symbol \ + = &(symbol) inline static void noret spin()