Ruby
2.7.0p0(2019-12-25revision647ee6f091eafcce70ffb75ddf7e121e192ab217)
|
Go to the documentation of this file.
27 # define alloca __builtin_alloca
30 # define MAYBE_UNUSED __attribute__((__unused__))
41 # define alloca _alloca
55 # define memcpy(d, s, n) bcopy ((s), (d), (n))
59 #if defined(FFI_DEBUG)
64 void ffi_assert(
char *expr,
char *file,
int line);
68 #define FFI_ASSERT(x) ((x) ? (void)0 : ffi_assert(#x, __FILE__,__LINE__))
69 #define FFI_ASSERT_AT(x, f, l) ((x) ? 0 : ffi_assert(#x, (f), (l)))
70 #define FFI_ASSERT_VALID_TYPE(x) ffi_type_test (x, __FILE__, __LINE__)
73 #define FFI_ASSERT_AT(x, f, l)
74 #define FFI_ASSERT_VALID_TYPE(x)
77 #define ALIGN(v, a) (((((size_t) (v))-1) | ((a)-1))+1)
78 #define ALIGN_DOWN(v, a) (((size_t) (v)) & -a)
83 unsigned int nfixedargs,
unsigned int ntotalargs);
94 #if defined(_MSC_VER) || defined(__sgi) || defined(__SUNPRO_C)
95 typedef unsigned char UINT8;
96 typedef signed char SINT8;
97 typedef unsigned short UINT16;
98 typedef signed short SINT16;
99 typedef unsigned int UINT32;
100 typedef signed int SINT32;
102 typedef unsigned __int64 UINT64;
103 typedef signed __int64 SINT64;
105 # include <inttypes.h>
112 typedef unsigned int UINT16
__attribute__((__mode__(__HI__)));
114 typedef unsigned int UINT32
__attribute__((__mode__(__SI__)));
116 typedef unsigned int UINT64
__attribute__((__mode__(__DI__)));
123 #define __builtin_expect(x, expected_value) (x)
125 #define LIKELY(x) __builtin_expect(!!(x),1)
126 #define UNLIKELY(x) __builtin_expect((x)!=0,0)
void ffi_assert(char *expr, char *file, int line)
unsigned int UINT8 __attribute__((__mode__(__QI__)))
unsigned long long uint64_t
void ffi_type_test(ffi_type *a, char *file, int line)
ffi_status ffi_prep_cif_machdep_var(ffi_cif *cif, unsigned int nfixedargs, unsigned int ntotalargs)
ffi_status ffi_prep_cif_machdep(ffi_cif *cif)