Ruby
2.4.2p198(2017-09-14revision59899)
|
Go to the source code of this file.
Macros | |
#define | CIF_FLAGS_INT (1 << 0) |
#define | CIF_FLAGS_DINT (1 << 1) |
Functions | |
void | ffi_call_OBSD (unsigned int, extended_cif *, unsigned int, void *, void(*fn)()) |
void * | ffi_prep_args (void *, extended_cif *) |
void | ffi_closure_OBSD (ffi_closure *) |
void | ffi_closure_struct_OBSD (ffi_closure *) |
unsigned int | ffi_closure_OBSD_inner (ffi_closure *, void *, unsigned int *, char *) |
void | ffi_cacheflush_OBSD (unsigned int, unsigned int) |
ffi_status | ffi_prep_cif_machdep (ffi_cif *cif) |
void | ffi_call (ffi_cif *cif, void(*fn)(), void *rvalue, void **avalue) |
static void | ffi_prep_closure_args_OBSD (ffi_cif *cif, void **avalue, unsigned int *regp, char *stackp) |
ffi_status | ffi_prep_closure_loc (ffi_closure *closure, ffi_cif *cif, void(*fun)(ffi_cif *, void *, void **, void *), void *user_data, void *codeloc) |
#define CIF_FLAGS_DINT (1 << 1) |
Definition at line 62 of file ffi.c.
Referenced by ffi_prep_cif_machdep().
#define CIF_FLAGS_INT (1 << 0) |
Definition at line 61 of file ffi.c.
Referenced by ffi_prep_cif_machdep().
void ffi_cacheflush_OBSD | ( | unsigned | int, |
unsigned | int | ||
) |
Referenced by ffi_prep_closure_loc().
void ffi_call | ( | ffi_cif * | cif, |
void(*)() | fn, | ||
void * | rvalue, | ||
void ** | avalue | ||
) |
Definition at line 232 of file ffi.c.
References alloca(), extended_cif::avalue, extended_cif::cif, FFI_ASSERT, ffi_call_OBSD(), FFI_OBSD, NULL, and extended_cif::rvalue.
void ffi_call_OBSD | ( | unsigned | int, |
extended_cif * | , | ||
unsigned | int, | ||
void * | , | ||
void(*)() | fn | ||
) |
Referenced by ffi_call().
void ffi_closure_OBSD | ( | ffi_closure * | ) |
Referenced by ffi_prep_closure_loc().
unsigned int ffi_closure_OBSD_inner | ( | ffi_closure * | closure, |
void * | resp, | ||
unsigned int * | regp, | ||
char * | stackp | ||
) |
Definition at line 351 of file ffi.c.
References alloca(), and ffi_prep_closure_args_OBSD().
void ffi_closure_struct_OBSD | ( | ffi_closure * | ) |
Referenced by ffi_prep_closure_loc().
void* ffi_prep_args | ( | void * | stack, |
extended_cif * | ecif | ||
) |
Definition at line 72 of file ffi.c.
References ALIGN, extended_cif::avalue, extended_cif::cif, FFI_ASSERT, memcpy, NULL, and extended_cif::rvalue.
ffi_status ffi_prep_cif_machdep | ( | ffi_cif * | cif | ) |
Definition at line 200 of file ffi.c.
References CIF_FLAGS_DINT, and CIF_FLAGS_INT.
|
static |
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 368 of file ffi.c.
References FFI_ASSERT, ffi_cacheflush_OBSD(), ffi_closure_OBSD(), ffi_closure_struct_OBSD(), FFI_OBSD, and FFI_TRAMPOLINE_SIZE.