link.cc (ensure_class_linked): Removed #ifdef.

* link.cc (ensure_class_linked): Removed #ifdef.
	(print_class_loaded): Likewise.
	(wait_for_state): Likewise.
	* java/lang/Class.h (_Jv_IsInterpretedClass): Always declare.
	* include/jvm.h (_Jv_IsInterpretedClass): Moved from...
	* include/java-interp.h: ... here.

From-SVN: r96589
This commit is contained in:
Tom Tromey 2005-03-17 00:18:50 +00:00 committed by Tom Tromey
parent 4c7e547129
commit f37a936b56
5 changed files with 24 additions and 19 deletions

View File

@ -1,3 +1,12 @@
2005-03-16 Tom Tromey <tromey@redhat.com>
* link.cc (ensure_class_linked): Removed #ifdef.
(print_class_loaded): Likewise.
(wait_for_state): Likewise.
* java/lang/Class.h (_Jv_IsInterpretedClass): Always declare.
* include/jvm.h (_Jv_IsInterpretedClass): Moved from...
* include/java-interp.h: ... here.
2005-03-16 Tom Tromey <tromey@redhat.com>
* gnu/java/lang/MainThread.java (run): Load main class using

View File

@ -1,6 +1,6 @@
// java-interp.h - Header file for the bytecode interpreter. -*- c++ -*-
/* Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation
/* Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation
This file is part of libgcj.
@ -32,12 +32,6 @@ extern "C" {
#include <ffi.h>
}
extern inline jboolean
_Jv_IsInterpretedClass (jclass c)
{
return (c->accflags & java::lang::reflect::Modifier::INTERPRETED) != 0;
}
struct _Jv_ResolvedMethod;
void _Jv_InitInterpreter ();

View File

@ -572,4 +572,13 @@ _Jv_CheckABIVersion (unsigned long value)
|| value == (GCJ_VERSION + GCJ_BINARYCOMPAT_ADDITION));
}
// It makes the source cleaner if we simply always define this
// function. If the interpreter is not built, it will never return
// 'true'.
extern inline jboolean
_Jv_IsInterpretedClass (jclass c)
{
return (c->accflags & java::lang::reflect::Modifier::INTERPRETED) != 0;
}
#endif /* __JAVA_JVM_H__ */

View File

@ -233,8 +233,9 @@ jboolean _Jv_CheckAccess (jclass self_klass, jclass other_klass,
jint flags);
jclass _Jv_GetArrayClass (jclass klass, java::lang::ClassLoader *loader);
#ifdef INTERPRETER
jboolean _Jv_IsInterpretedClass (jclass);
#ifdef INTERPRETER
void _Jv_InitField (jobject, jclass, int);
class _Jv_ClassReader;
@ -465,8 +466,9 @@ private:
friend jclass (::_Jv_GetArrayClass) (jclass klass,
java::lang::ClassLoader *loader);
#ifdef INTERPRETER
friend jboolean (::_Jv_IsInterpretedClass) (jclass);
#ifdef INTERPRETER
friend void ::_Jv_InitField (jobject, jclass, int);
friend class ::_Jv_ClassReader;

View File

@ -1395,9 +1395,7 @@ _Jv_Linker::ensure_class_linked (jclass klass)
// a reference to a class we can't access. This can validly
// occur in an obscure case involving the InnerClasses
// attribute.
#ifdef INTERPRETER
if (! _Jv_IsInterpretedClass (klass))
#endif
{
// Resolve class constants first, since other constant pool
// entries may rely on these.
@ -1652,11 +1650,7 @@ _Jv_Linker::print_class_loaded (jclass klass)
// We use a somewhat bogus test for the ABI here.
char *abi;
#ifdef INTERPRETER
if (_Jv_IsInterpretedClass (klass))
#else
if (false)
#endif
abi = "bytecode";
else if (klass->state == JV_STATE_PRELOADING)
abi = "BC-compiled";
@ -1693,10 +1687,7 @@ _Jv_Linker::wait_for_state (jclass klass, int state)
if (gcj::verbose_class_flag
&& (klass->state == JV_STATE_COMPILED
|| klass->state == JV_STATE_PRELOADING)
#ifdef INTERPRETER
&& ! _Jv_IsInterpretedClass (klass)
#endif
)
&& ! _Jv_IsInterpretedClass (klass))
print_class_loaded (klass);
try