summaryrefslogtreecommitdiff
path: root/include/malloc.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/malloc.h')
-rw-r--r--include/malloc.h30
1 files changed, 30 insertions, 0 deletions
diff --git a/include/malloc.h b/include/malloc.h
new file mode 100644
index 000000000..e8fdb0a24
--- /dev/null
+++ b/include/malloc.h
@@ -0,0 +1,30 @@
+
+#ifndef __MALLOC_H
+#define __MALLOC_H
+#include <features.h>
+#include <sys/types.h>
+
+/*
+ * Mini malloc allows you to use a less efficient but smaller malloc the
+ * cost is about 100 bytes of code in free but malloc (700bytes) doesn't
+ * have to be linked. Unfortunatly memory can only be reused if everything
+ * above it has been freed
+ *
+ */
+
+extern void free __P((void *));
+extern void *malloc __P((size_t));
+extern void *realloc __P((void *, size_t));
+extern void *alloca __P((size_t));
+
+extern void *(*__alloca_alloc) __P((size_t));
+
+#ifdef __LIBC__
+#define __MINI_MALLOC__
+#endif
+
+#ifdef __MINI_MALLOC__
+#define malloc(x) ((*__alloca_alloc)(x))
+#endif
+
+#endif