interpret.cc (_Jv_InterpMethod::check_handler): New method.

2007-02-15  Kyle Galloway  <kgallowa@redhat.com>
	
	* interpret.cc (_Jv_InterpMethod::check_handler): New method.
    * interpret-run.cc: Change the catch section to report exception
    events and to use the new check_handler method.
    * include/java-interp.h (_Jv_InterpMethod): Add check_handler.
    * gnu/gcj/jvmti/ExceptionEvent.java: New file.
    * gnu/gcj/jvmti/ExceptionEvent.h: New file.
    * gnu/gcj/jvmti/natExceptionEvent.cc: New file.
    * libjava/classpath/lib/gnu/gcj/jvmti/ExceptionEvent.class: New
    file.
    * sources.am: Added ExceptionEvent.java.
    * Makefile.am: Added natExceptionEvent.cc
    * Makefile.in: Regenerated.
    * include/Makefile.in: Regenerated.
    * gcj/Makefile.in: Regenerated.

From-SVN: r122019
This commit is contained in:
Kyle Galloway
2007-02-16 00:05:39 +00:00
committed by Kyle Galloway
parent 5039610b96
commit 7a1bf87c6e
14 changed files with 345 additions and 60 deletions
+9 -6
View File
@@ -134,6 +134,7 @@ GCSPEC = @GCSPEC@
GCTESTSPEC = @GCTESTSPEC@
GLIB_CFLAGS = @GLIB_CFLAGS@
GLIB_LIBS = @GLIB_LIBS@
GREP = @GREP@
GTK_CFLAGS = @GTK_CFLAGS@
GTK_LIBS = @GTK_LIBS@
HASH_SYNC_SPEC = @HASH_SYNC_SPEC@
@@ -237,6 +238,7 @@ USING_WIN32_THREADS_TRUE = @USING_WIN32_THREADS_TRUE@
VERSION = @VERSION@
XLIB_AWT_FALSE = @XLIB_AWT_FALSE@
XLIB_AWT_TRUE = @XLIB_AWT_TRUE@
XMKMF = @XMKMF@
X_AWT_FALSE = @X_AWT_FALSE@
X_AWT_TRUE = @X_AWT_TRUE@
X_CFLAGS = @X_CFLAGS@
@@ -248,14 +250,8 @@ ZIP = @ZIP@
ZLIBS = @ZLIBS@
ZLIBSPEC = @ZLIBSPEC@
ZLIBTESTSPEC = @ZLIBTESTSPEC@
ac_ct_AR = @ac_ct_AR@
ac_ct_AS = @ac_ct_AS@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
ac_ct_GCJ = @ac_ct_GCJ@
ac_ct_LD = @ac_ct_LD@
ac_ct_RANLIB = @ac_ct_RANLIB@
ac_ct_STRIP = @ac_ct_STRIP@
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
@@ -276,7 +272,10 @@ build_os = @build_os@
build_subdir = @build_subdir@
build_vendor = @build_vendor@
datadir = @datadir@
datarootdir = @datarootdir@
dbexecdir = @dbexecdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
extra_ldflags_libjava = @extra_ldflags_libjava@
gxx_include_dir = @gxx_include_dir@
@@ -288,20 +287,24 @@ host_exeext = @host_exeext@
host_os = @host_os@
host_subdir = @host_subdir@
host_vendor = @host_vendor@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
libstdcxx_incdir = @libstdcxx_incdir@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
mkinstalldirs = @mkinstalldirs@
multi_basedir = @multi_basedir@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
subdirs = @subdirs@
+5
View File
@@ -229,6 +229,11 @@ class _Jv_InterpMethod : public _Jv_MethodBase
// Convenience function for indexing bytecode PC/insn slots in
// line tables for JDWP
jlong insn_index (pc_t pc);
// Helper function used to check if there is a handler for an exception
// present at this code index
jboolean check_handler (pc_t *pc, _Jv_InterpMethod *meth,
java::lang::Throwable *ex);
/* Get the line table for this method.
* start is the lowest index in the method