* 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
+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
// 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.
#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 ();
|| 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__ */
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;
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;
// 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.
// 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";
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