diff options
Diffstat (limited to 'lib/birdlib.h')
-rw-r--r-- | lib/birdlib.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/lib/birdlib.h b/lib/birdlib.h index 7cd78032..9743da32 100644 --- a/lib/birdlib.h +++ b/lib/birdlib.h @@ -73,6 +73,12 @@ static inline int u64_cmp(u64 i1, u64 i2) #define UNUSED __attribute__((unused)) #define PACKED __attribute__((packed)) +#ifdef HAVE_THREAD_LOCAL +#define THREAD_LOCAL _Thread_local +#else +#define THREAD_LOCAL +#endif + /* Microsecond time */ typedef s64 btime; @@ -164,6 +170,15 @@ void debug(const char *msg, ...); /* Printf to debug output */ #define ASSERT(x) do { if (!(x)) log(L_BUG "Assertion '%s' failed at %s:%d", #x, __FILE__, __LINE__); } while(0) #endif +#ifdef DEBUGGING +asm( + ".pushsection \".debug_gdb_scripts\", \"MS\",@progbits,1\n" + ".byte 1\n" /* Python */ + ".asciz \"bird-gdb.py\"\n" + ".popsection\n" + ); +#endif + /* Pseudorandom numbers */ u32 random_u32(void); |