887 return (jlong) new_cap_until_GC; |
887 return (jlong) new_cap_until_GC; |
888 WB_END |
888 WB_END |
889 |
889 |
890 WB_ENTRY(jlong, WB_MetaspaceCapacityUntilGC(JNIEnv* env, jobject wb)) |
890 WB_ENTRY(jlong, WB_MetaspaceCapacityUntilGC(JNIEnv* env, jobject wb)) |
891 return (jlong) MetaspaceGC::capacity_until_GC(); |
891 return (jlong) MetaspaceGC::capacity_until_GC(); |
|
892 WB_END |
|
893 |
|
894 WB_ENTRY(jboolean, WB_IsMonitorInflated(JNIEnv* env, jobject wb, jobject obj)) |
|
895 oop obj_oop = JNIHandles::resolve(obj); |
|
896 return (jboolean) obj_oop->mark()->has_monitor(); |
|
897 WB_END |
|
898 |
|
899 WB_ENTRY(void, WB_ForceSafepoint(JNIEnv* env, jobject wb)) |
|
900 VM_ForceSafepoint force_safepoint_op; |
|
901 VMThread::execute(&force_safepoint_op); |
892 WB_END |
902 WB_END |
893 |
903 |
894 //Some convenience methods to deal with objects from java |
904 //Some convenience methods to deal with objects from java |
895 int WhiteBox::offset_for_field(const char* field_name, oop object, |
905 int WhiteBox::offset_for_field(const char* field_name, oop object, |
896 Symbol* signature_symbol) { |
906 Symbol* signature_symbol) { |
1074 {CC"incMetaspaceCapacityUntilGC", CC"(J)J", (void*)&WB_IncMetaspaceCapacityUntilGC }, |
1084 {CC"incMetaspaceCapacityUntilGC", CC"(J)J", (void*)&WB_IncMetaspaceCapacityUntilGC }, |
1075 {CC"metaspaceCapacityUntilGC", CC"()J", (void*)&WB_MetaspaceCapacityUntilGC }, |
1085 {CC"metaspaceCapacityUntilGC", CC"()J", (void*)&WB_MetaspaceCapacityUntilGC }, |
1076 {CC"getCPUFeatures", CC"()Ljava/lang/String;", (void*)&WB_GetCPUFeatures }, |
1086 {CC"getCPUFeatures", CC"()Ljava/lang/String;", (void*)&WB_GetCPUFeatures }, |
1077 {CC"getNMethod", CC"(Ljava/lang/reflect/Executable;Z)[Ljava/lang/Object;", |
1087 {CC"getNMethod", CC"(Ljava/lang/reflect/Executable;Z)[Ljava/lang/Object;", |
1078 (void*)&WB_GetNMethod }, |
1088 (void*)&WB_GetNMethod }, |
|
1089 {CC"isMonitorInflated", CC"(Ljava/lang/Object;)Z", (void*)&WB_IsMonitorInflated }, |
|
1090 {CC"forceSafepoint", CC"()V", (void*)&WB_ForceSafepoint }, |
1079 }; |
1091 }; |
1080 |
1092 |
1081 #undef CC |
1093 #undef CC |
1082 |
1094 |
1083 JVM_ENTRY(void, JVM_RegisterWhiteBoxMethods(JNIEnv* env, jclass wbclass)) |
1095 JVM_ENTRY(void, JVM_RegisterWhiteBoxMethods(JNIEnv* env, jclass wbclass)) |