Mercurial > hg > graal-jvmci-8
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 |