hotspot/src/share/vm/prims/whitebox.cpp
changeset 28163 322d55d167be
parent 27923 2c79bc396381
child 28203 905c60857879
equal deleted inserted replaced
28023:a4075664328d 28163:322d55d167be
  1074   return (jlong) new_cap_until_GC;
  1074   return (jlong) new_cap_until_GC;
  1075 WB_END
  1075 WB_END
  1076 
  1076 
  1077 WB_ENTRY(jlong, WB_MetaspaceCapacityUntilGC(JNIEnv* env, jobject wb))
  1077 WB_ENTRY(jlong, WB_MetaspaceCapacityUntilGC(JNIEnv* env, jobject wb))
  1078   return (jlong) MetaspaceGC::capacity_until_GC();
  1078   return (jlong) MetaspaceGC::capacity_until_GC();
       
  1079 WB_END
       
  1080 
       
  1081 WB_ENTRY(void, WB_AssertMatchingSafepointCalls(JNIEnv* env, jobject o, jboolean mutexSafepointValue, jboolean attemptedNoSafepointValue))
       
  1082   Monitor::SafepointCheckRequired sfpt_check_required = mutexSafepointValue ?
       
  1083                                            Monitor::_safepoint_check_always :
       
  1084                                            Monitor::_safepoint_check_never;
       
  1085   MutexLockerEx ml(new Mutex(Mutex::leaf, "SFPT_Test_lock", true, sfpt_check_required),
       
  1086                    attemptedNoSafepointValue == JNI_TRUE);
  1079 WB_END
  1087 WB_END
  1080 
  1088 
  1081 //Some convenience methods to deal with objects from java
  1089 //Some convenience methods to deal with objects from java
  1082 int WhiteBox::offset_for_field(const char* field_name, oop object,
  1090 int WhiteBox::offset_for_field(const char* field_name, oop object,
  1083     Symbol* signature_symbol) {
  1091     Symbol* signature_symbol) {
  1272   {CC"getCompilationActivityMode",
  1280   {CC"getCompilationActivityMode",
  1273                            CC"()I",                   (void*)&WB_GetCompilationActivityMode},
  1281                            CC"()I",                   (void*)&WB_GetCompilationActivityMode},
  1274   {CC"getCodeBlob",        CC"(J)[Ljava/lang/Object;",(void*)&WB_GetCodeBlob        },
  1282   {CC"getCodeBlob",        CC"(J)[Ljava/lang/Object;",(void*)&WB_GetCodeBlob        },
  1275   {CC"getThreadStackSize", CC"()J",                   (void*)&WB_GetThreadStackSize },
  1283   {CC"getThreadStackSize", CC"()J",                   (void*)&WB_GetThreadStackSize },
  1276   {CC"getThreadRemainingStackSize", CC"()J",          (void*)&WB_GetThreadRemainingStackSize },
  1284   {CC"getThreadRemainingStackSize", CC"()J",          (void*)&WB_GetThreadRemainingStackSize },
       
  1285   {CC"assertMatchingSafepointCalls", CC"(ZZ)V",       (void*)&WB_AssertMatchingSafepointCalls },
  1277 };
  1286 };
  1278 
  1287 
  1279 #undef CC
  1288 #undef CC
  1280 
  1289 
  1281 JVM_ENTRY(void, JVM_RegisterWhiteBoxMethods(JNIEnv* env, jclass wbclass))
  1290 JVM_ENTRY(void, JVM_RegisterWhiteBoxMethods(JNIEnv* env, jclass wbclass))