From f356a436f04c20db31d307e2e31e4dab21d0543b Mon Sep 17 00:00:00 2001 From: Keith Seitz Date: Sat, 28 Oct 2006 02:15:12 +0000 Subject: java-stack.h (ncodeMap): Declare. * include/java-stack.h (ncodeMap): Declare. (_Jv_StackTrace): Make _Jv_GetMethodDeclaringClass friend. * java/lang/Class.h (_Jv_GetMethodDeclaringClass): Declare. * java/lang/natClass.cc (_Jv_GetMethodDeclaringClass): New function. * stacktrace.cc (ncodeMap): Redefine from file global to global for class _Jv_StackTrace. (_Jv_StackTrace::UpdateNCodeMap): Add interpreted classes, too, so that _Jv_GetMethodDeclaringClass can find them all. (_Jv_StackTrace::ClassForFrame): Exclude interpreted classes. * jvmti.cc (_Jv_JVMTI_GetMethodDeclaringClass): New function. (_Jv_JVMTI_Interface): Define GetMethodDeclaringClass function. From-SVN: r118100 --- libjava/include/java-stack.h | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'libjava/include/java-stack.h') diff --git a/libjava/include/java-stack.h b/libjava/include/java-stack.h index f720951..b9cf09a 100644 --- a/libjava/include/java-stack.h +++ b/libjava/include/java-stack.h @@ -23,6 +23,7 @@ details. */ #include #include #include +#include #include @@ -102,6 +103,7 @@ private: int length; _Jv_StackFrame frames[]; + static java::util::IdentityHashMap *ncodeMap; static void UpdateNCodeMap (); static jclass ClassForFrame (_Jv_StackFrame *frame); static void FillInFrameInfo (_Jv_StackFrame *frame); @@ -126,7 +128,8 @@ public: static JArray *GetClassContext (jclass checkClass); static ClassLoader *GetFirstNonSystemClassLoader (void); static jobjectArray GetAccessControlStack (); - + + friend jclass _Jv_GetMethodDeclaringClass (jmethodID); }; // Information about a given address. -- cgit v1.1