summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorlordrasmus <lordrasmus@gmail.com>2023-05-30 11:59:15 +0200
committerWaldemar Brodkorb <wbx@openadk.org>2023-08-14 10:18:17 +0200
commite5662feb044ea940f4ec697434c1a9bd96c02ad3 (patch)
treedd0ee769d76ab972847e7f5ca3408b6525277f24
parent0a232450b11046045688cfcece9e40c68d73a10d (diff)
c6x compile fix vdso support
-rw-r--r--ldso/include/dl-defs.h3
-rwxr-xr-x[-rw-r--r--]libc/sysdeps/linux/c6x/bits/syscalls.h4
2 files changed, 7 insertions, 0 deletions
diff --git a/ldso/include/dl-defs.h b/ldso/include/dl-defs.h
index f27112a11..daa6685cb 100644
--- a/ldso/include/dl-defs.h
+++ b/ldso/include/dl-defs.h
@@ -76,6 +76,9 @@ typedef struct {
/* arch specific defines */
#include <dl-sysdep.h>
#endif
+#ifdef __TARGET_c6x__
+#include <dl-sysdep.h>
+#endif
#endif
/* Provide a means for a port to pass additional arguments to the _dl_start
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)