Changeset 57 for trunk/malloc.c
- Timestamp:
- 04/30/10 21:31:37 (3 years ago)
- Files:
-
- trunk/malloc.c (modified) (11 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/malloc.c
r55 r57 42 42 #include "misc.h" 43 43 44 #ifdef __GLIBC__45 # include <malloc.h>46 #endif47 48 44 /* 49 45 * malloc_data_t is an 8-byte structure which is located "before" the pointer … … 63 59 } malloc_data_t; 64 60 65 #ifdef __GLIBC__66 static void *umem_malloc_hook(size_t size_arg, const void *caller)67 #else68 61 void * 69 62 malloc(size_t size_arg) 70 #endif71 63 { 72 64 #ifdef _LP64 … … 129 121 } 130 122 131 #ifndef __GLIBC__132 123 void * 133 124 calloc(size_t nelem, size_t elsize) … … 148 139 return (retval); 149 140 } 150 #endif151 141 152 142 /* … … 157 147 */ 158 148 159 #ifdef __GLIBC__160 static void *umem_memalign_hook(size_t align, size_t size_arg, const void *caller)161 #else162 149 void * 163 150 memalign(size_t align, size_t size_arg) 164 #endif165 151 { 166 152 size_t size; … … 241 227 } 242 228 243 #ifndef __GLIBC__244 229 void * 245 230 valloc(size_t size) … … 247 232 return (memalign(pagesize, size)); 248 233 } 249 #endif250 234 251 235 /* … … 393 377 } 394 378 395 #ifdef __GLIBC__396 static void umem_free_hook(void *buf, const void *caller)397 #else398 379 void 399 380 free(void *buf) 400 #endif401 381 { 402 382 if (buf == NULL) … … 409 389 } 410 390 411 #ifdef __GLIBC__412 static void *umem_realloc_hook(void *buf_arg, size_t newsize, const void *caller)413 #else414 391 void * 415 392 realloc(void *buf_arg, size_t newsize) 416 #endif417 393 { 418 394 size_t oldsize; … … 442 418 } 443 419 444 #ifdef __GLIBC__445 static void __attribute__((constructor)) umem_malloc_init_hook(void)446 {447 if (__malloc_hook != umem_malloc_hook) {448 umem_startup(NULL, 0, 0, NULL, NULL);449 __malloc_hook = umem_malloc_hook;450 __free_hook = umem_free_hook;451 __realloc_hook = umem_realloc_hook;452 __memalign_hook = umem_memalign_hook;453 }454 }455 456 void (*__malloc_initialize_hook)(void) = umem_malloc_init_hook;457 458 #else459 420 void __attribute__((constructor)) 460 421 __malloc_umem_init (void) … … 462 423 umem_startup(NULL, 0, 0, NULL, NULL); 463 424 } 464 #endif 465 425
