From 3492219e211678c56b48d3f544cb0c0da9d606a0 Mon Sep 17 00:00:00 2001 From: Felix Fietkau Date: Wed, 7 Sep 2011 09:15:42 +0200 Subject: move some code to utils.[ch] --- utils.h | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 utils.h (limited to 'utils.h') diff --git a/utils.h b/utils.h new file mode 100644 index 0000000..09df8c6 --- /dev/null +++ b/utils.h @@ -0,0 +1,51 @@ +#ifndef __NETIFD_UTILS_H +#define __NETIFD_UTILS_H + +#include + +#ifdef DEBUG +#define DPRINTF(format, ...) fprintf(stderr, "%s(%d): " format, __func__, __LINE__, ## __VA_ARGS__) +#else +#define DPRINTF(format, ...) no_debug(format, ## __VA_ARGS__) +#endif + +static inline void no_debug(const char *fmt, ...) +{ +} + +#define __init __attribute__((constructor)) + +#ifdef __linux__ +static inline int fls(int x) +{ + int r = 32; + + if (!x) + return 0; + if (!(x & 0xffff0000u)) { + x <<= 16; + r -= 16; + } + if (!(x & 0xff000000u)) { + x <<= 8; + r -= 8; + } + if (!(x & 0xf0000000u)) { + x <<= 4; + r -= 4; + } + if (!(x & 0xc0000000u)) { + x <<= 2; + r -= 2; + } + if (!(x & 0x80000000u)) { + x <<= 1; + r -= 1; + } + return r; +} +#endif + +int avl_strcmp(const void *k1, const void *k2, void *ptr); + +#endif -- cgit v1.2.3