X-Git-Url: http://plrg.eecs.uci.edu/git/?p=satune.git;a=blobdiff_plain;f=src%2Fmymemory.h;h=e0a60bd13294b871199b826e88c0ea13261c1b3d;hp=32dfa51b51e8807f6c906ff64d585f08ba099835;hb=bdb495e03a14ca5adf4b4b4a53233ed373121642;hpb=ddc4141470ead8ab7bfa6047a6a6a0ac1766a91f diff --git a/src/mymemory.h b/src/mymemory.h index 32dfa51..e0a60bd 100644 --- a/src/mymemory.h +++ b/src/mymemory.h @@ -11,8 +11,8 @@ * @brief Memory allocation functions. */ -#ifndef _MY_MEMORY_H -#define _MY_MEMORY_H +#ifndef CSAT_MY_MEMORY_H +#define CSAT_MY_MEMORY_H #include #include #include @@ -20,15 +20,46 @@ #include "config.h" /* -void * ourmalloc(size_t size); -void ourfree(void *ptr); -void * ourcalloc(size_t count, size_t size); -void * ourrealloc(void *ptr, size_t size); + void * ourmalloc(size_t size); + void ourfree(void *ptr); + void * ourcalloc(size_t count, size_t size); + void * ourrealloc(void *ptr, size_t size); */ -static inline void * ourmalloc(size_t size) { return malloc(size); } +#if 1 +void * model_malloc(size_t size); +void model_free(void *ptr); +void * model_calloc(size_t count, size_t size); +void * model_realloc(void *ptr, size_t size); + + +#define ourmalloc model_malloc +#define ourfree model_free +#define ourrealloc model_realloc +#define ourcalloc model_calloc + +#else +static inline void *ourmalloc(size_t size) { return malloc(size); } static inline void ourfree(void *ptr) { free(ptr); } -static inline void * ourcalloc(size_t count, size_t size) { return calloc(count, size); } -static inline void * ourrealloc(void *ptr, size_t size) { return realloc(ptr, size); } +static inline void *ourcalloc(size_t count, size_t size) { return calloc(count, size); } +static inline void *ourrealloc(void *ptr, size_t size) { return realloc(ptr, size); } +#endif + +#define CMEMALLOC \ + void *operator new(size_t size) { \ + return ourmalloc(size); \ + } \ + void operator delete(void *p, size_t size) { \ + ourfree(p); \ + } \ + void *operator new[](size_t size) { \ + return ourmalloc(size); \ + } \ + void operator delete[](void *p, size_t size) { \ + ourfree(p); \ + } \ + void *operator new(size_t size, void *p) { /* placement new */ \ + return p; \ + } #endif/* _MY_MEMORY_H */