summaryrefslogtreecommitdiff
path: root/libjava/include
diff options
context:
space:
mode:
authorbryce <bryce@138bc75d-0d04-0410-961f-82ee72b054a4>2005-03-16 18:18:59 +0000
committerbryce <bryce@138bc75d-0d04-0410-961f-82ee72b054a4>2005-03-16 18:18:59 +0000
commit42ecb5a44a291cfe9508b9775dc34634760c2dae (patch)
tree9871e263b817e18744f4503c39a8704b9cf723fd /libjava/include
parentfb45b4c382262d59f797b828131f3e0c0d25ad84 (diff)
downloadgcc-42ecb5a44a291cfe9508b9775dc34634760c2dae.tar.gz
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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96571 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/include')
-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 2d914cb9ba7..5905e264e47 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;
}