Ruby 2.7.6p219 (2022-04-12 revision c9c2245c0a25176072e02db9254f0e0c84c805cd)
Macros | Typedefs | Enumerations
ffitarget.h File Reference

Go to the source code of this file.

Macros

#define FFI_CLOSURES   1
 
#define FFI_NATIVE_RAW_API   0
 
#define FFI_TYPE_UINT128   (FFI_TYPE_LAST + 1)
 
#define FFI_SYSV_TYPE_SMALL_STRUCT   (FFI_TYPE_LAST + 2)
 
#define FFI_V2_TYPE_FLOAT_HOMOG   (FFI_TYPE_LAST + 1)
 
#define FFI_V2_TYPE_DOUBLE_HOMOG   (FFI_TYPE_LAST + 2)
 
#define FFI_V2_TYPE_SMALL_STRUCT   (FFI_TYPE_LAST + 3)
 
#define FFI_TRAMPOLINE_SIZE   40
 

Typedefs

typedef unsigned long ffi_arg
 
typedef signed long ffi_sarg
 
typedef enum ffi_abi ffi_abi
 

Enumerations

enum  ffi_abi {
  FFI_FIRST_ABI = 0 , FFI_SYSV , FFI_LAST_ABI , FFI_DEFAULT_ABI = FFI_SYSV ,
  FFI_FIRST_ABI = 0 , FFI_OSF , FFI_LAST_ABI , FFI_DEFAULT_ABI = FFI_OSF ,
  FFI_FIRST_ABI = 0 , FFI_ARCOMPACT , FFI_LAST_ABI , FFI_DEFAULT_ABI = FFI_ARCOMPACT ,
  FFI_FIRST_ABI = 0 , FFI_SYSV , FFI_VFP , FFI_LAST_ABI ,
  FFI_DEFAULT_ABI = FFI_SYSV , FFI_FIRST_ABI = 0 , FFI_SYSV , FFI_LAST_ABI ,
  FFI_DEFAULT_ABI = FFI_SYSV , FFI_FIRST_ABI = 0 , FFI_SYSV , FFI_LAST_ABI ,
  FFI_DEFAULT_ABI = FFI_SYSV , FFI_FIRST_ABI = 0 , FFI_SYSV , FFI_LAST_ABI ,
  FFI_DEFAULT_ABI = FFI_SYSV , FFI_FIRST_ABI = 0 , FFI_EABI , FFI_LAST_ABI ,
  FFI_DEFAULT_ABI = FFI_EABI , FFI_FIRST_ABI = 0 , FFI_UNIX , FFI_LAST_ABI ,
  FFI_DEFAULT_ABI = FFI_UNIX , FFI_FIRST_ABI = 0 , FFI_SYSV , FFI_LAST_ABI ,
  FFI_DEFAULT_ABI = FFI_SYSV , FFI_FIRST_ABI = 0 , FFI_SYSV , FFI_LAST_ABI ,
  FFI_DEFAULT_ABI = FFI_SYSV , FFI_FIRST_ABI = 0 , FFI_OBSD , FFI_DEFAULT_ABI = FFI_OBSD ,
  FFI_LAST_ABI = FFI_DEFAULT_ABI + 1 , FFI_FIRST_ABI = 0 , FFI_SYSV , FFI_DEFAULT_ABI = FFI_SYSV ,
  FFI_LAST_ABI = FFI_DEFAULT_ABI + 1 , FFI_FIRST_ABI = 0 , FFI_SYSV , FFI_LAST_ABI ,
  FFI_DEFAULT_ABI = FFI_SYSV , FFI_FIRST_ABI = 0 , FFI_O32 , FFI_N32 ,
  FFI_N64 , FFI_O32_SOFT_FLOAT , FFI_N32_SOFT_FLOAT , FFI_N64_SOFT_FLOAT ,
  FFI_LAST_ABI , FFI_DEFAULT_ABI = FFI_N64 , FFI_FIRST_ABI = 0 , FFI_EABI ,
  FFI_DEFAULT_ABI = FFI_EABI , FFI_LAST_ABI = FFI_DEFAULT_ABI + 1 , FFI_FIRST_ABI = 0 , FFI_SYSV ,
  FFI_LAST_ABI , FFI_DEFAULT_ABI = FFI_SYSV , FFI_FIRST_ABI = 0 , FFI_SYSV ,
  FFI_LAST_ABI , FFI_DEFAULT_ABI = FFI_SYSV , FFI_FIRST_ABI = 0 , FFI_FIRST_ABI = 0 ,
  FFI_COMPAT_SYSV , FFI_COMPAT_GCC_SYSV , FFI_COMPAT_LINUX64 , FFI_COMPAT_LINUX ,
  FFI_COMPAT_LINUX_SOFT_FLOAT , FFI_SYSV = 8 , FFI_SYSV_SOFT_FLOAT = 1 , FFI_SYSV_STRUCT_RET = 2 ,
  FFI_SYSV_IBM_LONG_DOUBLE = 4 , FFI_SYSV_LONG_DOUBLE_128 = 16 , FFI_DEFAULT_ABI , FFI_LAST_ABI = 32 ,
  FFI_FIRST_ABI = 0 , FFI_SYSV , FFI_LAST_ABI , FFI_DEFAULT_ABI = FFI_SYSV ,
  FFI_FIRST_ABI = 0 , FFI_SYSV , FFI_LAST_ABI , FFI_DEFAULT_ABI = FFI_SYSV ,
  FFI_FIRST_ABI = 0 , FFI_SYSV , FFI_LAST_ABI , FFI_DEFAULT_ABI = FFI_SYSV ,
  FFI_FIRST_ABI = 0 , FFI_V8 , FFI_V8PLUS , FFI_V9 ,
  FFI_LAST_ABI , FFI_DEFAULT_ABI = FFI_V8 , FFI_FIRST_ABI = 0 , FFI_UNIX ,
  FFI_LAST_ABI , FFI_DEFAULT_ABI = FFI_UNIX , FFI_FIRST_ABI = 0 , FFI_ELFBSD ,
  FFI_DEFAULT_ABI = FFI_ELFBSD , FFI_LAST_ABI = FFI_DEFAULT_ABI + 1 , FFI_FIRST_ABI = 0 , FFI_SYSV ,
  FFI_UNIX64 , FFI_THISCALL , FFI_FASTCALL , FFI_STDCALL ,
  FFI_PASCAL , FFI_REGISTER , FFI_LAST_ABI , FFI_DEFAULT_ABI = FFI_UNIX64 ,
  FFI_FIRST_ABI = 0 , FFI_SYSV , FFI_LAST_ABI , FFI_DEFAULT_ABI = FFI_SYSV
}
 

Macro Definition Documentation

◆ FFI_CLOSURES

#define FFI_CLOSURES   1

Definition at line 138 of file ffitarget.h.

◆ FFI_NATIVE_RAW_API

#define FFI_NATIVE_RAW_API   0

Definition at line 139 of file ffitarget.h.

◆ FFI_SYSV_TYPE_SMALL_STRUCT

#define FFI_SYSV_TYPE_SMALL_STRUCT   (FFI_TYPE_LAST + 2)

Definition at line 152 of file ffitarget.h.

◆ FFI_TRAMPOLINE_SIZE

#define FFI_TRAMPOLINE_SIZE   40

Definition at line 169 of file ffitarget.h.

◆ FFI_TYPE_UINT128

#define FFI_TYPE_UINT128   (FFI_TYPE_LAST + 1)

Definition at line 149 of file ffitarget.h.

◆ FFI_V2_TYPE_DOUBLE_HOMOG

#define FFI_V2_TYPE_DOUBLE_HOMOG   (FFI_TYPE_LAST + 2)

Definition at line 156 of file ffitarget.h.

◆ FFI_V2_TYPE_FLOAT_HOMOG

#define FFI_V2_TYPE_FLOAT_HOMOG   (FFI_TYPE_LAST + 1)

Definition at line 155 of file ffitarget.h.

◆ FFI_V2_TYPE_SMALL_STRUCT

#define FFI_V2_TYPE_SMALL_STRUCT   (FFI_TYPE_LAST + 3)

Definition at line 157 of file ffitarget.h.

Typedef Documentation

◆ ffi_abi

typedef enum ffi_abi ffi_abi

◆ ffi_arg

Definition at line 57 of file ffitarget.h.

◆ ffi_sarg

typedef signed long ffi_sarg

Definition at line 58 of file ffitarget.h.

Enumeration Type Documentation

◆ ffi_abi

enum ffi_abi
Enumerator
FFI_FIRST_ABI 
FFI_SYSV 
FFI_LAST_ABI 
FFI_DEFAULT_ABI 
FFI_FIRST_ABI 
FFI_OSF 
FFI_LAST_ABI 
FFI_DEFAULT_ABI 
FFI_FIRST_ABI 
FFI_ARCOMPACT 
FFI_LAST_ABI 
FFI_DEFAULT_ABI 
FFI_FIRST_ABI 
FFI_SYSV 
FFI_VFP 
FFI_LAST_ABI 
FFI_DEFAULT_ABI 
FFI_FIRST_ABI 
FFI_SYSV 
FFI_LAST_ABI 
FFI_DEFAULT_ABI 
FFI_FIRST_ABI 
FFI_SYSV 
FFI_LAST_ABI 
FFI_DEFAULT_ABI 
FFI_FIRST_ABI 
FFI_SYSV 
FFI_LAST_ABI 
FFI_DEFAULT_ABI 
FFI_FIRST_ABI 
FFI_EABI 
FFI_LAST_ABI 
FFI_DEFAULT_ABI 
FFI_FIRST_ABI 
FFI_UNIX 
FFI_LAST_ABI 
FFI_DEFAULT_ABI 
FFI_FIRST_ABI 
FFI_SYSV 
FFI_LAST_ABI 
FFI_DEFAULT_ABI 
FFI_FIRST_ABI 
FFI_SYSV 
FFI_LAST_ABI 
FFI_DEFAULT_ABI 
FFI_FIRST_ABI 
FFI_OBSD 
FFI_DEFAULT_ABI 
FFI_LAST_ABI 
FFI_FIRST_ABI 
FFI_SYSV 
FFI_DEFAULT_ABI 
FFI_LAST_ABI 
FFI_FIRST_ABI 
FFI_SYSV 
FFI_LAST_ABI 
FFI_DEFAULT_ABI 
FFI_FIRST_ABI 
FFI_O32 
FFI_N32 
FFI_N64 
FFI_O32_SOFT_FLOAT 
FFI_N32_SOFT_FLOAT 
FFI_N64_SOFT_FLOAT 
FFI_LAST_ABI 
FFI_DEFAULT_ABI 
FFI_FIRST_ABI 
FFI_EABI 
FFI_DEFAULT_ABI 
FFI_LAST_ABI 
FFI_FIRST_ABI 
FFI_SYSV 
FFI_LAST_ABI 
FFI_DEFAULT_ABI 
FFI_FIRST_ABI 
FFI_SYSV 
FFI_LAST_ABI 
FFI_DEFAULT_ABI 
FFI_FIRST_ABI 
FFI_FIRST_ABI 
FFI_COMPAT_SYSV 
FFI_COMPAT_GCC_SYSV 
FFI_COMPAT_LINUX64 
FFI_COMPAT_LINUX 
FFI_COMPAT_LINUX_SOFT_FLOAT 
FFI_SYSV 
FFI_SYSV_SOFT_FLOAT 
FFI_SYSV_STRUCT_RET 
FFI_SYSV_IBM_LONG_DOUBLE 
FFI_SYSV_LONG_DOUBLE_128 
FFI_DEFAULT_ABI 
FFI_LAST_ABI 
FFI_FIRST_ABI 
FFI_SYSV 
FFI_LAST_ABI 
FFI_DEFAULT_ABI 
FFI_FIRST_ABI 
FFI_SYSV 
FFI_LAST_ABI 
FFI_DEFAULT_ABI 
FFI_FIRST_ABI 
FFI_SYSV 
FFI_LAST_ABI 
FFI_DEFAULT_ABI 
FFI_FIRST_ABI 
FFI_V8 
FFI_V8PLUS 
FFI_V9 
FFI_LAST_ABI 
FFI_DEFAULT_ABI 
FFI_FIRST_ABI 
FFI_UNIX 
FFI_LAST_ABI 
FFI_DEFAULT_ABI 
FFI_FIRST_ABI 
FFI_ELFBSD 
FFI_DEFAULT_ABI 
FFI_LAST_ABI 
FFI_FIRST_ABI 
FFI_SYSV 
FFI_UNIX64 
FFI_THISCALL 
FFI_FASTCALL 
FFI_STDCALL 
FFI_PASCAL 
FFI_REGISTER 
FFI_LAST_ABI 
FFI_DEFAULT_ABI 
FFI_FIRST_ABI 
FFI_SYSV 
FFI_LAST_ABI 
FFI_DEFAULT_ABI 

Definition at line 60 of file ffitarget.h.