summaryrefslogtreecommitdiff
path: root/libc/sysdeps/linux/c6x
diff options
context:
space:
mode:
Diffstat (limited to 'libc/sysdeps/linux/c6x')
-rw-r--r--libc/sysdeps/linux/c6x/bits/fcntl.h1
-rw-r--r--libc/sysdeps/linux/c6x/bits/ipc.h4
-rw-r--r--libc/sysdeps/linux/c6x/bits/resource.h9
-rwxr-xr-x[-rw-r--r--]libc/sysdeps/linux/c6x/bits/syscalls.h4
-rw-r--r--libc/sysdeps/linux/c6x/bits/uClibc_arch_features.h3
5 files changed, 19 insertions, 2 deletions
diff --git a/libc/sysdeps/linux/c6x/bits/fcntl.h b/libc/sysdeps/linux/c6x/bits/fcntl.h
index 02c2ee131..14aea565e 100644
--- a/libc/sysdeps/linux/c6x/bits/fcntl.h
+++ b/libc/sysdeps/linux/c6x/bits/fcntl.h
@@ -54,6 +54,7 @@
# define O_LARGEFILE 0100000
# define O_NOATIME 01000000
# define O_PATH 010000000/* Resolve pathname but do not open file. */
+# define O_TMPFILE 020200000/* Atomically create nameless file. */
#endif
/* For now Linux has synchronisity options for data and read operations.
diff --git a/libc/sysdeps/linux/c6x/bits/ipc.h b/libc/sysdeps/linux/c6x/bits/ipc.h
index 4e9236eb6..c28a2ee3b 100644
--- a/libc/sysdeps/linux/c6x/bits/ipc.h
+++ b/libc/sysdeps/linux/c6x/bits/ipc.h
@@ -49,6 +49,6 @@ struct ipc_perm
__mode_t mode; /* Read/write permission. */
unsigned short int __seq; /* Sequence number. */
unsigned short int __pad2;
- unsigned long int __unused1;
- unsigned long int __unused2;
+ unsigned long int __uclibc_unused1;
+ unsigned long int __uclibc_unused2;
};
diff --git a/libc/sysdeps/linux/c6x/bits/resource.h b/libc/sysdeps/linux/c6x/bits/resource.h
index 72b08ce84..438827542 100644
--- a/libc/sysdeps/linux/c6x/bits/resource.h
+++ b/libc/sysdeps/linux/c6x/bits/resource.h
@@ -143,6 +143,15 @@ enum __rusage_who
/* Both. */
RUSAGE_BOTH = -2
#define RUSAGE_BOTH RUSAGE_BOTH
+
+#ifdef __USE_GNU
+ ,
+ /* The calling thread. */
+ RUSAGE_THREAD = 1
+# define RUSAGE_THREAD RUSAGE_THREAD
+ /* Name for the same functionality on Solaris. */
+# define RUSAGE_LWP RUSAGE_THREAD
+#endif
};
#define __need_timeval
diff --git a/libc/sysdeps/linux/c6x/bits/syscalls.h b/libc/sysdeps/linux/c6x/bits/syscalls.h
index 70b708d70..451271725 100644..100755
--- a/libc/sysdeps/linux/c6x/bits/syscalls.h
+++ b/libc/sysdeps/linux/c6x/bits/syscalls.h
@@ -167,11 +167,15 @@ type name(C_DECL_ARGS_##nargs(args)) { \
return (type)INLINE_SYSCALL_NOERR(name, nargs, C_ARGS_##nargs(args)); \
}
+#define SYSCALL_FUNC_BODY(nargs, type, name, args...) \
+ return (type)INLINE_SYSCALL(name, nargs, C_ARGS_##nargs(args));
+
#define _syscall0(args...) SYSCALL_FUNC(0, args)
#define _syscall_noerr0(args...) SYSCALL_NOERR_FUNC(0, args)
#define _syscall1(args...) SYSCALL_FUNC(1, args)
#define _syscall_noerr1(args...) SYSCALL_NOERR_FUNC(1, args)
#define _syscall2(args...) SYSCALL_FUNC(2, args)
+#define _syscall2_body(args...) SYSCALL_FUNC_BODY(2, args)
#define _syscall3(args...) SYSCALL_FUNC(3, args)
#define _syscall4(args...) SYSCALL_FUNC(4, args)
#define _syscall5(args...) SYSCALL_FUNC(5, args)
diff --git a/libc/sysdeps/linux/c6x/bits/uClibc_arch_features.h b/libc/sysdeps/linux/c6x/bits/uClibc_arch_features.h
index 7b6077e3e..ef34fa295 100644
--- a/libc/sysdeps/linux/c6x/bits/uClibc_arch_features.h
+++ b/libc/sysdeps/linux/c6x/bits/uClibc_arch_features.h
@@ -12,6 +12,9 @@
/* can your target use syscall6() for mmap ? */
#define __UCLIBC_MMAP_HAS_6_ARGS__
+/* does your target use statx */
+#undef __UCLIBC_HAVE_STATX__
+
/* does your target align 64bit values in register pairs ? (32bit arches only) */
#undef __UCLIBC_SYSCALL_ALIGN_64BIT__