Implement some of the missing LFS64 support.
This gives us:
* <dirent.h>
struct dirent64
readdir64, readdir64_r, alphasort64, scandir64
* <fcntl.h>
creat64, openat64, open64.
* <sys/stat.h>
struct stat64
fstat64, fstatat64, lstat64, stat64.
* <sys/statvfs.h>
struct statvfs64
statvfs64, fstatvfs64.
* <sys/vfs.h>
struct statfs64
statfs64, fstatfs64.
This also removes some of the incorrect #define hacks we've had in the
past (for stat64, for example, which we promised to clean up way back
in bug 8472078).
Bug: 11865851
Bug: 8472078
Change-Id: Ia46443521918519f2dfa64d4621027dfd13ac566
diff --git a/libc/arch-mips64/syscalls/fstat.S b/libc/arch-mips64/syscalls/fstat64.S
similarity index 75%
rename from libc/arch-mips64/syscalls/fstat.S
rename to libc/arch-mips64/syscalls/fstat64.S
index 4c3e236..413d03b 100644
--- a/libc/arch-mips64/syscalls/fstat.S
+++ b/libc/arch-mips64/syscalls/fstat64.S
@@ -4,11 +4,11 @@
#include <machine/asm.h>
#include <machine/regdef.h>
.text
- .globl fstat
+ .globl fstat64
.align 4
- .ent fstat
+ .ent fstat64
-fstat:
+fstat64:
.set push
.set noreorder
li v0, __NR_fstat
@@ -28,4 +28,7 @@
j t9
move ra, t0
.set pop
- .end fstat
+ .end fstat64
+
+ .globl _C_LABEL(fstat)
+ .equ _C_LABEL(fstat), _C_LABEL(fstat64)
diff --git a/libc/arch-mips64/syscalls/fstatat.S b/libc/arch-mips64/syscalls/fstatat64.S
similarity index 73%
rename from libc/arch-mips64/syscalls/fstatat.S
rename to libc/arch-mips64/syscalls/fstatat64.S
index 630debe..df00901 100644
--- a/libc/arch-mips64/syscalls/fstatat.S
+++ b/libc/arch-mips64/syscalls/fstatat64.S
@@ -4,11 +4,11 @@
#include <machine/asm.h>
#include <machine/regdef.h>
.text
- .globl fstatat
+ .globl fstatat64
.align 4
- .ent fstatat
+ .ent fstatat64
-fstatat:
+fstatat64:
.set push
.set noreorder
li v0, __NR_newfstatat
@@ -28,4 +28,7 @@
j t9
move ra, t0
.set pop
- .end fstatat
+ .end fstatat64
+
+ .globl _C_LABEL(fstatat)
+ .equ _C_LABEL(fstatat), _C_LABEL(fstatat64)
diff --git a/libc/arch-mips64/syscalls/fstatfs.S b/libc/arch-mips64/syscalls/fstatfs64.S
similarity index 73%
rename from libc/arch-mips64/syscalls/fstatfs.S
rename to libc/arch-mips64/syscalls/fstatfs64.S
index 3e38227..2276299 100644
--- a/libc/arch-mips64/syscalls/fstatfs.S
+++ b/libc/arch-mips64/syscalls/fstatfs64.S
@@ -4,11 +4,11 @@
#include <machine/asm.h>
#include <machine/regdef.h>
.text
- .globl fstatfs
+ .globl fstatfs64
.align 4
- .ent fstatfs
+ .ent fstatfs64
-fstatfs:
+fstatfs64:
.set push
.set noreorder
li v0, __NR_fstatfs
@@ -28,4 +28,7 @@
j t9
move ra, t0
.set pop
- .end fstatfs
+ .end fstatfs64
+
+ .globl _C_LABEL(fstatfs)
+ .equ _C_LABEL(fstatfs), _C_LABEL(fstatfs64)
diff --git a/libc/arch-mips64/syscalls/statfs.S b/libc/arch-mips64/syscalls/statfs64.S
similarity index 74%
rename from libc/arch-mips64/syscalls/statfs.S
rename to libc/arch-mips64/syscalls/statfs64.S
index 4711b1a..2fd7603 100644
--- a/libc/arch-mips64/syscalls/statfs.S
+++ b/libc/arch-mips64/syscalls/statfs64.S
@@ -4,11 +4,11 @@
#include <machine/asm.h>
#include <machine/regdef.h>
.text
- .globl statfs
+ .globl statfs64
.align 4
- .ent statfs
+ .ent statfs64
-statfs:
+statfs64:
.set push
.set noreorder
li v0, __NR_statfs
@@ -28,4 +28,7 @@
j t9
move ra, t0
.set pop
- .end statfs
+ .end statfs64
+
+ .globl _C_LABEL(statfs)
+ .equ _C_LABEL(statfs), _C_LABEL(statfs64)