prims.cc (_Jv_MallocUnchecked): New function.
* prims.cc (_Jv_MallocUnchecked): New function. (main_init): Call _Jv_JNI_Init. * include/jvm.h (_Jv_MallocUnchecked): Declare. (_Jv_JNI_Init): Declare. * jni.cc: Include Hashtable.h, OutOfMemoryError.h, Integer.h, <string.h>. (_Jv_JNI_NewGlobalRef): New function. (_Jv_JNI_DeleteGlobalRef): New function. (_Jv_JNI_DeleteLocalRef): New function. (_Jv_JNI_conversion_call): Initialize and clear local reference frame. (_Jv_JNI_NewLocalRef): New function. (struct _Jv_JNI_LocalFrame): New structure. (_Jv_JNI_PushLocalFrame): New function. (_Jv_JNI_EnsureLocalCapacity): New function. (FRAME_SIZE): New define. (_Jv_JNI_GetStringChars): Mark string, not characters. (_Jv_JNI_ReleaseStringChars): Unmark string, not characters. (_Jv_JNI_GetPrimitiveArrayElements): Mark array, not elements. (_Jv_JNI_ReleasePrimitiveArrayElements): Unmark array, not elements. (_Jv_JNI_DefineClass): Make return value a local ref. (_Jv_JNI_FindClass): Likewise. (_Jv_JNI_GetSuperclass): Likewise. (_Jv_JNI_ExceptionOccurred): Likewise. (_Jv_JNI_AllocObject): Likewise. (_Jv_JNI_GetObjectClass): Likewise. (_Jv_JNI_CallAnyMethodV): Likewise. (_Jv_JNI_NewString): Likewise. (_Jv_JNI_NewStringUTF): Likewise. (_Jv_JNI_NewObjectArray): Likewise. (_Jv_JNI_GetObjectArrayElement): Likewise. (_Jv_JNI_ToReflectedField): Likewise. (_Jv_JNI_ToReflectedMethod): Likewise. (_Jv_JNIFunctions): Updated table for new functions. (_Jv_JNI_Init): New function. (mark_for_gc): Wrote. (unmark_for_gc): Wrote. * include/jni.h (struct JNINativeInterface): Removed name from PopLocalFrame parameter. (class _Jv_JNIEnv): Added `locals' field. From-SVN: r31730
This commit is contained in:
parent
07a3462a53
commit
7e648cf954
5 changed files with 333 additions and 46 deletions
|
@ -72,6 +72,10 @@ void _Jv_InitGC (void);
|
|||
/* Register a finalizer. */
|
||||
void _Jv_RegisterFinalizer (void *object, _Jv_FinalizerFunc *method);
|
||||
|
||||
/* Allocate some unscanned, unmoveable memory. Return NULL if out of
|
||||
memory. */
|
||||
void *_Jv_MallocUnchecked (jsize size) __attribute__((__malloc__));
|
||||
|
||||
/* Run finalizers for objects ready to be finalized.. */
|
||||
void _Jv_RunFinalizers (void);
|
||||
/* Run all finalizers. Should be called only before exit. */
|
||||
|
@ -197,4 +201,8 @@ extern "C"
|
|||
extern char *_Jv_ThisExecutable (void);
|
||||
extern void _Jv_ThisExecutable (const char *);
|
||||
|
||||
/* Initialize JNI. */
|
||||
extern void _Jv_JNI_Init (void);
|
||||
|
||||
|
||||
#endif /* __JAVA_JVM_H__ */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue