mirror of
https://github.com/holub/mame
synced 2025-04-24 09:20:02 +03:00
Revert "Placed back old corealloc otherwise NO_MEM_TRACKING do not have any meaning (nw)"
(Requested by R.Belmont since this breaks build with GCC 5.1.)
This reverts commit aae343fced
.
This commit is contained in:
parent
f6c745640f
commit
49bbeae98e
@ -96,6 +96,41 @@ bool memory_entry::s_tracking = false;
|
||||
memory_entry *memory_entry::s_hash[memory_entry::k_hash_prime] = { NULL };
|
||||
memory_entry *memory_entry::s_freehead = NULL;
|
||||
|
||||
//**************************************************************************
|
||||
// OPERATOR REPLACEMENTS
|
||||
//**************************************************************************
|
||||
|
||||
#ifndef NO_MEM_TRACKING
|
||||
|
||||
// standard new/delete operators (try to avoid using)
|
||||
void *operator new(std::size_t size) throw (std::bad_alloc) { return malloc_file_line(size, NULL, 0, false, true, false); }
|
||||
void *operator new[](std::size_t size) throw (std::bad_alloc) { return malloc_file_line(size, NULL, 0, true, true, false); }
|
||||
void operator delete(void *ptr) throw() { if (ptr != NULL) free_file_line(ptr, NULL, 0, false); }
|
||||
void operator delete[](void *ptr) throw() { if (ptr != NULL) free_file_line(ptr, NULL, 0, true); }
|
||||
|
||||
void* operator new(std::size_t size,const std::nothrow_t&) throw() { return malloc_file_line(size, NULL, 0, false, false, false); }
|
||||
void* operator new[](std::size_t size, const std::nothrow_t&) throw() { return malloc_file_line(size, NULL, 0, true, false, false); }
|
||||
void operator delete(void* ptr, const std::nothrow_t&) throw() { if (ptr != NULL) free_file_line(ptr, NULL, 0, false); }
|
||||
void operator delete[](void* ptr, const std::nothrow_t&) throw() { if (ptr != NULL) free_file_line(ptr, NULL, 0, true); }
|
||||
|
||||
#endif
|
||||
|
||||
//**************************************************************************
|
||||
// OPERATOR OVERLOADS - DEFINITIONS
|
||||
//**************************************************************************
|
||||
|
||||
// file/line new/delete operators
|
||||
void *operator new(std::size_t size, const char *file, int line) throw (std::bad_alloc) { return malloc_file_line(size, file, line, false, true, false); }
|
||||
void *operator new[](std::size_t size, const char *file, int line) throw (std::bad_alloc) { return malloc_file_line(size, file, line, true, true, false); }
|
||||
void operator delete(void *ptr, const char *file, int line) { if (ptr != NULL) free_file_line(ptr, file, line, false); }
|
||||
void operator delete[](void *ptr, const char *file, int line) { if (ptr != NULL) free_file_line(ptr, file, line, true); }
|
||||
|
||||
// file/line new/delete operators with zeroing
|
||||
void *operator new(std::size_t size, const char *file, int line, const zeromem_t &) throw (std::bad_alloc) { return malloc_file_line(size, file, line, false, true, true); }
|
||||
void *operator new[](std::size_t size, const char *file, int line, const zeromem_t &) throw (std::bad_alloc) { return malloc_file_line(size, file, line, true, true, true); }
|
||||
void operator delete(void *ptr, const char *file, int line, const zeromem_t &) { if (ptr != NULL) free_file_line(ptr, file, line, false); }
|
||||
void operator delete[](void *ptr, const char *file, int line, const zeromem_t &) { if (ptr != NULL) free_file_line(ptr, file, line, true); }
|
||||
|
||||
|
||||
|
||||
//**************************************************************************
|
||||
|
@ -51,33 +51,23 @@ void dump_unfreed_mem(UINT64 start = 0);
|
||||
|
||||
|
||||
//**************************************************************************
|
||||
// INLINE FUNCTIONS
|
||||
// OPERATOR OVERLOADS - DECLARATIONS
|
||||
//**************************************************************************
|
||||
|
||||
// zeromem_t is a dummy class used to tell new to zero memory after allocation
|
||||
class zeromem_t { };
|
||||
|
||||
#ifndef NO_MEM_TRACKING
|
||||
|
||||
// standard new/delete operators (try to avoid using)
|
||||
ATTR_FORCE_INLINE inline void *operator new(std::size_t size) throw (std::bad_alloc) { return malloc_file_line(size, NULL, 0, false, true, false); }
|
||||
ATTR_FORCE_INLINE inline void *operator new[](std::size_t size) throw (std::bad_alloc) { return malloc_file_line(size, NULL, 0, true, true, false); }
|
||||
ATTR_FORCE_INLINE inline void operator delete(void *ptr) throw() { if (ptr != NULL) free_file_line(ptr, NULL, 0, false); }
|
||||
ATTR_FORCE_INLINE inline void operator delete[](void *ptr) throw() { if (ptr != NULL) free_file_line(ptr, NULL, 0, true); }
|
||||
|
||||
#endif
|
||||
|
||||
// file/line new/delete operators
|
||||
ATTR_FORCE_INLINE inline void *operator new(std::size_t size, const char *file, int line) throw (std::bad_alloc) { return malloc_file_line(size, file, line, false, true, false); }
|
||||
ATTR_FORCE_INLINE inline void *operator new[](std::size_t size, const char *file, int line) throw (std::bad_alloc) { return malloc_file_line(size, file, line, true, true, false); }
|
||||
ATTR_FORCE_INLINE inline void operator delete(void *ptr, const char *file, int line) { if (ptr != NULL) free_file_line(ptr, file, line, false); }
|
||||
ATTR_FORCE_INLINE inline void operator delete[](void *ptr, const char *file, int line) { if (ptr != NULL) free_file_line(ptr, file, line, true); }
|
||||
void *operator new(std::size_t size, const char *file, int line) throw (std::bad_alloc);
|
||||
void *operator new[](std::size_t size, const char *file, int line) throw (std::bad_alloc);
|
||||
void operator delete(void *ptr, const char *file, int line);
|
||||
void operator delete[](void *ptr, const char *file, int line);
|
||||
|
||||
// file/line new/delete operators with zeroing
|
||||
ATTR_FORCE_INLINE inline void *operator new(std::size_t size, const char *file, int line, const zeromem_t &) throw (std::bad_alloc) { return malloc_file_line(size, file, line, false, true, true); }
|
||||
ATTR_FORCE_INLINE inline void *operator new[](std::size_t size, const char *file, int line, const zeromem_t &) throw (std::bad_alloc) { return malloc_file_line(size, file, line, true, true, true); }
|
||||
ATTR_FORCE_INLINE inline void operator delete(void *ptr, const char *file, int line, const zeromem_t &) { if (ptr != NULL) free_file_line(ptr, file, line, false); }
|
||||
ATTR_FORCE_INLINE inline void operator delete[](void *ptr, const char *file, int line, const zeromem_t &) { if (ptr != NULL) free_file_line(ptr, file, line, true); }
|
||||
void *operator new(std::size_t size, const char *file, int line, const zeromem_t &) throw (std::bad_alloc);
|
||||
void *operator new[](std::size_t size, const char *file, int line, const zeromem_t &) throw (std::bad_alloc);
|
||||
void operator delete(void *ptr, const char *file, int line, const zeromem_t &);
|
||||
void operator delete[](void *ptr, const char *file, int line, const zeromem_t &);
|
||||
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user