X-Git-Url: http://plrg.eecs.uci.edu/git/?p=satune.git;a=blobdiff_plain;f=src%2Fmymemory.h;h=9708936e9d829934fd2176053ce37361a8edf6cb;hp=b778c48ae482aa383dc8d0ca6c506998bac77701;hb=6f5e234d3f2862efea49475caf5fc6b296390f69;hpb=4221735881b9d1cd53ef410d9448efd2d12a51ad diff --git a/src/mymemory.h b/src/mymemory.h index b778c48..9708936 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 @@ -26,9 +26,40 @@ void * ourrealloc(void *ptr, size_t size); */ +#if 0 +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); } +#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 */