mirror of
https://gcc.gnu.org/git/gcc.git
synced 2024-12-27 21:15:20 +08:00
prims.cc (_Jv_CreateJavaVM): Move setting runtimeInitialized from the start to the end of the function.
2006-07-28 Gary Benson <gbenson@redhat.com> * prims.cc (_Jv_CreateJavaVM): Move setting runtimeInitialized from the start to the end of the function. Remove references to VMThrowable.trace_enabled. * java/lang/natVMThrowable.cc (fillInStackTrace): Use runtimeInitialized rather than trace_enabled to decide whether to inhibit stack trace generation. * java/lang/VMThrowable.java (trace_enabled): Removed. From-SVN: r115791
This commit is contained in:
parent
b82f782bfb
commit
8d0941a9c8
@ -1,3 +1,13 @@
|
|||||||
|
2006-07-28 Gary Benson <gbenson@redhat.com>
|
||||||
|
|
||||||
|
* prims.cc (_Jv_CreateJavaVM): Move setting runtimeInitialized
|
||||||
|
from the start to the end of the function. Remove references
|
||||||
|
to VMThrowable.trace_enabled.
|
||||||
|
* java/lang/natVMThrowable.cc (fillInStackTrace): Use
|
||||||
|
runtimeInitialized rather than trace_enabled to decide
|
||||||
|
whether to inhibit stack trace generation.
|
||||||
|
* java/lang/VMThrowable.java (trace_enabled): Removed.
|
||||||
|
|
||||||
2006-07-23 Mohan Embar <gnustuff@thisiscool.com>
|
2006-07-23 Mohan Embar <gnustuff@thisiscool.com>
|
||||||
|
|
||||||
* include/win32-threads.h (_Jv_Thread_t): Explicitly
|
* include/win32-threads.h (_Jv_Thread_t): Explicitly
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
/* java.lang.VMThrowable -- VM support methods for Throwable.
|
/* java.lang.VMThrowable -- VM support methods for Throwable.
|
||||||
Copyright (C) 1998, 1999, 2002, 2004, 2005 Free Software Foundation, Inc.
|
Copyright (C) 1998, 1999, 2002, 2004, 2005, 2006
|
||||||
|
Free Software Foundation, Inc.
|
||||||
|
|
||||||
This file is part of GNU Classpath.
|
This file is part of GNU Classpath.
|
||||||
|
|
||||||
@ -76,9 +77,6 @@ final class VMThrowable
|
|||||||
*/
|
*/
|
||||||
native StackTraceElement[] getStackTrace(Throwable t);
|
native StackTraceElement[] getStackTrace(Throwable t);
|
||||||
|
|
||||||
// Setting this flag to false prevents fillInStackTrace() from running.
|
|
||||||
static boolean trace_enabled = true;
|
|
||||||
|
|
||||||
// Native stack data.
|
// Native stack data.
|
||||||
private RawDataManaged data;
|
private RawDataManaged data;
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
// natVMThrowable.cc - Native part of VMThrowable class.
|
// natVMThrowable.cc - Native part of VMThrowable class.
|
||||||
|
|
||||||
/* Copyright (C) 2003 Free Software Foundation
|
/* Copyright (C) 2003, 2006 Free Software Foundation
|
||||||
|
|
||||||
This file is part of libgcj.
|
This file is part of libgcj.
|
||||||
|
|
||||||
@ -27,7 +27,7 @@ java::lang::VMThrowable::fillInStackTrace (java::lang::Throwable *)
|
|||||||
using namespace java::lang;
|
using namespace java::lang;
|
||||||
|
|
||||||
// Don't trace stack during initialization of the runtime.
|
// Don't trace stack during initialization of the runtime.
|
||||||
if (! trace_enabled)
|
if (! gcj::runtimeInitialized)
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
_Jv_StackTrace *trace = _Jv_StackTrace::GetStackTrace ();
|
_Jv_StackTrace *trace = _Jv_StackTrace::GetStackTrace ();
|
||||||
|
@ -56,7 +56,6 @@ details. */
|
|||||||
#include <java/lang/NullPointerException.h>
|
#include <java/lang/NullPointerException.h>
|
||||||
#include <java/lang/OutOfMemoryError.h>
|
#include <java/lang/OutOfMemoryError.h>
|
||||||
#include <java/lang/System.h>
|
#include <java/lang/System.h>
|
||||||
#include <java/lang/VMThrowable.h>
|
|
||||||
#include <java/lang/VMClassLoader.h>
|
#include <java/lang/VMClassLoader.h>
|
||||||
#include <java/lang/reflect/Modifier.h>
|
#include <java/lang/reflect/Modifier.h>
|
||||||
#include <java/io/PrintStream.h>
|
#include <java/io/PrintStream.h>
|
||||||
@ -1404,8 +1403,6 @@ _Jv_CreateJavaVM (JvVMInitArgs* vm_args)
|
|||||||
if (runtimeInitialized)
|
if (runtimeInitialized)
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
runtimeInitialized = true;
|
|
||||||
|
|
||||||
jint result = parse_init_args (vm_args);
|
jint result = parse_init_args (vm_args);
|
||||||
if (result < 0)
|
if (result < 0)
|
||||||
return -1;
|
return -1;
|
||||||
@ -1447,10 +1444,6 @@ _Jv_CreateJavaVM (JvVMInitArgs* vm_args)
|
|||||||
_Jv_InitPrimClass (&_Jv_doubleClass, "double", 'D', 8);
|
_Jv_InitPrimClass (&_Jv_doubleClass, "double", 'D', 8);
|
||||||
_Jv_InitPrimClass (&_Jv_voidClass, "void", 'V', 0);
|
_Jv_InitPrimClass (&_Jv_voidClass, "void", 'V', 0);
|
||||||
|
|
||||||
// Turn stack trace generation off while creating exception objects.
|
|
||||||
_Jv_InitClass (&java::lang::VMThrowable::class$);
|
|
||||||
java::lang::VMThrowable::trace_enabled = 0;
|
|
||||||
|
|
||||||
// We have to initialize this fairly early, to avoid circular class
|
// We have to initialize this fairly early, to avoid circular class
|
||||||
// initialization. In particular we want to start the
|
// initialization. In particular we want to start the
|
||||||
// initialization of ClassLoader before we start the initialization
|
// initialization of ClassLoader before we start the initialization
|
||||||
@ -1465,8 +1458,6 @@ _Jv_CreateJavaVM (JvVMInitArgs* vm_args)
|
|||||||
|
|
||||||
no_memory = new java::lang::OutOfMemoryError;
|
no_memory = new java::lang::OutOfMemoryError;
|
||||||
|
|
||||||
java::lang::VMThrowable::trace_enabled = 1;
|
|
||||||
|
|
||||||
#ifdef USE_LTDL
|
#ifdef USE_LTDL
|
||||||
LTDL_SET_PRELOADED_SYMBOLS ();
|
LTDL_SET_PRELOADED_SYMBOLS ();
|
||||||
#endif
|
#endif
|
||||||
@ -1489,6 +1480,8 @@ _Jv_CreateJavaVM (JvVMInitArgs* vm_args)
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
runtimeInitialized = true;
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user