Merge pull request #324 from compnerd/arm-zext

arm: zext return value parameters
diff --git a/src/arm/ffi.c b/src/arm/ffi.c
index b4fb5b6..12ce04a 100644
--- a/src/arm/ffi.c
+++ b/src/arm/ffi.c
@@ -419,6 +419,11 @@
       rvalue = *(void **) argp;
       argp += 4;
     }
+  else
+    {
+      if (cif->rtype->size && cif->rtype->size < 4)
+	**(int32_t **) rvalue = 0;
+    }
 
   for (i = 0, n = cif->nargs; i < n; i++)
     {