malloc.h
#ifndef _MALLOC_H
#define _MALLOC_H 1
#include
#if defined(__STDC__) || defined (__cplusplus)
# include
# define __malloc_ptr_t void *
#else
# undef size_t
# define size_t unsigned int
# undef ptrdiff_t
# define ptrdiff_t int
# define __malloc_ptr_t char *
#endif
#ifdef _LIBC
# define __malloc_size_t size_t
# define __malloc_ptrdiff_t ptrdiff_t
#elif !defined __attribute_malloc__
# define __attribute_malloc__
#endif
#ifdef __GNUC__
# ifndef __THROW
# if defined __cplusplus && (__GNUC__ >= 3 || __GNUC_MINOR__ >= 8)
# define __THROW throw ()
# else
# define __THROW
# endif
# endif
# define __MALLOC_P(args) args __THROW
# define __MALLOC_PMT(args) args
#else
# define __THROW
# if (defined __STDC__ && __STDC__) || defined __cplusplus
# define __MALLOC_P(args) args
# define __MALLOC_PMT(args) args
# ifndef __const
# define __const const
# endif
# else
# define __MALLOC_P(args) ()
# define __MALLOC_PMT(args) ()
# ifndef __const
# define __const
# endif
# endif
#endif
#ifndef NULL
# ifdef __cplusplus
# define NULL 0
# else
# define NULL ((__malloc_ptr_t) 0)
# endif
#endif
#ifdef __cplusplus
extern "C" {
#endif
extern __malloc_ptr_t malloc __MALLOC_P ((size_t __size)) __attribute_malloc__;
extern __malloc_ptr_t calloc __MALLOC_P ((size_t __nmemb, size_t __size))
__attribute_malloc__;
extern __malloc_ptr_t realloc __MALLOC_P ((__malloc_ptr_t __ptr,
size_t __size))
__attribute_malloc__;
extern void free __MALLOC_P ((__malloc_ptr_t __ptr));
extern void cfree __MALLOC_P ((__malloc_ptr_t __ptr));
extern __malloc_ptr_t memalign __MALLOC_P ((size_t __alignment, size_t __size));
extern __malloc_ptr_t valloc __MALLOC_P ((size_t __size)) __attribute_malloc__;
extern __malloc_ptr_t pvalloc __MALLOC_P ((size_t __size))
__attribute_malloc__;
extern __malloc_ptr_t (*__morecore) __MALLOC_PMT ((ptrdiff_t __size));
extern __malloc_ptr_t __default_morecore __MALLOC_P ((ptrdiff_t __size))
__attribute_malloc__;
struct mallinfo {
int arena;
int ordblks;
int smblks;
int hblks;
int hblkhd;
int usmblks;
int fsmblks;
int uordblks;
int fordblks;
int keepcost;
};
extern struct mallinfo mallinfo __MALLOC_P ((void));
#ifndef M_MXFAST
# define M_MXFAST 1
#endif
#ifndef M_NLBLKS
# define M_NLBLKS 2
#endif
#ifndef M_GRAIN
# define M_GRAIN 3
#endif
#ifndef M_KEEP
# define M_KEEP 4
#endif
#define M_TRIM_THRESHOLD -1
#define M_TOP_PAD -2
#define M_MMAP_THRESHOLD -3
#define M_MMAP_MAX -4
#define M_CHECK_ACTION -5
extern int mallopt __MALLOC_P ((int __param, int __val));
extern int malloc_trim __MALLOC_P ((size_t __pad));
extern size_t malloc_usable_size __MALLOC_P ((__malloc_ptr_t __ptr));
extern void malloc_stats __MALLOC_P ((void));
extern __malloc_ptr_t malloc_get_state __MALLOC_P ((void));
extern int malloc_set_state __MALLOC_P ((__malloc_ptr_t __ptr));
extern void (*__malloc_initialize_hook) __MALLOC_PMT ((void));
extern void (*__free_hook) __MALLOC_PMT ((__malloc_ptr_t __ptr,
__const __malloc_ptr_t));
extern __malloc_ptr_t (*__malloc_hook) __MALLOC_PMT ((size_t __size,
__const __malloc_ptr_t));
extern __malloc_ptr_t (*__realloc_hook) __MALLOC_PMT ((__malloc_ptr_t __ptr,
size_t __size,
__const __malloc_ptr_t));
extern __malloc_ptr_t (*__memalign_hook) __MALLOC_PMT ((size_t __alignment,
size_t __size,
__const __malloc_ptr_t));
extern void (*__after_morecore_hook) __MALLOC_PMT ((void));
extern void __malloc_check_init __MALLOC_P ((void));
#ifdef __cplusplus
}
#endif
#endif
|
|