diff options
author | Keith Seitz <keiths@redhat.com> | 2006-01-30 21:20:40 +0000 |
---|---|---|
committer | Keith Seitz <kseitz@gcc.gnu.org> | 2006-01-30 21:20:40 +0000 |
commit | e939885ff55dc2a789f35c222ae2ef8066da91f5 (patch) | |
tree | 968bcb2cb0b7db70800e52126823c1196c8c4bec /libjava/include/java-interp.h | |
parent | f34312c23cde2f7cb65ad7e7a7e996278d4d1566 (diff) | |
download | gcc-e939885ff55dc2a789f35c222ae2ef8066da91f5.zip gcc-e939885ff55dc2a789f35c222ae2ef8066da91f5.tar.gz gcc-e939885ff55dc2a789f35c222ae2ef8066da91f5.tar.bz2 |
java-interp.h (insn_index): New declaration.
* include/java-interp.h (insn_index): New declaration.
(num_insn_slots): New private variable.
(get_line_table): New declaration.
* interpret.cc (insn_index): New function.
(get_line_table): New function.
From-SVN: r110411
Diffstat (limited to 'libjava/include/java-interp.h')
-rw-r--r-- | libjava/include/java-interp.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/libjava/include/java-interp.h b/libjava/include/java-interp.h index 872fb10..73ab2fe 100644 --- a/libjava/include/java-interp.h +++ b/libjava/include/java-interp.h @@ -145,6 +145,7 @@ class _Jv_InterpMethod : public _Jv_MethodBase _Jv_LineTableEntry *line_table; void *prepared; + int number_insn_slots; unsigned char* bytecode () { @@ -182,9 +183,24 @@ class _Jv_InterpMethod : public _Jv_MethodBase // number info is unavailable. int get_source_line(pc_t mpc); +#ifdef DIRECT_THREADED + // Convenience function for indexing bytecode PC/insn slots in + // line tables for JDWP + jlong insn_index (pc_t pc); +#endif + public: static void dump_object(jobject o); + /* Get the line table for this method. + * start is the lowest index in the method + * end is the highest index in the method + * line_numbers is an array to hold the list of source line numbers + * code_indices is an array to hold the corresponding list of code indices + */ + void get_line_table (jlong& start, jlong& end, jintArray& line_numbers, + jlongArray& code_indices); + #ifdef DIRECT_THREADED friend void _Jv_CompileMethod (_Jv_InterpMethod*); #endif |