24 #include "opal_config.h"
49 #if defined(__STDC__) || defined (__cplusplus)
51 # define __malloc_ptr_t void *
54 # define size_t unsigned int
56 # define ptrdiff_t int
57 # define __malloc_ptr_t char *
62 # define __malloc_size_t size_t
63 # define __malloc_ptrdiff_t ptrdiff_t
64 #elif !defined __attribute_malloc__
65 # define __attribute_malloc__
73 # if defined __cplusplus && (__GNUC__ >= 3 || __GNUC_MINOR__ >= 8)
74 # define __THROW throw ()
81 # define __MALLOC_P(args) args __THROW
84 # define __MALLOC_PMT(args) args
90 # if (defined __STDC__ && __STDC__) || defined __cplusplus
92 # define __MALLOC_P(args) args
93 # define __MALLOC_PMT(args) args
96 # define __const const
101 # define __MALLOC_P(args) ()
102 # define __MALLOC_PMT(args) ()
116 # define NULL ((__malloc_ptr_t) 0)
128 # define __malloc_initialized __libc_malloc_initialized
130 extern int __malloc_initialized;
133 OPAL_DECLSPEC
extern __malloc_ptr_t malloc __MALLOC_P ((
size_t __size)) __attribute_malloc__;
136 OPAL_DECLSPEC
extern __malloc_ptr_t calloc __MALLOC_P ((
size_t __nmemb,
size_t __size))
137 __attribute_malloc__;
141 OPAL_DECLSPEC
extern __malloc_ptr_t realloc __MALLOC_P ((__malloc_ptr_t __ptr,
143 __attribute_malloc__;
146 OPAL_DECLSPEC
extern void free __MALLOC_P ((__malloc_ptr_t __ptr));
149 OPAL_DECLSPEC
extern void cfree __MALLOC_P ((__malloc_ptr_t __ptr));
152 OPAL_DECLSPEC
extern __malloc_ptr_t memalign __MALLOC_P ((
size_t __alignment,
size_t __size));
155 OPAL_DECLSPEC
extern __malloc_ptr_t valloc __MALLOC_P ((
size_t __size)) __attribute_malloc__;
159 OPAL_DECLSPEC
extern __malloc_ptr_t pvalloc __MALLOC_P ((
size_t __size))
160 __attribute_malloc__;
164 OPAL_DECLSPEC
extern __malloc_ptr_t (*__morecore) __MALLOC_PMT ((ptrdiff_t __size));
167 OPAL_DECLSPEC extern __malloc_ptr_t __default_morecore __MALLOC_P ((ptrdiff_t __size))
168 __attribute_malloc__;
203 #define M_TRIM_THRESHOLD -1
205 #define M_MMAP_THRESHOLD -3
206 #define M_MMAP_MAX -4
207 #define M_CHECK_ACTION -5
210 OPAL_DECLSPEC
extern int mallopt __MALLOC_P ((
int __param,
int __val));
214 OPAL_DECLSPEC
extern int malloc_trim __MALLOC_P ((
size_t __pad));
218 OPAL_DECLSPEC
extern size_t malloc_usable_size __MALLOC_P ((__malloc_ptr_t __ptr));
221 OPAL_DECLSPEC
extern void malloc_stats __MALLOC_P ((
void));
224 OPAL_DECLSPEC
extern __malloc_ptr_t malloc_get_state __MALLOC_P ((
void));
228 OPAL_DECLSPEC
extern int malloc_set_state __MALLOC_P ((__malloc_ptr_t __ptr));
233 OPAL_DECLSPEC
extern void (*__malloc_initialize_hook) __MALLOC_PMT ((
void));
235 OPAL_DECLSPEC extern
void (*__free_hook) __MALLOC_PMT ((__malloc_ptr_t __ptr,
236 __const __malloc_ptr_t));
237 OPAL_DECLSPEC extern __malloc_ptr_t (*__malloc_hook) __MALLOC_PMT ((
size_t __size,
238 __const __malloc_ptr_t));
239 OPAL_DECLSPEC extern __malloc_ptr_t (*__realloc_hook) __MALLOC_PMT ((__malloc_ptr_t __ptr,
241 __const __malloc_ptr_t));
242 OPAL_DECLSPEC extern __malloc_ptr_t (*__memalign_hook) __MALLOC_PMT ((
size_t __alignment,
244 __const __malloc_ptr_t));
245 OPAL_DECLSPEC extern
void (*__after_morecore_hook) __MALLOC_PMT ((
void));
248 OPAL_DECLSPEC extern
void __malloc_check_init __MALLOC_P ((
void));
252 typedef struct malloc_state *
mstate;
254 OPAL_DECLSPEC extern mstate _int_new_arena __MALLOC_P ((
size_t __ini_size));
255 OPAL_DECLSPEC extern __malloc_ptr_t _int_malloc __MALLOC_P ((mstate __m,
size_t __size));
256 OPAL_DECLSPEC extern
void _int_free __MALLOC_P ((mstate __m, __malloc_ptr_t __ptr));
257 OPAL_DECLSPEC extern __malloc_ptr_t _int_realloc __MALLOC_P ((mstate __m,
258 __malloc_ptr_t __ptr,
260 OPAL_DECLSPEC extern __malloc_ptr_t _int_memalign __MALLOC_P ((mstate __m,
size_t __alignment,
264 OPAL_DECLSPEC extern mstate _int_get_arena __MALLOC_P ((
int __n));
275 size_t max_system_mem;
278 long stat_lock_direct, stat_lock_loop, stat_lock_wait;
285 size_t max_mmapped_mem;
286 size_t max_total_mem;
290 OPAL_DECLSPEC
extern void _int_get_arena_info __MALLOC_P ((
mstate __m,
292 OPAL_DECLSPEC
extern void _int_get_global_info __MALLOC_P ((
struct malloc_global_info *__m));
294 OPAL_DECLSPEC
extern int posix_memalign (
void **memptr,
size_t alignment,
size_t size);
Definition: malloc.c:2259