Commit d3189ab7 by Anthony Green Committed by Anthony Green

jvm.h: Declare many functions with __attribute__((__malloc__)).

	* include/jvm.h: Declare many functions with
	__attribute__((__malloc__)).
	* gcj/javaprims.h: Ditto.

From-SVN: r30794
parent d4203cb4
1999-12-05 Anthony Green <green@cygnus.com>
* include/jvm.h: Declare many functions with
__attribute__((__malloc__)).
* gcj/javaprims.h: Ditto.
Thu Dec 2 17:26:47 1999 Anthony Green <green@cygnus.com> Thu Dec 2 17:26:47 1999 Anthony Green <green@cygnus.com>
* THANKS: Giving credit where credit is due. * THANKS: Giving credit where credit is due.
......
...@@ -257,20 +257,22 @@ struct _Jv_JNIEnv; ...@@ -257,20 +257,22 @@ struct _Jv_JNIEnv;
typedef struct _Jv_Field *jfieldID; typedef struct _Jv_Field *jfieldID;
typedef struct _Jv_Method *jmethodID; typedef struct _Jv_Method *jmethodID;
extern "C" jobject _Jv_AllocObject (jclass, jint); extern "C" jobject _Jv_AllocObject (jclass, jint) __attribute__((__malloc__));
extern "C" jboolean _Jv_IsInstanceOf(jobject, jclass); extern "C" jboolean _Jv_IsInstanceOf(jobject, jclass);
extern "C" jstring _Jv_AllocString(jsize); extern "C" jstring _Jv_AllocString(jsize) __attribute__((__malloc__));
extern "C" jstring _Jv_NewString (const jchar*, jsize); extern "C" jstring _Jv_NewString (const jchar*, jsize)
__attribute__((__malloc__));
extern "C" jchar* _Jv_GetStringChars (jstring str); extern "C" jchar* _Jv_GetStringChars (jstring str);
extern "C" jint _Jv_MonitorEnter (jobject); extern "C" jint _Jv_MonitorEnter (jobject);
extern "C" jint _Jv_MonitorExit (jobject); extern "C" jint _Jv_MonitorExit (jobject);
extern "C" jstring _Jv_NewStringLatin1(const char*, jsize); extern "C" jstring _Jv_NewStringLatin1(const char*, jsize)
__attribute__((__malloc__));
extern "C" jsize _Jv_GetStringUTFLength (jstring); extern "C" jsize _Jv_GetStringUTFLength (jstring);
extern "C" jsize _Jv_GetStringUTFRegion (jstring, jsize, jsize, char *); extern "C" jsize _Jv_GetStringUTFRegion (jstring, jsize, jsize, char *);
extern "C" void _Jv_Throw (void *) __attribute__ ((__noreturn__)); extern "C" void _Jv_Throw (void *) __attribute__ ((__noreturn__));
extern "C" void _Jv_Sjlj_Throw (void *) __attribute__ ((__noreturn__)); extern "C" void _Jv_Sjlj_Throw (void *) __attribute__ ((__noreturn__));
extern "C" void* _Jv_Malloc (jsize); extern "C" void* _Jv_Malloc (jsize) __attribute__((__malloc__));
extern "C" void _Jv_Free (void*); extern "C" void _Jv_Free (void*);
typedef unsigned short _Jv_ushort __attribute__((__mode__(__HI__))); typedef unsigned short _Jv_ushort __attribute__((__mode__(__HI__)));
......
...@@ -61,11 +61,11 @@ extern java::lang::Class StringClass; ...@@ -61,11 +61,11 @@ extern java::lang::Class StringClass;
typedef void _Jv_FinalizerFunc (jobject); typedef void _Jv_FinalizerFunc (jobject);
/* Allocate space for a new Java object. */ /* Allocate space for a new Java object. */
void *_Jv_AllocObj (jsize size); void *_Jv_AllocObj (jsize size) __attribute__((__malloc__));
/* Allocate space for an array of Java objects. */ /* Allocate space for an array of Java objects. */
void *_Jv_AllocArray (jsize size); void *_Jv_AllocArray (jsize size) __attribute__((__malloc__));
/* Allocate space that is known to be pointer-free. */ /* Allocate space that is known to be pointer-free. */
void *_Jv_AllocBytes (jsize size); void *_Jv_AllocBytes (jsize size) __attribute__((__malloc__));
/* Initialize the GC. */ /* Initialize the GC. */
void _Jv_InitGC (void); void _Jv_InitGC (void);
/* Register a finalizer. */ /* Register a finalizer. */
...@@ -102,7 +102,7 @@ void _Jv_SetInitialHeapSize (const char *arg); ...@@ -102,7 +102,7 @@ void _Jv_SetInitialHeapSize (const char *arg);
void _Jv_SetMaximumHeapSize (const char *arg); void _Jv_SetMaximumHeapSize (const char *arg);
/* Allocate some unscanned bytes. Throw exception if out of memory. */ /* Allocate some unscanned bytes. Throw exception if out of memory. */
void *_Jv_AllocBytesChecked (jsize size); void *_Jv_AllocBytesChecked (jsize size) __attribute__((__malloc__));
extern "C" void JvRunMain (jclass klass, int argc, const char **argv); extern "C" void JvRunMain (jclass klass, int argc, const char **argv);
void _Jv_RunMain (const char* name, int argc, const char **argv); void _Jv_RunMain (const char* name, int argc, const char **argv);
...@@ -145,8 +145,10 @@ _Jv_GetArrayElementFromElementType (jobject array, ...@@ -145,8 +145,10 @@ _Jv_GetArrayElementFromElementType (jobject array,
} }
extern "C" void _Jv_ThrowBadArrayIndex (jint bad_index); extern "C" void _Jv_ThrowBadArrayIndex (jint bad_index);
extern "C" jobject _Jv_NewArray (jint type, jint size); extern "C" jobject _Jv_NewArray (jint type, jint size)
extern "C" jobject _Jv_NewMultiArray (jclass klass, jint dims, ...); __attribute__((__malloc__));
extern "C" jobject _Jv_NewMultiArray (jclass klass, jint dims, ...)
__attribute__((__malloc__));
extern "C" void *_Jv_CheckCast (jclass klass, jobject obj); extern "C" void *_Jv_CheckCast (jclass klass, jobject obj);
extern "C" void *_Jv_LookupInterfaceMethod (jclass klass, Utf8Const *name, extern "C" void *_Jv_LookupInterfaceMethod (jclass klass, Utf8Const *name,
Utf8Const *signature); Utf8Const *signature);
...@@ -160,7 +162,8 @@ extern jclass _Jv_FindClass (_Jv_Utf8Const *name, ...@@ -160,7 +162,8 @@ extern jclass _Jv_FindClass (_Jv_Utf8Const *name,
extern jclass _Jv_FindClassFromSignature (char *, extern jclass _Jv_FindClassFromSignature (char *,
java::lang::ClassLoader *loader); java::lang::ClassLoader *loader);
extern jobject _Jv_NewMultiArray (jclass, jint ndims, jint* dims); extern jobject _Jv_NewMultiArray (jclass, jint ndims, jint* dims)
__attribute__((__malloc__));
/* Checked divide subroutines. */ /* Checked divide subroutines. */
extern "C" extern "C"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment