26 long double r = a1 + a2 + a3 + a4 + a5 + a6 + a7 + a8;
28 printf(
"%Lg %Lg %Lg %Lg %Lg %Lg %Lg %Lg: %Lg\n",
29 a1, a2, a3, a4, a5, a6, a7, a8, r);
35cls_ldouble_gn(ffi_cif* cif
__UNUSED__,
void* resp,
38 long double a1 = *(
long double*)args[0];
39 long double a2 = *(
long double*)args[1];
40 long double a3 = *(
long double*)args[2];
41 long double a4 = *(
long double*)args[3];
42 long double a5 = *(
long double*)args[4];
43 long double a6 = *(
long double*)args[5];
44 long double a7 = *(
long double*)args[6];
45 long double a8 = *(
long double*)args[7];
48 a1, a2, a3, a4, a5, a6, a7, a8);
55 ffi_closure* pcl = ffi_closure_alloc(
sizeof(ffi_closure), &code);
57 ffi_type* arg_types[9];
69 arg_types[0] = &ffi_type_longdouble;
70 arg_types[1] = &ffi_type_longdouble;
71 arg_types[2] = &ffi_type_longdouble;
72 arg_types[3] = &ffi_type_longdouble;
73 arg_types[4] = &ffi_type_longdouble;
74 arg_types[5] = &ffi_type_longdouble;
75 arg_types[6] = &ffi_type_longdouble;
76 arg_types[7] = &ffi_type_longdouble;
80 arg_types) == FFI_OK);
101 arg3, arg4, arg5, arg6, arg7, arg8);
103 printf(
"res: %Lg\n", res);
ffi_status ffi_prep_closure_loc(ffi_closure *closure, ffi_cif *cif, void(*fun)(ffi_cif *, void *, void **, void *), void *user_data, void *codeloc)
void ffi_call(ffi_cif *cif, void(*fn)(void), void *rvalue, void **avalue)
long double cls_ldouble_fn(long double a1, long double a2, long double a3, long double a4, long double a5, long double a6, long double a7, long double a8)
ffi_status ffi_prep_cif(ffi_cif *cif, ffi_abi abi, unsigned int nargs, ffi_type *rtype, ffi_type **atypes)