diff options
author | tromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-01-22 23:04:16 +0000 |
---|---|---|
committer | tromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-01-22 23:04:16 +0000 |
commit | 1e30399304705675a8255728ea937f6a3e37af69 (patch) | |
tree | 5a65b021fa1dfa6c969e6de00c7e6ecfad3b93d9 /libjava/include | |
parent | 874f8dfb8568a5f5e2a080a3a7ebc14d71817eea (diff) | |
download | gcc-1e30399304705675a8255728ea937f6a3e37af69.tar.gz |
PR java/29812:
* testsuite/libjava.jni/pr29812.java: New file.
* testsuite/libjava.jni/pr29812_injar.java: New file.
* testsuite/libjava.jni/pr29812_injar.jar: New file.
* testsuite/libjava.jni/pr29812.out: New file.
* testsuite/libjava.jni/pr29812_injar.c: New file.
* testsuite/libjava.jni/pr29812_injar.h: New file.
* testsuite/libjava.jni/pr29812.jar: New file.
* testsuite/libjava.jni/pr29812.c: New file.
* testsuite/libjava.jni/pr29812.h: New file.
* testsuite/libjava.jni/jni.exp (gcj_jni_get_cxxflags_invocation):
New proc.
(gcj_jni_invocation_test_one): Use it.
(gcj_jni_pr29812): New proc.
(gcj_jni_run): Use it.
* java/lang/natRuntime.cc (_load): Push a new system frame before
calling JNI_OnLoad.
* include/jvm.h (_Jv_JNI_PopSystemFrame): Declare.
(_Jv_GetJNIEnvNewFrameWithLoader): Likewise.
* jni.cc (struct _Jv_JNI_LocalFrame) <marker>: Now unsigned char.
<allocated_p>: Now bool.
<loader>: New field.
(_Jv_JNI_EnsureLocalCapacity): Updated.
(_Jv_JNI_NewLocalRef): Likewise.
(_Jv_JNI_NewLocalRef): Likewise.
(_Jv_JNI_PopLocalFrame): Likewise.
(_Jv_JNI_FindClass): Likewise.
(_Jv_GetJNIEnvNewFrame): Likewise.
(_Jv_JNI_AttachCurrentThread): Likewise.
(_Jv_GetJNIEnvNewFrameWithLoader): New function.
(_Jv_GetJNIEnvNewFrame): Use it.
* include/jni_md.h (_CLASSPATH_JNIENV_CONTENTS): Removed 'klass'.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@121064 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/include')
-rw-r--r-- | libjava/include/jni_md.h | 5 | ||||
-rw-r--r-- | libjava/include/jvm.h | 4 |
2 files changed, 3 insertions, 6 deletions
diff --git a/libjava/include/jni_md.h b/libjava/include/jni_md.h index c550338acd7..6ea90ab4c36 100644 --- a/libjava/include/jni_md.h +++ b/libjava/include/jni_md.h @@ -1,5 +1,5 @@ /* jni_md.h - Copyright (C) 2001, 2005 Free Software Foundation, Inc. + Copyright (C) 2001, 2005, 2007 Free Software Foundation, Inc. This file is part of GNU Classpath. @@ -58,9 +58,6 @@ typedef struct _Jv_JavaVM JavaVM; /* The current exception. */ \ jthrowable ex; \ \ - /* The class of the current native method. */ \ - jclass klass; \ - \ /* The chain of local frames. */ \ struct _Jv_JNI_LocalFrame *locals; \ \ diff --git a/libjava/include/jvm.h b/libjava/include/jvm.h index 2da13bca4dc..9a99a954b28 100644 --- a/libjava/include/jvm.h +++ b/libjava/include/jvm.h @@ -592,8 +592,8 @@ void _Jv_SetCurrentJNIEnv (_Jv_JNIEnv *); /* Free a JNIEnv. */ void _Jv_FreeJNIEnv (_Jv_JNIEnv *); -/* Free a JNIEnv. */ -void _Jv_FreeJNIEnv (_Jv_JNIEnv *); +extern "C" void _Jv_JNI_PopSystemFrame (_Jv_JNIEnv *); +_Jv_JNIEnv *_Jv_GetJNIEnvNewFrameWithLoader (::java::lang::ClassLoader *); struct _Jv_JavaVM; _Jv_JavaVM *_Jv_GetJavaVM (); |