Mercurial > hg > truffle
diff src/share/vm/memory/allocation.hpp @ 3302:2a3da7eaf4a6
7036747: 7017009 reappeared, problem with ElfStringTable
Summary: Created new "new" operator for CHeapObj that allows malloc to fail without causing fatal error. Also replaced "HeapAllocate" with "os::malloc" in decoder code to allow decoder to handle low memory scenario.
Reviewed-by: coleenp, dholmes
author | zgu |
---|---|
date | Wed, 27 Apr 2011 09:09:57 -0400 |
parents | 4a9604cd7c5f |
children | f6f3bb0ee072 |
line wrap: on
line diff
--- a/src/share/vm/memory/allocation.hpp Tue Apr 12 14:18:53 2011 -0700 +++ b/src/share/vm/memory/allocation.hpp Wed Apr 27 09:09:57 2011 -0400 @@ -34,6 +34,8 @@ #include "opto/c2_globals.hpp" #endif +#include <new> + #define ARENA_ALIGN_M1 (((size_t)(ARENA_AMALLOC_ALIGNMENT)) - 1) #define ARENA_ALIGN_MASK (~((size_t)ARENA_ALIGN_M1)) #define ARENA_ALIGN(x) ((((size_t)(x)) + ARENA_ALIGN_M1) & ARENA_ALIGN_MASK) @@ -99,6 +101,7 @@ class CHeapObj ALLOCATION_SUPER_CLASS_SPEC { public: void* operator new(size_t size); + void* operator new (size_t size, const std::nothrow_t& nothrow_constant); void operator delete(void* p); void* new_array(size_t size); };