summaryrefslogtreecommitdiffstats
path: root/libjava/include
diff options
context:
space:
mode:
authortromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4>2005-08-17 20:44:10 +0000
committertromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4>2005-08-17 20:44:10 +0000
commit7dd5e78f772f55f8eca4d242fa8cabce1eaeff50 (patch)
tree3d74be0649ef589d515a0e04062b5e30115e5b80 /libjava/include
parent7d1898d9b959cd870bab208722fbb5f0a67a7598 (diff)
downloadppe42-gcc-7dd5e78f772f55f8eca4d242fa8cabce1eaeff50.tar.gz
ppe42-gcc-7dd5e78f772f55f8eca4d242fa8cabce1eaeff50.zip
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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@103225 138bc75d-0d04-0410-961f-82ee72b054a4
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 606a84ddcbf..459d4594278 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__ */
OpenPOWER on IntegriCloud