AArch64: Fix mmap64() definition for AArch64, X86_64

For 64bit Architectures mmap() is equivalent to mmap64(). This patch
maps mmap64() to mmap() in a similar way to other syscalls that differ
based on the size of off_t and off64_t

Change-Id: If21b21ef71120bad23d9a608d02d4a7de5220a87
Signed-off-by: Serban Constantinescu <serban.constantinescu@arm.com>
diff --git a/libc/SYSCALLS.TXT b/libc/SYSCALLS.TXT
index 1277b1a..19b4d22 100644
--- a/libc/SYSCALLS.TXT
+++ b/libc/SYSCALLS.TXT
@@ -93,8 +93,6 @@
 ssize_t     pwrite64|pwrite(int, void*, size_t, off_t) aarch64,x86_64
 int         close(int)                      all
 pid_t       getpid()    all
-void*       mmap(void*, size_t, int, int, int, long)  aarch64,x86_64
-void*       __mmap2:mmap2(void*, size_t, int, int, int, long)   arm,mips,x86
 int         munmap(void*, size_t)  all
 void*       mremap(void*, size_t, size_t, unsigned long)  all
 int         msync(const void*, size_t, int)    all
@@ -159,6 +157,9 @@
 int truncate(const char*, off_t) arm,mips,x86
 int truncate64(const char*, off64_t) arm,mips,x86
 int truncate|truncate64(const char*, off_t) aarch64,x86_64
+# (mmap only gets two lines because we only used the 64-bit variant on 32-bit systems.)
+void* __mmap2:mmap2(void*, size_t, int, int, int, long)   arm,mips,x86
+void* mmap|mmap64(void*, size_t, int, int, int, off_t)  aarch64,x86_64
 
 # file system
 int     chdir(const char*)              all
diff --git a/libc/arch-aarch64/syscalls/mmap.S b/libc/arch-aarch64/syscalls/mmap.S
index d9abd41..a2d181a 100644
--- a/libc/arch-aarch64/syscalls/mmap.S
+++ b/libc/arch-aarch64/syscalls/mmap.S
@@ -19,3 +19,6 @@
 
     ret
 END(mmap)
+
+    .globl _C_LABEL(mmap64)
+    .equ _C_LABEL(mmap64), _C_LABEL(mmap)
diff --git a/libc/arch-x86_64/syscalls/mmap.S b/libc/arch-x86_64/syscalls/mmap.S
index d28cc42..d6f9687 100644
--- a/libc/arch-x86_64/syscalls/mmap.S
+++ b/libc/arch-x86_64/syscalls/mmap.S
@@ -15,3 +15,6 @@
 1:
     ret
 END(mmap)
+
+    .globl _C_LABEL(mmap64)
+    .equ _C_LABEL(mmap64), _C_LABEL(mmap)