summaryrefslogtreecommitdiffstats
path: root/libjava/prims.cc
diff options
context:
space:
mode:
authorrmathew <rmathew@138bc75d-0d04-0410-961f-82ee72b054a4>2004-06-18 13:59:04 +0000
committerrmathew <rmathew@138bc75d-0d04-0410-961f-82ee72b054a4>2004-06-18 13:59:04 +0000
commit45afb71e5e5add2dadf910225eae01fba6db4d6b (patch)
tree05dfa4f5f286086badcd7c22b6c5760c0fc3ec9e /libjava/prims.cc
parent674f3b8fc13c3141f3e94ccfe5a63a7859c3f0c9 (diff)
downloadppe42-gcc-45afb71e5e5add2dadf910225eae01fba6db4d6b.tar.gz
ppe42-gcc-45afb71e5e5add2dadf910225eae01fba6db4d6b.zip
* prims.cc (_Jv_CreateJavaVM): Install SEGV and FPE handlers,
if desired, before the default class loader is initialised. Call INIT_SEGV only if HANDLE_SEGV is defined. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83348 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/prims.cc')
-rw-r--r--libjava/prims.cc14
1 files changed, 9 insertions, 5 deletions
diff --git a/libjava/prims.cc b/libjava/prims.cc
index 29f2b2090e8..cbcbc9fbf16 100644
--- a/libjava/prims.cc
+++ b/libjava/prims.cc
@@ -954,6 +954,14 @@ _Jv_CreateJavaVM (void* /*vm_args*/)
_Jv_InitGC ();
_Jv_InitializeSyncMutex ();
+#ifdef HANDLE_SEGV
+ INIT_SEGV;
+#endif
+
+#ifdef HANDLE_FPE
+ INIT_FPE;
+#endif
+
/* Initialize Utf8 constants declared in jvm.h. */
void_signature = _Jv_makeUtf8Const ("()V", 3);
clinit_name = _Jv_makeUtf8Const ("<clinit>", 8);
@@ -980,15 +988,11 @@ _Jv_CreateJavaVM (void* /*vm_args*/)
// initialization of ClassLoader before we start the initialization
// of VMClassLoader.
_Jv_InitClass (&java::lang::ClassLoader::class$);
+
// Once the bootstrap loader is in place, change it into a kind of
// system loader, by having it read the class path.
gnu::gcj::runtime::VMClassLoader::initialize();
- INIT_SEGV;
-#ifdef HANDLE_FPE
- INIT_FPE;
-#endif
-
no_memory = new java::lang::OutOfMemoryError;
java::lang::VMThrowable::trace_enabled = 1;
OpenPOWER on IntegriCloud