src/share/vm/prims/whitebox.cpp

changeset 9637
eef07cd490d4
parent 9572
624a0741915c
parent 9622
1abddcd038df
child 9703
2fdf635bcf28
     1.1 --- a/src/share/vm/prims/whitebox.cpp	Wed Jul 03 20:04:13 2019 +0800
     1.2 +++ b/src/share/vm/prims/whitebox.cpp	Wed Jul 03 20:42:37 2019 +0800
     1.3 @@ -171,7 +171,7 @@
     1.4  WB_ENTRY(void, WB_PrintHeapSizes(JNIEnv* env, jobject o)) {
     1.5    CollectorPolicy * p = Universe::heap()->collector_policy();
     1.6    gclog_or_tty->print_cr("Minimum heap " SIZE_FORMAT " Initial heap "
     1.7 -    SIZE_FORMAT" Maximum heap " SIZE_FORMAT " Min alignment " SIZE_FORMAT " Max alignment " SIZE_FORMAT,
     1.8 +    SIZE_FORMAT " Maximum heap " SIZE_FORMAT " Space alignment " SIZE_FORMAT " Heap alignment " SIZE_FORMAT,
     1.9      p->min_heap_byte_size(), p->initial_heap_byte_size(), p->max_heap_byte_size(),
    1.10      p->space_alignment(), p->heap_alignment());
    1.11  }
    1.12 @@ -371,6 +371,13 @@
    1.13    return (jlong)(uintptr_t)os::malloc(size, mtTest, stack);
    1.14  WB_END
    1.15  
    1.16 +// Alloc memory with pseudo call stack and specific memory type.
    1.17 +WB_ENTRY(jlong, WB_NMTMallocWithPseudoStackAndType(JNIEnv* env, jobject o, jlong size, jint pseudo_stack, jint type))
    1.18 +  address pc = (address)(size_t)pseudo_stack;
    1.19 +  NativeCallStack stack(&pc, 1);
    1.20 +  return (jlong)(uintptr_t)os::malloc(size, (MEMFLAGS)type, stack);
    1.21 +WB_END
    1.22 +
    1.23  // Free the memory allocated by NMTAllocTest
    1.24  WB_ENTRY(void, WB_NMTFree(JNIEnv* env, jobject o, jlong mem))
    1.25    os::free((void*)(uintptr_t)mem, mtTest);
    1.26 @@ -1081,6 +1088,7 @@
    1.27  #if INCLUDE_NMT
    1.28    {CC"NMTMalloc",           CC"(J)J",                 (void*)&WB_NMTMalloc          },
    1.29    {CC"NMTMallocWithPseudoStack", CC"(JI)J",           (void*)&WB_NMTMallocWithPseudoStack},
    1.30 +  {CC"NMTMallocWithPseudoStackAndType", CC"(JII)J",   (void*)&WB_NMTMallocWithPseudoStackAndType},
    1.31    {CC"NMTFree",             CC"(J)V",                 (void*)&WB_NMTFree            },
    1.32    {CC"NMTReserveMemory",    CC"(J)J",                 (void*)&WB_NMTReserveMemory   },
    1.33    {CC"NMTCommitMemory",     CC"(JJ)V",                (void*)&WB_NMTCommitMemory    },

mercurial