summaryrefslogtreecommitdiffstatshomepage
path: root/src/emu/emualloc.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/emu/emualloc.h')
-rw-r--r--src/emu/emualloc.h29
1 files changed, 6 insertions, 23 deletions
diff --git a/src/emu/emualloc.h b/src/emu/emualloc.h
index 192f1fca85e..4571762054f 100644
--- a/src/emu/emualloc.h
+++ b/src/emu/emualloc.h
@@ -17,32 +17,15 @@
#include "osdcore.h"
#include "coretmpl.h"
-
-//**************************************************************************
-// DEBUGGING
-//**************************************************************************
-
-// set to 1 to track memory allocated by emualloc.h itself as well
-#define TRACK_SELF_MEMORY (0)
-
-
-
//**************************************************************************
// MACROS
//**************************************************************************
-// self-allocation helpers
-#if TRACK_SELF_MEMORY
-#define EMUALLOC_SELF_NEW new(__FILE__, __LINE__)
-#else
-#define EMUALLOC_SELF_NEW new
-#endif
-
// pool allocation helpers
-#define pool_alloc(_pool, _type) (_pool).add_object(new(__FILE__, __LINE__) _type)
-#define pool_alloc_clear(_pool, _type) (_pool).add_object(new(__FILE__, __LINE__, zeromem) _type)
-#define pool_alloc_array(_pool, _type, _num) (_pool).add_array(new(__FILE__, __LINE__) _type[_num], (_num))
-#define pool_alloc_array_clear(_pool, _type, _num) (_pool).add_array(new(__FILE__, __LINE__, zeromem) _type[_num], (_num))
+#define pool_alloc(_pool, _type) (_pool).add_object(global_alloc(_type))
+#define pool_alloc_clear(_pool, _type) (_pool).add_object(global_alloc_clear _type)
+#define pool_alloc_array(_pool, _type, _num) (_pool).add_array(global_alloc_array(_type,_num), (_num))
+#define pool_alloc_array_clear(_pool, _type, _num) (_pool).add_array(global_alloc_array_clear<_type>(_num), (_num))
#define pool_free(_pool, v) (_pool).remove(v)
@@ -136,8 +119,8 @@ public:
bool contains(void *ptrstart, void *ptrend);
void clear();
- template<class _ObjectClass> _ObjectClass *add_object(_ObjectClass* object) { add(*EMUALLOC_SELF_NEW resource_pool_object<_ObjectClass>(object), sizeof(_ObjectClass), typeid(_ObjectClass).name()); return object; }
- template<class _ObjectClass> _ObjectClass *add_array(_ObjectClass* array, int count) { add(*EMUALLOC_SELF_NEW resource_pool_array<_ObjectClass>(array, count), sizeof(_ObjectClass), typeid(_ObjectClass).name()); return array; }
+ template<class _ObjectClass> _ObjectClass *add_object(_ObjectClass* object) { add(*new resource_pool_object<_ObjectClass>(object), sizeof(_ObjectClass), typeid(_ObjectClass).name()); return object; }
+ template<class _ObjectClass> _ObjectClass *add_array(_ObjectClass* array, int count) { add(*new resource_pool_array<_ObjectClass>(array, count), sizeof(_ObjectClass), typeid(_ObjectClass).name()); return array; }
private:
int m_hash_size;