aboutsummaryrefslogtreecommitdiff
path: root/libjava/resolve.cc
diff options
context:
space:
mode:
Diffstat (limited to 'libjava/resolve.cc')
-rw-r--r--libjava/resolve.cc21
1 files changed, 14 insertions, 7 deletions
diff --git a/libjava/resolve.cc b/libjava/resolve.cc
index c0f51c9..ab1fafb 100644
--- a/libjava/resolve.cc
+++ b/libjava/resolve.cc
@@ -1045,6 +1045,13 @@ init_cif (_Jv_Utf8Const* signature,
return item_count;
}
+#if FFI_NATIVE_RAW_API
+# define FFI_PREP_RAW_CLOSURE ffi_prep_raw_closure
+# define FFI_RAW_SIZE ffi_raw_size
+#else
+# define FFI_PREP_RAW_CLOSURE ffi_prep_java_raw_closure
+# define FFI_RAW_SIZE ffi_java_raw_size
+#endif
/* we put this one here, and not in interpret.cc because it
* calls the utility routines count_arguments
@@ -1083,7 +1090,7 @@ _Jv_InterpMethod::ncode ()
ffi_closure_fun fun;
- args_raw_size = ffi_raw_size (&closure->cif);
+ args_raw_size = FFI_RAW_SIZE (&closure->cif);
JvAssert ((self->accflags & Modifier::NATIVE) == 0);
@@ -1099,10 +1106,10 @@ _Jv_InterpMethod::ncode ()
fun = (ffi_closure_fun)&_Jv_InterpMethod::run_normal;
}
- ffi_prep_raw_closure (&closure->closure,
- &closure->cif,
- fun,
- (void*) this);
+ FFI_PREP_RAW_CLOSURE (&closure->closure,
+ &closure->cif,
+ fun,
+ (void*)this);
self->ncode = (void*)closure;
return self->ncode;
@@ -1134,7 +1141,7 @@ _Jv_JNIMethod::ncode ()
ffi_closure_fun fun;
- args_raw_size = ffi_raw_size (&closure->cif);
+ args_raw_size = FFI_RAW_SIZE (&closure->cif);
// Initialize the argument types and CIF that represent the actual
// underlying JNI function.
@@ -1161,7 +1168,7 @@ _Jv_JNIMethod::ncode ()
// interpreted code use JNI.
fun = (ffi_closure_fun) &_Jv_JNIMethod::call;
- ffi_prep_raw_closure (&closure->closure,
+ FFI_PREP_RAW_CLOSURE (&closure->closure,
&closure->cif,
fun,
(void*) this);