< prev index next >
src/share/vm/prims/jvmtiExport.cpp
Print this page
*** 193,203 ****
jobject to_jobject(oop obj) { return JNIHandles::make_local(_thread,obj); }
#endif
jclass to_jclass(Klass* klass) { return (klass == NULL ? NULL : (jclass)to_jobject(klass->java_mirror())); }
! jmethodID to_jmethodID(methodHandle method) { return method->jmethod_id(); }
JNIEnv* jni_env() { return _jni_env; }
};
class JvmtiThreadEventMark : public JvmtiEventMark {
--- 193,203 ----
jobject to_jobject(oop obj) { return JNIHandles::make_local(_thread,obj); }
#endif
jclass to_jclass(Klass* klass) { return (klass == NULL ? NULL : (jclass)to_jobject(klass->java_mirror())); }
! jmethodID to_jmethodID(const methodHandle& method) { return method->jmethod_id(); }
JNIEnv* jni_env() { return _jni_env; }
};
class JvmtiThreadEventMark : public JvmtiEventMark {
*** 227,259 ****
class JvmtiMethodEventMark : public JvmtiThreadEventMark {
private:
jmethodID _mid;
public:
! JvmtiMethodEventMark(JavaThread *thread, methodHandle method) :
JvmtiThreadEventMark(thread),
_mid(to_jmethodID(method)) {};
jmethodID jni_methodID() { return _mid; }
};
class JvmtiLocationEventMark : public JvmtiMethodEventMark {
private:
jlocation _loc;
public:
! JvmtiLocationEventMark(JavaThread *thread, methodHandle method, address location) :
JvmtiMethodEventMark(thread, method),
_loc(location - method->code_base()) {};
jlocation location() { return _loc; }
};
class JvmtiExceptionEventMark : public JvmtiLocationEventMark {
private:
jobject _exc;
public:
! JvmtiExceptionEventMark(JavaThread *thread, methodHandle method, address location, Handle exception) :
JvmtiLocationEventMark(thread, method, location),
_exc(to_jobject(exception())) {};
jobject exception() { return _exc; }
};
--- 227,259 ----
class JvmtiMethodEventMark : public JvmtiThreadEventMark {
private:
jmethodID _mid;
public:
! JvmtiMethodEventMark(JavaThread *thread, const methodHandle& method) :
JvmtiThreadEventMark(thread),
_mid(to_jmethodID(method)) {};
jmethodID jni_methodID() { return _mid; }
};
class JvmtiLocationEventMark : public JvmtiMethodEventMark {
private:
jlocation _loc;
public:
! JvmtiLocationEventMark(JavaThread *thread, const methodHandle& method, address location) :
JvmtiMethodEventMark(thread, method),
_loc(location - method->code_base()) {};
jlocation location() { return _loc; }
};
class JvmtiExceptionEventMark : public JvmtiLocationEventMark {
private:
jobject _exc;
public:
! JvmtiExceptionEventMark(JavaThread *thread, const methodHandle& method, address location, Handle exception) :
JvmtiLocationEventMark(thread, method, location),
_exc(to_jobject(exception())) {};
jobject exception() { return _exc; }
};
< prev index next >