diff --git a/src/microblaze/ffi.c b/src/microblaze/ffi.c index ea962ea4..5733e6e6 100644 --- a/src/microblaze/ffi.c +++ b/src/microblaze/ffi.c @@ -46,12 +46,12 @@ void ffi_prep_args(void* stack, extended_cif* ecif) void** p_argv; void* stack_args_p = stack; - p_argv = ecif->avalue; - if (ecif == NULL || ecif->cif == NULL) { return; /* no description to prepare */ } + p_argv = ecif->avalue; + if ((ecif->cif->rtype != NULL) && (ecif->cif->rtype->type == FFI_TYPE_STRUCT)) {