PR java/29812:
commit1e30399304705675a8255728ea937f6a3e37af69
authortromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 22 Jan 2007 23:04:16 +0000 (22 23:04 +0000)
committertromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 22 Jan 2007 23:04:16 +0000 (22 23:04 +0000)
tree5a65b021fa1dfa6c969e6de00c7e6ecfad3b93d9
parent874f8dfb8568a5f5e2a080a3a7ebc14d71817eea
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
15 files changed:
libjava/ChangeLog
libjava/include/jni_md.h
libjava/include/jvm.h
libjava/java/lang/natRuntime.cc
libjava/jni.cc
libjava/testsuite/libjava.jni/jni.exp
libjava/testsuite/libjava.jni/pr29812.c [new file with mode: 0644]
libjava/testsuite/libjava.jni/pr29812.h [new file with mode: 0644]
libjava/testsuite/libjava.jni/pr29812.jar [new file with mode: 0644]
libjava/testsuite/libjava.jni/pr29812.java [new file with mode: 0644]
libjava/testsuite/libjava.jni/pr29812.out [new file with mode: 0644]
libjava/testsuite/libjava.jni/pr29812_injar.c [new file with mode: 0644]
libjava/testsuite/libjava.jni/pr29812_injar.h [new file with mode: 0644]
libjava/testsuite/libjava.jni/pr29812_injar.jar [new file with mode: 0644]
libjava/testsuite/libjava.jni/pr29812_injar.java [new file with mode: 0644]