2
0
mirror of https://github.com/xcat2/xNBA.git synced 2024-12-14 07:11:32 +00:00

Move ANSI C standard prototypes to stdlib.h; leave the gPXE-specific

function prototypes (e.g. malloc_dma()) in malloc.h.
This commit is contained in:
Michael Brown 2006-12-02 20:10:21 +00:00
parent 4cd56820ea
commit 3e0286dee3
2 changed files with 28 additions and 20 deletions

View File

@ -9,11 +9,16 @@
*
*/
/*
* Prototypes for the standard functions (malloc() et al) are in
* stdlib.h. Include <malloc.h> only if you need the non-standard
* functions, such as malloc_dma().
*
*/
#include <stdlib.h>
extern void * alloc_memblock ( size_t size, size_t align );
extern void free_memblock ( void *ptr, size_t size );
extern void * realloc ( void *old_ptr, size_t new_size );
extern void * malloc ( size_t size );
extern void free ( void *ptr );
extern void mpopulate ( void *start, size_t len );
extern void mdumpfree ( void );
@ -47,21 +52,4 @@ static inline void free_dma ( void *ptr, size_t size ) {
free_memblock ( ptr, size );
}
/**
* Allocate cleared memory
*
* @v nmemb Number of members
* @v size Size of each member
* @ret ptr Allocated memory
*
* Allocate memory as per malloc(), and zero it.
*
* Note that malloc() and calloc() are identical, in the interests of
* reducing code size. Callers should not, however, rely on malloc()
* clearing memory, since this behaviour may change in future.
*/
static inline void * calloc ( size_t nmemb, size_t size ) {
return malloc ( nmemb * size );
}
#endif /* _MALLOC_H */

View File

@ -2,5 +2,25 @@
#define STDLIB_H
extern unsigned long strtoul ( const char *p, char **endp, int base );
extern void * realloc ( void *old_ptr, size_t new_size );
extern void * malloc ( size_t size );
extern void free ( void *ptr );
/**
* Allocate cleared memory
*
* @v nmemb Number of members
* @v size Size of each member
* @ret ptr Allocated memory
*
* Allocate memory as per malloc(), and zero it.
*
* Note that malloc() and calloc() are identical, in the interests of
* reducing code size. Callers should not, however, rely on malloc()
* clearing memory, since this behaviour may change in future.
*/
static inline void * calloc ( size_t nmemb, size_t size ) {
return malloc ( nmemb * size );
}
#endif /* STDLIB_H */