[multiple changes]
2007-09-04 Andrew Haley <aph@redhat.com> PR java/27908 * testsuite/libjava.lang/PR27908.java ({run1,run2,run3}.isRunning): New Method. (main): Fix race condition. 2007-08-29 Andrew Haley <aph@redhat.com> * gnu/classpath/natVMStackWalker.cc (VMStackWalker::getCallingClass): Make sure we're not sibcalled. (GET_CALLING_CLASS): Define for ARM EABI. 2007-08-22 Andrew Haley <aph@redhat.com> * configure.host (BACKTRACESPEC): Add arm*-linux*. 2007-08-22 Andrew Haley <aph@redhat.com> * configure.ac (LIBSTDCXXSPEC): New. * configure.host: Add arm*-linux* to pthread test. * configure.ac (LIBGCJTESTSPEC): Add path to libstdc++ for ARM EABI. * testsuite/libjava.jni/jni.exp (gcj_jni_compile_c_to_so): Use -fexceptions for ARM EABI. * testsuite/lib/libjava.exp (libjava_arguments): Add libgcj-test.spec. (libjava_invoke): Log the invocation. 2007-08-15 Andrew Haley <aph@redhat.com> * configure.ac (extra_ldflags): Define. * Makefile.am: Use extra_ldflags for all executables. 2007-08-14 Andrew Haley <aph@redhat.com> * sysdep/arm/backtrace.h: Remove stubs for _Unwind_GetIPInfo, _Unwind_GetRegionStart, and _Unwind_Backtrace. 2007-07-27 Andrew Haley <aph@redhat.com> * gnu/classpath/natVMStackWalker.cc (GET_CALLING_CLASS): Stub for ARM EABI. * exception.cc (get_exception_header_from_ue): New. (get_ttype_entry): ARM EABI version. (PERSONALITY_FUNCTION): Add ARM EABI code. * sysdep/arm/backtrace.h: New file. * stacktrace.cc (_URC_NORMAL_STOP): New. * configure.ac (extra_ldflags_libjava): Add libsupc++.la for ARM EABI. * configure.host (BACKTRACESPEC): Add arm/backtrace.h. From-SVN: r128098
This commit is contained in:
@@ -19,6 +19,7 @@ details. */
|
||||
#include <java/lang/ClassLoader.h>
|
||||
#include <java/lang/Class.h>
|
||||
|
||||
#ifndef __ARM_EABI_UNWINDER__
|
||||
// Return the class of the method that contains PC.
|
||||
// This is a macro not a function, since defining it as one would
|
||||
// introduce an extra frame on the stack. */
|
||||
@@ -44,6 +45,11 @@ details. */
|
||||
\
|
||||
klass; \
|
||||
})
|
||||
#else // __ARM_EABI_UNWINDER__
|
||||
// ARM EABI doesn't support _Unwind_FindEnclosingFunction.
|
||||
#define GET_CALLING_CLASS(PC) \
|
||||
(_Jv_StackTrace::GetStackWalkerCallingClass ())
|
||||
#endif
|
||||
|
||||
JArray<jclass> *
|
||||
gnu::classpath::VMStackWalker::getClassContext(void)
|
||||
@@ -59,14 +65,18 @@ jclass
|
||||
gnu::classpath::VMStackWalker::getCallingClass(void)
|
||||
{
|
||||
_Jv_InitClass (&::gnu::classpath::VMStackWalker::class$);
|
||||
return _Jv_StackTrace::GetStackWalkerCallingClass ();
|
||||
jclass result = _Jv_StackTrace::GetStackWalkerCallingClass ();
|
||||
__asm__ __volatile__ ("" : : "g" (result));
|
||||
return result;
|
||||
}
|
||||
|
||||
jclass
|
||||
gnu::classpath::VMStackWalker::getCallingClass(::gnu::gcj::RawData *pc)
|
||||
{
|
||||
_Jv_InitClass (&::gnu::classpath::VMStackWalker::class$);
|
||||
return GET_CALLING_CLASS(pc);
|
||||
jclass result = GET_CALLING_CLASS(pc);
|
||||
__asm__ __volatile__ ("" : : "g" (result));
|
||||
return result;
|
||||
}
|
||||
|
||||
::java::lang::ClassLoader *
|
||||
|
||||
Reference in New Issue
Block a user