diff options
author | Tom Tromey <tromey@redhat.com> | 2004-11-10 18:03:51 +0000 |
---|---|---|
committer | Tom Tromey <tromey@redhat.com> | 2004-11-10 18:03:51 +0000 |
commit | 08c29a35ccef54f32a3466cc94876f241026aa2a (patch) | |
tree | be5474848fe5899b3f55417b2355cec567cbbde7 | |
parent | c567153ea03c1d93002ae03742e1772fa7a233d7 (diff) |
* link.cc (verbose_class_flag): Declare.
(wait_for_state): Print message when handling precompiled class.
* java/lang/natClass.cc (verbose_class_flag): Moved to link.cc.
git-svn-id: https://gcc.gnu.org/svn/gcc/branches/gcj-abi-2-dev-branch@90400 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | libjava/ChangeLog | 6 | ||||
-rw-r--r-- | libjava/java/lang/natClass.cc | 2 | ||||
-rw-r--r-- | libjava/link.cc | 16 |
3 files changed, 22 insertions, 2 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog index 45c943678ee..6a8c971fca7 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,3 +1,9 @@ +2004-11-10 Tom Tromey <tromey@redhat.com> + + * link.cc (verbose_class_flag): Declare. + (wait_for_state): Print message when handling precompiled class. + * java/lang/natClass.cc (verbose_class_flag): Moved to link.cc. + 2004-11-09 Tom Tromey <tromey@redhat.com> * testsuite/libjava.lang/assign2.out: New file. diff --git a/libjava/java/lang/natClass.cc b/libjava/java/lang/natClass.cc index be72c5c25f1..0e9c26c7b4f 100644 --- a/libjava/java/lang/natClass.cc +++ b/libjava/java/lang/natClass.cc @@ -68,8 +68,6 @@ details. */ using namespace gcj; -bool gcj::verbose_class_flag; - jclass java::lang::Class::forName (jstring className, jboolean initialize, java::lang::ClassLoader *loader) diff --git a/libjava/link.cc b/libjava/link.cc index fa08198c0e2..f1030c35bef 100644 --- a/libjava/link.cc +++ b/libjava/link.cc @@ -40,6 +40,9 @@ details. */ using namespace gcj; +// When true, print debugging information about class loading. +bool gcj::verbose_class_flag; + typedef unsigned int uaddr __attribute__ ((mode (pointer))); template<typename T> @@ -1671,6 +1674,19 @@ _Jv_Linker::wait_for_state (jclass klass, int state) java::lang::Thread *save = klass->thread; klass->thread = self; + // Print some debugging info if requested. Interpreted classes are + // handled in defineclass, so we only need to handle the two + // pre-compiled cases here. + if (gcj::verbose_class_flag + && (klass->state == JV_STATE_COMPILED + || klass->state == JV_STATE_PRELOADING) + && ! _Jv_IsInterpretedClass (klass)) + // We use a somewhat bogus test for the ABI here. + fprintf (stderr, "[Loaded (%s) %s]\n", + (klass->state == JV_STATE_PRELOADING ? "BC-compiled" + : "pre-compiled"), + klass->name->chars()); + try { if (state >= JV_STATE_LOADING && klass->state < JV_STATE_LOADING) |