--- a/src/hotspot/share/memory/allocation.cpp Tue Mar 20 13:40:03 2018 +0530
+++ b/src/hotspot/share/memory/allocation.cpp Fri Mar 16 19:13:13 2018 +0100
@@ -37,6 +37,39 @@
#include "services/memTracker.hpp"
#include "utilities/ostream.hpp"
+// allocate using malloc; will fail if no memory available
+char* AllocateHeap(size_t size,
+ MEMFLAGS flags,
+ const NativeCallStack& stack,
+ AllocFailType alloc_failmode /* = AllocFailStrategy::EXIT_OOM*/) {
+ char* p = (char*) os::malloc(size, flags, stack);
+ if (p == NULL && alloc_failmode == AllocFailStrategy::EXIT_OOM) {
+ vm_exit_out_of_memory(size, OOM_MALLOC_ERROR, "AllocateHeap");
+ }
+ return p;
+}
+
+char* AllocateHeap(size_t size,
+ MEMFLAGS flags,
+ AllocFailType alloc_failmode /* = AllocFailStrategy::EXIT_OOM*/) {
+ return AllocateHeap(size, flags, CALLER_PC);
+}
+
+char* ReallocateHeap(char *old,
+ size_t size,
+ MEMFLAGS flag,
+ AllocFailType alloc_failmode) {
+ char* p = (char*) os::realloc(old, size, flag, CALLER_PC);
+ if (p == NULL && alloc_failmode == AllocFailStrategy::EXIT_OOM) {
+ vm_exit_out_of_memory(size, OOM_MALLOC_ERROR, "ReallocateHeap");
+ }
+ return p;
+}
+
+void FreeHeap(void* p) {
+ os::free(p);
+}
+
void* MetaspaceObj::_shared_metaspace_base = NULL;
void* MetaspaceObj::_shared_metaspace_top = NULL;