Home | History | Annotate | Download | only in m32r

Lines Matching full:cif

47   if (ecif->cif->rtype->type == FFI_TYPE_STRUCT && ecif->cif->rtype->size > 8)
53 avn = ecif->cif->nargs;
56 for (i = ecif->cif->nargs, p_arg = ecif->cif->arg_types;
138 /* Perform machine dependent cif processing. */
140 ffi_prep_cif_machdep(ffi_cif *cif)
143 switch (cif->rtype->type)
146 cif->flags = (unsigned) cif->rtype->type;
150 if (cif->rtype->size <= 4)
151 cif->flags = FFI_TYPE_INT;
153 else if (cif->rtype->size <= 8)
154 cif->flags = FFI_TYPE_DOUBLE;
157 cif->flags = (unsigned) cif->rtype->type;
163 cif->flags = FFI_TYPE_DOUBLE;
168 cif->flags = FFI_TYPE_INT;
178 void ffi_call(ffi_cif *cif, void (*fn)(void), void *rvalue, void **avalue)
182 ecif.cif = cif;
188 (cif->rtype->type == FFI_TYPE_STRUCT))
190 ecif.rvalue = alloca (cif->rtype->size);
195 switch (cif->abi)
198 ffi_call_SYSV(ffi_prep_args, &ecif, cif->bytes,
199 cif->flags, ecif.rvalue, fn);
200 if (cif->rtype->type == FFI_TYPE_STRUCT)
202 int size = cif->rtype->size;
203 int align = cif->rtype->alignment;