summaryrefslogtreecommitdiff
path: root/libc/sysdeps/linux/sh
diff options
context:
space:
mode:
Diffstat (limited to 'libc/sysdeps/linux/sh')
-rw-r--r--libc/sysdeps/linux/sh/Makefile.arch6
-rw-r--r--libc/sysdeps/linux/sh/cacheflush.c5
2 files changed, 7 insertions, 4 deletions
diff --git a/libc/sysdeps/linux/sh/Makefile.arch b/libc/sysdeps/linux/sh/Makefile.arch
index 5ebf42bf1..3ec8cbd3f 100644
--- a/libc/sysdeps/linux/sh/Makefile.arch
+++ b/libc/sysdeps/linux/sh/Makefile.arch
@@ -7,7 +7,11 @@
#
CSRC := \
- pipe.c __init_brk.c brk.c sbrk.c pread_write.c cacheflush.c
+ pipe.c __init_brk.c brk.c sbrk.c pread_write.c
+
+ifeq ($(UCLIBC_LINUX_SPECIFIC),y)
+CSRC += cacheflush.c
+endif
SSRC := setjmp.S __longjmp.S ___fpscr_values.S
diff --git a/libc/sysdeps/linux/sh/cacheflush.c b/libc/sysdeps/linux/sh/cacheflush.c
index 58229186d..619b96b5a 100644
--- a/libc/sysdeps/linux/sh/cacheflush.c
+++ b/libc/sysdeps/linux/sh/cacheflush.c
@@ -6,10 +6,9 @@
*
* Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
*/
-#include <errno.h>
-#include <unistd.h>
#include <sys/syscall.h>
#ifdef __NR_cacheflush
-_syscall3(int, cacheflush, char *, addr, int, nbytes, int, op)
+int cacheflush(void *addr, const int nbytes, int op);
+_syscall3(int, cacheflush, void *, addr, const int, nbytes, const int, op)
#endif