aboutsummaryrefslogtreecommitdiff
path: root/libjava/include
diff options
context:
space:
mode:
authorTom Tromey <tromey@redhat.com>2005-08-17 20:44:10 +0000
committerTom Tromey <tromey@gcc.gnu.org>2005-08-17 20:44:10 +0000
commit97b51fd08ea84c07be2c7fea17210453eef46371 (patch)
tree3d74be0649ef589d515a0e04062b5e30115e5b80 /libjava/include
parent87bb8864f6fa4ca966e8a57aa4828d51b3f9cc72 (diff)
downloadgcc-97b51fd08ea84c07be2c7fea17210453eef46371.zip
gcc-97b51fd08ea84c07be2c7fea17210453eef46371.tar.gz
gcc-97b51fd08ea84c07be2c7fea17210453eef46371.tar.bz2
class.c (make_class_data): Always emit JV_STATE_PRELOADING for class' initial state.
gcc/java: * class.c (make_class_data): Always emit JV_STATE_PRELOADING for class' initial state. libjava: * java/lang/Class.h (_Jv_IsBinaryCompatibilityABI): Declare as friend. * include/jvm.h (_Jv_IsBinaryCompatibilityABI): New function. * testsuite/libjava.lang/bclink.java: New file. * testsuite/libjava.lang/bclink.out: New file. * link.cc (print_class_loaded): Changed ABI test to look at various _syms fields. From-SVN: r103225
Diffstat (limited to 'libjava/include')
-rw-r--r--libjava/include/jvm.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/libjava/include/jvm.h b/libjava/include/jvm.h
index 606a84d..459d459 100644
--- a/libjava/include/jvm.h
+++ b/libjava/include/jvm.h
@@ -621,4 +621,13 @@ _Jv_IsInterpretedClass (jclass c)
return (c->accflags & java::lang::reflect::Modifier::INTERPRETED) != 0;
}
+// Return true if the class was compiled with the BC ABI.
+extern inline jboolean
+_Jv_IsBinaryCompatibilityABI (jclass c)
+{
+ // There isn't really a better test for the ABI type at this point,
+ // that will work once the class has been registered.
+ return c->otable_syms || c->atable_syms || c->itable_syms;
+}
+
#endif /* __JAVA_JVM_H__ */