aboutsummaryrefslogtreecommitdiff
path: root/tests/nbody-java/native_java_lang_Object.c
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2013-05-08 16:06:26 -0700
committerAlon Zakai <alonzakai@gmail.com>2013-05-08 16:06:26 -0700
commit693682fc225e60c9c335ee910fb3c8bb5cf85470 (patch)
treeb2c1285adf65b68a7b20aa231c4c5665966b2c18 /tests/nbody-java/native_java_lang_Object.c
parentb41b535aeac53740dec416f617378ec4e4e382ce (diff)
add nbody-java code
Diffstat (limited to 'tests/nbody-java/native_java_lang_Object.c')
-rw-r--r--tests/nbody-java/native_java_lang_Object.c96
1 files changed, 96 insertions, 0 deletions
diff --git a/tests/nbody-java/native_java_lang_Object.c b/tests/nbody-java/native_java_lang_Object.c
new file mode 100644
index 00000000..55f4c0c6
--- /dev/null
+++ b/tests/nbody-java/native_java_lang_Object.c
@@ -0,0 +1,96 @@
+
+#include "xmlvm.h"
+#include "java_lang_Object.h"
+
+
+//XMLVM_BEGIN_NATIVE_IMPLEMENTATION
+//XMLVM_END_NATIVE_IMPLEMENTATION
+
+void java_lang_Object_initNativeLayer__()
+{
+ //XMLVM_BEGIN_NATIVE[java_lang_Object_initNativeLayer__]
+ // Nothing to be done
+ //XMLVM_END_NATIVE
+}
+
+JAVA_OBJECT java_lang_Object_clone__(JAVA_OBJECT me)
+{
+ //XMLVM_BEGIN_NATIVE[java_lang_Object_clone__]
+ //TODO check for ImplementsClonable interface
+ java_lang_Object* thiz = me;
+ int sizeInstance = thiz->tib->sizeInstance;
+ if (sizeInstance == -1) {
+ XMLVM_INTERNAL_ERROR();
+ }
+ JAVA_OBJECT clone = XMLVM_MALLOC(sizeInstance);
+ XMLVM_MEMCPY(clone, me, sizeInstance);
+ return clone;
+ //XMLVM_END_NATIVE
+}
+
+JAVA_BOOLEAN java_lang_Object_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1)
+{
+ //XMLVM_BEGIN_NATIVE[java_lang_Object_equals___java_lang_Object]
+ return me == n1;
+ //XMLVM_END_NATIVE
+}
+
+void java_lang_Object_finalize_java_lang_Object__(JAVA_OBJECT me)
+{
+ //XMLVM_BEGIN_NATIVE[java_lang_Object_finalize_java_lang_Object__]
+ // do nothing
+ //XMLVM_END_NATIVE
+}
+
+JAVA_OBJECT java_lang_Object_getClass__(JAVA_OBJECT me)
+{
+ //XMLVM_BEGIN_NATIVE[java_lang_Object_getClass__]
+ java_lang_Object* o = (java_lang_Object*) me;
+ return o->tib->clazz;
+ //XMLVM_END_NATIVE
+}
+
+JAVA_INT java_lang_Object_hashCode__(JAVA_OBJECT me)
+{
+ //XMLVM_BEGIN_NATIVE[java_lang_Object_hashCode__]
+ return (JAVA_INT) me;
+ //XMLVM_END_NATIVE
+}
+
+void java_lang_Object_wait___long_int(JAVA_OBJECT me, JAVA_LONG n1, JAVA_INT n2)
+{
+ //XMLVM_BEGIN_NATIVE[java_lang_Object_wait___long_int]
+ XMLVM_UNIMPLEMENTED_NATIVE_METHOD();
+ //XMLVM_END_NATIVE
+}
+
+
+void xmlvm_init_native_java_lang_Object()
+{
+ //XMLVM_BEGIN_NATIVE_IMPLEMENTATION_INIT
+ //XMLVM_END_NATIVE_IMPLEMENTATION_INIT
+#ifdef XMLVM_VTABLE_IDX_java_lang_Object_clone__
+ __TIB_java_lang_Object.vtable[XMLVM_VTABLE_IDX_java_lang_Object_clone__] =
+ (VTABLE_PTR) java_lang_Object_clone__;
+#endif
+#ifdef XMLVM_VTABLE_IDX_java_lang_Object_equals___java_lang_Object
+ __TIB_java_lang_Object.vtable[XMLVM_VTABLE_IDX_java_lang_Object_equals___java_lang_Object] =
+ (VTABLE_PTR) java_lang_Object_equals___java_lang_Object;
+#endif
+#ifdef XMLVM_VTABLE_IDX_java_lang_Object_finalize_java_lang_Object__
+ __TIB_java_lang_Object.vtable[XMLVM_VTABLE_IDX_java_lang_Object_finalize_java_lang_Object__] =
+ (VTABLE_PTR) java_lang_Object_finalize_java_lang_Object__;
+#endif
+#ifdef XMLVM_VTABLE_IDX_java_lang_Object_getClass__
+ __TIB_java_lang_Object.vtable[XMLVM_VTABLE_IDX_java_lang_Object_getClass__] =
+ (VTABLE_PTR) java_lang_Object_getClass__;
+#endif
+#ifdef XMLVM_VTABLE_IDX_java_lang_Object_hashCode__
+ __TIB_java_lang_Object.vtable[XMLVM_VTABLE_IDX_java_lang_Object_hashCode__] =
+ (VTABLE_PTR) java_lang_Object_hashCode__;
+#endif
+#ifdef XMLVM_VTABLE_IDX_java_lang_Object_wait___long_int
+ __TIB_java_lang_Object.vtable[XMLVM_VTABLE_IDX_java_lang_Object_wait___long_int] =
+ (VTABLE_PTR) java_lang_Object_wait___long_int;
+#endif
+}