Home | History | Annotate | Download | only in cris

Lines Matching refs:cif

82   for (i = ecif->cif->nargs, p_arg = ecif->cif->arg_types;
106 uiLocOnStack = 4 * ecif->cif->nargs + struct_count;
157 ffi_prep_cif (ffi_cif * cif,
165 FFI_ASSERT (cif != NULL);
168 cif->abi = abi;
169 cif->arg_types = atypes;
170 cif->nargs = nargs;
171 cif->rtype = rtype;
173 cif->flags = 0;
175 if ((cif->rtype->size == 0)
176 && (initialize_aggregate_packed_struct (cif->rtype) != FFI_OK))
179 FFI_ASSERT_VALID_TYPE (cif->rtype);
181 for (ptr = cif->arg_types, i = cif->nargs; i > 0; i--, ptr++)
210 cif->bytes = bytes;
212 return ffi_prep_cif_machdep (cif);
216 ffi_prep_cif_machdep (ffi_cif * cif)
218 switch (cif->rtype->type)
226 cif->flags = (unsigned) cif->rtype->type;
230 cif->flags = FFI_TYPE_INT;
243 ffi_call (ffi_cif * cif, void (*fn) (), void *rvalue, void **avalue)
247 ecif.cif = cif;
250 if ((rvalue == NULL) && (cif->rtype->type == FFI_TYPE_STRUCT))
252 ecif.rvalue = alloca (cif->rtype->size);
257 switch (cif->abi)
260 ffi_call_SYSV (ffi_prep_args, &ecif, cif->bytes,
261 cif->flags, ecif.rvalue, fn);
300 ffi_cif *cif = closure->cif;
301 ffi_type **arg_types = cif->arg_types;
304 void **avalue = alloca (closure->cif->nargs * sizeof(void *));
310 for (i = 0, doing_regs = 1; i < cif->nargs; i++)
343 (closure->fun) (cif,
345 cif->rtype->type == FFI_TYPE_STRUCT
365 ffi_cif* cif,
371 FFI_ASSERT (cif->abi == FFI_SYSV);
372 closure->cif = cif;