diff options
author | Hans Boehm <boehm@acm.org> | 2000-02-25 19:13:44 +0000 |
---|---|---|
committer | Tom Tromey <tromey@gcc.gnu.org> | 2000-02-25 19:13:44 +0000 |
commit | dc5de37072b855beba90a62056d96ce1bf422c7c (patch) | |
tree | 3d1ddd9e5907df213130f3823dd250c92c37a1c5 /libffi/src/raw_api.c | |
parent | 0e2eaba46d7ef44ca821d3afaf385809db84fb1f (diff) | |
download | gcc-dc5de37072b855beba90a62056d96ce1bf422c7c.zip gcc-dc5de37072b855beba90a62056d96ce1bf422c7c.tar.gz gcc-dc5de37072b855beba90a62056d96ce1bf422c7c.tar.bz2 |
ffi.c, [...]: New files.
2000-02-25 Hans Boehm <boehm@acm.org>
* src/ia64/ffi.c, src/ia64/ia64_flags.h, src/ia64/unix.S: New
files.
* src/raw_api.c (ffi_translate_args): Fixed typo in argument
list.
(ffi_prep_raw_closure): Use ffi_translate_args, not
ffi_closure_translate.
* src/java_raw_api.c: New file.
* src/ffitest.c (closure_test_fn): New function.
(main): Define `rint' as long long on IA64. Added new test when
FFI_CLOSURES is defined.
* include/ffi.h.in (ALIGN): Use size_t, not unsigned.
(ffi_abi): Recognize IA64.
(ffi_raw): Added `flt' field.
Added "Java raw API" code.
* configure.in: Recognize ia64.
* Makefile.am (TARGET_SRC_IA64): New macro.
(libffi_la_common_SOURCES): Added java_raw_api.c.
(libffi_la_SOURCES): Define in IA64 case.
From-SVN: r32151
Diffstat (limited to 'libffi/src/raw_api.c')
-rw-r--r-- | libffi/src/raw_api.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/libffi/src/raw_api.c b/libffi/src/raw_api.c index 55bf9ec..45cb004 100644 --- a/libffi/src/raw_api.c +++ b/libffi/src/raw_api.c @@ -202,13 +202,13 @@ void ffi_raw_call (/*@dependent@*/ ffi_cif *cif, #if FFI_CLOSURES /* base system provides closures */ static void -ffi_translate_args (ffi_cif *cif, void *ravlue, +ffi_translate_args (ffi_cif *cif, void *rvalue, void **avalue, void *user_data) { ffi_raw *raw = (ffi_raw*)alloca (ffi_raw_size (cif)); - ffi_ptrarray_to_raw (cif, avalue, raw); - ffi_raw_closure *cl = (ffi_raw_closure*)user_data; + + ffi_ptrarray_to_raw (cif, avalue, raw); (*cl->fun) (cif, rvalue, raw, cl->user_data); } @@ -226,7 +226,7 @@ ffi_prep_raw_closure (ffi_raw_closure* cl, status = ffi_prep_closure ((ffi_closure*) cl, cif, - &ffi_closure_translate, + &ffi_translate_args, (void*)cl); if (status == FFI_OK) { |