X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=device%2Finclude%2Fmalloc.h;h=6e217a4c167892cbade767329fe618af06c6dbf0;hb=36d0b20243251f44573d20e6e012d450ab0df882;hp=4a1a00ac5ec174213a5c6c7369b07ef993d2fe02;hpb=2c22a2ef761868ef7e4b1b82d33261b49841b458;p=fw%2Fsdcc diff --git a/device/include/malloc.h b/device/include/malloc.h index 4a1a00ac..6e217a4c 100644 --- a/device/include/malloc.h +++ b/device/include/malloc.h @@ -25,14 +25,14 @@ #ifndef __SDCC51_MALLOC_H #define __SDCC51_MALLOC_H #include - -#ifndef NULL -# define NULL (void *)0 -#endif +#include #if _SDCC_MALLOC_TYPE_MLH -void *malloc (unsigned int); -void free(void *p); + +void * calloc (size_t nmemb, size_t size); +void * malloc (size_t size); +void * realloc (void * ptr, size_t size); +void free (void * ptr); #else @@ -41,22 +41,25 @@ void free(void *p); MEMHEADER { MEMHEADER xdata * next; - MEMHEADER xdata * prev; unsigned int len; - unsigned char mem[1]; + unsigned char mem[]; }; #ifdef SDCC_STACK_AUTO -extern void init_dynamic_memory(MEMHEADER xdata * , unsigned int ) reentrant; -extern void xdata * malloc (unsigned int ) reentrant; -extern void free (void xdata * p) reentrant; +extern void init_dynamic_memory(void xdata * heap, unsigned int size) reentrant; +extern void xdata * calloc (size_t nmemb, size_t size) reentrant; +extern void xdata * malloc (size_t size) reentrant; +extern void xdata * realloc (void * ptr, size_t size) reentrant; +extern void free (void * ptr) reentrant; #else -extern void init_dynamic_memory(MEMHEADER xdata * , unsigned int ); -extern void xdata * malloc (unsigned int ); -extern void free (void xdata * p); +extern void init_dynamic_memory(void xdata * heap, unsigned int size); +extern void xdata * calloc (size_t nmemb, size_t size); +extern void xdata * malloc (size_t size); +extern void xdata * realloc (void * ptr, size_t size); +extern void free (void * ptr); #endif #endif