comparison src/share/vm/prims/jvmtiEnv.cpp @ 2019:09b4dd4f152b

7004582: Add GetThisObject() function to JVMTI 1.2 Summary: Add 'GetThisObject' function Reviewed-by: never, coleenp
author kamg
date Thu, 09 Dec 2010 15:04:26 -0500
parents f95d63e2154a
children b1a2afa37ec4
comparison
equal deleted inserted replaced
2018:642e54d1850a 2019:09b4dd4f152b
1794 *value_ptr = op.value().l; 1794 *value_ptr = op.value().l;
1795 return JVMTI_ERROR_NONE; 1795 return JVMTI_ERROR_NONE;
1796 } 1796 }
1797 } /* end GetLocalObject */ 1797 } /* end GetLocalObject */
1798 1798
1799 // Threads_lock NOT held, java_thread not protected by lock
1800 // java_thread - pre-checked
1801 // java_thread - unchecked
1802 // depth - pre-checked as non-negative
1803 // value - pre-checked for NULL
1804 jvmtiError
1805 JvmtiEnv::GetLocalInstance(JavaThread* java_thread, jint depth, jobject* value){
1806 JavaThread* current_thread = JavaThread::current();
1807 // rm object is created to clean up the javaVFrame created in
1808 // doit_prologue(), but after doit() is finished with it.
1809 ResourceMark rm(current_thread);
1810
1811 VM_GetReceiver op(java_thread, current_thread, depth);
1812 VMThread::execute(&op);
1813 jvmtiError err = op.result();
1814 if (err != JVMTI_ERROR_NONE) {
1815 return err;
1816 } else {
1817 *value = op.value().l;
1818 return JVMTI_ERROR_NONE;
1819 }
1820 } /* end GetLocalInstance */
1821
1799 1822
1800 // Threads_lock NOT held, java_thread not protected by lock 1823 // Threads_lock NOT held, java_thread not protected by lock
1801 // java_thread - pre-checked 1824 // java_thread - pre-checked
1802 // java_thread - unchecked 1825 // java_thread - unchecked
1803 // depth - pre-checked as non-negative 1826 // depth - pre-checked as non-negative