Ruby 2.7.6p219 (2022-04-12 revision c9c2245c0a25176072e02db9254f0e0c84c805cd)
Macros | Functions
ffi.c File Reference
#include <ffi.h>
#include <ffi_common.h>
#include <stdlib.h>

Go to the source code of this file.

Macros

#define NGREGARG   8
 
#define NFREGARG   12
 

Functions

void ffi_prep_args (char *stack, extended_cif *ecif)
 
ffi_status ffi_prep_cif_machdep (ffi_cif *cif)
 
void ffi_call_SYSV (void(*)(char *, extended_cif *), extended_cif *, unsigned, unsigned, long long, unsigned *, void(*fn)(void))
 
void ffi_call (ffi_cif *cif, void(*fn)(void), void *rvalue, void **avalue)
 
void ffi_closure_SYSV (void)
 
void __ic_invalidate (void *line)
 
ffi_status ffi_prep_closure_loc (ffi_closure *closure, ffi_cif *cif, void(*fun)(ffi_cif *, void *, void **, void *), void *user_data, void *codeloc)
 
int ffi_closure_helper_SYSV (ffi_closure *closure, UINT64 *rvalue, UINT64 *pgr, UINT64 *pfr, UINT64 *pst)
 

Macro Definition Documentation

◆ NFREGARG

#define NFREGARG   12

Definition at line 34 of file ffi.c.

◆ NGREGARG

#define NGREGARG   8

Definition at line 33 of file ffi.c.

Function Documentation

◆ __ic_invalidate()

void __ic_invalidate ( void line)

◆ ffi_call()

void ffi_call ( ffi_cif *  cif,
void(*)(void fn,
void rvalue,
void **  avalue 
)

Definition at line 251 of file ffi.c.

References extended_cif::avalue, and extended_cif::cif.

◆ ffi_call_SYSV()

void ffi_call_SYSV ( void(*)(char *, extended_cif *)  ,
extended_cif ,
unsigned  ,
unsigned  ,
long long  ,
unsigned ,
void(*)(void fn 
)

◆ ffi_closure_helper_SYSV()

int ffi_closure_helper_SYSV ( ffi_closure *  closure,
UINT64 *  rvalue,
UINT64 *  pgr,
UINT64 *  pfr,
UINT64 *  pst 
)

Definition at line 350 of file ffi.c.

References alloca, and i.

◆ ffi_closure_SYSV()

void ffi_closure_SYSV ( void  )

Definition at line 53 of file ffi.c.

◆ ffi_prep_args()

void ffi_prep_args ( char stack,
extended_cif ecif 
)

Definition at line 59 of file ffi.c.

References i.

◆ ffi_prep_cif_machdep()

ffi_status ffi_prep_cif_machdep ( ffi_cif *  cif)

Definition at line 156 of file ffi.c.

References i, n, and size.

◆ ffi_prep_closure_loc()

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 297 of file ffi.c.

References ffi_closure_SYSV(), and FFI_SYSV.