summaryrefslogtreecommitdiff
path: root/deps/halloc/macros.h
diff options
context:
space:
mode:
Diffstat (limited to 'deps/halloc/macros.h')
-rw-r--r--deps/halloc/macros.h32
1 files changed, 32 insertions, 0 deletions
diff --git a/deps/halloc/macros.h b/deps/halloc/macros.h
new file mode 100644
index 000000000..0123d4670
--- /dev/null
+++ b/deps/halloc/macros.h
@@ -0,0 +1,32 @@
+/*
+ * Copyright (c) 2004-2010 Alex Pankratov. All rights reserved.
+ *
+ * Hierarchical memory allocator, 1.2.1
+ * http://swapped.cc/halloc
+ */
+
+/*
+ * The program is distributed under terms of BSD license.
+ * You can obtain the copy of the license by visiting:
+ *
+ * http://www.opensource.org/licenses/bsd-license.php
+ */
+
+#ifndef _LIBP_MACROS_H_
+#define _LIBP_MACROS_H_
+
+#include <stddef.h> /* offsetof */
+
+/*
+ restore pointer to the structure by a pointer to its field
+ */
+#define structof(p,t,f) ((t*)(- offsetof(t,f) + (void*)(p)))
+
+/*
+ * redefine for the target compiler
+ */
+#define static_inline static __inline__
+
+
+#endif
+