arm, ppc, mips32: fix fallocate and add tests

Previously, offset and length were truncated to 32-bits.

Change-Id: I5456a33921ee05f761945da225db0dabd7c12222
Reviewed-on: https://chromium-review.googlesource.com/c/linux-syscall-support/+/1953468
Reviewed-by: Mike Frysinger <vapier@chromium.org>
diff --git a/linux_syscall_support.h b/linux_syscall_support.h
index 8e0cc38..a71bea8 100644
--- a/linux_syscall_support.h
+++ b/linux_syscall_support.h
@@ -3630,7 +3630,10 @@
       LSS_BODY(4, int, fallocate, LSS_SYSCALL_ARG(f), LSS_SYSCALL_ARG(mode),
                                   (uint64_t)(offset), (uint64_t)(len));
     }
-    #elif defined(__i386__) || (defined(__s390__) && !defined(__s390x__))
+    #elif (defined(__i386__) || (defined(__s390__) && !defined(__s390x__)) \
+           || defined(__ARM_ARCH_3__) || defined(__ARM_EABI__) \
+           || (defined(__mips__) && _MIPS_SIM == _MIPS_SIM_ABI32) \
+           || defined(__PPC__))
     #define __NR__fallocate __NR_fallocate
     LSS_INLINE _syscall6(int, _fallocate, int, fd,
                          int, mode,