aboutsummaryrefslogtreecommitdiff
path: root/libjava/include/java-stack.h
diff options
context:
space:
mode:
authorAndreas Tobler <a.tobler@schweiz.ch>2005-03-16 19:18:59 +0100
committerBryce McKinlay <bryce@gcc.gnu.org>2005-03-16 18:18:59 +0000
commit455d8f0605b9e3c4f8760470471d22a43d01f531 (patch)
tree9871e263b817e18744f4503c39a8704b9cf723fd /libjava/include/java-stack.h
parentab1bc4e8168069b1fbe71fd5f69baf339a45775d (diff)
downloadgcc-455d8f0605b9e3c4f8760470471d22a43d01f531.zip
gcc-455d8f0605b9e3c4f8760470471d22a43d01f531.tar.gz
gcc-455d8f0605b9e3c4f8760470471d22a43d01f531.tar.bz2
stacktrace.cc (_Jv_StackTrace::UnwindTraceFn): Protect interpreter-specific code with #ifdef INTERPRETER.
2005-03-15 Andreas Tobler <a.tobler@schweiz.ch> * stacktrace.cc (_Jv_StackTrace::UnwindTraceFn): Protect interpreter-specific code with #ifdef INTERPRETER. (_Jv_StackTrace::getLineNumberForFrame): Likewise. (_Jv_StackTrace::FillInFrameInfo): Likewise. (_Jv_StackTrace::non_system_trace_fn): Likewise. * include/java-stack.h (struct _Jv_InterpFrameInfo): Protect with #ifdef INTERPRETER. Also protect declarations that use it. * java/lang/Class.h: Move _Jv_StackTrace friend declaration outside #ifdef INTERPRETER block. From-SVN: r96571
Diffstat (limited to 'libjava/include/java-stack.h')
-rw-r--r--libjava/include/java-stack.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/libjava/include/java-stack.h b/libjava/include/java-stack.h
index 2d914cb..5905e26 100644
--- a/libjava/include/java-stack.h
+++ b/libjava/include/java-stack.h
@@ -71,7 +71,9 @@ struct _Jv_UnwindState
jint length; // length of FRAMES
jint pos; // current position in FRAMES
_Jv_StackFrame *frames; // array of stack frame data to be filled.
+#ifdef INTERPRETER
_Jv_InterpFrame *interp_frame; // current frame in the interpreter stack.
+#endif
_Jv_TraceFn trace_function; // function to call back after each frame
// is enumerated. May be NULL.
void *trace_data; // additional state data for trace_function.
@@ -84,8 +86,10 @@ struct _Jv_UnwindState
Thread *thread = Thread::currentThread();
// Check for NULL currentThread(), in case an exception is created
// very early during the runtime startup.
+#ifdef INTERPRETER
if (thread)
interp_frame = (_Jv_InterpFrame *) thread->interp_frame;
+#endif
trace_function = NULL;
trace_data = NULL;
}