resolve.cc (_Jv_JNIMethod::ncode): Use stdcall calling convention on Win32 to invoke native JNI methods.

2003-02-03  Ranjit Mathew <rmathew@hotmail.com>

	* resolve.cc (_Jv_JNIMethod::ncode): Use stdcall calling
	convention on Win32 to invoke native JNI methods.

From-SVN: r62345
This commit is contained in:
Ranjit Mathew 2003-02-03 21:07:22 +00:00 committed by Tom Tromey
parent 985d0d50d5
commit 9762ec767e
2 changed files with 13 additions and 1 deletions

View File

@ -1,3 +1,8 @@
2003-02-03 Ranjit Mathew <rmathew@hotmail.com>
* resolve.cc (_Jv_JNIMethod::ncode): Use stdcall calling
convention on Win32 to invoke native JNI methods.
2003-02-03 Andrew Haley <aph@redhat.com>
* configure.host (x86_64): Enable interpreter.

View File

@ -1003,7 +1003,14 @@ _Jv_JNIMethod::ncode ()
memcpy (&jni_arg_types[offset], &closure->arg_types[0],
arg_count * sizeof (ffi_type *));
if (ffi_prep_cif (&jni_cif, FFI_DEFAULT_ABI,
// NOTE: This must agree with the JNICALL definition in jni.h
#ifdef WIN32
#define FFI_JNI_ABI FFI_STDCALL
#else
#define FFI_JNI_ABI FFI_DEFAULT_ABI
#endif
if (ffi_prep_cif (&jni_cif, FFI_JNI_ABI,
extra_args + arg_count, rtype,
jni_arg_types) != FFI_OK)
throw_internal_error ("ffi_prep_cif failed for JNI function");