365 |
365 |
366 UNSAFE_ENTRY(jlong, Unsafe_AllocateMemory0(JNIEnv *env, jobject unsafe, jlong size)) { |
366 UNSAFE_ENTRY(jlong, Unsafe_AllocateMemory0(JNIEnv *env, jobject unsafe, jlong size)) { |
367 size_t sz = (size_t)size; |
367 size_t sz = (size_t)size; |
368 |
368 |
369 sz = align_up(sz, HeapWordSize); |
369 sz = align_up(sz, HeapWordSize); |
370 void* x = os::malloc(sz, mtInternal); |
370 void* x = os::malloc(sz, mtOther); |
371 |
371 |
372 return addr_to_java(x); |
372 return addr_to_java(x); |
373 } UNSAFE_END |
373 } UNSAFE_END |
374 |
374 |
375 UNSAFE_ENTRY(jlong, Unsafe_ReallocateMemory0(JNIEnv *env, jobject unsafe, jlong addr, jlong size)) { |
375 UNSAFE_ENTRY(jlong, Unsafe_ReallocateMemory0(JNIEnv *env, jobject unsafe, jlong addr, jlong size)) { |
376 void* p = addr_from_java(addr); |
376 void* p = addr_from_java(addr); |
377 size_t sz = (size_t)size; |
377 size_t sz = (size_t)size; |
378 sz = align_up(sz, HeapWordSize); |
378 sz = align_up(sz, HeapWordSize); |
379 |
379 |
380 void* x = os::realloc(p, sz, mtInternal); |
380 void* x = os::realloc(p, sz, mtOther); |
381 |
381 |
382 return addr_to_java(x); |
382 return addr_to_java(x); |
383 } UNSAFE_END |
383 } UNSAFE_END |
384 |
384 |
385 UNSAFE_ENTRY(void, Unsafe_FreeMemory0(JNIEnv *env, jobject unsafe, jlong addr)) { |
385 UNSAFE_ENTRY(void, Unsafe_FreeMemory0(JNIEnv *env, jobject unsafe, jlong addr)) { |