diff options
author | kseitz <kseitz@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-05-04 01:04:11 +0000 |
---|---|---|
committer | kseitz <kseitz@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-05-04 01:04:11 +0000 |
commit | 6b971ede6683befb352a8ebd194f89424b49caf2 (patch) | |
tree | a8f4058c8d5dc274f095fb50893c2f74cfe875a2 /libjava/jni.cc | |
parent | b24655ef32d2caa4129f97dff97e12d308230f2c (diff) | |
download | gcc-6b971ede6683befb352a8ebd194f89424b49caf2.tar.gz |
* include/jvmti-int.h (_Jv_ReportJVMTIExceptionThrow):
Declare.
* interpret.cc (_Jv_ReportJVMTIExceptionThrow): New function.
(find_catch_location): New function.
(REPORT_EXCEPTION): New macro.
(throw_internal_error): Use REPORT_EXCEPTION.
(throw_incompatible_class_change_error): Likewise.
(throw_null_pointer_exception): Likewise.
(throw_class_format_error): Likewise.
* interpret-run.cc (INTERP_REPORT_EXCEPTION)[DEBUG]: Set
to REPORT_EXCEPTION.
(INTERP_REPORT_EXCEPTION)[!DEBUG]: Make nop.
(insn_new): Use INTERP_REPORT_EXCEPTION.
(insn_athrow): Likewise.
Remove previous JVMTI exception notifications.
Add JVMTI ExceptionCatch notificatin.
* jni.cc (_Jv_PopSystemFrame): Notify JVMTI clients of
exception throw.
* gnu/gcj/jvmti/ExceptionEvent.java: Removed.
* gnu/gcj/jvmti/ExceptionEvent.h: Removed.
* classpath/lib/gnu/gcj/jvmti/ExceptionEvent.class: Removed.
* gnu/classpath/jdwp/natVMVirtualMachine.cc
(jdwpExceptionCB): New function.
(jdwpVMInitCB): Set Exception event handler and enable.
* sources.am: Regenerated.
* Makefile.in: Regenerated.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@124406 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/jni.cc')
-rw-r--r-- | libjava/jni.cc | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/libjava/jni.cc b/libjava/jni.cc index 9e33be6e69f..549d4fb06d3 100644 --- a/libjava/jni.cc +++ b/libjava/jni.cc @@ -23,6 +23,7 @@ details. */ #include <jvmpi.h> #endif #include <jvmti.h> +#include "jvmti-int.h" #include <java/lang/Class.h> #include <java/lang/ClassLoader.h> @@ -456,6 +457,8 @@ _Jv_JNI_PopSystemFrame (JNIEnv *env) { jthrowable t = env->ex; env->ex = NULL; + if (JVMTI_REQUESTED_EVENT (Exception)) + _Jv_ReportJVMTIExceptionThrow (t); throw t; } } |