diff options
Diffstat (limited to 'src/emu/netlist/plib/palloc.c')
-rw-r--r-- | src/emu/netlist/plib/palloc.c | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/emu/netlist/plib/palloc.c b/src/emu/netlist/plib/palloc.c index 5f9dbc5fee7..2ed54bd0b35 100644 --- a/src/emu/netlist/plib/palloc.c +++ b/src/emu/netlist/plib/palloc.c @@ -6,11 +6,35 @@ */ #include "pconfig.h" +#include "palloc.h" #if (PSTANDALONE) #include <stdlib.h> #include <xmmintrin.h> +class pmemory_pool +{ +public: + pmemory_pool() {} +}; + +static pmemory_pool sppool; + +pmemory_pool *ppool = &sppool; + +void* operator new(std::size_t size, pmemory_pool *pool) throw (std::bad_alloc) +{ + //printf("here new\n"); + return palloc_raw(size);; +} + +void operator delete(void *ptr, pmemory_pool *pool) +{ + //printf("here delete\n"); + if (ptr != NULL) + pfree_raw(ptr); +} + void *palloc_raw(const size_t size) { return _mm_malloc(size, 64); |