Add __constant_flsl(), because it's useful for finding out the next
[gpxe.git] / src / include / gpxe / malloc.h
1 #ifndef _GPXE_MALLOC_H
2 #define _GPXE_MALLOC_H
3
4 #include <stdint.h>
5
6 /** @file
7  *
8  * Memory allocation
9  *
10  */
11
12 extern void * gmalloc ( size_t size );
13 extern void gfree ( void *ptr, size_t size );
14 extern void gmpopulate ( void *start, size_t len );
15
16 /**
17  * Allocate cleared memory
18  *
19  * @v size              Requested size
20  * @ret ptr             Allocated memory
21  *
22  * Allocate memory as per gmalloc(), and zero it.
23  *
24  * Note that gmalloc() and gcalloc() are identical, in the interests
25  * of reducing code size.  Callers should not, however, rely on
26  * gmalloc() clearing memory, since this behaviour may change in
27  * future.
28  */
29 static inline void * gcalloc ( size_t size ) {
30         return gmalloc ( size );
31 }
32
33 /* Debug function; not compiled in by default */
34 void gdumpfree ( void );
35
36 #endif /* _GPXE_MALLOC_H */