hotspot/src/share/vm/classfile/javaClasses.cpp
changeset 17029 9ff8d7c0ed79
parent 15234 ff1f01be5fbd
child 17081 cf52c2bc3f8c
child 18060 7cfaa4558c12
--- a/hotspot/src/share/vm/classfile/javaClasses.cpp	Fri Apr 19 16:51:27 2013 -0700
+++ b/hotspot/src/share/vm/classfile/javaClasses.cpp	Sat Apr 20 04:07:08 2013 -0700
@@ -2625,6 +2625,15 @@
   return (Metadata*)mname->address_field(_vmtarget_offset);
 }
 
+#if INCLUDE_JVMTI
+// Can be executed on VM thread only
+void java_lang_invoke_MemberName::adjust_vmtarget(oop mname, Metadata* ref) {
+  assert((is_instance(mname) && (flags(mname) & (MN_IS_METHOD | MN_IS_CONSTRUCTOR)) > 0), "wrong type");
+  assert(Thread::current()->is_VM_thread(), "not VM thread");
+  mname->address_field_put(_vmtarget_offset, (address)ref);
+}
+#endif // INCLUDE_JVMTI
+
 void java_lang_invoke_MemberName::set_vmtarget(oop mname, Metadata* ref) {
   assert(is_instance(mname), "wrong type");
   // check the type of the vmtarget