Ruby 2.7.7p221 (2022-11-24 revision 168ec2b1e5ad0e4688e963d9de019557c78feed9)
|
Go to the source code of this file.
Macros | |
#define | CIF_FLAGS_CHAR 1 /* for struct only */ |
#define | CIF_FLAGS_SHORT 2 /* for struct only */ |
#define | CIF_FLAGS_INT 4 |
#define | CIF_FLAGS_DINT 8 |
Functions | |
void | ffi_call_elfbsd (extended_cif *, unsigned, unsigned, void *, void(*)()) |
void * | ffi_prep_args (extended_cif *ecif, void *stack) |
ffi_status | ffi_prep_cif_machdep (ffi_cif *cif) |
void | ffi_call (ffi_cif *cif, void(*fn)(), void *rvalue, void **avalue) |
void | ffi_closure_elfbsd (void) |
void | ffi_closure_struct_elfbsd (void) |
unsigned int | ffi_closure_elfbsd_inner (ffi_closure *, void *, char *) |
ffi_status | ffi_prep_closure_loc (ffi_closure *closure, ffi_cif *cif, void(*fun)(ffi_cif *, void *, void **, void *), void *user_data, void *codeloc) |
Definition at line 163 of file ffi.c.
References alloca, extended_cif::avalue, extended_cif::cif, FFI_ASSERT, ffi_call_elfbsd(), FFI_ELFBSD, NULL, and extended_cif::rvalue.
Referenced by ffi_call().
Referenced by ffi_prep_closure_loc().
Referenced by ffi_prep_closure_loc().
void * ffi_prep_args | ( | extended_cif * | ecif, |
void * | stack | ||
) |
Definition at line 51 of file ffi.c.
References ALIGN, extended_cif::avalue, extended_cif::cif, FFI_ASSERT, i, int, memcpy(), NULL, and extended_cif::rvalue.
ffi_status ffi_prep_cif_machdep | ( | ffi_cif * | cif | ) |
Definition at line 122 of file ffi.c.
References CIF_FLAGS_CHAR, CIF_FLAGS_DINT, CIF_FLAGS_INT, and CIF_FLAGS_SHORT.
ffi_status ffi_prep_closure_loc | ( | ffi_closure * | closure, |
ffi_cif * | cif, | ||
void(*)(ffi_cif *, void *, void **, void *) | fun, | ||
void * | user_data, | ||
void * | codeloc | ||
) |
Definition at line 242 of file ffi.c.
References FFI_ASSERT, ffi_closure_elfbsd(), ffi_closure_struct_elfbsd(), FFI_ELFBSD, and int.