< prev index next >
src/hotspot/share/prims/whitebox.cpp
Print this page
*** 629,639 ****
if (UseG1GC) {
ResourceMark rm(THREAD);
G1CollectedHeap* g1h = G1CollectedHeap::heap();
MemoryUsage usage = g1h->get_auxiliary_data_memory_usage();
Handle h = MemoryService::create_MemoryUsage_obj(usage, CHECK_NULL);
! return JNIHandles::make_local(env, h());
}
THROW_MSG_0(vmSymbols::java_lang_UnsupportedOperationException(), "WB_G1AuxiliaryMemoryUsage: G1 GC is not enabled");
WB_END
WB_ENTRY(jint, WB_G1ActiveMemoryNodeCount(JNIEnv* env, jobject o))
--- 629,639 ----
if (UseG1GC) {
ResourceMark rm(THREAD);
G1CollectedHeap* g1h = G1CollectedHeap::heap();
MemoryUsage usage = g1h->get_auxiliary_data_memory_usage();
Handle h = MemoryService::create_MemoryUsage_obj(usage, CHECK_NULL);
! return JNIHandles::make_local(THREAD, h());
}
THROW_MSG_0(vmSymbols::java_lang_UnsupportedOperationException(), "WB_G1AuxiliaryMemoryUsage: G1 GC is not enabled");
WB_END
WB_ENTRY(jint, WB_G1ActiveMemoryNodeCount(JNIEnv* env, jobject o))
*** 652,662 ****
typeArrayOop result = oopFactory::new_intArray(num_node_ids, CHECK_NULL);
for (int i = 0; i < num_node_ids; i++) {
result->int_at_put(i, (jint)node_ids[i]);
}
! return (jintArray) JNIHandles::make_local(env, result);
}
THROW_MSG_NULL(vmSymbols::java_lang_UnsupportedOperationException(), "WB_G1MemoryNodeIds: G1 GC is not enabled");
WB_END
class OldRegionsLivenessClosure: public HeapRegionClosure {
--- 652,662 ----
typeArrayOop result = oopFactory::new_intArray(num_node_ids, CHECK_NULL);
for (int i = 0; i < num_node_ids; i++) {
result->int_at_put(i, (jint)node_ids[i]);
}
! return (jintArray) JNIHandles::make_local(THREAD, result);
}
THROW_MSG_NULL(vmSymbols::java_lang_UnsupportedOperationException(), "WB_G1MemoryNodeIds: G1 GC is not enabled");
WB_END
class OldRegionsLivenessClosure: public HeapRegionClosure {
*** 713,723 ****
typeArrayOop result = oopFactory::new_longArray(3, CHECK_NULL);
result->long_at_put(0, rli.total_count());
result->long_at_put(1, rli.total_memory());
result->long_at_put(2, rli.total_memory_to_free());
! return (jlongArray) JNIHandles::make_local(env, result);
WB_END
#endif // INCLUDE_G1GC
#if INCLUDE_NMT
--- 713,723 ----
typeArrayOop result = oopFactory::new_longArray(3, CHECK_NULL);
result->long_at_put(0, rli.total_count());
result->long_at_put(1, rli.total_memory());
result->long_at_put(2, rli.total_memory_to_free());
! return (jlongArray) JNIHandles::make_local(THREAD, result);
WB_END
#endif // INCLUDE_G1GC
#if INCLUDE_NMT
*** 1676,1691 ****
methodHandle mh(thread, Method::checked_resolve_jmethod_id(jmid));
return (jlong) mh->method_data();
WB_END
WB_ENTRY(jlong, WB_GetThreadStackSize(JNIEnv* env, jobject o))
! return (jlong) Thread::current()->stack_size();
WB_END
WB_ENTRY(jlong, WB_GetThreadRemainingStackSize(JNIEnv* env, jobject o))
! JavaThread* t = JavaThread::current();
! return (jlong) t->stack_available(os::current_stack_pointer()) - (jlong)JavaThread::stack_shadow_zone_size();
WB_END
int WhiteBox::array_bytes_to_length(size_t bytes) {
return Array<u1>::bytes_to_length(bytes);
--- 1676,1690 ----
methodHandle mh(thread, Method::checked_resolve_jmethod_id(jmid));
return (jlong) mh->method_data();
WB_END
WB_ENTRY(jlong, WB_GetThreadStackSize(JNIEnv* env, jobject o))
! return (jlong) thread->stack_size();
WB_END
WB_ENTRY(jlong, WB_GetThreadRemainingStackSize(JNIEnv* env, jobject o))
! return (jlong) thread->stack_available(os::current_stack_pointer()) - (jlong)JavaThread::stack_shadow_zone_size();
WB_END
int WhiteBox::array_bytes_to_length(size_t bytes) {
return Array<u1>::bytes_to_length(bytes);
*** 1788,1798 ****
Monitor::_safepoint_check_flag :
Monitor::_no_safepoint_check_flag;
MutexLocker ml(new Mutex(Mutex::special, "SpecialTest_lock", allowVMBlock, sfpt_check_required), safepoint_check);
// If the lock above succeeds, try to safepoint to test the NSV implied with this special lock.
! ThreadBlockInVM tbivm(JavaThread::current());
WB_END
WB_ENTRY(jboolean, WB_IsMonitorInflated(JNIEnv* env, jobject wb, jobject obj))
oop obj_oop = JNIHandles::resolve(obj);
return (jboolean) obj_oop->mark().has_monitor();
--- 1787,1797 ----
Monitor::_safepoint_check_flag :
Monitor::_no_safepoint_check_flag;
MutexLocker ml(new Mutex(Mutex::special, "SpecialTest_lock", allowVMBlock, sfpt_check_required), safepoint_check);
// If the lock above succeeds, try to safepoint to test the NSV implied with this special lock.
! ThreadBlockInVM tbivm(thread);
WB_END
WB_ENTRY(jboolean, WB_IsMonitorInflated(JNIEnv* env, jobject wb, jobject obj))
oop obj_oop = JNIHandles::resolve(obj);
return (jboolean) obj_oop->mark().has_monitor();
*** 1955,1965 ****
Klass *k = java_lang_Class::as_Klass(JNIHandles::resolve_non_null(clazz));
if (k->is_instance_klass()) {
InstanceKlass *ik = InstanceKlass::cast(k);
ConstantPool *cp = ik->constants();
objArrayOop refs = cp->resolved_references();
! return (jobject)JNIHandles::make_local(env, refs);
} else {
return NULL;
}
WB_END
--- 1954,1964 ----
Klass *k = java_lang_Class::as_Klass(JNIHandles::resolve_non_null(clazz));
if (k->is_instance_klass()) {
InstanceKlass *ik = InstanceKlass::cast(k);
ConstantPool *cp = ik->constants();
objArrayOop refs = cp->resolved_references();
! return (jobject)JNIHandles::make_local(THREAD, refs);
} else {
return NULL;
}
WB_END
< prev index next >