diff --git a/lib/compiler/aro/aro/target.zig b/lib/compiler/aro/aro/target.zig index 0768e781eb4f..56bc4dd46a21 100644 --- a/lib/compiler/aro/aro/target.zig +++ b/lib/compiler/aro/aro/target.zig @@ -437,9 +437,18 @@ pub fn ldEmulationOption(target: std.Target, arm_endianness: ?std.builtin.Endian .loongarch64 => "elf64loongarch", .mips => "elf32btsmip", .mipsel => "elf32ltsmip", - .mips64 => if (target.abi == .gnuabin32) "elf32btsmipn32" else "elf64btsmip", - .mips64el => if (target.abi == .gnuabin32) "elf32ltsmipn32" else "elf64ltsmip", - .x86_64 => if (target.abi == .gnux32 or target.abi == .muslx32) "elf32_x86_64" else "elf_x86_64", + .mips64 => switch (target.abi) { + .gnuabin32, .muslabin32 => "elf32btsmipn32", + else => "elf64btsmip", + }, + .mips64el => switch (target.abi) { + .gnuabin32, .muslabin32 => "elf32ltsmipn32", + else => "elf64ltsmip", + }, + .x86_64 => switch (target.abi) { + .gnux32, .muslx32 => "elf32_x86_64", + else => "elf_x86_64", + }, .ve => "elf64ve", .csky => "cskyelf_linux", else => null, @@ -684,13 +693,15 @@ pub fn toLLVMTriple(target: std.Target, buf: []u8) []const u8 { .gnuf32 => "gnuf32", .gnusf => "gnusf", .gnux32 => "gnux32", - .gnuilp32 => "gnuilp32", + .gnuilp32 => "gnu_ilp32", .code16 => "code16", .eabi => "eabi", .eabihf => "eabihf", .android => "android", .androideabi => "androideabi", .musl => "musl", + .muslabin32 => "muslabin32", + .muslabi64 => "muslabi64", .musleabi => "musleabi", .musleabihf => "musleabihf", .muslx32 => "muslx32", diff --git a/lib/libc/glibc/sysdeps/x86_64/x32/sysdep.h b/lib/libc/glibc/sysdeps/x86_64/x32/sysdep.h index 02036edd7d7f..39cb08b3cf87 100644 --- a/lib/libc/glibc/sysdeps/x86_64/x32/sysdep.h +++ b/lib/libc/glibc/sysdeps/x86_64/x32/sysdep.h @@ -17,6 +17,7 @@ . */ #include +#undef LP_SIZE #ifdef __ASSEMBLER__ # define LP_SIZE 4 #else diff --git a/lib/libc/include/aarch64-linux-musl/bits/stdint.h b/lib/libc/include/aarch64-linux-musl/bits/stdint.h new file mode 100644 index 000000000000..02714d7398ad --- /dev/null +++ b/lib/libc/include/aarch64-linux-musl/bits/stdint.h @@ -0,0 +1,20 @@ +typedef int32_t int_fast16_t; +typedef int32_t int_fast32_t; +typedef uint32_t uint_fast16_t; +typedef uint32_t uint_fast32_t; + +#define INT_FAST16_MIN INT32_MIN +#define INT_FAST32_MIN INT32_MIN + +#define INT_FAST16_MAX INT32_MAX +#define INT_FAST32_MAX INT32_MAX + +#define UINT_FAST16_MAX UINT32_MAX +#define UINT_FAST32_MAX UINT32_MAX + +#define INTPTR_MIN INT64_MIN +#define INTPTR_MAX INT64_MAX +#define UINTPTR_MAX UINT64_MAX +#define PTRDIFF_MIN INT64_MIN +#define PTRDIFF_MAX INT64_MAX +#define SIZE_MAX UINT64_MAX \ No newline at end of file diff --git a/lib/libc/include/generic-musl/bits/alltypes.h b/lib/libc/include/generic-musl/bits/alltypes.h new file mode 100644 index 000000000000..46b309d668a6 --- /dev/null +++ b/lib/libc/include/generic-musl/bits/alltypes.h @@ -0,0 +1,408 @@ +#define _REDIR_TIME64 1 +#define _Addr int +#define _Int64 long long +#define _Reg int + +#if _MIPSEL || __MIPSEL || __MIPSEL__ +#define __BYTE_ORDER 1234 +#else +#define __BYTE_ORDER 4321 +#endif + +#define __LONG_MAX 0x7fffffffL + +#ifndef __cplusplus +#if defined(__NEED_wchar_t) && !defined(__DEFINED_wchar_t) +typedef int wchar_t; +#define __DEFINED_wchar_t +#endif + +#endif + +#if defined(__NEED_float_t) && !defined(__DEFINED_float_t) +typedef float float_t; +#define __DEFINED_float_t +#endif + +#if defined(__NEED_double_t) && !defined(__DEFINED_double_t) +typedef double double_t; +#define __DEFINED_double_t +#endif + + +#if defined(__NEED_max_align_t) && !defined(__DEFINED_max_align_t) +typedef struct { long long __ll; long double __ld; } max_align_t; +#define __DEFINED_max_align_t +#endif + +#define __LITTLE_ENDIAN 1234 +#define __BIG_ENDIAN 4321 +#define __USE_TIME_BITS64 1 + +#if defined(__NEED_size_t) && !defined(__DEFINED_size_t) +typedef unsigned _Addr size_t; +#define __DEFINED_size_t +#endif + +#if defined(__NEED_uintptr_t) && !defined(__DEFINED_uintptr_t) +typedef unsigned _Addr uintptr_t; +#define __DEFINED_uintptr_t +#endif + +#if defined(__NEED_ptrdiff_t) && !defined(__DEFINED_ptrdiff_t) +typedef _Addr ptrdiff_t; +#define __DEFINED_ptrdiff_t +#endif + +#if defined(__NEED_ssize_t) && !defined(__DEFINED_ssize_t) +typedef _Addr ssize_t; +#define __DEFINED_ssize_t +#endif + +#if defined(__NEED_intptr_t) && !defined(__DEFINED_intptr_t) +typedef _Addr intptr_t; +#define __DEFINED_intptr_t +#endif + +#if defined(__NEED_regoff_t) && !defined(__DEFINED_regoff_t) +typedef _Addr regoff_t; +#define __DEFINED_regoff_t +#endif + +#if defined(__NEED_register_t) && !defined(__DEFINED_register_t) +typedef _Reg register_t; +#define __DEFINED_register_t +#endif + +#if defined(__NEED_time_t) && !defined(__DEFINED_time_t) +typedef _Int64 time_t; +#define __DEFINED_time_t +#endif + +#if defined(__NEED_suseconds_t) && !defined(__DEFINED_suseconds_t) +typedef _Int64 suseconds_t; +#define __DEFINED_suseconds_t +#endif + + +#if defined(__NEED_int8_t) && !defined(__DEFINED_int8_t) +typedef signed char int8_t; +#define __DEFINED_int8_t +#endif + +#if defined(__NEED_int16_t) && !defined(__DEFINED_int16_t) +typedef signed short int16_t; +#define __DEFINED_int16_t +#endif + +#if defined(__NEED_int32_t) && !defined(__DEFINED_int32_t) +typedef signed int int32_t; +#define __DEFINED_int32_t +#endif + +#if defined(__NEED_int64_t) && !defined(__DEFINED_int64_t) +typedef signed _Int64 int64_t; +#define __DEFINED_int64_t +#endif + +#if defined(__NEED_intmax_t) && !defined(__DEFINED_intmax_t) +typedef signed _Int64 intmax_t; +#define __DEFINED_intmax_t +#endif + +#if defined(__NEED_uint8_t) && !defined(__DEFINED_uint8_t) +typedef unsigned char uint8_t; +#define __DEFINED_uint8_t +#endif + +#if defined(__NEED_uint16_t) && !defined(__DEFINED_uint16_t) +typedef unsigned short uint16_t; +#define __DEFINED_uint16_t +#endif + +#if defined(__NEED_uint32_t) && !defined(__DEFINED_uint32_t) +typedef unsigned int uint32_t; +#define __DEFINED_uint32_t +#endif + +#if defined(__NEED_uint64_t) && !defined(__DEFINED_uint64_t) +typedef unsigned _Int64 uint64_t; +#define __DEFINED_uint64_t +#endif + +#if defined(__NEED_u_int64_t) && !defined(__DEFINED_u_int64_t) +typedef unsigned _Int64 u_int64_t; +#define __DEFINED_u_int64_t +#endif + +#if defined(__NEED_uintmax_t) && !defined(__DEFINED_uintmax_t) +typedef unsigned _Int64 uintmax_t; +#define __DEFINED_uintmax_t +#endif + + +#if defined(__NEED_mode_t) && !defined(__DEFINED_mode_t) +typedef unsigned mode_t; +#define __DEFINED_mode_t +#endif + +#if defined(__NEED_nlink_t) && !defined(__DEFINED_nlink_t) +typedef unsigned _Reg nlink_t; +#define __DEFINED_nlink_t +#endif + +#if defined(__NEED_off_t) && !defined(__DEFINED_off_t) +typedef _Int64 off_t; +#define __DEFINED_off_t +#endif + +#if defined(__NEED_ino_t) && !defined(__DEFINED_ino_t) +typedef unsigned _Int64 ino_t; +#define __DEFINED_ino_t +#endif + +#if defined(__NEED_dev_t) && !defined(__DEFINED_dev_t) +typedef unsigned _Int64 dev_t; +#define __DEFINED_dev_t +#endif + +#if defined(__NEED_blksize_t) && !defined(__DEFINED_blksize_t) +typedef long blksize_t; +#define __DEFINED_blksize_t +#endif + +#if defined(__NEED_blkcnt_t) && !defined(__DEFINED_blkcnt_t) +typedef _Int64 blkcnt_t; +#define __DEFINED_blkcnt_t +#endif + +#if defined(__NEED_fsblkcnt_t) && !defined(__DEFINED_fsblkcnt_t) +typedef unsigned _Int64 fsblkcnt_t; +#define __DEFINED_fsblkcnt_t +#endif + +#if defined(__NEED_fsfilcnt_t) && !defined(__DEFINED_fsfilcnt_t) +typedef unsigned _Int64 fsfilcnt_t; +#define __DEFINED_fsfilcnt_t +#endif + + +#if defined(__NEED_wint_t) && !defined(__DEFINED_wint_t) +typedef unsigned wint_t; +#define __DEFINED_wint_t +#endif + +#if defined(__NEED_wctype_t) && !defined(__DEFINED_wctype_t) +typedef unsigned long wctype_t; +#define __DEFINED_wctype_t +#endif + + +#if defined(__NEED_timer_t) && !defined(__DEFINED_timer_t) +typedef void * timer_t; +#define __DEFINED_timer_t +#endif + +#if defined(__NEED_clockid_t) && !defined(__DEFINED_clockid_t) +typedef int clockid_t; +#define __DEFINED_clockid_t +#endif + +#if defined(__NEED_clock_t) && !defined(__DEFINED_clock_t) +typedef long clock_t; +#define __DEFINED_clock_t +#endif + +#if defined(__NEED_struct_timeval) && !defined(__DEFINED_struct_timeval) +struct timeval { time_t tv_sec; suseconds_t tv_usec; }; +#define __DEFINED_struct_timeval +#endif + +#if defined(__NEED_struct_timespec) && !defined(__DEFINED_struct_timespec) +struct timespec { time_t tv_sec; int :8*(sizeof(time_t)-sizeof(long))*(__BYTE_ORDER==4321); long tv_nsec; int :8*(sizeof(time_t)-sizeof(long))*(__BYTE_ORDER!=4321); }; +#define __DEFINED_struct_timespec +#endif + + +#if defined(__NEED_pid_t) && !defined(__DEFINED_pid_t) +typedef int pid_t; +#define __DEFINED_pid_t +#endif + +#if defined(__NEED_id_t) && !defined(__DEFINED_id_t) +typedef unsigned id_t; +#define __DEFINED_id_t +#endif + +#if defined(__NEED_uid_t) && !defined(__DEFINED_uid_t) +typedef unsigned uid_t; +#define __DEFINED_uid_t +#endif + +#if defined(__NEED_gid_t) && !defined(__DEFINED_gid_t) +typedef unsigned gid_t; +#define __DEFINED_gid_t +#endif + +#if defined(__NEED_key_t) && !defined(__DEFINED_key_t) +typedef int key_t; +#define __DEFINED_key_t +#endif + +#if defined(__NEED_useconds_t) && !defined(__DEFINED_useconds_t) +typedef unsigned useconds_t; +#define __DEFINED_useconds_t +#endif + + +#ifdef __cplusplus +#if defined(__NEED_pthread_t) && !defined(__DEFINED_pthread_t) +typedef unsigned long pthread_t; +#define __DEFINED_pthread_t +#endif + +#else +#if defined(__NEED_pthread_t) && !defined(__DEFINED_pthread_t) +typedef struct __pthread * pthread_t; +#define __DEFINED_pthread_t +#endif + +#endif +#if defined(__NEED_pthread_once_t) && !defined(__DEFINED_pthread_once_t) +typedef int pthread_once_t; +#define __DEFINED_pthread_once_t +#endif + +#if defined(__NEED_pthread_key_t) && !defined(__DEFINED_pthread_key_t) +typedef unsigned pthread_key_t; +#define __DEFINED_pthread_key_t +#endif + +#if defined(__NEED_pthread_spinlock_t) && !defined(__DEFINED_pthread_spinlock_t) +typedef int pthread_spinlock_t; +#define __DEFINED_pthread_spinlock_t +#endif + +#if defined(__NEED_pthread_mutexattr_t) && !defined(__DEFINED_pthread_mutexattr_t) +typedef struct { unsigned __attr; } pthread_mutexattr_t; +#define __DEFINED_pthread_mutexattr_t +#endif + +#if defined(__NEED_pthread_condattr_t) && !defined(__DEFINED_pthread_condattr_t) +typedef struct { unsigned __attr; } pthread_condattr_t; +#define __DEFINED_pthread_condattr_t +#endif + +#if defined(__NEED_pthread_barrierattr_t) && !defined(__DEFINED_pthread_barrierattr_t) +typedef struct { unsigned __attr; } pthread_barrierattr_t; +#define __DEFINED_pthread_barrierattr_t +#endif + +#if defined(__NEED_pthread_rwlockattr_t) && !defined(__DEFINED_pthread_rwlockattr_t) +typedef struct { unsigned __attr[2]; } pthread_rwlockattr_t; +#define __DEFINED_pthread_rwlockattr_t +#endif + + +#if defined(__NEED_struct__IO_FILE) && !defined(__DEFINED_struct__IO_FILE) +struct _IO_FILE { char __x; }; +#define __DEFINED_struct__IO_FILE +#endif + +#if defined(__NEED_FILE) && !defined(__DEFINED_FILE) +typedef struct _IO_FILE FILE; +#define __DEFINED_FILE +#endif + + +#if defined(__NEED_va_list) && !defined(__DEFINED_va_list) +typedef __builtin_va_list va_list; +#define __DEFINED_va_list +#endif + +#if defined(__NEED___isoc_va_list) && !defined(__DEFINED___isoc_va_list) +typedef __builtin_va_list __isoc_va_list; +#define __DEFINED___isoc_va_list +#endif + + +#if defined(__NEED_mbstate_t) && !defined(__DEFINED_mbstate_t) +typedef struct __mbstate_t { unsigned __opaque1, __opaque2; } mbstate_t; +#define __DEFINED_mbstate_t +#endif + + +#if defined(__NEED_locale_t) && !defined(__DEFINED_locale_t) +typedef struct __locale_struct * locale_t; +#define __DEFINED_locale_t +#endif + + +#if defined(__NEED_sigset_t) && !defined(__DEFINED_sigset_t) +typedef struct __sigset_t { unsigned long __bits[128/sizeof(long)]; } sigset_t; +#define __DEFINED_sigset_t +#endif + + +#if defined(__NEED_struct_iovec) && !defined(__DEFINED_struct_iovec) +struct iovec { void *iov_base; size_t iov_len; }; +#define __DEFINED_struct_iovec +#endif + + +#if defined(__NEED_struct_winsize) && !defined(__DEFINED_struct_winsize) +struct winsize { unsigned short ws_row, ws_col, ws_xpixel, ws_ypixel; }; +#define __DEFINED_struct_winsize +#endif + + +#if defined(__NEED_socklen_t) && !defined(__DEFINED_socklen_t) +typedef unsigned socklen_t; +#define __DEFINED_socklen_t +#endif + +#if defined(__NEED_sa_family_t) && !defined(__DEFINED_sa_family_t) +typedef unsigned short sa_family_t; +#define __DEFINED_sa_family_t +#endif + + +#if defined(__NEED_pthread_attr_t) && !defined(__DEFINED_pthread_attr_t) +typedef struct { union { int __i[sizeof(long)==8?14:9]; volatile int __vi[sizeof(long)==8?14:9]; unsigned long __s[sizeof(long)==8?7:9]; } __u; } pthread_attr_t; +#define __DEFINED_pthread_attr_t +#endif + +#if defined(__NEED_pthread_mutex_t) && !defined(__DEFINED_pthread_mutex_t) +typedef struct { union { int __i[sizeof(long)==8?10:6]; volatile int __vi[sizeof(long)==8?10:6]; volatile void *volatile __p[sizeof(long)==8?5:6]; } __u; } pthread_mutex_t; +#define __DEFINED_pthread_mutex_t +#endif + +#if defined(__NEED_mtx_t) && !defined(__DEFINED_mtx_t) +typedef struct { union { int __i[sizeof(long)==8?10:6]; volatile int __vi[sizeof(long)==8?10:6]; volatile void *volatile __p[sizeof(long)==8?5:6]; } __u; } mtx_t; +#define __DEFINED_mtx_t +#endif + +#if defined(__NEED_pthread_cond_t) && !defined(__DEFINED_pthread_cond_t) +typedef struct { union { int __i[12]; volatile int __vi[12]; void *__p[12*sizeof(int)/sizeof(void*)]; } __u; } pthread_cond_t; +#define __DEFINED_pthread_cond_t +#endif + +#if defined(__NEED_cnd_t) && !defined(__DEFINED_cnd_t) +typedef struct { union { int __i[12]; volatile int __vi[12]; void *__p[12*sizeof(int)/sizeof(void*)]; } __u; } cnd_t; +#define __DEFINED_cnd_t +#endif + +#if defined(__NEED_pthread_rwlock_t) && !defined(__DEFINED_pthread_rwlock_t) +typedef struct { union { int __i[sizeof(long)==8?14:8]; volatile int __vi[sizeof(long)==8?14:8]; void *__p[sizeof(long)==8?7:8]; } __u; } pthread_rwlock_t; +#define __DEFINED_pthread_rwlock_t +#endif + +#if defined(__NEED_pthread_barrier_t) && !defined(__DEFINED_pthread_barrier_t) +typedef struct { union { int __i[sizeof(long)==8?8:5]; volatile int __vi[sizeof(long)==8?8:5]; void *__p[sizeof(long)==8?4:5]; } __u; } pthread_barrier_t; +#define __DEFINED_pthread_barrier_t +#endif + + +#undef _Addr +#undef _Int64 +#undef _Reg \ No newline at end of file diff --git a/lib/libc/include/generic-musl/bits/fenv.h b/lib/libc/include/generic-musl/bits/fenv.h index b260c6f63b56..1347e5f2fe95 100644 --- a/lib/libc/include/generic-musl/bits/fenv.h +++ b/lib/libc/include/generic-musl/bits/fenv.h @@ -1,17 +1,34 @@ -#define FE_INVALID 16 -#define FE_DIVBYZERO 8 -#define FE_OVERFLOW 4 -#define FE_UNDERFLOW 2 -#define FE_INEXACT 1 +#define FE_INVALID 1 +#define __FE_DENORM 2 +#define FE_DIVBYZERO 4 +#define FE_OVERFLOW 8 +#define FE_UNDERFLOW 16 +#define FE_INEXACT 32 -#define FE_ALL_EXCEPT 31 +#define FE_ALL_EXCEPT 63 -#define FE_TONEAREST 0 -#define FE_DOWNWARD 2 -#define FE_UPWARD 3 -#define FE_TOWARDZERO 1 +#define FE_TONEAREST 0 +#define FE_DOWNWARD 0x400 +#define FE_UPWARD 0x800 +#define FE_TOWARDZERO 0xc00 -typedef unsigned int fexcept_t; -typedef unsigned int fenv_t; +typedef unsigned short fexcept_t; + +typedef struct { + unsigned short __control_word; + unsigned short __unused1; + unsigned short __status_word; + unsigned short __unused2; + unsigned short __tags; + unsigned short __unused3; + unsigned int __eip; + unsigned short __cs_selector; + unsigned int __opcode:11; + unsigned int __unused4:5; + unsigned int __data_offset; + unsigned short __data_selector; + unsigned short __unused5; + unsigned int __mxcsr; +} fenv_t; #define FE_DFL_ENV ((const fenv_t *) -1) \ No newline at end of file diff --git a/lib/libc/include/generic-musl/bits/setjmp.h b/lib/libc/include/generic-musl/bits/setjmp.h new file mode 100644 index 000000000000..a7cb9dbc8b1d --- /dev/null +++ b/lib/libc/include/generic-musl/bits/setjmp.h @@ -0,0 +1 @@ +typedef unsigned long long __jmp_buf[23]; \ No newline at end of file diff --git a/lib/libc/include/generic-musl/bits/signal.h b/lib/libc/include/generic-musl/bits/signal.h new file mode 100644 index 000000000000..475aae6d685e --- /dev/null +++ b/lib/libc/include/generic-musl/bits/signal.h @@ -0,0 +1,142 @@ +#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \ + || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE) + +#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE) +#define MINSIGSTKSZ 2048 +#define SIGSTKSZ 8192 +#endif + +#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) +typedef unsigned long long greg_t, gregset_t[32]; + +typedef struct { + union { + double fp_dregs[32]; + struct { + float _fp_fregs; + unsigned _fp_pad; + } fp_fregs[32]; + } fp_r; +} fpregset_t; + +struct sigcontext { + unsigned long long sc_regs[32]; + unsigned long long sc_fpregs[32]; + unsigned long long sc_mdhi; + unsigned long long sc_hi1; + unsigned long long sc_hi2; + unsigned long long sc_hi3; + unsigned long long sc_mdlo; + unsigned long long sc_lo1; + unsigned long long sc_lo2; + unsigned long long sc_lo3; + unsigned long long sc_pc; + unsigned int sc_fpc_csr; + unsigned int sc_used_math; + unsigned int sc_dsp; + unsigned int sc_reserved; +}; + +typedef struct { + gregset_t gregs; + fpregset_t fpregs; + greg_t mdhi; + greg_t hi1; + greg_t hi2; + greg_t hi3; + greg_t mdlo; + greg_t lo1; + greg_t lo2; + greg_t lo3; + greg_t pc; + unsigned int fpc_csr; + unsigned int used_math; + unsigned int dsp; + unsigned int reserved; +} mcontext_t; + +#else +typedef struct { + unsigned long long __mc1[32]; + double __mc2[32]; + unsigned long long __mc3[9]; + unsigned __mc4[4]; +} mcontext_t; +#endif + +struct sigaltstack { + void *ss_sp; + size_t ss_size; + int ss_flags; +}; + +typedef struct __ucontext { + unsigned long uc_flags; + struct __ucontext *uc_link; + stack_t uc_stack; + mcontext_t uc_mcontext; + sigset_t uc_sigmask; +} ucontext_t; + +#define SA_NOCLDSTOP 1 +#define SA_NOCLDWAIT 0x10000 +#define SA_SIGINFO 8 +#define SA_ONSTACK 0x08000000 +#define SA_RESTART 0x10000000 +#define SA_NODEFER 0x40000000 +#define SA_RESETHAND 0x80000000 + +#undef SIG_BLOCK +#undef SIG_UNBLOCK +#undef SIG_SETMASK +#define SIG_BLOCK 1 +#define SIG_UNBLOCK 2 +#define SIG_SETMASK 3 + +#undef SI_ASYNCIO +#undef SI_MESGQ +#undef SI_TIMER +#define SI_ASYNCIO (-2) +#define SI_MESGQ (-4) +#define SI_TIMER (-3) + +#define __SI_SWAP_ERRNO_CODE + +#endif + +#define SIGHUP 1 +#define SIGINT 2 +#define SIGQUIT 3 +#define SIGILL 4 +#define SIGTRAP 5 +#define SIGABRT 6 +#define SIGIOT SIGABRT +#define SIGEMT 7 +#define SIGFPE 8 +#define SIGKILL 9 +#define SIGBUS 10 +#define SIGSEGV 11 +#define SIGSYS 12 +#define SIGPIPE 13 +#define SIGALRM 14 +#define SIGTERM 15 +#define SIGUSR1 16 +#define SIGUSR2 17 +#define SIGCHLD 18 +#define SIGPWR 19 +#define SIGWINCH 20 +#define SIGURG 21 +#define SIGIO 22 +#define SIGPOLL SIGIO +#define SIGSTOP 23 +#define SIGTSTP 24 +#define SIGCONT 25 +#define SIGTTIN 26 +#define SIGTTOU 27 +#define SIGVTALRM 28 +#define SIGPROF 29 +#define SIGXCPU 30 +#define SIGXFSZ 31 +#define SIGUNUSED SIGSYS + +#define _NSIG 128 \ No newline at end of file diff --git a/lib/libc/include/generic-musl/bits/stdint.h b/lib/libc/include/generic-musl/bits/stdint.h index 02714d7398ad..b70a87dc9d58 100644 --- a/lib/libc/include/generic-musl/bits/stdint.h +++ b/lib/libc/include/generic-musl/bits/stdint.h @@ -12,9 +12,9 @@ typedef uint32_t uint_fast32_t; #define UINT_FAST16_MAX UINT32_MAX #define UINT_FAST32_MAX UINT32_MAX -#define INTPTR_MIN INT64_MIN -#define INTPTR_MAX INT64_MAX -#define UINTPTR_MAX UINT64_MAX -#define PTRDIFF_MIN INT64_MIN -#define PTRDIFF_MAX INT64_MAX -#define SIZE_MAX UINT64_MAX \ No newline at end of file +#define INTPTR_MIN INT32_MIN +#define INTPTR_MAX INT32_MAX +#define UINTPTR_MAX UINT32_MAX +#define PTRDIFF_MIN INT32_MIN +#define PTRDIFF_MAX INT32_MAX +#define SIZE_MAX UINT32_MAX \ No newline at end of file diff --git a/lib/libc/include/loongarch64-linux-musl/bits/stdint.h b/lib/libc/include/loongarch64-linux-musl/bits/stdint.h new file mode 100644 index 000000000000..02714d7398ad --- /dev/null +++ b/lib/libc/include/loongarch64-linux-musl/bits/stdint.h @@ -0,0 +1,20 @@ +typedef int32_t int_fast16_t; +typedef int32_t int_fast32_t; +typedef uint32_t uint_fast16_t; +typedef uint32_t uint_fast32_t; + +#define INT_FAST16_MIN INT32_MIN +#define INT_FAST32_MIN INT32_MIN + +#define INT_FAST16_MAX INT32_MAX +#define INT_FAST32_MAX INT32_MAX + +#define UINT_FAST16_MAX UINT32_MAX +#define UINT_FAST32_MAX UINT32_MAX + +#define INTPTR_MIN INT64_MIN +#define INTPTR_MAX INT64_MAX +#define UINTPTR_MAX UINT64_MAX +#define PTRDIFF_MIN INT64_MIN +#define PTRDIFF_MAX INT64_MAX +#define SIZE_MAX UINT64_MAX \ No newline at end of file diff --git a/lib/libc/include/mips64-linux-musl/bits/stdint.h b/lib/libc/include/mips64-linux-musl/bits/stdint.h new file mode 100644 index 000000000000..02714d7398ad --- /dev/null +++ b/lib/libc/include/mips64-linux-musl/bits/stdint.h @@ -0,0 +1,20 @@ +typedef int32_t int_fast16_t; +typedef int32_t int_fast32_t; +typedef uint32_t uint_fast16_t; +typedef uint32_t uint_fast32_t; + +#define INT_FAST16_MIN INT32_MIN +#define INT_FAST32_MIN INT32_MIN + +#define INT_FAST16_MAX INT32_MAX +#define INT_FAST32_MAX INT32_MAX + +#define UINT_FAST16_MAX UINT32_MAX +#define UINT_FAST32_MAX UINT32_MAX + +#define INTPTR_MIN INT64_MIN +#define INTPTR_MAX INT64_MAX +#define UINTPTR_MAX UINT64_MAX +#define PTRDIFF_MIN INT64_MIN +#define PTRDIFF_MAX INT64_MAX +#define SIZE_MAX UINT64_MAX \ No newline at end of file diff --git a/lib/libc/include/mips64-linux-muslabin32/bits/errno.h b/lib/libc/include/mips64-linux-muslabin32/bits/errno.h new file mode 100644 index 000000000000..54adcccfeea5 --- /dev/null +++ b/lib/libc/include/mips64-linux-muslabin32/bits/errno.h @@ -0,0 +1,134 @@ +#define EPERM 1 +#define ENOENT 2 +#define ESRCH 3 +#define EINTR 4 +#define EIO 5 +#define ENXIO 6 +#define E2BIG 7 +#define ENOEXEC 8 +#define EBADF 9 +#define ECHILD 10 +#define EAGAIN 11 +#define ENOMEM 12 +#define EACCES 13 +#define EFAULT 14 +#define ENOTBLK 15 +#define EBUSY 16 +#define EEXIST 17 +#define EXDEV 18 +#define ENODEV 19 +#define ENOTDIR 20 +#define EISDIR 21 +#define EINVAL 22 +#define ENFILE 23 +#define EMFILE 24 +#define ENOTTY 25 +#define ETXTBSY 26 +#define EFBIG 27 +#define ENOSPC 28 +#define ESPIPE 29 +#define EROFS 30 +#define EMLINK 31 +#define EPIPE 32 +#define EDOM 33 +#define ERANGE 34 +#define ENOMSG 35 +#define EIDRM 36 +#define ECHRNG 37 +#define EL2NSYNC 38 +#define EL3HLT 39 +#define EL3RST 40 +#define ELNRNG 41 +#define EUNATCH 42 +#define ENOCSI 43 +#define EL2HLT 44 +#define EDEADLK 45 +#define ENOLCK 46 +#define EBADE 50 +#define EBADR 51 +#define EXFULL 52 +#define ENOANO 53 +#define EBADRQC 54 +#define EBADSLT 55 +#define EDEADLOCK 56 +#define EBFONT 59 +#define ENOSTR 60 +#define ENODATA 61 +#define ETIME 62 +#define ENOSR 63 +#define ENONET 64 +#define ENOPKG 65 +#define EREMOTE 66 +#define ENOLINK 67 +#define EADV 68 +#define ESRMNT 69 +#define ECOMM 70 +#define EPROTO 71 +#define EDOTDOT 73 +#define EMULTIHOP 74 +#define EBADMSG 77 +#define ENAMETOOLONG 78 +#define EOVERFLOW 79 +#define ENOTUNIQ 80 +#define EBADFD 81 +#define EREMCHG 82 +#define ELIBACC 83 +#define ELIBBAD 84 +#define ELIBSCN 85 +#define ELIBMAX 86 +#define ELIBEXEC 87 +#define EILSEQ 88 +#define ENOSYS 89 +#define ELOOP 90 +#define ERESTART 91 +#define ESTRPIPE 92 +#define ENOTEMPTY 93 +#define EUSERS 94 +#define ENOTSOCK 95 +#define EDESTADDRREQ 96 +#define EMSGSIZE 97 +#define EPROTOTYPE 98 +#define ENOPROTOOPT 99 +#define EPROTONOSUPPORT 120 +#define ESOCKTNOSUPPORT 121 +#define EOPNOTSUPP 122 +#define ENOTSUP EOPNOTSUPP +#define EPFNOSUPPORT 123 +#define EAFNOSUPPORT 124 +#define EADDRINUSE 125 +#define EADDRNOTAVAIL 126 +#define ENETDOWN 127 +#define ENETUNREACH 128 +#define ENETRESET 129 +#define ECONNABORTED 130 +#define ECONNRESET 131 +#define ENOBUFS 132 +#define EISCONN 133 +#define ENOTCONN 134 +#define EUCLEAN 135 +#define ENOTNAM 137 +#define ENAVAIL 138 +#define EISNAM 139 +#define EREMOTEIO 140 +#define ESHUTDOWN 143 +#define ETOOMANYREFS 144 +#define ETIMEDOUT 145 +#define ECONNREFUSED 146 +#define EHOSTDOWN 147 +#define EHOSTUNREACH 148 +#define EWOULDBLOCK EAGAIN +#define EALREADY 149 +#define EINPROGRESS 150 +#define ESTALE 151 +#define ECANCELED 158 +#define ENOMEDIUM 159 +#define EMEDIUMTYPE 160 +#define ENOKEY 161 +#define EKEYEXPIRED 162 +#define EKEYREVOKED 163 +#define EKEYREJECTED 164 +#define EOWNERDEAD 165 +#define ENOTRECOVERABLE 166 +#define ERFKILL 167 +#define EHWPOISON 168 +#define EDQUOT 1133 \ No newline at end of file diff --git a/lib/libc/include/mips64-linux-muslabin32/bits/fcntl.h b/lib/libc/include/mips64-linux-muslabin32/bits/fcntl.h new file mode 100644 index 000000000000..911a8adc4857 --- /dev/null +++ b/lib/libc/include/mips64-linux-muslabin32/bits/fcntl.h @@ -0,0 +1,40 @@ +#define O_CREAT 0400 +#define O_EXCL 02000 +#define O_NOCTTY 04000 +#define O_TRUNC 01000 +#define O_APPEND 0010 +#define O_NONBLOCK 0200 +#define O_DSYNC 0020 +#define O_SYNC 040020 +#define O_RSYNC 040020 +#define O_DIRECTORY 0200000 +#define O_NOFOLLOW 0400000 +#define O_CLOEXEC 02000000 + +#define O_ASYNC 010000 +#define O_DIRECT 0100000 +#define O_LARGEFILE 020000 +#define O_NOATIME 01000000 +#define O_PATH 010000000 +#define O_TMPFILE 020200000 +#define O_NDELAY O_NONBLOCK + +#define F_DUPFD 0 +#define F_GETFD 1 +#define F_SETFD 2 +#define F_GETFL 3 +#define F_SETFL 4 + +#define F_SETOWN 24 +#define F_GETOWN 23 +#define F_SETSIG 10 +#define F_GETSIG 11 + +#define F_GETLK 33 +#define F_SETLK 34 +#define F_SETLKW 35 + +#define F_SETOWN_EX 15 +#define F_GETOWN_EX 16 + +#define F_GETOWNER_UIDS 17 \ No newline at end of file diff --git a/lib/libc/include/mips64-linux-muslabin32/bits/fenv.h b/lib/libc/include/mips64-linux-muslabin32/bits/fenv.h new file mode 100644 index 000000000000..dbf9b368f195 --- /dev/null +++ b/lib/libc/include/mips64-linux-muslabin32/bits/fenv.h @@ -0,0 +1,25 @@ +#ifdef __mips_soft_float +#define FE_ALL_EXCEPT 0 +#define FE_TONEAREST 0 +#else +#define FE_INEXACT 4 +#define FE_UNDERFLOW 8 +#define FE_OVERFLOW 16 +#define FE_DIVBYZERO 32 +#define FE_INVALID 64 + +#define FE_ALL_EXCEPT 124 + +#define FE_TONEAREST 0 +#define FE_TOWARDZERO 1 +#define FE_UPWARD 2 +#define FE_DOWNWARD 3 +#endif + +typedef unsigned short fexcept_t; + +typedef struct { + unsigned __cw; +} fenv_t; + +#define FE_DFL_ENV ((const fenv_t *) -1) \ No newline at end of file diff --git a/lib/libc/include/mips64-linux-muslabin32/bits/hwcap.h b/lib/libc/include/mips64-linux-muslabin32/bits/hwcap.h new file mode 100644 index 000000000000..0cc1faa9f77a --- /dev/null +++ b/lib/libc/include/mips64-linux-muslabin32/bits/hwcap.h @@ -0,0 +1,3 @@ +#define HWCAP_MIPS_R6 (1 << 0) +#define HWCAP_MIPS_MSA (1 << 1) +#define HWCAP_MIPS_CRC32 (1 << 2) \ No newline at end of file diff --git a/lib/libc/include/mips64-linux-muslabin32/bits/ioctl.h b/lib/libc/include/mips64-linux-muslabin32/bits/ioctl.h new file mode 100644 index 000000000000..c4fbd0d8dfa2 --- /dev/null +++ b/lib/libc/include/mips64-linux-muslabin32/bits/ioctl.h @@ -0,0 +1,114 @@ +#define _IOC(a,b,c,d) ( ((a)<<29) | ((b)<<8) | (c) | ((d)<<16) ) +#define _IOC_NONE 1U +#define _IOC_READ 2U +#define _IOC_WRITE 4U + +#define _IO(a,b) _IOC(_IOC_NONE,(a),(b),0) +#define _IOW(a,b,c) _IOC(_IOC_WRITE,(a),(b),sizeof(c)) +#define _IOR(a,b,c) _IOC(_IOC_READ,(a),(b),sizeof(c)) +#define _IOWR(a,b,c) _IOC(_IOC_READ|_IOC_WRITE,(a),(b),sizeof(c)) + +#define TCGETA 0x5401 +#define TCSETA 0x5402 +#define TCSETAW 0x5403 +#define TCSETAF 0x5404 +#define TCSBRK 0x5405 +#define TCXONC 0x5406 +#define TCFLSH 0x5407 +#define TCGETS 0x540D +#define TCSETS 0x540E +#define TCSETSW 0x540F +#define TCSETSF 0x5410 + +#define TIOCEXCL 0x740D +#define TIOCNXCL 0x740E +#define TIOCOUTQ 0x7472 +#define TIOCSTI 0x5472 +#define TIOCMGET 0x741D +#define TIOCMBIS 0x741B +#define TIOCMBIC 0x741C +#define TIOCMSET 0x741A + +#define TIOCPKT 0x5470 +#define TIOCSWINSZ _IOW('t', 103, struct winsize) +#define TIOCGWINSZ _IOR('t', 104, struct winsize) +#define TIOCNOTTY 0x5471 +#define TIOCSETD 0x7401 +#define TIOCGETD 0x7400 + +#define FIOCLEX 0x6601 +#define FIONCLEX 0x6602 +#define FIOASYNC 0x667D +#define FIONBIO 0x667E +#define FIOQSIZE 0x667F + +#define TIOCGLTC 0x7474 +#define TIOCSLTC 0x7475 +#define TIOCSPGRP _IOW('t', 118, int) +#define TIOCGPGRP _IOR('t', 119, int) +#define TIOCCONS _IOW('t', 120, int) + +#define FIONREAD 0x467F +#define TIOCINQ FIONREAD + +#define TIOCGETP 0x7408 +#define TIOCSETP 0x7409 +#define TIOCSETN 0x740A + +#define TIOCSBRK 0x5427 +#define TIOCCBRK 0x5428 +#define TIOCGSID 0x7416 +#define TIOCGRS485 _IOR('T', 0x2E, char[32]) +#define TIOCSRS485 _IOWR('T', 0x2F, char[32]) +#define TIOCGPTN _IOR('T', 0x30, unsigned int) +#define TIOCSPTLCK _IOW('T', 0x31, int) +#define TIOCGDEV _IOR('T', 0x32, unsigned int) +#define TIOCSIG _IOW('T', 0x36, int) +#define TIOCVHANGUP 0x5437 +#define TIOCGPKT _IOR('T', 0x38, int) +#define TIOCGPTLCK _IOR('T', 0x39, int) +#define TIOCGEXCL _IOR('T', 0x40, int) +#define TIOCGPTPEER _IO('T', 0x41) + +#define TIOCSCTTY 0x5480 +#define TIOCGSOFTCAR 0x5481 +#define TIOCSSOFTCAR 0x5482 +#define TIOCLINUX 0x5483 +#define TIOCGSERIAL 0x5484 +#define TIOCSSERIAL 0x5485 +#define TCSBRKP 0x5486 + +#define TIOCSERCONFIG 0x5488 +#define TIOCSERGWILD 0x5489 +#define TIOCSERSWILD 0x548A +#define TIOCGLCKTRMIOS 0x548B +#define TIOCSLCKTRMIOS 0x548C +#define TIOCSERGSTRUCT 0x548D +#define TIOCSERGETLSR 0x548E +#define TIOCSERGETMULTI 0x548F +#define TIOCSERSETMULTI 0x5490 +#define TIOCMIWAIT 0x5491 +#define TIOCGICOUNT 0x5492 + +#define TIOCM_LE 0x001 +#define TIOCM_DTR 0x002 +#define TIOCM_RTS 0x004 +#define TIOCM_ST 0x010 +#define TIOCM_SR 0x020 +#define TIOCM_CTS 0x040 +#define TIOCM_CAR 0x100 +#define TIOCM_CD TIOCM_CAR +#define TIOCM_RNG 0x200 +#define TIOCM_RI TIOCM_RNG +#define TIOCM_DSR 0x400 +#define TIOCM_OUT1 0x2000 +#define TIOCM_OUT2 0x4000 +#define TIOCM_LOOP 0x8000 + +#define FIOGETOWN _IOR('f', 123, int) +#define FIOSETOWN _IOW('f', 124, int) +#define SIOCATMARK _IOR('s', 7, int) +#define SIOCSPGRP _IOW('s', 8, pid_t) +#define SIOCGPGRP _IOR('s', 9, pid_t) +#define SIOCGSTAMP _IOR(0x89, 6, char[16]) +#define SIOCGSTAMPNS _IOR(0x89, 7, char[16]) \ No newline at end of file diff --git a/lib/libc/include/mips64-linux-muslabin32/bits/ipcstat.h b/lib/libc/include/mips64-linux-muslabin32/bits/ipcstat.h new file mode 100644 index 000000000000..d055f3e83716 --- /dev/null +++ b/lib/libc/include/mips64-linux-muslabin32/bits/ipcstat.h @@ -0,0 +1 @@ +#define IPC_STAT 0x102 \ No newline at end of file diff --git a/lib/libc/include/mips64-linux-muslabin32/bits/mman.h b/lib/libc/include/mips64-linux-muslabin32/bits/mman.h new file mode 100644 index 000000000000..54231d15a778 --- /dev/null +++ b/lib/libc/include/mips64-linux-muslabin32/bits/mman.h @@ -0,0 +1,25 @@ +#undef MAP_ANON +#define MAP_ANON 0x800 +#undef MAP_NORESERVE +#define MAP_NORESERVE 0x0400 +#undef MAP_GROWSDOWN +#define MAP_GROWSDOWN 0x1000 +#undef MAP_DENYWRITE +#define MAP_DENYWRITE 0x2000 +#undef MAP_EXECUTABLE +#define MAP_EXECUTABLE 0x4000 +#undef MAP_LOCKED +#define MAP_LOCKED 0x8000 +#undef MAP_POPULATE +#define MAP_POPULATE 0x10000 +#undef MAP_NONBLOCK +#define MAP_NONBLOCK 0x20000 +#undef MAP_STACK +#define MAP_STACK 0x40000 +#undef MAP_HUGETLB +#define MAP_HUGETLB 0x80000 +#undef MAP_SYNC + +#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) +#undef MADV_SOFT_OFFLINE +#endif \ No newline at end of file diff --git a/lib/libc/include/mips64-linux-muslabin32/bits/msg.h b/lib/libc/include/mips64-linux-muslabin32/bits/msg.h new file mode 100644 index 000000000000..9e428cabd53e --- /dev/null +++ b/lib/libc/include/mips64-linux-muslabin32/bits/msg.h @@ -0,0 +1,27 @@ +struct msqid_ds { + struct ipc_perm msg_perm; +#if _MIPSEL || __MIPSEL || __MIPSEL__ + unsigned long __msg_stime_lo; + unsigned long __msg_stime_hi; + unsigned long __msg_rtime_lo; + unsigned long __msg_rtime_hi; + unsigned long __msg_ctime_lo; + unsigned long __msg_ctime_hi; +#else + unsigned long __msg_stime_hi; + unsigned long __msg_stime_lo; + unsigned long __msg_rtime_hi; + unsigned long __msg_rtime_lo; + unsigned long __msg_ctime_hi; + unsigned long __msg_ctime_lo; +#endif + unsigned long msg_cbytes; + msgqnum_t msg_qnum; + msglen_t msg_qbytes; + pid_t msg_lspid; + pid_t msg_lrpid; + unsigned long __unused[2]; + time_t msg_stime; + time_t msg_rtime; + time_t msg_ctime; +}; \ No newline at end of file diff --git a/lib/libc/include/mips64-linux-muslabin32/bits/poll.h b/lib/libc/include/mips64-linux-muslabin32/bits/poll.h new file mode 100644 index 000000000000..cefdd9be80a1 --- /dev/null +++ b/lib/libc/include/mips64-linux-muslabin32/bits/poll.h @@ -0,0 +1,2 @@ +#define POLLWRNORM POLLOUT +#define POLLWRBAND 0x100 \ No newline at end of file diff --git a/lib/libc/include/mips64-linux-muslabin32/bits/ptrace.h b/lib/libc/include/mips64-linux-muslabin32/bits/ptrace.h new file mode 100644 index 000000000000..275462def0c5 --- /dev/null +++ b/lib/libc/include/mips64-linux-muslabin32/bits/ptrace.h @@ -0,0 +1,9 @@ +#define PTRACE_GET_THREAD_AREA 25 +#define PTRACE_SET_THREAD_AREA 26 +#define PTRACE_PEEKTEXT_3264 0xc0 +#define PTRACE_PEEKDATA_3264 0xc1 +#define PTRACE_POKETEXT_3264 0xc2 +#define PTRACE_POKEDATA_3264 0xc3 +#define PTRACE_GET_THREAD_AREA_3264 0xc4 +#define PTRACE_GET_WATCH_REGS 0xd0 +#define PTRACE_SET_WATCH_REGS 0xd1 \ No newline at end of file diff --git a/lib/libc/include/mips64-linux-muslabin32/bits/reg.h b/lib/libc/include/mips64-linux-muslabin32/bits/reg.h new file mode 100644 index 000000000000..e40c44d38407 --- /dev/null +++ b/lib/libc/include/mips64-linux-muslabin32/bits/reg.h @@ -0,0 +1,47 @@ +#undef __WORDSIZE +#define __WORDSIZE 64 + +#define EF_R0 0 +#define EF_R1 1 +#define EF_R2 2 +#define EF_R3 3 +#define EF_R4 4 +#define EF_R5 5 +#define EF_R6 6 +#define EF_R7 7 +#define EF_R8 8 +#define EF_R9 9 +#define EF_R10 10 +#define EF_R11 11 +#define EF_R12 12 +#define EF_R13 13 +#define EF_R14 14 +#define EF_R15 15 +#define EF_R16 16 +#define EF_R17 17 +#define EF_R18 18 +#define EF_R19 19 +#define EF_R20 20 +#define EF_R21 21 +#define EF_R22 22 +#define EF_R23 23 +#define EF_R24 24 +#define EF_R25 25 + +#define EF_R26 26 +#define EF_R27 27 +#define EF_R28 28 +#define EF_R29 29 +#define EF_R30 30 +#define EF_R31 31 + +#define EF_LO 32 +#define EF_HI 33 + +#define EF_CP0_EPC 34 +#define EF_CP0_BADVADDR 35 +#define EF_CP0_STATUS 36 +#define EF_CP0_CAUSE 37 +#define EF_UNUSED0 38 + +#define EF_SIZE 304 \ No newline at end of file diff --git a/lib/libc/include/mips64-linux-muslabin32/bits/resource.h b/lib/libc/include/mips64-linux-muslabin32/bits/resource.h new file mode 100644 index 000000000000..ef7ada7cb19f --- /dev/null +++ b/lib/libc/include/mips64-linux-muslabin32/bits/resource.h @@ -0,0 +1,5 @@ +#define RLIMIT_NOFILE 5 +#define RLIMIT_AS 6 +#define RLIMIT_RSS 7 +#define RLIMIT_NPROC 8 +#define RLIMIT_MEMLOCK 9 \ No newline at end of file diff --git a/lib/libc/include/mips64-linux-muslabin32/bits/sem.h b/lib/libc/include/mips64-linux-muslabin32/bits/sem.h new file mode 100644 index 000000000000..87b05d488d13 --- /dev/null +++ b/lib/libc/include/mips64-linux-muslabin32/bits/sem.h @@ -0,0 +1,16 @@ +struct semid_ds { + struct ipc_perm sem_perm; + unsigned long __sem_otime_lo; + unsigned long __sem_ctime_lo; +#if __BYTE_ORDER == __LITTLE_ENDIAN + unsigned short sem_nsems; + char __sem_nsems_pad[sizeof(long)-sizeof(short)]; +#else + char __sem_nsems_pad[sizeof(long)-sizeof(short)]; + unsigned short sem_nsems; +#endif + unsigned long __sem_otime_hi; + unsigned long __sem_ctime_hi; + time_t sem_otime; + time_t sem_ctime; +}; \ No newline at end of file diff --git a/lib/libc/include/mips64-linux-muslabin32/bits/shm.h b/lib/libc/include/mips64-linux-muslabin32/bits/shm.h new file mode 100644 index 000000000000..4e5357d24f3d --- /dev/null +++ b/lib/libc/include/mips64-linux-muslabin32/bits/shm.h @@ -0,0 +1,29 @@ +#define SHMLBA 4096 + +struct shmid_ds { + struct ipc_perm shm_perm; + size_t shm_segsz; + unsigned long __shm_atime_lo; + unsigned long __shm_dtime_lo; + unsigned long __shm_ctime_lo; + pid_t shm_cpid; + pid_t shm_lpid; + unsigned long shm_nattch; + unsigned short __shm_atime_hi; + unsigned short __shm_dtime_hi; + unsigned short __shm_ctime_hi; + unsigned short __pad1; + time_t shm_atime; + time_t shm_dtime; + time_t shm_ctime; +}; + +struct shminfo { + unsigned long shmmax, shmmin, shmmni, shmseg, shmall, __unused[4]; +}; + +struct shm_info { + int __used_ids; + unsigned long shm_tot, shm_rss, shm_swp; + unsigned long __swap_attempts, __swap_successes; +}; \ No newline at end of file diff --git a/lib/libc/include/mips64-linux-muslabin32/bits/socket.h b/lib/libc/include/mips64-linux-muslabin32/bits/socket.h new file mode 100644 index 000000000000..751f71fc475d --- /dev/null +++ b/lib/libc/include/mips64-linux-muslabin32/bits/socket.h @@ -0,0 +1,35 @@ +#define SOCK_STREAM 2 +#define SOCK_DGRAM 1 + +#define SOL_SOCKET 65535 + +#define SO_DEBUG 1 + +#define SO_REUSEADDR 0x0004 +#define SO_KEEPALIVE 0x0008 +#define SO_DONTROUTE 0x0010 +#define SO_BROADCAST 0x0020 +#define SO_LINGER 0x0080 +#define SO_OOBINLINE 0x0100 +#define SO_REUSEPORT 0x0200 +#define SO_SNDBUF 0x1001 +#define SO_RCVBUF 0x1002 +#define SO_SNDLOWAT 0x1003 +#define SO_RCVLOWAT 0x1004 +#define SO_ERROR 0x1007 +#define SO_TYPE 0x1008 +#define SO_ACCEPTCONN 0x1009 +#define SO_PROTOCOL 0x1028 +#define SO_DOMAIN 0x1029 + +#define SO_NO_CHECK 11 +#define SO_PRIORITY 12 +#define SO_BSDCOMPAT 14 +#define SO_PASSCRED 17 +#define SO_PEERCRED 18 +#define SO_PEERSEC 30 +#define SO_SNDBUFFORCE 31 +#define SO_RCVBUFFORCE 33 + +#define SOCK_NONBLOCK 0200 +#define SOCK_CLOEXEC 02000000 \ No newline at end of file diff --git a/lib/libc/include/mips64-linux-muslabin32/bits/stat.h b/lib/libc/include/mips64-linux-muslabin32/bits/stat.h new file mode 100644 index 000000000000..31dcbd46cbf3 --- /dev/null +++ b/lib/libc/include/mips64-linux-muslabin32/bits/stat.h @@ -0,0 +1,23 @@ +struct stat { + dev_t st_dev; + long __pad1[2]; + ino_t st_ino; + mode_t st_mode; + nlink_t st_nlink; + uid_t st_uid; + gid_t st_gid; + dev_t st_rdev; + long __pad2[2]; + off_t st_size; + struct { + long tv_sec; + long tv_nsec; + } __st_atim32, __st_mtim32, __st_ctim32; + blksize_t st_blksize; + long __pad3; + blkcnt_t st_blocks; + struct timespec st_atim; + struct timespec st_mtim; + struct timespec st_ctim; + long __pad4[2]; +}; \ No newline at end of file diff --git a/lib/libc/include/mips64-linux-muslabin32/bits/statfs.h b/lib/libc/include/mips64-linux-muslabin32/bits/statfs.h new file mode 100644 index 000000000000..8fdd34ef66b9 --- /dev/null +++ b/lib/libc/include/mips64-linux-muslabin32/bits/statfs.h @@ -0,0 +1,8 @@ +struct statfs { + unsigned long f_type, f_bsize, f_frsize; + fsblkcnt_t f_blocks, f_bfree; + fsfilcnt_t f_files, f_ffree; + fsblkcnt_t f_bavail; + fsid_t f_fsid; + unsigned long f_namelen, f_flags, f_spare[5]; +}; \ No newline at end of file diff --git a/lib/libc/include/mips64-linux-muslabin32/bits/syscall.h b/lib/libc/include/mips64-linux-muslabin32/bits/syscall.h new file mode 100644 index 000000000000..2fa9aa090fa4 --- /dev/null +++ b/lib/libc/include/mips64-linux-muslabin32/bits/syscall.h @@ -0,0 +1,759 @@ +#define __NR_read 6000 +#define __NR_write 6001 +#define __NR_open 6002 +#define __NR_close 6003 +#define __NR_stat 6004 +#define __NR_fstat 6005 +#define __NR_lstat 6006 +#define __NR_poll 6007 +#define __NR_lseek 6008 +#define __NR_mmap 6009 +#define __NR_mprotect 6010 +#define __NR_munmap 6011 +#define __NR_brk 6012 +#define __NR_rt_sigaction 6013 +#define __NR_rt_sigprocmask 6014 +#define __NR_ioctl 6015 +#define __NR_pread64 6016 +#define __NR_pwrite64 6017 +#define __NR_readv 6018 +#define __NR_writev 6019 +#define __NR_access 6020 +#define __NR_pipe 6021 +#define __NR__newselect 6022 +#define __NR_sched_yield 6023 +#define __NR_mremap 6024 +#define __NR_msync 6025 +#define __NR_mincore 6026 +#define __NR_madvise 6027 +#define __NR_shmget 6028 +#define __NR_shmat 6029 +#define __NR_shmctl 6030 +#define __NR_dup 6031 +#define __NR_dup2 6032 +#define __NR_pause 6033 +#define __NR_nanosleep 6034 +#define __NR_getitimer 6035 +#define __NR_setitimer 6036 +#define __NR_alarm 6037 +#define __NR_getpid 6038 +#define __NR_sendfile 6039 +#define __NR_socket 6040 +#define __NR_connect 6041 +#define __NR_accept 6042 +#define __NR_sendto 6043 +#define __NR_recvfrom 6044 +#define __NR_sendmsg 6045 +#define __NR_recvmsg 6046 +#define __NR_shutdown 6047 +#define __NR_bind 6048 +#define __NR_listen 6049 +#define __NR_getsockname 6050 +#define __NR_getpeername 6051 +#define __NR_socketpair 6052 +#define __NR_setsockopt 6053 +#define __NR_getsockopt 6054 +#define __NR_clone 6055 +#define __NR_fork 6056 +#define __NR_execve 6057 +#define __NR_exit 6058 +#define __NR_wait4 6059 +#define __NR_kill 6060 +#define __NR_uname 6061 +#define __NR_semget 6062 +#define __NR_semop 6063 +#define __NR_semctl 6064 +#define __NR_shmdt 6065 +#define __NR_msgget 6066 +#define __NR_msgsnd 6067 +#define __NR_msgrcv 6068 +#define __NR_msgctl 6069 +#define __NR_fcntl 6070 +#define __NR_flock 6071 +#define __NR_fsync 6072 +#define __NR_fdatasync 6073 +#define __NR_truncate 6074 +#define __NR_ftruncate 6075 +#define __NR_getdents 6076 +#define __NR_getcwd 6077 +#define __NR_chdir 6078 +#define __NR_fchdir 6079 +#define __NR_rename 6080 +#define __NR_mkdir 6081 +#define __NR_rmdir 6082 +#define __NR_creat 6083 +#define __NR_link 6084 +#define __NR_unlink 6085 +#define __NR_symlink 6086 +#define __NR_readlink 6087 +#define __NR_chmod 6088 +#define __NR_fchmod 6089 +#define __NR_chown 6090 +#define __NR_fchown 6091 +#define __NR_lchown 6092 +#define __NR_umask 6093 +#define __NR_gettimeofday_time32 6094 +#define __NR_getrlimit 6095 +#define __NR_getrusage 6096 +#define __NR_sysinfo 6097 +#define __NR_times 6098 +#define __NR_ptrace 6099 +#define __NR_getuid 6100 +#define __NR_syslog 6101 +#define __NR_getgid 6102 +#define __NR_setuid 6103 +#define __NR_setgid 6104 +#define __NR_geteuid 6105 +#define __NR_getegid 6106 +#define __NR_setpgid 6107 +#define __NR_getppid 6108 +#define __NR_getpgrp 6109 +#define __NR_setsid 6110 +#define __NR_setreuid 6111 +#define __NR_setregid 6112 +#define __NR_getgroups 6113 +#define __NR_setgroups 6114 +#define __NR_setresuid 6115 +#define __NR_getresuid 6116 +#define __NR_setresgid 6117 +#define __NR_getresgid 6118 +#define __NR_getpgid 6119 +#define __NR_setfsuid 6120 +#define __NR_setfsgid 6121 +#define __NR_getsid 6122 +#define __NR_capget 6123 +#define __NR_capset 6124 +#define __NR_rt_sigpending 6125 +#define __NR_rt_sigtimedwait 6126 +#define __NR_rt_sigqueueinfo 6127 +#define __NR_rt_sigsuspend 6128 +#define __NR_sigaltstack 6129 +#define __NR_utime 6130 +#define __NR_mknod 6131 +#define __NR_personality 6132 +#define __NR_ustat 6133 +#define __NR_statfs 6134 +#define __NR_fstatfs 6135 +#define __NR_sysfs 6136 +#define __NR_getpriority 6137 +#define __NR_setpriority 6138 +#define __NR_sched_setparam 6139 +#define __NR_sched_getparam 6140 +#define __NR_sched_setscheduler 6141 +#define __NR_sched_getscheduler 6142 +#define __NR_sched_get_priority_max 6143 +#define __NR_sched_get_priority_min 6144 +#define __NR_sched_rr_get_interval 6145 +#define __NR_mlock 6146 +#define __NR_munlock 6147 +#define __NR_mlockall 6148 +#define __NR_munlockall 6149 +#define __NR_vhangup 6150 +#define __NR_pivot_root 6151 +#define __NR__sysctl 6152 +#define __NR_prctl 6153 +#define __NR_adjtimex 6154 +#define __NR_setrlimit 6155 +#define __NR_chroot 6156 +#define __NR_sync 6157 +#define __NR_acct 6158 +#define __NR_settimeofday_time32 6159 +#define __NR_mount 6160 +#define __NR_umount2 6161 +#define __NR_swapon 6162 +#define __NR_swapoff 6163 +#define __NR_reboot 6164 +#define __NR_sethostname 6165 +#define __NR_setdomainname 6166 +#define __NR_create_module 6167 +#define __NR_init_module 6168 +#define __NR_delete_module 6169 +#define __NR_get_kernel_syms 6170 +#define __NR_query_module 6171 +#define __NR_quotactl 6172 +#define __NR_nfsservctl 6173 +#define __NR_getpmsg 6174 +#define __NR_putpmsg 6175 +#define __NR_afs_syscall 6176 +#define __NR_reserved177 6177 +#define __NR_gettid 6178 +#define __NR_readahead 6179 +#define __NR_setxattr 6180 +#define __NR_lsetxattr 6181 +#define __NR_fsetxattr 6182 +#define __NR_getxattr 6183 +#define __NR_lgetxattr 6184 +#define __NR_fgetxattr 6185 +#define __NR_listxattr 6186 +#define __NR_llistxattr 6187 +#define __NR_flistxattr 6188 +#define __NR_removexattr 6189 +#define __NR_lremovexattr 6190 +#define __NR_fremovexattr 6191 +#define __NR_tkill 6192 +#define __NR_reserved193 6193 +#define __NR_futex 6194 +#define __NR_sched_setaffinity 6195 +#define __NR_sched_getaffinity 6196 +#define __NR_cacheflush 6197 +#define __NR_cachectl 6198 +#define __NR_sysmips 6199 +#define __NR_io_setup 6200 +#define __NR_io_destroy 6201 +#define __NR_io_getevents 6202 +#define __NR_io_submit 6203 +#define __NR_io_cancel 6204 +#define __NR_exit_group 6205 +#define __NR_lookup_dcookie 6206 +#define __NR_epoll_create 6207 +#define __NR_epoll_ctl 6208 +#define __NR_epoll_wait 6209 +#define __NR_remap_file_pages 6210 +#define __NR_rt_sigreturn 6211 +#define __NR_fcntl64 6212 +#define __NR_set_tid_address 6213 +#define __NR_restart_syscall 6214 +#define __NR_semtimedop 6215 +#define __NR_fadvise64 6216 +#define __NR_statfs64 6217 +#define __NR_fstatfs64 6218 +#define __NR_sendfile64 6219 +#define __NR_timer_create 6220 +#define __NR_timer_settime32 6221 +#define __NR_timer_gettime32 6222 +#define __NR_timer_getoverrun 6223 +#define __NR_timer_delete 6224 +#define __NR_clock_settime32 6225 +#define __NR_clock_gettime32 6226 +#define __NR_clock_getres_time32 6227 +#define __NR_clock_nanosleep_time32 6228 +#define __NR_tgkill 6229 +#define __NR_utimes 6230 +#define __NR_mbind 6231 +#define __NR_get_mempolicy 6232 +#define __NR_set_mempolicy 6233 +#define __NR_mq_open 6234 +#define __NR_mq_unlink 6235 +#define __NR_mq_timedsend 6236 +#define __NR_mq_timedreceive 6237 +#define __NR_mq_notify 6238 +#define __NR_mq_getsetattr 6239 +#define __NR_vserver 6240 +#define __NR_waitid 6241 +#define __NR_add_key 6243 +#define __NR_request_key 6244 +#define __NR_keyctl 6245 +#define __NR_set_thread_area 6246 +#define __NR_inotify_init 6247 +#define __NR_inotify_add_watch 6248 +#define __NR_inotify_rm_watch 6249 +#define __NR_migrate_pages 6250 +#define __NR_openat 6251 +#define __NR_mkdirat 6252 +#define __NR_mknodat 6253 +#define __NR_fchownat 6254 +#define __NR_futimesat 6255 +#define __NR_newfstatat 6256 +#define __NR_unlinkat 6257 +#define __NR_renameat 6258 +#define __NR_linkat 6259 +#define __NR_symlinkat 6260 +#define __NR_readlinkat 6261 +#define __NR_fchmodat 6262 +#define __NR_faccessat 6263 +#define __NR_pselect6 6264 +#define __NR_ppoll 6265 +#define __NR_unshare 6266 +#define __NR_splice 6267 +#define __NR_sync_file_range 6268 +#define __NR_tee 6269 +#define __NR_vmsplice 6270 +#define __NR_move_pages 6271 +#define __NR_set_robust_list 6272 +#define __NR_get_robust_list 6273 +#define __NR_kexec_load 6274 +#define __NR_getcpu 6275 +#define __NR_epoll_pwait 6276 +#define __NR_ioprio_set 6277 +#define __NR_ioprio_get 6278 +#define __NR_utimensat 6279 +#define __NR_signalfd 6280 +#define __NR_timerfd 6281 +#define __NR_eventfd 6282 +#define __NR_fallocate 6283 +#define __NR_timerfd_create 6284 +#define __NR_timerfd_gettime32 6285 +#define __NR_timerfd_settime32 6286 +#define __NR_signalfd4 6287 +#define __NR_eventfd2 6288 +#define __NR_epoll_create1 6289 +#define __NR_dup3 6290 +#define __NR_pipe2 6291 +#define __NR_inotify_init1 6292 +#define __NR_preadv 6293 +#define __NR_pwritev 6294 +#define __NR_rt_tgsigqueueinfo 6295 +#define __NR_perf_event_open 6296 +#define __NR_accept4 6297 +#define __NR_recvmmsg 6298 +#define __NR_getdents64 6299 +#define __NR_fanotify_init 6300 +#define __NR_fanotify_mark 6301 +#define __NR_prlimit64 6302 +#define __NR_name_to_handle_at 6303 +#define __NR_open_by_handle_at 6304 +#define __NR_clock_adjtime 6305 +#define __NR_syncfs 6306 +#define __NR_sendmmsg 6307 +#define __NR_setns 6308 +#define __NR_process_vm_readv 6309 +#define __NR_process_vm_writev 6310 +#define __NR_kcmp 6311 +#define __NR_finit_module 6312 +#define __NR_sched_setattr 6313 +#define __NR_sched_getattr 6314 +#define __NR_renameat2 6315 +#define __NR_seccomp 6316 +#define __NR_getrandom 6317 +#define __NR_memfd_create 6318 +#define __NR_bpf 6319 +#define __NR_execveat 6320 +#define __NR_userfaultfd 6321 +#define __NR_membarrier 6322 +#define __NR_mlock2 6323 +#define __NR_copy_file_range 6324 +#define __NR_preadv2 6325 +#define __NR_pwritev2 6326 +#define __NR_pkey_mprotect 6327 +#define __NR_pkey_alloc 6328 +#define __NR_pkey_free 6329 +#define __NR_statx 6330 +#define __NR_rseq 6331 +#define __NR_io_pgetevents 6332 +#define __NR_clock_gettime64 6403 +#define __NR_clock_settime64 6404 +#define __NR_clock_adjtime64 6405 +#define __NR_clock_getres_time64 6406 +#define __NR_clock_nanosleep_time64 6407 +#define __NR_timer_gettime64 6408 +#define __NR_timer_settime64 6409 +#define __NR_timerfd_gettime64 6410 +#define __NR_timerfd_settime64 6411 +#define __NR_utimensat_time64 6412 +#define __NR_pselect6_time64 6413 +#define __NR_ppoll_time64 6414 +#define __NR_io_pgetevents_time64 6416 +#define __NR_recvmmsg_time64 6417 +#define __NR_mq_timedsend_time64 6418 +#define __NR_mq_timedreceive_time64 6419 +#define __NR_semtimedop_time64 6420 +#define __NR_rt_sigtimedwait_time64 6421 +#define __NR_futex_time64 6422 +#define __NR_sched_rr_get_interval_time64 6423 +#define __NR_pidfd_send_signal 6424 +#define __NR_io_uring_setup 6425 +#define __NR_io_uring_enter 6426 +#define __NR_io_uring_register 6427 +#define __NR_open_tree 6428 +#define __NR_move_mount 6429 +#define __NR_fsopen 6430 +#define __NR_fsconfig 6431 +#define __NR_fsmount 6432 +#define __NR_fspick 6433 +#define __NR_pidfd_open 6434 +#define __NR_clone3 6435 +#define __NR_close_range 6436 +#define __NR_openat2 6437 +#define __NR_pidfd_getfd 6438 +#define __NR_faccessat2 6439 +#define __NR_process_madvise 6440 +#define __NR_epoll_pwait2 6441 +#define __NR_mount_setattr 6442 +#define __NR_landlock_create_ruleset 6444 +#define __NR_landlock_add_rule 6445 +#define __NR_landlock_restrict_self 6446 +#define __NR_process_mrelease 6448 +#define __NR_futex_waitv 6449 +#define __NR_set_mempolicy_home_node 6450 +#define __NR_cachestat 6451 +#define __NR_fchmodat2 6452 + +#define SYS_read 6000 +#define SYS_write 6001 +#define SYS_open 6002 +#define SYS_close 6003 +#define SYS_stat 6004 +#define SYS_fstat 6005 +#define SYS_lstat 6006 +#define SYS_poll 6007 +#define SYS_lseek 6008 +#define SYS_mmap 6009 +#define SYS_mprotect 6010 +#define SYS_munmap 6011 +#define SYS_brk 6012 +#define SYS_rt_sigaction 6013 +#define SYS_rt_sigprocmask 6014 +#define SYS_ioctl 6015 +#define SYS_pread64 6016 +#define SYS_pwrite64 6017 +#define SYS_readv 6018 +#define SYS_writev 6019 +#define SYS_access 6020 +#define SYS_pipe 6021 +#define SYS__newselect 6022 +#define SYS_sched_yield 6023 +#define SYS_mremap 6024 +#define SYS_msync 6025 +#define SYS_mincore 6026 +#define SYS_madvise 6027 +#define SYS_shmget 6028 +#define SYS_shmat 6029 +#define SYS_shmctl 6030 +#define SYS_dup 6031 +#define SYS_dup2 6032 +#define SYS_pause 6033 +#define SYS_nanosleep 6034 +#define SYS_getitimer 6035 +#define SYS_setitimer 6036 +#define SYS_alarm 6037 +#define SYS_getpid 6038 +#define SYS_sendfile 6039 +#define SYS_socket 6040 +#define SYS_connect 6041 +#define SYS_accept 6042 +#define SYS_sendto 6043 +#define SYS_recvfrom 6044 +#define SYS_sendmsg 6045 +#define SYS_recvmsg 6046 +#define SYS_shutdown 6047 +#define SYS_bind 6048 +#define SYS_listen 6049 +#define SYS_getsockname 6050 +#define SYS_getpeername 6051 +#define SYS_socketpair 6052 +#define SYS_setsockopt 6053 +#define SYS_getsockopt 6054 +#define SYS_clone 6055 +#define SYS_fork 6056 +#define SYS_execve 6057 +#define SYS_exit 6058 +#define SYS_wait4 6059 +#define SYS_kill 6060 +#define SYS_uname 6061 +#define SYS_semget 6062 +#define SYS_semop 6063 +#define SYS_semctl 6064 +#define SYS_shmdt 6065 +#define SYS_msgget 6066 +#define SYS_msgsnd 6067 +#define SYS_msgrcv 6068 +#define SYS_msgctl 6069 +#define SYS_fcntl 6070 +#define SYS_flock 6071 +#define SYS_fsync 6072 +#define SYS_fdatasync 6073 +#define SYS_truncate 6074 +#define SYS_ftruncate 6075 +#define SYS_getdents 6076 +#define SYS_getcwd 6077 +#define SYS_chdir 6078 +#define SYS_fchdir 6079 +#define SYS_rename 6080 +#define SYS_mkdir 6081 +#define SYS_rmdir 6082 +#define SYS_creat 6083 +#define SYS_link 6084 +#define SYS_unlink 6085 +#define SYS_symlink 6086 +#define SYS_readlink 6087 +#define SYS_chmod 6088 +#define SYS_fchmod 6089 +#define SYS_chown 6090 +#define SYS_fchown 6091 +#define SYS_lchown 6092 +#define SYS_umask 6093 +#define SYS_gettimeofday_time32 6094 +#define SYS_getrlimit 6095 +#define SYS_getrusage 6096 +#define SYS_sysinfo 6097 +#define SYS_times 6098 +#define SYS_ptrace 6099 +#define SYS_getuid 6100 +#define SYS_syslog 6101 +#define SYS_getgid 6102 +#define SYS_setuid 6103 +#define SYS_setgid 6104 +#define SYS_geteuid 6105 +#define SYS_getegid 6106 +#define SYS_setpgid 6107 +#define SYS_getppid 6108 +#define SYS_getpgrp 6109 +#define SYS_setsid 6110 +#define SYS_setreuid 6111 +#define SYS_setregid 6112 +#define SYS_getgroups 6113 +#define SYS_setgroups 6114 +#define SYS_setresuid 6115 +#define SYS_getresuid 6116 +#define SYS_setresgid 6117 +#define SYS_getresgid 6118 +#define SYS_getpgid 6119 +#define SYS_setfsuid 6120 +#define SYS_setfsgid 6121 +#define SYS_getsid 6122 +#define SYS_capget 6123 +#define SYS_capset 6124 +#define SYS_rt_sigpending 6125 +#define SYS_rt_sigtimedwait 6126 +#define SYS_rt_sigqueueinfo 6127 +#define SYS_rt_sigsuspend 6128 +#define SYS_sigaltstack 6129 +#define SYS_utime 6130 +#define SYS_mknod 6131 +#define SYS_personality 6132 +#define SYS_ustat 6133 +#define SYS_statfs 6134 +#define SYS_fstatfs 6135 +#define SYS_sysfs 6136 +#define SYS_getpriority 6137 +#define SYS_setpriority 6138 +#define SYS_sched_setparam 6139 +#define SYS_sched_getparam 6140 +#define SYS_sched_setscheduler 6141 +#define SYS_sched_getscheduler 6142 +#define SYS_sched_get_priority_max 6143 +#define SYS_sched_get_priority_min 6144 +#define SYS_sched_rr_get_interval 6145 +#define SYS_mlock 6146 +#define SYS_munlock 6147 +#define SYS_mlockall 6148 +#define SYS_munlockall 6149 +#define SYS_vhangup 6150 +#define SYS_pivot_root 6151 +#define SYS__sysctl 6152 +#define SYS_prctl 6153 +#define SYS_adjtimex 6154 +#define SYS_setrlimit 6155 +#define SYS_chroot 6156 +#define SYS_sync 6157 +#define SYS_acct 6158 +#define SYS_settimeofday_time32 6159 +#define SYS_mount 6160 +#define SYS_umount2 6161 +#define SYS_swapon 6162 +#define SYS_swapoff 6163 +#define SYS_reboot 6164 +#define SYS_sethostname 6165 +#define SYS_setdomainname 6166 +#define SYS_create_module 6167 +#define SYS_init_module 6168 +#define SYS_delete_module 6169 +#define SYS_get_kernel_syms 6170 +#define SYS_query_module 6171 +#define SYS_quotactl 6172 +#define SYS_nfsservctl 6173 +#define SYS_getpmsg 6174 +#define SYS_putpmsg 6175 +#define SYS_afs_syscall 6176 +#define SYS_reserved177 6177 +#define SYS_gettid 6178 +#define SYS_readahead 6179 +#define SYS_setxattr 6180 +#define SYS_lsetxattr 6181 +#define SYS_fsetxattr 6182 +#define SYS_getxattr 6183 +#define SYS_lgetxattr 6184 +#define SYS_fgetxattr 6185 +#define SYS_listxattr 6186 +#define SYS_llistxattr 6187 +#define SYS_flistxattr 6188 +#define SYS_removexattr 6189 +#define SYS_lremovexattr 6190 +#define SYS_fremovexattr 6191 +#define SYS_tkill 6192 +#define SYS_reserved193 6193 +#define SYS_futex 6194 +#define SYS_sched_setaffinity 6195 +#define SYS_sched_getaffinity 6196 +#define SYS_cacheflush 6197 +#define SYS_cachectl 6198 +#define SYS_sysmips 6199 +#define SYS_io_setup 6200 +#define SYS_io_destroy 6201 +#define SYS_io_getevents 6202 +#define SYS_io_submit 6203 +#define SYS_io_cancel 6204 +#define SYS_exit_group 6205 +#define SYS_lookup_dcookie 6206 +#define SYS_epoll_create 6207 +#define SYS_epoll_ctl 6208 +#define SYS_epoll_wait 6209 +#define SYS_remap_file_pages 6210 +#define SYS_rt_sigreturn 6211 +#define SYS_fcntl64 6212 +#define SYS_set_tid_address 6213 +#define SYS_restart_syscall 6214 +#define SYS_semtimedop 6215 +#define SYS_fadvise64 6216 +#define SYS_statfs64 6217 +#define SYS_fstatfs64 6218 +#define SYS_sendfile64 6219 +#define SYS_timer_create 6220 +#define SYS_timer_settime32 6221 +#define SYS_timer_gettime32 6222 +#define SYS_timer_getoverrun 6223 +#define SYS_timer_delete 6224 +#define SYS_clock_settime32 6225 +#define SYS_clock_gettime32 6226 +#define SYS_clock_getres_time32 6227 +#define SYS_clock_nanosleep_time32 6228 +#define SYS_tgkill 6229 +#define SYS_utimes 6230 +#define SYS_mbind 6231 +#define SYS_get_mempolicy 6232 +#define SYS_set_mempolicy 6233 +#define SYS_mq_open 6234 +#define SYS_mq_unlink 6235 +#define SYS_mq_timedsend 6236 +#define SYS_mq_timedreceive 6237 +#define SYS_mq_notify 6238 +#define SYS_mq_getsetattr 6239 +#define SYS_vserver 6240 +#define SYS_waitid 6241 +#define SYS_add_key 6243 +#define SYS_request_key 6244 +#define SYS_keyctl 6245 +#define SYS_set_thread_area 6246 +#define SYS_inotify_init 6247 +#define SYS_inotify_add_watch 6248 +#define SYS_inotify_rm_watch 6249 +#define SYS_migrate_pages 6250 +#define SYS_openat 6251 +#define SYS_mkdirat 6252 +#define SYS_mknodat 6253 +#define SYS_fchownat 6254 +#define SYS_futimesat 6255 +#define SYS_newfstatat 6256 +#define SYS_unlinkat 6257 +#define SYS_renameat 6258 +#define SYS_linkat 6259 +#define SYS_symlinkat 6260 +#define SYS_readlinkat 6261 +#define SYS_fchmodat 6262 +#define SYS_faccessat 6263 +#define SYS_pselect6 6264 +#define SYS_ppoll 6265 +#define SYS_unshare 6266 +#define SYS_splice 6267 +#define SYS_sync_file_range 6268 +#define SYS_tee 6269 +#define SYS_vmsplice 6270 +#define SYS_move_pages 6271 +#define SYS_set_robust_list 6272 +#define SYS_get_robust_list 6273 +#define SYS_kexec_load 6274 +#define SYS_getcpu 6275 +#define SYS_epoll_pwait 6276 +#define SYS_ioprio_set 6277 +#define SYS_ioprio_get 6278 +#define SYS_utimensat 6279 +#define SYS_signalfd 6280 +#define SYS_timerfd 6281 +#define SYS_eventfd 6282 +#define SYS_fallocate 6283 +#define SYS_timerfd_create 6284 +#define SYS_timerfd_gettime32 6285 +#define SYS_timerfd_settime32 6286 +#define SYS_signalfd4 6287 +#define SYS_eventfd2 6288 +#define SYS_epoll_create1 6289 +#define SYS_dup3 6290 +#define SYS_pipe2 6291 +#define SYS_inotify_init1 6292 +#define SYS_preadv 6293 +#define SYS_pwritev 6294 +#define SYS_rt_tgsigqueueinfo 6295 +#define SYS_perf_event_open 6296 +#define SYS_accept4 6297 +#define SYS_recvmmsg 6298 +#define SYS_getdents64 6299 +#define SYS_fanotify_init 6300 +#define SYS_fanotify_mark 6301 +#define SYS_prlimit64 6302 +#define SYS_name_to_handle_at 6303 +#define SYS_open_by_handle_at 6304 +#define SYS_clock_adjtime 6305 +#define SYS_syncfs 6306 +#define SYS_sendmmsg 6307 +#define SYS_setns 6308 +#define SYS_process_vm_readv 6309 +#define SYS_process_vm_writev 6310 +#define SYS_kcmp 6311 +#define SYS_finit_module 6312 +#define SYS_sched_setattr 6313 +#define SYS_sched_getattr 6314 +#define SYS_renameat2 6315 +#define SYS_seccomp 6316 +#define SYS_getrandom 6317 +#define SYS_memfd_create 6318 +#define SYS_bpf 6319 +#define SYS_execveat 6320 +#define SYS_userfaultfd 6321 +#define SYS_membarrier 6322 +#define SYS_mlock2 6323 +#define SYS_copy_file_range 6324 +#define SYS_preadv2 6325 +#define SYS_pwritev2 6326 +#define SYS_pkey_mprotect 6327 +#define SYS_pkey_alloc 6328 +#define SYS_pkey_free 6329 +#define SYS_statx 6330 +#define SYS_rseq 6331 +#define SYS_io_pgetevents 6332 +#define SYS_clock_gettime64 6403 +#define SYS_clock_settime64 6404 +#define SYS_clock_adjtime64 6405 +#define SYS_clock_getres_time64 6406 +#define SYS_clock_nanosleep_time64 6407 +#define SYS_timer_gettime64 6408 +#define SYS_timer_settime64 6409 +#define SYS_timerfd_gettime64 6410 +#define SYS_timerfd_settime64 6411 +#define SYS_utimensat_time64 6412 +#define SYS_pselect6_time64 6413 +#define SYS_ppoll_time64 6414 +#define SYS_io_pgetevents_time64 6416 +#define SYS_recvmmsg_time64 6417 +#define SYS_mq_timedsend_time64 6418 +#define SYS_mq_timedreceive_time64 6419 +#define SYS_semtimedop_time64 6420 +#define SYS_rt_sigtimedwait_time64 6421 +#define SYS_futex_time64 6422 +#define SYS_sched_rr_get_interval_time64 6423 +#define SYS_pidfd_send_signal 6424 +#define SYS_io_uring_setup 6425 +#define SYS_io_uring_enter 6426 +#define SYS_io_uring_register 6427 +#define SYS_open_tree 6428 +#define SYS_move_mount 6429 +#define SYS_fsopen 6430 +#define SYS_fsconfig 6431 +#define SYS_fsmount 6432 +#define SYS_fspick 6433 +#define SYS_pidfd_open 6434 +#define SYS_clone3 6435 +#define SYS_close_range 6436 +#define SYS_openat2 6437 +#define SYS_pidfd_getfd 6438 +#define SYS_faccessat2 6439 +#define SYS_process_madvise 6440 +#define SYS_epoll_pwait2 6441 +#define SYS_mount_setattr 6442 +#define SYS_landlock_create_ruleset 6444 +#define SYS_landlock_add_rule 6445 +#define SYS_landlock_restrict_self 6446 +#define SYS_process_mrelease 6448 +#define SYS_futex_waitv 6449 +#define SYS_set_mempolicy_home_node 6450 +#define SYS_cachestat 6451 +#define SYS_fchmodat2 6452 \ No newline at end of file diff --git a/lib/libc/include/mips64-linux-muslabin32/bits/termios.h b/lib/libc/include/mips64-linux-muslabin32/bits/termios.h new file mode 100644 index 000000000000..0940ce20fbb7 --- /dev/null +++ b/lib/libc/include/mips64-linux-muslabin32/bits/termios.h @@ -0,0 +1,169 @@ +struct termios { + tcflag_t c_iflag; + tcflag_t c_oflag; + tcflag_t c_cflag; + tcflag_t c_lflag; + cc_t c_line; + cc_t c_cc[NCCS]; + speed_t __c_ispeed; + speed_t __c_ospeed; +}; + +#define VINTR 0 +#define VQUIT 1 +#define VERASE 2 +#define VKILL 3 +#define VMIN 4 +#define VTIME 5 +#define VEOL2 6 +#define VSWTC 7 +#define VSWTCH 7 +#define VSTART 8 +#define VSTOP 9 +#define VSUSP 10 +#define VREPRINT 12 +#define VDISCARD 13 +#define VWERASE 14 +#define VLNEXT 15 +#define VEOF 16 +#define VEOL 17 + +#define IGNBRK 0000001 +#define BRKINT 0000002 +#define IGNPAR 0000004 +#define PARMRK 0000010 +#define INPCK 0000020 +#define ISTRIP 0000040 +#define INLCR 0000100 +#define IGNCR 0000200 +#define ICRNL 0000400 +#define IUCLC 0001000 +#define IXON 0002000 +#define IXANY 0004000 +#define IXOFF 0010000 +#define IMAXBEL 0020000 +#define IUTF8 0040000 + +#define OPOST 0000001 +#define OLCUC 0000002 +#define ONLCR 0000004 +#define OCRNL 0000010 +#define ONOCR 0000020 +#define ONLRET 0000040 +#define OFILL 0000100 +#define OFDEL 0000200 +#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) || defined(_XOPEN_SOURCE) +#define NLDLY 0000400 +#define NL0 0000000 +#define NL1 0000400 +#define CRDLY 0003000 +#define CR0 0000000 +#define CR1 0001000 +#define CR2 0002000 +#define CR3 0003000 +#define TABDLY 0014000 +#define TAB0 0000000 +#define TAB1 0004000 +#define TAB2 0010000 +#define TAB3 0014000 +#define BSDLY 0020000 +#define BS0 0000000 +#define BS1 0020000 +#define FFDLY 0100000 +#define FF0 0000000 +#define FF1 0100000 +#endif + +#define VTDLY 0040000 +#define VT0 0000000 +#define VT1 0040000 + +#define B0 0000000 +#define B50 0000001 +#define B75 0000002 +#define B110 0000003 +#define B134 0000004 +#define B150 0000005 +#define B200 0000006 +#define B300 0000007 +#define B600 0000010 +#define B1200 0000011 +#define B1800 0000012 +#define B2400 0000013 +#define B4800 0000014 +#define B9600 0000015 +#define B19200 0000016 +#define B38400 0000017 + +#define B57600 0010001 +#define B115200 0010002 +#define B230400 0010003 +#define B460800 0010004 +#define B500000 0010005 +#define B576000 0010006 +#define B921600 0010007 +#define B1000000 0010010 +#define B1152000 0010011 +#define B1500000 0010012 +#define B2000000 0010013 +#define B2500000 0010014 +#define B3000000 0010015 +#define B3500000 0010016 +#define B4000000 0010017 + +#define CSIZE 0000060 +#define CS5 0000000 +#define CS6 0000020 +#define CS7 0000040 +#define CS8 0000060 +#define CSTOPB 0000100 +#define CREAD 0000200 +#define PARENB 0000400 +#define PARODD 0001000 +#define HUPCL 0002000 +#define CLOCAL 0004000 + +#define ISIG 0000001 +#define ICANON 0000002 +#define ECHO 0000010 +#define ECHOE 0000020 +#define ECHOK 0000040 +#define ECHONL 0000100 +#define NOFLSH 0000200 +#define IEXTEN 0000400 +#define TOSTOP 0100000 +#define ITOSTOP 0100000 + +#define TCOOFF 0 +#define TCOON 1 +#define TCIOFF 2 +#define TCION 3 + +#define TCIFLUSH 0 +#define TCOFLUSH 1 +#define TCIOFLUSH 2 + +#define TCSANOW 0 +#define TCSADRAIN 1 +#define TCSAFLUSH 2 + +#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) +#define EXTA 0000016 +#define EXTB 0000017 +#define CBAUD 0010017 +#define CBAUDEX 0010000 +#define CIBAUD 002003600000 +#define CMSPAR 010000000000 +#define CRTSCTS 020000000000 + +#define XCASE 0000004 +#define ECHOCTL 0001000 +#define ECHOPRT 0002000 +#define ECHOKE 0004000 +#define FLUSHO 0020000 +#define PENDIN 0040000 +#define EXTPROC 0200000 + +#define XTABS 0014000 +#define TIOCSER_TEMT 1 +#endif \ No newline at end of file diff --git a/lib/libc/include/mips64-linux-muslabin32/bits/user.h b/lib/libc/include/mips64-linux-muslabin32/bits/user.h new file mode 100644 index 000000000000..0c2b245fee41 --- /dev/null +++ b/lib/libc/include/mips64-linux-muslabin32/bits/user.h @@ -0,0 +1,15 @@ +struct user { + unsigned long regs[102]; + unsigned long u_tsize, u_dsize, u_ssize; + unsigned long long start_code, start_data, start_stack; + long long signal; + unsigned long long *u_ar0; + unsigned long long magic; + char u_comm[32]; +}; + +#define ELF_NGREG 45 +#define ELF_NFPREG 33 + +typedef unsigned long elf_greg_t, elf_gregset_t[ELF_NGREG]; +typedef double elf_fpreg_t, elf_fpregset_t[ELF_NFPREG]; \ No newline at end of file diff --git a/lib/libc/include/powerpc64-linux-musl/bits/stdint.h b/lib/libc/include/powerpc64-linux-musl/bits/stdint.h new file mode 100644 index 000000000000..02714d7398ad --- /dev/null +++ b/lib/libc/include/powerpc64-linux-musl/bits/stdint.h @@ -0,0 +1,20 @@ +typedef int32_t int_fast16_t; +typedef int32_t int_fast32_t; +typedef uint32_t uint_fast16_t; +typedef uint32_t uint_fast32_t; + +#define INT_FAST16_MIN INT32_MIN +#define INT_FAST32_MIN INT32_MIN + +#define INT_FAST16_MAX INT32_MAX +#define INT_FAST32_MAX INT32_MAX + +#define UINT_FAST16_MAX UINT32_MAX +#define UINT_FAST32_MAX UINT32_MAX + +#define INTPTR_MIN INT64_MIN +#define INTPTR_MAX INT64_MAX +#define UINTPTR_MAX UINT64_MAX +#define PTRDIFF_MIN INT64_MIN +#define PTRDIFF_MAX INT64_MAX +#define SIZE_MAX UINT64_MAX \ No newline at end of file diff --git a/lib/libc/include/riscv32-linux-musl/bits/fenv.h b/lib/libc/include/riscv32-linux-musl/bits/fenv.h new file mode 100644 index 000000000000..b260c6f63b56 --- /dev/null +++ b/lib/libc/include/riscv32-linux-musl/bits/fenv.h @@ -0,0 +1,17 @@ +#define FE_INVALID 16 +#define FE_DIVBYZERO 8 +#define FE_OVERFLOW 4 +#define FE_UNDERFLOW 2 +#define FE_INEXACT 1 + +#define FE_ALL_EXCEPT 31 + +#define FE_TONEAREST 0 +#define FE_DOWNWARD 2 +#define FE_UPWARD 3 +#define FE_TOWARDZERO 1 + +typedef unsigned int fexcept_t; +typedef unsigned int fenv_t; + +#define FE_DFL_ENV ((const fenv_t *) -1) \ No newline at end of file diff --git a/lib/libc/include/riscv64-linux-musl/bits/fenv.h b/lib/libc/include/riscv64-linux-musl/bits/fenv.h new file mode 100644 index 000000000000..b260c6f63b56 --- /dev/null +++ b/lib/libc/include/riscv64-linux-musl/bits/fenv.h @@ -0,0 +1,17 @@ +#define FE_INVALID 16 +#define FE_DIVBYZERO 8 +#define FE_OVERFLOW 4 +#define FE_UNDERFLOW 2 +#define FE_INEXACT 1 + +#define FE_ALL_EXCEPT 31 + +#define FE_TONEAREST 0 +#define FE_DOWNWARD 2 +#define FE_UPWARD 3 +#define FE_TOWARDZERO 1 + +typedef unsigned int fexcept_t; +typedef unsigned int fenv_t; + +#define FE_DFL_ENV ((const fenv_t *) -1) \ No newline at end of file diff --git a/lib/libc/include/riscv64-linux-musl/bits/stdint.h b/lib/libc/include/riscv64-linux-musl/bits/stdint.h new file mode 100644 index 000000000000..02714d7398ad --- /dev/null +++ b/lib/libc/include/riscv64-linux-musl/bits/stdint.h @@ -0,0 +1,20 @@ +typedef int32_t int_fast16_t; +typedef int32_t int_fast32_t; +typedef uint32_t uint_fast16_t; +typedef uint32_t uint_fast32_t; + +#define INT_FAST16_MIN INT32_MIN +#define INT_FAST32_MIN INT32_MIN + +#define INT_FAST16_MAX INT32_MAX +#define INT_FAST32_MAX INT32_MAX + +#define UINT_FAST16_MAX UINT32_MAX +#define UINT_FAST32_MAX UINT32_MAX + +#define INTPTR_MIN INT64_MIN +#define INTPTR_MAX INT64_MAX +#define UINTPTR_MAX UINT64_MAX +#define PTRDIFF_MIN INT64_MIN +#define PTRDIFF_MAX INT64_MAX +#define SIZE_MAX UINT64_MAX \ No newline at end of file diff --git a/lib/libc/include/s390x-linux-musl/bits/stdint.h b/lib/libc/include/s390x-linux-musl/bits/stdint.h new file mode 100644 index 000000000000..02714d7398ad --- /dev/null +++ b/lib/libc/include/s390x-linux-musl/bits/stdint.h @@ -0,0 +1,20 @@ +typedef int32_t int_fast16_t; +typedef int32_t int_fast32_t; +typedef uint32_t uint_fast16_t; +typedef uint32_t uint_fast32_t; + +#define INT_FAST16_MIN INT32_MIN +#define INT_FAST32_MIN INT32_MIN + +#define INT_FAST16_MAX INT32_MAX +#define INT_FAST32_MAX INT32_MAX + +#define UINT_FAST16_MAX UINT32_MAX +#define UINT_FAST32_MAX UINT32_MAX + +#define INTPTR_MIN INT64_MIN +#define INTPTR_MAX INT64_MAX +#define UINTPTR_MAX UINT64_MAX +#define PTRDIFF_MIN INT64_MIN +#define PTRDIFF_MAX INT64_MAX +#define SIZE_MAX UINT64_MAX \ No newline at end of file diff --git a/lib/libc/include/x86_64-linux-musl/bits/stdint.h b/lib/libc/include/x86_64-linux-musl/bits/stdint.h new file mode 100644 index 000000000000..02714d7398ad --- /dev/null +++ b/lib/libc/include/x86_64-linux-musl/bits/stdint.h @@ -0,0 +1,20 @@ +typedef int32_t int_fast16_t; +typedef int32_t int_fast32_t; +typedef uint32_t uint_fast16_t; +typedef uint32_t uint_fast32_t; + +#define INT_FAST16_MIN INT32_MIN +#define INT_FAST32_MIN INT32_MIN + +#define INT_FAST16_MAX INT32_MAX +#define INT_FAST32_MAX INT32_MAX + +#define UINT_FAST16_MAX UINT32_MAX +#define UINT_FAST32_MAX UINT32_MAX + +#define INTPTR_MIN INT64_MIN +#define INTPTR_MAX INT64_MAX +#define UINTPTR_MAX UINT64_MAX +#define PTRDIFF_MIN INT64_MIN +#define PTRDIFF_MAX INT64_MAX +#define SIZE_MAX UINT64_MAX \ No newline at end of file diff --git a/lib/libc/include/x86_64-linux-muslx32/bits/alltypes.h b/lib/libc/include/x86_64-linux-muslx32/bits/alltypes.h new file mode 100644 index 000000000000..8dfc0bcf9db6 --- /dev/null +++ b/lib/libc/include/x86_64-linux-muslx32/bits/alltypes.h @@ -0,0 +1,423 @@ +#define _Addr int +#define _Int64 long long +#define _Reg long long + +#define __BYTE_ORDER 1234 +#define __LONG_MAX 0x7fffffffL + +#ifndef __cplusplus +#ifdef __WCHAR_TYPE__ +#if defined(__NEED_wchar_t) && !defined(__DEFINED_wchar_t) +typedef __WCHAR_TYPE__ wchar_t; +#define __DEFINED_wchar_t +#endif + +#else +#if defined(__NEED_wchar_t) && !defined(__DEFINED_wchar_t) +typedef long wchar_t; +#define __DEFINED_wchar_t +#endif + +#endif +#endif + +#if defined(__FLT_EVAL_METHOD__) && __FLT_EVAL_METHOD__ == 2 +#if defined(__NEED_float_t) && !defined(__DEFINED_float_t) +typedef long double float_t; +#define __DEFINED_float_t +#endif + +#if defined(__NEED_double_t) && !defined(__DEFINED_double_t) +typedef long double double_t; +#define __DEFINED_double_t +#endif + +#else +#if defined(__NEED_float_t) && !defined(__DEFINED_float_t) +typedef float float_t; +#define __DEFINED_float_t +#endif + +#if defined(__NEED_double_t) && !defined(__DEFINED_double_t) +typedef double double_t; +#define __DEFINED_double_t +#endif + +#endif + +#if defined(__NEED_max_align_t) && !defined(__DEFINED_max_align_t) +typedef struct { long long __ll; long double __ld; } max_align_t; +#define __DEFINED_max_align_t +#endif + +#define __LITTLE_ENDIAN 1234 +#define __BIG_ENDIAN 4321 +#define __USE_TIME_BITS64 1 + +#if defined(__NEED_size_t) && !defined(__DEFINED_size_t) +typedef unsigned _Addr size_t; +#define __DEFINED_size_t +#endif + +#if defined(__NEED_uintptr_t) && !defined(__DEFINED_uintptr_t) +typedef unsigned _Addr uintptr_t; +#define __DEFINED_uintptr_t +#endif + +#if defined(__NEED_ptrdiff_t) && !defined(__DEFINED_ptrdiff_t) +typedef _Addr ptrdiff_t; +#define __DEFINED_ptrdiff_t +#endif + +#if defined(__NEED_ssize_t) && !defined(__DEFINED_ssize_t) +typedef _Addr ssize_t; +#define __DEFINED_ssize_t +#endif + +#if defined(__NEED_intptr_t) && !defined(__DEFINED_intptr_t) +typedef _Addr intptr_t; +#define __DEFINED_intptr_t +#endif + +#if defined(__NEED_regoff_t) && !defined(__DEFINED_regoff_t) +typedef _Addr regoff_t; +#define __DEFINED_regoff_t +#endif + +#if defined(__NEED_register_t) && !defined(__DEFINED_register_t) +typedef _Reg register_t; +#define __DEFINED_register_t +#endif + +#if defined(__NEED_time_t) && !defined(__DEFINED_time_t) +typedef _Int64 time_t; +#define __DEFINED_time_t +#endif + +#if defined(__NEED_suseconds_t) && !defined(__DEFINED_suseconds_t) +typedef _Int64 suseconds_t; +#define __DEFINED_suseconds_t +#endif + + +#if defined(__NEED_int8_t) && !defined(__DEFINED_int8_t) +typedef signed char int8_t; +#define __DEFINED_int8_t +#endif + +#if defined(__NEED_int16_t) && !defined(__DEFINED_int16_t) +typedef signed short int16_t; +#define __DEFINED_int16_t +#endif + +#if defined(__NEED_int32_t) && !defined(__DEFINED_int32_t) +typedef signed int int32_t; +#define __DEFINED_int32_t +#endif + +#if defined(__NEED_int64_t) && !defined(__DEFINED_int64_t) +typedef signed _Int64 int64_t; +#define __DEFINED_int64_t +#endif + +#if defined(__NEED_intmax_t) && !defined(__DEFINED_intmax_t) +typedef signed _Int64 intmax_t; +#define __DEFINED_intmax_t +#endif + +#if defined(__NEED_uint8_t) && !defined(__DEFINED_uint8_t) +typedef unsigned char uint8_t; +#define __DEFINED_uint8_t +#endif + +#if defined(__NEED_uint16_t) && !defined(__DEFINED_uint16_t) +typedef unsigned short uint16_t; +#define __DEFINED_uint16_t +#endif + +#if defined(__NEED_uint32_t) && !defined(__DEFINED_uint32_t) +typedef unsigned int uint32_t; +#define __DEFINED_uint32_t +#endif + +#if defined(__NEED_uint64_t) && !defined(__DEFINED_uint64_t) +typedef unsigned _Int64 uint64_t; +#define __DEFINED_uint64_t +#endif + +#if defined(__NEED_u_int64_t) && !defined(__DEFINED_u_int64_t) +typedef unsigned _Int64 u_int64_t; +#define __DEFINED_u_int64_t +#endif + +#if defined(__NEED_uintmax_t) && !defined(__DEFINED_uintmax_t) +typedef unsigned _Int64 uintmax_t; +#define __DEFINED_uintmax_t +#endif + + +#if defined(__NEED_mode_t) && !defined(__DEFINED_mode_t) +typedef unsigned mode_t; +#define __DEFINED_mode_t +#endif + +#if defined(__NEED_nlink_t) && !defined(__DEFINED_nlink_t) +typedef unsigned _Reg nlink_t; +#define __DEFINED_nlink_t +#endif + +#if defined(__NEED_off_t) && !defined(__DEFINED_off_t) +typedef _Int64 off_t; +#define __DEFINED_off_t +#endif + +#if defined(__NEED_ino_t) && !defined(__DEFINED_ino_t) +typedef unsigned _Int64 ino_t; +#define __DEFINED_ino_t +#endif + +#if defined(__NEED_dev_t) && !defined(__DEFINED_dev_t) +typedef unsigned _Int64 dev_t; +#define __DEFINED_dev_t +#endif + +#if defined(__NEED_blksize_t) && !defined(__DEFINED_blksize_t) +typedef long blksize_t; +#define __DEFINED_blksize_t +#endif + +#if defined(__NEED_blkcnt_t) && !defined(__DEFINED_blkcnt_t) +typedef _Int64 blkcnt_t; +#define __DEFINED_blkcnt_t +#endif + +#if defined(__NEED_fsblkcnt_t) && !defined(__DEFINED_fsblkcnt_t) +typedef unsigned _Int64 fsblkcnt_t; +#define __DEFINED_fsblkcnt_t +#endif + +#if defined(__NEED_fsfilcnt_t) && !defined(__DEFINED_fsfilcnt_t) +typedef unsigned _Int64 fsfilcnt_t; +#define __DEFINED_fsfilcnt_t +#endif + + +#if defined(__NEED_wint_t) && !defined(__DEFINED_wint_t) +typedef unsigned wint_t; +#define __DEFINED_wint_t +#endif + +#if defined(__NEED_wctype_t) && !defined(__DEFINED_wctype_t) +typedef unsigned long wctype_t; +#define __DEFINED_wctype_t +#endif + + +#if defined(__NEED_timer_t) && !defined(__DEFINED_timer_t) +typedef void * timer_t; +#define __DEFINED_timer_t +#endif + +#if defined(__NEED_clockid_t) && !defined(__DEFINED_clockid_t) +typedef int clockid_t; +#define __DEFINED_clockid_t +#endif + +#if defined(__NEED_clock_t) && !defined(__DEFINED_clock_t) +typedef long clock_t; +#define __DEFINED_clock_t +#endif + +#if defined(__NEED_struct_timeval) && !defined(__DEFINED_struct_timeval) +struct timeval { time_t tv_sec; suseconds_t tv_usec; }; +#define __DEFINED_struct_timeval +#endif + +#if defined(__NEED_struct_timespec) && !defined(__DEFINED_struct_timespec) +struct timespec { time_t tv_sec; int :8*(sizeof(time_t)-sizeof(long))*(__BYTE_ORDER==4321); long tv_nsec; int :8*(sizeof(time_t)-sizeof(long))*(__BYTE_ORDER!=4321); }; +#define __DEFINED_struct_timespec +#endif + + +#if defined(__NEED_pid_t) && !defined(__DEFINED_pid_t) +typedef int pid_t; +#define __DEFINED_pid_t +#endif + +#if defined(__NEED_id_t) && !defined(__DEFINED_id_t) +typedef unsigned id_t; +#define __DEFINED_id_t +#endif + +#if defined(__NEED_uid_t) && !defined(__DEFINED_uid_t) +typedef unsigned uid_t; +#define __DEFINED_uid_t +#endif + +#if defined(__NEED_gid_t) && !defined(__DEFINED_gid_t) +typedef unsigned gid_t; +#define __DEFINED_gid_t +#endif + +#if defined(__NEED_key_t) && !defined(__DEFINED_key_t) +typedef int key_t; +#define __DEFINED_key_t +#endif + +#if defined(__NEED_useconds_t) && !defined(__DEFINED_useconds_t) +typedef unsigned useconds_t; +#define __DEFINED_useconds_t +#endif + + +#ifdef __cplusplus +#if defined(__NEED_pthread_t) && !defined(__DEFINED_pthread_t) +typedef unsigned long pthread_t; +#define __DEFINED_pthread_t +#endif + +#else +#if defined(__NEED_pthread_t) && !defined(__DEFINED_pthread_t) +typedef struct __pthread * pthread_t; +#define __DEFINED_pthread_t +#endif + +#endif +#if defined(__NEED_pthread_once_t) && !defined(__DEFINED_pthread_once_t) +typedef int pthread_once_t; +#define __DEFINED_pthread_once_t +#endif + +#if defined(__NEED_pthread_key_t) && !defined(__DEFINED_pthread_key_t) +typedef unsigned pthread_key_t; +#define __DEFINED_pthread_key_t +#endif + +#if defined(__NEED_pthread_spinlock_t) && !defined(__DEFINED_pthread_spinlock_t) +typedef int pthread_spinlock_t; +#define __DEFINED_pthread_spinlock_t +#endif + +#if defined(__NEED_pthread_mutexattr_t) && !defined(__DEFINED_pthread_mutexattr_t) +typedef struct { unsigned __attr; } pthread_mutexattr_t; +#define __DEFINED_pthread_mutexattr_t +#endif + +#if defined(__NEED_pthread_condattr_t) && !defined(__DEFINED_pthread_condattr_t) +typedef struct { unsigned __attr; } pthread_condattr_t; +#define __DEFINED_pthread_condattr_t +#endif + +#if defined(__NEED_pthread_barrierattr_t) && !defined(__DEFINED_pthread_barrierattr_t) +typedef struct { unsigned __attr; } pthread_barrierattr_t; +#define __DEFINED_pthread_barrierattr_t +#endif + +#if defined(__NEED_pthread_rwlockattr_t) && !defined(__DEFINED_pthread_rwlockattr_t) +typedef struct { unsigned __attr[2]; } pthread_rwlockattr_t; +#define __DEFINED_pthread_rwlockattr_t +#endif + + +#if defined(__NEED_struct__IO_FILE) && !defined(__DEFINED_struct__IO_FILE) +struct _IO_FILE { char __x; }; +#define __DEFINED_struct__IO_FILE +#endif + +#if defined(__NEED_FILE) && !defined(__DEFINED_FILE) +typedef struct _IO_FILE FILE; +#define __DEFINED_FILE +#endif + + +#if defined(__NEED_va_list) && !defined(__DEFINED_va_list) +typedef __builtin_va_list va_list; +#define __DEFINED_va_list +#endif + +#if defined(__NEED___isoc_va_list) && !defined(__DEFINED___isoc_va_list) +typedef __builtin_va_list __isoc_va_list; +#define __DEFINED___isoc_va_list +#endif + + +#if defined(__NEED_mbstate_t) && !defined(__DEFINED_mbstate_t) +typedef struct __mbstate_t { unsigned __opaque1, __opaque2; } mbstate_t; +#define __DEFINED_mbstate_t +#endif + + +#if defined(__NEED_locale_t) && !defined(__DEFINED_locale_t) +typedef struct __locale_struct * locale_t; +#define __DEFINED_locale_t +#endif + + +#if defined(__NEED_sigset_t) && !defined(__DEFINED_sigset_t) +typedef struct __sigset_t { unsigned long __bits[128/sizeof(long)]; } sigset_t; +#define __DEFINED_sigset_t +#endif + + +#if defined(__NEED_struct_iovec) && !defined(__DEFINED_struct_iovec) +struct iovec { void *iov_base; size_t iov_len; }; +#define __DEFINED_struct_iovec +#endif + + +#if defined(__NEED_struct_winsize) && !defined(__DEFINED_struct_winsize) +struct winsize { unsigned short ws_row, ws_col, ws_xpixel, ws_ypixel; }; +#define __DEFINED_struct_winsize +#endif + + +#if defined(__NEED_socklen_t) && !defined(__DEFINED_socklen_t) +typedef unsigned socklen_t; +#define __DEFINED_socklen_t +#endif + +#if defined(__NEED_sa_family_t) && !defined(__DEFINED_sa_family_t) +typedef unsigned short sa_family_t; +#define __DEFINED_sa_family_t +#endif + + +#if defined(__NEED_pthread_attr_t) && !defined(__DEFINED_pthread_attr_t) +typedef struct { union { int __i[sizeof(long)==8?14:9]; volatile int __vi[sizeof(long)==8?14:9]; unsigned long __s[sizeof(long)==8?7:9]; } __u; } pthread_attr_t; +#define __DEFINED_pthread_attr_t +#endif + +#if defined(__NEED_pthread_mutex_t) && !defined(__DEFINED_pthread_mutex_t) +typedef struct { union { int __i[sizeof(long)==8?10:6]; volatile int __vi[sizeof(long)==8?10:6]; volatile void *volatile __p[sizeof(long)==8?5:6]; } __u; } pthread_mutex_t; +#define __DEFINED_pthread_mutex_t +#endif + +#if defined(__NEED_mtx_t) && !defined(__DEFINED_mtx_t) +typedef struct { union { int __i[sizeof(long)==8?10:6]; volatile int __vi[sizeof(long)==8?10:6]; volatile void *volatile __p[sizeof(long)==8?5:6]; } __u; } mtx_t; +#define __DEFINED_mtx_t +#endif + +#if defined(__NEED_pthread_cond_t) && !defined(__DEFINED_pthread_cond_t) +typedef struct { union { int __i[12]; volatile int __vi[12]; void *__p[12*sizeof(int)/sizeof(void*)]; } __u; } pthread_cond_t; +#define __DEFINED_pthread_cond_t +#endif + +#if defined(__NEED_cnd_t) && !defined(__DEFINED_cnd_t) +typedef struct { union { int __i[12]; volatile int __vi[12]; void *__p[12*sizeof(int)/sizeof(void*)]; } __u; } cnd_t; +#define __DEFINED_cnd_t +#endif + +#if defined(__NEED_pthread_rwlock_t) && !defined(__DEFINED_pthread_rwlock_t) +typedef struct { union { int __i[sizeof(long)==8?14:8]; volatile int __vi[sizeof(long)==8?14:8]; void *__p[sizeof(long)==8?7:8]; } __u; } pthread_rwlock_t; +#define __DEFINED_pthread_rwlock_t +#endif + +#if defined(__NEED_pthread_barrier_t) && !defined(__DEFINED_pthread_barrier_t) +typedef struct { union { int __i[sizeof(long)==8?8:5]; volatile int __vi[sizeof(long)==8?8:5]; void *__p[sizeof(long)==8?4:5]; } __u; } pthread_barrier_t; +#define __DEFINED_pthread_barrier_t +#endif + + +#undef _Addr +#undef _Int64 +#undef _Reg \ No newline at end of file diff --git a/lib/libc/include/x86_64-linux-muslx32/bits/fcntl.h b/lib/libc/include/x86_64-linux-muslx32/bits/fcntl.h new file mode 100644 index 000000000000..283a2d14a646 --- /dev/null +++ b/lib/libc/include/x86_64-linux-muslx32/bits/fcntl.h @@ -0,0 +1,40 @@ +#define O_CREAT 0100 +#define O_EXCL 0200 +#define O_NOCTTY 0400 +#define O_TRUNC 01000 +#define O_APPEND 02000 +#define O_NONBLOCK 04000 +#define O_DSYNC 010000 +#define O_SYNC 04010000 +#define O_RSYNC 04010000 +#define O_DIRECTORY 0200000 +#define O_NOFOLLOW 0400000 +#define O_CLOEXEC 02000000 + +#define O_ASYNC 020000 +#define O_DIRECT 040000 +#define O_LARGEFILE 0100000 +#define O_NOATIME 01000000 +#define O_PATH 010000000 +#define O_TMPFILE 020200000 +#define O_NDELAY O_NONBLOCK + +#define F_DUPFD 0 +#define F_GETFD 1 +#define F_SETFD 2 +#define F_GETFL 3 +#define F_SETFL 4 + +#define F_SETOWN 8 +#define F_GETOWN 9 +#define F_SETSIG 10 +#define F_GETSIG 11 + +#define F_GETLK 5 +#define F_SETLK 6 +#define F_SETLKW 7 + +#define F_SETOWN_EX 15 +#define F_GETOWN_EX 16 + +#define F_GETOWNER_UIDS 17 \ No newline at end of file diff --git a/lib/libc/include/x86_64-linux-muslx32/bits/float.h b/lib/libc/include/x86_64-linux-muslx32/bits/float.h new file mode 100644 index 000000000000..7d0d173bbba4 --- /dev/null +++ b/lib/libc/include/x86_64-linux-muslx32/bits/float.h @@ -0,0 +1,20 @@ +#ifdef __FLT_EVAL_METHOD__ +#define FLT_EVAL_METHOD __FLT_EVAL_METHOD__ +#else +#define FLT_EVAL_METHOD 0 +#endif + +#define LDBL_TRUE_MIN 3.6451995318824746025e-4951L +#define LDBL_MIN 3.3621031431120935063e-4932L +#define LDBL_MAX 1.1897314953572317650e+4932L +#define LDBL_EPSILON 1.0842021724855044340e-19L + +#define LDBL_MANT_DIG 64 +#define LDBL_MIN_EXP (-16381) +#define LDBL_MAX_EXP 16384 + +#define LDBL_DIG 18 +#define LDBL_MIN_10_EXP (-4931) +#define LDBL_MAX_10_EXP 4932 + +#define DECIMAL_DIG 21 \ No newline at end of file diff --git a/lib/libc/include/x86_64-linux-muslx32/bits/io.h b/lib/libc/include/x86_64-linux-muslx32/bits/io.h new file mode 100644 index 000000000000..be42152adb88 --- /dev/null +++ b/lib/libc/include/x86_64-linux-muslx32/bits/io.h @@ -0,0 +1,77 @@ +static __inline void outb(unsigned char __val, unsigned short __port) +{ + __asm__ volatile ("outb %0,%1" : : "a" (__val), "dN" (__port)); +} + +static __inline void outw(unsigned short __val, unsigned short __port) +{ + __asm__ volatile ("outw %0,%1" : : "a" (__val), "dN" (__port)); +} + +static __inline void outl(unsigned int __val, unsigned short __port) +{ + __asm__ volatile ("outl %0,%1" : : "a" (__val), "dN" (__port)); +} + +static __inline unsigned char inb(unsigned short __port) +{ + unsigned char __val; + __asm__ volatile ("inb %1,%0" : "=a" (__val) : "dN" (__port)); + return __val; +} + +static __inline unsigned short inw(unsigned short __port) +{ + unsigned short __val; + __asm__ volatile ("inw %1,%0" : "=a" (__val) : "dN" (__port)); + return __val; +} + +static __inline unsigned int inl(unsigned short __port) +{ + unsigned int __val; + __asm__ volatile ("inl %1,%0" : "=a" (__val) : "dN" (__port)); + return __val; +} + +static __inline void outsb(unsigned short __port, const void *__buf, unsigned long __n) +{ + __asm__ volatile ("cld; rep; outsb" + : "+S" (__buf), "+c" (__n) + : "d" (__port)); +} + +static __inline void outsw(unsigned short __port, const void *__buf, unsigned long __n) +{ + __asm__ volatile ("cld; rep; outsw" + : "+S" (__buf), "+c" (__n) + : "d" (__port)); +} + +static __inline void outsl(unsigned short __port, const void *__buf, unsigned long __n) +{ + __asm__ volatile ("cld; rep; outsl" + : "+S" (__buf), "+c"(__n) + : "d" (__port)); +} + +static __inline void insb(unsigned short __port, void *__buf, unsigned long __n) +{ + __asm__ volatile ("cld; rep; insb" + : "+D" (__buf), "+c" (__n) + : "d" (__port)); +} + +static __inline void insw(unsigned short __port, void *__buf, unsigned long __n) +{ + __asm__ volatile ("cld; rep; insw" + : "+D" (__buf), "+c" (__n) + : "d" (__port)); +} + +static __inline void insl(unsigned short __port, void *__buf, unsigned long __n) +{ + __asm__ volatile ("cld; rep; insl" + : "+D" (__buf), "+c" (__n) + : "d" (__port)); +} \ No newline at end of file diff --git a/lib/libc/include/x86_64-linux-muslx32/bits/ioctl_fix.h b/lib/libc/include/x86_64-linux-muslx32/bits/ioctl_fix.h new file mode 100644 index 000000000000..b9825e15024a --- /dev/null +++ b/lib/libc/include/x86_64-linux-muslx32/bits/ioctl_fix.h @@ -0,0 +1,4 @@ +#undef SIOCGSTAMP +#undef SIOCGSTAMPNS +#define SIOCGSTAMP 0x8906 +#define SIOCGSTAMPNS 0x8907 \ No newline at end of file diff --git a/lib/libc/include/x86_64-linux-muslx32/bits/ipc.h b/lib/libc/include/x86_64-linux-muslx32/bits/ipc.h new file mode 100644 index 000000000000..d966c7761004 --- /dev/null +++ b/lib/libc/include/x86_64-linux-muslx32/bits/ipc.h @@ -0,0 +1,11 @@ +struct ipc_perm { + key_t __ipc_perm_key; + uid_t uid; + gid_t gid; + uid_t cuid; + gid_t cgid; + mode_t mode; + int __ipc_perm_seq; + long long __pad1; + long long __pad2; +}; \ No newline at end of file diff --git a/lib/libc/include/x86_64-linux-muslx32/bits/limits.h b/lib/libc/include/x86_64-linux-muslx32/bits/limits.h new file mode 100644 index 000000000000..fc11433d980d --- /dev/null +++ b/lib/libc/include/x86_64-linux-muslx32/bits/limits.h @@ -0,0 +1 @@ +#define PAGESIZE 4096 \ No newline at end of file diff --git a/lib/libc/include/x86_64-linux-muslx32/bits/mman.h b/lib/libc/include/x86_64-linux-muslx32/bits/mman.h new file mode 100644 index 000000000000..7d968b07ba72 --- /dev/null +++ b/lib/libc/include/x86_64-linux-muslx32/bits/mman.h @@ -0,0 +1 @@ +#define MAP_32BIT 0x40 \ No newline at end of file diff --git a/lib/libc/include/x86_64-linux-muslx32/bits/msg.h b/lib/libc/include/x86_64-linux-muslx32/bits/msg.h new file mode 100644 index 000000000000..4bb57fb0cf1c --- /dev/null +++ b/lib/libc/include/x86_64-linux-muslx32/bits/msg.h @@ -0,0 +1,15 @@ +struct msqid_ds { + struct ipc_perm msg_perm; + time_t msg_stime; + time_t msg_rtime; + time_t msg_ctime; + unsigned long msg_cbytes; + long __unused1; + msgqnum_t msg_qnum; + long __unused2; + msglen_t msg_qbytes; + long __unused3; + pid_t msg_lspid; + pid_t msg_lrpid; + unsigned long long __unused[2]; +}; \ No newline at end of file diff --git a/lib/libc/include/x86_64-linux-muslx32/bits/ptrace.h b/lib/libc/include/x86_64-linux-muslx32/bits/ptrace.h new file mode 100644 index 000000000000..4686ac24d11e --- /dev/null +++ b/lib/libc/include/x86_64-linux-muslx32/bits/ptrace.h @@ -0,0 +1,13 @@ +#define PTRACE_GET_THREAD_AREA 25 +#define PTRACE_SET_THREAD_AREA 26 +#define PTRACE_ARCH_PRCTL 30 +#define PTRACE_SYSEMU 31 +#define PTRACE_SYSEMU_SINGLESTEP 32 +#define PTRACE_SINGLEBLOCK 33 + +#define PT_GET_THREAD_AREA PTRACE_GET_THREAD_AREA +#define PT_SET_THREAD_AREA PTRACE_SET_THREAD_AREA +#define PT_ARCH_PRCTL PTRACE_ARCH_PRCTL +#define PT_SYSEMU PTRACE_SYSEMU +#define PT_SYSEMU_SINGLESTEP PTRACE_SYSEMU_SINGLESTEP +#define PT_STEPBLOCK PTRACE_SINGLEBLOCK \ No newline at end of file diff --git a/lib/libc/include/x86_64-linux-muslx32/bits/reg.h b/lib/libc/include/x86_64-linux-muslx32/bits/reg.h new file mode 100644 index 000000000000..17d6f807289c --- /dev/null +++ b/lib/libc/include/x86_64-linux-muslx32/bits/reg.h @@ -0,0 +1,29 @@ +#undef __WORDSIZE +#define __WORDSIZE 32 +#define R15 0 +#define R14 1 +#define R13 2 +#define R12 3 +#define RBP 4 +#define RBX 5 +#define R11 6 +#define R10 7 +#define R9 8 +#define R8 9 +#define RAX 10 +#define RCX 11 +#define RDX 12 +#define RSI 13 +#define RDI 14 +#define ORIG_RAX 15 +#define RIP 16 +#define CS 17 +#define EFLAGS 18 +#define RSP 19 +#define SS 20 +#define FS_BASE 21 +#define GS_BASE 22 +#define DS 23 +#define ES 24 +#define FS 25 +#define GS 26 \ No newline at end of file diff --git a/lib/libc/include/x86_64-linux-muslx32/bits/sem.h b/lib/libc/include/x86_64-linux-muslx32/bits/sem.h new file mode 100644 index 000000000000..2ece33de64c5 --- /dev/null +++ b/lib/libc/include/x86_64-linux-muslx32/bits/sem.h @@ -0,0 +1,11 @@ +struct semid_ds { + struct ipc_perm sem_perm; + time_t sem_otime; + long long __unused1; + time_t sem_ctime; + long long __unused2; + unsigned short sem_nsems; + char __sem_nsems_pad[sizeof(long long)-sizeof(short)]; + long long __unused3; + long long __unused4; +}; \ No newline at end of file diff --git a/lib/libc/include/x86_64-linux-muslx32/bits/setjmp.h b/lib/libc/include/x86_64-linux-muslx32/bits/setjmp.h new file mode 100644 index 000000000000..6cb43541a36a --- /dev/null +++ b/lib/libc/include/x86_64-linux-muslx32/bits/setjmp.h @@ -0,0 +1 @@ +typedef unsigned long long __jmp_buf[8]; \ No newline at end of file diff --git a/lib/libc/include/x86_64-linux-muslx32/bits/shm.h b/lib/libc/include/x86_64-linux-muslx32/bits/shm.h new file mode 100644 index 000000000000..f0685c1347d9 --- /dev/null +++ b/lib/libc/include/x86_64-linux-muslx32/bits/shm.h @@ -0,0 +1,32 @@ +#define SHMLBA 4096 + +struct shmid_ds { + struct ipc_perm shm_perm; + size_t shm_segsz; + time_t shm_atime; + time_t shm_dtime; + time_t shm_ctime; + pid_t shm_cpid; + pid_t shm_lpid; + unsigned long shm_nattch; + unsigned long __pad0; + unsigned long long __pad1; + unsigned long long __pad2; +}; + +struct shminfo { + unsigned long shmmax, __pad0, shmmin, __pad1, shmmni, __pad2, + shmseg, __pad3, shmall, __pad4; + unsigned long long __unused[4]; +}; + +struct shm_info { + int __used_ids; + int __pad_ids; + unsigned long shm_tot, __pad0, shm_rss, __pad1, shm_swp, __pad2; + unsigned long __swap_attempts, __pad3, __swap_successes, __pad4; +} +#ifdef __GNUC__ +__attribute__((__aligned__(8))) +#endif +; \ No newline at end of file diff --git a/lib/libc/include/x86_64-linux-muslx32/bits/signal.h b/lib/libc/include/x86_64-linux-muslx32/bits/signal.h new file mode 100644 index 000000000000..bd12c1b3fe7c --- /dev/null +++ b/lib/libc/include/x86_64-linux-muslx32/bits/signal.h @@ -0,0 +1,152 @@ +#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \ + || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE) + +#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE) +#define MINSIGSTKSZ 2048 +#define SIGSTKSZ 8192 +#endif + +#ifdef _GNU_SOURCE +enum { REG_R8 = 0 }; +#define REG_R8 REG_R8 +enum { REG_R9 = 1 }; +#define REG_R9 REG_R9 +enum { REG_R10 = 2 }; +#define REG_R10 REG_R10 +enum { REG_R11 = 3 }; +#define REG_R11 REG_R11 +enum { REG_R12 = 4 }; +#define REG_R12 REG_R12 +enum { REG_R13 = 5 }; +#define REG_R13 REG_R13 +enum { REG_R14 = 6 }; +#define REG_R14 REG_R14 +enum { REG_R15 = 7 }; +#define REG_R15 REG_R15 +enum { REG_RDI = 8 }; +#define REG_RDI REG_RDI +enum { REG_RSI = 9 }; +#define REG_RSI REG_RSI +enum { REG_RBP = 10 }; +#define REG_RBP REG_RBP +enum { REG_RBX = 11 }; +#define REG_RBX REG_RBX +enum { REG_RDX = 12 }; +#define REG_RDX REG_RDX +enum { REG_RAX = 13 }; +#define REG_RAX REG_RAX +enum { REG_RCX = 14 }; +#define REG_RCX REG_RCX +enum { REG_RSP = 15 }; +#define REG_RSP REG_RSP +enum { REG_RIP = 16 }; +#define REG_RIP REG_RIP +enum { REG_EFL = 17 }; +#define REG_EFL REG_EFL +enum { REG_CSGSFS = 18 }; +#define REG_CSGSFS REG_CSGSFS +enum { REG_ERR = 19 }; +#define REG_ERR REG_ERR +enum { REG_TRAPNO = 20 }; +#define REG_TRAPNO REG_TRAPNO +enum { REG_OLDMASK = 21 }; +#define REG_OLDMASK REG_OLDMASK +enum { REG_CR2 = 22 }; +#define REG_CR2 REG_CR2 +#endif + +#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) +typedef long long greg_t, gregset_t[23]; +typedef struct _fpstate { + unsigned short cwd, swd, ftw, fop; + unsigned long long rip, rdp; + unsigned mxcsr, mxcr_mask; + struct { + unsigned short significand[4], exponent, padding[3]; + } _st[8]; + struct { + unsigned element[4]; + } _xmm[16]; + unsigned padding[24]; +} *fpregset_t; +struct sigcontext { + unsigned long long r8, r9, r10, r11, r12, r13, r14, r15; + unsigned long long rdi, rsi, rbp, rbx, rdx, rax, rcx, rsp, rip, eflags; + unsigned short cs, gs, fs, __pad0; + unsigned long long err, trapno, oldmask, cr2; + struct _fpstate *fpstate; + unsigned long long __reserved1[8]; +}; +typedef struct { + gregset_t gregs; + fpregset_t fpregs; + unsigned long long __reserved1[8]; +} mcontext_t; +#else +typedef struct { + unsigned long long __space[32]; +} mcontext_t; +#endif + +struct sigaltstack { + void *ss_sp; + int ss_flags; + size_t ss_size; +}; + +typedef struct __ucontext { + unsigned long uc_flags; + struct __ucontext *uc_link; + stack_t uc_stack; + mcontext_t uc_mcontext; + sigset_t uc_sigmask; + unsigned long long __fpregs_mem[64]; +} ucontext_t; + +#define SA_NOCLDSTOP 1 +#define SA_NOCLDWAIT 2 +#define SA_SIGINFO 4 +#define SA_ONSTACK 0x08000000 +#define SA_RESTART 0x10000000 +#define SA_NODEFER 0x40000000 +#define SA_RESETHAND 0x80000000 +#define SA_RESTORER 0x04000000 + +#endif + +#define SIGHUP 1 +#define SIGINT 2 +#define SIGQUIT 3 +#define SIGILL 4 +#define SIGTRAP 5 +#define SIGABRT 6 +#define SIGIOT SIGABRT +#define SIGBUS 7 +#define SIGFPE 8 +#define SIGKILL 9 +#define SIGUSR1 10 +#define SIGSEGV 11 +#define SIGUSR2 12 +#define SIGPIPE 13 +#define SIGALRM 14 +#define SIGTERM 15 +#define SIGSTKFLT 16 +#define SIGCHLD 17 +#define SIGCONT 18 +#define SIGSTOP 19 +#define SIGTSTP 20 +#define SIGTTIN 21 +#define SIGTTOU 22 +#define SIGURG 23 +#define SIGXCPU 24 +#define SIGXFSZ 25 +#define SIGVTALRM 26 +#define SIGPROF 27 +#define SIGWINCH 28 +#define SIGIO 29 +#define SIGPOLL 29 +#define SIGPWR 30 +#define SIGSYS 31 +#define SIGUNUSED SIGSYS + +#define _NSIG 65 \ No newline at end of file diff --git a/lib/libc/include/x86_64-linux-muslx32/bits/socket.h b/lib/libc/include/x86_64-linux-muslx32/bits/socket.h new file mode 100644 index 000000000000..fbb01c8cc959 --- /dev/null +++ b/lib/libc/include/x86_64-linux-muslx32/bits/socket.h @@ -0,0 +1,5 @@ +#define SO_RCVTIMEO 20 +#define SO_SNDTIMEO 21 +#define SO_TIMESTAMP 29 +#define SO_TIMESTAMPNS 35 +#define SO_TIMESTAMPING 37 \ No newline at end of file diff --git a/lib/libc/include/x86_64-linux-muslx32/bits/stat.h b/lib/libc/include/x86_64-linux-muslx32/bits/stat.h new file mode 100644 index 000000000000..5950d70452c6 --- /dev/null +++ b/lib/libc/include/x86_64-linux-muslx32/bits/stat.h @@ -0,0 +1,22 @@ +/* copied from kernel definition, but with padding replaced + * by the corresponding correctly-sized userspace types. */ + +struct stat { + dev_t st_dev; + ino_t st_ino; + nlink_t st_nlink; + + mode_t st_mode; + uid_t st_uid; + gid_t st_gid; + unsigned int __pad0; + dev_t st_rdev; + off_t st_size; + blksize_t st_blksize; + blkcnt_t st_blocks; + + struct timespec st_atim; + struct timespec st_mtim; + struct timespec st_ctim; + long long __unused[3]; +}; \ No newline at end of file diff --git a/lib/libc/include/x86_64-linux-muslx32/bits/statfs.h b/lib/libc/include/x86_64-linux-muslx32/bits/statfs.h new file mode 100644 index 000000000000..ed33fede679a --- /dev/null +++ b/lib/libc/include/x86_64-linux-muslx32/bits/statfs.h @@ -0,0 +1,9 @@ +struct statfs { + unsigned long f_type, __pad0, f_bsize, __pad1; + fsblkcnt_t f_blocks, f_bfree, f_bavail; + fsfilcnt_t f_files, f_ffree; + fsid_t f_fsid; + unsigned long f_namelen, __pad2, f_frsize, __pad3; + unsigned long f_flags, __pad4; + unsigned long long f_spare[4]; +}; \ No newline at end of file diff --git a/lib/libc/include/x86_64-linux-muslx32/bits/syscall.h b/lib/libc/include/x86_64-linux-muslx32/bits/syscall.h new file mode 100644 index 000000000000..076f1d523468 --- /dev/null +++ b/lib/libc/include/x86_64-linux-muslx32/bits/syscall.h @@ -0,0 +1,707 @@ +#define __NR_read (0x40000000 + 0) +#define __NR_write (0x40000000 + 1) +#define __NR_open (0x40000000 + 2) +#define __NR_close (0x40000000 + 3) +#define __NR_stat (0x40000000 + 4) +#define __NR_fstat (0x40000000 + 5) +#define __NR_lstat (0x40000000 + 6) +#define __NR_poll (0x40000000 + 7) +#define __NR_lseek (0x40000000 + 8) +#define __NR_mmap (0x40000000 + 9) +#define __NR_mprotect (0x40000000 + 10) +#define __NR_munmap (0x40000000 + 11) +#define __NR_brk (0x40000000 + 12) +#define __NR_rt_sigprocmask (0x40000000 + 14) +#define __NR_pread64 (0x40000000 + 17) +#define __NR_pwrite64 (0x40000000 + 18) +#define __NR_access (0x40000000 + 21) +#define __NR_pipe (0x40000000 + 22) +#define __NR_select (0x40000000 + 23) +#define __NR_sched_yield (0x40000000 + 24) +#define __NR_mremap (0x40000000 + 25) +#define __NR_msync (0x40000000 + 26) +#define __NR_mincore (0x40000000 + 27) +#define __NR_madvise (0x40000000 + 28) +#define __NR_shmget (0x40000000 + 29) +#define __NR_shmat (0x40000000 + 30) +#define __NR_shmctl (0x40000000 + 31) +#define __NR_dup (0x40000000 + 32) +#define __NR_dup2 (0x40000000 + 33) +#define __NR_pause (0x40000000 + 34) +#define __NR_nanosleep (0x40000000 + 35) +#define __NR_getitimer (0x40000000 + 36) +#define __NR_alarm (0x40000000 + 37) +#define __NR_setitimer (0x40000000 + 38) +#define __NR_getpid (0x40000000 + 39) +#define __NR_sendfile (0x40000000 + 40) +#define __NR_socket (0x40000000 + 41) +#define __NR_connect (0x40000000 + 42) +#define __NR_accept (0x40000000 + 43) +#define __NR_sendto (0x40000000 + 44) +#define __NR_shutdown (0x40000000 + 48) +#define __NR_bind (0x40000000 + 49) +#define __NR_listen (0x40000000 + 50) +#define __NR_getsockname (0x40000000 + 51) +#define __NR_getpeername (0x40000000 + 52) +#define __NR_socketpair (0x40000000 + 53) +#define __NR_clone (0x40000000 + 56) +#define __NR_fork (0x40000000 + 57) +#define __NR_vfork (0x40000000 + 58) +#define __NR_exit (0x40000000 + 60) +#define __NR_wait4 (0x40000000 + 61) +#define __NR_kill (0x40000000 + 62) +#define __NR_uname (0x40000000 + 63) +#define __NR_semget (0x40000000 + 64) +#define __NR_semop (0x40000000 + 65) +#define __NR_semctl (0x40000000 + 66) +#define __NR_shmdt (0x40000000 + 67) +#define __NR_msgget (0x40000000 + 68) +#define __NR_msgsnd (0x40000000 + 69) +#define __NR_msgrcv (0x40000000 + 70) +#define __NR_msgctl (0x40000000 + 71) +#define __NR_fcntl (0x40000000 + 72) +#define __NR_flock (0x40000000 + 73) +#define __NR_fsync (0x40000000 + 74) +#define __NR_fdatasync (0x40000000 + 75) +#define __NR_truncate (0x40000000 + 76) +#define __NR_ftruncate (0x40000000 + 77) +#define __NR_getdents (0x40000000 + 78) +#define __NR_getcwd (0x40000000 + 79) +#define __NR_chdir (0x40000000 + 80) +#define __NR_fchdir (0x40000000 + 81) +#define __NR_rename (0x40000000 + 82) +#define __NR_mkdir (0x40000000 + 83) +#define __NR_rmdir (0x40000000 + 84) +#define __NR_creat (0x40000000 + 85) +#define __NR_link (0x40000000 + 86) +#define __NR_unlink (0x40000000 + 87) +#define __NR_symlink (0x40000000 + 88) +#define __NR_readlink (0x40000000 + 89) +#define __NR_chmod (0x40000000 + 90) +#define __NR_fchmod (0x40000000 + 91) +#define __NR_chown (0x40000000 + 92) +#define __NR_fchown (0x40000000 + 93) +#define __NR_lchown (0x40000000 + 94) +#define __NR_umask (0x40000000 + 95) +#define __NR_gettimeofday (0x40000000 + 96) +#define __NR_getrlimit (0x40000000 + 97) +#define __NR_getrusage (0x40000000 + 98) +#define __NR_sysinfo (0x40000000 + 99) +#define __NR_times (0x40000000 + 100) +#define __NR_getuid (0x40000000 + 102) +#define __NR_syslog (0x40000000 + 103) +#define __NR_getgid (0x40000000 + 104) +#define __NR_setuid (0x40000000 + 105) +#define __NR_setgid (0x40000000 + 106) +#define __NR_geteuid (0x40000000 + 107) +#define __NR_getegid (0x40000000 + 108) +#define __NR_setpgid (0x40000000 + 109) +#define __NR_getppid (0x40000000 + 110) +#define __NR_getpgrp (0x40000000 + 111) +#define __NR_setsid (0x40000000 + 112) +#define __NR_setreuid (0x40000000 + 113) +#define __NR_setregid (0x40000000 + 114) +#define __NR_getgroups (0x40000000 + 115) +#define __NR_setgroups (0x40000000 + 116) +#define __NR_setresuid (0x40000000 + 117) +#define __NR_getresuid (0x40000000 + 118) +#define __NR_setresgid (0x40000000 + 119) +#define __NR_getresgid (0x40000000 + 120) +#define __NR_getpgid (0x40000000 + 121) +#define __NR_setfsuid (0x40000000 + 122) +#define __NR_setfsgid (0x40000000 + 123) +#define __NR_getsid (0x40000000 + 124) +#define __NR_capget (0x40000000 + 125) +#define __NR_capset (0x40000000 + 126) +#define __NR_rt_sigsuspend (0x40000000 + 130) +#define __NR_utime (0x40000000 + 132) +#define __NR_mknod (0x40000000 + 133) +#define __NR_personality (0x40000000 + 135) +#define __NR_ustat (0x40000000 + 136) +#define __NR_statfs (0x40000000 + 137) +#define __NR_fstatfs (0x40000000 + 138) +#define __NR_sysfs (0x40000000 + 139) +#define __NR_getpriority (0x40000000 + 140) +#define __NR_setpriority (0x40000000 + 141) +#define __NR_sched_setparam (0x40000000 + 142) +#define __NR_sched_getparam (0x40000000 + 143) +#define __NR_sched_setscheduler (0x40000000 + 144) +#define __NR_sched_getscheduler (0x40000000 + 145) +#define __NR_sched_get_priority_max (0x40000000 + 146) +#define __NR_sched_get_priority_min (0x40000000 + 147) +#define __NR_sched_rr_get_interval (0x40000000 + 148) +#define __NR_mlock (0x40000000 + 149) +#define __NR_munlock (0x40000000 + 150) +#define __NR_mlockall (0x40000000 + 151) +#define __NR_munlockall (0x40000000 + 152) +#define __NR_vhangup (0x40000000 + 153) +#define __NR_modify_ldt (0x40000000 + 154) +#define __NR_pivot_root (0x40000000 + 155) +#define __NR_prctl (0x40000000 + 157) +#define __NR_arch_prctl (0x40000000 + 158) +#define __NR_adjtimex (0x40000000 + 159) +#define __NR_setrlimit (0x40000000 + 160) +#define __NR_chroot (0x40000000 + 161) +#define __NR_sync (0x40000000 + 162) +#define __NR_acct (0x40000000 + 163) +#define __NR_settimeofday (0x40000000 + 164) +#define __NR_mount (0x40000000 + 165) +#define __NR_umount2 (0x40000000 + 166) +#define __NR_swapon (0x40000000 + 167) +#define __NR_swapoff (0x40000000 + 168) +#define __NR_reboot (0x40000000 + 169) +#define __NR_sethostname (0x40000000 + 170) +#define __NR_setdomainname (0x40000000 + 171) +#define __NR_iopl (0x40000000 + 172) +#define __NR_ioperm (0x40000000 + 173) +#define __NR_init_module (0x40000000 + 175) +#define __NR_delete_module (0x40000000 + 176) +#define __NR_quotactl (0x40000000 + 179) +#define __NR_getpmsg (0x40000000 + 181) +#define __NR_putpmsg (0x40000000 + 182) +#define __NR_afs_syscall (0x40000000 + 183) +#define __NR_tuxcall (0x40000000 + 184) +#define __NR_security (0x40000000 + 185) +#define __NR_gettid (0x40000000 + 186) +#define __NR_readahead (0x40000000 + 187) +#define __NR_setxattr (0x40000000 + 188) +#define __NR_lsetxattr (0x40000000 + 189) +#define __NR_fsetxattr (0x40000000 + 190) +#define __NR_getxattr (0x40000000 + 191) +#define __NR_lgetxattr (0x40000000 + 192) +#define __NR_fgetxattr (0x40000000 + 193) +#define __NR_listxattr (0x40000000 + 194) +#define __NR_llistxattr (0x40000000 + 195) +#define __NR_flistxattr (0x40000000 + 196) +#define __NR_removexattr (0x40000000 + 197) +#define __NR_lremovexattr (0x40000000 + 198) +#define __NR_fremovexattr (0x40000000 + 199) +#define __NR_tkill (0x40000000 + 200) +#define __NR_time (0x40000000 + 201) +#define __NR_futex (0x40000000 + 202) +#define __NR_sched_setaffinity (0x40000000 + 203) +#define __NR_sched_getaffinity (0x40000000 + 204) +#define __NR_io_destroy (0x40000000 + 207) +#define __NR_io_getevents (0x40000000 + 208) +#define __NR_io_cancel (0x40000000 + 210) +#define __NR_lookup_dcookie (0x40000000 + 212) +#define __NR_epoll_create (0x40000000 + 213) +#define __NR_remap_file_pages (0x40000000 + 216) +#define __NR_getdents64 (0x40000000 + 217) +#define __NR_set_tid_address (0x40000000 + 218) +#define __NR_restart_syscall (0x40000000 + 219) +#define __NR_semtimedop (0x40000000 + 220) +#define __NR_fadvise64 (0x40000000 + 221) +#define __NR_timer_settime (0x40000000 + 223) +#define __NR_timer_gettime (0x40000000 + 224) +#define __NR_timer_getoverrun (0x40000000 + 225) +#define __NR_timer_delete (0x40000000 + 226) +#define __NR_clock_settime (0x40000000 + 227) +#define __NR_clock_gettime (0x40000000 + 228) +#define __NR_clock_getres (0x40000000 + 229) +#define __NR_clock_nanosleep (0x40000000 + 230) +#define __NR_exit_group (0x40000000 + 231) +#define __NR_epoll_wait (0x40000000 + 232) +#define __NR_epoll_ctl (0x40000000 + 233) +#define __NR_tgkill (0x40000000 + 234) +#define __NR_utimes (0x40000000 + 235) +#define __NR_mbind (0x40000000 + 237) +#define __NR_set_mempolicy (0x40000000 + 238) +#define __NR_get_mempolicy (0x40000000 + 239) +#define __NR_mq_open (0x40000000 + 240) +#define __NR_mq_unlink (0x40000000 + 241) +#define __NR_mq_timedsend (0x40000000 + 242) +#define __NR_mq_timedreceive (0x40000000 + 243) +#define __NR_mq_getsetattr (0x40000000 + 245) +#define __NR_add_key (0x40000000 + 248) +#define __NR_request_key (0x40000000 + 249) +#define __NR_keyctl (0x40000000 + 250) +#define __NR_ioprio_set (0x40000000 + 251) +#define __NR_ioprio_get (0x40000000 + 252) +#define __NR_inotify_init (0x40000000 + 253) +#define __NR_inotify_add_watch (0x40000000 + 254) +#define __NR_inotify_rm_watch (0x40000000 + 255) +#define __NR_migrate_pages (0x40000000 + 256) +#define __NR_openat (0x40000000 + 257) +#define __NR_mkdirat (0x40000000 + 258) +#define __NR_mknodat (0x40000000 + 259) +#define __NR_fchownat (0x40000000 + 260) +#define __NR_futimesat (0x40000000 + 261) +#define __NR_newfstatat (0x40000000 + 262) +#define __NR_unlinkat (0x40000000 + 263) +#define __NR_renameat (0x40000000 + 264) +#define __NR_linkat (0x40000000 + 265) +#define __NR_symlinkat (0x40000000 + 266) +#define __NR_readlinkat (0x40000000 + 267) +#define __NR_fchmodat (0x40000000 + 268) +#define __NR_faccessat (0x40000000 + 269) +#define __NR_pselect6 (0x40000000 + 270) +#define __NR_ppoll (0x40000000 + 271) +#define __NR_unshare (0x40000000 + 272) +#define __NR_splice (0x40000000 + 275) +#define __NR_tee (0x40000000 + 276) +#define __NR_sync_file_range (0x40000000 + 277) +#define __NR_utimensat (0x40000000 + 280) +#define __NR_epoll_pwait (0x40000000 + 281) +#define __NR_signalfd (0x40000000 + 282) +#define __NR_timerfd_create (0x40000000 + 283) +#define __NR_eventfd (0x40000000 + 284) +#define __NR_fallocate (0x40000000 + 285) +#define __NR_timerfd_settime (0x40000000 + 286) +#define __NR_timerfd_gettime (0x40000000 + 287) +#define __NR_accept4 (0x40000000 + 288) +#define __NR_signalfd4 (0x40000000 + 289) +#define __NR_eventfd2 (0x40000000 + 290) +#define __NR_epoll_create1 (0x40000000 + 291) +#define __NR_dup3 (0x40000000 + 292) +#define __NR_pipe2 (0x40000000 + 293) +#define __NR_inotify_init1 (0x40000000 + 294) +#define __NR_perf_event_open (0x40000000 + 298) +#define __NR_fanotify_init (0x40000000 + 300) +#define __NR_fanotify_mark (0x40000000 + 301) +#define __NR_prlimit64 (0x40000000 + 302) +#define __NR_name_to_handle_at (0x40000000 + 303) +#define __NR_open_by_handle_at (0x40000000 + 304) +#define __NR_clock_adjtime (0x40000000 + 305) +#define __NR_syncfs (0x40000000 + 306) +#define __NR_setns (0x40000000 + 308) +#define __NR_getcpu (0x40000000 + 309) +#define __NR_kcmp (0x40000000 + 312) +#define __NR_finit_module (0x40000000 + 313) +#define __NR_sched_setattr (0x40000000 + 314) +#define __NR_sched_getattr (0x40000000 + 315) +#define __NR_renameat2 (0x40000000 + 316) +#define __NR_seccomp (0x40000000 + 317) +#define __NR_getrandom (0x40000000 + 318) +#define __NR_memfd_create (0x40000000 + 319) +#define __NR_kexec_file_load (0x40000000 + 320) +#define __NR_bpf (0x40000000 + 321) +#define __NR_userfaultfd (0x40000000 + 323) +#define __NR_membarrier (0x40000000 + 324) +#define __NR_mlock2 (0x40000000 + 325) +#define __NR_copy_file_range (0x40000000 + 326) +#define __NR_pkey_mprotect (0x40000000 + 329) +#define __NR_pkey_alloc (0x40000000 + 330) +#define __NR_pkey_free (0x40000000 + 331) +#define __NR_statx (0x40000000 + 332) +#define __NR_io_pgetevents (0x40000000 + 333) +#define __NR_rseq (0x40000000 + 334) +#define __NR_pidfd_send_signal (0x40000000 + 424) +#define __NR_io_uring_setup (0x40000000 + 425) +#define __NR_io_uring_enter (0x40000000 + 426) +#define __NR_io_uring_register (0x40000000 + 427) +#define __NR_open_tree (0x40000000 + 428) +#define __NR_move_mount (0x40000000 + 429) +#define __NR_fsopen (0x40000000 + 430) +#define __NR_fsconfig (0x40000000 + 431) +#define __NR_fsmount (0x40000000 + 432) +#define __NR_fspick (0x40000000 + 433) +#define __NR_pidfd_open (0x40000000 + 434) +#define __NR_clone3 (0x40000000 + 435) +#define __NR_close_range (0x40000000 + 436) +#define __NR_openat2 (0x40000000 + 437) +#define __NR_pidfd_getfd (0x40000000 + 438) +#define __NR_faccessat2 (0x40000000 + 439) +#define __NR_process_madvise (0x40000000 + 440) +#define __NR_epoll_pwait2 (0x40000000 + 441) +#define __NR_mount_setattr (0x40000000 + 442) +#define __NR_landlock_create_ruleset (0x40000000 + 444) +#define __NR_landlock_add_rule (0x40000000 + 445) +#define __NR_landlock_restrict_self (0x40000000 + 446) +#define __NR_memfd_secret (0x40000000 + 447) +#define __NR_process_mrelease (0x40000000 + 448) +#define __NR_futex_waitv (0x40000000 + 449) +#define __NR_set_mempolicy_home_node (0x40000000 + 450) +#define __NR_cachestat (0x40000000 + 451) +#define __NR_fchmodat2 (0x40000000 + 452) + + +#define __NR_rt_sigaction (0x40000000 + 512) +#define __NR_rt_sigreturn (0x40000000 + 513) +#define __NR_ioctl (0x40000000 + 514) +#define __NR_readv (0x40000000 + 515) +#define __NR_writev (0x40000000 + 516) +#define __NR_recvfrom (0x40000000 + 517) +#define __NR_sendmsg (0x40000000 + 518) +#define __NR_recvmsg (0x40000000 + 519) +#define __NR_execve (0x40000000 + 520) +#define __NR_ptrace (0x40000000 + 521) +#define __NR_rt_sigpending (0x40000000 + 522) +#define __NR_rt_sigtimedwait (0x40000000 + 523) +#define __NR_rt_sigqueueinfo (0x40000000 + 524) +#define __NR_sigaltstack (0x40000000 + 525) +#define __NR_timer_create (0x40000000 + 526) +#define __NR_mq_notify (0x40000000 + 527) +#define __NR_kexec_load (0x40000000 + 528) +#define __NR_waitid (0x40000000 + 529) +#define __NR_set_robust_list (0x40000000 + 530) +#define __NR_get_robust_list (0x40000000 + 531) +#define __NR_vmsplice (0x40000000 + 532) +#define __NR_move_pages (0x40000000 + 533) +#define __NR_preadv (0x40000000 + 534) +#define __NR_pwritev (0x40000000 + 535) +#define __NR_rt_tgsigqueueinfo (0x40000000 + 536) +#define __NR_recvmmsg (0x40000000 + 537) +#define __NR_sendmmsg (0x40000000 + 538) +#define __NR_process_vm_readv (0x40000000 + 539) +#define __NR_process_vm_writev (0x40000000 + 540) +#define __NR_setsockopt (0x40000000 + 541) +#define __NR_getsockopt (0x40000000 + 542) +#define __NR_io_setup (0x40000000 + 543) +#define __NR_io_submit (0x40000000 + 544) +#define __NR_execveat (0x40000000 + 545) +#define __NR_preadv2 (0x40000000 + 546) +#define __NR_pwritev2 (0x40000000 + 547) + +#define SYS_read (0x40000000 + 0) +#define SYS_write (0x40000000 + 1) +#define SYS_open (0x40000000 + 2) +#define SYS_close (0x40000000 + 3) +#define SYS_stat (0x40000000 + 4) +#define SYS_fstat (0x40000000 + 5) +#define SYS_lstat (0x40000000 + 6) +#define SYS_poll (0x40000000 + 7) +#define SYS_lseek (0x40000000 + 8) +#define SYS_mmap (0x40000000 + 9) +#define SYS_mprotect (0x40000000 + 10) +#define SYS_munmap (0x40000000 + 11) +#define SYS_brk (0x40000000 + 12) +#define SYS_rt_sigprocmask (0x40000000 + 14) +#define SYS_pread64 (0x40000000 + 17) +#define SYS_pwrite64 (0x40000000 + 18) +#define SYS_access (0x40000000 + 21) +#define SYS_pipe (0x40000000 + 22) +#define SYS_select (0x40000000 + 23) +#define SYS_sched_yield (0x40000000 + 24) +#define SYS_mremap (0x40000000 + 25) +#define SYS_msync (0x40000000 + 26) +#define SYS_mincore (0x40000000 + 27) +#define SYS_madvise (0x40000000 + 28) +#define SYS_shmget (0x40000000 + 29) +#define SYS_shmat (0x40000000 + 30) +#define SYS_shmctl (0x40000000 + 31) +#define SYS_dup (0x40000000 + 32) +#define SYS_dup2 (0x40000000 + 33) +#define SYS_pause (0x40000000 + 34) +#define SYS_nanosleep (0x40000000 + 35) +#define SYS_getitimer (0x40000000 + 36) +#define SYS_alarm (0x40000000 + 37) +#define SYS_setitimer (0x40000000 + 38) +#define SYS_getpid (0x40000000 + 39) +#define SYS_sendfile (0x40000000 + 40) +#define SYS_socket (0x40000000 + 41) +#define SYS_connect (0x40000000 + 42) +#define SYS_accept (0x40000000 + 43) +#define SYS_sendto (0x40000000 + 44) +#define SYS_shutdown (0x40000000 + 48) +#define SYS_bind (0x40000000 + 49) +#define SYS_listen (0x40000000 + 50) +#define SYS_getsockname (0x40000000 + 51) +#define SYS_getpeername (0x40000000 + 52) +#define SYS_socketpair (0x40000000 + 53) +#define SYS_clone (0x40000000 + 56) +#define SYS_fork (0x40000000 + 57) +#define SYS_vfork (0x40000000 + 58) +#define SYS_exit (0x40000000 + 60) +#define SYS_wait4 (0x40000000 + 61) +#define SYS_kill (0x40000000 + 62) +#define SYS_uname (0x40000000 + 63) +#define SYS_semget (0x40000000 + 64) +#define SYS_semop (0x40000000 + 65) +#define SYS_semctl (0x40000000 + 66) +#define SYS_shmdt (0x40000000 + 67) +#define SYS_msgget (0x40000000 + 68) +#define SYS_msgsnd (0x40000000 + 69) +#define SYS_msgrcv (0x40000000 + 70) +#define SYS_msgctl (0x40000000 + 71) +#define SYS_fcntl (0x40000000 + 72) +#define SYS_flock (0x40000000 + 73) +#define SYS_fsync (0x40000000 + 74) +#define SYS_fdatasync (0x40000000 + 75) +#define SYS_truncate (0x40000000 + 76) +#define SYS_ftruncate (0x40000000 + 77) +#define SYS_getdents (0x40000000 + 78) +#define SYS_getcwd (0x40000000 + 79) +#define SYS_chdir (0x40000000 + 80) +#define SYS_fchdir (0x40000000 + 81) +#define SYS_rename (0x40000000 + 82) +#define SYS_mkdir (0x40000000 + 83) +#define SYS_rmdir (0x40000000 + 84) +#define SYS_creat (0x40000000 + 85) +#define SYS_link (0x40000000 + 86) +#define SYS_unlink (0x40000000 + 87) +#define SYS_symlink (0x40000000 + 88) +#define SYS_readlink (0x40000000 + 89) +#define SYS_chmod (0x40000000 + 90) +#define SYS_fchmod (0x40000000 + 91) +#define SYS_chown (0x40000000 + 92) +#define SYS_fchown (0x40000000 + 93) +#define SYS_lchown (0x40000000 + 94) +#define SYS_umask (0x40000000 + 95) +#define SYS_gettimeofday (0x40000000 + 96) +#define SYS_getrlimit (0x40000000 + 97) +#define SYS_getrusage (0x40000000 + 98) +#define SYS_sysinfo (0x40000000 + 99) +#define SYS_times (0x40000000 + 100) +#define SYS_getuid (0x40000000 + 102) +#define SYS_syslog (0x40000000 + 103) +#define SYS_getgid (0x40000000 + 104) +#define SYS_setuid (0x40000000 + 105) +#define SYS_setgid (0x40000000 + 106) +#define SYS_geteuid (0x40000000 + 107) +#define SYS_getegid (0x40000000 + 108) +#define SYS_setpgid (0x40000000 + 109) +#define SYS_getppid (0x40000000 + 110) +#define SYS_getpgrp (0x40000000 + 111) +#define SYS_setsid (0x40000000 + 112) +#define SYS_setreuid (0x40000000 + 113) +#define SYS_setregid (0x40000000 + 114) +#define SYS_getgroups (0x40000000 + 115) +#define SYS_setgroups (0x40000000 + 116) +#define SYS_setresuid (0x40000000 + 117) +#define SYS_getresuid (0x40000000 + 118) +#define SYS_setresgid (0x40000000 + 119) +#define SYS_getresgid (0x40000000 + 120) +#define SYS_getpgid (0x40000000 + 121) +#define SYS_setfsuid (0x40000000 + 122) +#define SYS_setfsgid (0x40000000 + 123) +#define SYS_getsid (0x40000000 + 124) +#define SYS_capget (0x40000000 + 125) +#define SYS_capset (0x40000000 + 126) +#define SYS_rt_sigsuspend (0x40000000 + 130) +#define SYS_utime (0x40000000 + 132) +#define SYS_mknod (0x40000000 + 133) +#define SYS_personality (0x40000000 + 135) +#define SYS_ustat (0x40000000 + 136) +#define SYS_statfs (0x40000000 + 137) +#define SYS_fstatfs (0x40000000 + 138) +#define SYS_sysfs (0x40000000 + 139) +#define SYS_getpriority (0x40000000 + 140) +#define SYS_setpriority (0x40000000 + 141) +#define SYS_sched_setparam (0x40000000 + 142) +#define SYS_sched_getparam (0x40000000 + 143) +#define SYS_sched_setscheduler (0x40000000 + 144) +#define SYS_sched_getscheduler (0x40000000 + 145) +#define SYS_sched_get_priority_max (0x40000000 + 146) +#define SYS_sched_get_priority_min (0x40000000 + 147) +#define SYS_sched_rr_get_interval (0x40000000 + 148) +#define SYS_mlock (0x40000000 + 149) +#define SYS_munlock (0x40000000 + 150) +#define SYS_mlockall (0x40000000 + 151) +#define SYS_munlockall (0x40000000 + 152) +#define SYS_vhangup (0x40000000 + 153) +#define SYS_modify_ldt (0x40000000 + 154) +#define SYS_pivot_root (0x40000000 + 155) +#define SYS_prctl (0x40000000 + 157) +#define SYS_arch_prctl (0x40000000 + 158) +#define SYS_adjtimex (0x40000000 + 159) +#define SYS_setrlimit (0x40000000 + 160) +#define SYS_chroot (0x40000000 + 161) +#define SYS_sync (0x40000000 + 162) +#define SYS_acct (0x40000000 + 163) +#define SYS_settimeofday (0x40000000 + 164) +#define SYS_mount (0x40000000 + 165) +#define SYS_umount2 (0x40000000 + 166) +#define SYS_swapon (0x40000000 + 167) +#define SYS_swapoff (0x40000000 + 168) +#define SYS_reboot (0x40000000 + 169) +#define SYS_sethostname (0x40000000 + 170) +#define SYS_setdomainname (0x40000000 + 171) +#define SYS_iopl (0x40000000 + 172) +#define SYS_ioperm (0x40000000 + 173) +#define SYS_init_module (0x40000000 + 175) +#define SYS_delete_module (0x40000000 + 176) +#define SYS_quotactl (0x40000000 + 179) +#define SYS_getpmsg (0x40000000 + 181) +#define SYS_putpmsg (0x40000000 + 182) +#define SYS_afs_syscall (0x40000000 + 183) +#define SYS_tuxcall (0x40000000 + 184) +#define SYS_security (0x40000000 + 185) +#define SYS_gettid (0x40000000 + 186) +#define SYS_readahead (0x40000000 + 187) +#define SYS_setxattr (0x40000000 + 188) +#define SYS_lsetxattr (0x40000000 + 189) +#define SYS_fsetxattr (0x40000000 + 190) +#define SYS_getxattr (0x40000000 + 191) +#define SYS_lgetxattr (0x40000000 + 192) +#define SYS_fgetxattr (0x40000000 + 193) +#define SYS_listxattr (0x40000000 + 194) +#define SYS_llistxattr (0x40000000 + 195) +#define SYS_flistxattr (0x40000000 + 196) +#define SYS_removexattr (0x40000000 + 197) +#define SYS_lremovexattr (0x40000000 + 198) +#define SYS_fremovexattr (0x40000000 + 199) +#define SYS_tkill (0x40000000 + 200) +#define SYS_time (0x40000000 + 201) +#define SYS_futex (0x40000000 + 202) +#define SYS_sched_setaffinity (0x40000000 + 203) +#define SYS_sched_getaffinity (0x40000000 + 204) +#define SYS_io_destroy (0x40000000 + 207) +#define SYS_io_getevents (0x40000000 + 208) +#define SYS_io_cancel (0x40000000 + 210) +#define SYS_lookup_dcookie (0x40000000 + 212) +#define SYS_epoll_create (0x40000000 + 213) +#define SYS_remap_file_pages (0x40000000 + 216) +#define SYS_getdents64 (0x40000000 + 217) +#define SYS_set_tid_address (0x40000000 + 218) +#define SYS_restart_syscall (0x40000000 + 219) +#define SYS_semtimedop (0x40000000 + 220) +#define SYS_fadvise64 (0x40000000 + 221) +#define SYS_timer_settime (0x40000000 + 223) +#define SYS_timer_gettime (0x40000000 + 224) +#define SYS_timer_getoverrun (0x40000000 + 225) +#define SYS_timer_delete (0x40000000 + 226) +#define SYS_clock_settime (0x40000000 + 227) +#define SYS_clock_gettime (0x40000000 + 228) +#define SYS_clock_getres (0x40000000 + 229) +#define SYS_clock_nanosleep (0x40000000 + 230) +#define SYS_exit_group (0x40000000 + 231) +#define SYS_epoll_wait (0x40000000 + 232) +#define SYS_epoll_ctl (0x40000000 + 233) +#define SYS_tgkill (0x40000000 + 234) +#define SYS_utimes (0x40000000 + 235) +#define SYS_mbind (0x40000000 + 237) +#define SYS_set_mempolicy (0x40000000 + 238) +#define SYS_get_mempolicy (0x40000000 + 239) +#define SYS_mq_open (0x40000000 + 240) +#define SYS_mq_unlink (0x40000000 + 241) +#define SYS_mq_timedsend (0x40000000 + 242) +#define SYS_mq_timedreceive (0x40000000 + 243) +#define SYS_mq_getsetattr (0x40000000 + 245) +#define SYS_add_key (0x40000000 + 248) +#define SYS_request_key (0x40000000 + 249) +#define SYS_keyctl (0x40000000 + 250) +#define SYS_ioprio_set (0x40000000 + 251) +#define SYS_ioprio_get (0x40000000 + 252) +#define SYS_inotify_init (0x40000000 + 253) +#define SYS_inotify_add_watch (0x40000000 + 254) +#define SYS_inotify_rm_watch (0x40000000 + 255) +#define SYS_migrate_pages (0x40000000 + 256) +#define SYS_openat (0x40000000 + 257) +#define SYS_mkdirat (0x40000000 + 258) +#define SYS_mknodat (0x40000000 + 259) +#define SYS_fchownat (0x40000000 + 260) +#define SYS_futimesat (0x40000000 + 261) +#define SYS_newfstatat (0x40000000 + 262) +#define SYS_unlinkat (0x40000000 + 263) +#define SYS_renameat (0x40000000 + 264) +#define SYS_linkat (0x40000000 + 265) +#define SYS_symlinkat (0x40000000 + 266) +#define SYS_readlinkat (0x40000000 + 267) +#define SYS_fchmodat (0x40000000 + 268) +#define SYS_faccessat (0x40000000 + 269) +#define SYS_pselect6 (0x40000000 + 270) +#define SYS_ppoll (0x40000000 + 271) +#define SYS_unshare (0x40000000 + 272) +#define SYS_splice (0x40000000 + 275) +#define SYS_tee (0x40000000 + 276) +#define SYS_sync_file_range (0x40000000 + 277) +#define SYS_utimensat (0x40000000 + 280) +#define SYS_epoll_pwait (0x40000000 + 281) +#define SYS_signalfd (0x40000000 + 282) +#define SYS_timerfd_create (0x40000000 + 283) +#define SYS_eventfd (0x40000000 + 284) +#define SYS_fallocate (0x40000000 + 285) +#define SYS_timerfd_settime (0x40000000 + 286) +#define SYS_timerfd_gettime (0x40000000 + 287) +#define SYS_accept4 (0x40000000 + 288) +#define SYS_signalfd4 (0x40000000 + 289) +#define SYS_eventfd2 (0x40000000 + 290) +#define SYS_epoll_create1 (0x40000000 + 291) +#define SYS_dup3 (0x40000000 + 292) +#define SYS_pipe2 (0x40000000 + 293) +#define SYS_inotify_init1 (0x40000000 + 294) +#define SYS_perf_event_open (0x40000000 + 298) +#define SYS_fanotify_init (0x40000000 + 300) +#define SYS_fanotify_mark (0x40000000 + 301) +#define SYS_prlimit64 (0x40000000 + 302) +#define SYS_name_to_handle_at (0x40000000 + 303) +#define SYS_open_by_handle_at (0x40000000 + 304) +#define SYS_clock_adjtime (0x40000000 + 305) +#define SYS_syncfs (0x40000000 + 306) +#define SYS_setns (0x40000000 + 308) +#define SYS_getcpu (0x40000000 + 309) +#define SYS_kcmp (0x40000000 + 312) +#define SYS_finit_module (0x40000000 + 313) +#define SYS_sched_setattr (0x40000000 + 314) +#define SYS_sched_getattr (0x40000000 + 315) +#define SYS_renameat2 (0x40000000 + 316) +#define SYS_seccomp (0x40000000 + 317) +#define SYS_getrandom (0x40000000 + 318) +#define SYS_memfd_create (0x40000000 + 319) +#define SYS_kexec_file_load (0x40000000 + 320) +#define SYS_bpf (0x40000000 + 321) +#define SYS_userfaultfd (0x40000000 + 323) +#define SYS_membarrier (0x40000000 + 324) +#define SYS_mlock2 (0x40000000 + 325) +#define SYS_copy_file_range (0x40000000 + 326) +#define SYS_pkey_mprotect (0x40000000 + 329) +#define SYS_pkey_alloc (0x40000000 + 330) +#define SYS_pkey_free (0x40000000 + 331) +#define SYS_statx (0x40000000 + 332) +#define SYS_io_pgetevents (0x40000000 + 333) +#define SYS_rseq (0x40000000 + 334) +#define SYS_pidfd_send_signal (0x40000000 + 424) +#define SYS_io_uring_setup (0x40000000 + 425) +#define SYS_io_uring_enter (0x40000000 + 426) +#define SYS_io_uring_register (0x40000000 + 427) +#define SYS_open_tree (0x40000000 + 428) +#define SYS_move_mount (0x40000000 + 429) +#define SYS_fsopen (0x40000000 + 430) +#define SYS_fsconfig (0x40000000 + 431) +#define SYS_fsmount (0x40000000 + 432) +#define SYS_fspick (0x40000000 + 433) +#define SYS_pidfd_open (0x40000000 + 434) +#define SYS_clone3 (0x40000000 + 435) +#define SYS_close_range (0x40000000 + 436) +#define SYS_openat2 (0x40000000 + 437) +#define SYS_pidfd_getfd (0x40000000 + 438) +#define SYS_faccessat2 (0x40000000 + 439) +#define SYS_process_madvise (0x40000000 + 440) +#define SYS_epoll_pwait2 (0x40000000 + 441) +#define SYS_mount_setattr (0x40000000 + 442) +#define SYS_landlock_create_ruleset (0x40000000 + 444) +#define SYS_landlock_add_rule (0x40000000 + 445) +#define SYS_landlock_restrict_self (0x40000000 + 446) +#define SYS_memfd_secret (0x40000000 + 447) +#define SYS_process_mrelease (0x40000000 + 448) +#define SYS_futex_waitv (0x40000000 + 449) +#define SYS_set_mempolicy_home_node (0x40000000 + 450) +#define SYS_cachestat (0x40000000 + 451) +#define SYS_fchmodat2 (0x40000000 + 452) +#define SYS_rt_sigaction (0x40000000 + 512) +#define SYS_rt_sigreturn (0x40000000 + 513) +#define SYS_ioctl (0x40000000 + 514) +#define SYS_readv (0x40000000 + 515) +#define SYS_writev (0x40000000 + 516) +#define SYS_recvfrom (0x40000000 + 517) +#define SYS_sendmsg (0x40000000 + 518) +#define SYS_recvmsg (0x40000000 + 519) +#define SYS_execve (0x40000000 + 520) +#define SYS_ptrace (0x40000000 + 521) +#define SYS_rt_sigpending (0x40000000 + 522) +#define SYS_rt_sigtimedwait (0x40000000 + 523) +#define SYS_rt_sigqueueinfo (0x40000000 + 524) +#define SYS_sigaltstack (0x40000000 + 525) +#define SYS_timer_create (0x40000000 + 526) +#define SYS_mq_notify (0x40000000 + 527) +#define SYS_kexec_load (0x40000000 + 528) +#define SYS_waitid (0x40000000 + 529) +#define SYS_set_robust_list (0x40000000 + 530) +#define SYS_get_robust_list (0x40000000 + 531) +#define SYS_vmsplice (0x40000000 + 532) +#define SYS_move_pages (0x40000000 + 533) +#define SYS_preadv (0x40000000 + 534) +#define SYS_pwritev (0x40000000 + 535) +#define SYS_rt_tgsigqueueinfo (0x40000000 + 536) +#define SYS_recvmmsg (0x40000000 + 537) +#define SYS_sendmmsg (0x40000000 + 538) +#define SYS_process_vm_readv (0x40000000 + 539) +#define SYS_process_vm_writev (0x40000000 + 540) +#define SYS_setsockopt (0x40000000 + 541) +#define SYS_getsockopt (0x40000000 + 542) +#define SYS_io_setup (0x40000000 + 543) +#define SYS_io_submit (0x40000000 + 544) +#define SYS_execveat (0x40000000 + 545) +#define SYS_preadv2 (0x40000000 + 546) +#define SYS_pwritev2 (0x40000000 + 547) \ No newline at end of file diff --git a/lib/libc/include/x86_64-linux-muslx32/bits/user.h b/lib/libc/include/x86_64-linux-muslx32/bits/user.h new file mode 100644 index 000000000000..df72f2a5dec4 --- /dev/null +++ b/lib/libc/include/x86_64-linux-muslx32/bits/user.h @@ -0,0 +1,41 @@ +#undef __WORDSIZE +#define __WORDSIZE 32 + +typedef struct user_fpregs_struct { + uint16_t cwd, swd, ftw, fop; + uint64_t rip, rdp; + uint32_t mxcsr, mxcr_mask; + uint32_t st_space[32], xmm_space[64], padding[24]; +} elf_fpregset_t; + +struct user_regs_struct { + unsigned long r15, r14, r13, r12, rbp, rbx, r11, r10, r9, r8; + unsigned long rax, rcx, rdx, rsi, rdi, orig_rax, rip; + unsigned long cs, eflags, rsp, ss, fs_base, gs_base, ds, es, fs, gs; +}; +#define ELF_NGREG 27 +typedef unsigned long long elf_greg_t, elf_gregset_t[ELF_NGREG]; + +struct user { + struct user_regs_struct regs; + int u_fpvalid; + struct user_fpregs_struct i387; + unsigned long u_tsize; + unsigned long u_dsize; + unsigned long u_ssize; + unsigned long start_code; + unsigned long start_stack; + long signal; + int reserved; + struct user_regs_struct *u_ar0; + struct user_fpregs_struct *u_fpstate; + unsigned long magic; + char u_comm[32]; + unsigned long u_debugreg[8]; +}; + +#define PAGE_MASK (~(PAGESIZE-1)) +#define NBPG PAGESIZE +#define UPAGES 1 +#define HOST_TEXT_START_ADDR (u.start_code) +#define HOST_STACK_END_ADDR (u.start_stack + u.u_ssize * NBPG) \ No newline at end of file diff --git a/lib/libc/musl/arch/aarch64/bits/alltypes.h.in b/lib/libc/musl/arch/aarch64/bits/alltypes.h.in deleted file mode 100644 index c547ca0b72a3..000000000000 --- a/lib/libc/musl/arch/aarch64/bits/alltypes.h.in +++ /dev/null @@ -1,24 +0,0 @@ -#define _Addr long -#define _Int64 long -#define _Reg long - -#if __AARCH64EB__ -#define __BYTE_ORDER 4321 -#else -#define __BYTE_ORDER 1234 -#endif - -#define __LONG_MAX 0x7fffffffffffffffL - -#ifndef __cplusplus -TYPEDEF unsigned wchar_t; -#endif -TYPEDEF unsigned wint_t; - -TYPEDEF int blksize_t; -TYPEDEF unsigned int nlink_t; - -TYPEDEF float float_t; -TYPEDEF double double_t; - -TYPEDEF struct { long long __ll; long double __ld; } max_align_t; diff --git a/lib/libc/musl/arch/aarch64/bits/syscall.h.in b/lib/libc/musl/arch/aarch64/bits/syscall.h.in deleted file mode 100644 index ea5a152a2093..000000000000 --- a/lib/libc/musl/arch/aarch64/bits/syscall.h.in +++ /dev/null @@ -1,307 +0,0 @@ -#define __NR_io_setup 0 -#define __NR_io_destroy 1 -#define __NR_io_submit 2 -#define __NR_io_cancel 3 -#define __NR_io_getevents 4 -#define __NR_setxattr 5 -#define __NR_lsetxattr 6 -#define __NR_fsetxattr 7 -#define __NR_getxattr 8 -#define __NR_lgetxattr 9 -#define __NR_fgetxattr 10 -#define __NR_listxattr 11 -#define __NR_llistxattr 12 -#define __NR_flistxattr 13 -#define __NR_removexattr 14 -#define __NR_lremovexattr 15 -#define __NR_fremovexattr 16 -#define __NR_getcwd 17 -#define __NR_lookup_dcookie 18 -#define __NR_eventfd2 19 -#define __NR_epoll_create1 20 -#define __NR_epoll_ctl 21 -#define __NR_epoll_pwait 22 -#define __NR_dup 23 -#define __NR_dup3 24 -#define __NR_fcntl 25 -#define __NR_inotify_init1 26 -#define __NR_inotify_add_watch 27 -#define __NR_inotify_rm_watch 28 -#define __NR_ioctl 29 -#define __NR_ioprio_set 30 -#define __NR_ioprio_get 31 -#define __NR_flock 32 -#define __NR_mknodat 33 -#define __NR_mkdirat 34 -#define __NR_unlinkat 35 -#define __NR_symlinkat 36 -#define __NR_linkat 37 -#define __NR_renameat 38 -#define __NR_umount2 39 -#define __NR_mount 40 -#define __NR_pivot_root 41 -#define __NR_nfsservctl 42 -#define __NR_statfs 43 -#define __NR_fstatfs 44 -#define __NR_truncate 45 -#define __NR_ftruncate 46 -#define __NR_fallocate 47 -#define __NR_faccessat 48 -#define __NR_chdir 49 -#define __NR_fchdir 50 -#define __NR_chroot 51 -#define __NR_fchmod 52 -#define __NR_fchmodat 53 -#define __NR_fchownat 54 -#define __NR_fchown 55 -#define __NR_openat 56 -#define __NR_close 57 -#define __NR_vhangup 58 -#define __NR_pipe2 59 -#define __NR_quotactl 60 -#define __NR_getdents64 61 -#define __NR_lseek 62 -#define __NR_read 63 -#define __NR_write 64 -#define __NR_readv 65 -#define __NR_writev 66 -#define __NR_pread64 67 -#define __NR_pwrite64 68 -#define __NR_preadv 69 -#define __NR_pwritev 70 -#define __NR_sendfile 71 -#define __NR_pselect6 72 -#define __NR_ppoll 73 -#define __NR_signalfd4 74 -#define __NR_vmsplice 75 -#define __NR_splice 76 -#define __NR_tee 77 -#define __NR_readlinkat 78 -#define __NR_newfstatat 79 -#define __NR_fstat 80 -#define __NR_sync 81 -#define __NR_fsync 82 -#define __NR_fdatasync 83 -#define __NR_sync_file_range 84 -#define __NR_timerfd_create 85 -#define __NR_timerfd_settime 86 -#define __NR_timerfd_gettime 87 -#define __NR_utimensat 88 -#define __NR_acct 89 -#define __NR_capget 90 -#define __NR_capset 91 -#define __NR_personality 92 -#define __NR_exit 93 -#define __NR_exit_group 94 -#define __NR_waitid 95 -#define __NR_set_tid_address 96 -#define __NR_unshare 97 -#define __NR_futex 98 -#define __NR_set_robust_list 99 -#define __NR_get_robust_list 100 -#define __NR_nanosleep 101 -#define __NR_getitimer 102 -#define __NR_setitimer 103 -#define __NR_kexec_load 104 -#define __NR_init_module 105 -#define __NR_delete_module 106 -#define __NR_timer_create 107 -#define __NR_timer_gettime 108 -#define __NR_timer_getoverrun 109 -#define __NR_timer_settime 110 -#define __NR_timer_delete 111 -#define __NR_clock_settime 112 -#define __NR_clock_gettime 113 -#define __NR_clock_getres 114 -#define __NR_clock_nanosleep 115 -#define __NR_syslog 116 -#define __NR_ptrace 117 -#define __NR_sched_setparam 118 -#define __NR_sched_setscheduler 119 -#define __NR_sched_getscheduler 120 -#define __NR_sched_getparam 121 -#define __NR_sched_setaffinity 122 -#define __NR_sched_getaffinity 123 -#define __NR_sched_yield 124 -#define __NR_sched_get_priority_max 125 -#define __NR_sched_get_priority_min 126 -#define __NR_sched_rr_get_interval 127 -#define __NR_restart_syscall 128 -#define __NR_kill 129 -#define __NR_tkill 130 -#define __NR_tgkill 131 -#define __NR_sigaltstack 132 -#define __NR_rt_sigsuspend 133 -#define __NR_rt_sigaction 134 -#define __NR_rt_sigprocmask 135 -#define __NR_rt_sigpending 136 -#define __NR_rt_sigtimedwait 137 -#define __NR_rt_sigqueueinfo 138 -#define __NR_rt_sigreturn 139 -#define __NR_setpriority 140 -#define __NR_getpriority 141 -#define __NR_reboot 142 -#define __NR_setregid 143 -#define __NR_setgid 144 -#define __NR_setreuid 145 -#define __NR_setuid 146 -#define __NR_setresuid 147 -#define __NR_getresuid 148 -#define __NR_setresgid 149 -#define __NR_getresgid 150 -#define __NR_setfsuid 151 -#define __NR_setfsgid 152 -#define __NR_times 153 -#define __NR_setpgid 154 -#define __NR_getpgid 155 -#define __NR_getsid 156 -#define __NR_setsid 157 -#define __NR_getgroups 158 -#define __NR_setgroups 159 -#define __NR_uname 160 -#define __NR_sethostname 161 -#define __NR_setdomainname 162 -#define __NR_getrlimit 163 -#define __NR_setrlimit 164 -#define __NR_getrusage 165 -#define __NR_umask 166 -#define __NR_prctl 167 -#define __NR_getcpu 168 -#define __NR_gettimeofday 169 -#define __NR_settimeofday 170 -#define __NR_adjtimex 171 -#define __NR_getpid 172 -#define __NR_getppid 173 -#define __NR_getuid 174 -#define __NR_geteuid 175 -#define __NR_getgid 176 -#define __NR_getegid 177 -#define __NR_gettid 178 -#define __NR_sysinfo 179 -#define __NR_mq_open 180 -#define __NR_mq_unlink 181 -#define __NR_mq_timedsend 182 -#define __NR_mq_timedreceive 183 -#define __NR_mq_notify 184 -#define __NR_mq_getsetattr 185 -#define __NR_msgget 186 -#define __NR_msgctl 187 -#define __NR_msgrcv 188 -#define __NR_msgsnd 189 -#define __NR_semget 190 -#define __NR_semctl 191 -#define __NR_semtimedop 192 -#define __NR_semop 193 -#define __NR_shmget 194 -#define __NR_shmctl 195 -#define __NR_shmat 196 -#define __NR_shmdt 197 -#define __NR_socket 198 -#define __NR_socketpair 199 -#define __NR_bind 200 -#define __NR_listen 201 -#define __NR_accept 202 -#define __NR_connect 203 -#define __NR_getsockname 204 -#define __NR_getpeername 205 -#define __NR_sendto 206 -#define __NR_recvfrom 207 -#define __NR_setsockopt 208 -#define __NR_getsockopt 209 -#define __NR_shutdown 210 -#define __NR_sendmsg 211 -#define __NR_recvmsg 212 -#define __NR_readahead 213 -#define __NR_brk 214 -#define __NR_munmap 215 -#define __NR_mremap 216 -#define __NR_add_key 217 -#define __NR_request_key 218 -#define __NR_keyctl 219 -#define __NR_clone 220 -#define __NR_execve 221 -#define __NR_mmap 222 -#define __NR_fadvise64 223 -#define __NR_swapon 224 -#define __NR_swapoff 225 -#define __NR_mprotect 226 -#define __NR_msync 227 -#define __NR_mlock 228 -#define __NR_munlock 229 -#define __NR_mlockall 230 -#define __NR_munlockall 231 -#define __NR_mincore 232 -#define __NR_madvise 233 -#define __NR_remap_file_pages 234 -#define __NR_mbind 235 -#define __NR_get_mempolicy 236 -#define __NR_set_mempolicy 237 -#define __NR_migrate_pages 238 -#define __NR_move_pages 239 -#define __NR_rt_tgsigqueueinfo 240 -#define __NR_perf_event_open 241 -#define __NR_accept4 242 -#define __NR_recvmmsg 243 -#define __NR_wait4 260 -#define __NR_prlimit64 261 -#define __NR_fanotify_init 262 -#define __NR_fanotify_mark 263 -#define __NR_name_to_handle_at 264 -#define __NR_open_by_handle_at 265 -#define __NR_clock_adjtime 266 -#define __NR_syncfs 267 -#define __NR_setns 268 -#define __NR_sendmmsg 269 -#define __NR_process_vm_readv 270 -#define __NR_process_vm_writev 271 -#define __NR_kcmp 272 -#define __NR_finit_module 273 -#define __NR_sched_setattr 274 -#define __NR_sched_getattr 275 -#define __NR_renameat2 276 -#define __NR_seccomp 277 -#define __NR_getrandom 278 -#define __NR_memfd_create 279 -#define __NR_bpf 280 -#define __NR_execveat 281 -#define __NR_userfaultfd 282 -#define __NR_membarrier 283 -#define __NR_mlock2 284 -#define __NR_copy_file_range 285 -#define __NR_preadv2 286 -#define __NR_pwritev2 287 -#define __NR_pkey_mprotect 288 -#define __NR_pkey_alloc 289 -#define __NR_pkey_free 290 -#define __NR_statx 291 -#define __NR_io_pgetevents 292 -#define __NR_rseq 293 -#define __NR_kexec_file_load 294 -#define __NR_pidfd_send_signal 424 -#define __NR_io_uring_setup 425 -#define __NR_io_uring_enter 426 -#define __NR_io_uring_register 427 -#define __NR_open_tree 428 -#define __NR_move_mount 429 -#define __NR_fsopen 430 -#define __NR_fsconfig 431 -#define __NR_fsmount 432 -#define __NR_fspick 433 -#define __NR_pidfd_open 434 -#define __NR_clone3 435 -#define __NR_close_range 436 -#define __NR_openat2 437 -#define __NR_pidfd_getfd 438 -#define __NR_faccessat2 439 -#define __NR_process_madvise 440 -#define __NR_epoll_pwait2 441 -#define __NR_mount_setattr 442 -#define __NR_landlock_create_ruleset 444 -#define __NR_landlock_add_rule 445 -#define __NR_landlock_restrict_self 446 -#define __NR_process_mrelease 448 -#define __NR_futex_waitv 449 -#define __NR_set_mempolicy_home_node 450 -#define __NR_cachestat 451 -#define __NR_fchmodat2 452 - diff --git a/lib/libc/musl/arch/arm/bits/alltypes.h.in b/lib/libc/musl/arch/arm/bits/alltypes.h.in deleted file mode 100644 index d62bd7bde666..000000000000 --- a/lib/libc/musl/arch/arm/bits/alltypes.h.in +++ /dev/null @@ -1,21 +0,0 @@ -#define _REDIR_TIME64 1 -#define _Addr int -#define _Int64 long long -#define _Reg int - -#if __ARMEB__ -#define __BYTE_ORDER 4321 -#else -#define __BYTE_ORDER 1234 -#endif - -#define __LONG_MAX 0x7fffffffL - -#ifndef __cplusplus -TYPEDEF unsigned wchar_t; -#endif - -TYPEDEF float float_t; -TYPEDEF double double_t; - -TYPEDEF struct { long long __ll; long double __ld; } max_align_t; diff --git a/lib/libc/musl/arch/arm/bits/syscall.h.in b/lib/libc/musl/arch/arm/bits/syscall.h.in deleted file mode 100644 index 157b304d5458..000000000000 --- a/lib/libc/musl/arch/arm/bits/syscall.h.in +++ /dev/null @@ -1,414 +0,0 @@ -#define __NR_restart_syscall 0 -#define __NR_exit 1 -#define __NR_fork 2 -#define __NR_read 3 -#define __NR_write 4 -#define __NR_open 5 -#define __NR_close 6 -#define __NR_creat 8 -#define __NR_link 9 -#define __NR_unlink 10 -#define __NR_execve 11 -#define __NR_chdir 12 -#define __NR_mknod 14 -#define __NR_chmod 15 -#define __NR_lchown 16 -#define __NR_lseek 19 -#define __NR_getpid 20 -#define __NR_mount 21 -#define __NR_setuid 23 -#define __NR_getuid 24 -#define __NR_ptrace 26 -#define __NR_pause 29 -#define __NR_access 33 -#define __NR_nice 34 -#define __NR_sync 36 -#define __NR_kill 37 -#define __NR_rename 38 -#define __NR_mkdir 39 -#define __NR_rmdir 40 -#define __NR_dup 41 -#define __NR_pipe 42 -#define __NR_times 43 -#define __NR_brk 45 -#define __NR_setgid 46 -#define __NR_getgid 47 -#define __NR_geteuid 49 -#define __NR_getegid 50 -#define __NR_acct 51 -#define __NR_umount2 52 -#define __NR_ioctl 54 -#define __NR_fcntl 55 -#define __NR_setpgid 57 -#define __NR_umask 60 -#define __NR_chroot 61 -#define __NR_ustat 62 -#define __NR_dup2 63 -#define __NR_getppid 64 -#define __NR_getpgrp 65 -#define __NR_setsid 66 -#define __NR_sigaction 67 -#define __NR_setreuid 70 -#define __NR_setregid 71 -#define __NR_sigsuspend 72 -#define __NR_sigpending 73 -#define __NR_sethostname 74 -#define __NR_setrlimit 75 -#define __NR_getrusage 77 -#define __NR_gettimeofday_time32 78 -#define __NR_settimeofday_time32 79 -#define __NR_getgroups 80 -#define __NR_setgroups 81 -#define __NR_symlink 83 -#define __NR_readlink 85 -#define __NR_uselib 86 -#define __NR_swapon 87 -#define __NR_reboot 88 -#define __NR_munmap 91 -#define __NR_truncate 92 -#define __NR_ftruncate 93 -#define __NR_fchmod 94 -#define __NR_fchown 95 -#define __NR_getpriority 96 -#define __NR_setpriority 97 -#define __NR_statfs 99 -#define __NR_fstatfs 100 -#define __NR_syslog 103 -#define __NR_setitimer 104 -#define __NR_getitimer 105 -#define __NR_stat 106 -#define __NR_lstat 107 -#define __NR_fstat 108 -#define __NR_vhangup 111 -#define __NR_wait4 114 -#define __NR_swapoff 115 -#define __NR_sysinfo 116 -#define __NR_fsync 118 -#define __NR_sigreturn 119 -#define __NR_clone 120 -#define __NR_setdomainname 121 -#define __NR_uname 122 -#define __NR_adjtimex 124 -#define __NR_mprotect 125 -#define __NR_sigprocmask 126 -#define __NR_init_module 128 -#define __NR_delete_module 129 -#define __NR_quotactl 131 -#define __NR_getpgid 132 -#define __NR_fchdir 133 -#define __NR_bdflush 134 -#define __NR_sysfs 135 -#define __NR_personality 136 -#define __NR_setfsuid 138 -#define __NR_setfsgid 139 -#define __NR__llseek 140 -#define __NR_getdents 141 -#define __NR__newselect 142 -#define __NR_flock 143 -#define __NR_msync 144 -#define __NR_readv 145 -#define __NR_writev 146 -#define __NR_getsid 147 -#define __NR_fdatasync 148 -#define __NR__sysctl 149 -#define __NR_mlock 150 -#define __NR_munlock 151 -#define __NR_mlockall 152 -#define __NR_munlockall 153 -#define __NR_sched_setparam 154 -#define __NR_sched_getparam 155 -#define __NR_sched_setscheduler 156 -#define __NR_sched_getscheduler 157 -#define __NR_sched_yield 158 -#define __NR_sched_get_priority_max 159 -#define __NR_sched_get_priority_min 160 -#define __NR_sched_rr_get_interval 161 -#define __NR_nanosleep 162 -#define __NR_mremap 163 -#define __NR_setresuid 164 -#define __NR_getresuid 165 -#define __NR_poll 168 -#define __NR_nfsservctl 169 -#define __NR_setresgid 170 -#define __NR_getresgid 171 -#define __NR_prctl 172 -#define __NR_rt_sigreturn 173 -#define __NR_rt_sigaction 174 -#define __NR_rt_sigprocmask 175 -#define __NR_rt_sigpending 176 -#define __NR_rt_sigtimedwait 177 -#define __NR_rt_sigqueueinfo 178 -#define __NR_rt_sigsuspend 179 -#define __NR_pread64 180 -#define __NR_pwrite64 181 -#define __NR_chown 182 -#define __NR_getcwd 183 -#define __NR_capget 184 -#define __NR_capset 185 -#define __NR_sigaltstack 186 -#define __NR_sendfile 187 -#define __NR_vfork 190 -#define __NR_ugetrlimit 191 -#define __NR_mmap2 192 -#define __NR_truncate64 193 -#define __NR_ftruncate64 194 -#define __NR_stat64 195 -#define __NR_lstat64 196 -#define __NR_fstat64 197 -#define __NR_lchown32 198 -#define __NR_getuid32 199 -#define __NR_getgid32 200 -#define __NR_geteuid32 201 -#define __NR_getegid32 202 -#define __NR_setreuid32 203 -#define __NR_setregid32 204 -#define __NR_getgroups32 205 -#define __NR_setgroups32 206 -#define __NR_fchown32 207 -#define __NR_setresuid32 208 -#define __NR_getresuid32 209 -#define __NR_setresgid32 210 -#define __NR_getresgid32 211 -#define __NR_chown32 212 -#define __NR_setuid32 213 -#define __NR_setgid32 214 -#define __NR_setfsuid32 215 -#define __NR_setfsgid32 216 -#define __NR_getdents64 217 -#define __NR_pivot_root 218 -#define __NR_mincore 219 -#define __NR_madvise 220 -#define __NR_fcntl64 221 -#define __NR_gettid 224 -#define __NR_readahead 225 -#define __NR_setxattr 226 -#define __NR_lsetxattr 227 -#define __NR_fsetxattr 228 -#define __NR_getxattr 229 -#define __NR_lgetxattr 230 -#define __NR_fgetxattr 231 -#define __NR_listxattr 232 -#define __NR_llistxattr 233 -#define __NR_flistxattr 234 -#define __NR_removexattr 235 -#define __NR_lremovexattr 236 -#define __NR_fremovexattr 237 -#define __NR_tkill 238 -#define __NR_sendfile64 239 -#define __NR_futex 240 -#define __NR_sched_setaffinity 241 -#define __NR_sched_getaffinity 242 -#define __NR_io_setup 243 -#define __NR_io_destroy 244 -#define __NR_io_getevents 245 -#define __NR_io_submit 246 -#define __NR_io_cancel 247 -#define __NR_exit_group 248 -#define __NR_lookup_dcookie 249 -#define __NR_epoll_create 250 -#define __NR_epoll_ctl 251 -#define __NR_epoll_wait 252 -#define __NR_remap_file_pages 253 -#define __NR_set_tid_address 256 -#define __NR_timer_create 257 -#define __NR_timer_settime32 258 -#define __NR_timer_gettime32 259 -#define __NR_timer_getoverrun 260 -#define __NR_timer_delete 261 -#define __NR_clock_settime32 262 -#define __NR_clock_gettime32 263 -#define __NR_clock_getres_time32 264 -#define __NR_clock_nanosleep_time32 265 -#define __NR_statfs64 266 -#define __NR_fstatfs64 267 -#define __NR_tgkill 268 -#define __NR_utimes 269 -#define __NR_fadvise64_64 270 -#define __NR_arm_fadvise64_64 270 -#define __NR_pciconfig_iobase 271 -#define __NR_pciconfig_read 272 -#define __NR_pciconfig_write 273 -#define __NR_mq_open 274 -#define __NR_mq_unlink 275 -#define __NR_mq_timedsend 276 -#define __NR_mq_timedreceive 277 -#define __NR_mq_notify 278 -#define __NR_mq_getsetattr 279 -#define __NR_waitid 280 -#define __NR_socket 281 -#define __NR_bind 282 -#define __NR_connect 283 -#define __NR_listen 284 -#define __NR_accept 285 -#define __NR_getsockname 286 -#define __NR_getpeername 287 -#define __NR_socketpair 288 -#define __NR_send 289 -#define __NR_sendto 290 -#define __NR_recv 291 -#define __NR_recvfrom 292 -#define __NR_shutdown 293 -#define __NR_setsockopt 294 -#define __NR_getsockopt 295 -#define __NR_sendmsg 296 -#define __NR_recvmsg 297 -#define __NR_semop 298 -#define __NR_semget 299 -#define __NR_semctl 300 -#define __NR_msgsnd 301 -#define __NR_msgrcv 302 -#define __NR_msgget 303 -#define __NR_msgctl 304 -#define __NR_shmat 305 -#define __NR_shmdt 306 -#define __NR_shmget 307 -#define __NR_shmctl 308 -#define __NR_add_key 309 -#define __NR_request_key 310 -#define __NR_keyctl 311 -#define __NR_semtimedop 312 -#define __NR_vserver 313 -#define __NR_ioprio_set 314 -#define __NR_ioprio_get 315 -#define __NR_inotify_init 316 -#define __NR_inotify_add_watch 317 -#define __NR_inotify_rm_watch 318 -#define __NR_mbind 319 -#define __NR_get_mempolicy 320 -#define __NR_set_mempolicy 321 -#define __NR_openat 322 -#define __NR_mkdirat 323 -#define __NR_mknodat 324 -#define __NR_fchownat 325 -#define __NR_futimesat 326 -#define __NR_fstatat64 327 -#define __NR_unlinkat 328 -#define __NR_renameat 329 -#define __NR_linkat 330 -#define __NR_symlinkat 331 -#define __NR_readlinkat 332 -#define __NR_fchmodat 333 -#define __NR_faccessat 334 -#define __NR_pselect6 335 -#define __NR_ppoll 336 -#define __NR_unshare 337 -#define __NR_set_robust_list 338 -#define __NR_get_robust_list 339 -#define __NR_splice 340 -#define __NR_sync_file_range2 341 -#define __NR_arm_sync_file_range 341 -#define __NR_tee 342 -#define __NR_vmsplice 343 -#define __NR_move_pages 344 -#define __NR_getcpu 345 -#define __NR_epoll_pwait 346 -#define __NR_kexec_load 347 -#define __NR_utimensat 348 -#define __NR_signalfd 349 -#define __NR_timerfd_create 350 -#define __NR_eventfd 351 -#define __NR_fallocate 352 -#define __NR_timerfd_settime32 353 -#define __NR_timerfd_gettime32 354 -#define __NR_signalfd4 355 -#define __NR_eventfd2 356 -#define __NR_epoll_create1 357 -#define __NR_dup3 358 -#define __NR_pipe2 359 -#define __NR_inotify_init1 360 -#define __NR_preadv 361 -#define __NR_pwritev 362 -#define __NR_rt_tgsigqueueinfo 363 -#define __NR_perf_event_open 364 -#define __NR_recvmmsg 365 -#define __NR_accept4 366 -#define __NR_fanotify_init 367 -#define __NR_fanotify_mark 368 -#define __NR_prlimit64 369 -#define __NR_name_to_handle_at 370 -#define __NR_open_by_handle_at 371 -#define __NR_clock_adjtime 372 -#define __NR_syncfs 373 -#define __NR_sendmmsg 374 -#define __NR_setns 375 -#define __NR_process_vm_readv 376 -#define __NR_process_vm_writev 377 -#define __NR_kcmp 378 -#define __NR_finit_module 379 -#define __NR_sched_setattr 380 -#define __NR_sched_getattr 381 -#define __NR_renameat2 382 -#define __NR_seccomp 383 -#define __NR_getrandom 384 -#define __NR_memfd_create 385 -#define __NR_bpf 386 -#define __NR_execveat 387 -#define __NR_userfaultfd 388 -#define __NR_membarrier 389 -#define __NR_mlock2 390 -#define __NR_copy_file_range 391 -#define __NR_preadv2 392 -#define __NR_pwritev2 393 -#define __NR_pkey_mprotect 394 -#define __NR_pkey_alloc 395 -#define __NR_pkey_free 396 -#define __NR_statx 397 -#define __NR_rseq 398 -#define __NR_io_pgetevents 399 -#define __NR_migrate_pages 400 -#define __NR_kexec_file_load 401 -#define __NR_clock_gettime64 403 -#define __NR_clock_settime64 404 -#define __NR_clock_adjtime64 405 -#define __NR_clock_getres_time64 406 -#define __NR_clock_nanosleep_time64 407 -#define __NR_timer_gettime64 408 -#define __NR_timer_settime64 409 -#define __NR_timerfd_gettime64 410 -#define __NR_timerfd_settime64 411 -#define __NR_utimensat_time64 412 -#define __NR_pselect6_time64 413 -#define __NR_ppoll_time64 414 -#define __NR_io_pgetevents_time64 416 -#define __NR_recvmmsg_time64 417 -#define __NR_mq_timedsend_time64 418 -#define __NR_mq_timedreceive_time64 419 -#define __NR_semtimedop_time64 420 -#define __NR_rt_sigtimedwait_time64 421 -#define __NR_futex_time64 422 -#define __NR_sched_rr_get_interval_time64 423 -#define __NR_pidfd_send_signal 424 -#define __NR_io_uring_setup 425 -#define __NR_io_uring_enter 426 -#define __NR_io_uring_register 427 -#define __NR_open_tree 428 -#define __NR_move_mount 429 -#define __NR_fsopen 430 -#define __NR_fsconfig 431 -#define __NR_fsmount 432 -#define __NR_fspick 433 -#define __NR_pidfd_open 434 -#define __NR_clone3 435 -#define __NR_close_range 436 -#define __NR_openat2 437 -#define __NR_pidfd_getfd 438 -#define __NR_faccessat2 439 -#define __NR_process_madvise 440 -#define __NR_epoll_pwait2 441 -#define __NR_mount_setattr 442 -#define __NR_landlock_create_ruleset 444 -#define __NR_landlock_add_rule 445 -#define __NR_landlock_restrict_self 446 -#define __NR_process_mrelease 448 -#define __NR_futex_waitv 449 -#define __NR_set_mempolicy_home_node 450 -#define __NR_cachestat 451 -#define __NR_fchmodat2 452 - -#define __ARM_NR_breakpoint 0x0f0001 -#define __ARM_NR_cacheflush 0x0f0002 -#define __ARM_NR_usr26 0x0f0003 -#define __ARM_NR_usr32 0x0f0004 -#define __ARM_NR_set_tls 0x0f0005 -#define __ARM_NR_get_tls 0x0f0006 - diff --git a/lib/libc/musl/arch/i386/bits/alltypes.h.in b/lib/libc/musl/arch/i386/bits/alltypes.h.in deleted file mode 100644 index 6feb03a6c3f5..000000000000 --- a/lib/libc/musl/arch/i386/bits/alltypes.h.in +++ /dev/null @@ -1,31 +0,0 @@ -#define _REDIR_TIME64 1 -#define _Addr int -#define _Int64 long long -#define _Reg int - -#define __BYTE_ORDER 1234 -#define __LONG_MAX 0x7fffffffL - -#ifndef __cplusplus -#ifdef __WCHAR_TYPE__ -TYPEDEF __WCHAR_TYPE__ wchar_t; -#else -TYPEDEF long wchar_t; -#endif -#endif - -#if defined(__FLT_EVAL_METHOD__) && __FLT_EVAL_METHOD__ == 0 -TYPEDEF float float_t; -TYPEDEF double double_t; -#else -TYPEDEF long double float_t; -TYPEDEF long double double_t; -#endif - -#if !defined(__cplusplus) -TYPEDEF struct { _Alignas(8) long long __ll; long double __ld; } max_align_t; -#elif defined(__GNUC__) -TYPEDEF struct { __attribute__((__aligned__(8))) long long __ll; long double __ld; } max_align_t; -#else -TYPEDEF struct { alignas(8) long long __ll; long double __ld; } max_align_t; -#endif diff --git a/lib/libc/musl/arch/i386/bits/syscall.h.in b/lib/libc/musl/arch/i386/bits/syscall.h.in deleted file mode 100644 index 55e91cc43bf3..000000000000 --- a/lib/libc/musl/arch/i386/bits/syscall.h.in +++ /dev/null @@ -1,445 +0,0 @@ -#define __NR_restart_syscall 0 -#define __NR_exit 1 -#define __NR_fork 2 -#define __NR_read 3 -#define __NR_write 4 -#define __NR_open 5 -#define __NR_close 6 -#define __NR_waitpid 7 -#define __NR_creat 8 -#define __NR_link 9 -#define __NR_unlink 10 -#define __NR_execve 11 -#define __NR_chdir 12 -#define __NR_time 13 -#define __NR_mknod 14 -#define __NR_chmod 15 -#define __NR_lchown 16 -#define __NR_break 17 -#define __NR_oldstat 18 -#define __NR_lseek 19 -#define __NR_getpid 20 -#define __NR_mount 21 -#define __NR_umount 22 -#define __NR_setuid 23 -#define __NR_getuid 24 -#define __NR_stime 25 -#define __NR_ptrace 26 -#define __NR_alarm 27 -#define __NR_oldfstat 28 -#define __NR_pause 29 -#define __NR_utime 30 -#define __NR_stty 31 -#define __NR_gtty 32 -#define __NR_access 33 -#define __NR_nice 34 -#define __NR_ftime 35 -#define __NR_sync 36 -#define __NR_kill 37 -#define __NR_rename 38 -#define __NR_mkdir 39 -#define __NR_rmdir 40 -#define __NR_dup 41 -#define __NR_pipe 42 -#define __NR_times 43 -#define __NR_prof 44 -#define __NR_brk 45 -#define __NR_setgid 46 -#define __NR_getgid 47 -#define __NR_signal 48 -#define __NR_geteuid 49 -#define __NR_getegid 50 -#define __NR_acct 51 -#define __NR_umount2 52 -#define __NR_lock 53 -#define __NR_ioctl 54 -#define __NR_fcntl 55 -#define __NR_mpx 56 -#define __NR_setpgid 57 -#define __NR_ulimit 58 -#define __NR_oldolduname 59 -#define __NR_umask 60 -#define __NR_chroot 61 -#define __NR_ustat 62 -#define __NR_dup2 63 -#define __NR_getppid 64 -#define __NR_getpgrp 65 -#define __NR_setsid 66 -#define __NR_sigaction 67 -#define __NR_sgetmask 68 -#define __NR_ssetmask 69 -#define __NR_setreuid 70 -#define __NR_setregid 71 -#define __NR_sigsuspend 72 -#define __NR_sigpending 73 -#define __NR_sethostname 74 -#define __NR_setrlimit 75 -#define __NR_getrlimit 76 /* Back compatible 2Gig limited rlimit */ -#define __NR_getrusage 77 -#define __NR_gettimeofday_time32 78 -#define __NR_settimeofday_time32 79 -#define __NR_getgroups 80 -#define __NR_setgroups 81 -#define __NR_select 82 -#define __NR_symlink 83 -#define __NR_oldlstat 84 -#define __NR_readlink 85 -#define __NR_uselib 86 -#define __NR_swapon 87 -#define __NR_reboot 88 -#define __NR_readdir 89 -#define __NR_mmap 90 -#define __NR_munmap 91 -#define __NR_truncate 92 -#define __NR_ftruncate 93 -#define __NR_fchmod 94 -#define __NR_fchown 95 -#define __NR_getpriority 96 -#define __NR_setpriority 97 -#define __NR_profil 98 -#define __NR_statfs 99 -#define __NR_fstatfs 100 -#define __NR_ioperm 101 -#define __NR_socketcall 102 -#define __NR_syslog 103 -#define __NR_setitimer 104 -#define __NR_getitimer 105 -#define __NR_stat 106 -#define __NR_lstat 107 -#define __NR_fstat 108 -#define __NR_olduname 109 -#define __NR_iopl 110 -#define __NR_vhangup 111 -#define __NR_idle 112 -#define __NR_vm86old 113 -#define __NR_wait4 114 -#define __NR_swapoff 115 -#define __NR_sysinfo 116 -#define __NR_ipc 117 -#define __NR_fsync 118 -#define __NR_sigreturn 119 -#define __NR_clone 120 -#define __NR_setdomainname 121 -#define __NR_uname 122 -#define __NR_modify_ldt 123 -#define __NR_adjtimex 124 -#define __NR_mprotect 125 -#define __NR_sigprocmask 126 -#define __NR_create_module 127 -#define __NR_init_module 128 -#define __NR_delete_module 129 -#define __NR_get_kernel_syms 130 -#define __NR_quotactl 131 -#define __NR_getpgid 132 -#define __NR_fchdir 133 -#define __NR_bdflush 134 -#define __NR_sysfs 135 -#define __NR_personality 136 -#define __NR_afs_syscall 137 -#define __NR_setfsuid 138 -#define __NR_setfsgid 139 -#define __NR__llseek 140 -#define __NR_getdents 141 -#define __NR__newselect 142 -#define __NR_flock 143 -#define __NR_msync 144 -#define __NR_readv 145 -#define __NR_writev 146 -#define __NR_getsid 147 -#define __NR_fdatasync 148 -#define __NR__sysctl 149 -#define __NR_mlock 150 -#define __NR_munlock 151 -#define __NR_mlockall 152 -#define __NR_munlockall 153 -#define __NR_sched_setparam 154 -#define __NR_sched_getparam 155 -#define __NR_sched_setscheduler 156 -#define __NR_sched_getscheduler 157 -#define __NR_sched_yield 158 -#define __NR_sched_get_priority_max 159 -#define __NR_sched_get_priority_min 160 -#define __NR_sched_rr_get_interval 161 -#define __NR_nanosleep 162 -#define __NR_mremap 163 -#define __NR_setresuid 164 -#define __NR_getresuid 165 -#define __NR_vm86 166 -#define __NR_query_module 167 -#define __NR_poll 168 -#define __NR_nfsservctl 169 -#define __NR_setresgid 170 -#define __NR_getresgid 171 -#define __NR_prctl 172 -#define __NR_rt_sigreturn 173 -#define __NR_rt_sigaction 174 -#define __NR_rt_sigprocmask 175 -#define __NR_rt_sigpending 176 -#define __NR_rt_sigtimedwait 177 -#define __NR_rt_sigqueueinfo 178 -#define __NR_rt_sigsuspend 179 -#define __NR_pread64 180 -#define __NR_pwrite64 181 -#define __NR_chown 182 -#define __NR_getcwd 183 -#define __NR_capget 184 -#define __NR_capset 185 -#define __NR_sigaltstack 186 -#define __NR_sendfile 187 -#define __NR_getpmsg 188 -#define __NR_putpmsg 189 -#define __NR_vfork 190 -#define __NR_ugetrlimit 191 -#define __NR_mmap2 192 -#define __NR_truncate64 193 -#define __NR_ftruncate64 194 -#define __NR_stat64 195 -#define __NR_lstat64 196 -#define __NR_fstat64 197 -#define __NR_lchown32 198 -#define __NR_getuid32 199 -#define __NR_getgid32 200 -#define __NR_geteuid32 201 -#define __NR_getegid32 202 -#define __NR_setreuid32 203 -#define __NR_setregid32 204 -#define __NR_getgroups32 205 -#define __NR_setgroups32 206 -#define __NR_fchown32 207 -#define __NR_setresuid32 208 -#define __NR_getresuid32 209 -#define __NR_setresgid32 210 -#define __NR_getresgid32 211 -#define __NR_chown32 212 -#define __NR_setuid32 213 -#define __NR_setgid32 214 -#define __NR_setfsuid32 215 -#define __NR_setfsgid32 216 -#define __NR_pivot_root 217 -#define __NR_mincore 218 -#define __NR_madvise 219 -#define __NR_getdents64 220 -#define __NR_fcntl64 221 -/* 223 is unused */ -#define __NR_gettid 224 -#define __NR_readahead 225 -#define __NR_setxattr 226 -#define __NR_lsetxattr 227 -#define __NR_fsetxattr 228 -#define __NR_getxattr 229 -#define __NR_lgetxattr 230 -#define __NR_fgetxattr 231 -#define __NR_listxattr 232 -#define __NR_llistxattr 233 -#define __NR_flistxattr 234 -#define __NR_removexattr 235 -#define __NR_lremovexattr 236 -#define __NR_fremovexattr 237 -#define __NR_tkill 238 -#define __NR_sendfile64 239 -#define __NR_futex 240 -#define __NR_sched_setaffinity 241 -#define __NR_sched_getaffinity 242 -#define __NR_set_thread_area 243 -#define __NR_get_thread_area 244 -#define __NR_io_setup 245 -#define __NR_io_destroy 246 -#define __NR_io_getevents 247 -#define __NR_io_submit 248 -#define __NR_io_cancel 249 -#define __NR_fadvise64 250 -/* 251 is available for reuse (was briefly sys_set_zone_reclaim) */ -#define __NR_exit_group 252 -#define __NR_lookup_dcookie 253 -#define __NR_epoll_create 254 -#define __NR_epoll_ctl 255 -#define __NR_epoll_wait 256 -#define __NR_remap_file_pages 257 -#define __NR_set_tid_address 258 -#define __NR_timer_create 259 -#define __NR_timer_settime32 (__NR_timer_create+1) -#define __NR_timer_gettime32 (__NR_timer_create+2) -#define __NR_timer_getoverrun (__NR_timer_create+3) -#define __NR_timer_delete (__NR_timer_create+4) -#define __NR_clock_settime32 (__NR_timer_create+5) -#define __NR_clock_gettime32 (__NR_timer_create+6) -#define __NR_clock_getres_time32 (__NR_timer_create+7) -#define __NR_clock_nanosleep_time32 (__NR_timer_create+8) -#define __NR_statfs64 268 -#define __NR_fstatfs64 269 -#define __NR_tgkill 270 -#define __NR_utimes 271 -#define __NR_fadvise64_64 272 -#define __NR_vserver 273 -#define __NR_mbind 274 -#define __NR_get_mempolicy 275 -#define __NR_set_mempolicy 276 -#define __NR_mq_open 277 -#define __NR_mq_unlink (__NR_mq_open+1) -#define __NR_mq_timedsend (__NR_mq_open+2) -#define __NR_mq_timedreceive (__NR_mq_open+3) -#define __NR_mq_notify (__NR_mq_open+4) -#define __NR_mq_getsetattr (__NR_mq_open+5) -#define __NR_kexec_load 283 -#define __NR_waitid 284 -/* #define __NR_sys_setaltroot 285 */ -#define __NR_add_key 286 -#define __NR_request_key 287 -#define __NR_keyctl 288 -#define __NR_ioprio_set 289 -#define __NR_ioprio_get 290 -#define __NR_inotify_init 291 -#define __NR_inotify_add_watch 292 -#define __NR_inotify_rm_watch 293 -#define __NR_migrate_pages 294 -#define __NR_openat 295 -#define __NR_mkdirat 296 -#define __NR_mknodat 297 -#define __NR_fchownat 298 -#define __NR_futimesat 299 -#define __NR_fstatat64 300 -#define __NR_unlinkat 301 -#define __NR_renameat 302 -#define __NR_linkat 303 -#define __NR_symlinkat 304 -#define __NR_readlinkat 305 -#define __NR_fchmodat 306 -#define __NR_faccessat 307 -#define __NR_pselect6 308 -#define __NR_ppoll 309 -#define __NR_unshare 310 -#define __NR_set_robust_list 311 -#define __NR_get_robust_list 312 -#define __NR_splice 313 -#define __NR_sync_file_range 314 -#define __NR_tee 315 -#define __NR_vmsplice 316 -#define __NR_move_pages 317 -#define __NR_getcpu 318 -#define __NR_epoll_pwait 319 -#define __NR_utimensat 320 -#define __NR_signalfd 321 -#define __NR_timerfd_create 322 -#define __NR_eventfd 323 -#define __NR_fallocate 324 -#define __NR_timerfd_settime32 325 -#define __NR_timerfd_gettime32 326 -#define __NR_signalfd4 327 -#define __NR_eventfd2 328 -#define __NR_epoll_create1 329 -#define __NR_dup3 330 -#define __NR_pipe2 331 -#define __NR_inotify_init1 332 -#define __NR_preadv 333 -#define __NR_pwritev 334 -#define __NR_rt_tgsigqueueinfo 335 -#define __NR_perf_event_open 336 -#define __NR_recvmmsg 337 -#define __NR_fanotify_init 338 -#define __NR_fanotify_mark 339 -#define __NR_prlimit64 340 -#define __NR_name_to_handle_at 341 -#define __NR_open_by_handle_at 342 -#define __NR_clock_adjtime 343 -#define __NR_syncfs 344 -#define __NR_sendmmsg 345 -#define __NR_setns 346 -#define __NR_process_vm_readv 347 -#define __NR_process_vm_writev 348 -#define __NR_kcmp 349 -#define __NR_finit_module 350 -#define __NR_sched_setattr 351 -#define __NR_sched_getattr 352 -#define __NR_renameat2 353 -#define __NR_seccomp 354 -#define __NR_getrandom 355 -#define __NR_memfd_create 356 -#define __NR_bpf 357 -#define __NR_execveat 358 -#define __NR_socket 359 -#define __NR_socketpair 360 -#define __NR_bind 361 -#define __NR_connect 362 -#define __NR_listen 363 -#define __NR_accept4 364 -#define __NR_getsockopt 365 -#define __NR_setsockopt 366 -#define __NR_getsockname 367 -#define __NR_getpeername 368 -#define __NR_sendto 369 -#define __NR_sendmsg 370 -#define __NR_recvfrom 371 -#define __NR_recvmsg 372 -#define __NR_shutdown 373 -#define __NR_userfaultfd 374 -#define __NR_membarrier 375 -#define __NR_mlock2 376 -#define __NR_copy_file_range 377 -#define __NR_preadv2 378 -#define __NR_pwritev2 379 -#define __NR_pkey_mprotect 380 -#define __NR_pkey_alloc 381 -#define __NR_pkey_free 382 -#define __NR_statx 383 -#define __NR_arch_prctl 384 -#define __NR_io_pgetevents 385 -#define __NR_rseq 386 -#define __NR_semget 393 -#define __NR_semctl 394 -#define __NR_shmget 395 -#define __NR_shmctl 396 -#define __NR_shmat 397 -#define __NR_shmdt 398 -#define __NR_msgget 399 -#define __NR_msgsnd 400 -#define __NR_msgrcv 401 -#define __NR_msgctl 402 -#define __NR_clock_gettime64 403 -#define __NR_clock_settime64 404 -#define __NR_clock_adjtime64 405 -#define __NR_clock_getres_time64 406 -#define __NR_clock_nanosleep_time64 407 -#define __NR_timer_gettime64 408 -#define __NR_timer_settime64 409 -#define __NR_timerfd_gettime64 410 -#define __NR_timerfd_settime64 411 -#define __NR_utimensat_time64 412 -#define __NR_pselect6_time64 413 -#define __NR_ppoll_time64 414 -#define __NR_io_pgetevents_time64 416 -#define __NR_recvmmsg_time64 417 -#define __NR_mq_timedsend_time64 418 -#define __NR_mq_timedreceive_time64 419 -#define __NR_semtimedop_time64 420 -#define __NR_rt_sigtimedwait_time64 421 -#define __NR_futex_time64 422 -#define __NR_sched_rr_get_interval_time64 423 -#define __NR_pidfd_send_signal 424 -#define __NR_io_uring_setup 425 -#define __NR_io_uring_enter 426 -#define __NR_io_uring_register 427 -#define __NR_open_tree 428 -#define __NR_move_mount 429 -#define __NR_fsopen 430 -#define __NR_fsconfig 431 -#define __NR_fsmount 432 -#define __NR_fspick 433 -#define __NR_pidfd_open 434 -#define __NR_clone3 435 -#define __NR_close_range 436 -#define __NR_openat2 437 -#define __NR_pidfd_getfd 438 -#define __NR_faccessat2 439 -#define __NR_process_madvise 440 -#define __NR_epoll_pwait2 441 -#define __NR_mount_setattr 442 -#define __NR_landlock_create_ruleset 444 -#define __NR_landlock_add_rule 445 -#define __NR_landlock_restrict_self 446 -#define __NR_memfd_secret 447 -#define __NR_process_mrelease 448 -#define __NR_futex_waitv 449 -#define __NR_set_mempolicy_home_node 450 -#define __NR_cachestat 451 -#define __NR_fchmodat2 452 - diff --git a/lib/libc/musl/arch/loongarch64/bits/alltypes.h.in b/lib/libc/musl/arch/loongarch64/bits/alltypes.h.in deleted file mode 100644 index d1807aca6c32..000000000000 --- a/lib/libc/musl/arch/loongarch64/bits/alltypes.h.in +++ /dev/null @@ -1,18 +0,0 @@ -#define _Addr long -#define _Int64 long -#define _Reg long - -#define __BYTE_ORDER 1234 -#define __LONG_MAX 0x7fffffffffffffffL - -#ifndef __cplusplus -TYPEDEF int wchar_t; -#endif - -TYPEDEF float float_t; -TYPEDEF double double_t; - -TYPEDEF struct { long long __ll; long double __ld; } max_align_t; - -TYPEDEF unsigned nlink_t; -TYPEDEF int blksize_t; diff --git a/lib/libc/musl/arch/loongarch64/bits/syscall.h.in b/lib/libc/musl/arch/loongarch64/bits/syscall.h.in deleted file mode 100644 index 2afb4ea16d58..000000000000 --- a/lib/libc/musl/arch/loongarch64/bits/syscall.h.in +++ /dev/null @@ -1,316 +0,0 @@ -#define __NR_io_setup 0 -#define __NR_io_destroy 1 -#define __NR_io_submit 2 -#define __NR_io_cancel 3 -#define __NR_io_getevents 4 -#define __NR_setxattr 5 -#define __NR_lsetxattr 6 -#define __NR_fsetxattr 7 -#define __NR_getxattr 8 -#define __NR_lgetxattr 9 -#define __NR_fgetxattr 10 -#define __NR_listxattr 11 -#define __NR_llistxattr 12 -#define __NR_flistxattr 13 -#define __NR_removexattr 14 -#define __NR_lremovexattr 15 -#define __NR_fremovexattr 16 -#define __NR_getcwd 17 -#define __NR_lookup_dcookie 18 -#define __NR_eventfd2 19 -#define __NR_epoll_create1 20 -#define __NR_epoll_ctl 21 -#define __NR_epoll_pwait 22 -#define __NR_dup 23 -#define __NR_dup3 24 -#define __NR3264_fcntl 25 -#define __NR_inotify_init1 26 -#define __NR_inotify_add_watch 27 -#define __NR_inotify_rm_watch 28 -#define __NR_ioctl 29 -#define __NR_ioprio_set 30 -#define __NR_ioprio_get 31 -#define __NR_flock 32 -#define __NR_mknodat 33 -#define __NR_mkdirat 34 -#define __NR_unlinkat 35 -#define __NR_symlinkat 36 -#define __NR_linkat 37 -#define __NR_umount2 39 -#define __NR_mount 40 -#define __NR_pivot_root 41 -#define __NR_nfsservctl 42 -#define __NR3264_statfs 43 -#define __NR3264_fstatfs 44 -#define __NR3264_truncate 45 -#define __NR3264_ftruncate 46 -#define __NR_fallocate 47 -#define __NR_faccessat 48 -#define __NR_chdir 49 -#define __NR_fchdir 50 -#define __NR_chroot 51 -#define __NR_fchmod 52 -#define __NR_fchmodat 53 -#define __NR_fchownat 54 -#define __NR_fchown 55 -#define __NR_openat 56 -#define __NR_close 57 -#define __NR_vhangup 58 -#define __NR_pipe2 59 -#define __NR_quotactl 60 -#define __NR_getdents64 61 -#define __NR3264_lseek 62 -#define __NR_read 63 -#define __NR_write 64 -#define __NR_readv 65 -#define __NR_writev 66 -#define __NR_pread64 67 -#define __NR_pwrite64 68 -#define __NR_preadv 69 -#define __NR_pwritev 70 -#define __NR3264_sendfile 71 -#define __NR_pselect6 72 -#define __NR_ppoll 73 -#define __NR_signalfd4 74 -#define __NR_vmsplice 75 -#define __NR_splice 76 -#define __NR_tee 77 -#define __NR_readlinkat 78 -#define __NR_sync 81 -#define __NR_fsync 82 -#define __NR_fdatasync 83 -#define __NR_sync_file_range 84 -#define __NR_timerfd_create 85 -#define __NR_timerfd_settime 86 -#define __NR_timerfd_gettime 87 -#define __NR_utimensat 88 -#define __NR_acct 89 -#define __NR_capget 90 -#define __NR_capset 91 -#define __NR_personality 92 -#define __NR_exit 93 -#define __NR_exit_group 94 -#define __NR_waitid 95 -#define __NR_set_tid_address 96 -#define __NR_unshare 97 -#define __NR_futex 98 -#define __NR_set_robust_list 99 -#define __NR_get_robust_list 100 -#define __NR_nanosleep 101 -#define __NR_getitimer 102 -#define __NR_setitimer 103 -#define __NR_kexec_load 104 -#define __NR_init_module 105 -#define __NR_delete_module 106 -#define __NR_timer_create 107 -#define __NR_timer_gettime 108 -#define __NR_timer_getoverrun 109 -#define __NR_timer_settime 110 -#define __NR_timer_delete 111 -#define __NR_clock_settime 112 -#define __NR_clock_gettime 113 -#define __NR_clock_getres 114 -#define __NR_clock_nanosleep 115 -#define __NR_syslog 116 -#define __NR_ptrace 117 -#define __NR_sched_setparam 118 -#define __NR_sched_setscheduler 119 -#define __NR_sched_getscheduler 120 -#define __NR_sched_getparam 121 -#define __NR_sched_setaffinity 122 -#define __NR_sched_getaffinity 123 -#define __NR_sched_yield 124 -#define __NR_sched_get_priority_max 125 -#define __NR_sched_get_priority_min 126 -#define __NR_sched_rr_get_interval 127 -#define __NR_restart_syscall 128 -#define __NR_kill 129 -#define __NR_tkill 130 -#define __NR_tgkill 131 -#define __NR_sigaltstack 132 -#define __NR_rt_sigsuspend 133 -#define __NR_rt_sigaction 134 -#define __NR_rt_sigprocmask 135 -#define __NR_rt_sigpending 136 -#define __NR_rt_sigtimedwait 137 -#define __NR_rt_sigqueueinfo 138 -#define __NR_rt_sigreturn 139 -#define __NR_setpriority 140 -#define __NR_getpriority 141 -#define __NR_reboot 142 -#define __NR_setregid 143 -#define __NR_setgid 144 -#define __NR_setreuid 145 -#define __NR_setuid 146 -#define __NR_setresuid 147 -#define __NR_getresuid 148 -#define __NR_setresgid 149 -#define __NR_getresgid 150 -#define __NR_setfsuid 151 -#define __NR_setfsgid 152 -#define __NR_times 153 -#define __NR_setpgid 154 -#define __NR_getpgid 155 -#define __NR_getsid 156 -#define __NR_setsid 157 -#define __NR_getgroups 158 -#define __NR_setgroups 159 -#define __NR_uname 160 -#define __NR_sethostname 161 -#define __NR_setdomainname 162 -#define __NR_getrusage 165 -#define __NR_umask 166 -#define __NR_prctl 167 -#define __NR_getcpu 168 -#define __NR_gettimeofday 169 -#define __NR_settimeofday 170 -#define __NR_adjtimex 171 -#define __NR_getpid 172 -#define __NR_getppid 173 -#define __NR_getuid 174 -#define __NR_geteuid 175 -#define __NR_getgid 176 -#define __NR_getegid 177 -#define __NR_gettid 178 -#define __NR_sysinfo 179 -#define __NR_mq_open 180 -#define __NR_mq_unlink 181 -#define __NR_mq_timedsend 182 -#define __NR_mq_timedreceive 183 -#define __NR_mq_notify 184 -#define __NR_mq_getsetattr 185 -#define __NR_msgget 186 -#define __NR_msgctl 187 -#define __NR_msgrcv 188 -#define __NR_msgsnd 189 -#define __NR_semget 190 -#define __NR_semctl 191 -#define __NR_semtimedop 192 -#define __NR_semop 193 -#define __NR_shmget 194 -#define __NR_shmctl 195 -#define __NR_shmat 196 -#define __NR_shmdt 197 -#define __NR_socket 198 -#define __NR_socketpair 199 -#define __NR_bind 200 -#define __NR_listen 201 -#define __NR_accept 202 -#define __NR_connect 203 -#define __NR_getsockname 204 -#define __NR_getpeername 205 -#define __NR_sendto 206 -#define __NR_recvfrom 207 -#define __NR_setsockopt 208 -#define __NR_getsockopt 209 -#define __NR_shutdown 210 -#define __NR_sendmsg 211 -#define __NR_recvmsg 212 -#define __NR_readahead 213 -#define __NR_brk 214 -#define __NR_munmap 215 -#define __NR_mremap 216 -#define __NR_add_key 217 -#define __NR_request_key 218 -#define __NR_keyctl 219 -#define __NR_clone 220 -#define __NR_execve 221 -#define __NR3264_mmap 222 -#define __NR3264_fadvise64 223 -#define __NR_swapon 224 -#define __NR_swapoff 225 -#define __NR_mprotect 226 -#define __NR_msync 227 -#define __NR_mlock 228 -#define __NR_munlock 229 -#define __NR_mlockall 230 -#define __NR_munlockall 231 -#define __NR_mincore 232 -#define __NR_madvise 233 -#define __NR_remap_file_pages 234 -#define __NR_mbind 235 -#define __NR_get_mempolicy 236 -#define __NR_set_mempolicy 237 -#define __NR_migrate_pages 238 -#define __NR_move_pages 239 -#define __NR_rt_tgsigqueueinfo 240 -#define __NR_perf_event_open 241 -#define __NR_accept4 242 -#define __NR_recvmmsg 243 -#define __NR_arch_specific_syscall 244 -#define __NR_wait4 260 -#define __NR_prlimit64 261 -#define __NR_fanotify_init 262 -#define __NR_fanotify_mark 263 -#define __NR_name_to_handle_at 264 -#define __NR_open_by_handle_at 265 -#define __NR_clock_adjtime 266 -#define __NR_syncfs 267 -#define __NR_setns 268 -#define __NR_sendmmsg 269 -#define __NR_process_vm_readv 270 -#define __NR_process_vm_writev 271 -#define __NR_kcmp 272 -#define __NR_finit_module 273 -#define __NR_sched_setattr 274 -#define __NR_sched_getattr 275 -#define __NR_renameat2 276 -#define __NR_seccomp 277 -#define __NR_getrandom 278 -#define __NR_memfd_create 279 -#define __NR_bpf 280 -#define __NR_execveat 281 -#define __NR_userfaultfd 282 -#define __NR_membarrier 283 -#define __NR_mlock2 284 -#define __NR_copy_file_range 285 -#define __NR_preadv2 286 -#define __NR_pwritev2 287 -#define __NR_pkey_mprotect 288 -#define __NR_pkey_alloc 289 -#define __NR_pkey_free 290 -#define __NR_statx 291 -#define __NR_io_pgetevents 292 -#define __NR_rseq 293 -#define __NR_kexec_file_load 294 -#define __NR_pidfd_send_signal 424 -#define __NR_io_uring_setup 425 -#define __NR_io_uring_enter 426 -#define __NR_io_uring_register 427 -#define __NR_open_tree 428 -#define __NR_move_mount 429 -#define __NR_fsopen 430 -#define __NR_fsconfig 431 -#define __NR_fsmount 432 -#define __NR_fspick 433 -#define __NR_pidfd_open 434 -#define __NR_clone3 435 -#define __NR_close_range 436 -#define __NR_openat2 437 -#define __NR_pidfd_getfd 438 -#define __NR_faccessat2 439 -#define __NR_process_madvise 440 -#define __NR_epoll_pwait2 441 -#define __NR_mount_setattr 442 -#define __NR_quotactl_fd 443 -#define __NR_landlock_create_ruleset 444 -#define __NR_landlock_add_rule 445 -#define __NR_landlock_restrict_self 446 -#define __NR_process_mrelease 448 -#define __NR_futex_waitv 449 -#define __NR_set_mempolicy_home_node 450 -#define __NR_cachestat 451 -#define __NR_fchmodat2 452 -#define __NR_map_shadow_stack 453 -#define __NR_futex_wake 454 -#define __NR_futex_wait 455 -#define __NR_futex_requeue 456 -#define __NR_fcntl __NR3264_fcntl -#define __NR_statfs __NR3264_statfs -#define __NR_fstatfs __NR3264_fstatfs -#define __NR_truncate __NR3264_truncate -#define __NR_ftruncate __NR3264_ftruncate -#define __NR_lseek __NR3264_lseek -#define __NR_sendfile __NR3264_sendfile -#define __NR_mmap __NR3264_mmap -#define __NR_fadvise64 __NR3264_fadvise64 diff --git a/lib/libc/musl/arch/m68k/bits/alltypes.h.in b/lib/libc/musl/arch/m68k/bits/alltypes.h.in deleted file mode 100644 index f5646909833d..000000000000 --- a/lib/libc/musl/arch/m68k/bits/alltypes.h.in +++ /dev/null @@ -1,25 +0,0 @@ -#define _REDIR_TIME64 1 -#define _Addr int -#define _Int64 long long -#define _Reg int - -#define __BYTE_ORDER 4321 -#define __LONG_MAX 0x7fffffffL - -#ifndef __cplusplus -#ifdef __WCHAR_TYPE__ -TYPEDEF __WCHAR_TYPE__ wchar_t; -#else -TYPEDEF long wchar_t; -#endif -#endif - -#if __mcffpu__ -TYPEDEF float float_t; -TYPEDEF double double_t; -#else -TYPEDEF long double float_t; -TYPEDEF long double double_t; -#endif - -TYPEDEF struct { long long __ll; long double __ld; } max_align_t; diff --git a/lib/libc/musl/arch/m68k/bits/syscall.h.in b/lib/libc/musl/arch/m68k/bits/syscall.h.in deleted file mode 100644 index 5cd84602ad0e..000000000000 --- a/lib/libc/musl/arch/m68k/bits/syscall.h.in +++ /dev/null @@ -1,423 +0,0 @@ -#define __NR_restart_syscall 0 -#define __NR_exit 1 -#define __NR_fork 2 -#define __NR_read 3 -#define __NR_write 4 -#define __NR_open 5 -#define __NR_close 6 -#define __NR_waitpid 7 -#define __NR_creat 8 -#define __NR_link 9 -#define __NR_unlink 10 -#define __NR_execve 11 -#define __NR_chdir 12 -#define __NR_time 13 -#define __NR_mknod 14 -#define __NR_chmod 15 -#define __NR_chown 16 -#define __NR_oldstat 18 -#define __NR_lseek 19 -#define __NR_getpid 20 -#define __NR_mount 21 -#define __NR_umount 22 -#define __NR_setuid 23 -#define __NR_getuid 24 -#define __NR_stime 25 -#define __NR_ptrace 26 -#define __NR_alarm 27 -#define __NR_oldfstat 28 -#define __NR_pause 29 -#define __NR_utime 30 -#define __NR_access 33 -#define __NR_nice 34 -#define __NR_sync 36 -#define __NR_kill 37 -#define __NR_rename 38 -#define __NR_mkdir 39 -#define __NR_rmdir 40 -#define __NR_dup 41 -#define __NR_pipe 42 -#define __NR_times 43 -#define __NR_brk 45 -#define __NR_setgid 46 -#define __NR_getgid 47 -#define __NR_signal 48 -#define __NR_geteuid 49 -#define __NR_getegid 50 -#define __NR_acct 51 -#define __NR_umount2 52 -#define __NR_ioctl 54 -#define __NR_fcntl 55 -#define __NR_setpgid 57 -#define __NR_umask 60 -#define __NR_chroot 61 -#define __NR_ustat 62 -#define __NR_dup2 63 -#define __NR_getppid 64 -#define __NR_getpgrp 65 -#define __NR_setsid 66 -#define __NR_sigaction 67 -#define __NR_sgetmask 68 -#define __NR_ssetmask 69 -#define __NR_setreuid 70 -#define __NR_setregid 71 -#define __NR_sigsuspend 72 -#define __NR_sigpending 73 -#define __NR_sethostname 74 -#define __NR_setrlimit 75 -#define __NR_getrlimit 76 -#define __NR_getrusage 77 -#define __NR_gettimeofday_time32 78 -#define __NR_settimeofday_time32 79 -#define __NR_getgroups 80 -#define __NR_setgroups 81 -#define __NR_select 82 -#define __NR_symlink 83 -#define __NR_oldlstat 84 -#define __NR_readlink 85 -#define __NR_uselib 86 -#define __NR_swapon 87 -#define __NR_reboot 88 -#define __NR_readdir 89 -#define __NR_mmap 90 -#define __NR_munmap 91 -#define __NR_truncate 92 -#define __NR_ftruncate 93 -#define __NR_fchmod 94 -#define __NR_fchown 95 -#define __NR_getpriority 96 -#define __NR_setpriority 97 -#define __NR_statfs 99 -#define __NR_fstatfs 100 -#define __NR_socketcall 102 -#define __NR_syslog 103 -#define __NR_setitimer 104 -#define __NR_getitimer 105 -#define __NR_stat 106 -#define __NR_lstat 107 -#define __NR_fstat 108 -#define __NR_vhangup 111 -#define __NR_wait4 114 -#define __NR_swapoff 115 -#define __NR_sysinfo 116 -#define __NR_ipc 117 -#define __NR_fsync 118 -#define __NR_sigreturn 119 -#define __NR_clone 120 -#define __NR_setdomainname 121 -#define __NR_uname 122 -#define __NR_cacheflush 123 -#define __NR_adjtimex 124 -#define __NR_mprotect 125 -#define __NR_sigprocmask 126 -#define __NR_create_module 127 -#define __NR_init_module 128 -#define __NR_delete_module 129 -#define __NR_get_kernel_syms 130 -#define __NR_quotactl 131 -#define __NR_getpgid 132 -#define __NR_fchdir 133 -#define __NR_bdflush 134 -#define __NR_sysfs 135 -#define __NR_personality 136 -#define __NR_setfsuid 138 -#define __NR_setfsgid 139 -#define __NR__llseek 140 -#define __NR_getdents 141 -#define __NR__newselect 142 -#define __NR_flock 143 -#define __NR_msync 144 -#define __NR_readv 145 -#define __NR_writev 146 -#define __NR_getsid 147 -#define __NR_fdatasync 148 -#define __NR__sysctl 149 -#define __NR_mlock 150 -#define __NR_munlock 151 -#define __NR_mlockall 152 -#define __NR_munlockall 153 -#define __NR_sched_setparam 154 -#define __NR_sched_getparam 155 -#define __NR_sched_setscheduler 156 -#define __NR_sched_getscheduler 157 -#define __NR_sched_yield 158 -#define __NR_sched_get_priority_max 159 -#define __NR_sched_get_priority_min 160 -#define __NR_sched_rr_get_interval 161 -#define __NR_nanosleep 162 -#define __NR_mremap 163 -#define __NR_setresuid 164 -#define __NR_getresuid 165 -#define __NR_getpagesize 166 -#define __NR_query_module 167 -#define __NR_poll 168 -#define __NR_nfsservctl 169 -#define __NR_setresgid 170 -#define __NR_getresgid 171 -#define __NR_prctl 172 -#define __NR_rt_sigreturn 173 -#define __NR_rt_sigaction 174 -#define __NR_rt_sigprocmask 175 -#define __NR_rt_sigpending 176 -#define __NR_rt_sigtimedwait 177 -#define __NR_rt_sigqueueinfo 178 -#define __NR_rt_sigsuspend 179 -#define __NR_pread64 180 -#define __NR_pwrite64 181 -#define __NR_lchown 182 -#define __NR_getcwd 183 -#define __NR_capget 184 -#define __NR_capset 185 -#define __NR_sigaltstack 186 -#define __NR_sendfile 187 -#define __NR_getpmsg 188 -#define __NR_putpmsg 189 -#define __NR_vfork 190 -#define __NR_ugetrlimit 191 -#define __NR_mmap2 192 -#define __NR_truncate64 193 -#define __NR_ftruncate64 194 -#define __NR_stat64 195 -#define __NR_lstat64 196 -#define __NR_fstat64 197 -#define __NR_chown32 198 -#define __NR_getuid32 199 -#define __NR_getgid32 200 -#define __NR_geteuid32 201 -#define __NR_getegid32 202 -#define __NR_setreuid32 203 -#define __NR_setregid32 204 -#define __NR_getgroups32 205 -#define __NR_setgroups32 206 -#define __NR_fchown32 207 -#define __NR_setresuid32 208 -#define __NR_getresuid32 209 -#define __NR_setresgid32 210 -#define __NR_getresgid32 211 -#define __NR_lchown32 212 -#define __NR_setuid32 213 -#define __NR_setgid32 214 -#define __NR_setfsuid32 215 -#define __NR_setfsgid32 216 -#define __NR_pivot_root 217 -#define __NR_getdents64 220 -#define __NR_gettid 221 -#define __NR_tkill 222 -#define __NR_setxattr 223 -#define __NR_lsetxattr 224 -#define __NR_fsetxattr 225 -#define __NR_getxattr 226 -#define __NR_lgetxattr 227 -#define __NR_fgetxattr 228 -#define __NR_listxattr 229 -#define __NR_llistxattr 230 -#define __NR_flistxattr 231 -#define __NR_removexattr 232 -#define __NR_lremovexattr 233 -#define __NR_fremovexattr 234 -#define __NR_futex 235 -#define __NR_sendfile64 236 -#define __NR_mincore 237 -#define __NR_madvise 238 -#define __NR_fcntl64 239 -#define __NR_readahead 240 -#define __NR_io_setup 241 -#define __NR_io_destroy 242 -#define __NR_io_getevents 243 -#define __NR_io_submit 244 -#define __NR_io_cancel 245 -#define __NR_fadvise64 246 -#define __NR_exit_group 247 -#define __NR_lookup_dcookie 248 -#define __NR_epoll_create 249 -#define __NR_epoll_ctl 250 -#define __NR_epoll_wait 251 -#define __NR_remap_file_pages 252 -#define __NR_set_tid_address 253 -#define __NR_timer_create 254 -#define __NR_timer_settime32 255 -#define __NR_timer_gettime32 256 -#define __NR_timer_getoverrun 257 -#define __NR_timer_delete 258 -#define __NR_clock_settime32 259 -#define __NR_clock_gettime32 260 -#define __NR_clock_getres_time32 261 -#define __NR_clock_nanosleep_time32 262 -#define __NR_statfs64 263 -#define __NR_fstatfs64 264 -#define __NR_tgkill 265 -#define __NR_utimes 266 -#define __NR_fadvise64_64 267 -#define __NR_mbind 268 -#define __NR_get_mempolicy 269 -#define __NR_set_mempolicy 270 -#define __NR_mq_open 271 -#define __NR_mq_unlink 272 -#define __NR_mq_timedsend 273 -#define __NR_mq_timedreceive 274 -#define __NR_mq_notify 275 -#define __NR_mq_getsetattr 276 -#define __NR_waitid 277 -#define __NR_add_key 279 -#define __NR_request_key 280 -#define __NR_keyctl 281 -#define __NR_ioprio_set 282 -#define __NR_ioprio_get 283 -#define __NR_inotify_init 284 -#define __NR_inotify_add_watch 285 -#define __NR_inotify_rm_watch 286 -#define __NR_migrate_pages 287 -#define __NR_openat 288 -#define __NR_mkdirat 289 -#define __NR_mknodat 290 -#define __NR_fchownat 291 -#define __NR_futimesat 292 -#define __NR_fstatat64 293 -#define __NR_unlinkat 294 -#define __NR_renameat 295 -#define __NR_linkat 296 -#define __NR_symlinkat 297 -#define __NR_readlinkat 298 -#define __NR_fchmodat 299 -#define __NR_faccessat 300 -#define __NR_pselect6 301 -#define __NR_ppoll 302 -#define __NR_unshare 303 -#define __NR_set_robust_list 304 -#define __NR_get_robust_list 305 -#define __NR_splice 306 -#define __NR_sync_file_range 307 -#define __NR_tee 308 -#define __NR_vmsplice 309 -#define __NR_move_pages 310 -#define __NR_sched_setaffinity 311 -#define __NR_sched_getaffinity 312 -#define __NR_kexec_load 313 -#define __NR_getcpu 314 -#define __NR_epoll_pwait 315 -#define __NR_utimensat 316 -#define __NR_signalfd 317 -#define __NR_timerfd_create 318 -#define __NR_eventfd 319 -#define __NR_fallocate 320 -#define __NR_timerfd_settime32 321 -#define __NR_timerfd_gettime32 322 -#define __NR_signalfd4 323 -#define __NR_eventfd2 324 -#define __NR_epoll_create1 325 -#define __NR_dup3 326 -#define __NR_pipe2 327 -#define __NR_inotify_init1 328 -#define __NR_preadv 329 -#define __NR_pwritev 330 -#define __NR_rt_tgsigqueueinfo 331 -#define __NR_perf_event_open 332 -#define __NR_get_thread_area 333 -#define __NR_set_thread_area 334 -#define __NR_atomic_cmpxchg_32 335 -#define __NR_atomic_barrier 336 -#define __NR_fanotify_init 337 -#define __NR_fanotify_mark 338 -#define __NR_prlimit64 339 -#define __NR_name_to_handle_at 340 -#define __NR_open_by_handle_at 341 -#define __NR_clock_adjtime 342 -#define __NR_syncfs 343 -#define __NR_setns 344 -#define __NR_process_vm_readv 345 -#define __NR_process_vm_writev 346 -#define __NR_kcmp 347 -#define __NR_finit_module 348 -#define __NR_sched_setattr 349 -#define __NR_sched_getattr 350 -#define __NR_renameat2 351 -#define __NR_getrandom 352 -#define __NR_memfd_create 353 -#define __NR_bpf 354 -#define __NR_execveat 355 -#define __NR_socket 356 -#define __NR_socketpair 357 -#define __NR_bind 358 -#define __NR_connect 359 -#define __NR_listen 360 -#define __NR_accept4 361 -#define __NR_getsockopt 362 -#define __NR_setsockopt 363 -#define __NR_getsockname 364 -#define __NR_getpeername 365 -#define __NR_sendto 366 -#define __NR_sendmsg 367 -#define __NR_recvfrom 368 -#define __NR_recvmsg 369 -#define __NR_shutdown 370 -#define __NR_recvmmsg 371 -#define __NR_sendmmsg 372 -#define __NR_userfaultfd 373 -#define __NR_membarrier 374 -#define __NR_mlock2 375 -#define __NR_copy_file_range 376 -#define __NR_preadv2 377 -#define __NR_pwritev2 378 -#define __NR_statx 379 -#define __NR_seccomp 380 -#define __NR_pkey_mprotect 381 -#define __NR_pkey_alloc 382 -#define __NR_pkey_free 383 -#define __NR_rseq 384 -#define __NR_semget 393 -#define __NR_semctl 394 -#define __NR_shmget 395 -#define __NR_shmctl 396 -#define __NR_shmat 397 -#define __NR_shmdt 398 -#define __NR_msgget 399 -#define __NR_msgsnd 400 -#define __NR_msgrcv 401 -#define __NR_msgctl 402 -#define __NR_clock_gettime64 403 -#define __NR_clock_settime64 404 -#define __NR_clock_adjtime64 405 -#define __NR_clock_getres_time64 406 -#define __NR_clock_nanosleep_time64 407 -#define __NR_timer_gettime64 408 -#define __NR_timer_settime64 409 -#define __NR_timerfd_gettime64 410 -#define __NR_timerfd_settime64 411 -#define __NR_utimensat_time64 412 -#define __NR_pselect6_time64 413 -#define __NR_ppoll_time64 414 -#define __NR_io_pgetevents_time64 416 -#define __NR_recvmmsg_time64 417 -#define __NR_mq_timedsend_time64 418 -#define __NR_mq_timedreceive_time64 419 -#define __NR_semtimedop_time64 420 -#define __NR_rt_sigtimedwait_time64 421 -#define __NR_futex_time64 422 -#define __NR_sched_rr_get_interval_time64 423 -#define __NR_pidfd_send_signal 424 -#define __NR_io_uring_setup 425 -#define __NR_io_uring_enter 426 -#define __NR_io_uring_register 427 -#define __NR_open_tree 428 -#define __NR_move_mount 429 -#define __NR_fsopen 430 -#define __NR_fsconfig 431 -#define __NR_fsmount 432 -#define __NR_fspick 433 -#define __NR_pidfd_open 434 -#define __NR_clone3 435 -#define __NR_close_range 436 -#define __NR_openat2 437 -#define __NR_pidfd_getfd 438 -#define __NR_faccessat2 439 -#define __NR_process_madvise 440 -#define __NR_epoll_pwait2 441 -#define __NR_mount_setattr 442 -#define __NR_landlock_create_ruleset 444 -#define __NR_landlock_add_rule 445 -#define __NR_landlock_restrict_self 446 -#define __NR_process_mrelease 448 -#define __NR_futex_waitv 449 -#define __NR_set_mempolicy_home_node 450 -#define __NR_cachestat 451 -#define __NR_fchmodat2 452 diff --git a/lib/libc/musl/arch/mips/bits/alltypes.h.in b/lib/libc/musl/arch/mips/bits/alltypes.h.in deleted file mode 100644 index ff934a4c422a..000000000000 --- a/lib/libc/musl/arch/mips/bits/alltypes.h.in +++ /dev/null @@ -1,21 +0,0 @@ -#define _REDIR_TIME64 1 -#define _Addr int -#define _Int64 long long -#define _Reg int - -#if _MIPSEL || __MIPSEL || __MIPSEL__ -#define __BYTE_ORDER 1234 -#else -#define __BYTE_ORDER 4321 -#endif - -#define __LONG_MAX 0x7fffffffL - -#ifndef __cplusplus -TYPEDEF int wchar_t; -#endif - -TYPEDEF float float_t; -TYPEDEF double double_t; - -TYPEDEF struct { long long __ll; long double __ld; } max_align_t; diff --git a/lib/libc/musl/arch/mips/bits/syscall.h.in b/lib/libc/musl/arch/mips/bits/syscall.h.in deleted file mode 100644 index 55e35742aa53..000000000000 --- a/lib/libc/musl/arch/mips/bits/syscall.h.in +++ /dev/null @@ -1,426 +0,0 @@ -#define __NR_syscall 4000 -#define __NR_exit 4001 -#define __NR_fork 4002 -#define __NR_read 4003 -#define __NR_write 4004 -#define __NR_open 4005 -#define __NR_close 4006 -#define __NR_waitpid 4007 -#define __NR_creat 4008 -#define __NR_link 4009 -#define __NR_unlink 4010 -#define __NR_execve 4011 -#define __NR_chdir 4012 -#define __NR_time 4013 -#define __NR_mknod 4014 -#define __NR_chmod 4015 -#define __NR_lchown 4016 -#define __NR_break 4017 -#define __NR_unused18 4018 -#define __NR_lseek 4019 -#define __NR_getpid 4020 -#define __NR_mount 4021 -#define __NR_umount 4022 -#define __NR_setuid 4023 -#define __NR_getuid 4024 -#define __NR_stime 4025 -#define __NR_ptrace 4026 -#define __NR_alarm 4027 -#define __NR_unused28 4028 -#define __NR_pause 4029 -#define __NR_utime 4030 -#define __NR_stty 4031 -#define __NR_gtty 4032 -#define __NR_access 4033 -#define __NR_nice 4034 -#define __NR_ftime 4035 -#define __NR_sync 4036 -#define __NR_kill 4037 -#define __NR_rename 4038 -#define __NR_mkdir 4039 -#define __NR_rmdir 4040 -#define __NR_dup 4041 -#define __NR_pipe 4042 -#define __NR_times 4043 -#define __NR_prof 4044 -#define __NR_brk 4045 -#define __NR_setgid 4046 -#define __NR_getgid 4047 -#define __NR_signal 4048 -#define __NR_geteuid 4049 -#define __NR_getegid 4050 -#define __NR_acct 4051 -#define __NR_umount2 4052 -#define __NR_lock 4053 -#define __NR_ioctl 4054 -#define __NR_fcntl 4055 -#define __NR_mpx 4056 -#define __NR_setpgid 4057 -#define __NR_ulimit 4058 -#define __NR_unused59 4059 -#define __NR_umask 4060 -#define __NR_chroot 4061 -#define __NR_ustat 4062 -#define __NR_dup2 4063 -#define __NR_getppid 4064 -#define __NR_getpgrp 4065 -#define __NR_setsid 4066 -#define __NR_sigaction 4067 -#define __NR_sgetmask 4068 -#define __NR_ssetmask 4069 -#define __NR_setreuid 4070 -#define __NR_setregid 4071 -#define __NR_sigsuspend 4072 -#define __NR_sigpending 4073 -#define __NR_sethostname 4074 -#define __NR_setrlimit 4075 -#define __NR_getrlimit 4076 -#define __NR_getrusage 4077 -#define __NR_gettimeofday_time32 4078 -#define __NR_settimeofday_time32 4079 -#define __NR_getgroups 4080 -#define __NR_setgroups 4081 -#define __NR_reserved82 4082 -#define __NR_symlink 4083 -#define __NR_unused84 4084 -#define __NR_readlink 4085 -#define __NR_uselib 4086 -#define __NR_swapon 4087 -#define __NR_reboot 4088 -#define __NR_readdir 4089 -#define __NR_mmap 4090 -#define __NR_munmap 4091 -#define __NR_truncate 4092 -#define __NR_ftruncate 4093 -#define __NR_fchmod 4094 -#define __NR_fchown 4095 -#define __NR_getpriority 4096 -#define __NR_setpriority 4097 -#define __NR_profil 4098 -#define __NR_statfs 4099 -#define __NR_fstatfs 4100 -#define __NR_ioperm 4101 -#define __NR_socketcall 4102 -#define __NR_syslog 4103 -#define __NR_setitimer 4104 -#define __NR_getitimer 4105 -#define __NR_stat 4106 -#define __NR_lstat 4107 -#define __NR_fstat 4108 -#define __NR_unused109 4109 -#define __NR_iopl 4110 -#define __NR_vhangup 4111 -#define __NR_idle 4112 -#define __NR_vm86 4113 -#define __NR_wait4 4114 -#define __NR_swapoff 4115 -#define __NR_sysinfo 4116 -#define __NR_ipc 4117 -#define __NR_fsync 4118 -#define __NR_sigreturn 4119 -#define __NR_clone 4120 -#define __NR_setdomainname 4121 -#define __NR_uname 4122 -#define __NR_modify_ldt 4123 -#define __NR_adjtimex 4124 -#define __NR_mprotect 4125 -#define __NR_sigprocmask 4126 -#define __NR_create_module 4127 -#define __NR_init_module 4128 -#define __NR_delete_module 4129 -#define __NR_get_kernel_syms 4130 -#define __NR_quotactl 4131 -#define __NR_getpgid 4132 -#define __NR_fchdir 4133 -#define __NR_bdflush 4134 -#define __NR_sysfs 4135 -#define __NR_personality 4136 -#define __NR_afs_syscall 4137 -#define __NR_setfsuid 4138 -#define __NR_setfsgid 4139 -#define __NR__llseek 4140 -#define __NR_getdents 4141 -#define __NR__newselect 4142 -#define __NR_flock 4143 -#define __NR_msync 4144 -#define __NR_readv 4145 -#define __NR_writev 4146 -#define __NR_cacheflush 4147 -#define __NR_cachectl 4148 -#define __NR_sysmips 4149 -#define __NR_unused150 4150 -#define __NR_getsid 4151 -#define __NR_fdatasync 4152 -#define __NR__sysctl 4153 -#define __NR_mlock 4154 -#define __NR_munlock 4155 -#define __NR_mlockall 4156 -#define __NR_munlockall 4157 -#define __NR_sched_setparam 4158 -#define __NR_sched_getparam 4159 -#define __NR_sched_setscheduler 4160 -#define __NR_sched_getscheduler 4161 -#define __NR_sched_yield 4162 -#define __NR_sched_get_priority_max 4163 -#define __NR_sched_get_priority_min 4164 -#define __NR_sched_rr_get_interval 4165 -#define __NR_nanosleep 4166 -#define __NR_mremap 4167 -#define __NR_accept 4168 -#define __NR_bind 4169 -#define __NR_connect 4170 -#define __NR_getpeername 4171 -#define __NR_getsockname 4172 -#define __NR_getsockopt 4173 -#define __NR_listen 4174 -#define __NR_recv 4175 -#define __NR_recvfrom 4176 -#define __NR_recvmsg 4177 -#define __NR_send 4178 -#define __NR_sendmsg 4179 -#define __NR_sendto 4180 -#define __NR_setsockopt 4181 -#define __NR_shutdown 4182 -#define __NR_socket 4183 -#define __NR_socketpair 4184 -#define __NR_setresuid 4185 -#define __NR_getresuid 4186 -#define __NR_query_module 4187 -#define __NR_poll 4188 -#define __NR_nfsservctl 4189 -#define __NR_setresgid 4190 -#define __NR_getresgid 4191 -#define __NR_prctl 4192 -#define __NR_rt_sigreturn 4193 -#define __NR_rt_sigaction 4194 -#define __NR_rt_sigprocmask 4195 -#define __NR_rt_sigpending 4196 -#define __NR_rt_sigtimedwait 4197 -#define __NR_rt_sigqueueinfo 4198 -#define __NR_rt_sigsuspend 4199 -#define __NR_pread64 4200 -#define __NR_pwrite64 4201 -#define __NR_chown 4202 -#define __NR_getcwd 4203 -#define __NR_capget 4204 -#define __NR_capset 4205 -#define __NR_sigaltstack 4206 -#define __NR_sendfile 4207 -#define __NR_getpmsg 4208 -#define __NR_putpmsg 4209 -#define __NR_mmap2 4210 -#define __NR_truncate64 4211 -#define __NR_ftruncate64 4212 -#define __NR_stat64 4213 -#define __NR_lstat64 4214 -#define __NR_fstat64 4215 -#define __NR_pivot_root 4216 -#define __NR_mincore 4217 -#define __NR_madvise 4218 -#define __NR_getdents64 4219 -#define __NR_fcntl64 4220 -#define __NR_reserved221 4221 -#define __NR_gettid 4222 -#define __NR_readahead 4223 -#define __NR_setxattr 4224 -#define __NR_lsetxattr 4225 -#define __NR_fsetxattr 4226 -#define __NR_getxattr 4227 -#define __NR_lgetxattr 4228 -#define __NR_fgetxattr 4229 -#define __NR_listxattr 4230 -#define __NR_llistxattr 4231 -#define __NR_flistxattr 4232 -#define __NR_removexattr 4233 -#define __NR_lremovexattr 4234 -#define __NR_fremovexattr 4235 -#define __NR_tkill 4236 -#define __NR_sendfile64 4237 -#define __NR_futex 4238 -#define __NR_sched_setaffinity 4239 -#define __NR_sched_getaffinity 4240 -#define __NR_io_setup 4241 -#define __NR_io_destroy 4242 -#define __NR_io_getevents 4243 -#define __NR_io_submit 4244 -#define __NR_io_cancel 4245 -#define __NR_exit_group 4246 -#define __NR_lookup_dcookie 4247 -#define __NR_epoll_create 4248 -#define __NR_epoll_ctl 4249 -#define __NR_epoll_wait 4250 -#define __NR_remap_file_pages 4251 -#define __NR_set_tid_address 4252 -#define __NR_restart_syscall 4253 -#define __NR_fadvise64 4254 -#define __NR_statfs64 4255 -#define __NR_fstatfs64 4256 -#define __NR_timer_create 4257 -#define __NR_timer_settime32 4258 -#define __NR_timer_gettime32 4259 -#define __NR_timer_getoverrun 4260 -#define __NR_timer_delete 4261 -#define __NR_clock_settime32 4262 -#define __NR_clock_gettime32 4263 -#define __NR_clock_getres_time32 4264 -#define __NR_clock_nanosleep_time32 4265 -#define __NR_tgkill 4266 -#define __NR_utimes 4267 -#define __NR_mbind 4268 -#define __NR_get_mempolicy 4269 -#define __NR_set_mempolicy 4270 -#define __NR_mq_open 4271 -#define __NR_mq_unlink 4272 -#define __NR_mq_timedsend 4273 -#define __NR_mq_timedreceive 4274 -#define __NR_mq_notify 4275 -#define __NR_mq_getsetattr 4276 -#define __NR_vserver 4277 -#define __NR_waitid 4278 -#define __NR_add_key 4280 -#define __NR_request_key 4281 -#define __NR_keyctl 4282 -#define __NR_set_thread_area 4283 -#define __NR_inotify_init 4284 -#define __NR_inotify_add_watch 4285 -#define __NR_inotify_rm_watch 4286 -#define __NR_migrate_pages 4287 -#define __NR_openat 4288 -#define __NR_mkdirat 4289 -#define __NR_mknodat 4290 -#define __NR_fchownat 4291 -#define __NR_futimesat 4292 -#define __NR_fstatat64 4293 -#define __NR_unlinkat 4294 -#define __NR_renameat 4295 -#define __NR_linkat 4296 -#define __NR_symlinkat 4297 -#define __NR_readlinkat 4298 -#define __NR_fchmodat 4299 -#define __NR_faccessat 4300 -#define __NR_pselect6 4301 -#define __NR_ppoll 4302 -#define __NR_unshare 4303 -#define __NR_splice 4304 -#define __NR_sync_file_range 4305 -#define __NR_tee 4306 -#define __NR_vmsplice 4307 -#define __NR_move_pages 4308 -#define __NR_set_robust_list 4309 -#define __NR_get_robust_list 4310 -#define __NR_kexec_load 4311 -#define __NR_getcpu 4312 -#define __NR_epoll_pwait 4313 -#define __NR_ioprio_set 4314 -#define __NR_ioprio_get 4315 -#define __NR_utimensat 4316 -#define __NR_signalfd 4317 -#define __NR_timerfd 4318 -#define __NR_eventfd 4319 -#define __NR_fallocate 4320 -#define __NR_timerfd_create 4321 -#define __NR_timerfd_gettime32 4322 -#define __NR_timerfd_settime32 4323 -#define __NR_signalfd4 4324 -#define __NR_eventfd2 4325 -#define __NR_epoll_create1 4326 -#define __NR_dup3 4327 -#define __NR_pipe2 4328 -#define __NR_inotify_init1 4329 -#define __NR_preadv 4330 -#define __NR_pwritev 4331 -#define __NR_rt_tgsigqueueinfo 4332 -#define __NR_perf_event_open 4333 -#define __NR_accept4 4334 -#define __NR_recvmmsg 4335 -#define __NR_fanotify_init 4336 -#define __NR_fanotify_mark 4337 -#define __NR_prlimit64 4338 -#define __NR_name_to_handle_at 4339 -#define __NR_open_by_handle_at 4340 -#define __NR_clock_adjtime 4341 -#define __NR_syncfs 4342 -#define __NR_sendmmsg 4343 -#define __NR_setns 4344 -#define __NR_process_vm_readv 4345 -#define __NR_process_vm_writev 4346 -#define __NR_kcmp 4347 -#define __NR_finit_module 4348 -#define __NR_sched_setattr 4349 -#define __NR_sched_getattr 4350 -#define __NR_renameat2 4351 -#define __NR_seccomp 4352 -#define __NR_getrandom 4353 -#define __NR_memfd_create 4354 -#define __NR_bpf 4355 -#define __NR_execveat 4356 -#define __NR_userfaultfd 4357 -#define __NR_membarrier 4358 -#define __NR_mlock2 4359 -#define __NR_copy_file_range 4360 -#define __NR_preadv2 4361 -#define __NR_pwritev2 4362 -#define __NR_pkey_mprotect 4363 -#define __NR_pkey_alloc 4364 -#define __NR_pkey_free 4365 -#define __NR_statx 4366 -#define __NR_rseq 4367 -#define __NR_io_pgetevents 4368 -#define __NR_semget 4393 -#define __NR_semctl 4394 -#define __NR_shmget 4395 -#define __NR_shmctl 4396 -#define __NR_shmat 4397 -#define __NR_shmdt 4398 -#define __NR_msgget 4399 -#define __NR_msgsnd 4400 -#define __NR_msgrcv 4401 -#define __NR_msgctl 4402 -#define __NR_clock_gettime64 4403 -#define __NR_clock_settime64 4404 -#define __NR_clock_adjtime64 4405 -#define __NR_clock_getres_time64 4406 -#define __NR_clock_nanosleep_time64 4407 -#define __NR_timer_gettime64 4408 -#define __NR_timer_settime64 4409 -#define __NR_timerfd_gettime64 4410 -#define __NR_timerfd_settime64 4411 -#define __NR_utimensat_time64 4412 -#define __NR_pselect6_time64 4413 -#define __NR_ppoll_time64 4414 -#define __NR_io_pgetevents_time64 4416 -#define __NR_recvmmsg_time64 4417 -#define __NR_mq_timedsend_time64 4418 -#define __NR_mq_timedreceive_time64 4419 -#define __NR_semtimedop_time64 4420 -#define __NR_rt_sigtimedwait_time64 4421 -#define __NR_futex_time64 4422 -#define __NR_sched_rr_get_interval_time64 4423 -#define __NR_pidfd_send_signal 4424 -#define __NR_io_uring_setup 4425 -#define __NR_io_uring_enter 4426 -#define __NR_io_uring_register 4427 -#define __NR_open_tree 4428 -#define __NR_move_mount 4429 -#define __NR_fsopen 4430 -#define __NR_fsconfig 4431 -#define __NR_fsmount 4432 -#define __NR_fspick 4433 -#define __NR_pidfd_open 4434 -#define __NR_clone3 4435 -#define __NR_close_range 4436 -#define __NR_openat2 4437 -#define __NR_pidfd_getfd 4438 -#define __NR_faccessat2 4439 -#define __NR_process_madvise 4440 -#define __NR_epoll_pwait2 4441 -#define __NR_mount_setattr 4442 -#define __NR_landlock_create_ruleset 4444 -#define __NR_landlock_add_rule 4445 -#define __NR_landlock_restrict_self 4446 -#define __NR_process_mrelease 4448 -#define __NR_futex_waitv 4449 -#define __NR_set_mempolicy_home_node 4450 -#define __NR_cachestat 4451 -#define __NR_fchmodat2 4452 - diff --git a/lib/libc/musl/arch/mips64/bits/alltypes.h.in b/lib/libc/musl/arch/mips64/bits/alltypes.h.in deleted file mode 100644 index fcd61ee853be..000000000000 --- a/lib/libc/musl/arch/mips64/bits/alltypes.h.in +++ /dev/null @@ -1,22 +0,0 @@ -#define _Addr long -#define _Int64 long -#define _Reg long - -#if _MIPSEL || __MIPSEL || __MIPSEL__ -#define __BYTE_ORDER 1234 -#else -#define __BYTE_ORDER 4321 -#endif - -#define __LONG_MAX 0x7fffffffffffffffL - -#ifndef __cplusplus -TYPEDEF int wchar_t; -#endif - -TYPEDEF float float_t; -TYPEDEF double double_t; - -TYPEDEF struct { long long __ll; long double __ld; } max_align_t; - -TYPEDEF unsigned nlink_t; diff --git a/lib/libc/musl/arch/mips64/bits/syscall.h.in b/lib/libc/musl/arch/mips64/bits/syscall.h.in deleted file mode 100644 index 50cec45a464e..000000000000 --- a/lib/libc/musl/arch/mips64/bits/syscall.h.in +++ /dev/null @@ -1,356 +0,0 @@ -#define __NR_read 5000 -#define __NR_write 5001 -#define __NR_open 5002 -#define __NR_close 5003 -#define __NR_stat 5004 -#define __NR_fstat 5005 -#define __NR_lstat 5006 -#define __NR_poll 5007 -#define __NR_lseek 5008 -#define __NR_mmap 5009 -#define __NR_mprotect 5010 -#define __NR_munmap 5011 -#define __NR_brk 5012 -#define __NR_rt_sigaction 5013 -#define __NR_rt_sigprocmask 5014 -#define __NR_ioctl 5015 -#define __NR_pread64 5016 -#define __NR_pwrite64 5017 -#define __NR_readv 5018 -#define __NR_writev 5019 -#define __NR_access 5020 -#define __NR_pipe 5021 -#define __NR__newselect 5022 -#define __NR_sched_yield 5023 -#define __NR_mremap 5024 -#define __NR_msync 5025 -#define __NR_mincore 5026 -#define __NR_madvise 5027 -#define __NR_shmget 5028 -#define __NR_shmat 5029 -#define __NR_shmctl 5030 -#define __NR_dup 5031 -#define __NR_dup2 5032 -#define __NR_pause 5033 -#define __NR_nanosleep 5034 -#define __NR_getitimer 5035 -#define __NR_setitimer 5036 -#define __NR_alarm 5037 -#define __NR_getpid 5038 -#define __NR_sendfile 5039 -#define __NR_socket 5040 -#define __NR_connect 5041 -#define __NR_accept 5042 -#define __NR_sendto 5043 -#define __NR_recvfrom 5044 -#define __NR_sendmsg 5045 -#define __NR_recvmsg 5046 -#define __NR_shutdown 5047 -#define __NR_bind 5048 -#define __NR_listen 5049 -#define __NR_getsockname 5050 -#define __NR_getpeername 5051 -#define __NR_socketpair 5052 -#define __NR_setsockopt 5053 -#define __NR_getsockopt 5054 -#define __NR_clone 5055 -#define __NR_fork 5056 -#define __NR_execve 5057 -#define __NR_exit 5058 -#define __NR_wait4 5059 -#define __NR_kill 5060 -#define __NR_uname 5061 -#define __NR_semget 5062 -#define __NR_semop 5063 -#define __NR_semctl 5064 -#define __NR_shmdt 5065 -#define __NR_msgget 5066 -#define __NR_msgsnd 5067 -#define __NR_msgrcv 5068 -#define __NR_msgctl 5069 -#define __NR_fcntl 5070 -#define __NR_flock 5071 -#define __NR_fsync 5072 -#define __NR_fdatasync 5073 -#define __NR_truncate 5074 -#define __NR_ftruncate 5075 -#define __NR_getdents 5076 -#define __NR_getcwd 5077 -#define __NR_chdir 5078 -#define __NR_fchdir 5079 -#define __NR_rename 5080 -#define __NR_mkdir 5081 -#define __NR_rmdir 5082 -#define __NR_creat 5083 -#define __NR_link 5084 -#define __NR_unlink 5085 -#define __NR_symlink 5086 -#define __NR_readlink 5087 -#define __NR_chmod 5088 -#define __NR_fchmod 5089 -#define __NR_chown 5090 -#define __NR_fchown 5091 -#define __NR_lchown 5092 -#define __NR_umask 5093 -#define __NR_gettimeofday 5094 -#define __NR_getrlimit 5095 -#define __NR_getrusage 5096 -#define __NR_sysinfo 5097 -#define __NR_times 5098 -#define __NR_ptrace 5099 -#define __NR_getuid 5100 -#define __NR_syslog 5101 -#define __NR_getgid 5102 -#define __NR_setuid 5103 -#define __NR_setgid 5104 -#define __NR_geteuid 5105 -#define __NR_getegid 5106 -#define __NR_setpgid 5107 -#define __NR_getppid 5108 -#define __NR_getpgrp 5109 -#define __NR_setsid 5110 -#define __NR_setreuid 5111 -#define __NR_setregid 5112 -#define __NR_getgroups 5113 -#define __NR_setgroups 5114 -#define __NR_setresuid 5115 -#define __NR_getresuid 5116 -#define __NR_setresgid 5117 -#define __NR_getresgid 5118 -#define __NR_getpgid 5119 -#define __NR_setfsuid 5120 -#define __NR_setfsgid 5121 -#define __NR_getsid 5122 -#define __NR_capget 5123 -#define __NR_capset 5124 -#define __NR_rt_sigpending 5125 -#define __NR_rt_sigtimedwait 5126 -#define __NR_rt_sigqueueinfo 5127 -#define __NR_rt_sigsuspend 5128 -#define __NR_sigaltstack 5129 -#define __NR_utime 5130 -#define __NR_mknod 5131 -#define __NR_personality 5132 -#define __NR_ustat 5133 -#define __NR_statfs 5134 -#define __NR_fstatfs 5135 -#define __NR_sysfs 5136 -#define __NR_getpriority 5137 -#define __NR_setpriority 5138 -#define __NR_sched_setparam 5139 -#define __NR_sched_getparam 5140 -#define __NR_sched_setscheduler 5141 -#define __NR_sched_getscheduler 5142 -#define __NR_sched_get_priority_max 5143 -#define __NR_sched_get_priority_min 5144 -#define __NR_sched_rr_get_interval 5145 -#define __NR_mlock 5146 -#define __NR_munlock 5147 -#define __NR_mlockall 5148 -#define __NR_munlockall 5149 -#define __NR_vhangup 5150 -#define __NR_pivot_root 5151 -#define __NR__sysctl 5152 -#define __NR_prctl 5153 -#define __NR_adjtimex 5154 -#define __NR_setrlimit 5155 -#define __NR_chroot 5156 -#define __NR_sync 5157 -#define __NR_acct 5158 -#define __NR_settimeofday 5159 -#define __NR_mount 5160 -#define __NR_umount2 5161 -#define __NR_swapon 5162 -#define __NR_swapoff 5163 -#define __NR_reboot 5164 -#define __NR_sethostname 5165 -#define __NR_setdomainname 5166 -#define __NR_create_module 5167 -#define __NR_init_module 5168 -#define __NR_delete_module 5169 -#define __NR_get_kernel_syms 5170 -#define __NR_query_module 5171 -#define __NR_quotactl 5172 -#define __NR_nfsservctl 5173 -#define __NR_getpmsg 5174 -#define __NR_putpmsg 5175 -#define __NR_afs_syscall 5176 -#define __NR_reserved177 5177 -#define __NR_gettid 5178 -#define __NR_readahead 5179 -#define __NR_setxattr 5180 -#define __NR_lsetxattr 5181 -#define __NR_fsetxattr 5182 -#define __NR_getxattr 5183 -#define __NR_lgetxattr 5184 -#define __NR_fgetxattr 5185 -#define __NR_listxattr 5186 -#define __NR_llistxattr 5187 -#define __NR_flistxattr 5188 -#define __NR_removexattr 5189 -#define __NR_lremovexattr 5190 -#define __NR_fremovexattr 5191 -#define __NR_tkill 5192 -#define __NR_reserved193 5193 -#define __NR_futex 5194 -#define __NR_sched_setaffinity 5195 -#define __NR_sched_getaffinity 5196 -#define __NR_cacheflush 5197 -#define __NR_cachectl 5198 -#define __NR_sysmips 5199 -#define __NR_io_setup 5200 -#define __NR_io_destroy 5201 -#define __NR_io_getevents 5202 -#define __NR_io_submit 5203 -#define __NR_io_cancel 5204 -#define __NR_exit_group 5205 -#define __NR_lookup_dcookie 5206 -#define __NR_epoll_create 5207 -#define __NR_epoll_ctl 5208 -#define __NR_epoll_wait 5209 -#define __NR_remap_file_pages 5210 -#define __NR_rt_sigreturn 5211 -#define __NR_set_tid_address 5212 -#define __NR_restart_syscall 5213 -#define __NR_semtimedop 5214 -#define __NR_fadvise64 5215 -#define __NR_timer_create 5216 -#define __NR_timer_settime 5217 -#define __NR_timer_gettime 5218 -#define __NR_timer_getoverrun 5219 -#define __NR_timer_delete 5220 -#define __NR_clock_settime 5221 -#define __NR_clock_gettime 5222 -#define __NR_clock_getres 5223 -#define __NR_clock_nanosleep 5224 -#define __NR_tgkill 5225 -#define __NR_utimes 5226 -#define __NR_mbind 5227 -#define __NR_get_mempolicy 5228 -#define __NR_set_mempolicy 5229 -#define __NR_mq_open 5230 -#define __NR_mq_unlink 5231 -#define __NR_mq_timedsend 5232 -#define __NR_mq_timedreceive 5233 -#define __NR_mq_notify 5234 -#define __NR_mq_getsetattr 5235 -#define __NR_vserver 5236 -#define __NR_waitid 5237 -#define __NR_add_key 5239 -#define __NR_request_key 5240 -#define __NR_keyctl 5241 -#define __NR_set_thread_area 5242 -#define __NR_inotify_init 5243 -#define __NR_inotify_add_watch 5244 -#define __NR_inotify_rm_watch 5245 -#define __NR_migrate_pages 5246 -#define __NR_openat 5247 -#define __NR_mkdirat 5248 -#define __NR_mknodat 5249 -#define __NR_fchownat 5250 -#define __NR_futimesat 5251 -#define __NR_newfstatat 5252 -#define __NR_unlinkat 5253 -#define __NR_renameat 5254 -#define __NR_linkat 5255 -#define __NR_symlinkat 5256 -#define __NR_readlinkat 5257 -#define __NR_fchmodat 5258 -#define __NR_faccessat 5259 -#define __NR_pselect6 5260 -#define __NR_ppoll 5261 -#define __NR_unshare 5262 -#define __NR_splice 5263 -#define __NR_sync_file_range 5264 -#define __NR_tee 5265 -#define __NR_vmsplice 5266 -#define __NR_move_pages 5267 -#define __NR_set_robust_list 5268 -#define __NR_get_robust_list 5269 -#define __NR_kexec_load 5270 -#define __NR_getcpu 5271 -#define __NR_epoll_pwait 5272 -#define __NR_ioprio_set 5273 -#define __NR_ioprio_get 5274 -#define __NR_utimensat 5275 -#define __NR_signalfd 5276 -#define __NR_timerfd 5277 -#define __NR_eventfd 5278 -#define __NR_fallocate 5279 -#define __NR_timerfd_create 5280 -#define __NR_timerfd_gettime 5281 -#define __NR_timerfd_settime 5282 -#define __NR_signalfd4 5283 -#define __NR_eventfd2 5284 -#define __NR_epoll_create1 5285 -#define __NR_dup3 5286 -#define __NR_pipe2 5287 -#define __NR_inotify_init1 5288 -#define __NR_preadv 5289 -#define __NR_pwritev 5290 -#define __NR_rt_tgsigqueueinfo 5291 -#define __NR_perf_event_open 5292 -#define __NR_accept4 5293 -#define __NR_recvmmsg 5294 -#define __NR_fanotify_init 5295 -#define __NR_fanotify_mark 5296 -#define __NR_prlimit64 5297 -#define __NR_name_to_handle_at 5298 -#define __NR_open_by_handle_at 5299 -#define __NR_clock_adjtime 5300 -#define __NR_syncfs 5301 -#define __NR_sendmmsg 5302 -#define __NR_setns 5303 -#define __NR_process_vm_readv 5304 -#define __NR_process_vm_writev 5305 -#define __NR_kcmp 5306 -#define __NR_finit_module 5307 -#define __NR_getdents64 5308 -#define __NR_sched_setattr 5309 -#define __NR_sched_getattr 5310 -#define __NR_renameat2 5311 -#define __NR_seccomp 5312 -#define __NR_getrandom 5313 -#define __NR_memfd_create 5314 -#define __NR_bpf 5315 -#define __NR_execveat 5316 -#define __NR_userfaultfd 5317 -#define __NR_membarrier 5318 -#define __NR_mlock2 5319 -#define __NR_copy_file_range 5320 -#define __NR_preadv2 5321 -#define __NR_pwritev2 5322 -#define __NR_pkey_mprotect 5323 -#define __NR_pkey_alloc 5324 -#define __NR_pkey_free 5325 -#define __NR_statx 5326 -#define __NR_rseq 5327 -#define __NR_io_pgetevents 5328 -#define __NR_pidfd_send_signal 5424 -#define __NR_io_uring_setup 5425 -#define __NR_io_uring_enter 5426 -#define __NR_io_uring_register 5427 -#define __NR_open_tree 5428 -#define __NR_move_mount 5429 -#define __NR_fsopen 5430 -#define __NR_fsconfig 5431 -#define __NR_fsmount 5432 -#define __NR_fspick 5433 -#define __NR_pidfd_open 5434 -#define __NR_clone3 5435 -#define __NR_close_range 5436 -#define __NR_openat2 5437 -#define __NR_pidfd_getfd 5438 -#define __NR_faccessat2 5439 -#define __NR_process_madvise 5440 -#define __NR_epoll_pwait2 5441 -#define __NR_mount_setattr 5442 -#define __NR_landlock_create_ruleset 5444 -#define __NR_landlock_add_rule 5445 -#define __NR_landlock_restrict_self 5446 -#define __NR_process_mrelease 5448 -#define __NR_futex_waitv 5449 -#define __NR_set_mempolicy_home_node 5450 -#define __NR_cachestat 5451 -#define __NR_fchmodat2 5452 - diff --git a/lib/libc/musl/arch/mipsn32/atomic_arch.h b/lib/libc/musl/arch/mipsn32/atomic_arch.h new file mode 100644 index 000000000000..ccc3878cc505 --- /dev/null +++ b/lib/libc/musl/arch/mipsn32/atomic_arch.h @@ -0,0 +1,52 @@ +#if __mips_isa_rev < 6 +#define LLSC_M "m" +#else +#define LLSC_M "ZC" +#endif + +#define a_ll a_ll +static inline int a_ll(volatile int *p) +{ + int v; +#if __mips < 2 + __asm__ __volatile__ ( + ".set push ; .set mips2\n\t" + "ll %0, %1" + "\n\t.set pop" + : "=r"(v) : "m"(*p)); +#else + __asm__ __volatile__ ( + "ll %0, %1" + : "=r"(v) : LLSC_M(*p)); +#endif + return v; +} + +#define a_sc a_sc +static inline int a_sc(volatile int *p, int v) +{ + int r; +#if __mips < 2 + __asm__ __volatile__ ( + ".set push ; .set mips2\n\t" + "sc %0, %1" + "\n\t.set pop" + : "=r"(r), "=m"(*p) : "0"(v) : "memory"); +#else + __asm__ __volatile__ ( + "sc %0, %1" + : "=r"(r), "="LLSC_M(*p) : "0"(v) : "memory"); +#endif + return r; +} + +#define a_barrier a_barrier +static inline void a_barrier() +{ + __asm__ __volatile__ ("sync" : : : "memory"); +} + +#define a_pre_llsc a_barrier +#define a_post_llsc a_barrier + +#undef LLSC_M diff --git a/lib/libc/musl/arch/mipsn32/bits/errno.h b/lib/libc/musl/arch/mipsn32/bits/errno.h new file mode 100644 index 000000000000..1bb91e3d77cb --- /dev/null +++ b/lib/libc/musl/arch/mipsn32/bits/errno.h @@ -0,0 +1,134 @@ +#define EPERM 1 +#define ENOENT 2 +#define ESRCH 3 +#define EINTR 4 +#define EIO 5 +#define ENXIO 6 +#define E2BIG 7 +#define ENOEXEC 8 +#define EBADF 9 +#define ECHILD 10 +#define EAGAIN 11 +#define ENOMEM 12 +#define EACCES 13 +#define EFAULT 14 +#define ENOTBLK 15 +#define EBUSY 16 +#define EEXIST 17 +#define EXDEV 18 +#define ENODEV 19 +#define ENOTDIR 20 +#define EISDIR 21 +#define EINVAL 22 +#define ENFILE 23 +#define EMFILE 24 +#define ENOTTY 25 +#define ETXTBSY 26 +#define EFBIG 27 +#define ENOSPC 28 +#define ESPIPE 29 +#define EROFS 30 +#define EMLINK 31 +#define EPIPE 32 +#define EDOM 33 +#define ERANGE 34 +#define ENOMSG 35 +#define EIDRM 36 +#define ECHRNG 37 +#define EL2NSYNC 38 +#define EL3HLT 39 +#define EL3RST 40 +#define ELNRNG 41 +#define EUNATCH 42 +#define ENOCSI 43 +#define EL2HLT 44 +#define EDEADLK 45 +#define ENOLCK 46 +#define EBADE 50 +#define EBADR 51 +#define EXFULL 52 +#define ENOANO 53 +#define EBADRQC 54 +#define EBADSLT 55 +#define EDEADLOCK 56 +#define EBFONT 59 +#define ENOSTR 60 +#define ENODATA 61 +#define ETIME 62 +#define ENOSR 63 +#define ENONET 64 +#define ENOPKG 65 +#define EREMOTE 66 +#define ENOLINK 67 +#define EADV 68 +#define ESRMNT 69 +#define ECOMM 70 +#define EPROTO 71 +#define EDOTDOT 73 +#define EMULTIHOP 74 +#define EBADMSG 77 +#define ENAMETOOLONG 78 +#define EOVERFLOW 79 +#define ENOTUNIQ 80 +#define EBADFD 81 +#define EREMCHG 82 +#define ELIBACC 83 +#define ELIBBAD 84 +#define ELIBSCN 85 +#define ELIBMAX 86 +#define ELIBEXEC 87 +#define EILSEQ 88 +#define ENOSYS 89 +#define ELOOP 90 +#define ERESTART 91 +#define ESTRPIPE 92 +#define ENOTEMPTY 93 +#define EUSERS 94 +#define ENOTSOCK 95 +#define EDESTADDRREQ 96 +#define EMSGSIZE 97 +#define EPROTOTYPE 98 +#define ENOPROTOOPT 99 +#define EPROTONOSUPPORT 120 +#define ESOCKTNOSUPPORT 121 +#define EOPNOTSUPP 122 +#define ENOTSUP EOPNOTSUPP +#define EPFNOSUPPORT 123 +#define EAFNOSUPPORT 124 +#define EADDRINUSE 125 +#define EADDRNOTAVAIL 126 +#define ENETDOWN 127 +#define ENETUNREACH 128 +#define ENETRESET 129 +#define ECONNABORTED 130 +#define ECONNRESET 131 +#define ENOBUFS 132 +#define EISCONN 133 +#define ENOTCONN 134 +#define EUCLEAN 135 +#define ENOTNAM 137 +#define ENAVAIL 138 +#define EISNAM 139 +#define EREMOTEIO 140 +#define ESHUTDOWN 143 +#define ETOOMANYREFS 144 +#define ETIMEDOUT 145 +#define ECONNREFUSED 146 +#define EHOSTDOWN 147 +#define EHOSTUNREACH 148 +#define EWOULDBLOCK EAGAIN +#define EALREADY 149 +#define EINPROGRESS 150 +#define ESTALE 151 +#define ECANCELED 158 +#define ENOMEDIUM 159 +#define EMEDIUMTYPE 160 +#define ENOKEY 161 +#define EKEYEXPIRED 162 +#define EKEYREVOKED 163 +#define EKEYREJECTED 164 +#define EOWNERDEAD 165 +#define ENOTRECOVERABLE 166 +#define ERFKILL 167 +#define EHWPOISON 168 +#define EDQUOT 1133 diff --git a/lib/libc/musl/arch/mipsn32/bits/fcntl.h b/lib/libc/musl/arch/mipsn32/bits/fcntl.h new file mode 100644 index 000000000000..9fd8c23e2745 --- /dev/null +++ b/lib/libc/musl/arch/mipsn32/bits/fcntl.h @@ -0,0 +1,40 @@ +#define O_CREAT 0400 +#define O_EXCL 02000 +#define O_NOCTTY 04000 +#define O_TRUNC 01000 +#define O_APPEND 0010 +#define O_NONBLOCK 0200 +#define O_DSYNC 0020 +#define O_SYNC 040020 +#define O_RSYNC 040020 +#define O_DIRECTORY 0200000 +#define O_NOFOLLOW 0400000 +#define O_CLOEXEC 02000000 + +#define O_ASYNC 010000 +#define O_DIRECT 0100000 +#define O_LARGEFILE 020000 +#define O_NOATIME 01000000 +#define O_PATH 010000000 +#define O_TMPFILE 020200000 +#define O_NDELAY O_NONBLOCK + +#define F_DUPFD 0 +#define F_GETFD 1 +#define F_SETFD 2 +#define F_GETFL 3 +#define F_SETFL 4 + +#define F_SETOWN 24 +#define F_GETOWN 23 +#define F_SETSIG 10 +#define F_GETSIG 11 + +#define F_GETLK 33 +#define F_SETLK 34 +#define F_SETLKW 35 + +#define F_SETOWN_EX 15 +#define F_GETOWN_EX 16 + +#define F_GETOWNER_UIDS 17 diff --git a/lib/libc/musl/arch/mipsn32/bits/fenv.h b/lib/libc/musl/arch/mipsn32/bits/fenv.h new file mode 100644 index 000000000000..589e71c1bfc0 --- /dev/null +++ b/lib/libc/musl/arch/mipsn32/bits/fenv.h @@ -0,0 +1,25 @@ +#ifdef __mips_soft_float +#define FE_ALL_EXCEPT 0 +#define FE_TONEAREST 0 +#else +#define FE_INEXACT 4 +#define FE_UNDERFLOW 8 +#define FE_OVERFLOW 16 +#define FE_DIVBYZERO 32 +#define FE_INVALID 64 + +#define FE_ALL_EXCEPT 124 + +#define FE_TONEAREST 0 +#define FE_TOWARDZERO 1 +#define FE_UPWARD 2 +#define FE_DOWNWARD 3 +#endif + +typedef unsigned short fexcept_t; + +typedef struct { + unsigned __cw; +} fenv_t; + +#define FE_DFL_ENV ((const fenv_t *) -1) diff --git a/lib/libc/musl/arch/mipsn32/bits/float.h b/lib/libc/musl/arch/mipsn32/bits/float.h new file mode 100644 index 000000000000..719c79085af8 --- /dev/null +++ b/lib/libc/musl/arch/mipsn32/bits/float.h @@ -0,0 +1,16 @@ +#define FLT_EVAL_METHOD 0 + +#define LDBL_TRUE_MIN 6.47517511943802511092443895822764655e-4966L +#define LDBL_MIN 3.36210314311209350626267781732175260e-4932L +#define LDBL_MAX 1.18973149535723176508575932662800702e+4932L +#define LDBL_EPSILON 1.92592994438723585305597794258492732e-34L + +#define LDBL_MANT_DIG 113 +#define LDBL_MIN_EXP (-16381) +#define LDBL_MAX_EXP 16384 + +#define LDBL_DIG 33 +#define LDBL_MIN_10_EXP (-4931) +#define LDBL_MAX_10_EXP 4932 + +#define DECIMAL_DIG 36 diff --git a/lib/libc/musl/arch/mipsn32/bits/hwcap.h b/lib/libc/musl/arch/mipsn32/bits/hwcap.h new file mode 100644 index 000000000000..13e86fe702ee --- /dev/null +++ b/lib/libc/musl/arch/mipsn32/bits/hwcap.h @@ -0,0 +1,3 @@ +#define HWCAP_MIPS_R6 (1 << 0) +#define HWCAP_MIPS_MSA (1 << 1) +#define HWCAP_MIPS_CRC32 (1 << 2) diff --git a/lib/libc/musl/arch/mipsn32/bits/ioctl.h b/lib/libc/musl/arch/mipsn32/bits/ioctl.h new file mode 100644 index 000000000000..e20bf19eaa77 --- /dev/null +++ b/lib/libc/musl/arch/mipsn32/bits/ioctl.h @@ -0,0 +1,114 @@ +#define _IOC(a,b,c,d) ( ((a)<<29) | ((b)<<8) | (c) | ((d)<<16) ) +#define _IOC_NONE 1U +#define _IOC_READ 2U +#define _IOC_WRITE 4U + +#define _IO(a,b) _IOC(_IOC_NONE,(a),(b),0) +#define _IOW(a,b,c) _IOC(_IOC_WRITE,(a),(b),sizeof(c)) +#define _IOR(a,b,c) _IOC(_IOC_READ,(a),(b),sizeof(c)) +#define _IOWR(a,b,c) _IOC(_IOC_READ|_IOC_WRITE,(a),(b),sizeof(c)) + +#define TCGETA 0x5401 +#define TCSETA 0x5402 +#define TCSETAW 0x5403 +#define TCSETAF 0x5404 +#define TCSBRK 0x5405 +#define TCXONC 0x5406 +#define TCFLSH 0x5407 +#define TCGETS 0x540D +#define TCSETS 0x540E +#define TCSETSW 0x540F +#define TCSETSF 0x5410 + +#define TIOCEXCL 0x740D +#define TIOCNXCL 0x740E +#define TIOCOUTQ 0x7472 +#define TIOCSTI 0x5472 +#define TIOCMGET 0x741D +#define TIOCMBIS 0x741B +#define TIOCMBIC 0x741C +#define TIOCMSET 0x741A + +#define TIOCPKT 0x5470 +#define TIOCSWINSZ _IOW('t', 103, struct winsize) +#define TIOCGWINSZ _IOR('t', 104, struct winsize) +#define TIOCNOTTY 0x5471 +#define TIOCSETD 0x7401 +#define TIOCGETD 0x7400 + +#define FIOCLEX 0x6601 +#define FIONCLEX 0x6602 +#define FIOASYNC 0x667D +#define FIONBIO 0x667E +#define FIOQSIZE 0x667F + +#define TIOCGLTC 0x7474 +#define TIOCSLTC 0x7475 +#define TIOCSPGRP _IOW('t', 118, int) +#define TIOCGPGRP _IOR('t', 119, int) +#define TIOCCONS _IOW('t', 120, int) + +#define FIONREAD 0x467F +#define TIOCINQ FIONREAD + +#define TIOCGETP 0x7408 +#define TIOCSETP 0x7409 +#define TIOCSETN 0x740A + +#define TIOCSBRK 0x5427 +#define TIOCCBRK 0x5428 +#define TIOCGSID 0x7416 +#define TIOCGRS485 _IOR('T', 0x2E, char[32]) +#define TIOCSRS485 _IOWR('T', 0x2F, char[32]) +#define TIOCGPTN _IOR('T', 0x30, unsigned int) +#define TIOCSPTLCK _IOW('T', 0x31, int) +#define TIOCGDEV _IOR('T', 0x32, unsigned int) +#define TIOCSIG _IOW('T', 0x36, int) +#define TIOCVHANGUP 0x5437 +#define TIOCGPKT _IOR('T', 0x38, int) +#define TIOCGPTLCK _IOR('T', 0x39, int) +#define TIOCGEXCL _IOR('T', 0x40, int) +#define TIOCGPTPEER _IO('T', 0x41) + +#define TIOCSCTTY 0x5480 +#define TIOCGSOFTCAR 0x5481 +#define TIOCSSOFTCAR 0x5482 +#define TIOCLINUX 0x5483 +#define TIOCGSERIAL 0x5484 +#define TIOCSSERIAL 0x5485 +#define TCSBRKP 0x5486 + +#define TIOCSERCONFIG 0x5488 +#define TIOCSERGWILD 0x5489 +#define TIOCSERSWILD 0x548A +#define TIOCGLCKTRMIOS 0x548B +#define TIOCSLCKTRMIOS 0x548C +#define TIOCSERGSTRUCT 0x548D +#define TIOCSERGETLSR 0x548E +#define TIOCSERGETMULTI 0x548F +#define TIOCSERSETMULTI 0x5490 +#define TIOCMIWAIT 0x5491 +#define TIOCGICOUNT 0x5492 + +#define TIOCM_LE 0x001 +#define TIOCM_DTR 0x002 +#define TIOCM_RTS 0x004 +#define TIOCM_ST 0x010 +#define TIOCM_SR 0x020 +#define TIOCM_CTS 0x040 +#define TIOCM_CAR 0x100 +#define TIOCM_CD TIOCM_CAR +#define TIOCM_RNG 0x200 +#define TIOCM_RI TIOCM_RNG +#define TIOCM_DSR 0x400 +#define TIOCM_OUT1 0x2000 +#define TIOCM_OUT2 0x4000 +#define TIOCM_LOOP 0x8000 + +#define FIOGETOWN _IOR('f', 123, int) +#define FIOSETOWN _IOW('f', 124, int) +#define SIOCATMARK _IOR('s', 7, int) +#define SIOCSPGRP _IOW('s', 8, pid_t) +#define SIOCGPGRP _IOR('s', 9, pid_t) +#define SIOCGSTAMP _IOR(0x89, 6, char[16]) +#define SIOCGSTAMPNS _IOR(0x89, 7, char[16]) diff --git a/lib/libc/musl/arch/mipsn32/bits/ipcstat.h b/lib/libc/musl/arch/mipsn32/bits/ipcstat.h new file mode 100644 index 000000000000..4f4fcb0c5b74 --- /dev/null +++ b/lib/libc/musl/arch/mipsn32/bits/ipcstat.h @@ -0,0 +1 @@ +#define IPC_STAT 0x102 diff --git a/lib/libc/musl/arch/mipsn32/bits/mman.h b/lib/libc/musl/arch/mipsn32/bits/mman.h new file mode 100644 index 000000000000..9027bb637601 --- /dev/null +++ b/lib/libc/musl/arch/mipsn32/bits/mman.h @@ -0,0 +1,25 @@ +#undef MAP_ANON +#define MAP_ANON 0x800 +#undef MAP_NORESERVE +#define MAP_NORESERVE 0x0400 +#undef MAP_GROWSDOWN +#define MAP_GROWSDOWN 0x1000 +#undef MAP_DENYWRITE +#define MAP_DENYWRITE 0x2000 +#undef MAP_EXECUTABLE +#define MAP_EXECUTABLE 0x4000 +#undef MAP_LOCKED +#define MAP_LOCKED 0x8000 +#undef MAP_POPULATE +#define MAP_POPULATE 0x10000 +#undef MAP_NONBLOCK +#define MAP_NONBLOCK 0x20000 +#undef MAP_STACK +#define MAP_STACK 0x40000 +#undef MAP_HUGETLB +#define MAP_HUGETLB 0x80000 +#undef MAP_SYNC + +#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) +#undef MADV_SOFT_OFFLINE +#endif diff --git a/lib/libc/musl/arch/mipsn32/bits/msg.h b/lib/libc/musl/arch/mipsn32/bits/msg.h new file mode 100644 index 000000000000..c734dbb57085 --- /dev/null +++ b/lib/libc/musl/arch/mipsn32/bits/msg.h @@ -0,0 +1,27 @@ +struct msqid_ds { + struct ipc_perm msg_perm; +#if _MIPSEL || __MIPSEL || __MIPSEL__ + unsigned long __msg_stime_lo; + unsigned long __msg_stime_hi; + unsigned long __msg_rtime_lo; + unsigned long __msg_rtime_hi; + unsigned long __msg_ctime_lo; + unsigned long __msg_ctime_hi; +#else + unsigned long __msg_stime_hi; + unsigned long __msg_stime_lo; + unsigned long __msg_rtime_hi; + unsigned long __msg_rtime_lo; + unsigned long __msg_ctime_hi; + unsigned long __msg_ctime_lo; +#endif + unsigned long msg_cbytes; + msgqnum_t msg_qnum; + msglen_t msg_qbytes; + pid_t msg_lspid; + pid_t msg_lrpid; + unsigned long __unused[2]; + time_t msg_stime; + time_t msg_rtime; + time_t msg_ctime; +}; diff --git a/lib/libc/musl/arch/mipsn32/bits/poll.h b/lib/libc/musl/arch/mipsn32/bits/poll.h new file mode 100644 index 000000000000..b0b1ed621e55 --- /dev/null +++ b/lib/libc/musl/arch/mipsn32/bits/poll.h @@ -0,0 +1,2 @@ +#define POLLWRNORM POLLOUT +#define POLLWRBAND 0x100 diff --git a/lib/libc/musl/arch/mipsn32/bits/posix.h b/lib/libc/musl/arch/mipsn32/bits/posix.h new file mode 100644 index 000000000000..30a38714f36d --- /dev/null +++ b/lib/libc/musl/arch/mipsn32/bits/posix.h @@ -0,0 +1,2 @@ +#define _POSIX_V6_ILP32_OFFBIG 1 +#define _POSIX_V7_ILP32_OFFBIG 1 diff --git a/lib/libc/musl/arch/mipsn32/bits/ptrace.h b/lib/libc/musl/arch/mipsn32/bits/ptrace.h new file mode 100644 index 000000000000..77a01c064edd --- /dev/null +++ b/lib/libc/musl/arch/mipsn32/bits/ptrace.h @@ -0,0 +1,9 @@ +#define PTRACE_GET_THREAD_AREA 25 +#define PTRACE_SET_THREAD_AREA 26 +#define PTRACE_PEEKTEXT_3264 0xc0 +#define PTRACE_PEEKDATA_3264 0xc1 +#define PTRACE_POKETEXT_3264 0xc2 +#define PTRACE_POKEDATA_3264 0xc3 +#define PTRACE_GET_THREAD_AREA_3264 0xc4 +#define PTRACE_GET_WATCH_REGS 0xd0 +#define PTRACE_SET_WATCH_REGS 0xd1 diff --git a/lib/libc/musl/arch/mipsn32/bits/reg.h b/lib/libc/musl/arch/mipsn32/bits/reg.h new file mode 100644 index 000000000000..a3f63accf7f2 --- /dev/null +++ b/lib/libc/musl/arch/mipsn32/bits/reg.h @@ -0,0 +1,47 @@ +#undef __WORDSIZE +#define __WORDSIZE 64 + +#define EF_R0 0 +#define EF_R1 1 +#define EF_R2 2 +#define EF_R3 3 +#define EF_R4 4 +#define EF_R5 5 +#define EF_R6 6 +#define EF_R7 7 +#define EF_R8 8 +#define EF_R9 9 +#define EF_R10 10 +#define EF_R11 11 +#define EF_R12 12 +#define EF_R13 13 +#define EF_R14 14 +#define EF_R15 15 +#define EF_R16 16 +#define EF_R17 17 +#define EF_R18 18 +#define EF_R19 19 +#define EF_R20 20 +#define EF_R21 21 +#define EF_R22 22 +#define EF_R23 23 +#define EF_R24 24 +#define EF_R25 25 + +#define EF_R26 26 +#define EF_R27 27 +#define EF_R28 28 +#define EF_R29 29 +#define EF_R30 30 +#define EF_R31 31 + +#define EF_LO 32 +#define EF_HI 33 + +#define EF_CP0_EPC 34 +#define EF_CP0_BADVADDR 35 +#define EF_CP0_STATUS 36 +#define EF_CP0_CAUSE 37 +#define EF_UNUSED0 38 + +#define EF_SIZE 304 diff --git a/lib/libc/musl/arch/mipsn32/bits/resource.h b/lib/libc/musl/arch/mipsn32/bits/resource.h new file mode 100644 index 000000000000..414a40541712 --- /dev/null +++ b/lib/libc/musl/arch/mipsn32/bits/resource.h @@ -0,0 +1,5 @@ +#define RLIMIT_NOFILE 5 +#define RLIMIT_AS 6 +#define RLIMIT_RSS 7 +#define RLIMIT_NPROC 8 +#define RLIMIT_MEMLOCK 9 diff --git a/lib/libc/musl/arch/mipsn32/bits/sem.h b/lib/libc/musl/arch/mipsn32/bits/sem.h new file mode 100644 index 000000000000..fe6f0948582b --- /dev/null +++ b/lib/libc/musl/arch/mipsn32/bits/sem.h @@ -0,0 +1,16 @@ +struct semid_ds { + struct ipc_perm sem_perm; + unsigned long __sem_otime_lo; + unsigned long __sem_ctime_lo; +#if __BYTE_ORDER == __LITTLE_ENDIAN + unsigned short sem_nsems; + char __sem_nsems_pad[sizeof(long)-sizeof(short)]; +#else + char __sem_nsems_pad[sizeof(long)-sizeof(short)]; + unsigned short sem_nsems; +#endif + unsigned long __sem_otime_hi; + unsigned long __sem_ctime_hi; + time_t sem_otime; + time_t sem_ctime; +}; diff --git a/lib/libc/musl/arch/mipsn32/bits/setjmp.h b/lib/libc/musl/arch/mipsn32/bits/setjmp.h new file mode 100644 index 000000000000..4d93267e61a9 --- /dev/null +++ b/lib/libc/musl/arch/mipsn32/bits/setjmp.h @@ -0,0 +1 @@ +typedef unsigned long long __jmp_buf[23]; diff --git a/lib/libc/musl/arch/mipsn32/bits/shm.h b/lib/libc/musl/arch/mipsn32/bits/shm.h new file mode 100644 index 000000000000..ab8c642d825a --- /dev/null +++ b/lib/libc/musl/arch/mipsn32/bits/shm.h @@ -0,0 +1,29 @@ +#define SHMLBA 4096 + +struct shmid_ds { + struct ipc_perm shm_perm; + size_t shm_segsz; + unsigned long __shm_atime_lo; + unsigned long __shm_dtime_lo; + unsigned long __shm_ctime_lo; + pid_t shm_cpid; + pid_t shm_lpid; + unsigned long shm_nattch; + unsigned short __shm_atime_hi; + unsigned short __shm_dtime_hi; + unsigned short __shm_ctime_hi; + unsigned short __pad1; + time_t shm_atime; + time_t shm_dtime; + time_t shm_ctime; +}; + +struct shminfo { + unsigned long shmmax, shmmin, shmmni, shmseg, shmall, __unused[4]; +}; + +struct shm_info { + int __used_ids; + unsigned long shm_tot, shm_rss, shm_swp; + unsigned long __swap_attempts, __swap_successes; +}; diff --git a/lib/libc/musl/arch/mipsn32/bits/signal.h b/lib/libc/musl/arch/mipsn32/bits/signal.h new file mode 100644 index 000000000000..ffec7fd014ff --- /dev/null +++ b/lib/libc/musl/arch/mipsn32/bits/signal.h @@ -0,0 +1,142 @@ +#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \ + || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE) + +#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE) +#define MINSIGSTKSZ 2048 +#define SIGSTKSZ 8192 +#endif + +#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) +typedef unsigned long long greg_t, gregset_t[32]; + +typedef struct { + union { + double fp_dregs[32]; + struct { + float _fp_fregs; + unsigned _fp_pad; + } fp_fregs[32]; + } fp_r; +} fpregset_t; + +struct sigcontext { + unsigned long long sc_regs[32]; + unsigned long long sc_fpregs[32]; + unsigned long long sc_mdhi; + unsigned long long sc_hi1; + unsigned long long sc_hi2; + unsigned long long sc_hi3; + unsigned long long sc_mdlo; + unsigned long long sc_lo1; + unsigned long long sc_lo2; + unsigned long long sc_lo3; + unsigned long long sc_pc; + unsigned int sc_fpc_csr; + unsigned int sc_used_math; + unsigned int sc_dsp; + unsigned int sc_reserved; +}; + +typedef struct { + gregset_t gregs; + fpregset_t fpregs; + greg_t mdhi; + greg_t hi1; + greg_t hi2; + greg_t hi3; + greg_t mdlo; + greg_t lo1; + greg_t lo2; + greg_t lo3; + greg_t pc; + unsigned int fpc_csr; + unsigned int used_math; + unsigned int dsp; + unsigned int reserved; +} mcontext_t; + +#else +typedef struct { + unsigned long long __mc1[32]; + double __mc2[32]; + unsigned long long __mc3[9]; + unsigned __mc4[4]; +} mcontext_t; +#endif + +struct sigaltstack { + void *ss_sp; + size_t ss_size; + int ss_flags; +}; + +typedef struct __ucontext { + unsigned long uc_flags; + struct __ucontext *uc_link; + stack_t uc_stack; + mcontext_t uc_mcontext; + sigset_t uc_sigmask; +} ucontext_t; + +#define SA_NOCLDSTOP 1 +#define SA_NOCLDWAIT 0x10000 +#define SA_SIGINFO 8 +#define SA_ONSTACK 0x08000000 +#define SA_RESTART 0x10000000 +#define SA_NODEFER 0x40000000 +#define SA_RESETHAND 0x80000000 + +#undef SIG_BLOCK +#undef SIG_UNBLOCK +#undef SIG_SETMASK +#define SIG_BLOCK 1 +#define SIG_UNBLOCK 2 +#define SIG_SETMASK 3 + +#undef SI_ASYNCIO +#undef SI_MESGQ +#undef SI_TIMER +#define SI_ASYNCIO (-2) +#define SI_MESGQ (-4) +#define SI_TIMER (-3) + +#define __SI_SWAP_ERRNO_CODE + +#endif + +#define SIGHUP 1 +#define SIGINT 2 +#define SIGQUIT 3 +#define SIGILL 4 +#define SIGTRAP 5 +#define SIGABRT 6 +#define SIGIOT SIGABRT +#define SIGEMT 7 +#define SIGFPE 8 +#define SIGKILL 9 +#define SIGBUS 10 +#define SIGSEGV 11 +#define SIGSYS 12 +#define SIGPIPE 13 +#define SIGALRM 14 +#define SIGTERM 15 +#define SIGUSR1 16 +#define SIGUSR2 17 +#define SIGCHLD 18 +#define SIGPWR 19 +#define SIGWINCH 20 +#define SIGURG 21 +#define SIGIO 22 +#define SIGPOLL SIGIO +#define SIGSTOP 23 +#define SIGTSTP 24 +#define SIGCONT 25 +#define SIGTTIN 26 +#define SIGTTOU 27 +#define SIGVTALRM 28 +#define SIGPROF 29 +#define SIGXCPU 30 +#define SIGXFSZ 31 +#define SIGUNUSED SIGSYS + +#define _NSIG 128 diff --git a/lib/libc/musl/arch/mipsn32/bits/socket.h b/lib/libc/musl/arch/mipsn32/bits/socket.h new file mode 100644 index 000000000000..02fbb88b4d25 --- /dev/null +++ b/lib/libc/musl/arch/mipsn32/bits/socket.h @@ -0,0 +1,35 @@ +#define SOCK_STREAM 2 +#define SOCK_DGRAM 1 + +#define SOL_SOCKET 65535 + +#define SO_DEBUG 1 + +#define SO_REUSEADDR 0x0004 +#define SO_KEEPALIVE 0x0008 +#define SO_DONTROUTE 0x0010 +#define SO_BROADCAST 0x0020 +#define SO_LINGER 0x0080 +#define SO_OOBINLINE 0x0100 +#define SO_REUSEPORT 0x0200 +#define SO_SNDBUF 0x1001 +#define SO_RCVBUF 0x1002 +#define SO_SNDLOWAT 0x1003 +#define SO_RCVLOWAT 0x1004 +#define SO_ERROR 0x1007 +#define SO_TYPE 0x1008 +#define SO_ACCEPTCONN 0x1009 +#define SO_PROTOCOL 0x1028 +#define SO_DOMAIN 0x1029 + +#define SO_NO_CHECK 11 +#define SO_PRIORITY 12 +#define SO_BSDCOMPAT 14 +#define SO_PASSCRED 17 +#define SO_PEERCRED 18 +#define SO_PEERSEC 30 +#define SO_SNDBUFFORCE 31 +#define SO_RCVBUFFORCE 33 + +#define SOCK_NONBLOCK 0200 +#define SOCK_CLOEXEC 02000000 diff --git a/lib/libc/musl/arch/mipsn32/bits/stat.h b/lib/libc/musl/arch/mipsn32/bits/stat.h new file mode 100644 index 000000000000..6e2f2808687c --- /dev/null +++ b/lib/libc/musl/arch/mipsn32/bits/stat.h @@ -0,0 +1,23 @@ +struct stat { + dev_t st_dev; + long __pad1[2]; + ino_t st_ino; + mode_t st_mode; + nlink_t st_nlink; + uid_t st_uid; + gid_t st_gid; + dev_t st_rdev; + long __pad2[2]; + off_t st_size; + struct { + long tv_sec; + long tv_nsec; + } __st_atim32, __st_mtim32, __st_ctim32; + blksize_t st_blksize; + long __pad3; + blkcnt_t st_blocks; + struct timespec st_atim; + struct timespec st_mtim; + struct timespec st_ctim; + long __pad4[2]; +}; diff --git a/lib/libc/musl/arch/mipsn32/bits/statfs.h b/lib/libc/musl/arch/mipsn32/bits/statfs.h new file mode 100644 index 000000000000..a73bd547cde7 --- /dev/null +++ b/lib/libc/musl/arch/mipsn32/bits/statfs.h @@ -0,0 +1,8 @@ +struct statfs { + unsigned long f_type, f_bsize, f_frsize; + fsblkcnt_t f_blocks, f_bfree; + fsfilcnt_t f_files, f_ffree; + fsblkcnt_t f_bavail; + fsid_t f_fsid; + unsigned long f_namelen, f_flags, f_spare[5]; +}; diff --git a/lib/libc/musl/arch/mipsn32/bits/stdint.h b/lib/libc/musl/arch/mipsn32/bits/stdint.h new file mode 100644 index 000000000000..d1b2712199ac --- /dev/null +++ b/lib/libc/musl/arch/mipsn32/bits/stdint.h @@ -0,0 +1,20 @@ +typedef int32_t int_fast16_t; +typedef int32_t int_fast32_t; +typedef uint32_t uint_fast16_t; +typedef uint32_t uint_fast32_t; + +#define INT_FAST16_MIN INT32_MIN +#define INT_FAST32_MIN INT32_MIN + +#define INT_FAST16_MAX INT32_MAX +#define INT_FAST32_MAX INT32_MAX + +#define UINT_FAST16_MAX UINT32_MAX +#define UINT_FAST32_MAX UINT32_MAX + +#define INTPTR_MIN INT32_MIN +#define INTPTR_MAX INT32_MAX +#define UINTPTR_MAX UINT32_MAX +#define PTRDIFF_MIN INT32_MIN +#define PTRDIFF_MAX INT32_MAX +#define SIZE_MAX UINT32_MAX diff --git a/lib/libc/musl/arch/mipsn32/bits/termios.h b/lib/libc/musl/arch/mipsn32/bits/termios.h new file mode 100644 index 000000000000..9d571f78f690 --- /dev/null +++ b/lib/libc/musl/arch/mipsn32/bits/termios.h @@ -0,0 +1,169 @@ +struct termios { + tcflag_t c_iflag; + tcflag_t c_oflag; + tcflag_t c_cflag; + tcflag_t c_lflag; + cc_t c_line; + cc_t c_cc[NCCS]; + speed_t __c_ispeed; + speed_t __c_ospeed; +}; + +#define VINTR 0 +#define VQUIT 1 +#define VERASE 2 +#define VKILL 3 +#define VMIN 4 +#define VTIME 5 +#define VEOL2 6 +#define VSWTC 7 +#define VSWTCH 7 +#define VSTART 8 +#define VSTOP 9 +#define VSUSP 10 +#define VREPRINT 12 +#define VDISCARD 13 +#define VWERASE 14 +#define VLNEXT 15 +#define VEOF 16 +#define VEOL 17 + +#define IGNBRK 0000001 +#define BRKINT 0000002 +#define IGNPAR 0000004 +#define PARMRK 0000010 +#define INPCK 0000020 +#define ISTRIP 0000040 +#define INLCR 0000100 +#define IGNCR 0000200 +#define ICRNL 0000400 +#define IUCLC 0001000 +#define IXON 0002000 +#define IXANY 0004000 +#define IXOFF 0010000 +#define IMAXBEL 0020000 +#define IUTF8 0040000 + +#define OPOST 0000001 +#define OLCUC 0000002 +#define ONLCR 0000004 +#define OCRNL 0000010 +#define ONOCR 0000020 +#define ONLRET 0000040 +#define OFILL 0000100 +#define OFDEL 0000200 +#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) || defined(_XOPEN_SOURCE) +#define NLDLY 0000400 +#define NL0 0000000 +#define NL1 0000400 +#define CRDLY 0003000 +#define CR0 0000000 +#define CR1 0001000 +#define CR2 0002000 +#define CR3 0003000 +#define TABDLY 0014000 +#define TAB0 0000000 +#define TAB1 0004000 +#define TAB2 0010000 +#define TAB3 0014000 +#define BSDLY 0020000 +#define BS0 0000000 +#define BS1 0020000 +#define FFDLY 0100000 +#define FF0 0000000 +#define FF1 0100000 +#endif + +#define VTDLY 0040000 +#define VT0 0000000 +#define VT1 0040000 + +#define B0 0000000 +#define B50 0000001 +#define B75 0000002 +#define B110 0000003 +#define B134 0000004 +#define B150 0000005 +#define B200 0000006 +#define B300 0000007 +#define B600 0000010 +#define B1200 0000011 +#define B1800 0000012 +#define B2400 0000013 +#define B4800 0000014 +#define B9600 0000015 +#define B19200 0000016 +#define B38400 0000017 + +#define B57600 0010001 +#define B115200 0010002 +#define B230400 0010003 +#define B460800 0010004 +#define B500000 0010005 +#define B576000 0010006 +#define B921600 0010007 +#define B1000000 0010010 +#define B1152000 0010011 +#define B1500000 0010012 +#define B2000000 0010013 +#define B2500000 0010014 +#define B3000000 0010015 +#define B3500000 0010016 +#define B4000000 0010017 + +#define CSIZE 0000060 +#define CS5 0000000 +#define CS6 0000020 +#define CS7 0000040 +#define CS8 0000060 +#define CSTOPB 0000100 +#define CREAD 0000200 +#define PARENB 0000400 +#define PARODD 0001000 +#define HUPCL 0002000 +#define CLOCAL 0004000 + +#define ISIG 0000001 +#define ICANON 0000002 +#define ECHO 0000010 +#define ECHOE 0000020 +#define ECHOK 0000040 +#define ECHONL 0000100 +#define NOFLSH 0000200 +#define IEXTEN 0000400 +#define TOSTOP 0100000 +#define ITOSTOP 0100000 + +#define TCOOFF 0 +#define TCOON 1 +#define TCIOFF 2 +#define TCION 3 + +#define TCIFLUSH 0 +#define TCOFLUSH 1 +#define TCIOFLUSH 2 + +#define TCSANOW 0 +#define TCSADRAIN 1 +#define TCSAFLUSH 2 + +#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) +#define EXTA 0000016 +#define EXTB 0000017 +#define CBAUD 0010017 +#define CBAUDEX 0010000 +#define CIBAUD 002003600000 +#define CMSPAR 010000000000 +#define CRTSCTS 020000000000 + +#define XCASE 0000004 +#define ECHOCTL 0001000 +#define ECHOPRT 0002000 +#define ECHOKE 0004000 +#define FLUSHO 0020000 +#define PENDIN 0040000 +#define EXTPROC 0200000 + +#define XTABS 0014000 +#define TIOCSER_TEMT 1 +#endif diff --git a/lib/libc/musl/arch/mipsn32/bits/user.h b/lib/libc/musl/arch/mipsn32/bits/user.h new file mode 100644 index 000000000000..60fa1fda9382 --- /dev/null +++ b/lib/libc/musl/arch/mipsn32/bits/user.h @@ -0,0 +1,15 @@ +struct user { + unsigned long regs[102]; + unsigned long u_tsize, u_dsize, u_ssize; + unsigned long long start_code, start_data, start_stack; + long long signal; + unsigned long long *u_ar0; + unsigned long long magic; + char u_comm[32]; +}; + +#define ELF_NGREG 45 +#define ELF_NFPREG 33 + +typedef unsigned long elf_greg_t, elf_gregset_t[ELF_NGREG]; +typedef double elf_fpreg_t, elf_fpregset_t[ELF_NFPREG]; diff --git a/lib/libc/musl/arch/mipsn32/crt_arch.h b/lib/libc/musl/arch/mipsn32/crt_arch.h new file mode 100644 index 000000000000..eb5928ccb253 --- /dev/null +++ b/lib/libc/musl/arch/mipsn32/crt_arch.h @@ -0,0 +1,32 @@ +__asm__( +".set push\n" +".set noreorder\n" +".text \n" +".global _" START "\n" +".global " START "\n" +".global " START "_data\n" +".type _" START ", @function\n" +".type " START ", @function\n" +".type " START "_data, @function\n" +"_" START ":\n" +"" START ":\n" +" bal 1f \n" +" move $fp, $0 \n" +"" START "_data: \n" +" .gpword " START "_data \n" +" .gpword " START "_c \n" +".weak _DYNAMIC \n" +".hidden _DYNAMIC \n" +" .gpword _DYNAMIC \n" +"1: lw $gp, 0($ra) \n" +" subu $gp, $ra, $gp \n" +" move $4, $sp \n" +" lw $5, 8($ra) \n" +" addu $5, $5, $gp \n" +" lw $25, 4($ra) \n" +" addu $25, $25, $gp \n" +" and $sp, $sp, -8 \n" +" jalr $25 \n" +" subu $sp, $sp, 16 \n" +".set pop \n" +); diff --git a/lib/libc/musl/arch/mipsn32/ksigaction.h b/lib/libc/musl/arch/mipsn32/ksigaction.h new file mode 100644 index 000000000000..485abf756d8d --- /dev/null +++ b/lib/libc/musl/arch/mipsn32/ksigaction.h @@ -0,0 +1,10 @@ +#include + +struct k_sigaction { + unsigned flags; + void (*handler)(int); + unsigned long mask[4]; + void *unused; +}; + +hidden void __restore(), __restore_rt(); diff --git a/lib/libc/musl/arch/mipsn32/kstat.h b/lib/libc/musl/arch/mipsn32/kstat.h new file mode 100644 index 000000000000..3841559c2cdd --- /dev/null +++ b/lib/libc/musl/arch/mipsn32/kstat.h @@ -0,0 +1,22 @@ +struct kstat { + unsigned st_dev; + long __pad1[3]; + ino_t st_ino; + mode_t st_mode; + nlink_t st_nlink; + uid_t st_uid; + gid_t st_gid; + unsigned st_rdev; + long __pad2[3]; + off_t st_size; + long st_atime_sec; + long st_atime_nsec; + long st_mtime_sec; + long st_mtime_nsec; + long st_ctime_sec; + long st_ctime_nsec; + blksize_t st_blksize; + long __pad3; + blkcnt_t st_blocks; + long __pad4[14]; +}; diff --git a/lib/libc/musl/arch/mipsn32/pthread_arch.h b/lib/libc/musl/arch/mipsn32/pthread_arch.h new file mode 100644 index 000000000000..c45347ab92f6 --- /dev/null +++ b/lib/libc/musl/arch/mipsn32/pthread_arch.h @@ -0,0 +1,19 @@ +static inline uintptr_t __get_tp() +{ +#if __mips_isa_rev < 2 + register uintptr_t tp __asm__("$3"); + __asm__ (".word 0x7c03e83b" : "=r" (tp) ); +#else + uintptr_t tp; + __asm__ ("rdhwr %0, $29" : "=r" (tp) ); +#endif + return tp; +} + +#define TLS_ABOVE_TP +#define GAP_ABOVE_TP 0 + +#define TP_OFFSET 0x7000 +#define DTP_OFFSET 0x8000 + +#define MC_PC pc diff --git a/lib/libc/musl/arch/mipsn32/reloc.h b/lib/libc/musl/arch/mipsn32/reloc.h new file mode 100644 index 000000000000..bf00bd6afc61 --- /dev/null +++ b/lib/libc/musl/arch/mipsn32/reloc.h @@ -0,0 +1,51 @@ +#if __mips_isa_rev >= 6 +#define ISA_SUFFIX "r6" +#else +#define ISA_SUFFIX "" +#endif + +#if __BYTE_ORDER == __LITTLE_ENDIAN +#define ENDIAN_SUFFIX "el" +#else +#define ENDIAN_SUFFIX "" +#endif + +#ifdef __mips_soft_float +#define FP_SUFFIX "-sf" +#else +#define FP_SUFFIX "" +#endif + +#define LDSO_ARCH "mipsn32" ISA_SUFFIX ENDIAN_SUFFIX FP_SUFFIX + +#define TPOFF_K (-0x7000) + +#define REL_SYM_OR_REL R_MIPS_REL32 +#define REL_PLT R_MIPS_JUMP_SLOT +#define REL_COPY R_MIPS_COPY +#define REL_DTPMOD R_MIPS_TLS_DTPMOD32 +#define REL_DTPOFF R_MIPS_TLS_DTPREL32 +#define REL_TPOFF R_MIPS_TLS_TPREL32 + +#define NEED_MIPS_GOT_RELOCS 1 +#define DT_DEBUG_INDIRECT DT_MIPS_RLD_MAP +#define DT_DEBUG_INDIRECT_REL DT_MIPS_RLD_MAP_REL +#define ARCH_SYM_REJECT_UND(s) (!((s)->st_other & STO_MIPS_PLT)) + +#define CRTJMP(pc,sp) __asm__ __volatile__( \ + "move $sp,%1 ; jr %0" : : "r"(pc), "r"(sp) : "memory" ) + +#define GETFUNCSYM(fp, sym, got) __asm__ ( \ + ".hidden " #sym "\n" \ + ".set push \n" \ + ".set noreorder \n" \ + " bal 1f \n" \ + " nop \n" \ + " .gpword . \n" \ + " .gpword " #sym " \n" \ + "1: lw %0, ($ra) \n" \ + " subu %0, $ra, %0 \n" \ + " lw $ra, 4($ra) \n" \ + " addu %0, %0, $ra \n" \ + ".set pop \n" \ + : "=r"(*(fp)) : : "memory", "ra" ) diff --git a/lib/libc/musl/arch/mipsn32/syscall_arch.h b/lib/libc/musl/arch/mipsn32/syscall_arch.h new file mode 100644 index 000000000000..c681905d0f2b --- /dev/null +++ b/lib/libc/musl/arch/mipsn32/syscall_arch.h @@ -0,0 +1,130 @@ +#define __SYSCALL_LL_E(x) (x) +#define __SYSCALL_LL_O(x) (x) + +#define SYSCALL_RLIM_INFINITY (-1UL/2) + +#if __mips_isa_rev >= 6 +#define SYSCALL_CLOBBERLIST \ + "$1", "$3", "$10", "$11", "$12", "$13", \ + "$14", "$15", "$24", "$25", "memory" +#else +#define SYSCALL_CLOBBERLIST \ + "$1", "$3", "$10", "$11", "$12", "$13", \ + "$14", "$15", "$24", "$25", "hi", "lo", "memory" +#endif + +static inline long __syscall0(long n) +{ + register long r7 __asm__("$7"); + register long r2 __asm__("$2"); + __asm__ __volatile__ ( + "daddu $2,$0,%2 ; syscall" + : "=&r"(r2), "=r"(r7) + : "ir"(n), "0"(r2) + : SYSCALL_CLOBBERLIST); + return r7 && r2>0 ? -r2 : r2; +} + +static inline long __syscall1(long n, long a) +{ + register long r4 __asm__("$4") = a; + register long r7 __asm__("$7"); + register long r2 __asm__("$2"); + __asm__ __volatile__ ( + "daddu $2,$0,%2 ; syscall" + : "=&r"(r2), "=r"(r7) + : "ir"(n), "0"(r2), "r"(r4) + : SYSCALL_CLOBBERLIST); + return r7 && r2>0 ? -r2 : r2; +} + +static inline long __syscall2(long n, long a, long b) +{ + register long r4 __asm__("$4") = a; + register long r5 __asm__("$5") = b; + register long r7 __asm__("$7"); + register long r2 __asm__("$2"); + + __asm__ __volatile__ ( + "daddu $2,$0,%2 ; syscall" + : "=&r"(r2), "=r"(r7) + : "ir"(n), "0"(r2), "r"(r4), "r"(r5) + : SYSCALL_CLOBBERLIST); + return r7 && r2>0 ? -r2 : r2; +} + +static inline long __syscall3(long n, long a, long b, long c) +{ + register long r4 __asm__("$4") = a; + register long r5 __asm__("$5") = b; + register long r6 __asm__("$6") = c; + register long r7 __asm__("$7"); + register long r2 __asm__("$2"); + + __asm__ __volatile__ ( + "daddu $2,$0,%2 ; syscall" + : "=&r"(r2), "=r"(r7) + : "ir"(n), "0"(r2), "r"(r4), "r"(r5), "r"(r6) + : SYSCALL_CLOBBERLIST); + return r7 && r2>0 ? -r2 : r2; +} + +static inline long __syscall4(long n, long a, long b, long c, long d) +{ + register long r4 __asm__("$4") = a; + register long r5 __asm__("$5") = b; + register long r6 __asm__("$6") = c; + register long r7 __asm__("$7") = d; + register long r2 __asm__("$2"); + + __asm__ __volatile__ ( + "daddu $2,$0,%2 ; syscall" + : "=&r"(r2), "+r"(r7) + : "ir"(n), "0"(r2), "r"(r4), "r"(r5), "r"(r6) + : SYSCALL_CLOBBERLIST); + return r7 && r2>0 ? -r2 : r2; +} + +static inline long __syscall5(long n, long a, long b, long c, long d, long e) +{ + register long r4 __asm__("$4") = a; + register long r5 __asm__("$5") = b; + register long r6 __asm__("$6") = c; + register long r7 __asm__("$7") = d; + register long r8 __asm__("$8") = e; + register long r2 __asm__("$2"); + + __asm__ __volatile__ ( + "daddu $2,$0,%2 ; syscall" + : "=&r"(r2), "+r"(r7) + : "ir"(n), "0"(r2), "r"(r4), "r"(r5), "r"(r6), "r"(r8) + : SYSCALL_CLOBBERLIST); + return r7 && r2>0 ? -r2 : r2; +} + +static inline long __syscall6(long n, long a, long b, long c, long d, long e, long f) +{ + register long r4 __asm__("$4") = a; + register long r5 __asm__("$5") = b; + register long r6 __asm__("$6") = c; + register long r7 __asm__("$7") = d; + register long r8 __asm__("$8") = e; + register long r9 __asm__("$9") = f; + register long r2 __asm__("$2"); + + __asm__ __volatile__ ( + "daddu $2,$0,%2 ; syscall" + : "=&r"(r2), "+r"(r7) + : "ir"(n), "0"(r2), "r"(r4), "r"(r5), "r"(r6), "r"(r8), "r"(r9) + : SYSCALL_CLOBBERLIST); + return r7 && r2>0 ? -r2 : r2; +} + +#define VDSO_USEFUL +#define VDSO_CGT32_SYM "__vdso_clock_gettime" +#define VDSO_CGT32_VER "LINUX_2.6" +#define VDSO_CGT_SYM "__vdso_clock_gettime64" +#define VDSO_CGT_VER "LINUX_2.6" + +#define SO_SNDTIMEO_OLD 0x1005 +#define SO_RCVTIMEO_OLD 0x1006 diff --git a/lib/libc/musl/arch/powerpc/bits/alltypes.h.in b/lib/libc/musl/arch/powerpc/bits/alltypes.h.in deleted file mode 100644 index b48df6a6254d..000000000000 --- a/lib/libc/musl/arch/powerpc/bits/alltypes.h.in +++ /dev/null @@ -1,20 +0,0 @@ -#define _REDIR_TIME64 1 -#define _Addr int -#define _Int64 long long -#define _Reg int - -#define __BYTE_ORDER 4321 -#define __LONG_MAX 0x7fffffffL - -#ifndef __cplusplus -#ifdef __WCHAR_TYPE__ -TYPEDEF __WCHAR_TYPE__ wchar_t; -#else -TYPEDEF long wchar_t; -#endif -#endif - -TYPEDEF float float_t; -TYPEDEF double double_t; - -TYPEDEF struct { long long __ll; long double __ld; } max_align_t; diff --git a/lib/libc/musl/arch/powerpc/bits/syscall.h.in b/lib/libc/musl/arch/powerpc/bits/syscall.h.in deleted file mode 100644 index ea95f3ed1efe..000000000000 --- a/lib/libc/musl/arch/powerpc/bits/syscall.h.in +++ /dev/null @@ -1,433 +0,0 @@ -#define __NR_restart_syscall 0 -#define __NR_exit 1 -#define __NR_fork 2 -#define __NR_read 3 -#define __NR_write 4 -#define __NR_open 5 -#define __NR_close 6 -#define __NR_waitpid 7 -#define __NR_creat 8 -#define __NR_link 9 -#define __NR_unlink 10 -#define __NR_execve 11 -#define __NR_chdir 12 -#define __NR_time 13 -#define __NR_mknod 14 -#define __NR_chmod 15 -#define __NR_lchown 16 -#define __NR_break 17 -#define __NR_oldstat 18 -#define __NR_lseek 19 -#define __NR_getpid 20 -#define __NR_mount 21 -#define __NR_umount 22 -#define __NR_setuid 23 -#define __NR_getuid 24 -#define __NR_stime 25 -#define __NR_ptrace 26 -#define __NR_alarm 27 -#define __NR_oldfstat 28 -#define __NR_pause 29 -#define __NR_utime 30 -#define __NR_stty 31 -#define __NR_gtty 32 -#define __NR_access 33 -#define __NR_nice 34 -#define __NR_ftime 35 -#define __NR_sync 36 -#define __NR_kill 37 -#define __NR_rename 38 -#define __NR_mkdir 39 -#define __NR_rmdir 40 -#define __NR_dup 41 -#define __NR_pipe 42 -#define __NR_times 43 -#define __NR_prof 44 -#define __NR_brk 45 -#define __NR_setgid 46 -#define __NR_getgid 47 -#define __NR_signal 48 -#define __NR_geteuid 49 -#define __NR_getegid 50 -#define __NR_acct 51 -#define __NR_umount2 52 -#define __NR_lock 53 -#define __NR_ioctl 54 -#define __NR_fcntl 55 -#define __NR_mpx 56 -#define __NR_setpgid 57 -#define __NR_ulimit 58 -#define __NR_oldolduname 59 -#define __NR_umask 60 -#define __NR_chroot 61 -#define __NR_ustat 62 -#define __NR_dup2 63 -#define __NR_getppid 64 -#define __NR_getpgrp 65 -#define __NR_setsid 66 -#define __NR_sigaction 67 -#define __NR_sgetmask 68 -#define __NR_ssetmask 69 -#define __NR_setreuid 70 -#define __NR_setregid 71 -#define __NR_sigsuspend 72 -#define __NR_sigpending 73 -#define __NR_sethostname 74 -#define __NR_setrlimit 75 -#define __NR_getrlimit 76 -#define __NR_getrusage 77 -#define __NR_gettimeofday_time32 78 -#define __NR_settimeofday_time32 79 -#define __NR_getgroups 80 -#define __NR_setgroups 81 -#define __NR_select 82 -#define __NR_symlink 83 -#define __NR_oldlstat 84 -#define __NR_readlink 85 -#define __NR_uselib 86 -#define __NR_swapon 87 -#define __NR_reboot 88 -#define __NR_readdir 89 -#define __NR_mmap 90 -#define __NR_munmap 91 -#define __NR_truncate 92 -#define __NR_ftruncate 93 -#define __NR_fchmod 94 -#define __NR_fchown 95 -#define __NR_getpriority 96 -#define __NR_setpriority 97 -#define __NR_profil 98 -#define __NR_statfs 99 -#define __NR_fstatfs 100 -#define __NR_ioperm 101 -#define __NR_socketcall 102 -#define __NR_syslog 103 -#define __NR_setitimer 104 -#define __NR_getitimer 105 -#define __NR_stat 106 -#define __NR_lstat 107 -#define __NR_fstat 108 -#define __NR_olduname 109 -#define __NR_iopl 110 -#define __NR_vhangup 111 -#define __NR_idle 112 -#define __NR_vm86 113 -#define __NR_wait4 114 -#define __NR_swapoff 115 -#define __NR_sysinfo 116 -#define __NR_ipc 117 -#define __NR_fsync 118 -#define __NR_sigreturn 119 -#define __NR_clone 120 -#define __NR_setdomainname 121 -#define __NR_uname 122 -#define __NR_modify_ldt 123 -#define __NR_adjtimex 124 -#define __NR_mprotect 125 -#define __NR_sigprocmask 126 -#define __NR_create_module 127 -#define __NR_init_module 128 -#define __NR_delete_module 129 -#define __NR_get_kernel_syms 130 -#define __NR_quotactl 131 -#define __NR_getpgid 132 -#define __NR_fchdir 133 -#define __NR_bdflush 134 -#define __NR_sysfs 135 -#define __NR_personality 136 -#define __NR_afs_syscall 137 -#define __NR_setfsuid 138 -#define __NR_setfsgid 139 -#define __NR__llseek 140 -#define __NR_getdents 141 -#define __NR__newselect 142 -#define __NR_flock 143 -#define __NR_msync 144 -#define __NR_readv 145 -#define __NR_writev 146 -#define __NR_getsid 147 -#define __NR_fdatasync 148 -#define __NR__sysctl 149 -#define __NR_mlock 150 -#define __NR_munlock 151 -#define __NR_mlockall 152 -#define __NR_munlockall 153 -#define __NR_sched_setparam 154 -#define __NR_sched_getparam 155 -#define __NR_sched_setscheduler 156 -#define __NR_sched_getscheduler 157 -#define __NR_sched_yield 158 -#define __NR_sched_get_priority_max 159 -#define __NR_sched_get_priority_min 160 -#define __NR_sched_rr_get_interval 161 -#define __NR_nanosleep 162 -#define __NR_mremap 163 -#define __NR_setresuid 164 -#define __NR_getresuid 165 -#define __NR_query_module 166 -#define __NR_poll 167 -#define __NR_nfsservctl 168 -#define __NR_setresgid 169 -#define __NR_getresgid 170 -#define __NR_prctl 171 -#define __NR_rt_sigreturn 172 -#define __NR_rt_sigaction 173 -#define __NR_rt_sigprocmask 174 -#define __NR_rt_sigpending 175 -#define __NR_rt_sigtimedwait 176 -#define __NR_rt_sigqueueinfo 177 -#define __NR_rt_sigsuspend 178 -#define __NR_pread64 179 -#define __NR_pwrite64 180 -#define __NR_chown 181 -#define __NR_getcwd 182 -#define __NR_capget 183 -#define __NR_capset 184 -#define __NR_sigaltstack 185 -#define __NR_sendfile 186 -#define __NR_getpmsg 187 -#define __NR_putpmsg 188 -#define __NR_vfork 189 -#define __NR_ugetrlimit 190 -#define __NR_readahead 191 -#define __NR_mmap2 192 -#define __NR_truncate64 193 -#define __NR_ftruncate64 194 -#define __NR_stat64 195 -#define __NR_lstat64 196 -#define __NR_fstat64 197 -#define __NR_pciconfig_read 198 -#define __NR_pciconfig_write 199 -#define __NR_pciconfig_iobase 200 -#define __NR_multiplexer 201 -#define __NR_getdents64 202 -#define __NR_pivot_root 203 -#define __NR_fcntl64 204 -#define __NR_madvise 205 -#define __NR_mincore 206 -#define __NR_gettid 207 -#define __NR_tkill 208 -#define __NR_setxattr 209 -#define __NR_lsetxattr 210 -#define __NR_fsetxattr 211 -#define __NR_getxattr 212 -#define __NR_lgetxattr 213 -#define __NR_fgetxattr 214 -#define __NR_listxattr 215 -#define __NR_llistxattr 216 -#define __NR_flistxattr 217 -#define __NR_removexattr 218 -#define __NR_lremovexattr 219 -#define __NR_fremovexattr 220 -#define __NR_futex 221 -#define __NR_sched_setaffinity 222 -#define __NR_sched_getaffinity 223 -#define __NR_tuxcall 225 -#define __NR_sendfile64 226 -#define __NR_io_setup 227 -#define __NR_io_destroy 228 -#define __NR_io_getevents 229 -#define __NR_io_submit 230 -#define __NR_io_cancel 231 -#define __NR_set_tid_address 232 -#define __NR_fadvise64 233 -#define __NR_exit_group 234 -#define __NR_lookup_dcookie 235 -#define __NR_epoll_create 236 -#define __NR_epoll_ctl 237 -#define __NR_epoll_wait 238 -#define __NR_remap_file_pages 239 -#define __NR_timer_create 240 -#define __NR_timer_settime32 241 -#define __NR_timer_gettime32 242 -#define __NR_timer_getoverrun 243 -#define __NR_timer_delete 244 -#define __NR_clock_settime32 245 -#define __NR_clock_gettime32 246 -#define __NR_clock_getres_time32 247 -#define __NR_clock_nanosleep_time32 248 -#define __NR_swapcontext 249 -#define __NR_tgkill 250 -#define __NR_utimes 251 -#define __NR_statfs64 252 -#define __NR_fstatfs64 253 -#define __NR_fadvise64_64 254 -#define __NR_rtas 255 -#define __NR_sys_debug_setcontext 256 -#define __NR_migrate_pages 258 -#define __NR_mbind 259 -#define __NR_get_mempolicy 260 -#define __NR_set_mempolicy 261 -#define __NR_mq_open 262 -#define __NR_mq_unlink 263 -#define __NR_mq_timedsend 264 -#define __NR_mq_timedreceive 265 -#define __NR_mq_notify 266 -#define __NR_mq_getsetattr 267 -#define __NR_kexec_load 268 -#define __NR_add_key 269 -#define __NR_request_key 270 -#define __NR_keyctl 271 -#define __NR_waitid 272 -#define __NR_ioprio_set 273 -#define __NR_ioprio_get 274 -#define __NR_inotify_init 275 -#define __NR_inotify_add_watch 276 -#define __NR_inotify_rm_watch 277 -#define __NR_spu_run 278 -#define __NR_spu_create 279 -#define __NR_pselect6 280 -#define __NR_ppoll 281 -#define __NR_unshare 282 -#define __NR_splice 283 -#define __NR_tee 284 -#define __NR_vmsplice 285 -#define __NR_openat 286 -#define __NR_mkdirat 287 -#define __NR_mknodat 288 -#define __NR_fchownat 289 -#define __NR_futimesat 290 -#define __NR_fstatat64 291 -#define __NR_unlinkat 292 -#define __NR_renameat 293 -#define __NR_linkat 294 -#define __NR_symlinkat 295 -#define __NR_readlinkat 296 -#define __NR_fchmodat 297 -#define __NR_faccessat 298 -#define __NR_get_robust_list 299 -#define __NR_set_robust_list 300 -#define __NR_move_pages 301 -#define __NR_getcpu 302 -#define __NR_epoll_pwait 303 -#define __NR_utimensat 304 -#define __NR_signalfd 305 -#define __NR_timerfd_create 306 -#define __NR_eventfd 307 -#define __NR_sync_file_range2 308 -#define __NR_fallocate 309 -#define __NR_subpage_prot 310 -#define __NR_timerfd_settime32 311 -#define __NR_timerfd_gettime32 312 -#define __NR_signalfd4 313 -#define __NR_eventfd2 314 -#define __NR_epoll_create1 315 -#define __NR_dup3 316 -#define __NR_pipe2 317 -#define __NR_inotify_init1 318 -#define __NR_perf_event_open 319 -#define __NR_preadv 320 -#define __NR_pwritev 321 -#define __NR_rt_tgsigqueueinfo 322 -#define __NR_fanotify_init 323 -#define __NR_fanotify_mark 324 -#define __NR_prlimit64 325 -#define __NR_socket 326 -#define __NR_bind 327 -#define __NR_connect 328 -#define __NR_listen 329 -#define __NR_accept 330 -#define __NR_getsockname 331 -#define __NR_getpeername 332 -#define __NR_socketpair 333 -#define __NR_send 334 -#define __NR_sendto 335 -#define __NR_recv 336 -#define __NR_recvfrom 337 -#define __NR_shutdown 338 -#define __NR_setsockopt 339 -#define __NR_getsockopt 340 -#define __NR_sendmsg 341 -#define __NR_recvmsg 342 -#define __NR_recvmmsg 343 -#define __NR_accept4 344 -#define __NR_name_to_handle_at 345 -#define __NR_open_by_handle_at 346 -#define __NR_clock_adjtime 347 -#define __NR_syncfs 348 -#define __NR_sendmmsg 349 -#define __NR_setns 350 -#define __NR_process_vm_readv 351 -#define __NR_process_vm_writev 352 -#define __NR_finit_module 353 -#define __NR_kcmp 354 -#define __NR_sched_setattr 355 -#define __NR_sched_getattr 356 -#define __NR_renameat2 357 -#define __NR_seccomp 358 -#define __NR_getrandom 359 -#define __NR_memfd_create 360 -#define __NR_bpf 361 -#define __NR_execveat 362 -#define __NR_switch_endian 363 -#define __NR_userfaultfd 364 -#define __NR_membarrier 365 -#define __NR_mlock2 378 -#define __NR_copy_file_range 379 -#define __NR_preadv2 380 -#define __NR_pwritev2 381 -#define __NR_kexec_file_load 382 -#define __NR_statx 383 -#define __NR_pkey_alloc 384 -#define __NR_pkey_free 385 -#define __NR_pkey_mprotect 386 -#define __NR_rseq 387 -#define __NR_io_pgetevents 388 -#define __NR_semget 393 -#define __NR_semctl 394 -#define __NR_shmget 395 -#define __NR_shmctl 396 -#define __NR_shmat 397 -#define __NR_shmdt 398 -#define __NR_msgget 399 -#define __NR_msgsnd 400 -#define __NR_msgrcv 401 -#define __NR_msgctl 402 -#define __NR_clock_gettime64 403 -#define __NR_clock_settime64 404 -#define __NR_clock_adjtime64 405 -#define __NR_clock_getres_time64 406 -#define __NR_clock_nanosleep_time64 407 -#define __NR_timer_gettime64 408 -#define __NR_timer_settime64 409 -#define __NR_timerfd_gettime64 410 -#define __NR_timerfd_settime64 411 -#define __NR_utimensat_time64 412 -#define __NR_pselect6_time64 413 -#define __NR_ppoll_time64 414 -#define __NR_io_pgetevents_time64 416 -#define __NR_recvmmsg_time64 417 -#define __NR_mq_timedsend_time64 418 -#define __NR_mq_timedreceive_time64 419 -#define __NR_semtimedop_time64 420 -#define __NR_rt_sigtimedwait_time64 421 -#define __NR_futex_time64 422 -#define __NR_sched_rr_get_interval_time64 423 -#define __NR_pidfd_send_signal 424 -#define __NR_io_uring_setup 425 -#define __NR_io_uring_enter 426 -#define __NR_io_uring_register 427 -#define __NR_open_tree 428 -#define __NR_move_mount 429 -#define __NR_fsopen 430 -#define __NR_fsconfig 431 -#define __NR_fsmount 432 -#define __NR_fspick 433 -#define __NR_pidfd_open 434 -#define __NR_clone3 435 -#define __NR_close_range 436 -#define __NR_openat2 437 -#define __NR_pidfd_getfd 438 -#define __NR_faccessat2 439 -#define __NR_process_madvise 440 -#define __NR_epoll_pwait2 441 -#define __NR_mount_setattr 442 -#define __NR_landlock_create_ruleset 444 -#define __NR_landlock_add_rule 445 -#define __NR_landlock_restrict_self 446 -#define __NR_process_mrelease 448 -#define __NR_futex_waitv 449 -#define __NR_set_mempolicy_home_node 450 -#define __NR_cachestat 451 -#define __NR_fchmodat2 452 - diff --git a/lib/libc/musl/arch/powerpc64/bits/alltypes.h.in b/lib/libc/musl/arch/powerpc64/bits/alltypes.h.in deleted file mode 100644 index 143ffa8d25b9..000000000000 --- a/lib/libc/musl/arch/powerpc64/bits/alltypes.h.in +++ /dev/null @@ -1,20 +0,0 @@ -#define _Addr long -#define _Int64 long -#define _Reg long - -#if __BIG_ENDIAN__ -#define __BYTE_ORDER 4321 -#else -#define __BYTE_ORDER 1234 -#endif - -#define __LONG_MAX 0x7fffffffffffffffL - -#ifndef __cplusplus -TYPEDEF int wchar_t; -#endif - -TYPEDEF float float_t; -TYPEDEF double double_t; - -TYPEDEF struct { long long __ll; long double __ld; } max_align_t; diff --git a/lib/libc/musl/arch/powerpc64/bits/syscall.h.in b/lib/libc/musl/arch/powerpc64/bits/syscall.h.in deleted file mode 100644 index 435510796a71..000000000000 --- a/lib/libc/musl/arch/powerpc64/bits/syscall.h.in +++ /dev/null @@ -1,405 +0,0 @@ -#define __NR_restart_syscall 0 -#define __NR_exit 1 -#define __NR_fork 2 -#define __NR_read 3 -#define __NR_write 4 -#define __NR_open 5 -#define __NR_close 6 -#define __NR_waitpid 7 -#define __NR_creat 8 -#define __NR_link 9 -#define __NR_unlink 10 -#define __NR_execve 11 -#define __NR_chdir 12 -#define __NR_time 13 -#define __NR_mknod 14 -#define __NR_chmod 15 -#define __NR_lchown 16 -#define __NR_break 17 -#define __NR_oldstat 18 -#define __NR_lseek 19 -#define __NR_getpid 20 -#define __NR_mount 21 -#define __NR_umount 22 -#define __NR_setuid 23 -#define __NR_getuid 24 -#define __NR_stime 25 -#define __NR_ptrace 26 -#define __NR_alarm 27 -#define __NR_oldfstat 28 -#define __NR_pause 29 -#define __NR_utime 30 -#define __NR_stty 31 -#define __NR_gtty 32 -#define __NR_access 33 -#define __NR_nice 34 -#define __NR_ftime 35 -#define __NR_sync 36 -#define __NR_kill 37 -#define __NR_rename 38 -#define __NR_mkdir 39 -#define __NR_rmdir 40 -#define __NR_dup 41 -#define __NR_pipe 42 -#define __NR_times 43 -#define __NR_prof 44 -#define __NR_brk 45 -#define __NR_setgid 46 -#define __NR_getgid 47 -#define __NR_signal 48 -#define __NR_geteuid 49 -#define __NR_getegid 50 -#define __NR_acct 51 -#define __NR_umount2 52 -#define __NR_lock 53 -#define __NR_ioctl 54 -#define __NR_fcntl 55 -#define __NR_mpx 56 -#define __NR_setpgid 57 -#define __NR_ulimit 58 -#define __NR_oldolduname 59 -#define __NR_umask 60 -#define __NR_chroot 61 -#define __NR_ustat 62 -#define __NR_dup2 63 -#define __NR_getppid 64 -#define __NR_getpgrp 65 -#define __NR_setsid 66 -#define __NR_sigaction 67 -#define __NR_sgetmask 68 -#define __NR_ssetmask 69 -#define __NR_setreuid 70 -#define __NR_setregid 71 -#define __NR_sigsuspend 72 -#define __NR_sigpending 73 -#define __NR_sethostname 74 -#define __NR_setrlimit 75 -#define __NR_getrlimit 76 -#define __NR_getrusage 77 -#define __NR_gettimeofday 78 -#define __NR_settimeofday 79 -#define __NR_getgroups 80 -#define __NR_setgroups 81 -#define __NR_select 82 -#define __NR_symlink 83 -#define __NR_oldlstat 84 -#define __NR_readlink 85 -#define __NR_uselib 86 -#define __NR_swapon 87 -#define __NR_reboot 88 -#define __NR_readdir 89 -#define __NR_mmap 90 -#define __NR_munmap 91 -#define __NR_truncate 92 -#define __NR_ftruncate 93 -#define __NR_fchmod 94 -#define __NR_fchown 95 -#define __NR_getpriority 96 -#define __NR_setpriority 97 -#define __NR_profil 98 -#define __NR_statfs 99 -#define __NR_fstatfs 100 -#define __NR_ioperm 101 -#define __NR_socketcall 102 -#define __NR_syslog 103 -#define __NR_setitimer 104 -#define __NR_getitimer 105 -#define __NR_stat 106 -#define __NR_lstat 107 -#define __NR_fstat 108 -#define __NR_olduname 109 -#define __NR_iopl 110 -#define __NR_vhangup 111 -#define __NR_idle 112 -#define __NR_vm86 113 -#define __NR_wait4 114 -#define __NR_swapoff 115 -#define __NR_sysinfo 116 -#define __NR_ipc 117 -#define __NR_fsync 118 -#define __NR_sigreturn 119 -#define __NR_clone 120 -#define __NR_setdomainname 121 -#define __NR_uname 122 -#define __NR_modify_ldt 123 -#define __NR_adjtimex 124 -#define __NR_mprotect 125 -#define __NR_sigprocmask 126 -#define __NR_create_module 127 -#define __NR_init_module 128 -#define __NR_delete_module 129 -#define __NR_get_kernel_syms 130 -#define __NR_quotactl 131 -#define __NR_getpgid 132 -#define __NR_fchdir 133 -#define __NR_bdflush 134 -#define __NR_sysfs 135 -#define __NR_personality 136 -#define __NR_afs_syscall 137 -#define __NR_setfsuid 138 -#define __NR_setfsgid 139 -#define __NR__llseek 140 -#define __NR_getdents 141 -#define __NR__newselect 142 -#define __NR_flock 143 -#define __NR_msync 144 -#define __NR_readv 145 -#define __NR_writev 146 -#define __NR_getsid 147 -#define __NR_fdatasync 148 -#define __NR__sysctl 149 -#define __NR_mlock 150 -#define __NR_munlock 151 -#define __NR_mlockall 152 -#define __NR_munlockall 153 -#define __NR_sched_setparam 154 -#define __NR_sched_getparam 155 -#define __NR_sched_setscheduler 156 -#define __NR_sched_getscheduler 157 -#define __NR_sched_yield 158 -#define __NR_sched_get_priority_max 159 -#define __NR_sched_get_priority_min 160 -#define __NR_sched_rr_get_interval 161 -#define __NR_nanosleep 162 -#define __NR_mremap 163 -#define __NR_setresuid 164 -#define __NR_getresuid 165 -#define __NR_query_module 166 -#define __NR_poll 167 -#define __NR_nfsservctl 168 -#define __NR_setresgid 169 -#define __NR_getresgid 170 -#define __NR_prctl 171 -#define __NR_rt_sigreturn 172 -#define __NR_rt_sigaction 173 -#define __NR_rt_sigprocmask 174 -#define __NR_rt_sigpending 175 -#define __NR_rt_sigtimedwait 176 -#define __NR_rt_sigqueueinfo 177 -#define __NR_rt_sigsuspend 178 -#define __NR_pread64 179 -#define __NR_pwrite64 180 -#define __NR_chown 181 -#define __NR_getcwd 182 -#define __NR_capget 183 -#define __NR_capset 184 -#define __NR_sigaltstack 185 -#define __NR_sendfile 186 -#define __NR_getpmsg 187 -#define __NR_putpmsg 188 -#define __NR_vfork 189 -#define __NR_ugetrlimit 190 -#define __NR_readahead 191 -#define __NR_pciconfig_read 198 -#define __NR_pciconfig_write 199 -#define __NR_pciconfig_iobase 200 -#define __NR_multiplexer 201 -#define __NR_getdents64 202 -#define __NR_pivot_root 203 -#define __NR_madvise 205 -#define __NR_mincore 206 -#define __NR_gettid 207 -#define __NR_tkill 208 -#define __NR_setxattr 209 -#define __NR_lsetxattr 210 -#define __NR_fsetxattr 211 -#define __NR_getxattr 212 -#define __NR_lgetxattr 213 -#define __NR_fgetxattr 214 -#define __NR_listxattr 215 -#define __NR_llistxattr 216 -#define __NR_flistxattr 217 -#define __NR_removexattr 218 -#define __NR_lremovexattr 219 -#define __NR_fremovexattr 220 -#define __NR_futex 221 -#define __NR_sched_setaffinity 222 -#define __NR_sched_getaffinity 223 -#define __NR_tuxcall 225 -#define __NR_io_setup 227 -#define __NR_io_destroy 228 -#define __NR_io_getevents 229 -#define __NR_io_submit 230 -#define __NR_io_cancel 231 -#define __NR_set_tid_address 232 -#define __NR_fadvise64 233 -#define __NR_exit_group 234 -#define __NR_lookup_dcookie 235 -#define __NR_epoll_create 236 -#define __NR_epoll_ctl 237 -#define __NR_epoll_wait 238 -#define __NR_remap_file_pages 239 -#define __NR_timer_create 240 -#define __NR_timer_settime 241 -#define __NR_timer_gettime 242 -#define __NR_timer_getoverrun 243 -#define __NR_timer_delete 244 -#define __NR_clock_settime 245 -#define __NR_clock_gettime 246 -#define __NR_clock_getres 247 -#define __NR_clock_nanosleep 248 -#define __NR_swapcontext 249 -#define __NR_tgkill 250 -#define __NR_utimes 251 -#define __NR_statfs64 252 -#define __NR_fstatfs64 253 -#define __NR_rtas 255 -#define __NR_sys_debug_setcontext 256 -#define __NR_migrate_pages 258 -#define __NR_mbind 259 -#define __NR_get_mempolicy 260 -#define __NR_set_mempolicy 261 -#define __NR_mq_open 262 -#define __NR_mq_unlink 263 -#define __NR_mq_timedsend 264 -#define __NR_mq_timedreceive 265 -#define __NR_mq_notify 266 -#define __NR_mq_getsetattr 267 -#define __NR_kexec_load 268 -#define __NR_add_key 269 -#define __NR_request_key 270 -#define __NR_keyctl 271 -#define __NR_waitid 272 -#define __NR_ioprio_set 273 -#define __NR_ioprio_get 274 -#define __NR_inotify_init 275 -#define __NR_inotify_add_watch 276 -#define __NR_inotify_rm_watch 277 -#define __NR_spu_run 278 -#define __NR_spu_create 279 -#define __NR_pselect6 280 -#define __NR_ppoll 281 -#define __NR_unshare 282 -#define __NR_splice 283 -#define __NR_tee 284 -#define __NR_vmsplice 285 -#define __NR_openat 286 -#define __NR_mkdirat 287 -#define __NR_mknodat 288 -#define __NR_fchownat 289 -#define __NR_futimesat 290 -#define __NR_newfstatat 291 -#define __NR_unlinkat 292 -#define __NR_renameat 293 -#define __NR_linkat 294 -#define __NR_symlinkat 295 -#define __NR_readlinkat 296 -#define __NR_fchmodat 297 -#define __NR_faccessat 298 -#define __NR_get_robust_list 299 -#define __NR_set_robust_list 300 -#define __NR_move_pages 301 -#define __NR_getcpu 302 -#define __NR_epoll_pwait 303 -#define __NR_utimensat 304 -#define __NR_signalfd 305 -#define __NR_timerfd_create 306 -#define __NR_eventfd 307 -#define __NR_sync_file_range2 308 -#define __NR_fallocate 309 -#define __NR_subpage_prot 310 -#define __NR_timerfd_settime 311 -#define __NR_timerfd_gettime 312 -#define __NR_signalfd4 313 -#define __NR_eventfd2 314 -#define __NR_epoll_create1 315 -#define __NR_dup3 316 -#define __NR_pipe2 317 -#define __NR_inotify_init1 318 -#define __NR_perf_event_open 319 -#define __NR_preadv 320 -#define __NR_pwritev 321 -#define __NR_rt_tgsigqueueinfo 322 -#define __NR_fanotify_init 323 -#define __NR_fanotify_mark 324 -#define __NR_prlimit64 325 -#define __NR_socket 326 -#define __NR_bind 327 -#define __NR_connect 328 -#define __NR_listen 329 -#define __NR_accept 330 -#define __NR_getsockname 331 -#define __NR_getpeername 332 -#define __NR_socketpair 333 -#define __NR_send 334 -#define __NR_sendto 335 -#define __NR_recv 336 -#define __NR_recvfrom 337 -#define __NR_shutdown 338 -#define __NR_setsockopt 339 -#define __NR_getsockopt 340 -#define __NR_sendmsg 341 -#define __NR_recvmsg 342 -#define __NR_recvmmsg 343 -#define __NR_accept4 344 -#define __NR_name_to_handle_at 345 -#define __NR_open_by_handle_at 346 -#define __NR_clock_adjtime 347 -#define __NR_syncfs 348 -#define __NR_sendmmsg 349 -#define __NR_setns 350 -#define __NR_process_vm_readv 351 -#define __NR_process_vm_writev 352 -#define __NR_finit_module 353 -#define __NR_kcmp 354 -#define __NR_sched_setattr 355 -#define __NR_sched_getattr 356 -#define __NR_renameat2 357 -#define __NR_seccomp 358 -#define __NR_getrandom 359 -#define __NR_memfd_create 360 -#define __NR_bpf 361 -#define __NR_execveat 362 -#define __NR_switch_endian 363 -#define __NR_userfaultfd 364 -#define __NR_membarrier 365 -#define __NR_mlock2 378 -#define __NR_copy_file_range 379 -#define __NR_preadv2 380 -#define __NR_pwritev2 381 -#define __NR_kexec_file_load 382 -#define __NR_statx 383 -#define __NR_pkey_alloc 384 -#define __NR_pkey_free 385 -#define __NR_pkey_mprotect 386 -#define __NR_rseq 387 -#define __NR_io_pgetevents 388 -#define __NR_semtimedop 392 -#define __NR_semget 393 -#define __NR_semctl 394 -#define __NR_shmget 395 -#define __NR_shmctl 396 -#define __NR_shmat 397 -#define __NR_shmdt 398 -#define __NR_msgget 399 -#define __NR_msgsnd 400 -#define __NR_msgrcv 401 -#define __NR_msgctl 402 -#define __NR_pidfd_send_signal 424 -#define __NR_io_uring_setup 425 -#define __NR_io_uring_enter 426 -#define __NR_io_uring_register 427 -#define __NR_open_tree 428 -#define __NR_move_mount 429 -#define __NR_fsopen 430 -#define __NR_fsconfig 431 -#define __NR_fsmount 432 -#define __NR_fspick 433 -#define __NR_pidfd_open 434 -#define __NR_clone3 435 -#define __NR_close_range 436 -#define __NR_openat2 437 -#define __NR_pidfd_getfd 438 -#define __NR_faccessat2 439 -#define __NR_process_madvise 440 -#define __NR_epoll_pwait2 441 -#define __NR_mount_setattr 442 -#define __NR_landlock_create_ruleset 444 -#define __NR_landlock_add_rule 445 -#define __NR_landlock_restrict_self 446 -#define __NR_process_mrelease 448 -#define __NR_futex_waitv 449 -#define __NR_set_mempolicy_home_node 450 -#define __NR_cachestat 451 -#define __NR_fchmodat2 452 - diff --git a/lib/libc/musl/arch/riscv32/bits/alltypes.h.in b/lib/libc/musl/arch/riscv32/bits/alltypes.h.in deleted file mode 100644 index e2b6129e464e..000000000000 --- a/lib/libc/musl/arch/riscv32/bits/alltypes.h.in +++ /dev/null @@ -1,18 +0,0 @@ -#define _Addr int -#define _Int64 long long -#define _Reg int - -#define __BYTE_ORDER 1234 -#define __LONG_MAX 0x7fffffffL - -#ifndef __cplusplus -TYPEDEF int wchar_t; -#endif - -TYPEDEF int blksize_t; -TYPEDEF unsigned int nlink_t; - -TYPEDEF float float_t; -TYPEDEF double double_t; - -TYPEDEF struct { long long __ll; long double __ld; } max_align_t; diff --git a/lib/libc/musl/arch/riscv32/bits/syscall.h.in b/lib/libc/musl/arch/riscv32/bits/syscall.h.in deleted file mode 100644 index 9228d84089e3..000000000000 --- a/lib/libc/musl/arch/riscv32/bits/syscall.h.in +++ /dev/null @@ -1,300 +0,0 @@ -#define __NR_io_setup 0 -#define __NR_io_destroy 1 -#define __NR_io_submit 2 -#define __NR_io_cancel 3 -#define __NR_setxattr 5 -#define __NR_lsetxattr 6 -#define __NR_fsetxattr 7 -#define __NR_getxattr 8 -#define __NR_lgetxattr 9 -#define __NR_fgetxattr 10 -#define __NR_listxattr 11 -#define __NR_llistxattr 12 -#define __NR_flistxattr 13 -#define __NR_removexattr 14 -#define __NR_lremovexattr 15 -#define __NR_fremovexattr 16 -#define __NR_getcwd 17 -#define __NR_lookup_dcookie 18 -#define __NR_eventfd2 19 -#define __NR_epoll_create1 20 -#define __NR_epoll_ctl 21 -#define __NR_epoll_pwait 22 -#define __NR_dup 23 -#define __NR_dup3 24 -#define __NR_fcntl64 25 -#define __NR_inotify_init1 26 -#define __NR_inotify_add_watch 27 -#define __NR_inotify_rm_watch 28 -#define __NR_ioctl 29 -#define __NR_ioprio_set 30 -#define __NR_ioprio_get 31 -#define __NR_flock 32 -#define __NR_mknodat 33 -#define __NR_mkdirat 34 -#define __NR_unlinkat 35 -#define __NR_symlinkat 36 -#define __NR_linkat 37 -#define __NR_umount2 39 -#define __NR_mount 40 -#define __NR_pivot_root 41 -#define __NR_nfsservctl 42 -#define __NR_statfs64 43 -#define __NR_fstatfs64 44 -#define __NR_truncate64 45 -#define __NR_ftruncate64 46 -#define __NR_fallocate 47 -#define __NR_faccessat 48 -#define __NR_chdir 49 -#define __NR_fchdir 50 -#define __NR_chroot 51 -#define __NR_fchmod 52 -#define __NR_fchmodat 53 -#define __NR_fchownat 54 -#define __NR_fchown 55 -#define __NR_openat 56 -#define __NR_close 57 -#define __NR_vhangup 58 -#define __NR_pipe2 59 -#define __NR_quotactl 60 -#define __NR_getdents64 61 -#define __NR__llseek 62 -#define __NR_read 63 -#define __NR_write 64 -#define __NR_readv 65 -#define __NR_writev 66 -#define __NR_pread64 67 -#define __NR_pwrite64 68 -#define __NR_preadv 69 -#define __NR_pwritev 70 -#define __NR_sendfile64 71 -#define __NR_signalfd4 74 -#define __NR_vmsplice 75 -#define __NR_splice 76 -#define __NR_tee 77 -#define __NR_readlinkat 78 -#define __NR_sync 81 -#define __NR_fsync 82 -#define __NR_fdatasync 83 -#define __NR_sync_file_range 84 -#define __NR_timerfd_create 85 -#define __NR_acct 89 -#define __NR_capget 90 -#define __NR_capset 91 -#define __NR_personality 92 -#define __NR_exit 93 -#define __NR_exit_group 94 -#define __NR_waitid 95 -#define __NR_set_tid_address 96 -#define __NR_unshare 97 -#define __NR_set_robust_list 99 -#define __NR_get_robust_list 100 -#define __NR_nanosleep 101 -#define __NR_getitimer 102 -#define __NR_setitimer 103 -#define __NR_kexec_load 104 -#define __NR_init_module 105 -#define __NR_delete_module 106 -#define __NR_timer_create 107 -#define __NR_timer_getoverrun 109 -#define __NR_timer_delete 111 -#define __NR_syslog 116 -#define __NR_ptrace 117 -#define __NR_sched_setparam 118 -#define __NR_sched_setscheduler 119 -#define __NR_sched_getscheduler 120 -#define __NR_sched_getparam 121 -#define __NR_sched_setaffinity 122 -#define __NR_sched_getaffinity 123 -#define __NR_sched_yield 124 -#define __NR_sched_get_priority_max 125 -#define __NR_sched_get_priority_min 126 -#define __NR_restart_syscall 128 -#define __NR_kill 129 -#define __NR_tkill 130 -#define __NR_tgkill 131 -#define __NR_sigaltstack 132 -#define __NR_rt_sigsuspend 133 -#define __NR_rt_sigaction 134 -#define __NR_rt_sigprocmask 135 -#define __NR_rt_sigpending 136 -#define __NR_rt_sigqueueinfo 138 -#define __NR_rt_sigreturn 139 -#define __NR_setpriority 140 -#define __NR_getpriority 141 -#define __NR_reboot 142 -#define __NR_setregid 143 -#define __NR_setgid 144 -#define __NR_setreuid 145 -#define __NR_setuid 146 -#define __NR_setresuid 147 -#define __NR_getresuid 148 -#define __NR_setresgid 149 -#define __NR_getresgid 150 -#define __NR_setfsuid 151 -#define __NR_setfsgid 152 -#define __NR_times 153 -#define __NR_setpgid 154 -#define __NR_getpgid 155 -#define __NR_getsid 156 -#define __NR_setsid 157 -#define __NR_getgroups 158 -#define __NR_setgroups 159 -#define __NR_uname 160 -#define __NR_sethostname 161 -#define __NR_setdomainname 162 -#define __NR_getrusage 165 -#define __NR_umask 166 -#define __NR_prctl 167 -#define __NR_getcpu 168 -#define __NR_getpid 172 -#define __NR_getppid 173 -#define __NR_getuid 174 -#define __NR_geteuid 175 -#define __NR_getgid 176 -#define __NR_getegid 177 -#define __NR_gettid 178 -#define __NR_sysinfo 179 -#define __NR_mq_open 180 -#define __NR_mq_unlink 181 -#define __NR_mq_notify 184 -#define __NR_mq_getsetattr 185 -#define __NR_msgget 186 -#define __NR_msgctl 187 -#define __NR_msgrcv 188 -#define __NR_msgsnd 189 -#define __NR_semget 190 -#define __NR_semctl 191 -#define __NR_semop 193 -#define __NR_shmget 194 -#define __NR_shmctl 195 -#define __NR_shmat 196 -#define __NR_shmdt 197 -#define __NR_socket 198 -#define __NR_socketpair 199 -#define __NR_bind 200 -#define __NR_listen 201 -#define __NR_accept 202 -#define __NR_connect 203 -#define __NR_getsockname 204 -#define __NR_getpeername 205 -#define __NR_sendto 206 -#define __NR_recvfrom 207 -#define __NR_setsockopt 208 -#define __NR_getsockopt 209 -#define __NR_shutdown 210 -#define __NR_sendmsg 211 -#define __NR_recvmsg 212 -#define __NR_readahead 213 -#define __NR_brk 214 -#define __NR_munmap 215 -#define __NR_mremap 216 -#define __NR_add_key 217 -#define __NR_request_key 218 -#define __NR_keyctl 219 -#define __NR_clone 220 -#define __NR_execve 221 -#define __NR_mmap2 222 -#define __NR_fadvise64_64 223 -#define __NR_swapon 224 -#define __NR_swapoff 225 -#define __NR_mprotect 226 -#define __NR_msync 227 -#define __NR_mlock 228 -#define __NR_munlock 229 -#define __NR_mlockall 230 -#define __NR_munlockall 231 -#define __NR_mincore 232 -#define __NR_madvise 233 -#define __NR_remap_file_pages 234 -#define __NR_mbind 235 -#define __NR_get_mempolicy 236 -#define __NR_set_mempolicy 237 -#define __NR_migrate_pages 238 -#define __NR_move_pages 239 -#define __NR_rt_tgsigqueueinfo 240 -#define __NR_perf_event_open 241 -#define __NR_accept4 242 -#define __NR_arch_specific_syscall 244 -#define __NR_prlimit64 261 -#define __NR_fanotify_init 262 -#define __NR_fanotify_mark 263 -#define __NR_name_to_handle_at 264 -#define __NR_open_by_handle_at 265 -#define __NR_syncfs 267 -#define __NR_setns 268 -#define __NR_sendmmsg 269 -#define __NR_process_vm_readv 270 -#define __NR_process_vm_writev 271 -#define __NR_kcmp 272 -#define __NR_finit_module 273 -#define __NR_sched_setattr 274 -#define __NR_sched_getattr 275 -#define __NR_renameat2 276 -#define __NR_seccomp 277 -#define __NR_getrandom 278 -#define __NR_memfd_create 279 -#define __NR_bpf 280 -#define __NR_execveat 281 -#define __NR_userfaultfd 282 -#define __NR_membarrier 283 -#define __NR_mlock2 284 -#define __NR_copy_file_range 285 -#define __NR_preadv2 286 -#define __NR_pwritev2 287 -#define __NR_pkey_mprotect 288 -#define __NR_pkey_alloc 289 -#define __NR_pkey_free 290 -#define __NR_statx 291 -#define __NR_rseq 293 -#define __NR_kexec_file_load 294 -#define __NR_clock_gettime64 403 -#define __NR_clock_settime64 404 -#define __NR_clock_adjtime64 405 -#define __NR_clock_getres_time64 406 -#define __NR_clock_nanosleep_time64 407 -#define __NR_timer_gettime64 408 -#define __NR_timer_settime64 409 -#define __NR_timerfd_gettime64 410 -#define __NR_timerfd_settime64 411 -#define __NR_utimensat_time64 412 -#define __NR_pselect6_time64 413 -#define __NR_ppoll_time64 414 -#define __NR_io_pgetevents_time64 416 -#define __NR_recvmmsg_time64 417 -#define __NR_mq_timedsend_time64 418 -#define __NR_mq_timedreceive_time64 419 -#define __NR_semtimedop_time64 420 -#define __NR_rt_sigtimedwait_time64 421 -#define __NR_futex_time64 422 -#define __NR_sched_rr_get_interval_time64 423 -#define __NR_pidfd_send_signal 424 -#define __NR_io_uring_setup 425 -#define __NR_io_uring_enter 426 -#define __NR_io_uring_register 427 -#define __NR_open_tree 428 -#define __NR_move_mount 429 -#define __NR_fsopen 430 -#define __NR_fsconfig 431 -#define __NR_fsmount 432 -#define __NR_fspick 433 -#define __NR_pidfd_open 434 -#define __NR_clone3 435 -#define __NR_openat2 437 -#define __NR_pidfd_getfd 438 -#define __NR_faccessat2 439 -#define __NR_process_madvise 440 -#define __NR_epoll_pwait2 441 -#define __NR_mount_setattr 442 -#define __NR_landlock_create_ruleset 444 -#define __NR_landlock_add_rule 445 -#define __NR_landlock_restrict_self 446 -#define __NR_process_mrelease 448 -#define __NR_futex_waitv 449 -#define __NR_set_mempolicy_home_node 450 -#define __NR_cachestat 451 -#define __NR_fchmodat2 452 -#define __NR_futex __NR_futex_time64 - -#define __NR_sysriscv __NR_arch_specific_syscall -#define __NR_riscv_flush_icache (__NR_sysriscv + 15) diff --git a/lib/libc/musl/arch/riscv64/bits/alltypes.h.in b/lib/libc/musl/arch/riscv64/bits/alltypes.h.in deleted file mode 100644 index 4579d1740b68..000000000000 --- a/lib/libc/musl/arch/riscv64/bits/alltypes.h.in +++ /dev/null @@ -1,18 +0,0 @@ -#define _Addr long -#define _Int64 long -#define _Reg long - -#define __BYTE_ORDER 1234 -#define __LONG_MAX 0x7fffffffffffffffL - -#ifndef __cplusplus -TYPEDEF int wchar_t; -#endif - -TYPEDEF int blksize_t; -TYPEDEF unsigned int nlink_t; - -TYPEDEF float float_t; -TYPEDEF double double_t; - -TYPEDEF struct { long long __ll; long double __ld; } max_align_t; diff --git a/lib/libc/musl/arch/riscv64/bits/syscall.h.in b/lib/libc/musl/arch/riscv64/bits/syscall.h.in deleted file mode 100644 index e362bd0ec536..000000000000 --- a/lib/libc/musl/arch/riscv64/bits/syscall.h.in +++ /dev/null @@ -1,309 +0,0 @@ -#define __NR_io_setup 0 -#define __NR_io_destroy 1 -#define __NR_io_submit 2 -#define __NR_io_cancel 3 -#define __NR_io_getevents 4 -#define __NR_setxattr 5 -#define __NR_lsetxattr 6 -#define __NR_fsetxattr 7 -#define __NR_getxattr 8 -#define __NR_lgetxattr 9 -#define __NR_fgetxattr 10 -#define __NR_listxattr 11 -#define __NR_llistxattr 12 -#define __NR_flistxattr 13 -#define __NR_removexattr 14 -#define __NR_lremovexattr 15 -#define __NR_fremovexattr 16 -#define __NR_getcwd 17 -#define __NR_lookup_dcookie 18 -#define __NR_eventfd2 19 -#define __NR_epoll_create1 20 -#define __NR_epoll_ctl 21 -#define __NR_epoll_pwait 22 -#define __NR_dup 23 -#define __NR_dup3 24 -#define __NR_fcntl 25 -#define __NR_inotify_init1 26 -#define __NR_inotify_add_watch 27 -#define __NR_inotify_rm_watch 28 -#define __NR_ioctl 29 -#define __NR_ioprio_set 30 -#define __NR_ioprio_get 31 -#define __NR_flock 32 -#define __NR_mknodat 33 -#define __NR_mkdirat 34 -#define __NR_unlinkat 35 -#define __NR_symlinkat 36 -#define __NR_linkat 37 -#define __NR_umount2 39 -#define __NR_mount 40 -#define __NR_pivot_root 41 -#define __NR_nfsservctl 42 -#define __NR_statfs 43 -#define __NR_fstatfs 44 -#define __NR_truncate 45 -#define __NR_ftruncate 46 -#define __NR_fallocate 47 -#define __NR_faccessat 48 -#define __NR_chdir 49 -#define __NR_fchdir 50 -#define __NR_chroot 51 -#define __NR_fchmod 52 -#define __NR_fchmodat 53 -#define __NR_fchownat 54 -#define __NR_fchown 55 -#define __NR_openat 56 -#define __NR_close 57 -#define __NR_vhangup 58 -#define __NR_pipe2 59 -#define __NR_quotactl 60 -#define __NR_getdents64 61 -#define __NR_lseek 62 -#define __NR_read 63 -#define __NR_write 64 -#define __NR_readv 65 -#define __NR_writev 66 -#define __NR_pread64 67 -#define __NR_pwrite64 68 -#define __NR_preadv 69 -#define __NR_pwritev 70 -#define __NR_sendfile 71 -#define __NR_pselect6 72 -#define __NR_ppoll 73 -#define __NR_signalfd4 74 -#define __NR_vmsplice 75 -#define __NR_splice 76 -#define __NR_tee 77 -#define __NR_readlinkat 78 -#define __NR_newfstatat 79 -#define __NR_fstat 80 -#define __NR_sync 81 -#define __NR_fsync 82 -#define __NR_fdatasync 83 -#define __NR_sync_file_range 84 -#define __NR_timerfd_create 85 -#define __NR_timerfd_settime 86 -#define __NR_timerfd_gettime 87 -#define __NR_utimensat 88 -#define __NR_acct 89 -#define __NR_capget 90 -#define __NR_capset 91 -#define __NR_personality 92 -#define __NR_exit 93 -#define __NR_exit_group 94 -#define __NR_waitid 95 -#define __NR_set_tid_address 96 -#define __NR_unshare 97 -#define __NR_futex 98 -#define __NR_set_robust_list 99 -#define __NR_get_robust_list 100 -#define __NR_nanosleep 101 -#define __NR_getitimer 102 -#define __NR_setitimer 103 -#define __NR_kexec_load 104 -#define __NR_init_module 105 -#define __NR_delete_module 106 -#define __NR_timer_create 107 -#define __NR_timer_gettime 108 -#define __NR_timer_getoverrun 109 -#define __NR_timer_settime 110 -#define __NR_timer_delete 111 -#define __NR_clock_settime 112 -#define __NR_clock_gettime 113 -#define __NR_clock_getres 114 -#define __NR_clock_nanosleep 115 -#define __NR_syslog 116 -#define __NR_ptrace 117 -#define __NR_sched_setparam 118 -#define __NR_sched_setscheduler 119 -#define __NR_sched_getscheduler 120 -#define __NR_sched_getparam 121 -#define __NR_sched_setaffinity 122 -#define __NR_sched_getaffinity 123 -#define __NR_sched_yield 124 -#define __NR_sched_get_priority_max 125 -#define __NR_sched_get_priority_min 126 -#define __NR_sched_rr_get_interval 127 -#define __NR_restart_syscall 128 -#define __NR_kill 129 -#define __NR_tkill 130 -#define __NR_tgkill 131 -#define __NR_sigaltstack 132 -#define __NR_rt_sigsuspend 133 -#define __NR_rt_sigaction 134 -#define __NR_rt_sigprocmask 135 -#define __NR_rt_sigpending 136 -#define __NR_rt_sigtimedwait 137 -#define __NR_rt_sigqueueinfo 138 -#define __NR_rt_sigreturn 139 -#define __NR_setpriority 140 -#define __NR_getpriority 141 -#define __NR_reboot 142 -#define __NR_setregid 143 -#define __NR_setgid 144 -#define __NR_setreuid 145 -#define __NR_setuid 146 -#define __NR_setresuid 147 -#define __NR_getresuid 148 -#define __NR_setresgid 149 -#define __NR_getresgid 150 -#define __NR_setfsuid 151 -#define __NR_setfsgid 152 -#define __NR_times 153 -#define __NR_setpgid 154 -#define __NR_getpgid 155 -#define __NR_getsid 156 -#define __NR_setsid 157 -#define __NR_getgroups 158 -#define __NR_setgroups 159 -#define __NR_uname 160 -#define __NR_sethostname 161 -#define __NR_setdomainname 162 -#define __NR_getrlimit 163 -#define __NR_setrlimit 164 -#define __NR_getrusage 165 -#define __NR_umask 166 -#define __NR_prctl 167 -#define __NR_getcpu 168 -#define __NR_gettimeofday 169 -#define __NR_settimeofday 170 -#define __NR_adjtimex 171 -#define __NR_getpid 172 -#define __NR_getppid 173 -#define __NR_getuid 174 -#define __NR_geteuid 175 -#define __NR_getgid 176 -#define __NR_getegid 177 -#define __NR_gettid 178 -#define __NR_sysinfo 179 -#define __NR_mq_open 180 -#define __NR_mq_unlink 181 -#define __NR_mq_timedsend 182 -#define __NR_mq_timedreceive 183 -#define __NR_mq_notify 184 -#define __NR_mq_getsetattr 185 -#define __NR_msgget 186 -#define __NR_msgctl 187 -#define __NR_msgrcv 188 -#define __NR_msgsnd 189 -#define __NR_semget 190 -#define __NR_semctl 191 -#define __NR_semtimedop 192 -#define __NR_semop 193 -#define __NR_shmget 194 -#define __NR_shmctl 195 -#define __NR_shmat 196 -#define __NR_shmdt 197 -#define __NR_socket 198 -#define __NR_socketpair 199 -#define __NR_bind 200 -#define __NR_listen 201 -#define __NR_accept 202 -#define __NR_connect 203 -#define __NR_getsockname 204 -#define __NR_getpeername 205 -#define __NR_sendto 206 -#define __NR_recvfrom 207 -#define __NR_setsockopt 208 -#define __NR_getsockopt 209 -#define __NR_shutdown 210 -#define __NR_sendmsg 211 -#define __NR_recvmsg 212 -#define __NR_readahead 213 -#define __NR_brk 214 -#define __NR_munmap 215 -#define __NR_mremap 216 -#define __NR_add_key 217 -#define __NR_request_key 218 -#define __NR_keyctl 219 -#define __NR_clone 220 -#define __NR_execve 221 -#define __NR_mmap 222 -#define __NR_fadvise64 223 -#define __NR_swapon 224 -#define __NR_swapoff 225 -#define __NR_mprotect 226 -#define __NR_msync 227 -#define __NR_mlock 228 -#define __NR_munlock 229 -#define __NR_mlockall 230 -#define __NR_munlockall 231 -#define __NR_mincore 232 -#define __NR_madvise 233 -#define __NR_remap_file_pages 234 -#define __NR_mbind 235 -#define __NR_get_mempolicy 236 -#define __NR_set_mempolicy 237 -#define __NR_migrate_pages 238 -#define __NR_move_pages 239 -#define __NR_rt_tgsigqueueinfo 240 -#define __NR_perf_event_open 241 -#define __NR_accept4 242 -#define __NR_recvmmsg 243 -#define __NR_arch_specific_syscall 244 -#define __NR_wait4 260 -#define __NR_prlimit64 261 -#define __NR_fanotify_init 262 -#define __NR_fanotify_mark 263 -#define __NR_name_to_handle_at 264 -#define __NR_open_by_handle_at 265 -#define __NR_clock_adjtime 266 -#define __NR_syncfs 267 -#define __NR_setns 268 -#define __NR_sendmmsg 269 -#define __NR_process_vm_readv 270 -#define __NR_process_vm_writev 271 -#define __NR_kcmp 272 -#define __NR_finit_module 273 -#define __NR_sched_setattr 274 -#define __NR_sched_getattr 275 -#define __NR_renameat2 276 -#define __NR_seccomp 277 -#define __NR_getrandom 278 -#define __NR_memfd_create 279 -#define __NR_bpf 280 -#define __NR_execveat 281 -#define __NR_userfaultfd 282 -#define __NR_membarrier 283 -#define __NR_mlock2 284 -#define __NR_copy_file_range 285 -#define __NR_preadv2 286 -#define __NR_pwritev2 287 -#define __NR_pkey_mprotect 288 -#define __NR_pkey_alloc 289 -#define __NR_pkey_free 290 -#define __NR_statx 291 -#define __NR_io_pgetevents 292 -#define __NR_rseq 293 -#define __NR_kexec_file_load 294 -#define __NR_pidfd_send_signal 424 -#define __NR_io_uring_setup 425 -#define __NR_io_uring_enter 426 -#define __NR_io_uring_register 427 -#define __NR_open_tree 428 -#define __NR_move_mount 429 -#define __NR_fsopen 430 -#define __NR_fsconfig 431 -#define __NR_fsmount 432 -#define __NR_fspick 433 -#define __NR_pidfd_open 434 -#define __NR_clone3 435 -#define __NR_close_range 436 -#define __NR_openat2 437 -#define __NR_pidfd_getfd 438 -#define __NR_faccessat2 439 -#define __NR_process_madvise 440 -#define __NR_epoll_pwait2 441 -#define __NR_mount_setattr 442 -#define __NR_landlock_create_ruleset 444 -#define __NR_landlock_add_rule 445 -#define __NR_landlock_restrict_self 446 -#define __NR_process_mrelease 448 -#define __NR_futex_waitv 449 -#define __NR_set_mempolicy_home_node 450 -#define __NR_cachestat 451 -#define __NR_fchmodat2 452 - -#define __NR_sysriscv __NR_arch_specific_syscall -#define __NR_riscv_flush_icache (__NR_sysriscv + 15) diff --git a/lib/libc/musl/arch/s390x/bits/alltypes.h.in b/lib/libc/musl/arch/s390x/bits/alltypes.h.in deleted file mode 100644 index 6c0eb7f4b814..000000000000 --- a/lib/libc/musl/arch/s390x/bits/alltypes.h.in +++ /dev/null @@ -1,19 +0,0 @@ -#define _Addr long -#define _Int64 long -#define _Reg long - -#define __BYTE_ORDER 4321 -#define __LONG_MAX 0x7fffffffffffffffL - -#ifndef __cplusplus -TYPEDEF int wchar_t; -#endif - -#if defined(__FLT_EVAL_METHOD__) && __FLT_EVAL_METHOD__ == 1 -TYPEDEF double float_t; -#else -TYPEDEF float float_t; -#endif -TYPEDEF double double_t; - -TYPEDEF struct { long long __ll; long double __ld; } max_align_t; diff --git a/lib/libc/musl/arch/s390x/bits/syscall.h.in b/lib/libc/musl/arch/s390x/bits/syscall.h.in deleted file mode 100644 index e60711a6e13e..000000000000 --- a/lib/libc/musl/arch/s390x/bits/syscall.h.in +++ /dev/null @@ -1,371 +0,0 @@ -#define __NR_exit 1 -#define __NR_fork 2 -#define __NR_read 3 -#define __NR_write 4 -#define __NR_open 5 -#define __NR_close 6 -#define __NR_restart_syscall 7 -#define __NR_creat 8 -#define __NR_link 9 -#define __NR_unlink 10 -#define __NR_execve 11 -#define __NR_chdir 12 -#define __NR_mknod 14 -#define __NR_chmod 15 -#define __NR_lseek 19 -#define __NR_getpid 20 -#define __NR_mount 21 -#define __NR_umount 22 -#define __NR_ptrace 26 -#define __NR_alarm 27 -#define __NR_pause 29 -#define __NR_utime 30 -#define __NR_access 33 -#define __NR_nice 34 -#define __NR_sync 36 -#define __NR_kill 37 -#define __NR_rename 38 -#define __NR_mkdir 39 -#define __NR_rmdir 40 -#define __NR_dup 41 -#define __NR_pipe 42 -#define __NR_times 43 -#define __NR_brk 45 -#define __NR_signal 48 -#define __NR_acct 51 -#define __NR_umount2 52 -#define __NR_ioctl 54 -#define __NR_fcntl 55 -#define __NR_setpgid 57 -#define __NR_umask 60 -#define __NR_chroot 61 -#define __NR_ustat 62 -#define __NR_dup2 63 -#define __NR_getppid 64 -#define __NR_getpgrp 65 -#define __NR_setsid 66 -#define __NR_sigaction 67 -#define __NR_sigsuspend 72 -#define __NR_sigpending 73 -#define __NR_sethostname 74 -#define __NR_setrlimit 75 -#define __NR_getrusage 77 -#define __NR_gettimeofday 78 -#define __NR_settimeofday 79 -#define __NR_symlink 83 -#define __NR_readlink 85 -#define __NR_uselib 86 -#define __NR_swapon 87 -#define __NR_reboot 88 -#define __NR_readdir 89 -#define __NR_mmap 90 -#define __NR_munmap 91 -#define __NR_truncate 92 -#define __NR_ftruncate 93 -#define __NR_fchmod 94 -#define __NR_getpriority 96 -#define __NR_setpriority 97 -#define __NR_statfs 99 -#define __NR_fstatfs 100 -#define __NR_socketcall 102 -#define __NR_syslog 103 -#define __NR_setitimer 104 -#define __NR_getitimer 105 -#define __NR_stat 106 -#define __NR_lstat 107 -#define __NR_fstat 108 -#define __NR_lookup_dcookie 110 -#define __NR_vhangup 111 -#define __NR_idle 112 -#define __NR_wait4 114 -#define __NR_swapoff 115 -#define __NR_sysinfo 116 -#define __NR_ipc 117 -#define __NR_fsync 118 -#define __NR_sigreturn 119 -#define __NR_clone 120 -#define __NR_setdomainname 121 -#define __NR_uname 122 -#define __NR_adjtimex 124 -#define __NR_mprotect 125 -#define __NR_sigprocmask 126 -#define __NR_create_module 127 -#define __NR_init_module 128 -#define __NR_delete_module 129 -#define __NR_get_kernel_syms 130 -#define __NR_quotactl 131 -#define __NR_getpgid 132 -#define __NR_fchdir 133 -#define __NR_bdflush 134 -#define __NR_sysfs 135 -#define __NR_personality 136 -#define __NR_afs_syscall 137 -#define __NR_getdents 141 -#define __NR_select 142 -#define __NR_flock 143 -#define __NR_msync 144 -#define __NR_readv 145 -#define __NR_writev 146 -#define __NR_getsid 147 -#define __NR_fdatasync 148 -#define __NR__sysctl 149 -#define __NR_mlock 150 -#define __NR_munlock 151 -#define __NR_mlockall 152 -#define __NR_munlockall 153 -#define __NR_sched_setparam 154 -#define __NR_sched_getparam 155 -#define __NR_sched_setscheduler 156 -#define __NR_sched_getscheduler 157 -#define __NR_sched_yield 158 -#define __NR_sched_get_priority_max 159 -#define __NR_sched_get_priority_min 160 -#define __NR_sched_rr_get_interval 161 -#define __NR_nanosleep 162 -#define __NR_mremap 163 -#define __NR_query_module 167 -#define __NR_poll 168 -#define __NR_nfsservctl 169 -#define __NR_prctl 172 -#define __NR_rt_sigreturn 173 -#define __NR_rt_sigaction 174 -#define __NR_rt_sigprocmask 175 -#define __NR_rt_sigpending 176 -#define __NR_rt_sigtimedwait 177 -#define __NR_rt_sigqueueinfo 178 -#define __NR_rt_sigsuspend 179 -#define __NR_pread64 180 -#define __NR_pwrite64 181 -#define __NR_getcwd 183 -#define __NR_capget 184 -#define __NR_capset 185 -#define __NR_sigaltstack 186 -#define __NR_sendfile 187 -#define __NR_getpmsg 188 -#define __NR_putpmsg 189 -#define __NR_vfork 190 -#define __NR_getrlimit 191 -#define __NR_lchown 198 -#define __NR_getuid 199 -#define __NR_getgid 200 -#define __NR_geteuid 201 -#define __NR_getegid 202 -#define __NR_setreuid 203 -#define __NR_setregid 204 -#define __NR_getgroups 205 -#define __NR_setgroups 206 -#define __NR_fchown 207 -#define __NR_setresuid 208 -#define __NR_getresuid 209 -#define __NR_setresgid 210 -#define __NR_getresgid 211 -#define __NR_chown 212 -#define __NR_setuid 213 -#define __NR_setgid 214 -#define __NR_setfsuid 215 -#define __NR_setfsgid 216 -#define __NR_pivot_root 217 -#define __NR_mincore 218 -#define __NR_madvise 219 -#define __NR_getdents64 220 -#define __NR_readahead 222 -#define __NR_setxattr 224 -#define __NR_lsetxattr 225 -#define __NR_fsetxattr 226 -#define __NR_getxattr 227 -#define __NR_lgetxattr 228 -#define __NR_fgetxattr 229 -#define __NR_listxattr 230 -#define __NR_llistxattr 231 -#define __NR_flistxattr 232 -#define __NR_removexattr 233 -#define __NR_lremovexattr 234 -#define __NR_fremovexattr 235 -#define __NR_gettid 236 -#define __NR_tkill 237 -#define __NR_futex 238 -#define __NR_sched_setaffinity 239 -#define __NR_sched_getaffinity 240 -#define __NR_tgkill 241 -#define __NR_io_setup 243 -#define __NR_io_destroy 244 -#define __NR_io_getevents 245 -#define __NR_io_submit 246 -#define __NR_io_cancel 247 -#define __NR_exit_group 248 -#define __NR_epoll_create 249 -#define __NR_epoll_ctl 250 -#define __NR_epoll_wait 251 -#define __NR_set_tid_address 252 -#define __NR_fadvise64 253 -#define __NR_timer_create 254 -#define __NR_timer_settime 255 -#define __NR_timer_gettime 256 -#define __NR_timer_getoverrun 257 -#define __NR_timer_delete 258 -#define __NR_clock_settime 259 -#define __NR_clock_gettime 260 -#define __NR_clock_getres 261 -#define __NR_clock_nanosleep 262 -#define __NR_statfs64 265 -#define __NR_fstatfs64 266 -#define __NR_remap_file_pages 267 -#define __NR_mbind 268 -#define __NR_get_mempolicy 269 -#define __NR_set_mempolicy 270 -#define __NR_mq_open 271 -#define __NR_mq_unlink 272 -#define __NR_mq_timedsend 273 -#define __NR_mq_timedreceive 274 -#define __NR_mq_notify 275 -#define __NR_mq_getsetattr 276 -#define __NR_kexec_load 277 -#define __NR_add_key 278 -#define __NR_request_key 279 -#define __NR_keyctl 280 -#define __NR_waitid 281 -#define __NR_ioprio_set 282 -#define __NR_ioprio_get 283 -#define __NR_inotify_init 284 -#define __NR_inotify_add_watch 285 -#define __NR_inotify_rm_watch 286 -#define __NR_migrate_pages 287 -#define __NR_openat 288 -#define __NR_mkdirat 289 -#define __NR_mknodat 290 -#define __NR_fchownat 291 -#define __NR_futimesat 292 -#define __NR_newfstatat 293 -#define __NR_unlinkat 294 -#define __NR_renameat 295 -#define __NR_linkat 296 -#define __NR_symlinkat 297 -#define __NR_readlinkat 298 -#define __NR_fchmodat 299 -#define __NR_faccessat 300 -#define __NR_pselect6 301 -#define __NR_ppoll 302 -#define __NR_unshare 303 -#define __NR_set_robust_list 304 -#define __NR_get_robust_list 305 -#define __NR_splice 306 -#define __NR_sync_file_range 307 -#define __NR_tee 308 -#define __NR_vmsplice 309 -#define __NR_move_pages 310 -#define __NR_getcpu 311 -#define __NR_epoll_pwait 312 -#define __NR_utimes 313 -#define __NR_fallocate 314 -#define __NR_utimensat 315 -#define __NR_signalfd 316 -#define __NR_timerfd 317 -#define __NR_eventfd 318 -#define __NR_timerfd_create 319 -#define __NR_timerfd_settime 320 -#define __NR_timerfd_gettime 321 -#define __NR_signalfd4 322 -#define __NR_eventfd2 323 -#define __NR_inotify_init1 324 -#define __NR_pipe2 325 -#define __NR_dup3 326 -#define __NR_epoll_create1 327 -#define __NR_preadv 328 -#define __NR_pwritev 329 -#define __NR_rt_tgsigqueueinfo 330 -#define __NR_perf_event_open 331 -#define __NR_fanotify_init 332 -#define __NR_fanotify_mark 333 -#define __NR_prlimit64 334 -#define __NR_name_to_handle_at 335 -#define __NR_open_by_handle_at 336 -#define __NR_clock_adjtime 337 -#define __NR_syncfs 338 -#define __NR_setns 339 -#define __NR_process_vm_readv 340 -#define __NR_process_vm_writev 341 -#define __NR_s390_runtime_instr 342 -#define __NR_kcmp 343 -#define __NR_finit_module 344 -#define __NR_sched_setattr 345 -#define __NR_sched_getattr 346 -#define __NR_renameat2 347 -#define __NR_seccomp 348 -#define __NR_getrandom 349 -#define __NR_memfd_create 350 -#define __NR_bpf 351 -#define __NR_s390_pci_mmio_write 352 -#define __NR_s390_pci_mmio_read 353 -#define __NR_execveat 354 -#define __NR_userfaultfd 355 -#define __NR_membarrier 356 -#define __NR_recvmmsg 357 -#define __NR_sendmmsg 358 -#define __NR_socket 359 -#define __NR_socketpair 360 -#define __NR_bind 361 -#define __NR_connect 362 -#define __NR_listen 363 -#define __NR_accept4 364 -#define __NR_getsockopt 365 -#define __NR_setsockopt 366 -#define __NR_getsockname 367 -#define __NR_getpeername 368 -#define __NR_sendto 369 -#define __NR_sendmsg 370 -#define __NR_recvfrom 371 -#define __NR_recvmsg 372 -#define __NR_shutdown 373 -#define __NR_mlock2 374 -#define __NR_copy_file_range 375 -#define __NR_preadv2 376 -#define __NR_pwritev2 377 -#define __NR_s390_guarded_storage 378 -#define __NR_statx 379 -#define __NR_s390_sthyi 380 -#define __NR_kexec_file_load 381 -#define __NR_io_pgetevents 382 -#define __NR_rseq 383 -#define __NR_pkey_mprotect 384 -#define __NR_pkey_alloc 385 -#define __NR_pkey_free 386 -#define __NR_semtimedop 392 -#define __NR_semget 393 -#define __NR_semctl 394 -#define __NR_shmget 395 -#define __NR_shmctl 396 -#define __NR_shmat 397 -#define __NR_shmdt 398 -#define __NR_msgget 399 -#define __NR_msgsnd 400 -#define __NR_msgrcv 401 -#define __NR_msgctl 402 -#define __NR_pidfd_send_signal 424 -#define __NR_io_uring_setup 425 -#define __NR_io_uring_enter 426 -#define __NR_io_uring_register 427 -#define __NR_open_tree 428 -#define __NR_move_mount 429 -#define __NR_fsopen 430 -#define __NR_fsconfig 431 -#define __NR_fsmount 432 -#define __NR_fspick 433 -#define __NR_pidfd_open 434 -#define __NR_clone3 435 -#define __NR_close_range 436 -#define __NR_openat2 437 -#define __NR_pidfd_getfd 438 -#define __NR_faccessat2 439 -#define __NR_process_madvise 440 -#define __NR_epoll_pwait2 441 -#define __NR_mount_setattr 442 -#define __NR_landlock_create_ruleset 444 -#define __NR_landlock_add_rule 445 -#define __NR_landlock_restrict_self 446 -#define __NR_memfd_secret 447 -#define __NR_process_mrelease 448 -#define __NR_futex_waitv 449 -#define __NR_set_mempolicy_home_node 450 -#define __NR_cachestat 451 -#define __NR_fchmodat2 452 - diff --git a/lib/libc/musl/arch/x32/atomic_arch.h b/lib/libc/musl/arch/x32/atomic_arch.h new file mode 100644 index 000000000000..918c2d4eec10 --- /dev/null +++ b/lib/libc/musl/arch/x32/atomic_arch.h @@ -0,0 +1,121 @@ +#define a_cas a_cas +static inline int a_cas(volatile int *p, int t, int s) +{ + __asm__ __volatile__ ( + "lock ; cmpxchg %3, %1" + : "=a"(t), "=m"(*p) : "a"(t), "r"(s) : "memory" ); + return t; +} + +#define a_swap a_swap +static inline int a_swap(volatile int *p, int v) +{ + __asm__ __volatile__( + "xchg %0, %1" + : "=r"(v), "=m"(*p) : "0"(v) : "memory" ); + return v; +} + +#define a_fetch_add a_fetch_add +static inline int a_fetch_add(volatile int *p, int v) +{ + __asm__ __volatile__( + "lock ; xadd %0, %1" + : "=r"(v), "=m"(*p) : "0"(v) : "memory" ); + return v; +} + +#define a_and a_and +static inline void a_and(volatile int *p, int v) +{ + __asm__ __volatile__( + "lock ; and %1, %0" + : "=m"(*p) : "r"(v) : "memory" ); +} + +#define a_or a_or +static inline void a_or(volatile int *p, int v) +{ + __asm__ __volatile__( + "lock ; or %1, %0" + : "=m"(*p) : "r"(v) : "memory" ); +} + +#define a_and_64 a_and_64 +static inline void a_and_64(volatile uint64_t *p, uint64_t v) +{ + __asm__ __volatile( + "lock ; and %1, %0" + : "=m"(*p) : "r"(v) : "memory" ); +} + +#define a_or_64 a_or_64 +static inline void a_or_64(volatile uint64_t *p, uint64_t v) +{ + __asm__ __volatile__( + "lock ; or %1, %0" + : "=m"(*p) : "r"(v) : "memory" ); +} + +#define a_inc a_inc +static inline void a_inc(volatile int *p) +{ + __asm__ __volatile__( + "lock ; incl %0" + : "=m"(*p) : "m"(*p) : "memory" ); +} + +#define a_dec a_dec +static inline void a_dec(volatile int *p) +{ + __asm__ __volatile__( + "lock ; decl %0" + : "=m"(*p) : "m"(*p) : "memory" ); +} + +#define a_store a_store +static inline void a_store(volatile int *p, int x) +{ + __asm__ __volatile__( + "mov %1, %0 ; lock ; orl $0,(%%rsp)" + : "=m"(*p) : "r"(x) : "memory" ); +} + +#define a_barrier a_barrier +static inline void a_barrier() +{ + __asm__ __volatile__( "" : : : "memory" ); +} + +#define a_spin a_spin +static inline void a_spin() +{ + __asm__ __volatile__( "pause" : : : "memory" ); +} + +#define a_crash a_crash +static inline void a_crash() +{ + __asm__ __volatile__( "hlt" : : : "memory" ); +} + +#define a_ctz_64 a_ctz_64 +static inline int a_ctz_64(uint64_t x) +{ + __asm__( "bsf %1,%0" : "=r"(x) : "r"(x) ); + return x; +} + +#define a_ctz_32 a_ctz_32 +static inline int a_ctz_32(uint32_t x) +{ + __asm__( "bsf %1,%0" : "=r"(x) : "r"(x) ); + return x; +} + +#define a_clz_64 a_clz_64 +static inline int a_clz_64(uint64_t x) +{ + __asm__( "bsr %1,%0 ; xor $63,%0" : "=r"(x) : "r"(x) ); + return x; +} diff --git a/lib/libc/musl/arch/x32/bits/fcntl.h b/lib/libc/musl/arch/x32/bits/fcntl.h new file mode 100644 index 000000000000..08627f812a72 --- /dev/null +++ b/lib/libc/musl/arch/x32/bits/fcntl.h @@ -0,0 +1,40 @@ +#define O_CREAT 0100 +#define O_EXCL 0200 +#define O_NOCTTY 0400 +#define O_TRUNC 01000 +#define O_APPEND 02000 +#define O_NONBLOCK 04000 +#define O_DSYNC 010000 +#define O_SYNC 04010000 +#define O_RSYNC 04010000 +#define O_DIRECTORY 0200000 +#define O_NOFOLLOW 0400000 +#define O_CLOEXEC 02000000 + +#define O_ASYNC 020000 +#define O_DIRECT 040000 +#define O_LARGEFILE 0100000 +#define O_NOATIME 01000000 +#define O_PATH 010000000 +#define O_TMPFILE 020200000 +#define O_NDELAY O_NONBLOCK + +#define F_DUPFD 0 +#define F_GETFD 1 +#define F_SETFD 2 +#define F_GETFL 3 +#define F_SETFL 4 + +#define F_SETOWN 8 +#define F_GETOWN 9 +#define F_SETSIG 10 +#define F_GETSIG 11 + +#define F_GETLK 5 +#define F_SETLK 6 +#define F_SETLKW 7 + +#define F_SETOWN_EX 15 +#define F_GETOWN_EX 16 + +#define F_GETOWNER_UIDS 17 diff --git a/lib/libc/musl/arch/x32/bits/fenv.h b/lib/libc/musl/arch/x32/bits/fenv.h new file mode 100644 index 000000000000..24df0417f2e7 --- /dev/null +++ b/lib/libc/musl/arch/x32/bits/fenv.h @@ -0,0 +1,34 @@ +#define FE_INVALID 1 +#define __FE_DENORM 2 +#define FE_DIVBYZERO 4 +#define FE_OVERFLOW 8 +#define FE_UNDERFLOW 16 +#define FE_INEXACT 32 + +#define FE_ALL_EXCEPT 63 + +#define FE_TONEAREST 0 +#define FE_DOWNWARD 0x400 +#define FE_UPWARD 0x800 +#define FE_TOWARDZERO 0xc00 + +typedef unsigned short fexcept_t; + +typedef struct { + unsigned short __control_word; + unsigned short __unused1; + unsigned short __status_word; + unsigned short __unused2; + unsigned short __tags; + unsigned short __unused3; + unsigned int __eip; + unsigned short __cs_selector; + unsigned int __opcode:11; + unsigned int __unused4:5; + unsigned int __data_offset; + unsigned short __data_selector; + unsigned short __unused5; + unsigned int __mxcsr; +} fenv_t; + +#define FE_DFL_ENV ((const fenv_t *) -1) diff --git a/lib/libc/musl/arch/x32/bits/float.h b/lib/libc/musl/arch/x32/bits/float.h new file mode 100644 index 000000000000..4d8e78641bdd --- /dev/null +++ b/lib/libc/musl/arch/x32/bits/float.h @@ -0,0 +1,20 @@ +#ifdef __FLT_EVAL_METHOD__ +#define FLT_EVAL_METHOD __FLT_EVAL_METHOD__ +#else +#define FLT_EVAL_METHOD 0 +#endif + +#define LDBL_TRUE_MIN 3.6451995318824746025e-4951L +#define LDBL_MIN 3.3621031431120935063e-4932L +#define LDBL_MAX 1.1897314953572317650e+4932L +#define LDBL_EPSILON 1.0842021724855044340e-19L + +#define LDBL_MANT_DIG 64 +#define LDBL_MIN_EXP (-16381) +#define LDBL_MAX_EXP 16384 + +#define LDBL_DIG 18 +#define LDBL_MIN_10_EXP (-4931) +#define LDBL_MAX_10_EXP 4932 + +#define DECIMAL_DIG 21 diff --git a/lib/libc/musl/arch/x32/bits/io.h b/lib/libc/musl/arch/x32/bits/io.h new file mode 100644 index 000000000000..dd5bddc967aa --- /dev/null +++ b/lib/libc/musl/arch/x32/bits/io.h @@ -0,0 +1,77 @@ +static __inline void outb(unsigned char __val, unsigned short __port) +{ + __asm__ volatile ("outb %0,%1" : : "a" (__val), "dN" (__port)); +} + +static __inline void outw(unsigned short __val, unsigned short __port) +{ + __asm__ volatile ("outw %0,%1" : : "a" (__val), "dN" (__port)); +} + +static __inline void outl(unsigned int __val, unsigned short __port) +{ + __asm__ volatile ("outl %0,%1" : : "a" (__val), "dN" (__port)); +} + +static __inline unsigned char inb(unsigned short __port) +{ + unsigned char __val; + __asm__ volatile ("inb %1,%0" : "=a" (__val) : "dN" (__port)); + return __val; +} + +static __inline unsigned short inw(unsigned short __port) +{ + unsigned short __val; + __asm__ volatile ("inw %1,%0" : "=a" (__val) : "dN" (__port)); + return __val; +} + +static __inline unsigned int inl(unsigned short __port) +{ + unsigned int __val; + __asm__ volatile ("inl %1,%0" : "=a" (__val) : "dN" (__port)); + return __val; +} + +static __inline void outsb(unsigned short __port, const void *__buf, unsigned long __n) +{ + __asm__ volatile ("cld; rep; outsb" + : "+S" (__buf), "+c" (__n) + : "d" (__port)); +} + +static __inline void outsw(unsigned short __port, const void *__buf, unsigned long __n) +{ + __asm__ volatile ("cld; rep; outsw" + : "+S" (__buf), "+c" (__n) + : "d" (__port)); +} + +static __inline void outsl(unsigned short __port, const void *__buf, unsigned long __n) +{ + __asm__ volatile ("cld; rep; outsl" + : "+S" (__buf), "+c"(__n) + : "d" (__port)); +} + +static __inline void insb(unsigned short __port, void *__buf, unsigned long __n) +{ + __asm__ volatile ("cld; rep; insb" + : "+D" (__buf), "+c" (__n) + : "d" (__port)); +} + +static __inline void insw(unsigned short __port, void *__buf, unsigned long __n) +{ + __asm__ volatile ("cld; rep; insw" + : "+D" (__buf), "+c" (__n) + : "d" (__port)); +} + +static __inline void insl(unsigned short __port, void *__buf, unsigned long __n) +{ + __asm__ volatile ("cld; rep; insl" + : "+D" (__buf), "+c" (__n) + : "d" (__port)); +} diff --git a/lib/libc/musl/arch/x32/bits/ioctl_fix.h b/lib/libc/musl/arch/x32/bits/ioctl_fix.h new file mode 100644 index 000000000000..83b957bddb9a --- /dev/null +++ b/lib/libc/musl/arch/x32/bits/ioctl_fix.h @@ -0,0 +1,4 @@ +#undef SIOCGSTAMP +#undef SIOCGSTAMPNS +#define SIOCGSTAMP 0x8906 +#define SIOCGSTAMPNS 0x8907 diff --git a/lib/libc/musl/arch/x32/bits/ipc.h b/lib/libc/musl/arch/x32/bits/ipc.h new file mode 100644 index 000000000000..a12380f638dc --- /dev/null +++ b/lib/libc/musl/arch/x32/bits/ipc.h @@ -0,0 +1,11 @@ +struct ipc_perm { + key_t __ipc_perm_key; + uid_t uid; + gid_t gid; + uid_t cuid; + gid_t cgid; + mode_t mode; + int __ipc_perm_seq; + long long __pad1; + long long __pad2; +}; diff --git a/lib/libc/musl/arch/x32/bits/limits.h b/lib/libc/musl/arch/x32/bits/limits.h new file mode 100644 index 000000000000..07743b6fd61f --- /dev/null +++ b/lib/libc/musl/arch/x32/bits/limits.h @@ -0,0 +1 @@ +#define PAGESIZE 4096 diff --git a/lib/libc/musl/arch/x32/bits/mman.h b/lib/libc/musl/arch/x32/bits/mman.h new file mode 100644 index 000000000000..ba2d6f7a8346 --- /dev/null +++ b/lib/libc/musl/arch/x32/bits/mman.h @@ -0,0 +1 @@ +#define MAP_32BIT 0x40 diff --git a/lib/libc/musl/arch/x32/bits/msg.h b/lib/libc/musl/arch/x32/bits/msg.h new file mode 100644 index 000000000000..63ae9877345f --- /dev/null +++ b/lib/libc/musl/arch/x32/bits/msg.h @@ -0,0 +1,15 @@ +struct msqid_ds { + struct ipc_perm msg_perm; + time_t msg_stime; + time_t msg_rtime; + time_t msg_ctime; + unsigned long msg_cbytes; + long __unused1; + msgqnum_t msg_qnum; + long __unused2; + msglen_t msg_qbytes; + long __unused3; + pid_t msg_lspid; + pid_t msg_lrpid; + unsigned long long __unused[2]; +}; diff --git a/lib/libc/musl/arch/x32/bits/posix.h b/lib/libc/musl/arch/x32/bits/posix.h new file mode 100644 index 000000000000..30a38714f36d --- /dev/null +++ b/lib/libc/musl/arch/x32/bits/posix.h @@ -0,0 +1,2 @@ +#define _POSIX_V6_ILP32_OFFBIG 1 +#define _POSIX_V7_ILP32_OFFBIG 1 diff --git a/lib/libc/musl/arch/x32/bits/ptrace.h b/lib/libc/musl/arch/x32/bits/ptrace.h new file mode 100644 index 000000000000..7f8a09b5219d --- /dev/null +++ b/lib/libc/musl/arch/x32/bits/ptrace.h @@ -0,0 +1,13 @@ +#define PTRACE_GET_THREAD_AREA 25 +#define PTRACE_SET_THREAD_AREA 26 +#define PTRACE_ARCH_PRCTL 30 +#define PTRACE_SYSEMU 31 +#define PTRACE_SYSEMU_SINGLESTEP 32 +#define PTRACE_SINGLEBLOCK 33 + +#define PT_GET_THREAD_AREA PTRACE_GET_THREAD_AREA +#define PT_SET_THREAD_AREA PTRACE_SET_THREAD_AREA +#define PT_ARCH_PRCTL PTRACE_ARCH_PRCTL +#define PT_SYSEMU PTRACE_SYSEMU +#define PT_SYSEMU_SINGLESTEP PTRACE_SYSEMU_SINGLESTEP +#define PT_STEPBLOCK PTRACE_SINGLEBLOCK diff --git a/lib/libc/musl/arch/x32/bits/reg.h b/lib/libc/musl/arch/x32/bits/reg.h new file mode 100644 index 000000000000..5faaef1aeb6e --- /dev/null +++ b/lib/libc/musl/arch/x32/bits/reg.h @@ -0,0 +1,29 @@ +#undef __WORDSIZE +#define __WORDSIZE 32 +#define R15 0 +#define R14 1 +#define R13 2 +#define R12 3 +#define RBP 4 +#define RBX 5 +#define R11 6 +#define R10 7 +#define R9 8 +#define R8 9 +#define RAX 10 +#define RCX 11 +#define RDX 12 +#define RSI 13 +#define RDI 14 +#define ORIG_RAX 15 +#define RIP 16 +#define CS 17 +#define EFLAGS 18 +#define RSP 19 +#define SS 20 +#define FS_BASE 21 +#define GS_BASE 22 +#define DS 23 +#define ES 24 +#define FS 25 +#define GS 26 diff --git a/lib/libc/musl/arch/x32/bits/sem.h b/lib/libc/musl/arch/x32/bits/sem.h new file mode 100644 index 000000000000..18745f4c84a1 --- /dev/null +++ b/lib/libc/musl/arch/x32/bits/sem.h @@ -0,0 +1,11 @@ +struct semid_ds { + struct ipc_perm sem_perm; + time_t sem_otime; + long long __unused1; + time_t sem_ctime; + long long __unused2; + unsigned short sem_nsems; + char __sem_nsems_pad[sizeof(long long)-sizeof(short)]; + long long __unused3; + long long __unused4; +}; diff --git a/lib/libc/musl/arch/x32/bits/setjmp.h b/lib/libc/musl/arch/x32/bits/setjmp.h new file mode 100644 index 000000000000..a9262a647011 --- /dev/null +++ b/lib/libc/musl/arch/x32/bits/setjmp.h @@ -0,0 +1 @@ +typedef unsigned long long __jmp_buf[8]; diff --git a/lib/libc/musl/arch/x32/bits/shm.h b/lib/libc/musl/arch/x32/bits/shm.h new file mode 100644 index 000000000000..fa88c1e97620 --- /dev/null +++ b/lib/libc/musl/arch/x32/bits/shm.h @@ -0,0 +1,32 @@ +#define SHMLBA 4096 + +struct shmid_ds { + struct ipc_perm shm_perm; + size_t shm_segsz; + time_t shm_atime; + time_t shm_dtime; + time_t shm_ctime; + pid_t shm_cpid; + pid_t shm_lpid; + unsigned long shm_nattch; + unsigned long __pad0; + unsigned long long __pad1; + unsigned long long __pad2; +}; + +struct shminfo { + unsigned long shmmax, __pad0, shmmin, __pad1, shmmni, __pad2, + shmseg, __pad3, shmall, __pad4; + unsigned long long __unused[4]; +}; + +struct shm_info { + int __used_ids; + int __pad_ids; + unsigned long shm_tot, __pad0, shm_rss, __pad1, shm_swp, __pad2; + unsigned long __swap_attempts, __pad3, __swap_successes, __pad4; +} +#ifdef __GNUC__ +__attribute__((__aligned__(8))) +#endif +; diff --git a/lib/libc/musl/arch/x32/bits/signal.h b/lib/libc/musl/arch/x32/bits/signal.h new file mode 100644 index 000000000000..097be6f4577c --- /dev/null +++ b/lib/libc/musl/arch/x32/bits/signal.h @@ -0,0 +1,153 @@ +#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \ + || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE) + +#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE) +#define MINSIGSTKSZ 2048 +#define SIGSTKSZ 8192 +#endif + +#ifdef _GNU_SOURCE +enum { REG_R8 = 0 }; +#define REG_R8 REG_R8 +enum { REG_R9 = 1 }; +#define REG_R9 REG_R9 +enum { REG_R10 = 2 }; +#define REG_R10 REG_R10 +enum { REG_R11 = 3 }; +#define REG_R11 REG_R11 +enum { REG_R12 = 4 }; +#define REG_R12 REG_R12 +enum { REG_R13 = 5 }; +#define REG_R13 REG_R13 +enum { REG_R14 = 6 }; +#define REG_R14 REG_R14 +enum { REG_R15 = 7 }; +#define REG_R15 REG_R15 +enum { REG_RDI = 8 }; +#define REG_RDI REG_RDI +enum { REG_RSI = 9 }; +#define REG_RSI REG_RSI +enum { REG_RBP = 10 }; +#define REG_RBP REG_RBP +enum { REG_RBX = 11 }; +#define REG_RBX REG_RBX +enum { REG_RDX = 12 }; +#define REG_RDX REG_RDX +enum { REG_RAX = 13 }; +#define REG_RAX REG_RAX +enum { REG_RCX = 14 }; +#define REG_RCX REG_RCX +enum { REG_RSP = 15 }; +#define REG_RSP REG_RSP +enum { REG_RIP = 16 }; +#define REG_RIP REG_RIP +enum { REG_EFL = 17 }; +#define REG_EFL REG_EFL +enum { REG_CSGSFS = 18 }; +#define REG_CSGSFS REG_CSGSFS +enum { REG_ERR = 19 }; +#define REG_ERR REG_ERR +enum { REG_TRAPNO = 20 }; +#define REG_TRAPNO REG_TRAPNO +enum { REG_OLDMASK = 21 }; +#define REG_OLDMASK REG_OLDMASK +enum { REG_CR2 = 22 }; +#define REG_CR2 REG_CR2 +#endif + +#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) +typedef long long greg_t, gregset_t[23]; +typedef struct _fpstate { + unsigned short cwd, swd, ftw, fop; + unsigned long long rip, rdp; + unsigned mxcsr, mxcr_mask; + struct { + unsigned short significand[4], exponent, padding[3]; + } _st[8]; + struct { + unsigned element[4]; + } _xmm[16]; + unsigned padding[24]; +} *fpregset_t; +struct sigcontext { + unsigned long long r8, r9, r10, r11, r12, r13, r14, r15; + unsigned long long rdi, rsi, rbp, rbx, rdx, rax, rcx, rsp, rip, eflags; + unsigned short cs, gs, fs, __pad0; + unsigned long long err, trapno, oldmask, cr2; + struct _fpstate *fpstate; + unsigned long long __reserved1[8]; +}; +typedef struct { + gregset_t gregs; + fpregset_t fpregs; + unsigned long long __reserved1[8]; +} mcontext_t; +#else +typedef struct { + unsigned long long __space[32]; +} mcontext_t; +#endif + +struct sigaltstack { + void *ss_sp; + int ss_flags; + size_t ss_size; +}; + +typedef struct __ucontext { + unsigned long uc_flags; + struct __ucontext *uc_link; + stack_t uc_stack; + mcontext_t uc_mcontext; + sigset_t uc_sigmask; + unsigned long long __fpregs_mem[64]; +} ucontext_t; + +#define SA_NOCLDSTOP 1 +#define SA_NOCLDWAIT 2 +#define SA_SIGINFO 4 +#define SA_ONSTACK 0x08000000 +#define SA_RESTART 0x10000000 +#define SA_NODEFER 0x40000000 +#define SA_RESETHAND 0x80000000 +#define SA_RESTORER 0x04000000 + +#endif + +#define SIGHUP 1 +#define SIGINT 2 +#define SIGQUIT 3 +#define SIGILL 4 +#define SIGTRAP 5 +#define SIGABRT 6 +#define SIGIOT SIGABRT +#define SIGBUS 7 +#define SIGFPE 8 +#define SIGKILL 9 +#define SIGUSR1 10 +#define SIGSEGV 11 +#define SIGUSR2 12 +#define SIGPIPE 13 +#define SIGALRM 14 +#define SIGTERM 15 +#define SIGSTKFLT 16 +#define SIGCHLD 17 +#define SIGCONT 18 +#define SIGSTOP 19 +#define SIGTSTP 20 +#define SIGTTIN 21 +#define SIGTTOU 22 +#define SIGURG 23 +#define SIGXCPU 24 +#define SIGXFSZ 25 +#define SIGVTALRM 26 +#define SIGPROF 27 +#define SIGWINCH 28 +#define SIGIO 29 +#define SIGPOLL 29 +#define SIGPWR 30 +#define SIGSYS 31 +#define SIGUNUSED SIGSYS + +#define _NSIG 65 + diff --git a/lib/libc/musl/arch/x32/bits/socket.h b/lib/libc/musl/arch/x32/bits/socket.h new file mode 100644 index 000000000000..8d83001027cb --- /dev/null +++ b/lib/libc/musl/arch/x32/bits/socket.h @@ -0,0 +1,5 @@ +#define SO_RCVTIMEO 20 +#define SO_SNDTIMEO 21 +#define SO_TIMESTAMP 29 +#define SO_TIMESTAMPNS 35 +#define SO_TIMESTAMPING 37 diff --git a/lib/libc/musl/arch/x32/bits/stat.h b/lib/libc/musl/arch/x32/bits/stat.h new file mode 100644 index 000000000000..1f3aa1ed19a5 --- /dev/null +++ b/lib/libc/musl/arch/x32/bits/stat.h @@ -0,0 +1,22 @@ +/* copied from kernel definition, but with padding replaced + * by the corresponding correctly-sized userspace types. */ + +struct stat { + dev_t st_dev; + ino_t st_ino; + nlink_t st_nlink; + + mode_t st_mode; + uid_t st_uid; + gid_t st_gid; + unsigned int __pad0; + dev_t st_rdev; + off_t st_size; + blksize_t st_blksize; + blkcnt_t st_blocks; + + struct timespec st_atim; + struct timespec st_mtim; + struct timespec st_ctim; + long long __unused[3]; +}; diff --git a/lib/libc/musl/arch/x32/bits/statfs.h b/lib/libc/musl/arch/x32/bits/statfs.h new file mode 100644 index 000000000000..79aec35d6118 --- /dev/null +++ b/lib/libc/musl/arch/x32/bits/statfs.h @@ -0,0 +1,9 @@ +struct statfs { + unsigned long f_type, __pad0, f_bsize, __pad1; + fsblkcnt_t f_blocks, f_bfree, f_bavail; + fsfilcnt_t f_files, f_ffree; + fsid_t f_fsid; + unsigned long f_namelen, __pad2, f_frsize, __pad3; + unsigned long f_flags, __pad4; + unsigned long long f_spare[4]; +}; diff --git a/lib/libc/musl/arch/x32/bits/stdint.h b/lib/libc/musl/arch/x32/bits/stdint.h new file mode 100644 index 000000000000..d1b2712199ac --- /dev/null +++ b/lib/libc/musl/arch/x32/bits/stdint.h @@ -0,0 +1,20 @@ +typedef int32_t int_fast16_t; +typedef int32_t int_fast32_t; +typedef uint32_t uint_fast16_t; +typedef uint32_t uint_fast32_t; + +#define INT_FAST16_MIN INT32_MIN +#define INT_FAST32_MIN INT32_MIN + +#define INT_FAST16_MAX INT32_MAX +#define INT_FAST32_MAX INT32_MAX + +#define UINT_FAST16_MAX UINT32_MAX +#define UINT_FAST32_MAX UINT32_MAX + +#define INTPTR_MIN INT32_MIN +#define INTPTR_MAX INT32_MAX +#define UINTPTR_MAX UINT32_MAX +#define PTRDIFF_MIN INT32_MIN +#define PTRDIFF_MAX INT32_MAX +#define SIZE_MAX UINT32_MAX diff --git a/lib/libc/musl/arch/x32/bits/user.h b/lib/libc/musl/arch/x32/bits/user.h new file mode 100644 index 000000000000..eac82a14bced --- /dev/null +++ b/lib/libc/musl/arch/x32/bits/user.h @@ -0,0 +1,41 @@ +#undef __WORDSIZE +#define __WORDSIZE 32 + +typedef struct user_fpregs_struct { + uint16_t cwd, swd, ftw, fop; + uint64_t rip, rdp; + uint32_t mxcsr, mxcr_mask; + uint32_t st_space[32], xmm_space[64], padding[24]; +} elf_fpregset_t; + +struct user_regs_struct { + unsigned long r15, r14, r13, r12, rbp, rbx, r11, r10, r9, r8; + unsigned long rax, rcx, rdx, rsi, rdi, orig_rax, rip; + unsigned long cs, eflags, rsp, ss, fs_base, gs_base, ds, es, fs, gs; +}; +#define ELF_NGREG 27 +typedef unsigned long long elf_greg_t, elf_gregset_t[ELF_NGREG]; + +struct user { + struct user_regs_struct regs; + int u_fpvalid; + struct user_fpregs_struct i387; + unsigned long u_tsize; + unsigned long u_dsize; + unsigned long u_ssize; + unsigned long start_code; + unsigned long start_stack; + long signal; + int reserved; + struct user_regs_struct *u_ar0; + struct user_fpregs_struct *u_fpstate; + unsigned long magic; + char u_comm[32]; + unsigned long u_debugreg[8]; +}; + +#define PAGE_MASK (~(PAGESIZE-1)) +#define NBPG PAGESIZE +#define UPAGES 1 +#define HOST_TEXT_START_ADDR (u.start_code) +#define HOST_STACK_END_ADDR (u.start_stack + u.u_ssize * NBPG) diff --git a/lib/libc/musl/arch/x32/crt_arch.h b/lib/libc/musl/arch/x32/crt_arch.h new file mode 100644 index 000000000000..3eec61bdcdb8 --- /dev/null +++ b/lib/libc/musl/arch/x32/crt_arch.h @@ -0,0 +1,12 @@ +__asm__( +".text \n" +".global " START " \n" +START ": \n" +" xor %rbp,%rbp \n" +" mov %rsp,%rdi \n" +".weak _DYNAMIC \n" +".hidden _DYNAMIC \n" +" lea _DYNAMIC(%rip),%rsi \n" +" andq $-16,%rsp \n" +" call " START "_c \n" +); diff --git a/lib/libc/musl/arch/x32/ksigaction.h b/lib/libc/musl/arch/x32/ksigaction.h new file mode 100644 index 000000000000..c40e35684256 --- /dev/null +++ b/lib/libc/musl/arch/x32/ksigaction.h @@ -0,0 +1,11 @@ +#include + +struct k_sigaction { + void (*handler)(int); + unsigned long flags; + void (*restorer)(void); + unsigned mask[2]; +}; + +hidden void __restore_rt(); +#define __restore __restore_rt diff --git a/lib/libc/musl/arch/x32/kstat.h b/lib/libc/musl/arch/x32/kstat.h new file mode 100644 index 000000000000..ce25fce35e27 --- /dev/null +++ b/lib/libc/musl/arch/x32/kstat.h @@ -0,0 +1,22 @@ +struct kstat { + dev_t st_dev; + ino_t st_ino; + nlink_t st_nlink; + + mode_t st_mode; + uid_t st_uid; + gid_t st_gid; + unsigned int __pad0; + dev_t st_rdev; + off_t st_size; + blksize_t st_blksize; + blkcnt_t st_blocks; + + long long st_atime_sec; + long st_atime_nsec; + long long st_mtime_sec; + long st_mtime_nsec; + long long st_ctime_sec; + long st_ctime_nsec; + long long __unused[3]; +}; diff --git a/lib/libc/musl/arch/x32/pthread_arch.h b/lib/libc/musl/arch/x32/pthread_arch.h new file mode 100644 index 000000000000..c1e7716d525d --- /dev/null +++ b/lib/libc/musl/arch/x32/pthread_arch.h @@ -0,0 +1,12 @@ +static inline uintptr_t __get_tp() +{ + uintptr_t tp; + __asm__ ("mov %%fs:0,%0" : "=r" (tp) ); + return tp; +} + +#define MC_PC gregs[REG_RIP] + +#define CANARY_PAD + +#define tls_mod_off_t unsigned long long diff --git a/lib/libc/musl/arch/x32/reloc.h b/lib/libc/musl/arch/x32/reloc.h new file mode 100644 index 000000000000..dc039adf5b45 --- /dev/null +++ b/lib/libc/musl/arch/x32/reloc.h @@ -0,0 +1,31 @@ +#define LDSO_ARCH "x32" + +/* FIXME: x32 is very strange in its use of 64-bit relocation types in + * a 32-bit environment. As long as the memory at reloc_addr is + * zero-filled prior to relocations, just treating 64-bit relocations + * as operating on 32-bit slots should be fine, but this should be + * checked. In particular, R_X86_64_64, R_X86_64_DTPOFF64, and + * R_X86_64_TPOFF64 may need checking. */ + +/* The R_X86_64_64, R_X86_64_DTPOFF32, and R_X86_64_TPOFF32 reloc types + * were previously mapped in the switch table form of this file; however, + * they do not seem to be used/usable for anything. If needed, new + * mappings will have to be added. */ + +#define REL_SYMBOLIC R_X86_64_32 +#define REL_OFFSET R_X86_64_PC32 +#define REL_GOT R_X86_64_GLOB_DAT +#define REL_PLT R_X86_64_JUMP_SLOT +#define REL_RELATIVE R_X86_64_RELATIVE +#define REL_COPY R_X86_64_COPY +#define REL_DTPMOD R_X86_64_DTPMOD64 +#define REL_DTPOFF R_X86_64_DTPOFF64 +#define REL_TPOFF R_X86_64_TPOFF64 + +#define CRTJMP(pc,sp) __asm__ __volatile__( \ + "mov %1,%%esp ; jmp *%0" : : "r"((uint64_t)(uintptr_t)pc), "r"(sp) : "memory" ) + +#define GETFUNCSYM(fp, sym, got) __asm__ ( \ + ".hidden " #sym "\n" \ + " lea " #sym "(%%rip),%0\n" \ + : "=r"(*fp) : : "memory" ) diff --git a/lib/libc/musl/arch/x32/syscall_arch.h b/lib/libc/musl/arch/x32/syscall_arch.h new file mode 100644 index 000000000000..e0111cc0ea10 --- /dev/null +++ b/lib/libc/musl/arch/x32/syscall_arch.h @@ -0,0 +1,93 @@ +#define __SYSCALL_LL_E(x) (x) +#define __SYSCALL_LL_O(x) (x) + +#define __scc(X) sizeof(1?(X):0ULL) < 8 ? (unsigned long) (X) : (long long) (X) +typedef long long syscall_arg_t; + +static __inline long __syscall0(long long n) +{ + unsigned long ret; + __asm__ __volatile__ ("syscall" : "=a"(ret) : "a"(n) : "rcx", "r11", "memory"); + return ret; +} + +static __inline long __syscall1(long long n, long long a1) +{ + unsigned long ret; + __asm__ __volatile__ ("syscall" : "=a"(ret) : "a"(n), "D"(a1) : "rcx", "r11", "memory"); + return ret; +} + +static __inline long __syscall2(long long n, long long a1, long long a2) +{ + unsigned long ret; + __asm__ __volatile__ ("syscall" : "=a"(ret) : "a"(n), "D"(a1), "S"(a2) + : "rcx", "r11", "memory"); + return ret; +} + +static __inline long __syscall3(long long n, long long a1, long long a2, long long a3) +{ + unsigned long ret; + __asm__ __volatile__ ("syscall" : "=a"(ret) : "a"(n), "D"(a1), "S"(a2), + "d"(a3) : "rcx", "r11", "memory"); + return ret; +} + +static __inline long __syscall4(long long n, long long a1, long long a2, long long a3, + long long a4_) +{ + unsigned long ret; + register long long a4 __asm__("r10") = a4_; + __asm__ __volatile__ ("syscall" : "=a"(ret) : "a"(n), "D"(a1), "S"(a2), + "d"(a3), "r"(a4): "rcx", "r11", "memory"); + return ret; +} + +static __inline long __syscall5(long long n, long long a1, long long a2, long long a3, + long long a4_, long long a5_) +{ + unsigned long ret; + register long long a4 __asm__("r10") = a4_; + register long long a5 __asm__("r8") = a5_; + __asm__ __volatile__ ("syscall" : "=a"(ret) : "a"(n), "D"(a1), "S"(a2), + "d"(a3), "r"(a4), "r"(a5) : "rcx", "r11", "memory"); + return ret; +} + +static __inline long __syscall6(long long n, long long a1, long long a2, long long a3, + long long a4_, long long a5_, long long a6_) +{ + unsigned long ret; + register long long a4 __asm__("r10") = a4_; + register long long a5 __asm__("r8") = a5_; + register long long a6 __asm__("r9") = a6_; + __asm__ __volatile__ ("syscall" : "=a"(ret) : "a"(n), "D"(a1), "S"(a2), + "d"(a3), "r"(a4), "r"(a5), "r"(a6) : "rcx", "r11", "memory"); + return ret; +} + +#undef SYS_futimesat + +#define SYS_clock_gettime64 SYS_clock_gettime +#define SYS_clock_settime64 SYS_clock_settime +#define SYS_clock_adjtime64 SYS_clock_adjtime +#define SYS_clock_nanosleep_time64 SYS_clock_nanosleep +#define SYS_timer_gettime64 SYS_timer_gettime +#define SYS_timer_settime64 SYS_timer_settime +#define SYS_timerfd_gettime64 SYS_timerfd_gettime +#define SYS_timerfd_settime64 SYS_timerfd_settime +#define SYS_utimensat_time64 SYS_utimensat +#define SYS_pselect6_time64 SYS_pselect6 +#define SYS_ppoll_time64 SYS_ppoll +#define SYS_recvmmsg_time64 SYS_recvmmsg +#define SYS_mq_timedsend_time64 SYS_mq_timedsend +#define SYS_mq_timedreceive_time64 SYS_mq_timedreceive +#define SYS_semtimedop_time64 SYS_semtimedop +#define SYS_rt_sigtimedwait_time64 SYS_rt_sigtimedwait +#define SYS_futex_time64 SYS_futex +#define SYS_sched_rr_get_interval_time64 SYS_sched_rr_get_interval +#define SYS_getrusage_time64 SYS_getrusage +#define SYS_wait4_time64 SYS_wait4 + +#define IPC_64 0 diff --git a/lib/libc/musl/arch/x86_64/bits/alltypes.h.in b/lib/libc/musl/arch/x86_64/bits/alltypes.h.in deleted file mode 100644 index 5cd8a2997f62..000000000000 --- a/lib/libc/musl/arch/x86_64/bits/alltypes.h.in +++ /dev/null @@ -1,20 +0,0 @@ -#define _Addr long -#define _Int64 long -#define _Reg long - -#define __BYTE_ORDER 1234 -#define __LONG_MAX 0x7fffffffffffffffL - -#ifndef __cplusplus -TYPEDEF int wchar_t; -#endif - -#if defined(__FLT_EVAL_METHOD__) && __FLT_EVAL_METHOD__ == 2 -TYPEDEF long double float_t; -TYPEDEF long double double_t; -#else -TYPEDEF float float_t; -TYPEDEF double double_t; -#endif - -TYPEDEF struct { long long __ll; long double __ld; } max_align_t; diff --git a/lib/libc/musl/arch/x86_64/bits/syscall.h.in b/lib/libc/musl/arch/x86_64/bits/syscall.h.in deleted file mode 100644 index 6543bbba789d..000000000000 --- a/lib/libc/musl/arch/x86_64/bits/syscall.h.in +++ /dev/null @@ -1,364 +0,0 @@ -#define __NR_read 0 -#define __NR_write 1 -#define __NR_open 2 -#define __NR_close 3 -#define __NR_stat 4 -#define __NR_fstat 5 -#define __NR_lstat 6 -#define __NR_poll 7 -#define __NR_lseek 8 -#define __NR_mmap 9 -#define __NR_mprotect 10 -#define __NR_munmap 11 -#define __NR_brk 12 -#define __NR_rt_sigaction 13 -#define __NR_rt_sigprocmask 14 -#define __NR_rt_sigreturn 15 -#define __NR_ioctl 16 -#define __NR_pread64 17 -#define __NR_pwrite64 18 -#define __NR_readv 19 -#define __NR_writev 20 -#define __NR_access 21 -#define __NR_pipe 22 -#define __NR_select 23 -#define __NR_sched_yield 24 -#define __NR_mremap 25 -#define __NR_msync 26 -#define __NR_mincore 27 -#define __NR_madvise 28 -#define __NR_shmget 29 -#define __NR_shmat 30 -#define __NR_shmctl 31 -#define __NR_dup 32 -#define __NR_dup2 33 -#define __NR_pause 34 -#define __NR_nanosleep 35 -#define __NR_getitimer 36 -#define __NR_alarm 37 -#define __NR_setitimer 38 -#define __NR_getpid 39 -#define __NR_sendfile 40 -#define __NR_socket 41 -#define __NR_connect 42 -#define __NR_accept 43 -#define __NR_sendto 44 -#define __NR_recvfrom 45 -#define __NR_sendmsg 46 -#define __NR_recvmsg 47 -#define __NR_shutdown 48 -#define __NR_bind 49 -#define __NR_listen 50 -#define __NR_getsockname 51 -#define __NR_getpeername 52 -#define __NR_socketpair 53 -#define __NR_setsockopt 54 -#define __NR_getsockopt 55 -#define __NR_clone 56 -#define __NR_fork 57 -#define __NR_vfork 58 -#define __NR_execve 59 -#define __NR_exit 60 -#define __NR_wait4 61 -#define __NR_kill 62 -#define __NR_uname 63 -#define __NR_semget 64 -#define __NR_semop 65 -#define __NR_semctl 66 -#define __NR_shmdt 67 -#define __NR_msgget 68 -#define __NR_msgsnd 69 -#define __NR_msgrcv 70 -#define __NR_msgctl 71 -#define __NR_fcntl 72 -#define __NR_flock 73 -#define __NR_fsync 74 -#define __NR_fdatasync 75 -#define __NR_truncate 76 -#define __NR_ftruncate 77 -#define __NR_getdents 78 -#define __NR_getcwd 79 -#define __NR_chdir 80 -#define __NR_fchdir 81 -#define __NR_rename 82 -#define __NR_mkdir 83 -#define __NR_rmdir 84 -#define __NR_creat 85 -#define __NR_link 86 -#define __NR_unlink 87 -#define __NR_symlink 88 -#define __NR_readlink 89 -#define __NR_chmod 90 -#define __NR_fchmod 91 -#define __NR_chown 92 -#define __NR_fchown 93 -#define __NR_lchown 94 -#define __NR_umask 95 -#define __NR_gettimeofday 96 -#define __NR_getrlimit 97 -#define __NR_getrusage 98 -#define __NR_sysinfo 99 -#define __NR_times 100 -#define __NR_ptrace 101 -#define __NR_getuid 102 -#define __NR_syslog 103 -#define __NR_getgid 104 -#define __NR_setuid 105 -#define __NR_setgid 106 -#define __NR_geteuid 107 -#define __NR_getegid 108 -#define __NR_setpgid 109 -#define __NR_getppid 110 -#define __NR_getpgrp 111 -#define __NR_setsid 112 -#define __NR_setreuid 113 -#define __NR_setregid 114 -#define __NR_getgroups 115 -#define __NR_setgroups 116 -#define __NR_setresuid 117 -#define __NR_getresuid 118 -#define __NR_setresgid 119 -#define __NR_getresgid 120 -#define __NR_getpgid 121 -#define __NR_setfsuid 122 -#define __NR_setfsgid 123 -#define __NR_getsid 124 -#define __NR_capget 125 -#define __NR_capset 126 -#define __NR_rt_sigpending 127 -#define __NR_rt_sigtimedwait 128 -#define __NR_rt_sigqueueinfo 129 -#define __NR_rt_sigsuspend 130 -#define __NR_sigaltstack 131 -#define __NR_utime 132 -#define __NR_mknod 133 -#define __NR_uselib 134 -#define __NR_personality 135 -#define __NR_ustat 136 -#define __NR_statfs 137 -#define __NR_fstatfs 138 -#define __NR_sysfs 139 -#define __NR_getpriority 140 -#define __NR_setpriority 141 -#define __NR_sched_setparam 142 -#define __NR_sched_getparam 143 -#define __NR_sched_setscheduler 144 -#define __NR_sched_getscheduler 145 -#define __NR_sched_get_priority_max 146 -#define __NR_sched_get_priority_min 147 -#define __NR_sched_rr_get_interval 148 -#define __NR_mlock 149 -#define __NR_munlock 150 -#define __NR_mlockall 151 -#define __NR_munlockall 152 -#define __NR_vhangup 153 -#define __NR_modify_ldt 154 -#define __NR_pivot_root 155 -#define __NR__sysctl 156 -#define __NR_prctl 157 -#define __NR_arch_prctl 158 -#define __NR_adjtimex 159 -#define __NR_setrlimit 160 -#define __NR_chroot 161 -#define __NR_sync 162 -#define __NR_acct 163 -#define __NR_settimeofday 164 -#define __NR_mount 165 -#define __NR_umount2 166 -#define __NR_swapon 167 -#define __NR_swapoff 168 -#define __NR_reboot 169 -#define __NR_sethostname 170 -#define __NR_setdomainname 171 -#define __NR_iopl 172 -#define __NR_ioperm 173 -#define __NR_create_module 174 -#define __NR_init_module 175 -#define __NR_delete_module 176 -#define __NR_get_kernel_syms 177 -#define __NR_query_module 178 -#define __NR_quotactl 179 -#define __NR_nfsservctl 180 -#define __NR_getpmsg 181 -#define __NR_putpmsg 182 -#define __NR_afs_syscall 183 -#define __NR_tuxcall 184 -#define __NR_security 185 -#define __NR_gettid 186 -#define __NR_readahead 187 -#define __NR_setxattr 188 -#define __NR_lsetxattr 189 -#define __NR_fsetxattr 190 -#define __NR_getxattr 191 -#define __NR_lgetxattr 192 -#define __NR_fgetxattr 193 -#define __NR_listxattr 194 -#define __NR_llistxattr 195 -#define __NR_flistxattr 196 -#define __NR_removexattr 197 -#define __NR_lremovexattr 198 -#define __NR_fremovexattr 199 -#define __NR_tkill 200 -#define __NR_time 201 -#define __NR_futex 202 -#define __NR_sched_setaffinity 203 -#define __NR_sched_getaffinity 204 -#define __NR_set_thread_area 205 -#define __NR_io_setup 206 -#define __NR_io_destroy 207 -#define __NR_io_getevents 208 -#define __NR_io_submit 209 -#define __NR_io_cancel 210 -#define __NR_get_thread_area 211 -#define __NR_lookup_dcookie 212 -#define __NR_epoll_create 213 -#define __NR_epoll_ctl_old 214 -#define __NR_epoll_wait_old 215 -#define __NR_remap_file_pages 216 -#define __NR_getdents64 217 -#define __NR_set_tid_address 218 -#define __NR_restart_syscall 219 -#define __NR_semtimedop 220 -#define __NR_fadvise64 221 -#define __NR_timer_create 222 -#define __NR_timer_settime 223 -#define __NR_timer_gettime 224 -#define __NR_timer_getoverrun 225 -#define __NR_timer_delete 226 -#define __NR_clock_settime 227 -#define __NR_clock_gettime 228 -#define __NR_clock_getres 229 -#define __NR_clock_nanosleep 230 -#define __NR_exit_group 231 -#define __NR_epoll_wait 232 -#define __NR_epoll_ctl 233 -#define __NR_tgkill 234 -#define __NR_utimes 235 -#define __NR_vserver 236 -#define __NR_mbind 237 -#define __NR_set_mempolicy 238 -#define __NR_get_mempolicy 239 -#define __NR_mq_open 240 -#define __NR_mq_unlink 241 -#define __NR_mq_timedsend 242 -#define __NR_mq_timedreceive 243 -#define __NR_mq_notify 244 -#define __NR_mq_getsetattr 245 -#define __NR_kexec_load 246 -#define __NR_waitid 247 -#define __NR_add_key 248 -#define __NR_request_key 249 -#define __NR_keyctl 250 -#define __NR_ioprio_set 251 -#define __NR_ioprio_get 252 -#define __NR_inotify_init 253 -#define __NR_inotify_add_watch 254 -#define __NR_inotify_rm_watch 255 -#define __NR_migrate_pages 256 -#define __NR_openat 257 -#define __NR_mkdirat 258 -#define __NR_mknodat 259 -#define __NR_fchownat 260 -#define __NR_futimesat 261 -#define __NR_newfstatat 262 -#define __NR_unlinkat 263 -#define __NR_renameat 264 -#define __NR_linkat 265 -#define __NR_symlinkat 266 -#define __NR_readlinkat 267 -#define __NR_fchmodat 268 -#define __NR_faccessat 269 -#define __NR_pselect6 270 -#define __NR_ppoll 271 -#define __NR_unshare 272 -#define __NR_set_robust_list 273 -#define __NR_get_robust_list 274 -#define __NR_splice 275 -#define __NR_tee 276 -#define __NR_sync_file_range 277 -#define __NR_vmsplice 278 -#define __NR_move_pages 279 -#define __NR_utimensat 280 -#define __NR_epoll_pwait 281 -#define __NR_signalfd 282 -#define __NR_timerfd_create 283 -#define __NR_eventfd 284 -#define __NR_fallocate 285 -#define __NR_timerfd_settime 286 -#define __NR_timerfd_gettime 287 -#define __NR_accept4 288 -#define __NR_signalfd4 289 -#define __NR_eventfd2 290 -#define __NR_epoll_create1 291 -#define __NR_dup3 292 -#define __NR_pipe2 293 -#define __NR_inotify_init1 294 -#define __NR_preadv 295 -#define __NR_pwritev 296 -#define __NR_rt_tgsigqueueinfo 297 -#define __NR_perf_event_open 298 -#define __NR_recvmmsg 299 -#define __NR_fanotify_init 300 -#define __NR_fanotify_mark 301 -#define __NR_prlimit64 302 -#define __NR_name_to_handle_at 303 -#define __NR_open_by_handle_at 304 -#define __NR_clock_adjtime 305 -#define __NR_syncfs 306 -#define __NR_sendmmsg 307 -#define __NR_setns 308 -#define __NR_getcpu 309 -#define __NR_process_vm_readv 310 -#define __NR_process_vm_writev 311 -#define __NR_kcmp 312 -#define __NR_finit_module 313 -#define __NR_sched_setattr 314 -#define __NR_sched_getattr 315 -#define __NR_renameat2 316 -#define __NR_seccomp 317 -#define __NR_getrandom 318 -#define __NR_memfd_create 319 -#define __NR_kexec_file_load 320 -#define __NR_bpf 321 -#define __NR_execveat 322 -#define __NR_userfaultfd 323 -#define __NR_membarrier 324 -#define __NR_mlock2 325 -#define __NR_copy_file_range 326 -#define __NR_preadv2 327 -#define __NR_pwritev2 328 -#define __NR_pkey_mprotect 329 -#define __NR_pkey_alloc 330 -#define __NR_pkey_free 331 -#define __NR_statx 332 -#define __NR_io_pgetevents 333 -#define __NR_rseq 334 -#define __NR_pidfd_send_signal 424 -#define __NR_io_uring_setup 425 -#define __NR_io_uring_enter 426 -#define __NR_io_uring_register 427 -#define __NR_open_tree 428 -#define __NR_move_mount 429 -#define __NR_fsopen 430 -#define __NR_fsconfig 431 -#define __NR_fsmount 432 -#define __NR_fspick 433 -#define __NR_pidfd_open 434 -#define __NR_clone3 435 -#define __NR_close_range 436 -#define __NR_openat2 437 -#define __NR_pidfd_getfd 438 -#define __NR_faccessat2 439 -#define __NR_process_madvise 440 -#define __NR_epoll_pwait2 441 -#define __NR_mount_setattr 442 -#define __NR_landlock_create_ruleset 444 -#define __NR_landlock_add_rule 445 -#define __NR_landlock_restrict_self 446 -#define __NR_memfd_secret 447 -#define __NR_process_mrelease 448 -#define __NR_futex_waitv 449 -#define __NR_set_mempolicy_home_node 450 -#define __NR_cachestat 451 -#define __NR_fchmodat2 452 - diff --git a/lib/libc/musl/crt/mipsn32/crtn.s b/lib/libc/musl/crt/mipsn32/crtn.s index dccd7e890198..66f0c7a68023 100644 --- a/lib/libc/musl/crt/mipsn32/crtn.s +++ b/lib/libc/musl/crt/mipsn32/crtn.s @@ -2,11 +2,13 @@ .section .init ld $gp, 16($sp) ld $ra, 24($sp) - j $ra + # zig patch: j -> jr for https://github.com/ziglang/zig/issues/21315 + jr $ra addu $sp, $sp, 32 .section .fini ld $gp, 16($sp) ld $ra, 24($sp) - j $ra + # zig patch: j -> jr for https://github.com/ziglang/zig/issues/21315 + jr $ra addu $sp, $sp, 32 diff --git a/lib/libc/musl/include/alltypes.h.in b/lib/libc/musl/include/alltypes.h.in deleted file mode 100644 index d47aeea9aa8b..000000000000 --- a/lib/libc/musl/include/alltypes.h.in +++ /dev/null @@ -1,95 +0,0 @@ -#define __LITTLE_ENDIAN 1234 -#define __BIG_ENDIAN 4321 -#define __USE_TIME_BITS64 1 - -TYPEDEF unsigned _Addr size_t; -TYPEDEF unsigned _Addr uintptr_t; -TYPEDEF _Addr ptrdiff_t; -TYPEDEF _Addr ssize_t; -TYPEDEF _Addr intptr_t; -TYPEDEF _Addr regoff_t; -TYPEDEF _Reg register_t; -TYPEDEF _Int64 time_t; -TYPEDEF _Int64 suseconds_t; - -TYPEDEF signed char int8_t; -TYPEDEF signed short int16_t; -TYPEDEF signed int int32_t; -TYPEDEF signed _Int64 int64_t; -TYPEDEF signed _Int64 intmax_t; -TYPEDEF unsigned char uint8_t; -TYPEDEF unsigned short uint16_t; -TYPEDEF unsigned int uint32_t; -TYPEDEF unsigned _Int64 uint64_t; -TYPEDEF unsigned _Int64 u_int64_t; -TYPEDEF unsigned _Int64 uintmax_t; - -TYPEDEF unsigned mode_t; -TYPEDEF unsigned _Reg nlink_t; -TYPEDEF _Int64 off_t; -TYPEDEF unsigned _Int64 ino_t; -TYPEDEF unsigned _Int64 dev_t; -TYPEDEF long blksize_t; -TYPEDEF _Int64 blkcnt_t; -TYPEDEF unsigned _Int64 fsblkcnt_t; -TYPEDEF unsigned _Int64 fsfilcnt_t; - -TYPEDEF unsigned wint_t; -TYPEDEF unsigned long wctype_t; - -TYPEDEF void * timer_t; -TYPEDEF int clockid_t; -TYPEDEF long clock_t; -STRUCT timeval { time_t tv_sec; suseconds_t tv_usec; }; -STRUCT timespec { time_t tv_sec; int :8*(sizeof(time_t)-sizeof(long))*(__BYTE_ORDER==4321); long tv_nsec; int :8*(sizeof(time_t)-sizeof(long))*(__BYTE_ORDER!=4321); }; - -TYPEDEF int pid_t; -TYPEDEF unsigned id_t; -TYPEDEF unsigned uid_t; -TYPEDEF unsigned gid_t; -TYPEDEF int key_t; -TYPEDEF unsigned useconds_t; - -#ifdef __cplusplus -TYPEDEF unsigned long pthread_t; -#else -TYPEDEF struct __pthread * pthread_t; -#endif -TYPEDEF int pthread_once_t; -TYPEDEF unsigned pthread_key_t; -TYPEDEF int pthread_spinlock_t; -TYPEDEF struct { unsigned __attr; } pthread_mutexattr_t; -TYPEDEF struct { unsigned __attr; } pthread_condattr_t; -TYPEDEF struct { unsigned __attr; } pthread_barrierattr_t; -TYPEDEF struct { unsigned __attr[2]; } pthread_rwlockattr_t; - -STRUCT _IO_FILE { char __x; }; -TYPEDEF struct _IO_FILE FILE; - -TYPEDEF __builtin_va_list va_list; -TYPEDEF __builtin_va_list __isoc_va_list; - -TYPEDEF struct __mbstate_t { unsigned __opaque1, __opaque2; } mbstate_t; - -TYPEDEF struct __locale_struct * locale_t; - -TYPEDEF struct __sigset_t { unsigned long __bits[128/sizeof(long)]; } sigset_t; - -STRUCT iovec { void *iov_base; size_t iov_len; }; - -STRUCT winsize { unsigned short ws_row, ws_col, ws_xpixel, ws_ypixel; }; - -TYPEDEF unsigned socklen_t; -TYPEDEF unsigned short sa_family_t; - -TYPEDEF struct { union { int __i[sizeof(long)==8?14:9]; volatile int __vi[sizeof(long)==8?14:9]; unsigned long __s[sizeof(long)==8?7:9]; } __u; } pthread_attr_t; -TYPEDEF struct { union { int __i[sizeof(long)==8?10:6]; volatile int __vi[sizeof(long)==8?10:6]; volatile void *volatile __p[sizeof(long)==8?5:6]; } __u; } pthread_mutex_t; -TYPEDEF struct { union { int __i[sizeof(long)==8?10:6]; volatile int __vi[sizeof(long)==8?10:6]; volatile void *volatile __p[sizeof(long)==8?5:6]; } __u; } mtx_t; -TYPEDEF struct { union { int __i[12]; volatile int __vi[12]; void *__p[12*sizeof(int)/sizeof(void*)]; } __u; } pthread_cond_t; -TYPEDEF struct { union { int __i[12]; volatile int __vi[12]; void *__p[12*sizeof(int)/sizeof(void*)]; } __u; } cnd_t; -TYPEDEF struct { union { int __i[sizeof(long)==8?14:8]; volatile int __vi[sizeof(long)==8?14:8]; void *__p[sizeof(long)==8?7:8]; } __u; } pthread_rwlock_t; -TYPEDEF struct { union { int __i[sizeof(long)==8?8:5]; volatile int __vi[sizeof(long)==8?8:5]; void *__p[sizeof(long)==8?4:5]; } __u; } pthread_barrier_t; - -#undef _Addr -#undef _Int64 -#undef _Reg diff --git a/lib/libc/musl/ldso/dlstart.c b/lib/libc/musl/ldso/dlstart.c index 20d50f2cbc8d..259f5e18eecf 100644 --- a/lib/libc/musl/ldso/dlstart.c +++ b/lib/libc/musl/ldso/dlstart.c @@ -140,6 +140,21 @@ hidden void _dlstart_c(size_t *sp, size_t *dynv) size_t *rel_addr = (void *)(base + rel[0]); *rel_addr = base + rel[2]; } + + rel = (void *)(base+dyn[DT_RELR]); + rel_size = dyn[DT_RELRSZ]; + size_t *relr_addr = 0; + for (; rel_size; rel++, rel_size-=sizeof(size_t)) { + if ((rel[0]&1) == 0) { + relr_addr = (void *)(base + rel[0]); + *relr_addr++ += base; + } else { + for (size_t i=0, bitmap=rel[0]; bitmap>>=1; i++) + if (bitmap&1) + relr_addr[i] += base; + relr_addr += 8*sizeof(size_t)-1; + } + } #endif stage2_func dls2; diff --git a/lib/std/Target.zig b/lib/std/Target.zig index 4610d11c0147..6d95533b33b2 100644 --- a/lib/std/Target.zig +++ b/lib/std/Target.zig @@ -761,6 +761,8 @@ pub const Abi = enum { android, androideabi, musl, + muslabin32, + muslabi64, musleabi, musleabihf, muslx32, @@ -931,6 +933,8 @@ pub const Abi = enum { pub inline fn isMusl(abi: Abi) bool { return switch (abi) { .musl, + .muslabin32, + .muslabi64, .musleabi, .musleabihf, .muslx32, @@ -2287,9 +2291,9 @@ pub const DynamicLinker = struct { .mips64, .mips64el, => |arch| initFmt("/lib/ld-musl-mips{s}{s}{s}.so.1", .{ - // TODO: `n32` ABI support in LLVM 20. switch (abi) { - .musl => "64", + .muslabi64 => "64", + .muslabin32 => "n32", else => return none, }, if (mips.featureSetHas(cpu.features, .mips64r6)) "r6" else "", @@ -2584,8 +2588,8 @@ pub fn standardDynamicLinkerPath(target: Target) DynamicLinker { pub fn ptrBitWidth_cpu_abi(cpu: Cpu, abi: Abi) u16 { switch (abi) { - .gnux32, .muslx32, .gnuabin32, .gnuilp32, .ilp32 => return 32, - .gnuabi64 => return 64, + .gnux32, .muslx32, .gnuabin32, .muslabin32, .gnuilp32, .ilp32 => return 32, + .gnuabi64, .muslabi64 => return 64, else => {}, } return switch (cpu.arch) { @@ -2788,7 +2792,10 @@ pub fn cTypeBitSize(target: Target, c_type: CType) u16 { .char => return 8, .short, .ushort => return 16, .int, .uint, .float => return 32, - .long, .ulong => return if (target.abi != .gnuabin32) 64 else 32, + .long, .ulong => switch (target.abi) { + .gnuabin32, .muslabin32 => return 32, + else => return 64, + }, .longlong, .ulonglong, .double => return 64, .longdouble => return 128, }, @@ -2821,6 +2828,8 @@ pub fn cTypeBitSize(target: Target, c_type: CType) u16 { .powerpc64le, => switch (target.abi) { .musl, + .muslabin32, + .muslabi64, .musleabi, .musleabihf, .muslx32, @@ -2876,7 +2885,10 @@ pub fn cTypeBitSize(target: Target, c_type: CType) u16 { .char => return 8, .short, .ushort => return 16, .int, .uint, .float => return 32, - .long, .ulong => return if (target.abi != .gnuabin32) 64 else 32, + .long, .ulong => switch (target.abi) { + .gnuabin32, .muslabin32 => return 32, + else => return 64, + }, .longlong, .ulonglong, .double => return 64, .longdouble => if (target.os.tag == .freebsd) return 64 else return 128, }, @@ -2907,6 +2919,8 @@ pub fn cTypeBitSize(target: Target, c_type: CType) u16 { .powerpcle, => switch (target.abi) { .musl, + .muslabin32, + .muslabi64, .musleabi, .musleabihf, .muslx32, @@ -2921,6 +2935,8 @@ pub fn cTypeBitSize(target: Target, c_type: CType) u16 { .powerpc64le, => switch (target.abi) { .musl, + .muslabin32, + .muslabi64, .musleabi, .musleabihf, .muslx32, diff --git a/lib/std/os/linux.zig b/lib/std/os/linux.zig index bccbba5aed19..43274671e1a8 100644 --- a/lib/std/os/linux.zig +++ b/lib/std/os/linux.zig @@ -122,27 +122,30 @@ pub const SECCOMP = @import("linux/seccomp.zig"); pub const syscalls = @import("linux/syscalls.zig"); pub const SYS = switch (@import("builtin").cpu.arch) { - .x86 => syscalls.X86, - .x86_64 => syscalls.X64, - .aarch64, .aarch64_be => syscalls.Arm64, .arc => syscalls.Arc, .arm, .armeb, .thumb, .thumbeb => syscalls.Arm, + .aarch64, .aarch64_be => syscalls.Arm64, .csky => syscalls.CSky, .hexagon => syscalls.Hexagon, + .loongarch64 => syscalls.LoongArch64, + .m68k => syscalls.M68k, + .mips, .mipsel => syscalls.MipsO32, + .mips64, .mips64el => switch (builtin.abi) { + .gnuabin32, .muslabin32 => syscalls.MipsN32, + else => syscalls.MipsN64, + }, .riscv32 => syscalls.RiscV32, .riscv64 => syscalls.RiscV64, + .s390x => syscalls.S390x, .sparc => syscalls.Sparc, .sparc64 => syscalls.Sparc64, - .loongarch64 => syscalls.LoongArch64, - .m68k => syscalls.M68k, - .mips, .mipsel => syscalls.MipsO32, - .mips64, .mips64el => if (builtin.abi == .gnuabin32) - syscalls.MipsN32 - else - syscalls.MipsN64, .powerpc, .powerpcle => syscalls.PowerPC, .powerpc64, .powerpc64le => syscalls.PowerPC64, - .s390x => syscalls.S390x, + .x86 => syscalls.X86, + .x86_64 => switch (builtin.abi) { + .gnux32, .muslx32 => syscalls.X32, + else => syscalls.X64, + }, .xtensa => syscalls.Xtensa, else => @compileError("The Zig Standard Library is missing syscall definitions for the target CPU architecture"), }; @@ -8657,11 +8660,11 @@ pub const AUDIT = struct { .mips => .MIPS, .mipsel => .MIPSEL, .mips64 => switch (native_abi) { - .gnuabin32 => .MIPS64N32, + .gnuabin32, .muslabin32 => .MIPS64N32, else => .MIPS64, }, .mips64el => switch (native_abi) { - .gnuabin32 => .MIPSEL64N32, + .gnuabin32, .muslabin32 => .MIPSEL64N32, else => .MIPSEL64, }, .powerpc => .PPC, diff --git a/lib/std/os/linux/syscalls.zig b/lib/std/os/linux/syscalls.zig index ef04387ea62d..fbf3aada02aa 100644 --- a/lib/std/os/linux/syscalls.zig +++ b/lib/std/os/linux/syscalls.zig @@ -833,6 +833,372 @@ pub const X64 = enum(usize) { mseal = 462, }; +pub const X32 = enum(usize) { + read = 0, + write = 1, + open = 2, + close = 3, + stat = 4, + fstat = 5, + lstat = 6, + poll = 7, + lseek = 8, + mmap = 9, + mprotect = 10, + munmap = 11, + brk = 12, + rt_sigprocmask = 14, + pread64 = 17, + pwrite64 = 18, + access = 21, + pipe = 22, + select = 23, + sched_yield = 24, + mremap = 25, + msync = 26, + mincore = 27, + madvise = 28, + shmget = 29, + shmat = 30, + shmctl = 31, + dup = 32, + dup2 = 33, + pause = 34, + nanosleep = 35, + getitimer = 36, + alarm = 37, + setitimer = 38, + getpid = 39, + sendfile = 40, + socket = 41, + connect = 42, + accept = 43, + sendto = 44, + shutdown = 48, + bind = 49, + listen = 50, + getsockname = 51, + getpeername = 52, + socketpair = 53, + clone = 56, + fork = 57, + vfork = 58, + exit = 60, + wait4 = 61, + kill = 62, + uname = 63, + semget = 64, + semop = 65, + semctl = 66, + shmdt = 67, + msgget = 68, + msgsnd = 69, + msgrcv = 70, + msgctl = 71, + fcntl = 72, + flock = 73, + fsync = 74, + fdatasync = 75, + truncate = 76, + ftruncate = 77, + getdents = 78, + getcwd = 79, + chdir = 80, + fchdir = 81, + rename = 82, + mkdir = 83, + rmdir = 84, + creat = 85, + link = 86, + unlink = 87, + symlink = 88, + readlink = 89, + chmod = 90, + fchmod = 91, + chown = 92, + fchown = 93, + lchown = 94, + umask = 95, + gettimeofday = 96, + getrlimit = 97, + getrusage = 98, + sysinfo = 99, + times = 100, + getuid = 102, + syslog = 103, + getgid = 104, + setuid = 105, + setgid = 106, + geteuid = 107, + getegid = 108, + setpgid = 109, + getppid = 110, + getpgrp = 111, + setsid = 112, + setreuid = 113, + setregid = 114, + getgroups = 115, + setgroups = 116, + setresuid = 117, + getresuid = 118, + setresgid = 119, + getresgid = 120, + getpgid = 121, + setfsuid = 122, + setfsgid = 123, + getsid = 124, + capget = 125, + capset = 126, + rt_sigsuspend = 130, + utime = 132, + mknod = 133, + personality = 135, + ustat = 136, + statfs = 137, + fstatfs = 138, + sysfs = 139, + getpriority = 140, + setpriority = 141, + sched_setparam = 142, + sched_getparam = 143, + sched_setscheduler = 144, + sched_getscheduler = 145, + sched_get_priority_max = 146, + sched_get_priority_min = 147, + sched_rr_get_interval = 148, + mlock = 149, + munlock = 150, + mlockall = 151, + munlockall = 152, + vhangup = 153, + modify_ldt = 154, + pivot_root = 155, + prctl = 157, + arch_prctl = 158, + adjtimex = 159, + setrlimit = 160, + chroot = 161, + sync = 162, + acct = 163, + settimeofday = 164, + mount = 165, + umount2 = 166, + swapon = 167, + swapoff = 168, + reboot = 169, + sethostname = 170, + setdomainname = 171, + iopl = 172, + ioperm = 173, + init_module = 175, + delete_module = 176, + quotactl = 179, + getpmsg = 181, + putpmsg = 182, + afs_syscall = 183, + tuxcall = 184, + security = 185, + gettid = 186, + readahead = 187, + setxattr = 188, + lsetxattr = 189, + fsetxattr = 190, + getxattr = 191, + lgetxattr = 192, + fgetxattr = 193, + listxattr = 194, + llistxattr = 195, + flistxattr = 196, + removexattr = 197, + lremovexattr = 198, + fremovexattr = 199, + tkill = 200, + time = 201, + futex = 202, + sched_setaffinity = 203, + sched_getaffinity = 204, + io_destroy = 207, + io_getevents = 208, + io_cancel = 210, + lookup_dcookie = 212, + epoll_create = 213, + remap_file_pages = 216, + getdents64 = 217, + set_tid_address = 218, + restart_syscall = 219, + semtimedop = 220, + fadvise64 = 221, + timer_settime = 223, + timer_gettime = 224, + timer_getoverrun = 225, + timer_delete = 226, + clock_settime = 227, + clock_gettime = 228, + clock_getres = 229, + clock_nanosleep = 230, + exit_group = 231, + epoll_wait = 232, + epoll_ctl = 233, + tgkill = 234, + utimes = 235, + mbind = 237, + set_mempolicy = 238, + get_mempolicy = 239, + mq_open = 240, + mq_unlink = 241, + mq_timedsend = 242, + mq_timedreceive = 243, + mq_getsetattr = 245, + add_key = 248, + request_key = 249, + keyctl = 250, + ioprio_set = 251, + ioprio_get = 252, + inotify_init = 253, + inotify_add_watch = 254, + inotify_rm_watch = 255, + migrate_pages = 256, + openat = 257, + mkdirat = 258, + mknodat = 259, + fchownat = 260, + futimesat = 261, + fstatat64 = 262, + unlinkat = 263, + renameat = 264, + linkat = 265, + symlinkat = 266, + readlinkat = 267, + fchmodat = 268, + faccessat = 269, + pselect6 = 270, + ppoll = 271, + unshare = 272, + splice = 275, + tee = 276, + sync_file_range = 277, + utimensat = 280, + epoll_pwait = 281, + signalfd = 282, + timerfd_create = 283, + eventfd = 284, + fallocate = 285, + timerfd_settime = 286, + timerfd_gettime = 287, + accept4 = 288, + signalfd4 = 289, + eventfd2 = 290, + epoll_create1 = 291, + dup3 = 292, + pipe2 = 293, + inotify_init1 = 294, + perf_event_open = 298, + fanotify_init = 300, + fanotify_mark = 301, + prlimit64 = 302, + name_to_handle_at = 303, + open_by_handle_at = 304, + clock_adjtime = 305, + syncfs = 306, + setns = 308, + getcpu = 309, + kcmp = 312, + finit_module = 313, + sched_setattr = 314, + sched_getattr = 315, + renameat2 = 316, + seccomp = 317, + getrandom = 318, + memfd_create = 319, + kexec_file_load = 320, + bpf = 321, + userfaultfd = 323, + membarrier = 324, + mlock2 = 325, + copy_file_range = 326, + pkey_mprotect = 329, + pkey_alloc = 330, + pkey_free = 331, + statx = 332, + io_pgetevents = 333, + rseq = 334, + pidfd_send_signal = 424, + io_uring_setup = 425, + io_uring_enter = 426, + io_uring_register = 427, + open_tree = 428, + move_mount = 429, + fsopen = 430, + fsconfig = 431, + fsmount = 432, + fspick = 433, + pidfd_open = 434, + clone3 = 435, + close_range = 436, + openat2 = 437, + pidfd_getfd = 438, + faccessat2 = 439, + process_madvise = 440, + epoll_pwait2 = 441, + mount_setattr = 442, + quotactl_fd = 443, + landlock_create_ruleset = 444, + landlock_add_rule = 445, + landlock_restrict_self = 446, + memfd_secret = 447, + process_mrelease = 448, + futex_waitv = 449, + set_mempolicy_home_node = 450, + cachestat = 451, + fchmodat2 = 452, + map_shadow_stack = 453, + futex_wake = 454, + futex_wait = 455, + futex_requeue = 456, + statmount = 457, + listmount = 458, + lsm_get_self_attr = 459, + lsm_set_self_attr = 460, + lsm_list_modules = 461, + mseal = 462, + rt_sigaction = 512, + rt_sigreturn = 513, + ioctl = 514, + readv = 515, + writev = 516, + recvfrom = 517, + sendmsg = 518, + recvmsg = 519, + execve = 520, + ptrace = 521, + rt_sigpending = 522, + rt_sigtimedwait = 523, + rt_sigqueueinfo = 524, + sigaltstack = 525, + timer_create = 526, + mq_notify = 527, + kexec_load = 528, + waitid = 529, + set_robust_list = 530, + get_robust_list = 531, + vmsplice = 532, + move_pages = 533, + preadv = 534, + pwritev = 535, + rt_tgsigqueueinfo = 536, + recvmmsg = 537, + sendmmsg = 538, + process_vm_readv = 539, + process_vm_writev = 540, + setsockopt = 541, + getsockopt = 542, + io_setup = 543, + io_submit = 544, + execveat = 545, + preadv2 = 546, + pwritev2 = 547, +}; + pub const Arm = enum(usize) { const arm_base = 0x0f0000; diff --git a/lib/std/zig/LibCDirs.zig b/lib/std/zig/LibCDirs.zig index 8b8a3a8d42e3..43c4c5d28fb9 100644 --- a/lib/std/zig/LibCDirs.zig +++ b/lib/std/zig/LibCDirs.zig @@ -167,21 +167,16 @@ pub fn detectFromBuilding( } const generic_name = libCGenericName(target); - // Some architectures are handled by the same set of headers. + // Some architecture families are handled by the same set of headers. const arch_name = if (target.abi.isMusl()) std.zig.target.muslArchNameHeaders(target.cpu.arch) - else if (target.cpu.arch.isThumb()) - // ARM headers are valid for Thumb too. - switch (target.cpu.arch) { - .thumb => "arm", - .thumbeb => "armeb", - else => unreachable, - } else @tagName(target.cpu.arch); const os_name = @tagName(target.os.tag); - // Musl's headers are ABI-agnostic and so they all have the "musl" ABI name. - const abi_name = if (target.abi.isMusl()) "musl" else @tagName(target.abi); + const abi_name = if (target.abi.isMusl()) + std.zig.target.muslAbiNameHeaders(target.abi) + else + @tagName(target.abi); const arch_include_dir = try std.fmt.allocPrint( arena, "{s}" ++ s ++ "libc" ++ s ++ "include" ++ s ++ "{s}-{s}-{s}", @@ -237,6 +232,8 @@ fn libCGenericName(target: std.Target) [:0]const u8 { .gnuilp32, => return "glibc", .musl, + .muslabin32, + .muslabi64, .musleabi, .musleabihf, .muslx32, diff --git a/lib/std/zig/system.zig b/lib/std/zig/system.zig index 15392d34f1d5..5eee0a38df49 100644 --- a/lib/std/zig/system.zig +++ b/lib/std/zig/system.zig @@ -91,16 +91,16 @@ pub fn getExternalExecutor( .mips => Executor{ .qemu = "qemu-mips" }, .mipsel => Executor{ .qemu = "qemu-mipsel" }, .mips64 => Executor{ - .qemu = if (candidate.abi == .gnuabin32) - "qemu-mipsn32" - else - "qemu-mips64", + .qemu = switch (candidate.abi) { + .gnuabin32, .muslabin32 => "qemu-mipsn32", + else => "qemu-mips64", + }, }, .mips64el => Executor{ - .qemu = if (candidate.abi == .gnuabin32) - "qemu-mipsn32el" - else - "qemu-mips64el", + .qemu = switch (candidate.abi) { + .gnuabin32, .muslabin32 => "qemu-mipsn32el", + else => "qemu-mips64el", + }, }, .powerpc => Executor{ .qemu = "qemu-ppc" }, .powerpc64 => Executor{ .qemu = "qemu-ppc64" }, diff --git a/lib/std/zig/target.zig b/lib/std/zig/target.zig index 6db17c1f71d9..c72b2219362c 100644 --- a/lib/std/zig/target.zig +++ b/lib/std/zig/target.zig @@ -46,10 +46,12 @@ pub const available_libcs = [_]ArchOsAbi{ .{ .arch = .mipsel, .os = .linux, .abi = .musleabihf }, .{ .arch = .mips64, .os = .linux, .abi = .gnuabi64 }, .{ .arch = .mips64, .os = .linux, .abi = .gnuabin32 }, - .{ .arch = .mips64, .os = .linux, .abi = .musl }, + .{ .arch = .mips64, .os = .linux, .abi = .muslabi64 }, + .{ .arch = .mips64, .os = .linux, .abi = .muslabin32 }, .{ .arch = .mips64el, .os = .linux, .abi = .gnuabi64 }, .{ .arch = .mips64el, .os = .linux, .abi = .gnuabin32 }, - .{ .arch = .mips64el, .os = .linux, .abi = .musl }, + .{ .arch = .mips64el, .os = .linux, .abi = .muslabi64 }, + .{ .arch = .mips64el, .os = .linux, .abi = .muslabin32 }, .{ .arch = .powerpc, .os = .linux, .abi = .gnueabi }, .{ .arch = .powerpc, .os = .linux, .abi = .gnueabihf }, .{ .arch = .powerpc, .os = .linux, .abi = .musleabi }, @@ -74,6 +76,7 @@ pub const available_libcs = [_]ArchOsAbi{ .{ .arch = .x86_64, .os = .linux, .abi = .gnu }, .{ .arch = .x86_64, .os = .linux, .abi = .gnux32 }, .{ .arch = .x86_64, .os = .linux, .abi = .musl }, + .{ .arch = .x86_64, .os = .linux, .abi = .muslx32 }, .{ .arch = .x86_64, .os = .macos, .abi = .none, .os_ver = .{ .major = 10, .minor = 7, .patch = 0 } }, .{ .arch = .x86_64, .os = .windows, .abi = .gnu }, }; @@ -97,31 +100,43 @@ pub fn canBuildLibC(target: std.Target) bool { return false; } +pub fn muslArchName(arch: std.Target.Cpu.Arch, abi: std.Target.Abi) [:0]const u8 { + return switch (abi) { + .muslabin32 => "mipsn32", + .muslx32 => "x32", + else => switch (arch) { + .arm, .armeb, .thumb, .thumbeb => "arm", + .aarch64, .aarch64_be => "aarch64", + .loongarch64 => "loongarch64", + .m68k => "m68k", + .mips, .mipsel => "mips", + .mips64el, .mips64 => "mips64", + .powerpc => "powerpc", + .powerpc64, .powerpc64le => "powerpc64", + .riscv32 => "riscv32", + .riscv64 => "riscv64", + .s390x => "s390x", + .wasm32, .wasm64 => "wasm", + .x86 => "i386", + .x86_64 => "x86_64", + else => unreachable, + }, + }; +} + pub fn muslArchNameHeaders(arch: std.Target.Cpu.Arch) [:0]const u8 { return switch (arch) { - .x86 => return "x86", - else => muslArchName(arch), + .x86 => "x86", + else => muslArchName(arch, .musl), }; } -pub fn muslArchName(arch: std.Target.Cpu.Arch) [:0]const u8 { - switch (arch) { - .aarch64, .aarch64_be => return "aarch64", - .arm, .armeb, .thumb, .thumbeb => return "arm", - .x86 => return "i386", - .loongarch64 => return "loongarch64", - .m68k => return "m68k", - .mips, .mipsel => return "mips", - .mips64el, .mips64 => return "mips64", - .powerpc => return "powerpc", - .powerpc64, .powerpc64le => return "powerpc64", - .riscv32 => return "riscv32", - .riscv64 => return "riscv64", - .s390x => return "s390x", - .wasm32, .wasm64 => return "wasm", - .x86_64 => return "x86_64", - else => unreachable, - } +pub fn muslAbiNameHeaders(abi: std.Target.Abi) [:0]const u8 { + return switch (abi) { + .muslabin32 => "muslabin32", + .muslx32 => "muslx32", + else => "musl", + }; } pub fn isLibCLibName(target: std.Target, name: []const u8) bool { diff --git a/src/codegen/llvm.zig b/src/codegen/llvm.zig index fc7d26a815f8..74c1bb1f5d20 100644 --- a/src/codegen/llvm.zig +++ b/src/codegen/llvm.zig @@ -263,13 +263,15 @@ pub fn targetTriple(allocator: Allocator, target: std.Target) ![]const u8 { .gnuf32 => "gnuf32", .gnusf => "gnusf", .gnux32 => "gnux32", - .gnuilp32 => "gnuilp32", + .gnuilp32 => "gnu_ilp32", .code16 => "code16", .eabi => "eabi", .eabihf => "eabihf", .android => "android", .androideabi => "androideabi", .musl => "musl", + .muslabin32 => "musl", // Should be muslabin32 in LLVM 20. + .muslabi64 => "musl", // Should be muslabi64 in LLVM 20. .musleabi => "musleabi", .musleabihf => "musleabihf", .muslx32 => "muslx32", diff --git a/src/glibc.zig b/src/glibc.zig index a7736a98274c..fff050b31192 100644 --- a/src/glibc.zig +++ b/src/glibc.zig @@ -1015,7 +1015,7 @@ pub fn buildSharedObjects(comp: *Compilation, prog_node: std.Progress.Node) !voi } } - try stubs_asm.appendSlice(".data\n"); + try stubs_asm.appendSlice(".rodata\n"); // For some targets, the real `libc.so.6` will contain a weak reference to `_IO_stdin_used`, // making the linker put the symbol in the dynamic symbol table. We likewise need to emit a @@ -1046,6 +1046,8 @@ pub fn buildSharedObjects(comp: *Compilation, prog_node: std.Progress.Node) !voi }); } + try stubs_asm.appendSlice(".data\n"); + const obj_inclusions_len = try inc_reader.readInt(u16, .little); sym_i = 0; diff --git a/src/link/Elf.zig b/src/link/Elf.zig index ccc9e24bf680..840ea02f5d68 100644 --- a/src/link/Elf.zig +++ b/src/link/Elf.zig @@ -4100,21 +4100,21 @@ fn getLDMOption(target: std.Target) ?[]const u8 { }, .mips64 => switch (target.os.tag) { .freebsd => switch (target.abi) { - .gnuabin32 => "elf32btsmipn32_fbsd", + .gnuabin32, .muslabin32 => "elf32btsmipn32_fbsd", else => "elf64btsmip_fbsd", }, else => switch (target.abi) { - .gnuabin32 => "elf32btsmipn32", + .gnuabin32, .muslabin32 => "elf32btsmipn32", else => "elf64btsmip", }, }, .mips64el => switch (target.os.tag) { .freebsd => switch (target.abi) { - .gnuabin32 => "elf32ltsmipn32_fbsd", + .gnuabin32, .muslabin32 => "elf32ltsmipn32_fbsd", else => "elf64ltsmip_fbsd", }, else => switch (target.abi) { - .gnuabin32 => "elf32ltsmipn32", + .gnuabin32, .muslabin32 => "elf32ltsmipn32", else => "elf64ltsmip", }, }, diff --git a/src/musl.zig b/src/musl.zig index 975929a59dea..01dcd8874393 100644 --- a/src/musl.zig +++ b/src/musl.zig @@ -4,7 +4,6 @@ const mem = std.mem; const path = std.fs.path; const assert = std.debug.assert; const Module = @import("Package/Module.zig"); -const archName = std.zig.target.muslArchName; const Compilation = @import("Compilation.zig"); const build_options = @import("build_options"); @@ -113,7 +112,7 @@ pub fn buildCrtFile(comp: *Compilation, in_crt_file: CrtFile, prog_node: std.Pro // When there is a src//foo.* then it should substitute for src/foo.* // Even a .s file can substitute for a .c file. const target = comp.getTarget(); - const arch_name = archName(target.cpu.arch); + const arch_name = std.zig.target.muslArchName(target.cpu.arch, target.abi); var source_table = std.StringArrayHashMap(Ext).init(comp.gpa); defer source_table.deinit(); @@ -123,7 +122,17 @@ pub fn buildCrtFile(comp: *Compilation, in_crt_file: CrtFile, prog_node: std.Pro try addSrcFile(arena, &source_table, src_file); } - const time32_compat_arch_list = [_][]const u8{ "arm", "i386", "mips", "powerpc", "m68k" }; + const time32_compat_arch_list = [_][]const u8{ + "arm", + "i386", + "m68k", + "microblaze", + "mips", + "mipsn32", + "or1k", + "powerpc", + "sh", + }; for (time32_compat_arch_list) |time32_compat_arch| { if (mem.eql(u8, arch_name, time32_compat_arch)) { for (compat_time32_files) |compat_time32_file| { @@ -152,7 +161,7 @@ pub fn buildCrtFile(comp: *Compilation, in_crt_file: CrtFile, prog_node: std.Pro var is_arch_specific = false; // Architecture-specific implementations are under a / folder. - if (isMuslArchName(dirbasename)) { + if (isArchName(dirbasename)) { if (!mem.eql(u8, dirbasename, arch_name)) continue; // Not the architecture we're compiling for. is_arch_specific = true; @@ -296,8 +305,13 @@ pub fn buildCrtFile(comp: *Compilation, in_crt_file: CrtFile, prog_node: std.Pro /// See lib/libc/musl/crt/ARCH/crt?.s . pub fn needsCrtiCrtn(target: std.Target) bool { return switch (target.cpu.arch) { - .riscv32, .riscv64, .wasm32, .wasm64 => false, - .loongarch64 => false, + .loongarch64, + .m68k, + .riscv32, + .riscv64, + .wasm32, + .wasm64, + => false, else => true, }; } @@ -312,7 +326,7 @@ pub fn needsCrt0(output_mode: std.builtin.OutputMode, link_mode: std.builtin.Lin }; } -fn isMuslArchName(name: []const u8) bool { +fn isArchName(name: []const u8) bool { const musl_arch_names = [_][]const u8{ "aarch64", "arm", @@ -386,10 +400,12 @@ fn addCcArgs( want_O3: bool, ) error{OutOfMemory}!void { const target = comp.getTarget(); - const arch_name = archName(target.cpu.arch); + const arch_name = std.zig.target.muslArchName(target.cpu.arch, target.abi); const os_name = @tagName(target.os.tag); - const triple = try std.fmt.allocPrint(arena, "{s}-{s}-musl", .{ - std.zig.target.muslArchNameHeaders(target.cpu.arch), os_name, + const triple = try std.fmt.allocPrint(arena, "{s}-{s}-{s}", .{ + std.zig.target.muslArchNameHeaders(target.cpu.arch), + os_name, + std.zig.target.muslAbiNameHeaders(target.abi), }); const o_arg = if (want_O3) "-O3" else "-Os"; @@ -445,7 +461,7 @@ fn addCcArgs( fn start_asm_path(comp: *Compilation, arena: Allocator, basename: []const u8) ![]const u8 { const target = comp.getTarget(); return comp.zig_lib_directory.join(arena, &[_][]const u8{ - "libc", "musl", "crt", archName(target.cpu.arch), basename, + "libc", "musl", "crt", std.zig.target.muslArchName(target.cpu.arch, target.abi), basename, }); } @@ -453,8 +469,6 @@ const src_files = [_][]const u8{ "musl/src/aio/aio.c", "musl/src/aio/aio_suspend.c", "musl/src/aio/lio_listio.c", - "musl/src/complex/__cexp.c", - "musl/src/complex/__cexpf.c", "musl/src/complex/cabs.c", "musl/src/complex/cabsf.c", "musl/src/complex/cabsl.c", @@ -485,7 +499,9 @@ const src_files = [_][]const u8{ "musl/src/complex/ccoshf.c", "musl/src/complex/ccoshl.c", "musl/src/complex/ccosl.c", + "musl/src/complex/__cexp.c", "musl/src/complex/cexp.c", + "musl/src/complex/__cexpf.c", "musl/src/complex/cexpf.c", "musl/src/complex/cexpl.c", "musl/src/complex/cimag.c", @@ -526,8 +542,8 @@ const src_files = [_][]const u8{ "musl/src/conf/legacy.c", "musl/src/conf/pathconf.c", "musl/src/conf/sysconf.c", - "musl/src/crypt/crypt.c", "musl/src/crypt/crypt_blowfish.c", + "musl/src/crypt/crypt.c", "musl/src/crypt/crypt_des.c", "musl/src/crypt/crypt_md5.c", "musl/src/crypt/crypt_r.c", @@ -583,60 +599,60 @@ const src_files = [_][]const u8{ "musl/src/dirent/seekdir.c", "musl/src/dirent/telldir.c", "musl/src/dirent/versionsort.c", + "musl/src/env/clearenv.c", "musl/src/env/__environ.c", + "musl/src/env/getenv.c", "musl/src/env/__init_tls.c", "musl/src/env/__libc_start_main.c", - "musl/src/env/__reset_tls.c", - "musl/src/env/__stack_chk_fail.c", - "musl/src/env/clearenv.c", - "musl/src/env/getenv.c", "musl/src/env/putenv.c", + "musl/src/env/__reset_tls.c", "musl/src/env/secure_getenv.c", "musl/src/env/setenv.c", + "musl/src/env/__stack_chk_fail.c", "musl/src/env/unsetenv.c", "musl/src/errno/__errno_location.c", "musl/src/errno/strerror.c", - "musl/src/exit/_Exit.c", "musl/src/exit/abort.c", "musl/src/exit/abort_lock.c", "musl/src/exit/arm/__aeabi_atexit.c", "musl/src/exit/assert.c", - "musl/src/exit/at_quick_exit.c", "musl/src/exit/atexit.c", + "musl/src/exit/at_quick_exit.c", "musl/src/exit/exit.c", + "musl/src/exit/_Exit.c", "musl/src/exit/quick_exit.c", "musl/src/fcntl/creat.c", "musl/src/fcntl/fcntl.c", - "musl/src/fcntl/open.c", "musl/src/fcntl/openat.c", + "musl/src/fcntl/open.c", "musl/src/fcntl/posix_fadvise.c", "musl/src/fcntl/posix_fallocate.c", - "musl/src/fenv/__flt_rounds.c", "musl/src/fenv/aarch64/fenv.s", - "musl/src/fenv/arm/fenv-hf.S", "musl/src/fenv/arm/fenv.c", + "musl/src/fenv/arm/fenv-hf.S", "musl/src/fenv/fegetexceptflag.c", "musl/src/fenv/feholdexcept.c", "musl/src/fenv/fenv.c", "musl/src/fenv/fesetexceptflag.c", "musl/src/fenv/fesetround.c", "musl/src/fenv/feupdateenv.c", + "musl/src/fenv/__flt_rounds.c", "musl/src/fenv/i386/fenv.s", "musl/src/fenv/loongarch64/fenv.S", "musl/src/fenv/m68k/fenv.c", - "musl/src/fenv/mips/fenv-sf.c", - "musl/src/fenv/mips/fenv.S", - "musl/src/fenv/mips64/fenv-sf.c", "musl/src/fenv/mips64/fenv.S", - "musl/src/fenv/mipsn32/fenv-sf.c", + "musl/src/fenv/mips64/fenv-sf.c", + "musl/src/fenv/mips/fenv.S", + "musl/src/fenv/mips/fenv-sf.c", "musl/src/fenv/mipsn32/fenv.S", - "musl/src/fenv/powerpc/fenv-sf.c", - "musl/src/fenv/powerpc/fenv.S", + "musl/src/fenv/mipsn32/fenv-sf.c", "musl/src/fenv/powerpc64/fenv.c", - "musl/src/fenv/riscv32/fenv-sf.c", + "musl/src/fenv/powerpc/fenv.S", + "musl/src/fenv/powerpc/fenv-sf.c", "musl/src/fenv/riscv32/fenv.S", - "musl/src/fenv/riscv64/fenv-sf.c", + "musl/src/fenv/riscv32/fenv-sf.c", "musl/src/fenv/riscv64/fenv.S", + "musl/src/fenv/riscv64/fenv-sf.c", "musl/src/fenv/s390x/fenv.c", "musl/src/fenv/sh/fenv-nofpu.c", "musl/src/fenv/sh/fenv.S", @@ -649,8 +665,8 @@ const src_files = [_][]const u8{ "musl/src/internal/intscan.c", "musl/src/internal/libc.c", "musl/src/internal/procfdname.c", - "musl/src/internal/sh/__shcall.c", "musl/src/internal/shgetc.c", + "musl/src/internal/sh/__shcall.c", "musl/src/internal/syscall_ret.c", "musl/src/internal/vdso.c", "musl/src/internal/version.c", @@ -667,19 +683,19 @@ const src_files = [_][]const u8{ "musl/src/ipc/shmctl.c", "musl/src/ipc/shmdt.c", "musl/src/ipc/shmget.c", - "musl/src/ldso/__dlsym.c", "musl/src/ldso/aarch64/dlsym.s", "musl/src/ldso/aarch64/tlsdesc.s", "musl/src/ldso/arm/dlsym.s", "musl/src/ldso/arm/dlsym_time64.S", "musl/src/ldso/arm/find_exidx.c", "musl/src/ldso/arm/tlsdesc.S", - "musl/src/ldso/dl_iterate_phdr.c", "musl/src/ldso/dladdr.c", "musl/src/ldso/dlclose.c", "musl/src/ldso/dlerror.c", "musl/src/ldso/dlinfo.c", + "musl/src/ldso/dl_iterate_phdr.c", "musl/src/ldso/dlopen.c", + "musl/src/ldso/__dlsym.c", "musl/src/ldso/dlsym.c", "musl/src/ldso/i386/dlsym.s", "musl/src/ldso/i386/dlsym_time64.S", @@ -689,16 +705,16 @@ const src_files = [_][]const u8{ "musl/src/ldso/m68k/dlsym_time64.S", "musl/src/ldso/microblaze/dlsym.s", "musl/src/ldso/microblaze/dlsym_time64.S", + "musl/src/ldso/mips64/dlsym.s", "musl/src/ldso/mips/dlsym.s", "musl/src/ldso/mips/dlsym_time64.S", - "musl/src/ldso/mips64/dlsym.s", "musl/src/ldso/mipsn32/dlsym.s", "musl/src/ldso/mipsn32/dlsym_time64.S", "musl/src/ldso/or1k/dlsym.s", "musl/src/ldso/or1k/dlsym_time64.S", + "musl/src/ldso/powerpc64/dlsym.s", "musl/src/ldso/powerpc/dlsym.s", "musl/src/ldso/powerpc/dlsym_time64.S", - "musl/src/ldso/powerpc64/dlsym.s", "musl/src/ldso/riscv32/dlsym.s", "musl/src/ldso/riscv64/dlsym.s", "musl/src/ldso/riscv64/tlsdesc.s", @@ -792,21 +808,21 @@ const src_files = [_][]const u8{ "musl/src/linux/wait4.c", "musl/src/linux/x32/sysinfo.c", "musl/src/linux/xattr.c", - "musl/src/locale/__lctrans.c", - "musl/src/locale/__mo_lookup.c", "musl/src/locale/bind_textdomain_codeset.c", - "musl/src/locale/c_locale.c", "musl/src/locale/catclose.c", "musl/src/locale/catgets.c", "musl/src/locale/catopen.c", + "musl/src/locale/c_locale.c", "musl/src/locale/dcngettext.c", "musl/src/locale/duplocale.c", "musl/src/locale/freelocale.c", "musl/src/locale/iconv.c", "musl/src/locale/iconv_close.c", "musl/src/locale/langinfo.c", - "musl/src/locale/locale_map.c", + "musl/src/locale/__lctrans.c", "musl/src/locale/localeconv.c", + "musl/src/locale/locale_map.c", + "musl/src/locale/__mo_lookup.c", "musl/src/locale/newlocale.c", "musl/src/locale/pleval.c", "musl/src/locale/setlocale.c", @@ -833,43 +849,9 @@ const src_files = [_][]const u8{ "musl/src/malloc/oldmalloc/malloc.c", "musl/src/malloc/oldmalloc/malloc_usable_size.c", "musl/src/malloc/posix_memalign.c", - "musl/src/malloc/realloc.c", "musl/src/malloc/reallocarray.c", + "musl/src/malloc/realloc.c", "musl/src/malloc/replaced.c", - "musl/src/math/__cos.c", - "musl/src/math/__cosdf.c", - "musl/src/math/__cosl.c", - "musl/src/math/__expo2.c", - "musl/src/math/__expo2f.c", - "musl/src/math/__fpclassify.c", - "musl/src/math/__fpclassifyf.c", - "musl/src/math/__fpclassifyl.c", - "musl/src/math/__invtrigl.c", - "musl/src/math/__math_divzero.c", - "musl/src/math/__math_divzerof.c", - "musl/src/math/__math_invalid.c", - "musl/src/math/__math_invalidf.c", - "musl/src/math/__math_invalidl.c", - "musl/src/math/__math_oflow.c", - "musl/src/math/__math_oflowf.c", - "musl/src/math/__math_uflow.c", - "musl/src/math/__math_uflowf.c", - "musl/src/math/__math_xflow.c", - "musl/src/math/__math_xflowf.c", - "musl/src/math/__polevll.c", - "musl/src/math/__rem_pio2.c", - "musl/src/math/__rem_pio2_large.c", - "musl/src/math/__rem_pio2f.c", - "musl/src/math/__rem_pio2l.c", - "musl/src/math/__signbit.c", - "musl/src/math/__signbitf.c", - "musl/src/math/__signbitl.c", - "musl/src/math/__sin.c", - "musl/src/math/__sindf.c", - "musl/src/math/__sinl.c", - "musl/src/math/__tan.c", - "musl/src/math/__tandf.c", - "musl/src/math/__tanl.c", "musl/src/math/aarch64/ceil.c", "musl/src/math/aarch64/ceilf.c", "musl/src/math/aarch64/fabs.c", @@ -918,10 +900,10 @@ const src_files = [_][]const u8{ "musl/src/math/asinhf.c", "musl/src/math/asinhl.c", "musl/src/math/asinl.c", - "musl/src/math/atan.c", "musl/src/math/atan2.c", "musl/src/math/atan2f.c", "musl/src/math/atan2l.c", + "musl/src/math/atan.c", "musl/src/math/atanf.c", "musl/src/math/atanh.c", "musl/src/math/atanhf.c", @@ -936,16 +918,18 @@ const src_files = [_][]const u8{ "musl/src/math/copysign.c", "musl/src/math/copysignf.c", "musl/src/math/copysignl.c", + "musl/src/math/__cos.c", "musl/src/math/cos.c", + "musl/src/math/__cosdf.c", "musl/src/math/cosf.c", "musl/src/math/cosh.c", "musl/src/math/coshf.c", "musl/src/math/coshl.c", + "musl/src/math/__cosl.c", "musl/src/math/cosl.c", "musl/src/math/erf.c", "musl/src/math/erff.c", "musl/src/math/erfl.c", - "musl/src/math/exp.c", "musl/src/math/exp10.c", "musl/src/math/exp10f.c", "musl/src/math/exp10l.c", @@ -953,12 +937,15 @@ const src_files = [_][]const u8{ "musl/src/math/exp2f.c", "musl/src/math/exp2f_data.c", "musl/src/math/exp2l.c", + "musl/src/math/exp.c", "musl/src/math/exp_data.c", "musl/src/math/expf.c", "musl/src/math/expl.c", "musl/src/math/expm1.c", "musl/src/math/expm1f.c", "musl/src/math/expm1l.c", + "musl/src/math/__expo2.c", + "musl/src/math/__expo2f.c", "musl/src/math/fabs.c", "musl/src/math/fabsf.c", "musl/src/math/fabsl.c", @@ -982,28 +969,30 @@ const src_files = [_][]const u8{ "musl/src/math/fmod.c", "musl/src/math/fmodf.c", "musl/src/math/fmodl.c", + "musl/src/math/__fpclassify.c", + "musl/src/math/__fpclassifyf.c", + "musl/src/math/__fpclassifyl.c", "musl/src/math/frexp.c", "musl/src/math/frexpf.c", "musl/src/math/frexpl.c", "musl/src/math/hypot.c", "musl/src/math/hypotf.c", "musl/src/math/hypotl.c", - "musl/src/math/i386/__invtrigl.s", - "musl/src/math/i386/acos.s", "musl/src/math/i386/acosf.s", "musl/src/math/i386/acosl.s", - "musl/src/math/i386/asin.s", + "musl/src/math/i386/acos.s", "musl/src/math/i386/asinf.s", "musl/src/math/i386/asinl.s", - "musl/src/math/i386/atan.s", - "musl/src/math/i386/atan2.s", + "musl/src/math/i386/asin.s", "musl/src/math/i386/atan2f.s", "musl/src/math/i386/atan2l.s", + "musl/src/math/i386/atan2.s", "musl/src/math/i386/atanf.s", "musl/src/math/i386/atanl.s", - "musl/src/math/i386/ceil.s", + "musl/src/math/i386/atan.s", "musl/src/math/i386/ceilf.s", "musl/src/math/i386/ceill.s", + "musl/src/math/i386/ceil.s", "musl/src/math/i386/exp2l.s", "musl/src/math/i386/exp_ld.s", "musl/src/math/i386/expl.s", @@ -1011,59 +1000,61 @@ const src_files = [_][]const u8{ "musl/src/math/i386/fabs.c", "musl/src/math/i386/fabsf.c", "musl/src/math/i386/fabsl.c", - "musl/src/math/i386/floor.s", "musl/src/math/i386/floorf.s", "musl/src/math/i386/floorl.s", + "musl/src/math/i386/floor.s", "musl/src/math/i386/fmod.c", "musl/src/math/i386/fmodf.c", "musl/src/math/i386/fmodl.c", - "musl/src/math/i386/hypot.s", "musl/src/math/i386/hypotf.s", - "musl/src/math/i386/ldexp.s", + "musl/src/math/i386/hypot.s", + "musl/src/math/i386/__invtrigl.s", "musl/src/math/i386/ldexpf.s", "musl/src/math/i386/ldexpl.s", + "musl/src/math/i386/ldexp.s", "musl/src/math/i386/llrint.c", "musl/src/math/i386/llrintf.c", "musl/src/math/i386/llrintl.c", - "musl/src/math/i386/log.s", - "musl/src/math/i386/log10.s", "musl/src/math/i386/log10f.s", "musl/src/math/i386/log10l.s", - "musl/src/math/i386/log1p.s", + "musl/src/math/i386/log10.s", "musl/src/math/i386/log1pf.s", "musl/src/math/i386/log1pl.s", - "musl/src/math/i386/log2.s", + "musl/src/math/i386/log1p.s", "musl/src/math/i386/log2f.s", "musl/src/math/i386/log2l.s", + "musl/src/math/i386/log2.s", "musl/src/math/i386/logf.s", "musl/src/math/i386/logl.s", + "musl/src/math/i386/log.s", "musl/src/math/i386/lrint.c", "musl/src/math/i386/lrintf.c", "musl/src/math/i386/lrintl.c", "musl/src/math/i386/remainder.c", "musl/src/math/i386/remainderf.c", "musl/src/math/i386/remainderl.c", - "musl/src/math/i386/remquo.s", "musl/src/math/i386/remquof.s", "musl/src/math/i386/remquol.s", + "musl/src/math/i386/remquo.s", "musl/src/math/i386/rint.c", "musl/src/math/i386/rintf.c", "musl/src/math/i386/rintl.c", - "musl/src/math/i386/scalbln.s", "musl/src/math/i386/scalblnf.s", "musl/src/math/i386/scalblnl.s", - "musl/src/math/i386/scalbn.s", + "musl/src/math/i386/scalbln.s", "musl/src/math/i386/scalbnf.s", "musl/src/math/i386/scalbnl.s", + "musl/src/math/i386/scalbn.s", "musl/src/math/i386/sqrt.c", "musl/src/math/i386/sqrtf.c", "musl/src/math/i386/sqrtl.c", - "musl/src/math/i386/trunc.s", "musl/src/math/i386/truncf.s", "musl/src/math/i386/truncl.s", + "musl/src/math/i386/trunc.s", "musl/src/math/ilogb.c", "musl/src/math/ilogbf.c", "musl/src/math/ilogbl.c", + "musl/src/math/__invtrigl.c", "musl/src/math/j0.c", "musl/src/math/j0f.c", "musl/src/math/j1.c", @@ -1074,17 +1065,16 @@ const src_files = [_][]const u8{ "musl/src/math/ldexpf.c", "musl/src/math/ldexpl.c", "musl/src/math/lgamma.c", - "musl/src/math/lgamma_r.c", "musl/src/math/lgammaf.c", "musl/src/math/lgammaf_r.c", "musl/src/math/lgammal.c", + "musl/src/math/lgamma_r.c", "musl/src/math/llrint.c", "musl/src/math/llrintf.c", "musl/src/math/llrintl.c", "musl/src/math/llround.c", "musl/src/math/llroundf.c", "musl/src/math/llroundl.c", - "musl/src/math/log.c", "musl/src/math/log10.c", "musl/src/math/log10f.c", "musl/src/math/log10l.c", @@ -1096,10 +1086,11 @@ const src_files = [_][]const u8{ "musl/src/math/log2f.c", "musl/src/math/log2f_data.c", "musl/src/math/log2l.c", - "musl/src/math/log_data.c", "musl/src/math/logb.c", "musl/src/math/logbf.c", "musl/src/math/logbl.c", + "musl/src/math/log.c", + "musl/src/math/log_data.c", "musl/src/math/logf.c", "musl/src/math/logf_data.c", "musl/src/math/logl.c", @@ -1110,6 +1101,17 @@ const src_files = [_][]const u8{ "musl/src/math/lroundf.c", "musl/src/math/lroundl.c", "musl/src/math/m68k/sqrtl.c", + "musl/src/math/__math_divzero.c", + "musl/src/math/__math_divzerof.c", + "musl/src/math/__math_invalid.c", + "musl/src/math/__math_invalidf.c", + "musl/src/math/__math_invalidl.c", + "musl/src/math/__math_oflow.c", + "musl/src/math/__math_oflowf.c", + "musl/src/math/__math_uflow.c", + "musl/src/math/__math_uflowf.c", + "musl/src/math/__math_xflow.c", + "musl/src/math/__math_xflowf.c", "musl/src/math/mips/fabs.c", "musl/src/math/mips/fabsf.c", "musl/src/math/mips/sqrt.c", @@ -1129,14 +1131,9 @@ const src_files = [_][]const u8{ "musl/src/math/nexttoward.c", "musl/src/math/nexttowardf.c", "musl/src/math/nexttowardl.c", + "musl/src/math/__polevll.c", "musl/src/math/pow.c", "musl/src/math/pow_data.c", - "musl/src/math/powerpc/fabs.c", - "musl/src/math/powerpc/fabsf.c", - "musl/src/math/powerpc/fma.c", - "musl/src/math/powerpc/fmaf.c", - "musl/src/math/powerpc/sqrt.c", - "musl/src/math/powerpc/sqrtf.c", "musl/src/math/powerpc64/ceil.c", "musl/src/math/powerpc64/ceilf.c", "musl/src/math/powerpc64/fabs.c", @@ -1159,12 +1156,22 @@ const src_files = [_][]const u8{ "musl/src/math/powerpc64/sqrtf.c", "musl/src/math/powerpc64/trunc.c", "musl/src/math/powerpc64/truncf.c", + "musl/src/math/powerpc/fabs.c", + "musl/src/math/powerpc/fabsf.c", + "musl/src/math/powerpc/fma.c", + "musl/src/math/powerpc/fmaf.c", + "musl/src/math/powerpc/sqrt.c", + "musl/src/math/powerpc/sqrtf.c", "musl/src/math/powf.c", "musl/src/math/powf_data.c", "musl/src/math/powl.c", "musl/src/math/remainder.c", "musl/src/math/remainderf.c", "musl/src/math/remainderl.c", + "musl/src/math/__rem_pio2.c", + "musl/src/math/__rem_pio2f.c", + "musl/src/math/__rem_pio2_large.c", + "musl/src/math/__rem_pio2l.c", "musl/src/math/remquo.c", "musl/src/math/remquof.c", "musl/src/math/remquol.c", @@ -1232,27 +1239,36 @@ const src_files = [_][]const u8{ "musl/src/math/scalbn.c", "musl/src/math/scalbnf.c", "musl/src/math/scalbnl.c", + "musl/src/math/__signbit.c", + "musl/src/math/__signbitf.c", + "musl/src/math/__signbitl.c", "musl/src/math/signgam.c", "musl/src/math/significand.c", "musl/src/math/significandf.c", + "musl/src/math/__sin.c", "musl/src/math/sin.c", "musl/src/math/sincos.c", "musl/src/math/sincosf.c", "musl/src/math/sincosl.c", + "musl/src/math/__sindf.c", "musl/src/math/sinf.c", "musl/src/math/sinh.c", "musl/src/math/sinhf.c", "musl/src/math/sinhl.c", + "musl/src/math/__sinl.c", "musl/src/math/sinl.c", "musl/src/math/sqrt.c", "musl/src/math/sqrt_data.c", "musl/src/math/sqrtf.c", "musl/src/math/sqrtl.c", + "musl/src/math/__tan.c", "musl/src/math/tan.c", + "musl/src/math/__tandf.c", "musl/src/math/tanf.c", "musl/src/math/tanh.c", "musl/src/math/tanhf.c", "musl/src/math/tanhl.c", + "musl/src/math/__tanl.c", "musl/src/math/tanl.c", "musl/src/math/tgamma.c", "musl/src/math/tgammaf.c", @@ -1260,7 +1276,6 @@ const src_files = [_][]const u8{ "musl/src/math/trunc.c", "musl/src/math/truncf.c", "musl/src/math/truncl.c", - "musl/src/math/x32/__invtrigl.s", "musl/src/math/x32/acosl.s", "musl/src/math/x32/asinl.s", "musl/src/math/x32/atan2l.s", @@ -1269,30 +1284,30 @@ const src_files = [_][]const u8{ "musl/src/math/x32/exp2l.s", "musl/src/math/x32/expl.s", "musl/src/math/x32/expm1l.s", - "musl/src/math/x32/fabs.s", "musl/src/math/x32/fabsf.s", "musl/src/math/x32/fabsl.s", + "musl/src/math/x32/fabs.s", "musl/src/math/x32/floorl.s", "musl/src/math/x32/fma.c", "musl/src/math/x32/fmaf.c", "musl/src/math/x32/fmodl.s", - "musl/src/math/x32/llrint.s", + "musl/src/math/x32/__invtrigl.s", "musl/src/math/x32/llrintf.s", "musl/src/math/x32/llrintl.s", + "musl/src/math/x32/llrint.s", "musl/src/math/x32/log10l.s", "musl/src/math/x32/log1pl.s", "musl/src/math/x32/log2l.s", "musl/src/math/x32/logl.s", - "musl/src/math/x32/lrint.s", "musl/src/math/x32/lrintf.s", "musl/src/math/x32/lrintl.s", + "musl/src/math/x32/lrint.s", "musl/src/math/x32/remainderl.s", "musl/src/math/x32/rintl.s", - "musl/src/math/x32/sqrt.s", "musl/src/math/x32/sqrtf.s", "musl/src/math/x32/sqrtl.s", + "musl/src/math/x32/sqrt.s", "musl/src/math/x32/truncl.s", - "musl/src/math/x86_64/__invtrigl.s", "musl/src/math/x86_64/acosl.s", "musl/src/math/x86_64/asinl.s", "musl/src/math/x86_64/atan2l.s", @@ -1308,6 +1323,7 @@ const src_files = [_][]const u8{ "musl/src/math/x86_64/fma.c", "musl/src/math/x86_64/fmaf.c", "musl/src/math/x86_64/fmodl.c", + "musl/src/math/x86_64/__invtrigl.s", "musl/src/math/x86_64/llrint.c", "musl/src/math/x86_64/llrintf.c", "musl/src/math/x86_64/llrintl.c", @@ -1333,8 +1349,8 @@ const src_files = [_][]const u8{ "musl/src/misc/ffsll.c", "musl/src/misc/fmtmsg.c", "musl/src/misc/forkpty.c", - "musl/src/misc/get_current_dir_name.c", "musl/src/misc/getauxval.c", + "musl/src/misc/get_current_dir_name.c", "musl/src/misc/getdomainname.c", "musl/src/misc/getentropy.c", "musl/src/misc/gethostid.c", @@ -1366,14 +1382,14 @@ const src_files = [_][]const u8{ "musl/src/misc/wordexp.c", "musl/src/mman/madvise.c", "musl/src/mman/mincore.c", - "musl/src/mman/mlock.c", "musl/src/mman/mlockall.c", + "musl/src/mman/mlock.c", "musl/src/mman/mmap.c", "musl/src/mman/mprotect.c", "musl/src/mman/mremap.c", "musl/src/mman/msync.c", - "musl/src/mman/munlock.c", "musl/src/mman/munlockall.c", + "musl/src/mman/munlock.c", "musl/src/mman/munmap.c", "musl/src/mman/posix_madvise.c", "musl/src/mman/shm_open.c", @@ -1407,8 +1423,8 @@ const src_files = [_][]const u8{ "musl/src/multibyte/wcstombs.c", "musl/src/multibyte/wctob.c", "musl/src/multibyte/wctomb.c", - "musl/src/network/accept.c", "musl/src/network/accept4.c", + "musl/src/network/accept.c", "musl/src/network/bind.c", "musl/src/network/connect.c", "musl/src/network/dn_comp.c", @@ -1422,9 +1438,9 @@ const src_files = [_][]const u8{ "musl/src/network/getaddrinfo.c", "musl/src/network/gethostbyaddr.c", "musl/src/network/gethostbyaddr_r.c", - "musl/src/network/gethostbyname.c", "musl/src/network/gethostbyname2.c", "musl/src/network/gethostbyname2_r.c", + "musl/src/network/gethostbyname.c", "musl/src/network/gethostbyname_r.c", "musl/src/network/getifaddrs.c", "musl/src/network/getnameinfo.c", @@ -1469,11 +1485,11 @@ const src_files = [_][]const u8{ "musl/src/network/res_init.c", "musl/src/network/res_mkquery.c", "musl/src/network/res_msend.c", + "musl/src/network/resolvconf.c", "musl/src/network/res_query.c", "musl/src/network/res_querydomain.c", "musl/src/network/res_send.c", "musl/src/network/res_state.c", - "musl/src/network/resolvconf.c", "musl/src/network/send.c", "musl/src/network/sendmmsg.c", "musl/src/network/sendmsg.c", @@ -1488,14 +1504,14 @@ const src_files = [_][]const u8{ "musl/src/passwd/fgetpwent.c", "musl/src/passwd/fgetspent.c", "musl/src/passwd/getgr_a.c", - "musl/src/passwd/getgr_r.c", - "musl/src/passwd/getgrent.c", "musl/src/passwd/getgrent_a.c", + "musl/src/passwd/getgrent.c", "musl/src/passwd/getgrouplist.c", + "musl/src/passwd/getgr_r.c", "musl/src/passwd/getpw_a.c", - "musl/src/passwd/getpw_r.c", - "musl/src/passwd/getpwent.c", "musl/src/passwd/getpwent_a.c", + "musl/src/passwd/getpwent.c", + "musl/src/passwd/getpw_r.c", "musl/src/passwd/getspent.c", "musl/src/passwd/getspnam.c", "musl/src/passwd/getspnam_r.c", @@ -1504,18 +1520,17 @@ const src_files = [_][]const u8{ "musl/src/passwd/putgrent.c", "musl/src/passwd/putpwent.c", "musl/src/passwd/putspent.c", - "musl/src/prng/__rand48_step.c", - "musl/src/prng/__seed48.c", "musl/src/prng/drand48.c", "musl/src/prng/lcong48.c", "musl/src/prng/lrand48.c", "musl/src/prng/mrand48.c", + "musl/src/prng/__rand48_step.c", "musl/src/prng/rand.c", - "musl/src/prng/rand_r.c", "musl/src/prng/random.c", + "musl/src/prng/rand_r.c", + "musl/src/prng/__seed48.c", "musl/src/prng/seed48.c", "musl/src/prng/srand48.c", - "musl/src/process/_Fork.c", "musl/src/process/aarch64/vfork.s", "musl/src/process/arm/vfork.s", "musl/src/process/execl.c", @@ -1526,15 +1541,8 @@ const src_files = [_][]const u8{ "musl/src/process/execvp.c", "musl/src/process/fexecve.c", "musl/src/process/fork.c", + "musl/src/process/_Fork.c", "musl/src/process/i386/vfork.s", - "musl/src/process/posix_spawn.c", - "musl/src/process/posix_spawn_file_actions_addchdir.c", - "musl/src/process/posix_spawn_file_actions_addclose.c", - "musl/src/process/posix_spawn_file_actions_adddup2.c", - "musl/src/process/posix_spawn_file_actions_addfchdir.c", - "musl/src/process/posix_spawn_file_actions_addopen.c", - "musl/src/process/posix_spawn_file_actions_destroy.c", - "musl/src/process/posix_spawn_file_actions_init.c", "musl/src/process/posix_spawnattr_destroy.c", "musl/src/process/posix_spawnattr_getflags.c", "musl/src/process/posix_spawnattr_getpgroup.c", @@ -1546,6 +1554,14 @@ const src_files = [_][]const u8{ "musl/src/process/posix_spawnattr_setpgroup.c", "musl/src/process/posix_spawnattr_setsigdefault.c", "musl/src/process/posix_spawnattr_setsigmask.c", + "musl/src/process/posix_spawn.c", + "musl/src/process/posix_spawn_file_actions_addchdir.c", + "musl/src/process/posix_spawn_file_actions_addclose.c", + "musl/src/process/posix_spawn_file_actions_adddup2.c", + "musl/src/process/posix_spawn_file_actions_addfchdir.c", + "musl/src/process/posix_spawn_file_actions_addopen.c", + "musl/src/process/posix_spawn_file_actions_destroy.c", + "musl/src/process/posix_spawn_file_actions_init.c", "musl/src/process/posix_spawnp.c", "musl/src/process/riscv64/vfork.s", "musl/src/process/s390x/vfork.s", @@ -1565,9 +1581,9 @@ const src_files = [_][]const u8{ "musl/src/regex/tre-mem.c", "musl/src/sched/affinity.c", "musl/src/sched/sched_cpucount.c", - "musl/src/sched/sched_get_priority_max.c", "musl/src/sched/sched_getcpu.c", "musl/src/sched/sched_getparam.c", + "musl/src/sched/sched_get_priority_max.c", "musl/src/sched/sched_getscheduler.c", "musl/src/sched/sched_rr_get_interval.c", "musl/src/sched/sched_setparam.c", @@ -1598,18 +1614,18 @@ const src_files = [_][]const u8{ "musl/src/setjmp/m68k/setjmp.s", "musl/src/setjmp/microblaze/longjmp.s", "musl/src/setjmp/microblaze/setjmp.s", - "musl/src/setjmp/mips/longjmp.S", - "musl/src/setjmp/mips/setjmp.S", "musl/src/setjmp/mips64/longjmp.S", "musl/src/setjmp/mips64/setjmp.S", + "musl/src/setjmp/mips/longjmp.S", "musl/src/setjmp/mipsn32/longjmp.S", "musl/src/setjmp/mipsn32/setjmp.S", + "musl/src/setjmp/mips/setjmp.S", "musl/src/setjmp/or1k/longjmp.s", "musl/src/setjmp/or1k/setjmp.s", - "musl/src/setjmp/powerpc/longjmp.S", - "musl/src/setjmp/powerpc/setjmp.S", "musl/src/setjmp/powerpc64/longjmp.s", "musl/src/setjmp/powerpc64/setjmp.s", + "musl/src/setjmp/powerpc/longjmp.S", + "musl/src/setjmp/powerpc/setjmp.S", "musl/src/setjmp/riscv32/longjmp.S", "musl/src/setjmp/riscv32/setjmp.S", "musl/src/setjmp/riscv64/longjmp.S", @@ -1638,14 +1654,14 @@ const src_files = [_][]const u8{ "musl/src/signal/m68k/sigsetjmp.s", "musl/src/signal/microblaze/restore.s", "musl/src/signal/microblaze/sigsetjmp.s", - "musl/src/signal/mips/sigsetjmp.s", "musl/src/signal/mips64/sigsetjmp.s", "musl/src/signal/mipsn32/sigsetjmp.s", + "musl/src/signal/mips/sigsetjmp.s", "musl/src/signal/or1k/sigsetjmp.s", - "musl/src/signal/powerpc/restore.s", - "musl/src/signal/powerpc/sigsetjmp.s", "musl/src/signal/powerpc64/restore.s", "musl/src/signal/powerpc64/sigsetjmp.s", + "musl/src/signal/powerpc/restore.s", + "musl/src/signal/powerpc/sigsetjmp.s", "musl/src/signal/psiginfo.c", "musl/src/signal/psignal.c", "musl/src/signal/raise.c", @@ -1694,47 +1710,34 @@ const src_files = [_][]const u8{ "musl/src/signal/x32/sigsetjmp.s", "musl/src/signal/x86_64/restore.s", "musl/src/signal/x86_64/sigsetjmp.s", - "musl/src/stat/__xstat.c", "musl/src/stat/chmod.c", - "musl/src/stat/fchmod.c", "musl/src/stat/fchmodat.c", - "musl/src/stat/fstat.c", + "musl/src/stat/fchmod.c", "musl/src/stat/fstatat.c", + "musl/src/stat/fstat.c", "musl/src/stat/futimens.c", "musl/src/stat/futimesat.c", "musl/src/stat/lchmod.c", "musl/src/stat/lstat.c", - "musl/src/stat/mkdir.c", "musl/src/stat/mkdirat.c", - "musl/src/stat/mkfifo.c", + "musl/src/stat/mkdir.c", "musl/src/stat/mkfifoat.c", - "musl/src/stat/mknod.c", + "musl/src/stat/mkfifo.c", "musl/src/stat/mknodat.c", + "musl/src/stat/mknod.c", "musl/src/stat/stat.c", "musl/src/stat/statvfs.c", "musl/src/stat/umask.c", "musl/src/stat/utimensat.c", - "musl/src/stdio/__fclose_ca.c", - "musl/src/stdio/__fdopen.c", - "musl/src/stdio/__fmodeflags.c", - "musl/src/stdio/__fopen_rb_ca.c", - "musl/src/stdio/__lockfile.c", - "musl/src/stdio/__overflow.c", - "musl/src/stdio/__stdio_close.c", - "musl/src/stdio/__stdio_exit.c", - "musl/src/stdio/__stdio_read.c", - "musl/src/stdio/__stdio_seek.c", - "musl/src/stdio/__stdio_write.c", - "musl/src/stdio/__stdout_write.c", - "musl/src/stdio/__toread.c", - "musl/src/stdio/__towrite.c", - "musl/src/stdio/__uflow.c", + "musl/src/stat/__xstat.c", "musl/src/stdio/asprintf.c", "musl/src/stdio/clearerr.c", "musl/src/stdio/dprintf.c", - "musl/src/stdio/ext.c", "musl/src/stdio/ext2.c", + "musl/src/stdio/ext.c", "musl/src/stdio/fclose.c", + "musl/src/stdio/__fclose_ca.c", + "musl/src/stdio/__fdopen.c", "musl/src/stdio/feof.c", "musl/src/stdio/ferror.c", "musl/src/stdio/fflush.c", @@ -1747,8 +1750,10 @@ const src_files = [_][]const u8{ "musl/src/stdio/fileno.c", "musl/src/stdio/flockfile.c", "musl/src/stdio/fmemopen.c", + "musl/src/stdio/__fmodeflags.c", "musl/src/stdio/fopen.c", "musl/src/stdio/fopencookie.c", + "musl/src/stdio/__fopen_rb_ca.c", "musl/src/stdio/fprintf.c", "musl/src/stdio/fputc.c", "musl/src/stdio/fputs.c", @@ -1767,27 +1772,29 @@ const src_files = [_][]const u8{ "musl/src/stdio/fwrite.c", "musl/src/stdio/fwscanf.c", "musl/src/stdio/getc.c", - "musl/src/stdio/getc_unlocked.c", "musl/src/stdio/getchar.c", "musl/src/stdio/getchar_unlocked.c", + "musl/src/stdio/getc_unlocked.c", "musl/src/stdio/getdelim.c", "musl/src/stdio/getline.c", "musl/src/stdio/gets.c", "musl/src/stdio/getw.c", "musl/src/stdio/getwc.c", "musl/src/stdio/getwchar.c", - "musl/src/stdio/ofl.c", + "musl/src/stdio/__lockfile.c", "musl/src/stdio/ofl_add.c", + "musl/src/stdio/ofl.c", "musl/src/stdio/open_memstream.c", "musl/src/stdio/open_wmemstream.c", + "musl/src/stdio/__overflow.c", "musl/src/stdio/pclose.c", "musl/src/stdio/perror.c", "musl/src/stdio/popen.c", "musl/src/stdio/printf.c", "musl/src/stdio/putc.c", - "musl/src/stdio/putc_unlocked.c", "musl/src/stdio/putchar.c", "musl/src/stdio/putchar_unlocked.c", + "musl/src/stdio/putc_unlocked.c", "musl/src/stdio/puts.c", "musl/src/stdio/putw.c", "musl/src/stdio/putwc.c", @@ -1805,12 +1812,21 @@ const src_files = [_][]const u8{ "musl/src/stdio/sscanf.c", "musl/src/stdio/stderr.c", "musl/src/stdio/stdin.c", + "musl/src/stdio/__stdio_close.c", + "musl/src/stdio/__stdio_exit.c", + "musl/src/stdio/__stdio_read.c", + "musl/src/stdio/__stdio_seek.c", + "musl/src/stdio/__stdio_write.c", "musl/src/stdio/stdout.c", + "musl/src/stdio/__stdout_write.c", "musl/src/stdio/swprintf.c", "musl/src/stdio/swscanf.c", "musl/src/stdio/tempnam.c", "musl/src/stdio/tmpfile.c", "musl/src/stdio/tmpnam.c", + "musl/src/stdio/__toread.c", + "musl/src/stdio/__towrite.c", + "musl/src/stdio/__uflow.c", "musl/src/stdio/ungetc.c", "musl/src/stdio/ungetwc.c", "musl/src/stdio/vasprintf.c", @@ -1937,13 +1953,13 @@ const src_files = [_][]const u8{ "musl/src/string/x86_64/memcpy.s", "musl/src/string/x86_64/memmove.s", "musl/src/string/x86_64/memset.s", - "musl/src/temp/__randname.c", "musl/src/temp/mkdtemp.c", "musl/src/temp/mkostemp.c", "musl/src/temp/mkostemps.c", "musl/src/temp/mkstemp.c", "musl/src/temp/mkstemps.c", "musl/src/temp/mktemp.c", + "musl/src/temp/__randname.c", "musl/src/termios/cfgetospeed.c", "musl/src/termios/cfmakeraw.c", "musl/src/termios/cfsetospeed.c", @@ -1956,23 +1972,16 @@ const src_files = [_][]const u8{ "musl/src/termios/tcsendbreak.c", "musl/src/termios/tcsetattr.c", "musl/src/termios/tcsetwinsize.c", - "musl/src/thread/__lock.c", - "musl/src/thread/__set_thread_area.c", - "musl/src/thread/__syscall_cp.c", - "musl/src/thread/__timedwait.c", - "musl/src/thread/__tls_get_addr.c", - "musl/src/thread/__unmapself.c", - "musl/src/thread/__wait.c", - "musl/src/thread/aarch64/__set_thread_area.s", - "musl/src/thread/aarch64/__unmapself.s", "musl/src/thread/aarch64/clone.s", + "musl/src/thread/aarch64/__set_thread_area.s", "musl/src/thread/aarch64/syscall_cp.s", + "musl/src/thread/aarch64/__unmapself.s", "musl/src/thread/arm/__aeabi_read_tp.s", - "musl/src/thread/arm/__set_thread_area.c", - "musl/src/thread/arm/__unmapself.s", "musl/src/thread/arm/atomics.s", "musl/src/thread/arm/clone.s", + "musl/src/thread/arm/__set_thread_area.c", "musl/src/thread/arm/syscall_cp.s", + "musl/src/thread/arm/__unmapself.s", "musl/src/thread/call_once.c", "musl/src/thread/clone.c", "musl/src/thread/cnd_broadcast.c", @@ -1982,50 +1991,51 @@ const src_files = [_][]const u8{ "musl/src/thread/cnd_timedwait.c", "musl/src/thread/cnd_wait.c", "musl/src/thread/default_attr.c", - "musl/src/thread/i386/__set_thread_area.s", - "musl/src/thread/i386/__unmapself.s", "musl/src/thread/i386/clone.s", + "musl/src/thread/i386/__set_thread_area.s", "musl/src/thread/i386/syscall_cp.s", "musl/src/thread/i386/tls.s", + "musl/src/thread/i386/__unmapself.s", + "musl/src/thread/__lock.c", "musl/src/thread/lock_ptc.c", - "musl/src/thread/loongarch64/__set_thread_area.s", - "musl/src/thread/loongarch64/__unmapself.s", "musl/src/thread/loongarch64/clone.s", + "musl/src/thread/loongarch64/__set_thread_area.s", "musl/src/thread/loongarch64/syscall_cp.s", - "musl/src/thread/m68k/__m68k_read_tp.s", + "musl/src/thread/loongarch64/__unmapself.s", "musl/src/thread/m68k/clone.s", + "musl/src/thread/m68k/__m68k_read_tp.s", "musl/src/thread/m68k/syscall_cp.s", - "musl/src/thread/microblaze/__set_thread_area.s", - "musl/src/thread/microblaze/__unmapself.s", "musl/src/thread/microblaze/clone.s", + "musl/src/thread/microblaze/__set_thread_area.s", "musl/src/thread/microblaze/syscall_cp.s", - "musl/src/thread/mips/__unmapself.s", - "musl/src/thread/mips/clone.s", - "musl/src/thread/mips/syscall_cp.s", - "musl/src/thread/mips64/__unmapself.s", + "musl/src/thread/microblaze/__unmapself.s", "musl/src/thread/mips64/clone.s", "musl/src/thread/mips64/syscall_cp.s", - "musl/src/thread/mipsn32/__unmapself.s", + "musl/src/thread/mips64/__unmapself.s", + "musl/src/thread/mips/clone.s", "musl/src/thread/mipsn32/clone.s", "musl/src/thread/mipsn32/syscall_cp.s", + "musl/src/thread/mipsn32/__unmapself.s", + "musl/src/thread/mips/syscall_cp.s", + "musl/src/thread/mips/__unmapself.s", "musl/src/thread/mtx_destroy.c", "musl/src/thread/mtx_init.c", "musl/src/thread/mtx_lock.c", "musl/src/thread/mtx_timedlock.c", "musl/src/thread/mtx_trylock.c", "musl/src/thread/mtx_unlock.c", - "musl/src/thread/or1k/__set_thread_area.s", - "musl/src/thread/or1k/__unmapself.s", "musl/src/thread/or1k/clone.s", + "musl/src/thread/or1k/__set_thread_area.s", "musl/src/thread/or1k/syscall_cp.s", - "musl/src/thread/powerpc/__set_thread_area.s", - "musl/src/thread/powerpc/__unmapself.s", - "musl/src/thread/powerpc/clone.s", - "musl/src/thread/powerpc/syscall_cp.s", - "musl/src/thread/powerpc64/__set_thread_area.s", - "musl/src/thread/powerpc64/__unmapself.s", + "musl/src/thread/or1k/__unmapself.s", "musl/src/thread/powerpc64/clone.s", + "musl/src/thread/powerpc64/__set_thread_area.s", "musl/src/thread/powerpc64/syscall_cp.s", + "musl/src/thread/powerpc64/__unmapself.s", + "musl/src/thread/powerpc/clone.s", + "musl/src/thread/powerpc/__set_thread_area.s", + "musl/src/thread/powerpc/syscall_cp.s", + "musl/src/thread/powerpc/__unmapself.s", "musl/src/thread/pthread_atfork.c", "musl/src/thread/pthread_attr_destroy.c", "musl/src/thread/pthread_attr_get.c", @@ -2038,24 +2048,24 @@ const src_files = [_][]const u8{ "musl/src/thread/pthread_attr_setscope.c", "musl/src/thread/pthread_attr_setstack.c", "musl/src/thread/pthread_attr_setstacksize.c", - "musl/src/thread/pthread_barrier_destroy.c", - "musl/src/thread/pthread_barrier_init.c", - "musl/src/thread/pthread_barrier_wait.c", "musl/src/thread/pthread_barrierattr_destroy.c", "musl/src/thread/pthread_barrierattr_init.c", "musl/src/thread/pthread_barrierattr_setpshared.c", + "musl/src/thread/pthread_barrier_destroy.c", + "musl/src/thread/pthread_barrier_init.c", + "musl/src/thread/pthread_barrier_wait.c", "musl/src/thread/pthread_cancel.c", "musl/src/thread/pthread_cleanup_push.c", + "musl/src/thread/pthread_condattr_destroy.c", + "musl/src/thread/pthread_condattr_init.c", + "musl/src/thread/pthread_condattr_setclock.c", + "musl/src/thread/pthread_condattr_setpshared.c", "musl/src/thread/pthread_cond_broadcast.c", "musl/src/thread/pthread_cond_destroy.c", "musl/src/thread/pthread_cond_init.c", "musl/src/thread/pthread_cond_signal.c", "musl/src/thread/pthread_cond_timedwait.c", "musl/src/thread/pthread_cond_wait.c", - "musl/src/thread/pthread_condattr_destroy.c", - "musl/src/thread/pthread_condattr_init.c", - "musl/src/thread/pthread_condattr_setclock.c", - "musl/src/thread/pthread_condattr_setpshared.c", "musl/src/thread/pthread_create.c", "musl/src/thread/pthread_detach.c", "musl/src/thread/pthread_equal.c", @@ -2068,6 +2078,12 @@ const src_files = [_][]const u8{ "musl/src/thread/pthread_join.c", "musl/src/thread/pthread_key_create.c", "musl/src/thread/pthread_kill.c", + "musl/src/thread/pthread_mutexattr_destroy.c", + "musl/src/thread/pthread_mutexattr_init.c", + "musl/src/thread/pthread_mutexattr_setprotocol.c", + "musl/src/thread/pthread_mutexattr_setpshared.c", + "musl/src/thread/pthread_mutexattr_setrobust.c", + "musl/src/thread/pthread_mutexattr_settype.c", "musl/src/thread/pthread_mutex_consistent.c", "musl/src/thread/pthread_mutex_destroy.c", "musl/src/thread/pthread_mutex_getprioceiling.c", @@ -2077,13 +2093,10 @@ const src_files = [_][]const u8{ "musl/src/thread/pthread_mutex_timedlock.c", "musl/src/thread/pthread_mutex_trylock.c", "musl/src/thread/pthread_mutex_unlock.c", - "musl/src/thread/pthread_mutexattr_destroy.c", - "musl/src/thread/pthread_mutexattr_init.c", - "musl/src/thread/pthread_mutexattr_setprotocol.c", - "musl/src/thread/pthread_mutexattr_setpshared.c", - "musl/src/thread/pthread_mutexattr_setrobust.c", - "musl/src/thread/pthread_mutexattr_settype.c", "musl/src/thread/pthread_once.c", + "musl/src/thread/pthread_rwlockattr_destroy.c", + "musl/src/thread/pthread_rwlockattr_init.c", + "musl/src/thread/pthread_rwlockattr_setpshared.c", "musl/src/thread/pthread_rwlock_destroy.c", "musl/src/thread/pthread_rwlock_init.c", "musl/src/thread/pthread_rwlock_rdlock.c", @@ -2093,9 +2106,6 @@ const src_files = [_][]const u8{ "musl/src/thread/pthread_rwlock_trywrlock.c", "musl/src/thread/pthread_rwlock_unlock.c", "musl/src/thread/pthread_rwlock_wrlock.c", - "musl/src/thread/pthread_rwlockattr_destroy.c", - "musl/src/thread/pthread_rwlockattr_init.c", - "musl/src/thread/pthread_rwlockattr_setpshared.c", "musl/src/thread/pthread_self.c", "musl/src/thread/pthread_setattr_default_np.c", "musl/src/thread/pthread_setcancelstate.c", @@ -2112,19 +2122,19 @@ const src_files = [_][]const u8{ "musl/src/thread/pthread_spin_trylock.c", "musl/src/thread/pthread_spin_unlock.c", "musl/src/thread/pthread_testcancel.c", - "musl/src/thread/riscv32/__set_thread_area.s", - "musl/src/thread/riscv32/__unmapself.s", "musl/src/thread/riscv32/clone.s", + "musl/src/thread/riscv32/__set_thread_area.s", "musl/src/thread/riscv32/syscall_cp.s", - "musl/src/thread/riscv64/__set_thread_area.s", - "musl/src/thread/riscv64/__unmapself.s", + "musl/src/thread/riscv32/__unmapself.s", "musl/src/thread/riscv64/clone.s", + "musl/src/thread/riscv64/__set_thread_area.s", "musl/src/thread/riscv64/syscall_cp.s", + "musl/src/thread/riscv64/__unmapself.s", + "musl/src/thread/s390x/clone.s", "musl/src/thread/s390x/__set_thread_area.s", + "musl/src/thread/s390x/syscall_cp.s", "musl/src/thread/s390x/__tls_get_offset.s", "musl/src/thread/s390x/__unmapself.s", - "musl/src/thread/s390x/clone.s", - "musl/src/thread/s390x/syscall_cp.s", "musl/src/thread/sem_destroy.c", "musl/src/thread/sem_getvalue.c", "musl/src/thread/sem_init.c", @@ -2134,38 +2144,38 @@ const src_files = [_][]const u8{ "musl/src/thread/sem_trywait.c", "musl/src/thread/sem_unlink.c", "musl/src/thread/sem_wait.c", - "musl/src/thread/sh/__set_thread_area.c", - "musl/src/thread/sh/__unmapself.c", - "musl/src/thread/sh/__unmapself_mmu.s", + "musl/src/thread/__set_thread_area.c", "musl/src/thread/sh/atomics.s", "musl/src/thread/sh/clone.s", + "musl/src/thread/sh/__set_thread_area.c", "musl/src/thread/sh/syscall_cp.s", + "musl/src/thread/sh/__unmapself.c", + "musl/src/thread/sh/__unmapself_mmu.s", "musl/src/thread/synccall.c", + "musl/src/thread/__syscall_cp.c", "musl/src/thread/syscall_cp.c", "musl/src/thread/thrd_create.c", "musl/src/thread/thrd_exit.c", "musl/src/thread/thrd_join.c", "musl/src/thread/thrd_sleep.c", "musl/src/thread/thrd_yield.c", + "musl/src/thread/__timedwait.c", "musl/src/thread/tls.c", + "musl/src/thread/__tls_get_addr.c", "musl/src/thread/tss_create.c", "musl/src/thread/tss_delete.c", "musl/src/thread/tss_set.c", + "musl/src/thread/__unmapself.c", "musl/src/thread/vmlock.c", - "musl/src/thread/x32/__set_thread_area.s", - "musl/src/thread/x32/__unmapself.s", + "musl/src/thread/__wait.c", "musl/src/thread/x32/clone.s", + "musl/src/thread/x32/__set_thread_area.s", "musl/src/thread/x32/syscall_cp.s", - "musl/src/thread/x86_64/__set_thread_area.s", - "musl/src/thread/x86_64/__unmapself.s", + "musl/src/thread/x32/__unmapself.s", "musl/src/thread/x86_64/clone.s", + "musl/src/thread/x86_64/__set_thread_area.s", "musl/src/thread/x86_64/syscall_cp.s", - "musl/src/time/__map_file.c", - "musl/src/time/__month_to_secs.c", - "musl/src/time/__secs_to_tm.c", - "musl/src/time/__tm_to_secs.c", - "musl/src/time/__tz.c", - "musl/src/time/__year_to_secs.c", + "musl/src/thread/x86_64/__unmapself.s", "musl/src/time/asctime.c", "musl/src/time/asctime_r.c", "musl/src/time/clock.c", @@ -2184,8 +2194,11 @@ const src_files = [_][]const u8{ "musl/src/time/gmtime_r.c", "musl/src/time/localtime.c", "musl/src/time/localtime_r.c", + "musl/src/time/__map_file.c", "musl/src/time/mktime.c", + "musl/src/time/__month_to_secs.c", "musl/src/time/nanosleep.c", + "musl/src/time/__secs_to_tm.c", "musl/src/time/strftime.c", "musl/src/time/strptime.c", "musl/src/time/time.c", @@ -2197,9 +2210,11 @@ const src_files = [_][]const u8{ "musl/src/time/timer_settime.c", "musl/src/time/times.c", "musl/src/time/timespec_get.c", + "musl/src/time/__tm_to_secs.c", + "musl/src/time/__tz.c", "musl/src/time/utime.c", "musl/src/time/wcsftime.c", - "musl/src/unistd/_exit.c", + "musl/src/time/__year_to_secs.c", "musl/src/unistd/access.c", "musl/src/unistd/acct.c", "musl/src/unistd/alarm.c", @@ -2207,13 +2222,14 @@ const src_files = [_][]const u8{ "musl/src/unistd/chown.c", "musl/src/unistd/close.c", "musl/src/unistd/ctermid.c", - "musl/src/unistd/dup.c", "musl/src/unistd/dup2.c", "musl/src/unistd/dup3.c", + "musl/src/unistd/dup.c", + "musl/src/unistd/_exit.c", "musl/src/unistd/faccessat.c", "musl/src/unistd/fchdir.c", - "musl/src/unistd/fchown.c", "musl/src/unistd/fchownat.c", + "musl/src/unistd/fchown.c", "musl/src/unistd/fdatasync.c", "musl/src/unistd/fsync.c", "musl/src/unistd/ftruncate.c", @@ -2233,25 +2249,25 @@ const src_files = [_][]const u8{ "musl/src/unistd/getuid.c", "musl/src/unistd/isatty.c", "musl/src/unistd/lchown.c", - "musl/src/unistd/link.c", "musl/src/unistd/linkat.c", + "musl/src/unistd/link.c", "musl/src/unistd/lseek.c", - "musl/src/unistd/mips/pipe.s", "musl/src/unistd/mips64/pipe.s", "musl/src/unistd/mipsn32/lseek.c", "musl/src/unistd/mipsn32/pipe.s", + "musl/src/unistd/mips/pipe.s", "musl/src/unistd/nice.c", "musl/src/unistd/pause.c", - "musl/src/unistd/pipe.c", "musl/src/unistd/pipe2.c", + "musl/src/unistd/pipe.c", "musl/src/unistd/posix_close.c", "musl/src/unistd/pread.c", "musl/src/unistd/preadv.c", "musl/src/unistd/pwrite.c", "musl/src/unistd/pwritev.c", "musl/src/unistd/read.c", - "musl/src/unistd/readlink.c", "musl/src/unistd/readlinkat.c", + "musl/src/unistd/readlink.c", "musl/src/unistd/readv.c", "musl/src/unistd/renameat.c", "musl/src/unistd/rmdir.c", @@ -2269,8 +2285,8 @@ const src_files = [_][]const u8{ "musl/src/unistd/setxid.c", "musl/src/unistd/sh/pipe.s", "musl/src/unistd/sleep.c", - "musl/src/unistd/symlink.c", "musl/src/unistd/symlinkat.c", + "musl/src/unistd/symlink.c", "musl/src/unistd/sync.c", "musl/src/unistd/tcgetpgrp.c", "musl/src/unistd/tcsetpgrp.c", @@ -2278,8 +2294,8 @@ const src_files = [_][]const u8{ "musl/src/unistd/ttyname.c", "musl/src/unistd/ttyname_r.c", "musl/src/unistd/ualarm.c", - "musl/src/unistd/unlink.c", "musl/src/unistd/unlinkat.c", + "musl/src/unistd/unlink.c", "musl/src/unistd/usleep.c", "musl/src/unistd/write.c", "musl/src/unistd/writev.c", @@ -2287,7 +2303,6 @@ const src_files = [_][]const u8{ }; const compat_time32_files = [_][]const u8{ - "musl/compat/time32/__xstat.c", "musl/compat/time32/adjtime32.c", "musl/compat/time32/adjtimex_time32.c", "musl/compat/time32/aio_suspend_time32.c", @@ -2300,12 +2315,12 @@ const compat_time32_files = [_][]const u8{ "musl/compat/time32/ctime32.c", "musl/compat/time32/ctime32_r.c", "musl/compat/time32/difftime32.c", - "musl/compat/time32/fstat_time32.c", "musl/compat/time32/fstatat_time32.c", + "musl/compat/time32/fstat_time32.c", "musl/compat/time32/ftime32.c", "musl/compat/time32/futimens_time32.c", - "musl/compat/time32/futimes_time32.c", "musl/compat/time32/futimesat_time32.c", + "musl/compat/time32/futimes_time32.c", "musl/compat/time32/getitimer_time32.c", "musl/compat/time32/getrusage_time32.c", "musl/compat/time32/gettimeofday_time32.c", @@ -2330,8 +2345,8 @@ const compat_time32_files = [_][]const u8{ "musl/compat/time32/recvmmsg_time32.c", "musl/compat/time32/sched_rr_get_interval_time32.c", "musl/compat/time32/select_time32.c", - "musl/compat/time32/sem_timedwait_time32.c", "musl/compat/time32/semtimedop_time32.c", + "musl/compat/time32/sem_timedwait_time32.c", "musl/compat/time32/setitimer_time32.c", "musl/compat/time32/settimeofday_time32.c", "musl/compat/time32/sigtimedwait_time32.c", @@ -2340,14 +2355,15 @@ const compat_time32_files = [_][]const u8{ "musl/compat/time32/thrd_sleep_time32.c", "musl/compat/time32/time32.c", "musl/compat/time32/time32gm.c", - "musl/compat/time32/timer_gettime32.c", - "musl/compat/time32/timer_settime32.c", "musl/compat/time32/timerfd_gettime32.c", "musl/compat/time32/timerfd_settime32.c", + "musl/compat/time32/timer_gettime32.c", + "musl/compat/time32/timer_settime32.c", "musl/compat/time32/timespec_get_time32.c", - "musl/compat/time32/utime_time32.c", "musl/compat/time32/utimensat_time32.c", "musl/compat/time32/utimes_time32.c", + "musl/compat/time32/utime_time32.c", "musl/compat/time32/wait3_time32.c", "musl/compat/time32/wait4_time32.c", + "musl/compat/time32/__xstat.c", }; diff --git a/src/target.zig b/src/target.zig index e4f1d2804359..2327ff0c4a5c 100644 --- a/src/target.zig +++ b/src/target.zig @@ -438,6 +438,16 @@ pub fn arePointersLogical(target: std.Target, as: AddressSpace) bool { } pub fn llvmMachineAbi(target: std.Target) ?[:0]const u8 { + // This special-casing should be removed with LLVM 20. + switch (target.cpu.arch) { + .mips, .mipsel => return "o32", + .mips64, .mips64el => return switch (target.abi) { + .gnuabin32, .muslabin32 => "n32", + else => "n64", + }, + else => {}, + } + // LLD does not support ELFv1. Rather than having LLVM produce ELFv1 code and then linking it // into a broken ELFv2 binary, just force LLVM to use ELFv2 as well. This will break when glibc // is linked as glibc only supports ELFv2 for little endian, but there's nothing we can do about diff --git a/test/llvm_targets.zig b/test/llvm_targets.zig index 15ff356fd396..f3de40433721 100644 --- a/test/llvm_targets.zig +++ b/test/llvm_targets.zig @@ -160,7 +160,8 @@ const targets = [_]std.Target.Query{ .{ .cpu_arch = .mips64, .os_tag = .freestanding, .abi = .none }, .{ .cpu_arch = .mips64, .os_tag = .linux, .abi = .gnuabi64 }, .{ .cpu_arch = .mips64, .os_tag = .linux, .abi = .gnuabin32 }, - .{ .cpu_arch = .mips64, .os_tag = .linux, .abi = .musl }, + .{ .cpu_arch = .mips64, .os_tag = .linux, .abi = .muslabi64 }, + .{ .cpu_arch = .mips64, .os_tag = .linux, .abi = .muslabin32 }, .{ .cpu_arch = .mips64, .os_tag = .linux, .abi = .none }, .{ .cpu_arch = .mips64, .os_tag = .netbsd, .abi = .none }, .{ .cpu_arch = .mips64, .os_tag = .openbsd, .abi = .none }, @@ -169,7 +170,8 @@ const targets = [_]std.Target.Query{ .{ .cpu_arch = .mips64el, .os_tag = .freestanding, .abi = .none }, .{ .cpu_arch = .mips64el, .os_tag = .linux, .abi = .gnuabi64 }, .{ .cpu_arch = .mips64el, .os_tag = .linux, .abi = .gnuabin32 }, - .{ .cpu_arch = .mips64el, .os_tag = .linux, .abi = .musl }, + .{ .cpu_arch = .mips64el, .os_tag = .linux, .abi = .muslabi64 }, + .{ .cpu_arch = .mips64el, .os_tag = .linux, .abi = .muslabin32 }, .{ .cpu_arch = .mips64el, .os_tag = .linux, .abi = .none }, .{ .cpu_arch = .mips64el, .os_tag = .netbsd, .abi = .none }, .{ .cpu_arch = .mips64el, .os_tag = .openbsd, .abi = .none }, diff --git a/test/tests.zig b/test/tests.zig index a9035560b311..8bcb31a7c8df 100644 --- a/test/tests.zig +++ b/test/tests.zig @@ -454,7 +454,7 @@ const test_targets = blk: { .target = .{ .cpu_arch = .mips64, .os_tag = .linux, - .abi = .musl, + .abi = .muslabi64, }, .link_libc = true, }, @@ -478,7 +478,7 @@ const test_targets = blk: { .target = .{ .cpu_arch = .mips64el, .os_tag = .linux, - .abi = .musl, + .abi = .muslabi64, }, .link_libc = true, }, diff --git a/tools/generate_linux_syscalls.zig b/tools/generate_linux_syscalls.zig index df1b5127dfb8..38726e6501e6 100644 --- a/tools/generate_linux_syscalls.zig +++ b/tools/generate_linux_syscalls.zig @@ -162,6 +162,22 @@ const arch_infos = [_]ArchInfo{ .additional_enum = null, }, }, + .{ + .table = .{ + .name = "x32", + .enum_name = "X32", + .file_path = "arch/x86/entry/syscalls/syscall_64.tbl", + .process_file = &processTableBasedArch, + .filters = .{ + .abiCheckParams = .{ .abi = "64", .flow = .@"continue" }, + .fixedName = &fixedName, + .isReservedNameOld = null, + }, + .header = null, + .extra_values = null, + .additional_enum = null, + }, + }, .{ .table = .{ .name = "arm", diff --git a/tools/process_headers.zig b/tools/process_headers.zig index 970c38388623..ccd4e1ae96cf 100644 --- a/tools/process_headers.zig +++ b/tools/process_headers.zig @@ -19,273 +19,65 @@ const Blake3 = std.crypto.hash.Blake3; const LibCTarget = struct { name: []const u8, - arch: MultiArch, - abi: MultiAbi, -}; - -const MultiArch = union(enum) { - aarch64, - arm, - mips, - mips64, - powerpc64, - specific: Arch, - - fn eql(a: MultiArch, b: MultiArch) bool { - if (@intFromEnum(a) != @intFromEnum(b)) - return false; - if (a != .specific) - return true; - return a.specific == b.specific; - } -}; - -const MultiAbi = union(enum) { - musl, - specific: Abi, - - fn eql(a: MultiAbi, b: MultiAbi) bool { - if (@intFromEnum(a) != @intFromEnum(b)) - return false; - if (std.meta.Tag(MultiAbi)(a) != .specific) - return true; - return a.specific == b.specific; - } + arch: Arch, + abi: Abi, }; const glibc_targets = [_]LibCTarget{ - LibCTarget{ - .name = "aarch64_be-linux-gnu", - .arch = MultiArch{ .specific = Arch.aarch64_be }, - .abi = MultiAbi{ .specific = Abi.gnu }, - }, - LibCTarget{ - .name = "aarch64-linux-gnu", - .arch = MultiArch{ .specific = Arch.aarch64 }, - .abi = MultiAbi{ .specific = Abi.gnu }, - }, - LibCTarget{ - .name = "armeb-linux-gnueabi", - .arch = MultiArch{ .specific = Arch.armeb }, - .abi = MultiAbi{ .specific = Abi.gnueabi }, - }, - LibCTarget{ - .name = "armeb-linux-gnueabihf", - .arch = MultiArch{ .specific = Arch.armeb }, - .abi = MultiAbi{ .specific = Abi.gnueabihf }, - }, - LibCTarget{ - .name = "arm-linux-gnueabi", - .arch = MultiArch{ .specific = Arch.arm }, - .abi = MultiAbi{ .specific = Abi.gnueabi }, - }, - LibCTarget{ - .name = "arm-linux-gnueabihf", - .arch = MultiArch{ .specific = Arch.arm }, - .abi = MultiAbi{ .specific = Abi.gnueabihf }, - }, - LibCTarget{ - .name = "arc-linux-gnu", - .arch = MultiArch{ .specific = Arch.arc }, - .abi = MultiAbi{ .specific = Abi.gnu }, - }, - LibCTarget{ - .name = "csky-linux-gnuabiv2", - .arch = MultiArch{ .specific = Arch.csky }, - .abi = MultiAbi{ .specific = Abi.gnueabihf }, - }, - LibCTarget{ - .name = "csky-linux-gnuabiv2-soft", - .arch = MultiArch{ .specific = Arch.csky }, - .abi = MultiAbi{ .specific = Abi.gnueabi }, - }, - LibCTarget{ - .name = "i686-linux-gnu", - .arch = MultiArch{ .specific = Arch.x86 }, - .abi = MultiAbi{ .specific = Abi.gnu }, - }, - LibCTarget{ - .name = "mips64el-linux-gnu-n32", - .arch = MultiArch{ .specific = Arch.mips64el }, - .abi = MultiAbi{ .specific = Abi.gnuabin32 }, - }, - LibCTarget{ - .name = "mips64el-linux-gnu-n64", - .arch = MultiArch{ .specific = Arch.mips64el }, - .abi = MultiAbi{ .specific = Abi.gnuabi64 }, - }, - LibCTarget{ - .name = "mips64-linux-gnu-n32", - .arch = MultiArch{ .specific = Arch.mips64 }, - .abi = MultiAbi{ .specific = Abi.gnuabin32 }, - }, - LibCTarget{ - .name = "mips64-linux-gnu-n64", - .arch = MultiArch{ .specific = Arch.mips64 }, - .abi = MultiAbi{ .specific = Abi.gnuabi64 }, - }, - LibCTarget{ - .name = "mipsel-linux-gnu", - .arch = MultiArch{ .specific = Arch.mipsel }, - .abi = MultiAbi{ .specific = Abi.gnueabihf }, - }, - LibCTarget{ - .name = "mipsel-linux-gnu-soft", - .arch = MultiArch{ .specific = Arch.mipsel }, - .abi = MultiAbi{ .specific = Abi.gnueabi }, - }, - LibCTarget{ - .name = "mips-linux-gnu", - .arch = MultiArch{ .specific = Arch.mips }, - .abi = MultiAbi{ .specific = Abi.gnueabihf }, - }, - LibCTarget{ - .name = "mips-linux-gnu-soft", - .arch = MultiArch{ .specific = Arch.mips }, - .abi = MultiAbi{ .specific = Abi.gnueabi }, - }, - LibCTarget{ - .name = "powerpc64le-linux-gnu", - .arch = MultiArch{ .specific = Arch.powerpc64le }, - .abi = MultiAbi{ .specific = Abi.gnu }, - }, - LibCTarget{ - .name = "powerpc64-linux-gnu", - .arch = MultiArch{ .specific = Arch.powerpc64 }, - .abi = MultiAbi{ .specific = Abi.gnu }, - }, - LibCTarget{ - .name = "powerpc-linux-gnu", - .arch = MultiArch{ .specific = Arch.powerpc }, - .abi = MultiAbi{ .specific = Abi.gnueabihf }, - }, - LibCTarget{ - .name = "powerpc-linux-gnu-soft", - .arch = MultiArch{ .specific = Arch.powerpc }, - .abi = MultiAbi{ .specific = Abi.gnueabi }, - }, - LibCTarget{ - .name = "riscv32-linux-gnu-rv32imafdc-ilp32d", - .arch = MultiArch{ .specific = Arch.riscv32 }, - .abi = MultiAbi{ .specific = Abi.gnu }, - }, - LibCTarget{ - .name = "riscv64-linux-gnu-rv64imafdc-lp64d", - .arch = MultiArch{ .specific = Arch.riscv64 }, - .abi = MultiAbi{ .specific = Abi.gnu }, - }, - LibCTarget{ - .name = "s390x-linux-gnu", - .arch = MultiArch{ .specific = Arch.s390x }, - .abi = MultiAbi{ .specific = Abi.gnu }, - }, - LibCTarget{ - .name = "sparcv9-linux-gnu", - .arch = MultiArch{ .specific = Arch.sparc }, - .abi = MultiAbi{ .specific = Abi.gnu }, - }, - LibCTarget{ - .name = "sparc64-linux-gnu", - .arch = MultiArch{ .specific = Arch.sparc64 }, - .abi = MultiAbi{ .specific = Abi.gnu }, - }, - LibCTarget{ - .name = "x86_64-linux-gnu", - .arch = MultiArch{ .specific = Arch.x86_64 }, - .abi = MultiAbi{ .specific = Abi.gnu }, - }, - LibCTarget{ - .name = "x86_64-linux-gnu-x32", - .arch = MultiArch{ .specific = Arch.x86_64 }, - .abi = MultiAbi{ .specific = Abi.gnux32 }, - }, - LibCTarget{ - .name = "m68k-linux-gnu", - .arch = MultiArch{ .specific = Arch.m68k }, - .abi = MultiAbi{ .specific = Abi.gnu }, - }, - LibCTarget{ - .name = "loongarch64-linux-gnu-lp64d", - .arch = MultiArch{ .specific = .loongarch64 }, - .abi = MultiAbi{ .specific = Abi.gnu }, - }, - LibCTarget{ - .name = "loongarch64-linux-gnu-lp64s", - .arch = MultiArch{ .specific = .loongarch64 }, - .abi = MultiAbi{ .specific = Abi.gnusf }, - }, + .{ .name = "arc-linux-gnu", .arch = .arc, .abi = .gnu }, + .{ .name = "arm-linux-gnueabi", .arch = .arm, .abi = .gnueabi }, + .{ .name = "arm-linux-gnueabihf", .arch = .arm, .abi = .gnueabihf }, + .{ .name = "armeb-linux-gnueabi", .arch = .armeb, .abi = .gnueabi }, + .{ .name = "armeb-linux-gnueabihf", .arch = .armeb, .abi = .gnueabihf }, + .{ .name = "aarch64-linux-gnu", .arch = .aarch64, .abi = .gnu }, + .{ .name = "aarch64_be-linux-gnu", .arch = .aarch64_be, .abi = .gnu }, + .{ .name = "csky-linux-gnuabiv2-soft", .arch = .csky, .abi = .gnueabi }, + .{ .name = "csky-linux-gnuabiv2", .arch = .csky, .abi = .gnueabihf }, + .{ .name = "loongarch64-linux-gnu-lp64d", .arch = .loongarch64, .abi = .gnu }, + .{ .name = "loongarch64-linux-gnu-lp64s", .arch = .loongarch64, .abi = .gnusf }, + .{ .name = "m68k-linux-gnu", .arch = .m68k, .abi = .gnu }, + .{ .name = "mips-linux-gnu", .arch = .mips, .abi = .gnueabihf }, + .{ .name = "mips-linux-gnu-soft", .arch = .mips, .abi = .gnueabi }, + .{ .name = "mipsel-linux-gnu-soft", .arch = .mipsel, .abi = .gnueabi }, + .{ .name = "mipsel-linux-gnu", .arch = .mipsel, .abi = .gnueabihf }, + .{ .name = "mips64-linux-gnu-n64", .arch = .mips64, .abi = .gnuabi64 }, + .{ .name = "mips64-linux-gnu-n32", .arch = .mips64, .abi = .gnuabin32 }, + .{ .name = "mips64el-linux-gnu-n64", .arch = .mips64el, .abi = .gnuabi64 }, + .{ .name = "mips64el-linux-gnu-n32", .arch = .mips64el, .abi = .gnuabin32 }, + .{ .name = "powerpc-linux-gnu-soft", .arch = .powerpc, .abi = .gnueabi }, + .{ .name = "powerpc-linux-gnu", .arch = .powerpc, .abi = .gnueabihf }, + .{ .name = "powerpc64-linux-gnu", .arch = .powerpc64, .abi = .gnu }, + .{ .name = "powerpc64le-linux-gnu", .arch = .powerpc64le, .abi = .gnu }, + .{ .name = "riscv32-linux-gnu-rv32imafdc-ilp32d", .arch = .riscv32, .abi = .gnu }, + .{ .name = "riscv64-linux-gnu-rv64imafdc-lp64d", .arch = .riscv64, .abi = .gnu }, + .{ .name = "s390x-linux-gnu", .arch = .s390x, .abi = .gnu }, + .{ .name = "sparcv9-linux-gnu", .arch = .sparc, .abi = .gnu }, + .{ .name = "sparc64-linux-gnu", .arch = .sparc64, .abi = .gnu }, + .{ .name = "i686-linux-gnu", .arch = .x86, .abi = .gnu }, + .{ .name = "x86_64-linux-gnu", .arch = .x86_64, .abi = .gnu }, + .{ .name = "x86_64-linux-gnu-x32", .arch = .x86_64, .abi = .gnux32 }, }; const musl_targets = [_]LibCTarget{ - LibCTarget{ - .name = "aarch64", - .arch = MultiArch.aarch64, - .abi = MultiAbi.musl, - }, - LibCTarget{ - .name = "arm", - .arch = MultiArch.arm, - .abi = MultiAbi.musl, - }, - LibCTarget{ - .name = "i386", - .arch = MultiArch{ .specific = .x86 }, - .abi = MultiAbi.musl, - }, - LibCTarget{ - .name = "loongarch64", - .arch = MultiArch{ .specific = .loongarch64 }, - .abi = MultiAbi.musl, - }, - LibCTarget{ - .name = "mips", - .arch = MultiArch.mips, - .abi = MultiAbi.musl, - }, - LibCTarget{ - .name = "mips64", - .arch = MultiArch.mips64, - .abi = MultiAbi.musl, - }, - LibCTarget{ - .name = "powerpc", - .arch = MultiArch{ .specific = .powerpc }, - .abi = MultiAbi.musl, - }, - LibCTarget{ - .name = "powerpc64", - .arch = MultiArch.powerpc64, - .abi = MultiAbi.musl, - }, - LibCTarget{ - .name = "riscv32", - .arch = MultiArch{ .specific = .riscv32 }, - .abi = MultiAbi.musl, - }, - LibCTarget{ - .name = "riscv64", - .arch = MultiArch{ .specific = .riscv64 }, - .abi = MultiAbi.musl, - }, - LibCTarget{ - .name = "s390x", - .arch = MultiArch{ .specific = .s390x }, - .abi = MultiAbi.musl, - }, - LibCTarget{ - .name = "x86_64", - .arch = MultiArch{ .specific = .x86_64 }, - .abi = MultiAbi.musl, - }, - LibCTarget{ - .name = "m68k", - .arch = MultiArch{ .specific = .m68k }, - .abi = MultiAbi{ .specific = .musl }, - }, + .{ .name = "arm", .arch = .arm, .abi = .musl }, + .{ .name = "aarch64", .arch = .aarch64, .abi = .musl }, + .{ .name = "loongarch64", .arch = .loongarch64, .abi = .musl }, + .{ .name = "m68k", .arch = .m68k, .abi = .musl }, + .{ .name = "mips", .arch = .mips, .abi = .musl }, + .{ .name = "mips64", .arch = .mips64, .abi = .musl }, + .{ .name = "mipsn32", .arch = .mips64, .abi = .muslabin32 }, + .{ .name = "powerpc", .arch = .powerpc, .abi = .musl }, + .{ .name = "powerpc64", .arch = .powerpc64, .abi = .musl }, + .{ .name = "riscv32", .arch = .riscv32, .abi = .musl }, + .{ .name = "riscv64", .arch = .riscv64, .abi = .musl }, + .{ .name = "s390x", .arch = .s390x, .abi = .musl }, + .{ .name = "i386", .arch = .x86, .abi = .musl }, + .{ .name = "x86_64", .arch = .x86_64, .abi = .musl }, + .{ .name = "x32", .arch = .x86_64, .abi = .muslx32 }, }; const DestTarget = struct { - arch: MultiArch, + arch: Arch, os: OsTag, abi: Abi, @@ -300,7 +92,7 @@ const DestTarget = struct { pub fn eql(self: @This(), a: DestTarget, b: DestTarget, b_index: usize) bool { _ = self; _ = b_index; - return a.arch.eql(b.arch) and + return a.arch == b.arch and a.os == b.os and a.abi == b.abi; } @@ -363,22 +155,16 @@ pub fn main() !void { const out_dir = opt_out_dir orelse usageAndExit(args[0]); const abi_name = opt_abi orelse usageAndExit(args[0]); - const vendor = if (std.mem.eql(u8, abi_name, "musl")) - LibCVendor.musl - else if (std.mem.eql(u8, abi_name, "glibc")) - LibCVendor.glibc - else { + const vendor = std.meta.stringToEnum(LibCVendor, abi_name) orelse { std.debug.print("unrecognized C ABI: {s}\n", .{abi_name}); usageAndExit(args[0]); }; - const generic_name = try std.fmt.allocPrint(allocator, "generic-{s}", .{abi_name}); - // TODO compiler crashed when I wrote this the canonical way - var libc_targets: []const LibCTarget = undefined; - switch (vendor) { - .musl => libc_targets = &musl_targets, - .glibc => libc_targets = &glibc_targets, - } + const generic_name = try std.fmt.allocPrint(allocator, "generic-{s}", .{abi_name}); + const libc_targets = switch (vendor) { + .glibc => &glibc_targets, + .musl => &musl_targets, + }; var path_table = PathTable.init(allocator); var hash_to_contents = HashToContents.init(allocator); @@ -390,22 +176,15 @@ pub fn main() !void { for (libc_targets) |libc_target| { const dest_target = DestTarget{ .arch = libc_target.arch, - .abi = switch (vendor) { - .musl => .musl, - .glibc => libc_target.abi.specific, - }, .os = .linux, + .abi = libc_target.abi, }; + search: for (search_paths.items) |search_path| { - var sub_path: []const []const u8 = undefined; - switch (vendor) { - .musl => { - sub_path = &[_][]const u8{ search_path, libc_target.name, "usr", "local", "musl", "include" }; - }, - .glibc => { - sub_path = &[_][]const u8{ search_path, libc_target.name, "usr", "include" }; - }, - } + const sub_path = switch (vendor) { + .glibc => &[_][]const u8{ search_path, libc_target.name, "usr", "include" }, + .musl => &[_][]const u8{ search_path, libc_target.name, "usr", "local", "musl", "include" }, + }; const target_include_dir = try std.fs.path.join(allocator, sub_path); var dir_stack = std.ArrayList([]const u8).init(allocator); try dir_stack.append(target_include_dir); @@ -515,12 +294,8 @@ pub fn main() !void { if (contents.is_generic) continue; const dest_target = hash_kv.key_ptr.*; - const arch_name = switch (dest_target.arch) { - .specific => |a| @tagName(a), - else => @tagName(dest_target.arch), - }; const out_subpath = try std.fmt.allocPrint(allocator, "{s}-{s}-{s}", .{ - arch_name, + @tagName(dest_target.arch), @tagName(dest_target.os), @tagName(dest_target.abi), });