| author | |
| committer | |
| log | 3b2bef8a95190cb93f8edb6425dddbf845c3ad79 |
| tree | dc3bad477321bc47b93acc6d531cd3198c85d38a |
| parent | cd03a0a153aae3e0450b7878b67906fb41521d13 |
| parent | 63a9048baf64fd30c5e6d2c753bd7e584194bf7a |
| signature |
`libc`: Merge header directories for glibc and NetBSD libc where applicable1130 files changed, 10853 insertions(+), 59924 deletions(-)
lib/libc/include/aarch64-linux-gnu/gnu/lib-names-lp64_be.h created+27| ... | @@ -0,0 +1,27 @@ | ||
| 1 | /* This file is automatically generated. */ | ||
| 2 | #ifndef __GNU_LIB_NAMES_H | ||
| 3 | # error "Never use <gnu/lib-names-lp64_be.h> directly; include <gnu/lib-names.h> instead." | ||
| 4 | #endif | ||
| 5 | |||
| 6 | #define LD_LINUX_AARCH64_BE_SO "ld-linux-aarch64_be.so.1" | ||
| 7 | #define LD_SO "ld-linux-aarch64_be.so.1" | ||
| 8 | #define LIBANL_SO "libanl.so.1" | ||
| 9 | #define LIBBROKENLOCALE_SO "libBrokenLocale.so.1" | ||
| 10 | #define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0" | ||
| 11 | #define LIBC_SO "libc.so.6" | ||
| 12 | #define LIBDL_SO "libdl.so.2" | ||
| 13 | #define LIBGCC_S_SO "libgcc_s.so.1" | ||
| 14 | #define LIBMVEC_SO "libmvec.so.1" | ||
| 15 | #define LIBM_SO "libm.so.6" | ||
| 16 | #define LIBNSL_SO "libnsl.so.1" | ||
| 17 | #define LIBNSS_COMPAT_SO "libnss_compat.so.2" | ||
| 18 | #define LIBNSS_DB_SO "libnss_db.so.2" | ||
| 19 | #define LIBNSS_DNS_SO "libnss_dns.so.2" | ||
| 20 | #define LIBNSS_FILES_SO "libnss_files.so.2" | ||
| 21 | #define LIBNSS_HESIOD_SO "libnss_hesiod.so.2" | ||
| 22 | #define LIBNSS_LDAP_SO "libnss_ldap.so.2" | ||
| 23 | #define LIBPTHREAD_SO "libpthread.so.0" | ||
| 24 | #define LIBRESOLV_SO "libresolv.so.2" | ||
| 25 | #define LIBRT_SO "librt.so.1" | ||
| 26 | #define LIBTHREAD_DB_SO "libthread_db.so.1" | ||
| 27 | #define LIBUTIL_SO "libutil.so.1" | ||
| \ No newline at end of file | |||
lib/libc/include/aarch64-linux-gnu/gnu/stubs-lp64_be.h created+21| ... | @@ -0,0 +1,21 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | It defines a symbol `__stub_FUNCTION' for each function | ||
| 3 | in the C library which is a stub, meaning it will fail | ||
| 4 | every time called, usually setting errno to ENOSYS. */ | ||
| 5 | |||
| 6 | #ifdef _LIBC | ||
| 7 | #error Applications may not define the macro _LIBC | ||
| 8 | #endif | ||
| 9 | |||
| 10 | #define __stub___compat_bdflush | ||
| 11 | #define __stub___compat_create_module | ||
| 12 | #define __stub___compat_get_kernel_syms | ||
| 13 | #define __stub___compat_query_module | ||
| 14 | #define __stub___compat_uselib | ||
| 15 | #define __stub_chflags | ||
| 16 | #define __stub_fchflags | ||
| 17 | #define __stub_gtty | ||
| 18 | #define __stub_revoke | ||
| 19 | #define __stub_setlogin | ||
| 20 | #define __stub_sigreturn | ||
| 21 | #define __stub_stty | ||
| \ No newline at end of file | |||
lib/libc/include/aarch64_be-linux-gnu/bits/endianness.h deleted-15| ... | @@ -1,15 +0,0 @@ | ||
| 1 | #ifndef _BITS_ENDIANNESS_H | ||
| 2 | #define _BITS_ENDIANNESS_H 1 | ||
| 3 | |||
| 4 | #ifndef _BITS_ENDIAN_H | ||
| 5 | # error "Never use <bits/endianness.h> directly; include <endian.h> instead." | ||
| 6 | #endif | ||
| 7 | |||
| 8 | /* AArch64 has selectable endianness. */ | ||
| 9 | #ifdef __AARCH64EB__ | ||
| 10 | # define __BYTE_ORDER __BIG_ENDIAN | ||
| 11 | #else | ||
| 12 | # define __BYTE_ORDER __LITTLE_ENDIAN | ||
| 13 | #endif | ||
| 14 | |||
| 15 | #endif /* bits/endianness.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/aarch64_be-linux-gnu/bits/fcntl.h deleted-61| ... | @@ -1,61 +0,0 @@ | ||
| 1 | /* O_*, F_*, FD_* bit values for the AArch64 Linux ABI. | ||
| 2 | Copyright (C) 2011-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library. If not, see | ||
| 18 | <https://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifndef	_FCNTL_H | ||
| 21 | # error "Never use <bits/fcntl.h> directly; include <fcntl.h> instead." | ||
| 22 | #endif | ||
| 23 | |||
| 24 | #define __O_DIRECTORY	 040000 | ||
| 25 | #define __O_NOFOLLOW	0100000 | ||
| 26 | #define __O_DIRECT	0200000 | ||
| 27 | |||
| 28 | #ifdef __ILP32__ | ||
| 29 | # define __O_LARGEFILE	0400000 | ||
| 30 | #else | ||
| 31 | # define __O_LARGEFILE	0 | ||
| 32 | #endif | ||
| 33 | |||
| 34 | #ifdef __LP64__ | ||
| 35 | # define F_GETLK64	5 | ||
| 36 | # define F_SETLK64	6 | ||
| 37 | # define F_SETLKW64	7 | ||
| 38 | #endif | ||
| 39 | |||
| 40 | struct flock | ||
| 41 | { | ||
| 42 | short int l_type;	/* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK.	*/ | ||
| 43 | short int l_whence;	/* Where `l_start' is relative to (like `lseek'). */ | ||
| 44 | __off_t l_start;	/* Offset where the lock begins. */ | ||
| 45 | __off_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 46 | __pid_t l_pid;	/* Process holding the lock. */ | ||
| 47 | }; | ||
| 48 | |||
| 49 | #ifdef __USE_LARGEFILE64 | ||
| 50 | struct flock64 | ||
| 51 | { | ||
| 52 | short int l_type;	/* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK.	*/ | ||
| 53 | short int l_whence;	/* Where `l_start' is relative to (like `lseek'). */ | ||
| 54 | __off64_t l_start;	/* Offset where the lock begins. */ | ||
| 55 | __off64_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 56 | __pid_t l_pid;	/* Process holding the lock. */ | ||
| 57 | }; | ||
| 58 | #endif | ||
| 59 | |||
| 60 | /* Include generic Linux declarations. */ | ||
| 61 | #include <bits/fcntl-linux.h> | ||
| \ No newline at end of file | |||
lib/libc/include/aarch64_be-linux-gnu/bits/fenv.h deleted-82| ... | @@ -1,82 +0,0 @@ | ||
| 1 | /* Copyright (C) 2004-2025 Free Software Foundation, Inc. | ||
| 2 | |||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public License as | ||
| 7 | published by the Free Software Foundation; either version 2.1 of the | ||
| 8 | License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _FENV_H | ||
| 20 | # error "Never use <bits/fenv.h> directly; include <fenv.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Define bits representing exceptions in the FPSR status word. */ | ||
| 24 | enum | ||
| 25 | { | ||
| 26 | FE_INVALID = | ||
| 27 | #define FE_INVALID	1 | ||
| 28 | FE_INVALID, | ||
| 29 | FE_DIVBYZERO = | ||
| 30 | #define FE_DIVBYZERO	2 | ||
| 31 | FE_DIVBYZERO, | ||
| 32 | FE_OVERFLOW = | ||
| 33 | #define FE_OVERFLOW	4 | ||
| 34 | FE_OVERFLOW, | ||
| 35 | FE_UNDERFLOW = | ||
| 36 | #define FE_UNDERFLOW	8 | ||
| 37 | FE_UNDERFLOW, | ||
| 38 | FE_INEXACT = | ||
| 39 | #define FE_INEXACT	16 | ||
| 40 | FE_INEXACT, | ||
| 41 | }; | ||
| 42 | |||
| 43 | /* Amount to shift by to convert an exception bit in FPSR to a an | ||
| 44 | exception bit mask in FPCR. */ | ||
| 45 | #define FE_EXCEPT_SHIFT	8 | ||
| 46 | |||
| 47 | /* All supported exceptions. */ | ||
| 48 | #define FE_ALL_EXCEPT	\ | ||
| 49 | 	(FE_INVALID | FE_DIVBYZERO | FE_OVERFLOW | FE_UNDERFLOW | FE_INEXACT) | ||
| 50 | |||
| 51 | /* Define bits representing rounding modes in the FPCR Rmode field. */ | ||
| 52 | #define FE_TONEAREST 0x000000 | ||
| 53 | #define FE_UPWARD 0x400000 | ||
| 54 | #define FE_DOWNWARD 0x800000 | ||
| 55 | #define FE_TOWARDZERO 0xc00000 | ||
| 56 | |||
| 57 | /* Type representing exception flags. */ | ||
| 58 | typedef unsigned int fexcept_t; | ||
| 59 | |||
| 60 | /* Type representing floating-point environment. */ | ||
| 61 | typedef struct | ||
| 62 | { | ||
| 63 | unsigned int __fpcr; | ||
| 64 | unsigned int __fpsr; | ||
| 65 | } | ||
| 66 | fenv_t; | ||
| 67 | |||
| 68 | /* If the default argument is used we use this value. */ | ||
| 69 | #define FE_DFL_ENV	((const fenv_t *) -1l) | ||
| 70 | |||
| 71 | #ifdef __USE_GNU | ||
| 72 | /* Floating-point environment where none of the exceptions are masked. */ | ||
| 73 | # define FE_NOMASK_ENV ((const fenv_t *) -2) | ||
| 74 | #endif | ||
| 75 | |||
| 76 | #if __GLIBC_USE (IEC_60559_BFP_EXT_C23) | ||
| 77 | /* Type representing floating-point control modes. */ | ||
| 78 | typedef unsigned int femode_t; | ||
| 79 | |||
| 80 | /* Default floating-point control modes. */ | ||
| 81 | # define FE_DFL_MODE	((const femode_t *) -1L) | ||
| 82 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/aarch64_be-linux-gnu/bits/fp-fast.h deleted-34| ... | @@ -1,34 +0,0 @@ | ||
| 1 | /* Define FP_FAST_* macros. AArch64 version. | ||
| 2 | Copyright (C) 2016-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _MATH_H | ||
| 20 | # error "Never use <bits/fp-fast.h> directly; include <math.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifdef __USE_ISOC99 | ||
| 24 | |||
| 25 | /* The GCC 4.6 compiler will define __FP_FAST_FMA{,F,L} if the fma{,f,l} | ||
| 26 | builtins are supported. */ | ||
| 27 | # define FP_FAST_FMA 1 | ||
| 28 | # define FP_FAST_FMAF 1 | ||
| 29 | |||
| 30 | # ifdef __FP_FAST_FMAL | ||
| 31 | # define FP_FAST_FMAL 1 | ||
| 32 | # endif | ||
| 33 | |||
| 34 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/aarch64_be-linux-gnu/bits/hwcap.h deleted-122| ... | @@ -1,122 +0,0 @@ | ||
| 1 | /* Defines for bits in AT_HWCAP. AArch64 Linux version. | ||
| 2 | Copyright (C) 2016-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #if !defined (_SYS_AUXV_H) | ||
| 20 | # error "Never include <bits/hwcap.h> directly; use <sys/auxv.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* The following must match the kernel's <asm/hwcap.h> and update the | ||
| 24 | list together with sysdeps/unix/sysv/linux/aarch64/dl-procinfo.c. */ | ||
| 25 | #define HWCAP_FP		(1 << 0) | ||
| 26 | #define HWCAP_ASIMD		(1 << 1) | ||
| 27 | #define HWCAP_EVTSTRM		(1 << 2) | ||
| 28 | #define HWCAP_AES		(1 << 3) | ||
| 29 | #define HWCAP_PMULL		(1 << 4) | ||
| 30 | #define HWCAP_SHA1		(1 << 5) | ||
| 31 | #define HWCAP_SHA2		(1 << 6) | ||
| 32 | #define HWCAP_CRC32		(1 << 7) | ||
| 33 | #define HWCAP_ATOMICS		(1 << 8) | ||
| 34 | #define HWCAP_FPHP		(1 << 9) | ||
| 35 | #define HWCAP_ASIMDHP		(1 << 10) | ||
| 36 | #define HWCAP_CPUID		(1 << 11) | ||
| 37 | #define HWCAP_ASIMDRDM		(1 << 12) | ||
| 38 | #define HWCAP_JSCVT		(1 << 13) | ||
| 39 | #define HWCAP_FCMA		(1 << 14) | ||
| 40 | #define HWCAP_LRCPC		(1 << 15) | ||
| 41 | #define HWCAP_DCPOP		(1 << 16) | ||
| 42 | #define HWCAP_SHA3		(1 << 17) | ||
| 43 | #define HWCAP_SM3		(1 << 18) | ||
| 44 | #define HWCAP_SM4		(1 << 19) | ||
| 45 | #define HWCAP_ASIMDDP		(1 << 20) | ||
| 46 | #define HWCAP_SHA512		(1 << 21) | ||
| 47 | #define HWCAP_SVE		(1 << 22) | ||
| 48 | #define HWCAP_ASIMDFHM		(1 << 23) | ||
| 49 | #define HWCAP_DIT		(1 << 24) | ||
| 50 | #define HWCAP_USCAT		(1 << 25) | ||
| 51 | #define HWCAP_ILRCPC		(1 << 26) | ||
| 52 | #define HWCAP_FLAGM		(1 << 27) | ||
| 53 | #define HWCAP_SSBS		(1 << 28) | ||
| 54 | #define HWCAP_SB		(1 << 29) | ||
| 55 | #define HWCAP_PACA		(1 << 30) | ||
| 56 | #define HWCAP_PACG		(1UL << 31) | ||
| 57 | #define HWCAP_GCS		(1UL << 32) | ||
| 58 | |||
| 59 | #define HWCAP2_DCPODP		(1 << 0) | ||
| 60 | #define HWCAP2_SVE2		(1 << 1) | ||
| 61 | #define HWCAP2_SVEAES		(1 << 2) | ||
| 62 | #define HWCAP2_SVEPMULL		(1 << 3) | ||
| 63 | #define HWCAP2_SVEBITPERM	(1 << 4) | ||
| 64 | #define HWCAP2_SVESHA3		(1 << 5) | ||
| 65 | #define HWCAP2_SVESM4		(1 << 6) | ||
| 66 | #define HWCAP2_FLAGM2		(1 << 7) | ||
| 67 | #define HWCAP2_FRINT		(1 << 8) | ||
| 68 | #define HWCAP2_SVEI8MM		(1 << 9) | ||
| 69 | #define HWCAP2_SVEF32MM		(1 << 10) | ||
| 70 | #define HWCAP2_SVEF64MM		(1 << 11) | ||
| 71 | #define HWCAP2_SVEBF16		(1 << 12) | ||
| 72 | #define HWCAP2_I8MM		(1 << 13) | ||
| 73 | #define HWCAP2_BF16		(1 << 14) | ||
| 74 | #define HWCAP2_DGH		(1 << 15) | ||
| 75 | #define HWCAP2_RNG		(1 << 16) | ||
| 76 | #define HWCAP2_BTI		(1 << 17) | ||
| 77 | #define HWCAP2_MTE		(1 << 18) | ||
| 78 | #define HWCAP2_ECV		(1 << 19) | ||
| 79 | #define HWCAP2_AFP		(1 << 20) | ||
| 80 | #define HWCAP2_RPRES		(1 << 21) | ||
| 81 | #define HWCAP2_MTE3		(1 << 22) | ||
| 82 | #define HWCAP2_SME		(1 << 23) | ||
| 83 | #define HWCAP2_SME_I16I64	(1 << 24) | ||
| 84 | #define HWCAP2_SME_F64F64	(1 << 25) | ||
| 85 | #define HWCAP2_SME_I8I32	(1 << 26) | ||
| 86 | #define HWCAP2_SME_F16F32	(1 << 27) | ||
| 87 | #define HWCAP2_SME_B16F32	(1 << 28) | ||
| 88 | #define HWCAP2_SME_F32F32	(1 << 29) | ||
| 89 | #define HWCAP2_SME_FA64		(1 << 30) | ||
| 90 | #define HWCAP2_WFXT		(1UL << 31) | ||
| 91 | #define HWCAP2_EBF16		(1UL << 32) | ||
| 92 | #define HWCAP2_SVE_EBF16	(1UL << 33) | ||
| 93 | #define HWCAP2_CSSC		(1UL << 34) | ||
| 94 | #define HWCAP2_RPRFM		(1UL << 35) | ||
| 95 | #define HWCAP2_SVE2P1		(1UL << 36) | ||
| 96 | #define HWCAP2_SME2		(1UL << 37) | ||
| 97 | #define HWCAP2_SME2P1		(1UL << 38) | ||
| 98 | #define HWCAP2_SME_I16I32	(1UL << 39) | ||
| 99 | #define HWCAP2_SME_BI32I32	(1UL << 40) | ||
| 100 | #define HWCAP2_SME_B16B16	(1UL << 41) | ||
| 101 | #define HWCAP2_SME_F16F16	(1UL << 42) | ||
| 102 | #define HWCAP2_MOPS		(1UL << 43) | ||
| 103 | #define HWCAP2_HBC		(1UL << 44) | ||
| 104 | #define HWCAP2_SVE_B16B16	(1UL << 45) | ||
| 105 | #define HWCAP2_LRCPC3		(1UL << 46) | ||
| 106 | #define HWCAP2_LSE128		(1UL << 47) | ||
| 107 | #define HWCAP2_FPMR		(1UL << 48) | ||
| 108 | #define HWCAP2_LUT		(1UL << 49) | ||
| 109 | #define HWCAP2_FAMINMAX		(1UL << 50) | ||
| 110 | #define HWCAP2_F8CVT		(1UL << 51) | ||
| 111 | #define HWCAP2_F8FMA		(1UL << 52) | ||
| 112 | #define HWCAP2_F8DP4		(1UL << 53) | ||
| 113 | #define HWCAP2_F8DP2		(1UL << 54) | ||
| 114 | #define HWCAP2_F8E4M3		(1UL << 55) | ||
| 115 | #define HWCAP2_F8E5M2		(1UL << 56) | ||
| 116 | #define HWCAP2_SME_LUTV2	(1UL << 57) | ||
| 117 | #define HWCAP2_SME_F8F16	(1UL << 58) | ||
| 118 | #define HWCAP2_SME_F8F32	(1UL << 59) | ||
| 119 | #define HWCAP2_SME_SF8FMA	(1UL << 60) | ||
| 120 | #define HWCAP2_SME_SF8DP4	(1UL << 61) | ||
| 121 | #define HWCAP2_SME_SF8DP2	(1UL << 62) | ||
| 122 | #define HWCAP2_POE		(1UL << 63) | ||
| \ No newline at end of file | |||
lib/libc/include/aarch64_be-linux-gnu/bits/indirect-return.h deleted-36| ... | @@ -1,36 +0,0 @@ | ||
| 1 | /* Definition of __INDIRECT_RETURN. AArch64 version. | ||
| 2 | Copyright (C) 2024-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _UCONTEXT_H | ||
| 20 | # error "Never include <bits/indirect-return.h> directly; use <ucontext.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* __INDIRECT_RETURN indicates that swapcontext may return via | ||
| 24 | an indirect branch. This happens when GCS is enabled, so | ||
| 25 | add the attribute if available, otherwise returns_twice has | ||
| 26 | a similar effect, but it prevents some code transformations | ||
| 27 | that can cause build failures in some rare cases so it is | ||
| 28 | only used when GCS is enabled. */ | ||
| 29 | #if __glibc_has_attribute (__indirect_return__) | ||
| 30 | # define __INDIRECT_RETURN __attribute__ ((__indirect_return__)) | ||
| 31 | #elif __glibc_has_attribute (__returns_twice__) \ | ||
| 32 | && defined __ARM_FEATURE_GCS_DEFAULT | ||
| 33 | # define __INDIRECT_RETURN __attribute__ ((__returns_twice__)) | ||
| 34 | #else | ||
| 35 | # define __INDIRECT_RETURN | ||
| 36 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/aarch64_be-linux-gnu/bits/link.h deleted-68| ... | @@ -1,68 +0,0 @@ | ||
| 1 | /* Copyright (C) 2005-2025 Free Software Foundation, Inc. | ||
| 2 | |||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public License as | ||
| 7 | published by the Free Software Foundation; either version 2.1 of the | ||
| 8 | License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef	_LINK_H | ||
| 20 | # error "Never include <bits/link.h> directly; use <link.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | typedef union | ||
| 24 | { | ||
| 25 | float s; | ||
| 26 | double d; | ||
| 27 | long double q; | ||
| 28 | } La_aarch64_vector; | ||
| 29 | |||
| 30 | /* Registers for entry into PLT on AArch64. */ | ||
| 31 | typedef struct La_aarch64_regs | ||
| 32 | { | ||
| 33 | uint64_t lr_xreg[9]; | ||
| 34 | La_aarch64_vector lr_vreg[8]; | ||
| 35 | uint64_t lr_sp; | ||
| 36 | uint64_t lr_lr; | ||
| 37 | void *lr_vpcs; | ||
| 38 | } La_aarch64_regs; | ||
| 39 | |||
| 40 | /* Return values for calls from PLT on AArch64. */ | ||
| 41 | typedef struct La_aarch64_retval | ||
| 42 | { | ||
| 43 | /* Up to eight integer registers can be used for a return value. */ | ||
| 44 | uint64_t lrv_xreg[8]; | ||
| 45 | /* Up to eight V registers can be used for a return value. */ | ||
| 46 | La_aarch64_vector lrv_vreg[8]; | ||
| 47 | void *lrv_vpcs; | ||
| 48 | } La_aarch64_retval; | ||
| 49 | __BEGIN_DECLS | ||
| 50 | |||
| 51 | extern ElfW(Addr) | ||
| 52 | la_aarch64_gnu_pltenter (ElfW(Sym) *__sym, unsigned int __ndx, | ||
| 53 | 			 uintptr_t *__refcook, | ||
| 54 | 			 uintptr_t *__defcook, | ||
| 55 | 			 La_aarch64_regs *__regs, | ||
| 56 | 			 unsigned int *__flags, | ||
| 57 | 			 const char *__symname, | ||
| 58 | 			 long int *__framesizep); | ||
| 59 | |||
| 60 | extern unsigned int | ||
| 61 | la_aarch64_gnu_pltexit (ElfW(Sym) *__sym, unsigned int __ndx, | ||
| 62 | 			uintptr_t *__refcook, | ||
| 63 | 			uintptr_t *__defcook, | ||
| 64 | 			const La_aarch64_regs *__inregs, | ||
| 65 | 			La_aarch64_retval *__outregs, | ||
| 66 | 			const char *__symname); | ||
| 67 | |||
| 68 | __END_DECLS | ||
| \ No newline at end of file | |||
lib/libc/include/aarch64_be-linux-gnu/bits/long-double.h deleted-21| ... | @@ -1,21 +0,0 @@ | ||
| 1 | /* Properties of long double type. ldbl-128 version. | ||
| 2 | Copyright (C) 2016-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* long double is distinct from double, so there is nothing to | ||
| 20 | define here. */ | ||
| 21 | #define __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI 0 | ||
| \ No newline at end of file | |||
lib/libc/include/aarch64_be-linux-gnu/bits/math-vector.h deleted-308| ... | @@ -1,308 +0,0 @@ | ||
| 1 | /* Platform-specific SIMD declarations of math functions. | ||
| 2 | |||
| 3 | Copyright (C) 2023-2025 Free Software Foundation, Inc. | ||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library; if not, see | ||
| 18 | <https://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifndef _MATH_H | ||
| 21 | # error "Never include <bits/math-vector.h> directly;\ | ||
| 22 | include <math.h> instead." | ||
| 23 | #endif | ||
| 24 | |||
| 25 | /* Get default empty definitions for simd declarations. */ | ||
| 26 | #include <bits/libm-simd-decl-stubs.h> | ||
| 27 | |||
| 28 | #if defined __aarch64__ && defined __FAST_MATH__ && __GNUC_PREREQ (6, 0) | ||
| 29 | /* Requires GCC >= 6 for __attribute__ ((__simd__)). */ | ||
| 30 | # define __DECL_SIMD_aarch64 __attribute__ ((__simd__ ("notinbranch"), const)) | ||
| 31 | |||
| 32 | # undef __DECL_SIMD_acos | ||
| 33 | # define __DECL_SIMD_acos __DECL_SIMD_aarch64 | ||
| 34 | # undef __DECL_SIMD_acosf | ||
| 35 | # define __DECL_SIMD_acosf __DECL_SIMD_aarch64 | ||
| 36 | # undef __DECL_SIMD_acosh | ||
| 37 | # define __DECL_SIMD_acosh __DECL_SIMD_aarch64 | ||
| 38 | # undef __DECL_SIMD_acoshf | ||
| 39 | # define __DECL_SIMD_acoshf __DECL_SIMD_aarch64 | ||
| 40 | # undef __DECL_SIMD_asin | ||
| 41 | # define __DECL_SIMD_asin __DECL_SIMD_aarch64 | ||
| 42 | # undef __DECL_SIMD_asinf | ||
| 43 | # define __DECL_SIMD_asinf __DECL_SIMD_aarch64 | ||
| 44 | # undef __DECL_SIMD_asinh | ||
| 45 | # define __DECL_SIMD_asinh __DECL_SIMD_aarch64 | ||
| 46 | # undef __DECL_SIMD_asinhf | ||
| 47 | # define __DECL_SIMD_asinhf __DECL_SIMD_aarch64 | ||
| 48 | # undef __DECL_SIMD_atan | ||
| 49 | # define __DECL_SIMD_atan __DECL_SIMD_aarch64 | ||
| 50 | # undef __DECL_SIMD_atanf | ||
| 51 | # define __DECL_SIMD_atanf __DECL_SIMD_aarch64 | ||
| 52 | # undef __DECL_SIMD_atanh | ||
| 53 | # define __DECL_SIMD_atanh __DECL_SIMD_aarch64 | ||
| 54 | # undef __DECL_SIMD_atanhf | ||
| 55 | # define __DECL_SIMD_atanhf __DECL_SIMD_aarch64 | ||
| 56 | # undef __DECL_SIMD_atan2 | ||
| 57 | # define __DECL_SIMD_atan2 __DECL_SIMD_aarch64 | ||
| 58 | # undef __DECL_SIMD_atan2f | ||
| 59 | # define __DECL_SIMD_atan2f __DECL_SIMD_aarch64 | ||
| 60 | # undef __DECL_SIMD_cbrt | ||
| 61 | # define __DECL_SIMD_cbrt __DECL_SIMD_aarch64 | ||
| 62 | # undef __DECL_SIMD_cbrtf | ||
| 63 | # define __DECL_SIMD_cbrtf __DECL_SIMD_aarch64 | ||
| 64 | # undef __DECL_SIMD_cos | ||
| 65 | # define __DECL_SIMD_cos __DECL_SIMD_aarch64 | ||
| 66 | # undef __DECL_SIMD_cosf | ||
| 67 | # define __DECL_SIMD_cosf __DECL_SIMD_aarch64 | ||
| 68 | # undef __DECL_SIMD_cosh | ||
| 69 | # define __DECL_SIMD_cosh __DECL_SIMD_aarch64 | ||
| 70 | # undef __DECL_SIMD_coshf | ||
| 71 | # define __DECL_SIMD_coshf __DECL_SIMD_aarch64 | ||
| 72 | # undef __DECL_SIMD_cospi | ||
| 73 | # define __DECL_SIMD_cospi __DECL_SIMD_aarch64 | ||
| 74 | # undef __DECL_SIMD_cospif | ||
| 75 | # define __DECL_SIMD_cospif __DECL_SIMD_aarch64 | ||
| 76 | # undef __DECL_SIMD_erf | ||
| 77 | # define __DECL_SIMD_erf __DECL_SIMD_aarch64 | ||
| 78 | # undef __DECL_SIMD_erff | ||
| 79 | # define __DECL_SIMD_erff __DECL_SIMD_aarch64 | ||
| 80 | # undef __DECL_SIMD_erfc | ||
| 81 | # define __DECL_SIMD_erfc __DECL_SIMD_aarch64 | ||
| 82 | # undef __DECL_SIMD_erfcf | ||
| 83 | # define __DECL_SIMD_erfcf __DECL_SIMD_aarch64 | ||
| 84 | # undef __DECL_SIMD_exp | ||
| 85 | # define __DECL_SIMD_exp __DECL_SIMD_aarch64 | ||
| 86 | # undef __DECL_SIMD_expf | ||
| 87 | # define __DECL_SIMD_expf __DECL_SIMD_aarch64 | ||
| 88 | # undef __DECL_SIMD_exp10 | ||
| 89 | # define __DECL_SIMD_exp10 __DECL_SIMD_aarch64 | ||
| 90 | # undef __DECL_SIMD_exp10f | ||
| 91 | # define __DECL_SIMD_exp10f __DECL_SIMD_aarch64 | ||
| 92 | # undef __DECL_SIMD_exp2 | ||
| 93 | # define __DECL_SIMD_exp2 __DECL_SIMD_aarch64 | ||
| 94 | # undef __DECL_SIMD_exp2f | ||
| 95 | # define __DECL_SIMD_exp2f __DECL_SIMD_aarch64 | ||
| 96 | # undef __DECL_SIMD_expm1 | ||
| 97 | # define __DECL_SIMD_expm1 __DECL_SIMD_aarch64 | ||
| 98 | # undef __DECL_SIMD_expm1f | ||
| 99 | # define __DECL_SIMD_expm1f __DECL_SIMD_aarch64 | ||
| 100 | # undef __DECL_SIMD_hypot | ||
| 101 | # define __DECL_SIMD_hypot __DECL_SIMD_aarch64 | ||
| 102 | # undef __DECL_SIMD_hypotf | ||
| 103 | # define __DECL_SIMD_hypotf __DECL_SIMD_aarch64 | ||
| 104 | # undef __DECL_SIMD_log | ||
| 105 | # define __DECL_SIMD_log __DECL_SIMD_aarch64 | ||
| 106 | # undef __DECL_SIMD_logf | ||
| 107 | # define __DECL_SIMD_logf __DECL_SIMD_aarch64 | ||
| 108 | # undef __DECL_SIMD_log10 | ||
| 109 | # define __DECL_SIMD_log10 __DECL_SIMD_aarch64 | ||
| 110 | # undef __DECL_SIMD_log10f | ||
| 111 | # define __DECL_SIMD_log10f __DECL_SIMD_aarch64 | ||
| 112 | # undef __DECL_SIMD_log1p | ||
| 113 | # define __DECL_SIMD_log1p __DECL_SIMD_aarch64 | ||
| 114 | # undef __DECL_SIMD_log1pf | ||
| 115 | # define __DECL_SIMD_log1pf __DECL_SIMD_aarch64 | ||
| 116 | # undef __DECL_SIMD_log2 | ||
| 117 | # define __DECL_SIMD_log2 __DECL_SIMD_aarch64 | ||
| 118 | # undef __DECL_SIMD_log2f | ||
| 119 | # define __DECL_SIMD_log2f __DECL_SIMD_aarch64 | ||
| 120 | # undef __DECL_SIMD_logp1 | ||
| 121 | # define __DECL_SIMD_logp1 __DECL_SIMD_aarch64 | ||
| 122 | # undef __DECL_SIMD_logp1f | ||
| 123 | # define __DECL_SIMD_logp1f __DECL_SIMD_aarch64 | ||
| 124 | # undef __DECL_SIMD_pow | ||
| 125 | # define __DECL_SIMD_pow __DECL_SIMD_aarch64 | ||
| 126 | # undef __DECL_SIMD_powf | ||
| 127 | # define __DECL_SIMD_powf __DECL_SIMD_aarch64 | ||
| 128 | # undef __DECL_SIMD_sin | ||
| 129 | # define __DECL_SIMD_sin __DECL_SIMD_aarch64 | ||
| 130 | # undef __DECL_SIMD_sinf | ||
| 131 | # define __DECL_SIMD_sinf __DECL_SIMD_aarch64 | ||
| 132 | # undef __DECL_SIMD_sinh | ||
| 133 | # define __DECL_SIMD_sinh __DECL_SIMD_aarch64 | ||
| 134 | # undef __DECL_SIMD_sinhf | ||
| 135 | # define __DECL_SIMD_sinhf __DECL_SIMD_aarch64 | ||
| 136 | # undef __DECL_SIMD_sinpi | ||
| 137 | # define __DECL_SIMD_sinpi __DECL_SIMD_aarch64 | ||
| 138 | # undef __DECL_SIMD_sinpif | ||
| 139 | # define __DECL_SIMD_sinpif __DECL_SIMD_aarch64 | ||
| 140 | # undef __DECL_SIMD_tan | ||
| 141 | # define __DECL_SIMD_tan __DECL_SIMD_aarch64 | ||
| 142 | # undef __DECL_SIMD_tanf | ||
| 143 | # define __DECL_SIMD_tanf __DECL_SIMD_aarch64 | ||
| 144 | # undef __DECL_SIMD_tanh | ||
| 145 | # define __DECL_SIMD_tanh __DECL_SIMD_aarch64 | ||
| 146 | # undef __DECL_SIMD_tanhf | ||
| 147 | # define __DECL_SIMD_tanhf __DECL_SIMD_aarch64 | ||
| 148 | # undef __DECL_SIMD_tanpi | ||
| 149 | # define __DECL_SIMD_tanpi __DECL_SIMD_aarch64 | ||
| 150 | # undef __DECL_SIMD_tanpif | ||
| 151 | # define __DECL_SIMD_tanpif __DECL_SIMD_aarch64 | ||
| 152 | #endif | ||
| 153 | |||
| 154 | #if __GNUC_PREREQ(9, 0) | ||
| 155 | # define __ADVSIMD_VEC_MATH_SUPPORTED | ||
| 156 | typedef __Float32x4_t __f32x4_t; | ||
| 157 | typedef __Float64x2_t __f64x2_t; | ||
| 158 | #elif __glibc_clang_prereq(8, 0) | ||
| 159 | # define __ADVSIMD_VEC_MATH_SUPPORTED | ||
| 160 | typedef __attribute__ ((__neon_vector_type__ (4))) float __f32x4_t; | ||
| 161 | typedef __attribute__ ((__neon_vector_type__ (2))) double __f64x2_t; | ||
| 162 | #endif | ||
| 163 | |||
| 164 | #if __GNUC_PREREQ(10, 0) || __glibc_clang_prereq(11, 0) | ||
| 165 | # define __SVE_VEC_MATH_SUPPORTED | ||
| 166 | typedef __SVFloat32_t __sv_f32_t; | ||
| 167 | typedef __SVFloat64_t __sv_f64_t; | ||
| 168 | typedef __SVBool_t __sv_bool_t; | ||
| 169 | #endif | ||
| 170 | |||
| 171 | /* If vector types and vector PCS are unsupported in the working | ||
| 172 | compiler, no choice but to omit vector math declarations. */ | ||
| 173 | |||
| 174 | #ifdef __ADVSIMD_VEC_MATH_SUPPORTED | ||
| 175 | |||
| 176 | # define __vpcs __attribute__ ((__aarch64_vector_pcs__)) | ||
| 177 | |||
| 178 | __vpcs __f32x4_t _ZGVnN4vv_atan2f (__f32x4_t, __f32x4_t); | ||
| 179 | __vpcs __f32x4_t _ZGVnN4v_acosf (__f32x4_t); | ||
| 180 | __vpcs __f32x4_t _ZGVnN4v_acoshf (__f32x4_t); | ||
| 181 | __vpcs __f32x4_t _ZGVnN4v_asinf (__f32x4_t); | ||
| 182 | __vpcs __f32x4_t _ZGVnN4v_asinhf (__f32x4_t); | ||
| 183 | __vpcs __f32x4_t _ZGVnN4v_atanf (__f32x4_t); | ||
| 184 | __vpcs __f32x4_t _ZGVnN4v_atanhf (__f32x4_t); | ||
| 185 | __vpcs __f32x4_t _ZGVnN4v_cbrtf (__f32x4_t); | ||
| 186 | __vpcs __f32x4_t _ZGVnN4v_cosf (__f32x4_t); | ||
| 187 | __vpcs __f32x4_t _ZGVnN4v_coshf (__f32x4_t); | ||
| 188 | __vpcs __f32x4_t _ZGVnN4v_cospif (__f32x4_t); | ||
| 189 | __vpcs __f32x4_t _ZGVnN4v_erff (__f32x4_t); | ||
| 190 | __vpcs __f32x4_t _ZGVnN4v_erfcf (__f32x4_t); | ||
| 191 | __vpcs __f32x4_t _ZGVnN4v_expf (__f32x4_t); | ||
| 192 | __vpcs __f32x4_t _ZGVnN4v_exp10f (__f32x4_t); | ||
| 193 | __vpcs __f32x4_t _ZGVnN4v_exp2f (__f32x4_t); | ||
| 194 | __vpcs __f32x4_t _ZGVnN4v_expm1f (__f32x4_t); | ||
| 195 | __vpcs __f32x4_t _ZGVnN4vv_hypotf (__f32x4_t, __f32x4_t); | ||
| 196 | __vpcs __f32x4_t _ZGVnN4v_logf (__f32x4_t); | ||
| 197 | __vpcs __f32x4_t _ZGVnN4v_log10f (__f32x4_t); | ||
| 198 | __vpcs __f32x4_t _ZGVnN4v_log1pf (__f32x4_t); | ||
| 199 | __vpcs __f32x4_t _ZGVnN4v_log2f (__f32x4_t); | ||
| 200 | __vpcs __f32x4_t _ZGVnN4v_logp1f (__f32x4_t); | ||
| 201 | __vpcs __f32x4_t _ZGVnN4vv_powf (__f32x4_t, __f32x4_t); | ||
| 202 | __vpcs __f32x4_t _ZGVnN4v_sinf (__f32x4_t); | ||
| 203 | __vpcs __f32x4_t _ZGVnN4v_sinhf (__f32x4_t); | ||
| 204 | __vpcs __f32x4_t _ZGVnN4v_sinpif (__f32x4_t); | ||
| 205 | __vpcs __f32x4_t _ZGVnN4v_tanf (__f32x4_t); | ||
| 206 | __vpcs __f32x4_t _ZGVnN4v_tanhf (__f32x4_t); | ||
| 207 | __vpcs __f32x4_t _ZGVnN4v_tanpif (__f32x4_t); | ||
| 208 | |||
| 209 | __vpcs __f64x2_t _ZGVnN2vv_atan2 (__f64x2_t, __f64x2_t); | ||
| 210 | __vpcs __f64x2_t _ZGVnN2v_acos (__f64x2_t); | ||
| 211 | __vpcs __f64x2_t _ZGVnN2v_acosh (__f64x2_t); | ||
| 212 | __vpcs __f64x2_t _ZGVnN2v_asin (__f64x2_t); | ||
| 213 | __vpcs __f64x2_t _ZGVnN2v_asinh (__f64x2_t); | ||
| 214 | __vpcs __f64x2_t _ZGVnN2v_atan (__f64x2_t); | ||
| 215 | __vpcs __f64x2_t _ZGVnN2v_atanh (__f64x2_t); | ||
| 216 | __vpcs __f64x2_t _ZGVnN2v_cbrt (__f64x2_t); | ||
| 217 | __vpcs __f64x2_t _ZGVnN2v_cos (__f64x2_t); | ||
| 218 | __vpcs __f64x2_t _ZGVnN2v_cosh (__f64x2_t); | ||
| 219 | __vpcs __f64x2_t _ZGVnN2v_cospi (__f64x2_t); | ||
| 220 | __vpcs __f64x2_t _ZGVnN2v_erf (__f64x2_t); | ||
| 221 | __vpcs __f64x2_t _ZGVnN2v_erfc (__f64x2_t); | ||
| 222 | __vpcs __f64x2_t _ZGVnN2v_exp (__f64x2_t); | ||
| 223 | __vpcs __f64x2_t _ZGVnN2v_exp10 (__f64x2_t); | ||
| 224 | __vpcs __f64x2_t _ZGVnN2v_exp2 (__f64x2_t); | ||
| 225 | __vpcs __f64x2_t _ZGVnN2v_expm1 (__f64x2_t); | ||
| 226 | __vpcs __f64x2_t _ZGVnN2vv_hypot (__f64x2_t, __f64x2_t); | ||
| 227 | __vpcs __f64x2_t _ZGVnN2v_log (__f64x2_t); | ||
| 228 | __vpcs __f64x2_t _ZGVnN2v_log10 (__f64x2_t); | ||
| 229 | __vpcs __f64x2_t _ZGVnN2v_log1p (__f64x2_t); | ||
| 230 | __vpcs __f64x2_t _ZGVnN2v_log2 (__f64x2_t); | ||
| 231 | __vpcs __f64x2_t _ZGVnN2v_logp1 (__f64x2_t); | ||
| 232 | __vpcs __f64x2_t _ZGVnN2vv_pow (__f64x2_t, __f64x2_t); | ||
| 233 | __vpcs __f64x2_t _ZGVnN2v_sin (__f64x2_t); | ||
| 234 | __vpcs __f64x2_t _ZGVnN2v_sinh (__f64x2_t); | ||
| 235 | __vpcs __f64x2_t _ZGVnN2v_sinpi (__f64x2_t); | ||
| 236 | __vpcs __f64x2_t _ZGVnN2v_tan (__f64x2_t); | ||
| 237 | __vpcs __f64x2_t _ZGVnN2v_tanh (__f64x2_t); | ||
| 238 | __vpcs __f64x2_t _ZGVnN2v_tanpi (__f64x2_t); | ||
| 239 | |||
| 240 | # undef __ADVSIMD_VEC_MATH_SUPPORTED | ||
| 241 | #endif /* __ADVSIMD_VEC_MATH_SUPPORTED */ | ||
| 242 | |||
| 243 | #ifdef __SVE_VEC_MATH_SUPPORTED | ||
| 244 | |||
| 245 | __sv_f32_t _ZGVsMxvv_atan2f (__sv_f32_t, __sv_f32_t, __sv_bool_t); | ||
| 246 | __sv_f32_t _ZGVsMxv_acosf (__sv_f32_t, __sv_bool_t); | ||
| 247 | __sv_f32_t _ZGVsMxv_acoshf (__sv_f32_t, __sv_bool_t); | ||
| 248 | __sv_f32_t _ZGVsMxv_asinf (__sv_f32_t, __sv_bool_t); | ||
| 249 | __sv_f32_t _ZGVsMxv_asinhf (__sv_f32_t, __sv_bool_t); | ||
| 250 | __sv_f32_t _ZGVsMxv_atanf (__sv_f32_t, __sv_bool_t); | ||
| 251 | __sv_f32_t _ZGVsMxv_atanhf (__sv_f32_t, __sv_bool_t); | ||
| 252 | __sv_f32_t _ZGVsMxv_cbrtf (__sv_f32_t, __sv_bool_t); | ||
| 253 | __sv_f32_t _ZGVsMxv_cosf (__sv_f32_t, __sv_bool_t); | ||
| 254 | __sv_f32_t _ZGVsMxv_coshf (__sv_f32_t, __sv_bool_t); | ||
| 255 | __sv_f32_t _ZGVsMxv_cospif (__sv_f32_t, __sv_bool_t); | ||
| 256 | __sv_f32_t _ZGVsMxv_erff (__sv_f32_t, __sv_bool_t); | ||
| 257 | __sv_f32_t _ZGVsMxv_erfcf (__sv_f32_t, __sv_bool_t); | ||
| 258 | __sv_f32_t _ZGVsMxv_expf (__sv_f32_t, __sv_bool_t); | ||
| 259 | __sv_f32_t _ZGVsMxv_exp10f (__sv_f32_t, __sv_bool_t); | ||
| 260 | __sv_f32_t _ZGVsMxv_exp2f (__sv_f32_t, __sv_bool_t); | ||
| 261 | __sv_f32_t _ZGVsMxv_expm1f (__sv_f32_t, __sv_bool_t); | ||
| 262 | __sv_f32_t _ZGVsMxvv_hypotf (__sv_f32_t, __sv_f32_t, __sv_bool_t); | ||
| 263 | __sv_f32_t _ZGVsMxv_logf (__sv_f32_t, __sv_bool_t); | ||
| 264 | __sv_f32_t _ZGVsMxv_log10f (__sv_f32_t, __sv_bool_t); | ||
| 265 | __sv_f32_t _ZGVsMxv_log1pf (__sv_f32_t, __sv_bool_t); | ||
| 266 | __sv_f32_t _ZGVsMxv_log2f (__sv_f32_t, __sv_bool_t); | ||
| 267 | __sv_f32_t _ZGVsMxv_logp1f (__sv_f32_t, __sv_bool_t); | ||
| 268 | __sv_f32_t _ZGVsMxvv_powf (__sv_f32_t, __sv_f32_t, __sv_bool_t); | ||
| 269 | __sv_f32_t _ZGVsMxv_sinf (__sv_f32_t, __sv_bool_t); | ||
| 270 | __sv_f32_t _ZGVsMxv_sinhf (__sv_f32_t, __sv_bool_t); | ||
| 271 | __sv_f32_t _ZGVsMxv_sinpif (__sv_f32_t, __sv_bool_t); | ||
| 272 | __sv_f32_t _ZGVsMxv_tanf (__sv_f32_t, __sv_bool_t); | ||
| 273 | __sv_f32_t _ZGVsMxv_tanhf (__sv_f32_t, __sv_bool_t); | ||
| 274 | __sv_f32_t _ZGVsMxv_tanpif (__sv_f32_t, __sv_bool_t); | ||
| 275 | |||
| 276 | __sv_f64_t _ZGVsMxvv_atan2 (__sv_f64_t, __sv_f64_t, __sv_bool_t); | ||
| 277 | __sv_f64_t _ZGVsMxv_acos (__sv_f64_t, __sv_bool_t); | ||
| 278 | __sv_f64_t _ZGVsMxv_acosh (__sv_f64_t, __sv_bool_t); | ||
| 279 | __sv_f64_t _ZGVsMxv_asin (__sv_f64_t, __sv_bool_t); | ||
| 280 | __sv_f64_t _ZGVsMxv_asinh (__sv_f64_t, __sv_bool_t); | ||
| 281 | __sv_f64_t _ZGVsMxv_atan (__sv_f64_t, __sv_bool_t); | ||
| 282 | __sv_f64_t _ZGVsMxv_atanh (__sv_f64_t, __sv_bool_t); | ||
| 283 | __sv_f64_t _ZGVsMxv_cbrt (__sv_f64_t, __sv_bool_t); | ||
| 284 | __sv_f64_t _ZGVsMxv_cos (__sv_f64_t, __sv_bool_t); | ||
| 285 | __sv_f64_t _ZGVsMxv_cosh (__sv_f64_t, __sv_bool_t); | ||
| 286 | __sv_f64_t _ZGVsMxv_cospi (__sv_f64_t, __sv_bool_t); | ||
| 287 | __sv_f64_t _ZGVsMxv_erf (__sv_f64_t, __sv_bool_t); | ||
| 288 | __sv_f64_t _ZGVsMxv_erfc (__sv_f64_t, __sv_bool_t); | ||
| 289 | __sv_f64_t _ZGVsMxv_exp (__sv_f64_t, __sv_bool_t); | ||
| 290 | __sv_f64_t _ZGVsMxv_exp10 (__sv_f64_t, __sv_bool_t); | ||
| 291 | __sv_f64_t _ZGVsMxv_exp2 (__sv_f64_t, __sv_bool_t); | ||
| 292 | __sv_f64_t _ZGVsMxv_expm1 (__sv_f64_t, __sv_bool_t); | ||
| 293 | __sv_f64_t _ZGVsMxvv_hypot (__sv_f64_t, __sv_f64_t, __sv_bool_t); | ||
| 294 | __sv_f64_t _ZGVsMxv_log (__sv_f64_t, __sv_bool_t); | ||
| 295 | __sv_f64_t _ZGVsMxv_log10 (__sv_f64_t, __sv_bool_t); | ||
| 296 | __sv_f64_t _ZGVsMxv_log1p (__sv_f64_t, __sv_bool_t); | ||
| 297 | __sv_f64_t _ZGVsMxv_log2 (__sv_f64_t, __sv_bool_t); | ||
| 298 | __sv_f64_t _ZGVsMxv_logp1 (__sv_f64_t, __sv_bool_t); | ||
| 299 | __sv_f64_t _ZGVsMxvv_pow (__sv_f64_t, __sv_f64_t, __sv_bool_t); | ||
| 300 | __sv_f64_t _ZGVsMxv_sin (__sv_f64_t, __sv_bool_t); | ||
| 301 | __sv_f64_t _ZGVsMxv_sinh (__sv_f64_t, __sv_bool_t); | ||
| 302 | __sv_f64_t _ZGVsMxv_sinpi (__sv_f64_t, __sv_bool_t); | ||
| 303 | __sv_f64_t _ZGVsMxv_tan (__sv_f64_t, __sv_bool_t); | ||
| 304 | __sv_f64_t _ZGVsMxv_tanh (__sv_f64_t, __sv_bool_t); | ||
| 305 | __sv_f64_t _ZGVsMxv_tanpi (__sv_f64_t, __sv_bool_t); | ||
| 306 | |||
| 307 | # undef __SVE_VEC_MATH_SUPPORTED | ||
| 308 | #endif /* __SVE_VEC_MATH_SUPPORTED */ | ||
| \ No newline at end of file | |||
lib/libc/include/aarch64_be-linux-gnu/bits/mman.h deleted-40| ... | @@ -1,40 +0,0 @@ | ||
| 1 | /* Definitions for POSIX memory map interface. Linux/AArch64 version. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_MMAN_H | ||
| 20 | # error "Never use <bits/mman.h> directly; include <sys/mman.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* AArch64 specific definitions, should be in sync with | ||
| 24 | arch/arm64/include/uapi/asm/mman.h. */ | ||
| 25 | |||
| 26 | #define PROT_BTI	0x10 | ||
| 27 | #define PROT_MTE	0x20 | ||
| 28 | |||
| 29 | #ifdef __USE_GNU | ||
| 30 | # define PKEY_UNRESTRICTED 0x0 | ||
| 31 | # define PKEY_DISABLE_ACCESS 0x1 | ||
| 32 | # define PKEY_DISABLE_WRITE 0x2 | ||
| 33 | # define PKEY_DISABLE_EXECUTE 0x4 | ||
| 34 | # define PKEY_DISABLE_READ 0x8 | ||
| 35 | #endif | ||
| 36 | |||
| 37 | #include <bits/mman-map-flags-generic.h> | ||
| 38 | |||
| 39 | /* Include generic Linux declarations. */ | ||
| 40 | #include <bits/mman-linux.h> | ||
| \ No newline at end of file | |||
lib/libc/include/aarch64_be-linux-gnu/bits/procfs.h deleted-35| ... | @@ -1,35 +0,0 @@ | ||
| 1 | /* Types for registers for sys/procfs.h. AArch64 version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library; if not, see | ||
| 18 | <https://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifndef _SYS_PROCFS_H | ||
| 21 | # error "Never include <bits/procfs.h> directly; use <sys/procfs.h> instead." | ||
| 22 | #endif | ||
| 23 | |||
| 24 | /* Type for a general-purpose register. */ | ||
| 25 | typedef __uint64_t elf_greg_t; | ||
| 26 | |||
| 27 | /* And the whole bunch of them. We could have used `struct | ||
| 28 | pt_regs' directly in the typedef, but tradition says that | ||
| 29 | the register set is an array, which does have some peculiar | ||
| 30 | semantics, so leave it that way. */ | ||
| 31 | #define ELF_NGREG (sizeof (struct user_regs_struct) / sizeof (elf_greg_t)) | ||
| 32 | typedef elf_greg_t elf_gregset_t[ELF_NGREG]; | ||
| 33 | |||
| 34 | /* Register set for the floating-point registers. */ | ||
| 35 | typedef struct user_fpsimd_struct elf_fpregset_t; | ||
| \ No newline at end of file | |||
lib/libc/include/aarch64_be-linux-gnu/bits/pthread_stack_min.h deleted-22| ... | @@ -1,22 +0,0 @@ | ||
| 1 | /* Definition of PTHREAD_STACK_MIN. Linux/aarch64 version. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public License as | ||
| 8 | published by the Free Software Foundation; either version 2.1 of the | ||
| 9 | License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library. If not, see | ||
| 18 | <https://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | /* Minimum size for a thread. At least two pages for systems with 64k | ||
| 21 | pages. */ | ||
| 22 | #define PTHREAD_STACK_MIN	131072 | ||
| \ No newline at end of file | |||
lib/libc/include/aarch64_be-linux-gnu/bits/pthreadtypes-arch.h deleted-47| ... | @@ -1,47 +0,0 @@ | ||
| 1 | /* Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 2 | |||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_PTHREADTYPES_ARCH_H | ||
| 20 | #define _BITS_PTHREADTYPES_ARCH_H	1 | ||
| 21 | |||
| 22 | #include <bits/endian.h> | ||
| 23 | |||
| 24 | #ifdef __ILP32__ | ||
| 25 | # define __SIZEOF_PTHREAD_ATTR_T 32 | ||
| 26 | # define __SIZEOF_PTHREAD_MUTEX_T 32 | ||
| 27 | # define __SIZEOF_PTHREAD_MUTEXATTR_T 4 | ||
| 28 | # define __SIZEOF_PTHREAD_CONDATTR_T 4 | ||
| 29 | # define __SIZEOF_PTHREAD_RWLOCK_T 48 | ||
| 30 | # define __SIZEOF_PTHREAD_BARRIER_T 20 | ||
| 31 | # define __SIZEOF_PTHREAD_BARRIERATTR_T 4 | ||
| 32 | #else | ||
| 33 | # define __SIZEOF_PTHREAD_ATTR_T 64 | ||
| 34 | # define __SIZEOF_PTHREAD_MUTEX_T 48 | ||
| 35 | # define __SIZEOF_PTHREAD_MUTEXATTR_T 8 | ||
| 36 | # define __SIZEOF_PTHREAD_CONDATTR_T 8 | ||
| 37 | # define __SIZEOF_PTHREAD_RWLOCK_T 56 | ||
| 38 | # define __SIZEOF_PTHREAD_BARRIER_T 32 | ||
| 39 | # define __SIZEOF_PTHREAD_BARRIERATTR_T 8 | ||
| 40 | #endif | ||
| 41 | #define __SIZEOF_PTHREAD_COND_T 48 | ||
| 42 | #define __SIZEOF_PTHREAD_RWLOCKATTR_T	8 | ||
| 43 | |||
| 44 | #define __LOCK_ALIGNMENT | ||
| 45 | #define __ONCE_ALIGNMENT | ||
| 46 | |||
| 47 | #endif	/* bits/pthreadtypes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/aarch64_be-linux-gnu/bits/rseq.h deleted-43| ... | @@ -1,43 +0,0 @@ | ||
| 1 | /* Restartable Sequences Linux aarch64 architecture header. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_RSEQ_H | ||
| 19 | # error "Never use <bits/rseq.h> directly; include <sys/rseq.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* RSEQ_SIG is a signature required before each abort handler code. | ||
| 23 | |||
| 24 | It is a 32-bit value that maps to actual architecture code compiled | ||
| 25 | into applications and libraries. It needs to be defined for each | ||
| 26 | architecture. When choosing this value, it needs to be taken into | ||
| 27 | account that generating invalid instructions may have ill effects on | ||
| 28 | tools like objdump, and may also have impact on the CPU speculative | ||
| 29 | execution efficiency in some cases. | ||
| 30 | |||
| 31 | aarch64 -mbig-endian generates mixed endianness code vs data: | ||
| 32 | little-endian code and big-endian data. Ensure the RSEQ_SIG signature | ||
| 33 | matches code endianness. */ | ||
| 34 | |||
| 35 | #define RSEQ_SIG_CODE 0xd428bc00 /* BRK #0x45E0. */ | ||
| 36 | |||
| 37 | #ifdef __AARCH64EB__ | ||
| 38 | # define RSEQ_SIG_DATA 0x00bc28d4 /* BRK #0x45E0. */ | ||
| 39 | #else | ||
| 40 | # define RSEQ_SIG_DATA RSEQ_SIG_CODE | ||
| 41 | #endif | ||
| 42 | |||
| 43 | #define RSEQ_SIG RSEQ_SIG_DATA | ||
| \ No newline at end of file | |||
lib/libc/include/aarch64_be-linux-gnu/bits/semaphore.h deleted-39| ... | @@ -1,39 +0,0 @@ | ||
| 1 | /* Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 2 | |||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SEMAPHORE_H | ||
| 20 | # error "Never use <bits/semaphore.h> directly; include <semaphore.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | |||
| 24 | #ifdef __ILP32__ | ||
| 25 | # define __SIZEOF_SEM_T	16 | ||
| 26 | #else | ||
| 27 | # define __SIZEOF_SEM_T	32 | ||
| 28 | #endif | ||
| 29 | |||
| 30 | |||
| 31 | /* Value returned if `sem_open' failed. */ | ||
| 32 | #define SEM_FAILED ((sem_t *) 0) | ||
| 33 | |||
| 34 | |||
| 35 | typedef union | ||
| 36 | { | ||
| 37 | char __size[__SIZEOF_SEM_T]; | ||
| 38 | long long int __align; | ||
| 39 | } sem_t; | ||
| \ No newline at end of file | |||
lib/libc/include/aarch64_be-linux-gnu/bits/setjmp.h deleted-33| ... | @@ -1,33 +0,0 @@ | ||
| 1 | /* Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 2 | |||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public License as | ||
| 7 | published by the Free Software Foundation; either version 2.1 of the | ||
| 8 | License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_SETJMP_H | ||
| 20 | #define _BITS_SETJMP_H 1 | ||
| 21 | |||
| 22 | #if !defined _SETJMP_H && !defined _PTHREAD_H | ||
| 23 | # error "Never include <bits/setjmp.h> directly; use <setjmp.h> instead." | ||
| 24 | #endif | ||
| 25 | |||
| 26 | #ifndef _ASM | ||
| 27 | /* Jump buffer contains: | ||
| 28 | x19-x28, x29(fp), x30(lr), (x31)sp, d8-d15. Other registers are not | ||
| 29 | saved. */ | ||
| 30 | __extension__ typedef unsigned long long __jmp_buf [22]; | ||
| 31 | |||
| 32 | #endif | ||
| 33 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/aarch64_be-linux-gnu/bits/sigstack.h deleted-32| ... | @@ -1,32 +0,0 @@ | ||
| 1 | /* sigstack, sigaltstack definitions. | ||
| 2 | Copyright (C) 2015-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_SIGSTACK_H | ||
| 20 | #define _BITS_SIGSTACK_H 1 | ||
| 21 | |||
| 22 | #if !defined _SIGNAL_H && !defined _SYS_UCONTEXT_H | ||
| 23 | # error "Never include this file directly. Use <signal.h> instead" | ||
| 24 | #endif | ||
| 25 | |||
| 26 | /* Minimum stack size for a signal handler. */ | ||
| 27 | #define MINSIGSTKSZ	5120 | ||
| 28 | |||
| 29 | /* System default stack size. */ | ||
| 30 | #define SIGSTKSZ	16384 | ||
| 31 | |||
| 32 | #endif /* bits/sigstack.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/aarch64_be-linux-gnu/bits/struct_rwlock.h deleted-41| ... | @@ -1,41 +0,0 @@ | ||
| 1 | /* AArch64 internal rwlock struct definitions. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library; if not, see | ||
| 18 | <http://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifndef _RWLOCK_INTERNAL_H | ||
| 21 | #define _RWLOCK_INTERNAL_H | ||
| 22 | |||
| 23 | struct __pthread_rwlock_arch_t | ||
| 24 | { | ||
| 25 | unsigned int __readers; | ||
| 26 | unsigned int __writers; | ||
| 27 | unsigned int __wrphase_futex; | ||
| 28 | unsigned int __writers_futex; | ||
| 29 | unsigned int __pad3; | ||
| 30 | unsigned int __pad4; | ||
| 31 | int __cur_writer; | ||
| 32 | int __shared; | ||
| 33 | unsigned long int __pad1; | ||
| 34 | unsigned long int __pad2; | ||
| 35 | unsigned int __flags; | ||
| 36 | }; | ||
| 37 | |||
| 38 | #define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 39 | 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags | ||
| 40 | |||
| 41 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/aarch64_be-linux-gnu/bits/struct_stat.h deleted-127| ... | @@ -1,127 +0,0 @@ | ||
| 1 | /* Definition for struct stat. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #if !defined _SYS_STAT_H && !defined _FCNTL_H | ||
| 20 | # error "Never include <bits/struct_stat.h> directly; use <sys/stat.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef _BITS_STRUCT_STAT_H | ||
| 24 | #define _BITS_STRUCT_STAT_H	1 | ||
| 25 | |||
| 26 | #include <bits/endian.h> | ||
| 27 | #include <bits/wordsize.h> | ||
| 28 | |||
| 29 | #if defined __USE_FILE_OFFSET64 | ||
| 30 | # define __field64(type, type64, name) type64 name | ||
| 31 | #elif __WORDSIZE == 64 || defined __INO_T_MATCHES_INO64_T | ||
| 32 | # if defined __INO_T_MATCHES_INO64_T && !defined __OFF_T_MATCHES_OFF64_T | ||
| 33 | # error "ino_t and off_t must both be the same type" | ||
| 34 | # endif | ||
| 35 | # define __field64(type, type64, name) type name | ||
| 36 | #elif __BYTE_ORDER == __LITTLE_ENDIAN | ||
| 37 | # define __field64(type, type64, name) \ | ||
| 38 | type name __attribute__((__aligned__ (__alignof__ (type64)))); int __##name##_pad | ||
| 39 | #else | ||
| 40 | # define __field64(type, type64, name) \ | ||
| 41 | int __##name##_pad __attribute__((__aligned__ (__alignof__ (type64)))); type name | ||
| 42 | #endif | ||
| 43 | |||
| 44 | struct stat | ||
| 45 | { | ||
| 46 | __dev_t st_dev;		/* Device. */ | ||
| 47 | __field64(__ino_t, __ino64_t, st_ino); /* File serial number. */ | ||
| 48 | __mode_t st_mode;		/* File mode. */ | ||
| 49 | __nlink_t st_nlink;		/* Link count. */ | ||
| 50 | __uid_t st_uid;		/* User ID of the file's owner.	*/ | ||
| 51 | __gid_t st_gid;		/* Group ID of the file's group.*/ | ||
| 52 | __dev_t st_rdev;		/* Device number, if device. */ | ||
| 53 | __dev_t __pad1; | ||
| 54 | __field64(__off_t, __off64_t, st_size); /* Size of file, in bytes. */ | ||
| 55 | __blksize_t st_blksize;	/* Optimal block size for I/O. */ | ||
| 56 | int __pad2; | ||
| 57 | __field64(__blkcnt_t, __blkcnt64_t, st_blocks); /* 512-byte blocks */ | ||
| 58 | #ifdef __USE_XOPEN2K8 | ||
| 59 | /* Nanosecond resolution timestamps are stored in a format | ||
| 60 | equivalent to 'struct timespec'. This is the type used | ||
| 61 | whenever possible but the Unix namespace rules do not allow the | ||
| 62 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 63 | Therefore we have to handle the use of this header in strictly | ||
| 64 | standard-compliant sources special. */ | ||
| 65 | struct timespec st_atim;		/* Time of last access. */ | ||
| 66 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 67 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 68 | # define st_atime st_atim.tv_sec	/* Backward compatibility. */ | ||
| 69 | # define st_mtime st_mtim.tv_sec | ||
| 70 | # define st_ctime st_ctim.tv_sec | ||
| 71 | #else | ||
| 72 | __time_t st_atime;			/* Time of last access. */ | ||
| 73 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 74 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 75 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 76 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 77 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 78 | #endif | ||
| 79 | int __glibc_reserved[2]; | ||
| 80 | }; | ||
| 81 | |||
| 82 | #undef __field64 | ||
| 83 | |||
| 84 | #ifdef __USE_LARGEFILE64 | ||
| 85 | struct stat64 | ||
| 86 | { | ||
| 87 | __dev_t st_dev;		/* Device. */ | ||
| 88 | __ino64_t st_ino;		/* File serial number.	*/ | ||
| 89 | __mode_t st_mode;		/* File mode. */ | ||
| 90 | __nlink_t st_nlink;		/* Link count. */ | ||
| 91 | __uid_t st_uid;		/* User ID of the file's owner.	*/ | ||
| 92 | __gid_t st_gid;		/* Group ID of the file's group.*/ | ||
| 93 | __dev_t st_rdev;		/* Device number, if device. */ | ||
| 94 | __dev_t __pad1; | ||
| 95 | __off64_t st_size;		/* Size of file, in bytes. */ | ||
| 96 | __blksize_t st_blksize;	/* Optimal block size for I/O. */ | ||
| 97 | int __pad2; | ||
| 98 | __blkcnt64_t st_blocks;	/* Nr. 512-byte blocks allocated. */ | ||
| 99 | #ifdef __USE_XOPEN2K8 | ||
| 100 | /* Nanosecond resolution timestamps are stored in a format | ||
| 101 | equivalent to 'struct timespec'. This is the type used | ||
| 102 | whenever possible but the Unix namespace rules do not allow the | ||
| 103 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 104 | Therefore we have to handle the use of this header in strictly | ||
| 105 | standard-compliant sources special. */ | ||
| 106 | struct timespec st_atim;		/* Time of last access. */ | ||
| 107 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 108 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 109 | #else | ||
| 110 | __time_t st_atime;			/* Time of last access. */ | ||
| 111 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 112 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 113 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 114 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 115 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 116 | #endif | ||
| 117 | int __glibc_reserved[2]; | ||
| 118 | }; | ||
| 119 | #endif | ||
| 120 | |||
| 121 | /* Tell code we have these members. */ | ||
| 122 | #define	_STATBUF_ST_BLKSIZE | ||
| 123 | #define _STATBUF_ST_RDEV | ||
| 124 | /* Nanosecond resolution time values are supported. */ | ||
| 125 | #define _STATBUF_ST_NSEC | ||
| 126 | |||
| 127 | #endif /* _BITS_STRUCT_STAT_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/aarch64_be-linux-gnu/bits/timesize.h deleted-20| ... | @@ -1,20 +0,0 @@ | ||
| 1 | /* Bit size of the time_t type at glibc build time, general case. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* Size in bits of the 'time_t' type of the default ABI. */ | ||
| 20 | #define __TIMESIZE	64 | ||
| \ No newline at end of file | |||
lib/libc/include/aarch64_be-linux-gnu/bits/wordsize.h deleted-28| ... | @@ -1,28 +0,0 @@ | ||
| 1 | /* Determine the wordsize from the preprocessor defines. | ||
| 2 | |||
| 3 | Copyright (C) 2016-2025 Free Software Foundation, Inc. | ||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library; if not, see | ||
| 18 | <https://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifdef __LP64__ | ||
| 21 | # define __WORDSIZE			64 | ||
| 22 | #else | ||
| 23 | # define __WORDSIZE			32 | ||
| 24 | # define __WORDSIZE32_SIZE_ULONG	1 | ||
| 25 | # define __WORDSIZE32_PTRDIFF_LONG	1 | ||
| 26 | #endif | ||
| 27 | |||
| 28 | #define __WORDSIZE_TIME64_COMPAT32	0 | ||
| \ No newline at end of file | |||
lib/libc/include/aarch64_be-linux-gnu/finclude/math-vector-fortran.h deleted-47| ... | @@ -1,47 +0,0 @@ | ||
| 1 | ! Platform-specific declarations of SIMD math functions for Fortran. -*- f90 -*- | ||
| 2 | ! Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | ! This file is part of the GNU C Library. | ||
| 4 | ! | ||
| 5 | ! The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | ! modify it under the terms of the GNU Lesser General Public | ||
| 7 | ! License as published by the Free Software Foundation; either | ||
| 8 | ! version 2.1 of the License, or (at your option) any later version. | ||
| 9 | ! | ||
| 10 | ! The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | ! but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | ! Lesser General Public License for more details. | ||
| 14 | ! | ||
| 15 | ! You should have received a copy of the GNU Lesser General Public | ||
| 16 | ! License along with the GNU C Library; if not, see | ||
| 17 | ! <https://www.gnu.org/licenses/>. | ||
| 18 | !GCC$ builtin (acos) attributes simd (notinbranch) | ||
| 19 | !GCC$ builtin (acosf) attributes simd (notinbranch) | ||
| 20 | !GCC$ builtin (asin) attributes simd (notinbranch) | ||
| 21 | !GCC$ builtin (asinf) attributes simd (notinbranch) | ||
| 22 | !GCC$ builtin (atan) attributes simd (notinbranch) | ||
| 23 | !GCC$ builtin (atanf) attributes simd (notinbranch) | ||
| 24 | !GCC$ builtin (atan2) attributes simd (notinbranch) | ||
| 25 | !GCC$ builtin (atan2f) attributes simd (notinbranch) | ||
| 26 | !GCC$ builtin (cos) attributes simd (notinbranch) | ||
| 27 | !GCC$ builtin (cosf) attributes simd (notinbranch) | ||
| 28 | !GCC$ builtin (exp) attributes simd (notinbranch) | ||
| 29 | !GCC$ builtin (expf) attributes simd (notinbranch) | ||
| 30 | !GCC$ builtin (exp10) attributes simd (notinbranch) | ||
| 31 | !GCC$ builtin (exp10f) attributes simd (notinbranch) | ||
| 32 | !GCC$ builtin (exp2) attributes simd (notinbranch) | ||
| 33 | !GCC$ builtin (exp2f) attributes simd (notinbranch) | ||
| 34 | !GCC$ builtin (expm1) attributes simd (notinbranch) | ||
| 35 | !GCC$ builtin (expm1f) attributes simd (notinbranch) | ||
| 36 | !GCC$ builtin (log) attributes simd (notinbranch) | ||
| 37 | !GCC$ builtin (logf) attributes simd (notinbranch) | ||
| 38 | !GCC$ builtin (log10) attributes simd (notinbranch) | ||
| 39 | !GCC$ builtin (log10f) attributes simd (notinbranch) | ||
| 40 | !GCC$ builtin (log1p) attributes simd (notinbranch) | ||
| 41 | !GCC$ builtin (log1pf) attributes simd (notinbranch) | ||
| 42 | !GCC$ builtin (log2) attributes simd (notinbranch) | ||
| 43 | !GCC$ builtin (log2f) attributes simd (notinbranch) | ||
| 44 | !GCC$ builtin (sin) attributes simd (notinbranch) | ||
| 45 | !GCC$ builtin (sinf) attributes simd (notinbranch) | ||
| 46 | !GCC$ builtin (tan) attributes simd (notinbranch) | ||
| 47 | !GCC$ builtin (tanf) attributes simd (notinbranch) | ||
| \ No newline at end of file | |||
lib/libc/include/aarch64_be-linux-gnu/fpu_control.h deleted-104| ... | @@ -1,104 +0,0 @@ | ||
| 1 | /* Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 2 | |||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public License as | ||
| 7 | published by the Free Software Foundation; either version 2.1 of the | ||
| 8 | License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _AARCH64_FPU_CONTROL_H | ||
| 20 | #define _AARCH64_FPU_CONTROL_H | ||
| 21 | |||
| 22 | #include <features.h> | ||
| 23 | |||
| 24 | /* Macros for accessing the FPCR and FPSR. */ | ||
| 25 | |||
| 26 | #if __GNUC_PREREQ (6,0) | ||
| 27 | # define _FPU_GETCW(fpcr) (fpcr = __builtin_aarch64_get_fpcr ()) | ||
| 28 | # define _FPU_SETCW(fpcr) __builtin_aarch64_set_fpcr (fpcr) | ||
| 29 | # define _FPU_GETFPSR(fpsr) (fpsr = __builtin_aarch64_get_fpsr ()) | ||
| 30 | # define _FPU_SETFPSR(fpsr) __builtin_aarch64_set_fpsr (fpsr) | ||
| 31 | #else | ||
| 32 | # define _FPU_GETCW(fpcr)					\ | ||
| 33 | ({ 								\ | ||
| 34 | __uint64_t __fpcr;						\ | ||
| 35 | __asm__ __volatile__ ("mrs	%0, fpcr" : "=r" (__fpcr));	\ | ||
| 36 | fpcr = __fpcr;						\ | ||
| 37 | }) | ||
| 38 | |||
| 39 | # define _FPU_SETCW(fpcr)					\ | ||
| 40 | ({								\ | ||
| 41 | __uint64_t __fpcr = fpcr;					\ | ||
| 42 | __asm__ __volatile__ ("msr	fpcr, %0" : : "r" (__fpcr)); \ | ||
| 43 | }) | ||
| 44 | |||
| 45 | # define _FPU_GETFPSR(fpsr)					\ | ||
| 46 | ({								\ | ||
| 47 | __uint64_t __fpsr;						\ | ||
| 48 | __asm__ __volatile__ ("mrs	%0, fpsr" : "=r" (__fpsr));	\ | ||
| 49 | fpsr = __fpsr;						\ | ||
| 50 | }) | ||
| 51 | |||
| 52 | # define _FPU_SETFPSR(fpsr)					\ | ||
| 53 | ({								\ | ||
| 54 | __uint64_t __fpsr = fpsr;					\ | ||
| 55 | __asm__ __volatile__ ("msr	fpsr, %0" : : "r" (__fpsr)); \ | ||
| 56 | }) | ||
| 57 | #endif | ||
| 58 | |||
| 59 | /* Reserved bits should be preserved when modifying register | ||
| 60 | contents. These two masks indicate which bits in each of FPCR and | ||
| 61 | FPSR should not be changed. */ | ||
| 62 | |||
| 63 | #define _FPU_RESERVED		0xfe0fe0f8 | ||
| 64 | #define _FPU_FPSR_RESERVED	0x0fffffe0 | ||
| 65 | |||
| 66 | #define _FPU_DEFAULT		0x00000000 | ||
| 67 | #define _FPU_FPSR_DEFAULT	0x00000000 | ||
| 68 | |||
| 69 | /* Layout of FPCR and FPSR: | ||
| 70 | |||
| 71 | | | | | | | | | | ||
| 72 | 0 0 0 0 1 1 1 0 0 0 0 0 1 0 0 0 1 1 1 0 0 0 0 0 1 1 1 0 0 0 0 0 | ||
| 73 | s s s s s s s s s s s | ||
| 74 | c c c c c c c c c c c c | ||
| 75 | N Z C V Q A D F R R S S S L L L I U U I U O D I I U U I U O D I | ||
| 76 | C H N Z M M T T B E E E D N N X F F Z O D N N X F F Z O | ||
| 77 | P O O R R Z N N N E K K E E E E E C K K C C C C C | ||
| 78 | D D I I P | ||
| 79 | E E D D | ||
| 80 | E E | ||
| 81 | */ | ||
| 82 | |||
| 83 | #define _FPU_FPCR_RM_MASK 0xc00000 | ||
| 84 | |||
| 85 | #define _FPU_FPCR_MASK_IXE 0x1000 | ||
| 86 | #define _FPU_FPCR_MASK_UFE 0x0800 | ||
| 87 | #define _FPU_FPCR_MASK_OFE 0x0400 | ||
| 88 | #define _FPU_FPCR_MASK_DZE 0x0200 | ||
| 89 | #define _FPU_FPCR_MASK_IOE 0x0100 | ||
| 90 | |||
| 91 | #define _FPU_FPCR_IEEE \ | ||
| 92 | (_FPU_DEFAULT | _FPU_FPCR_MASK_IXE	 \ | ||
| 93 | | _FPU_FPCR_MASK_UFE | _FPU_FPCR_MASK_OFE \ | ||
| 94 | | _FPU_FPCR_MASK_DZE | _FPU_FPCR_MASK_IOE) | ||
| 95 | |||
| 96 | #define _FPU_FPSR_IEEE 0 | ||
| 97 | |||
| 98 | typedef unsigned int fpu_control_t; | ||
| 99 | typedef unsigned int fpu_fpsr_t; | ||
| 100 | |||
| 101 | /* Default control word set at startup. */ | ||
| 102 | extern fpu_control_t __fpu_control; | ||
| 103 | |||
| 104 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/aarch64_be-linux-gnu/gnu/lib-names-lp64_be.h deleted-27| ... | @@ -1,27 +0,0 @@ | ||
| 1 | /* This file is automatically generated. */ | ||
| 2 | #ifndef __GNU_LIB_NAMES_H | ||
| 3 | # error "Never use <gnu/lib-names-lp64_be.h> directly; include <gnu/lib-names.h> instead." | ||
| 4 | #endif | ||
| 5 | |||
| 6 | #define LD_LINUX_AARCH64_BE_SO "ld-linux-aarch64_be.so.1" | ||
| 7 | #define LD_SO "ld-linux-aarch64_be.so.1" | ||
| 8 | #define LIBANL_SO "libanl.so.1" | ||
| 9 | #define LIBBROKENLOCALE_SO "libBrokenLocale.so.1" | ||
| 10 | #define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0" | ||
| 11 | #define LIBC_SO "libc.so.6" | ||
| 12 | #define LIBDL_SO "libdl.so.2" | ||
| 13 | #define LIBGCC_S_SO "libgcc_s.so.1" | ||
| 14 | #define LIBMVEC_SO "libmvec.so.1" | ||
| 15 | #define LIBM_SO "libm.so.6" | ||
| 16 | #define LIBNSL_SO "libnsl.so.1" | ||
| 17 | #define LIBNSS_COMPAT_SO "libnss_compat.so.2" | ||
| 18 | #define LIBNSS_DB_SO "libnss_db.so.2" | ||
| 19 | #define LIBNSS_DNS_SO "libnss_dns.so.2" | ||
| 20 | #define LIBNSS_FILES_SO "libnss_files.so.2" | ||
| 21 | #define LIBNSS_HESIOD_SO "libnss_hesiod.so.2" | ||
| 22 | #define LIBNSS_LDAP_SO "libnss_ldap.so.2" | ||
| 23 | #define LIBPTHREAD_SO "libpthread.so.0" | ||
| 24 | #define LIBRESOLV_SO "libresolv.so.2" | ||
| 25 | #define LIBRT_SO "librt.so.1" | ||
| 26 | #define LIBTHREAD_DB_SO "libthread_db.so.1" | ||
| 27 | #define LIBUTIL_SO "libutil.so.1" | ||
| \ No newline at end of file | |||
lib/libc/include/aarch64_be-linux-gnu/gnu/lib-names.h deleted-16| ... | @@ -1,16 +0,0 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | It defines macros to allow user program to find the shared | ||
| 3 | library files which come as part of GNU libc. */ | ||
| 4 | #ifndef __GNU_LIB_NAMES_H | ||
| 5 | #define __GNU_LIB_NAMES_H	1 | ||
| 6 | |||
| 7 | #include <bits/wordsize.h> | ||
| 8 | |||
| 9 | #if !defined __AARCH64EB__ | ||
| 10 | # include <gnu/lib-names-lp64.h> | ||
| 11 | #endif | ||
| 12 | #if defined __AARCH64EB__ | ||
| 13 | # include <gnu/lib-names-lp64_be.h> | ||
| 14 | #endif | ||
| 15 | |||
| 16 | #endif	/* gnu/lib-names.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/aarch64_be-linux-gnu/gnu/stubs-lp64_be.h deleted-21| ... | @@ -1,21 +0,0 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | It defines a symbol `__stub_FUNCTION' for each function | ||
| 3 | in the C library which is a stub, meaning it will fail | ||
| 4 | every time called, usually setting errno to ENOSYS. */ | ||
| 5 | |||
| 6 | #ifdef _LIBC | ||
| 7 | #error Applications may not define the macro _LIBC | ||
| 8 | #endif | ||
| 9 | |||
| 10 | #define __stub___compat_bdflush | ||
| 11 | #define __stub___compat_create_module | ||
| 12 | #define __stub___compat_get_kernel_syms | ||
| 13 | #define __stub___compat_query_module | ||
| 14 | #define __stub___compat_uselib | ||
| 15 | #define __stub_chflags | ||
| 16 | #define __stub_fchflags | ||
| 17 | #define __stub_gtty | ||
| 18 | #define __stub_revoke | ||
| 19 | #define __stub_setlogin | ||
| 20 | #define __stub_sigreturn | ||
| 21 | #define __stub_stty | ||
| \ No newline at end of file | |||
lib/libc/include/aarch64_be-linux-gnu/gnu/stubs.h deleted-12| ... | @@ -1,12 +0,0 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | This file selects the right generated file of `__stub_FUNCTION' macros | ||
| 3 | based on the architecture being compiled for. */ | ||
| 4 | |||
| 5 | #include <bits/wordsize.h> | ||
| 6 | |||
| 7 | #if !defined __AARCH64EB__ | ||
| 8 | # include <gnu/stubs-lp64.h> | ||
| 9 | #endif | ||
| 10 | #if defined __AARCH64EB__ | ||
| 11 | # include <gnu/stubs-lp64_be.h> | ||
| 12 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/aarch64_be-linux-gnu/ieee754.h deleted-170| ... | @@ -1,170 +0,0 @@ | ||
| 1 | /* Copyright (C) 1992-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _IEEE754_H | ||
| 19 | #define _IEEE754_H 1 | ||
| 20 | |||
| 21 | #include <features.h> | ||
| 22 | |||
| 23 | #include <bits/endian.h> | ||
| 24 | |||
| 25 | __BEGIN_DECLS | ||
| 26 | |||
| 27 | union ieee754_float | ||
| 28 | { | ||
| 29 | float f; | ||
| 30 | |||
| 31 | /* This is the IEEE 754 single-precision format. */ | ||
| 32 | struct | ||
| 33 | { | ||
| 34 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 35 | 	unsigned int negative:1; | ||
| 36 | 	unsigned int exponent:8; | ||
| 37 | 	unsigned int mantissa:23; | ||
| 38 | #endif				/* Big endian. */ | ||
| 39 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 40 | 	unsigned int mantissa:23; | ||
| 41 | 	unsigned int exponent:8; | ||
| 42 | 	unsigned int negative:1; | ||
| 43 | #endif				/* Little endian. */ | ||
| 44 | } ieee; | ||
| 45 | |||
| 46 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 47 | struct | ||
| 48 | { | ||
| 49 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 50 | 	unsigned int negative:1; | ||
| 51 | 	unsigned int exponent:8; | ||
| 52 | 	unsigned int quiet_nan:1; | ||
| 53 | 	unsigned int mantissa:22; | ||
| 54 | #endif				/* Big endian. */ | ||
| 55 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 56 | 	unsigned int mantissa:22; | ||
| 57 | 	unsigned int quiet_nan:1; | ||
| 58 | 	unsigned int exponent:8; | ||
| 59 | 	unsigned int negative:1; | ||
| 60 | #endif				/* Little endian. */ | ||
| 61 | } ieee_nan; | ||
| 62 | }; | ||
| 63 | |||
| 64 | #define IEEE754_FLOAT_BIAS	0x7f /* Added to exponent. */ | ||
| 65 | |||
| 66 | |||
| 67 | union ieee754_double | ||
| 68 | { | ||
| 69 | double d; | ||
| 70 | |||
| 71 | /* This is the IEEE 754 double-precision format. */ | ||
| 72 | struct | ||
| 73 | { | ||
| 74 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 75 | 	unsigned int negative:1; | ||
| 76 | 	unsigned int exponent:11; | ||
| 77 | 	/* Together these comprise the mantissa. */ | ||
| 78 | 	unsigned int mantissa0:20; | ||
| 79 | 	unsigned int mantissa1:32; | ||
| 80 | #endif				/* Big endian. */ | ||
| 81 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 82 | 	/* Together these comprise the mantissa. */ | ||
| 83 | 	unsigned int mantissa1:32; | ||
| 84 | 	unsigned int mantissa0:20; | ||
| 85 | 	unsigned int exponent:11; | ||
| 86 | 	unsigned int negative:1; | ||
| 87 | #endif				/* Little endian. */ | ||
| 88 | } ieee; | ||
| 89 | |||
| 90 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 91 | struct | ||
| 92 | { | ||
| 93 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 94 | 	unsigned int negative:1; | ||
| 95 | 	unsigned int exponent:11; | ||
| 96 | 	unsigned int quiet_nan:1; | ||
| 97 | 	/* Together these comprise the mantissa. */ | ||
| 98 | 	unsigned int mantissa0:19; | ||
| 99 | 	unsigned int mantissa1:32; | ||
| 100 | #else | ||
| 101 | 	/* Together these comprise the mantissa. */ | ||
| 102 | 	unsigned int mantissa1:32; | ||
| 103 | 	unsigned int mantissa0:19; | ||
| 104 | 	unsigned int quiet_nan:1; | ||
| 105 | 	unsigned int exponent:11; | ||
| 106 | 	unsigned int negative:1; | ||
| 107 | #endif | ||
| 108 | } ieee_nan; | ||
| 109 | }; | ||
| 110 | |||
| 111 | #define IEEE754_DOUBLE_BIAS	0x3ff /* Added to exponent. */ | ||
| 112 | |||
| 113 | |||
| 114 | union ieee854_long_double | ||
| 115 | { | ||
| 116 | long double d; | ||
| 117 | |||
| 118 | /* This is the IEEE 854 quad-precision format. */ | ||
| 119 | struct | ||
| 120 | { | ||
| 121 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 122 | 	unsigned int negative:1; | ||
| 123 | 	unsigned int exponent:15; | ||
| 124 | 	/* Together these comprise the mantissa. */ | ||
| 125 | 	unsigned int mantissa0:16; | ||
| 126 | 	unsigned int mantissa1:32; | ||
| 127 | 	unsigned int mantissa2:32; | ||
| 128 | 	unsigned int mantissa3:32; | ||
| 129 | #endif				/* Big endian. */ | ||
| 130 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 131 | 	/* Together these comprise the mantissa. */ | ||
| 132 | 	unsigned int mantissa3:32; | ||
| 133 | 	unsigned int mantissa2:32; | ||
| 134 | 	unsigned int mantissa1:32; | ||
| 135 | 	unsigned int mantissa0:16; | ||
| 136 | 	unsigned int exponent:15; | ||
| 137 | 	unsigned int negative:1; | ||
| 138 | #endif				/* Little endian. */ | ||
| 139 | } ieee; | ||
| 140 | |||
| 141 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 142 | struct | ||
| 143 | { | ||
| 144 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 145 | 	unsigned int negative:1; | ||
| 146 | 	unsigned int exponent:15; | ||
| 147 | 	unsigned int quiet_nan:1; | ||
| 148 | 	/* Together these comprise the mantissa. */ | ||
| 149 | 	unsigned int mantissa0:15; | ||
| 150 | 	unsigned int mantissa1:32; | ||
| 151 | 	unsigned int mantissa2:32; | ||
| 152 | 	unsigned int mantissa3:32; | ||
| 153 | #else | ||
| 154 | 	/* Together these comprise the mantissa. */ | ||
| 155 | 	unsigned int mantissa3:32; | ||
| 156 | 	unsigned int mantissa2:32; | ||
| 157 | 	unsigned int mantissa1:32; | ||
| 158 | 	unsigned int mantissa0:15; | ||
| 159 | 	unsigned int quiet_nan:1; | ||
| 160 | 	unsigned int exponent:15; | ||
| 161 | 	unsigned int negative:1; | ||
| 162 | #endif | ||
| 163 | } ieee_nan; | ||
| 164 | }; | ||
| 165 | |||
| 166 | #define IEEE854_LONG_DOUBLE_BIAS 0x3fff /* Added to exponent. */ | ||
| 167 | |||
| 168 | __END_DECLS | ||
| 169 | |||
| 170 | #endif /* ieee754.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/aarch64_be-linux-gnu/sys/elf.h deleted-26| ... | @@ -1,26 +0,0 @@ | ||
| 1 | /* Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 2 | |||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_ELF_H | ||
| 20 | #define _SYS_ELF_H	1 | ||
| 21 | |||
| 22 | #warning "This header is obsolete; use <sys/procfs.h> instead." | ||
| 23 | |||
| 24 | #include <sys/procfs.h> | ||
| 25 | |||
| 26 | #endif	/* sys/elf.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/aarch64_be-linux-gnu/sys/ptrace.h deleted-219| ... | @@ -1,219 +0,0 @@ | ||
| 1 | /* `ptrace' debugger support interface. Linux/AArch64 version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library; if not, see | ||
| 18 | <https://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifndef _SYS_PTRACE_H | ||
| 21 | #define _SYS_PTRACE_H	1 | ||
| 22 | |||
| 23 | #include <features.h> | ||
| 24 | #include <bits/types.h> | ||
| 25 | |||
| 26 | __BEGIN_DECLS | ||
| 27 | |||
| 28 | /* Avoid collision if the linux ptrace header is already included. */ | ||
| 29 | #undef PTRACE_TRACEME | ||
| 30 | #undef PTRACE_PEEKTEXT | ||
| 31 | #undef PTRACE_PEEKDATA | ||
| 32 | #undef PTRACE_PEEKUSER | ||
| 33 | #undef PTRACE_POKETEXT | ||
| 34 | #undef PTRACE_POKEDATA | ||
| 35 | #undef PTRACE_POKEUSER | ||
| 36 | #undef PTRACE_CONT | ||
| 37 | #undef PTRACE_KILL | ||
| 38 | #undef PTRACE_SINGLESTEP | ||
| 39 | #undef PTRACE_ATTACH | ||
| 40 | #undef PTRACE_DETACH | ||
| 41 | #undef PTRACE_SYSCALL | ||
| 42 | #undef PTRACE_SYSEMU | ||
| 43 | #undef PTRACE_SYSEMU_SINGLESTEP | ||
| 44 | #undef PTRACE_PEEKMTETAGS | ||
| 45 | #undef PTRACE_POKEMTETAGS | ||
| 46 | #undef PTRACE_SETOPTIONS | ||
| 47 | #undef PTRACE_GETEVENTMSG | ||
| 48 | #undef PTRACE_GETSIGINFO | ||
| 49 | #undef PTRACE_SETSIGINFO | ||
| 50 | #undef PTRACE_GETREGSET | ||
| 51 | #undef PTRACE_SETREGSET | ||
| 52 | #undef PTRACE_SEIZE | ||
| 53 | #undef PTRACE_INTERRUPT | ||
| 54 | #undef PTRACE_LISTEN | ||
| 55 | #undef PTRACE_PEEKSIGINFO | ||
| 56 | #undef PTRACE_GETSIGMASK | ||
| 57 | #undef PTRACE_SETSIGMASK | ||
| 58 | #undef PTRACE_SECCOMP_GET_FILTER | ||
| 59 | #undef PTRACE_SECCOMP_GET_METADATA | ||
| 60 | #undef PTRACE_GET_SYSCALL_INFO | ||
| 61 | #undef PTRACE_GET_RSEQ_CONFIGURATION | ||
| 62 | #undef PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG | ||
| 63 | #undef PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG | ||
| 64 | |||
| 65 | /* Type of the REQUEST argument to `ptrace.' */ | ||
| 66 | enum __ptrace_request | ||
| 67 | { | ||
| 68 | /* Indicate that the process making this request should be traced. | ||
| 69 | All signals received by this process can be intercepted by its | ||
| 70 | parent, and its parent can use the other `ptrace' requests. */ | ||
| 71 | PTRACE_TRACEME = 0, | ||
| 72 | #define PT_TRACE_ME PTRACE_TRACEME | ||
| 73 | |||
| 74 | /* Return the word in the process's text space at address ADDR. */ | ||
| 75 | PTRACE_PEEKTEXT = 1, | ||
| 76 | #define PT_READ_I PTRACE_PEEKTEXT | ||
| 77 | |||
| 78 | /* Return the word in the process's data space at address ADDR. */ | ||
| 79 | PTRACE_PEEKDATA = 2, | ||
| 80 | #define PT_READ_D PTRACE_PEEKDATA | ||
| 81 | |||
| 82 | /* Return the word in the process's user area at offset ADDR. */ | ||
| 83 | PTRACE_PEEKUSER = 3, | ||
| 84 | #define PT_READ_U PTRACE_PEEKUSER | ||
| 85 | |||
| 86 | /* Write the word DATA into the process's text space at address ADDR. */ | ||
| 87 | PTRACE_POKETEXT = 4, | ||
| 88 | #define PT_WRITE_I PTRACE_POKETEXT | ||
| 89 | |||
| 90 | /* Write the word DATA into the process's data space at address ADDR. */ | ||
| 91 | PTRACE_POKEDATA = 5, | ||
| 92 | #define PT_WRITE_D PTRACE_POKEDATA | ||
| 93 | |||
| 94 | /* Write the word DATA into the process's user area at offset ADDR. */ | ||
| 95 | PTRACE_POKEUSER = 6, | ||
| 96 | #define PT_WRITE_U PTRACE_POKEUSER | ||
| 97 | |||
| 98 | /* Continue the process. */ | ||
| 99 | PTRACE_CONT = 7, | ||
| 100 | #define PT_CONTINUE PTRACE_CONT | ||
| 101 | |||
| 102 | /* Kill the process. */ | ||
| 103 | PTRACE_KILL = 8, | ||
| 104 | #define PT_KILL PTRACE_KILL | ||
| 105 | |||
| 106 | /* Single step the process. */ | ||
| 107 | PTRACE_SINGLESTEP = 9, | ||
| 108 | #define PT_STEP PTRACE_SINGLESTEP | ||
| 109 | |||
| 110 | /* Attach to a process that is already running. */ | ||
| 111 | PTRACE_ATTACH = 16, | ||
| 112 | #define PT_ATTACH PTRACE_ATTACH | ||
| 113 | |||
| 114 | /* Detach from a process attached to with PTRACE_ATTACH. */ | ||
| 115 | PTRACE_DETACH = 17, | ||
| 116 | #define PT_DETACH PTRACE_DETACH | ||
| 117 | |||
| 118 | /* Continue and stop at the next entry to or return from syscall. */ | ||
| 119 | PTRACE_SYSCALL = 24, | ||
| 120 | #define PT_SYSCALL PTRACE_SYSCALL | ||
| 121 | |||
| 122 | /* Continue and stop at the next syscall, it will not be executed. */ | ||
| 123 | PTRACE_SYSEMU = 31, | ||
| 124 | #define PT_SYSEMU PTRACE_SYSEMU | ||
| 125 | |||
| 126 | /* Single step the process, the next syscall will not be executed. */ | ||
| 127 | PTRACE_SYSEMU_SINGLESTEP = 32, | ||
| 128 | #define PT_SYSEMU_SINGLESTEP PTRACE_SYSEMU_SINGLESTEP | ||
| 129 | |||
| 130 | /* Read MTE tags. */ | ||
| 131 | PTRACE_PEEKMTETAGS = 33, | ||
| 132 | #define PT_PEEKMTETAGS PTRACE_PEEKMTETAGS | ||
| 133 | |||
| 134 | /* Write MTE tags. */ | ||
| 135 | PTRACE_POKEMTETAGS = 34, | ||
| 136 | #define PT_POKEMTETAGS PTRACE_POKEMTETAGS | ||
| 137 | |||
| 138 | /* Set ptrace filter options. */ | ||
| 139 | PTRACE_SETOPTIONS = 0x4200, | ||
| 140 | #define PT_SETOPTIONS PTRACE_SETOPTIONS | ||
| 141 | |||
| 142 | /* Get last ptrace message. */ | ||
| 143 | PTRACE_GETEVENTMSG = 0x4201, | ||
| 144 | #define PT_GETEVENTMSG PTRACE_GETEVENTMSG | ||
| 145 | |||
| 146 | /* Get siginfo for process. */ | ||
| 147 | PTRACE_GETSIGINFO = 0x4202, | ||
| 148 | #define PT_GETSIGINFO PTRACE_GETSIGINFO | ||
| 149 | |||
| 150 | /* Set new siginfo for process. */ | ||
| 151 | PTRACE_SETSIGINFO = 0x4203, | ||
| 152 | #define PT_SETSIGINFO PTRACE_SETSIGINFO | ||
| 153 | |||
| 154 | /* Get register content. */ | ||
| 155 | PTRACE_GETREGSET = 0x4204, | ||
| 156 | #define PTRACE_GETREGSET PTRACE_GETREGSET | ||
| 157 | |||
| 158 | /* Set register content. */ | ||
| 159 | PTRACE_SETREGSET = 0x4205, | ||
| 160 | #define PTRACE_SETREGSET PTRACE_SETREGSET | ||
| 161 | |||
| 162 | /* Like PTRACE_ATTACH, but do not force tracee to trap and do not affect | ||
| 163 | signal or group stop state. */ | ||
| 164 | PTRACE_SEIZE = 0x4206, | ||
| 165 | #define PTRACE_SEIZE PTRACE_SEIZE | ||
| 166 | |||
| 167 | /* Trap seized tracee. */ | ||
| 168 | PTRACE_INTERRUPT = 0x4207, | ||
| 169 | #define PTRACE_INTERRUPT PTRACE_INTERRUPT | ||
| 170 | |||
| 171 | /* Wait for next group event. */ | ||
| 172 | PTRACE_LISTEN = 0x4208, | ||
| 173 | #define PTRACE_LISTEN PTRACE_LISTEN | ||
| 174 | |||
| 175 | /* Retrieve siginfo_t structures without removing signals from a queue. */ | ||
| 176 | PTRACE_PEEKSIGINFO = 0x4209, | ||
| 177 | #define PTRACE_PEEKSIGINFO PTRACE_PEEKSIGINFO | ||
| 178 | |||
| 179 | /* Get the mask of blocked signals. */ | ||
| 180 | PTRACE_GETSIGMASK = 0x420a, | ||
| 181 | #define PTRACE_GETSIGMASK PTRACE_GETSIGMASK | ||
| 182 | |||
| 183 | /* Change the mask of blocked signals. */ | ||
| 184 | PTRACE_SETSIGMASK = 0x420b, | ||
| 185 | #define PTRACE_SETSIGMASK PTRACE_SETSIGMASK | ||
| 186 | |||
| 187 | /* Get seccomp BPF filters. */ | ||
| 188 | PTRACE_SECCOMP_GET_FILTER = 0x420c, | ||
| 189 | #define PTRACE_SECCOMP_GET_FILTER PTRACE_SECCOMP_GET_FILTER | ||
| 190 | |||
| 191 | /* Get seccomp BPF filter metadata. */ | ||
| 192 | PTRACE_SECCOMP_GET_METADATA = 0x420d, | ||
| 193 | #define PTRACE_SECCOMP_GET_METADATA PTRACE_SECCOMP_GET_METADATA | ||
| 194 | |||
| 195 | /* Get information about system call. */ | ||
| 196 | PTRACE_GET_SYSCALL_INFO = 0x420e, | ||
| 197 | #define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO | ||
| 198 | |||
| 199 | /* Get rseq configuration information. */ | ||
| 200 | PTRACE_GET_RSEQ_CONFIGURATION = 0x420f, | ||
| 201 | #define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION | ||
| 202 | |||
| 203 | /* Set configuration for syscall user dispatch. */ | ||
| 204 | PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG = 0x4210, | ||
| 205 | #define PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG \ | ||
| 206 | PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG | ||
| 207 | |||
| 208 | /* Get configuration for syscall user dispatch. */ | ||
| 209 | PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG = 0x4211 | ||
| 210 | #define PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG \ | ||
| 211 | PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG | ||
| 212 | }; | ||
| 213 | |||
| 214 | |||
| 215 | #include <bits/ptrace-shared.h> | ||
| 216 | |||
| 217 | __END_DECLS | ||
| 218 | |||
| 219 | #endif /* _SYS_PTRACE_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/aarch64_be-linux-gnu/sys/ucontext.h deleted-78| ... | @@ -1,78 +0,0 @@ | ||
| 1 | /* Copyright (C) 1998-2025 Free Software Foundation, Inc. | ||
| 2 | |||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* System V/AArch64 ABI compliant context switching support. */ | ||
| 20 | |||
| 21 | #ifndef _SYS_UCONTEXT_H | ||
| 22 | #define _SYS_UCONTEXT_H	1 | ||
| 23 | |||
| 24 | #include <features.h> | ||
| 25 | |||
| 26 | #include <bits/types/sigset_t.h> | ||
| 27 | #include <bits/types/stack_t.h> | ||
| 28 | |||
| 29 | #ifdef __USE_MISC | ||
| 30 | # define __ctx(fld) fld | ||
| 31 | #else | ||
| 32 | # define __ctx(fld) __ ## fld | ||
| 33 | #endif | ||
| 34 | |||
| 35 | #ifdef __USE_MISC | ||
| 36 | # include <sys/procfs.h> | ||
| 37 | |||
| 38 | |||
| 39 | typedef elf_greg_t greg_t; | ||
| 40 | |||
| 41 | /* Container for all general registers. */ | ||
| 42 | typedef elf_gregset_t gregset_t; | ||
| 43 | |||
| 44 | /* Structure to describe FPU registers. */ | ||
| 45 | typedef elf_fpregset_t	fpregset_t; | ||
| 46 | #endif | ||
| 47 | |||
| 48 | /* Context to describe whole processor state. This only describes | ||
| 49 | the core registers; coprocessor registers get saved elsewhere | ||
| 50 | (e.g. in uc_regspace, or somewhere unspecified on the stack | ||
| 51 | during non-RT signal handlers). */ | ||
| 52 | typedef struct | ||
| 53 | { | ||
| 54 | unsigned long long int __ctx(fault_address); | ||
| 55 | unsigned long long int __ctx(regs)[31]; | ||
| 56 | unsigned long long int __ctx(sp); | ||
| 57 | unsigned long long int __ctx(pc); | ||
| 58 | unsigned long long int __ctx(pstate); | ||
| 59 | /* This field contains extension records for additional processor | ||
| 60 | state such as the FP/SIMD state. It has to match the definition | ||
| 61 | of the corresponding field in the sigcontext struct, see the | ||
| 62 | arch/arm64/include/uapi/asm/sigcontext.h linux header for details. */ | ||
| 63 | unsigned char __reserved[4096] __attribute__ ((__aligned__ (16))); | ||
| 64 | } mcontext_t; | ||
| 65 | |||
| 66 | /* Userlevel context. */ | ||
| 67 | typedef struct ucontext_t | ||
| 68 | { | ||
| 69 | unsigned long __ctx(uc_flags); | ||
| 70 | struct ucontext_t *uc_link; | ||
| 71 | stack_t uc_stack; | ||
| 72 | sigset_t uc_sigmask; | ||
| 73 | mcontext_t uc_mcontext; | ||
| 74 | } ucontext_t; | ||
| 75 | |||
| 76 | #undef __ctx | ||
| 77 | |||
| 78 | #endif /* sys/ucontext.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/aarch64_be-linux-gnu/sys/user.h deleted-37| ... | @@ -1,37 +0,0 @@ | ||
| 1 | /* Copyright (C) 2009-2025 Free Software Foundation, Inc. | ||
| 2 | |||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public License as | ||
| 7 | published by the Free Software Foundation; either version 2.1 of the | ||
| 8 | License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_USER_H | ||
| 20 | #define _SYS_USER_H	1 | ||
| 21 | |||
| 22 | struct user_regs_struct | ||
| 23 | { | ||
| 24 | unsigned long long regs[31]; | ||
| 25 | unsigned long long sp; | ||
| 26 | unsigned long long pc; | ||
| 27 | unsigned long long pstate; | ||
| 28 | }; | ||
| 29 | |||
| 30 | struct user_fpsimd_struct | ||
| 31 | { | ||
| 32 | __uint128_t vregs[32]; | ||
| 33 | unsigned int fpsr; | ||
| 34 | unsigned int fpcr; | ||
| 35 | }; | ||
| 36 | |||
| 37 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnu/bits/dl_find_object.h created+25| ... | @@ -0,0 +1,25 @@ | ||
| 1 | /* arm definitions for finding objects. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _DLFCN_H | ||
| 20 | # error "Never use <bits/dl_find_object.h> directly; include <dlfcn.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #define DLFO_STRUCT_HAS_EH_DBASE 0 | ||
| 24 | #define DLFO_STRUCT_HAS_EH_COUNT 1 | ||
| 25 | #define DLFO_EH_SEGMENT_TYPE PT_ARM_EXIDX | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnu/bits/endianness.h created+15| ... | @@ -0,0 +1,15 @@ | ||
| 1 | #ifndef _BITS_ENDIANNESS_H | ||
| 2 | #define _BITS_ENDIANNESS_H 1 | ||
| 3 | |||
| 4 | #ifndef _BITS_ENDIAN_H | ||
| 5 | # error "Never use <bits/endianness.h> directly; include <endian.h> instead." | ||
| 6 | #endif | ||
| 7 | |||
| 8 | /* ARM has selectable endianness. */ | ||
| 9 | #ifdef __ARMEB__ | ||
| 10 | #define __BYTE_ORDER __BIG_ENDIAN | ||
| 11 | #else | ||
| 12 | #define __BYTE_ORDER __LITTLE_ENDIAN | ||
| 13 | #endif | ||
| 14 | |||
| 15 | #endif /* bits/endianness.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnu/bits/fcntl.h created+54| ... | @@ -0,0 +1,54 @@ | ||
| 1 | /* O_*, F_*, FD_* bit values for Linux. | ||
| 2 | Copyright (C) 1995-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef	_FCNTL_H | ||
| 20 | # error "Never use <bits/fcntl.h> directly; include <fcntl.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #define __O_DIRECTORY	 040000	/* Must be a directory.	 */ | ||
| 24 | #define __O_NOFOLLOW	0100000	/* Do not follow links.	 */ | ||
| 25 | #define __O_DIRECT	0200000	/* Direct disk access.	*/ | ||
| 26 | #define __O_LARGEFILE	0400000 | ||
| 27 | |||
| 28 | struct flock | ||
| 29 | { | ||
| 30 | short int l_type;	/* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK.	*/ | ||
| 31 | short int l_whence;	/* Where `l_start' is relative to (like `lseek'). */ | ||
| 32 | #ifndef __USE_FILE_OFFSET64 | ||
| 33 | __off_t l_start;	/* Offset where the lock begins. */ | ||
| 34 | __off_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 35 | #else | ||
| 36 | __off64_t l_start;	/* Offset where the lock begins. */ | ||
| 37 | __off64_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 38 | #endif | ||
| 39 | __pid_t l_pid;	/* Process holding the lock. */ | ||
| 40 | }; | ||
| 41 | |||
| 42 | #ifdef __USE_LARGEFILE64 | ||
| 43 | struct flock64 | ||
| 44 | { | ||
| 45 | short int l_type;	/* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK.	*/ | ||
| 46 | short int l_whence;	/* Where `l_start' is relative to (like `lseek'). */ | ||
| 47 | __off64_t l_start;	/* Offset where the lock begins. */ | ||
| 48 | __off64_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 49 | __pid_t l_pid;	/* Process holding the lock. */ | ||
| 50 | }; | ||
| 51 | #endif | ||
| 52 | |||
| 53 | /* Include generic Linux declarations. */ | ||
| 54 | #include <bits/fcntl-linux.h> | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnu/bits/fenv.h created+90| ... | @@ -0,0 +1,90 @@ | ||
| 1 | /* Copyright (C) 2004-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _FENV_H | ||
| 19 | # error "Never use <bits/fenv.h> directly; include <fenv.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Define bits representing exceptions in the FPU status word. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | FE_INVALID = | ||
| 26 | #define FE_INVALID	1 | ||
| 27 | FE_INVALID, | ||
| 28 | FE_DIVBYZERO = | ||
| 29 | #define FE_DIVBYZERO	2 | ||
| 30 | FE_DIVBYZERO, | ||
| 31 | FE_OVERFLOW = | ||
| 32 | #define FE_OVERFLOW	4 | ||
| 33 | FE_OVERFLOW, | ||
| 34 | FE_UNDERFLOW = | ||
| 35 | #define FE_UNDERFLOW	8 | ||
| 36 | FE_UNDERFLOW, | ||
| 37 | FE_INEXACT = | ||
| 38 | #define FE_INEXACT	16 | ||
| 39 | FE_INEXACT, | ||
| 40 | }; | ||
| 41 | |||
| 42 | /* Amount to shift by to convert an exception to a mask bit. */ | ||
| 43 | #define FE_EXCEPT_SHIFT	8 | ||
| 44 | |||
| 45 | /* All supported exceptions. */ | ||
| 46 | #define FE_ALL_EXCEPT	\ | ||
| 47 | 	(FE_INVALID | FE_DIVBYZERO | FE_OVERFLOW | FE_UNDERFLOW | FE_INEXACT) | ||
| 48 | |||
| 49 | /* VFP supports all of the four defined rounding modes. */ | ||
| 50 | enum | ||
| 51 | { | ||
| 52 | FE_TONEAREST = | ||
| 53 | #define FE_TONEAREST	0 | ||
| 54 | FE_TONEAREST, | ||
| 55 | FE_UPWARD = | ||
| 56 | #define FE_UPWARD	0x400000 | ||
| 57 | FE_UPWARD, | ||
| 58 | FE_DOWNWARD = | ||
| 59 | #define FE_DOWNWARD	0x800000 | ||
| 60 | FE_DOWNWARD, | ||
| 61 | FE_TOWARDZERO = | ||
| 62 | #define FE_TOWARDZERO	0xc00000 | ||
| 63 | FE_TOWARDZERO | ||
| 64 | }; | ||
| 65 | |||
| 66 | /* Type representing exception flags. */ | ||
| 67 | typedef unsigned int fexcept_t; | ||
| 68 | |||
| 69 | /* Type representing floating-point environment. */ | ||
| 70 | typedef struct | ||
| 71 | { | ||
| 72 | unsigned int __cw; | ||
| 73 | } | ||
| 74 | fenv_t; | ||
| 75 | |||
| 76 | /* If the default argument is used we use this value. */ | ||
| 77 | #define FE_DFL_ENV	((const fenv_t *) -1l) | ||
| 78 | |||
| 79 | #ifdef __USE_GNU | ||
| 80 | /* Floating-point environment where none of the exceptions are masked. */ | ||
| 81 | # define FE_NOMASK_ENV ((const fenv_t *) -2) | ||
| 82 | #endif | ||
| 83 | |||
| 84 | #if __GLIBC_USE (IEC_60559_BFP_EXT_C23) | ||
| 85 | /* Type representing floating-point control modes. */ | ||
| 86 | typedef unsigned int femode_t; | ||
| 87 | |||
| 88 | /* Default floating-point control modes. */ | ||
| 89 | # define FE_DFL_MODE	((const femode_t *) -1L) | ||
| 90 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnu/bits/floatn.h created+52| ... | @@ -0,0 +1,52 @@ | ||
| 1 | /* Macros to control TS 18661-3 glibc features. | ||
| 2 | Copyright (C) 2017-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* Defined to 1 if the current compiler invocation provides a | ||
| 20 | floating-point type with the IEEE 754 binary128 format, and this glibc | ||
| 21 | includes corresponding *f128 interfaces for it. */ | ||
| 22 | #define __HAVE_FLOAT128 0 | ||
| 23 | |||
| 24 | /* Defined to 1 if __HAVE_FLOAT128 is 1 and the type is ABI-distinct | ||
| 25 | from the default float, double and long double types in this glibc. */ | ||
| 26 | #define __HAVE_DISTINCT_FLOAT128 0 | ||
| 27 | |||
| 28 | /* Defined to 1 if the current compiler invocation provides a | ||
| 29 | floating-point type with the right format for _Float64x, and this | ||
| 30 | glibc includes corresponding *f64x interfaces for it. */ | ||
| 31 | #define __HAVE_FLOAT64X 0 | ||
| 32 | |||
| 33 | /* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format | ||
| 34 | of long double. Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has | ||
| 35 | the format of _Float128, which must be different from that of long | ||
| 36 | double. */ | ||
| 37 | #define __HAVE_FLOAT64X_LONG_DOUBLE 0 | ||
| 38 | |||
| 39 | #ifndef __ASSEMBLER__ | ||
| 40 | |||
| 41 | /* Defined to concatenate the literal suffix to be used with _Float128 | ||
| 42 | types, if __HAVE_FLOAT128 is 1. | ||
| 43 | E.g.: #define __f128(x) x##f128. */ | ||
| 44 | # undef __f128 | ||
| 45 | |||
| 46 | /* Defined to a complex binary128 type if __HAVE_FLOAT128 is 1. | ||
| 47 | E.g.: #define __CFLOAT128 _Complex _Float128. */ | ||
| 48 | # undef __CFLOAT128 | ||
| 49 | |||
| 50 | #endif /* !__ASSEMBLER__. */ | ||
| 51 | |||
| 52 | #include <bits/floatn-common.h> | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnu/bits/hwcap.h created+59| ... | @@ -0,0 +1,59 @@ | ||
| 1 | /* Defines for bits in AT_HWCAP. ARM Linux version. | ||
| 2 | Copyright (C) 2012-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #if !defined (_SYS_AUXV_H) && !defined (_LINUX_ARM_SYSDEP_H) | ||
| 20 | # error "Never include <bits/hwcap.h> directly; use <sys/auxv.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* The following must match the kernel's <asm/hwcap.h>. */ | ||
| 24 | #define HWCAP_ARM_SWP		1 | ||
| 25 | #define HWCAP_ARM_HALF		2 | ||
| 26 | #define HWCAP_ARM_THUMB		4 | ||
| 27 | #define HWCAP_ARM_26BIT		8 | ||
| 28 | #define HWCAP_ARM_FAST_MULT	16 | ||
| 29 | #define HWCAP_ARM_FPA		32 | ||
| 30 | #define HWCAP_ARM_VFP		64 | ||
| 31 | #define HWCAP_ARM_EDSP		128 | ||
| 32 | #define HWCAP_ARM_JAVA		256 | ||
| 33 | #define HWCAP_ARM_IWMMXT	512 | ||
| 34 | #define HWCAP_ARM_CRUNCH	1024 | ||
| 35 | #define HWCAP_ARM_THUMBEE	2048 | ||
| 36 | #define HWCAP_ARM_NEON		4096 | ||
| 37 | #define HWCAP_ARM_VFPv3		8192 | ||
| 38 | #define HWCAP_ARM_VFPv3D16	16384 | ||
| 39 | #define HWCAP_ARM_TLS		32768 | ||
| 40 | #define HWCAP_ARM_VFPv4		65536 | ||
| 41 | #define HWCAP_ARM_IDIVA		131072 | ||
| 42 | #define HWCAP_ARM_IDIVT		262144 | ||
| 43 | #define HWCAP_ARM_VFPD32	524288 | ||
| 44 | #define HWCAP_ARM_LPAE		1048576 | ||
| 45 | #define HWCAP_ARM_EVTSTRM	2097152 | ||
| 46 | #define HWCAP_FPHP		4194304 | ||
| 47 | #define HWCAP_ASIMDHP		8388608 | ||
| 48 | #define HWCAP_ASIMDDP		16777216 | ||
| 49 | #define HWCAP_ASIMDFHM		33554432 | ||
| 50 | #define HWCAP_ASIMDBF16		67108864 | ||
| 51 | #define HWCAP_I8MM		134217728 | ||
| 52 | |||
| 53 | #define HWCAP2_AES		1 | ||
| 54 | #define HWCAP2_PMULL		2 | ||
| 55 | #define HWCAP2_SHA1		4 | ||
| 56 | #define HWCAP2_SHA2		8 | ||
| 57 | #define HWCAP2_CRC32		16 | ||
| 58 | #define HWCAP2_SB		32 | ||
| 59 | #define HWCAP2_SSBS		64 | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnu/bits/link.h created+65| ... | @@ -0,0 +1,65 @@ | ||
| 1 | /* Copyright (C) 2005-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_LINK_H | ||
| 19 | # error "Never include <bits/link.h> directly; use <link.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | |||
| 23 | /* Registers for entry into PLT on ARM. */ | ||
| 24 | typedef struct La_arm_regs | ||
| 25 | { | ||
| 26 | uint32_t lr_reg[4]; | ||
| 27 | uint32_t lr_sp; | ||
| 28 | uint32_t lr_lr; | ||
| 29 | /* Coprocessor registers used for argument passing. The data | ||
| 30 | stored here depends on the coprocessors available in the | ||
| 31 | system which are used for function calls in the current ABI. | ||
| 32 | VFP uses eight 64-bit registers, and iWMMXt uses ten. */ | ||
| 33 | uint32_t lr_coproc[42]; | ||
| 34 | } La_arm_regs; | ||
| 35 | |||
| 36 | /* Return values for calls from PLT on ARM. */ | ||
| 37 | typedef struct La_arm_retval | ||
| 38 | { | ||
| 39 | /* Up to four integer registers can be used for a return value in | ||
| 40 | some ABIs (APCS complex long double). */ | ||
| 41 | uint32_t lrv_reg[4]; | ||
| 42 | |||
| 43 | /* Any coprocessor registers which might be used to return values | ||
| 44 | in the current ABI. */ | ||
| 45 | uint32_t lrv_coproc[12]; | ||
| 46 | } La_arm_retval; | ||
| 47 | |||
| 48 | |||
| 49 | __BEGIN_DECLS | ||
| 50 | |||
| 51 | extern Elf32_Addr la_arm_gnu_pltenter (Elf32_Sym *__sym, unsigned int __ndx, | ||
| 52 | 				 uintptr_t *__refcook, | ||
| 53 | 				 uintptr_t *__defcook, | ||
| 54 | 				 La_arm_regs *__regs, | ||
| 55 | 				 unsigned int *__flags, | ||
| 56 | 				 const char *__symname, | ||
| 57 | 				 long int *__framesizep); | ||
| 58 | extern unsigned int la_arm_gnu_pltexit (Elf32_Sym *__sym, unsigned int __ndx, | ||
| 59 | 					uintptr_t *__refcook, | ||
| 60 | 					uintptr_t *__defcook, | ||
| 61 | 					const La_arm_regs *__inregs, | ||
| 62 | 					La_arm_retval *__outregs, | ||
| 63 | 					const char *__symname); | ||
| 64 | |||
| 65 | __END_DECLS | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnu/bits/long-double.h created+53| ... | @@ -0,0 +1,53 @@ | ||
| 1 | /* Properties of long double type. | ||
| 2 | Copyright (C) 2016-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* This header is included by <sys/cdefs.h>. | ||
| 20 | |||
| 21 | If long double is ABI-compatible with double, it should define | ||
| 22 | __NO_LONG_DOUBLE_MATH to 1; otherwise, it should leave | ||
| 23 | __NO_LONG_DOUBLE_MATH undefined. | ||
| 24 | |||
| 25 | If this build of the GNU C Library supports both long double | ||
| 26 | ABI-compatible with double and some other long double format not | ||
| 27 | ABI-compatible with double, it should define | ||
| 28 | __LONG_DOUBLE_MATH_OPTIONAL to 1; otherwise, it should leave | ||
| 29 | __LONG_DOUBLE_MATH_OPTIONAL undefined. | ||
| 30 | |||
| 31 | If __NO_LONG_DOUBLE_MATH is already defined, this header must not | ||
| 32 | define anything; this is needed to work with the definition of | ||
| 33 | __NO_LONG_DOUBLE_MATH in nldbl-compat.h. */ | ||
| 34 | |||
| 35 | /* In the default version of this header, long double is | ||
| 36 | ABI-compatible with double. */ | ||
| 37 | #ifndef __NO_LONG_DOUBLE_MATH | ||
| 38 | # define __NO_LONG_DOUBLE_MATH	1 | ||
| 39 | #endif | ||
| 40 | |||
| 41 | /* The macro __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI is used to determine the | ||
| 42 | choice of the underlying ABI of long double. It will always assume | ||
| 43 | a constant value for each translation unit. | ||
| 44 | |||
| 45 | If the value is non-zero, any API which is parameterized by the long | ||
| 46 | double type (i.e the scanf/printf family of functions or the explicitly | ||
| 47 | parameterized math.h functions) will be redirected to a compatible | ||
| 48 | implementation using _Float128 ABI via symbols suffixed with ieee128. | ||
| 49 | |||
| 50 | The mechanism this macro uses to acquire may be a function | ||
| 51 | of architecture, or target specific options used to invoke the | ||
| 52 | compiler. */ | ||
| 53 | #define __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI 0 | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnu/bits/procfs-id.h created+25| ... | @@ -0,0 +1,25 @@ | ||
| 1 | /* Types of pr_uid and pr_gid in struct elf_prpsinfo. Arm version. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library; if not, see | ||
| 18 | <https://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifndef _SYS_PROCFS_H | ||
| 21 | # error "Never include <bits/procfs-id.h> directly; use <sys/procfs.h> instead." | ||
| 22 | #endif | ||
| 23 | |||
| 24 | typedef unsigned short int __pr_uid_t; | ||
| 25 | typedef unsigned short int __pr_gid_t; | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnu/bits/procfs.h created+34| ... | @@ -0,0 +1,34 @@ | ||
| 1 | /* Types for registers for sys/procfs.h. Arm version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_PROCFS_H | ||
| 20 | # error "Never include <bits/procfs.h> directly; use <sys/procfs.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Type for a general-purpose register. */ | ||
| 24 | typedef unsigned long elf_greg_t; | ||
| 25 | |||
| 26 | /* And the whole bunch of them. We could have used `struct | ||
| 27 | user_regs' directly in the typedef, but tradition says that | ||
| 28 | the register set is an array, which does have some peculiar | ||
| 29 | semantics, so leave it that way. */ | ||
| 30 | #define ELF_NGREG (sizeof (struct user_regs) / sizeof (elf_greg_t)) | ||
| 31 | typedef elf_greg_t elf_gregset_t[ELF_NGREG]; | ||
| 32 | |||
| 33 | /* Register set for the floating-point registers. */ | ||
| 34 | typedef struct user_fpregs elf_fpregset_t; | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnu/bits/rseq.h created+83| ... | @@ -0,0 +1,83 @@ | ||
| 1 | /* Restartable Sequences Linux arm architecture header. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_RSEQ_H | ||
| 19 | # error "Never use <bits/rseq.h> directly; include <sys/rseq.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* | ||
| 23 | RSEQ_SIG is a signature required before each abort handler code. | ||
| 24 | |||
| 25 | It is a 32-bit value that maps to actual architecture code compiled | ||
| 26 | into applications and libraries. It needs to be defined for each | ||
| 27 | architecture. When choosing this value, it needs to be taken into | ||
| 28 | account that generating invalid instructions may have ill effects on | ||
| 29 | tools like objdump, and may also have impact on the CPU speculative | ||
| 30 | execution efficiency in some cases. | ||
| 31 | |||
| 32 | - ARM little endian | ||
| 33 | |||
| 34 | RSEQ_SIG uses the udf A32 instruction with an uncommon immediate operand | ||
| 35 | value 0x5de3. This traps if user-space reaches this instruction by mistake, | ||
| 36 | and the uncommon operand ensures the kernel does not move the instruction | ||
| 37 | pointer to attacker-controlled code on rseq abort. | ||
| 38 | |||
| 39 | The instruction pattern in the A32 instruction set is: | ||
| 40 | |||
| 41 | e7f5def3 udf #24035 ; 0x5de3 | ||
| 42 | |||
| 43 | This translates to the following instruction pattern in the T16 instruction | ||
| 44 | set: | ||
| 45 | |||
| 46 | little endian: | ||
| 47 | def3 udf #243 ; 0xf3 | ||
| 48 | e7f5 b.n <7f5> | ||
| 49 | |||
| 50 | - ARMv6+ big endian (BE8): | ||
| 51 | |||
| 52 | ARMv6+ -mbig-endian generates mixed endianness code vs data: little-endian | ||
| 53 | code and big-endian data. The data value of the signature needs to have its | ||
| 54 | byte order reversed to generate the trap instruction: | ||
| 55 | |||
| 56 | Data: 0xf3def5e7 | ||
| 57 | |||
| 58 | Translates to this A32 instruction pattern: | ||
| 59 | |||
| 60 | e7f5def3 udf #24035 ; 0x5de3 | ||
| 61 | |||
| 62 | Translates to this T16 instruction pattern: | ||
| 63 | |||
| 64 | def3 udf #243 ; 0xf3 | ||
| 65 | e7f5 b.n <7f5> | ||
| 66 | |||
| 67 | - Prior to ARMv6 big endian (BE32): | ||
| 68 | |||
| 69 | Prior to ARMv6, -mbig-endian generates big-endian code and data | ||
| 70 | (which match), so the endianness of the data representation of the | ||
| 71 | signature should not be reversed. However, the choice between BE32 | ||
| 72 | and BE8 is done by the linker, so we cannot know whether code and | ||
| 73 | data endianness will be mixed before the linker is invoked. So rather | ||
| 74 | than try to play tricks with the linker, the rseq signature is simply | ||
| 75 | data (not a trap instruction) prior to ARMv6 on big endian. This is | ||
| 76 | why the signature is expressed as data (.word) rather than as | ||
| 77 | instruction (.inst) in assembler. */ | ||
| 78 | |||
| 79 | #ifdef __ARMEB__ | ||
| 80 | # define RSEQ_SIG 0xf3def5e7 /* udf #24035 ; 0x5de3 (ARMv6+) */ | ||
| 81 | #else | ||
| 82 | # define RSEQ_SIG 0xe7f5def3 /* udf #24035 ; 0x5de3 */ | ||
| 83 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnu/bits/setjmp.h created+36| ... | @@ -0,0 +1,36 @@ | ||
| 1 | /* Copyright (C) 2004-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | /* Define the machine-dependent type `jmp_buf'. ARM EABI version. */ | ||
| 19 | |||
| 20 | #ifndef _BITS_SETJMP_H | ||
| 21 | #define _BITS_SETJMP_H 1 | ||
| 22 | |||
| 23 | #if !defined _SETJMP_H && !defined _PTHREAD_H | ||
| 24 | # error "Never include <bits/setjmp.h> directly; use <setjmp.h> instead." | ||
| 25 | #endif | ||
| 26 | |||
| 27 | #ifndef __ASSEMBLER__ | ||
| 28 | /* The exact set of registers saved may depend on the particular core | ||
| 29 | in use, as some coprocessor registers may need to be saved. The C | ||
| 30 | Library ABI requires that the buffer be 8-byte aligned, and | ||
| 31 | recommends that the buffer contain 64 words. The first 26 words | ||
| 32 | are occupied by sp, lr, v1-v6, sl, fp, and d8-d15. */ | ||
| 33 | typedef int __jmp_buf[64] __attribute__((__aligned__ (8))); | ||
| 34 | #endif | ||
| 35 | |||
| 36 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnu/bits/shmlba.h created+29| ... | @@ -0,0 +1,29 @@ | ||
| 1 | /* Define SHMLBA. ARM version. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SHM_H | ||
| 20 | # error "Never use <bits/shmlba.h> directly; include <sys/shm.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | __BEGIN_DECLS | ||
| 24 | |||
| 25 | /* Segment low boundary address multiple. */ | ||
| 26 | #define SHMLBA		(__getpagesize () << 2) | ||
| 27 | extern int __getpagesize (void) __THROW __attribute__ ((__const__)); | ||
| 28 | |||
| 29 | __END_DECLS | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnu/bits/struct_stat.h created+139| ... | @@ -0,0 +1,139 @@ | ||
| 1 | /* Definition for struct stat. Linux/arm version. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #if !defined _SYS_STAT_H && !defined _FCNTL_H | ||
| 20 | # error "Never include <bits/struct_stat.h> directly; use <sys/stat.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef _BITS_STRUCT_STAT_H | ||
| 24 | #define _BITS_STRUCT_STAT_H	1 | ||
| 25 | |||
| 26 | #include <bits/endian.h> | ||
| 27 | #include <bits/wordsize.h> | ||
| 28 | |||
| 29 | struct stat | ||
| 30 | { | ||
| 31 | #ifdef __USE_TIME64_REDIRECTS | ||
| 32 | # include <bits/struct_stat_time64_helper.h> | ||
| 33 | #else | ||
| 34 | __dev_t st_dev;			/* Device. */ | ||
| 35 | unsigned short int __pad1; | ||
| 36 | # ifndef __USE_FILE_OFFSET64 | ||
| 37 | __ino_t st_ino;			/* File serial number.	*/ | ||
| 38 | # else | ||
| 39 | __ino_t __st_ino;			/* 32bit file serial number.	*/ | ||
| 40 | # endif | ||
| 41 | __mode_t st_mode;			/* File mode. */ | ||
| 42 | __nlink_t st_nlink;			/* Link count. */ | ||
| 43 | __uid_t st_uid;			/* User ID of the file's owner.	*/ | ||
| 44 | __gid_t st_gid;			/* Group ID of the file's group.*/ | ||
| 45 | __dev_t st_rdev;			/* Device number, if device. */ | ||
| 46 | unsigned short int __pad2; | ||
| 47 | # ifndef __USE_FILE_OFFSET64 | ||
| 48 | __off_t st_size;			/* Size of file, in bytes. */ | ||
| 49 | # else | ||
| 50 | __off64_t st_size;			/* Size of file, in bytes. */ | ||
| 51 | # endif | ||
| 52 | __blksize_t st_blksize;		/* Optimal block size for I/O. */ | ||
| 53 | |||
| 54 | # ifndef __USE_FILE_OFFSET64 | ||
| 55 | __blkcnt_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 56 | # else | ||
| 57 | __blkcnt64_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 58 | # endif | ||
| 59 | # ifdef __USE_XOPEN2K8 | ||
| 60 | /* Nanosecond resolution timestamps are stored in a format | ||
| 61 | equivalent to 'struct timespec'. This is the type used | ||
| 62 | whenever possible but the Unix namespace rules do not allow the | ||
| 63 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 64 | Therefore we have to handle the use of this header in strictly | ||
| 65 | standard-compliant sources special. */ | ||
| 66 | struct timespec st_atim;		/* Time of last access. */ | ||
| 67 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 68 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 69 | # define st_atime st_atim.tv_sec	/* Backward compatibility. */ | ||
| 70 | # define st_mtime st_mtim.tv_sec | ||
| 71 | # define st_ctime st_ctim.tv_sec | ||
| 72 | # else | ||
| 73 | __time_t st_atime;			/* Time of last access. */ | ||
| 74 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 75 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 76 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 77 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 78 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 79 | # endif | ||
| 80 | # ifndef __USE_FILE_OFFSET64 | ||
| 81 | unsigned long int __glibc_reserved4; | ||
| 82 | unsigned long int __glibc_reserved5; | ||
| 83 | # else | ||
| 84 | __ino64_t st_ino;			/* File serial number.	*/ | ||
| 85 | # endif | ||
| 86 | #endif /* __USE_TIME64_REDIRECTS */ | ||
| 87 | }; | ||
| 88 | |||
| 89 | #ifdef __USE_LARGEFILE64 | ||
| 90 | struct stat64 | ||
| 91 | { | ||
| 92 | # ifdef __USE_TIME64_REDIRECTS | ||
| 93 | # include <bits/struct_stat_time64_helper.h> | ||
| 94 | # else | ||
| 95 | __dev_t st_dev;			/* Device. */ | ||
| 96 | unsigned int __pad1; | ||
| 97 | |||
| 98 | __ino_t __st_ino;			/* 32bit file serial number.	*/ | ||
| 99 | __mode_t st_mode;			/* File mode. */ | ||
| 100 | __nlink_t st_nlink;			/* Link count. */ | ||
| 101 | __uid_t st_uid;			/* User ID of the file's owner.	*/ | ||
| 102 | __gid_t st_gid;			/* Group ID of the file's group.*/ | ||
| 103 | __dev_t st_rdev;			/* Device number, if device. */ | ||
| 104 | unsigned int __pad2; | ||
| 105 | __off64_t st_size;			/* Size of file, in bytes. */ | ||
| 106 | __blksize_t st_blksize;		/* Optimal block size for I/O. */ | ||
| 107 | |||
| 108 | __blkcnt64_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 109 | # ifdef __USE_XOPEN2K8 | ||
| 110 | /* Nanosecond resolution timestamps are stored in a format | ||
| 111 | equivalent to 'struct timespec'. This is the type used | ||
| 112 | whenever possible but the Unix namespace rules do not allow the | ||
| 113 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 114 | Therefore we have to handle the use of this header in strictly | ||
| 115 | standard-compliant sources special. */ | ||
| 116 | struct timespec st_atim;		/* Time of last access. */ | ||
| 117 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 118 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 119 | # else | ||
| 120 | __time_t st_atime;			/* Time of last access. */ | ||
| 121 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 122 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 123 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 124 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 125 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 126 | # endif | ||
| 127 | __ino64_t st_ino;			/* File serial number.		*/ | ||
| 128 | # endif /* __USE_TIME64_REDIRECTS */ | ||
| 129 | }; | ||
| 130 | #endif | ||
| 131 | |||
| 132 | /* Tell code we have these members. */ | ||
| 133 | #define	_STATBUF_ST_BLKSIZE | ||
| 134 | #define _STATBUF_ST_RDEV | ||
| 135 | /* Nanosecond resolution time values are supported. */ | ||
| 136 | #define _STATBUF_ST_NSEC | ||
| 137 | |||
| 138 | |||
| 139 | #endif /* _BITS_STRUCT_STAT_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnu/bits/timesize.h created+20| ... | @@ -0,0 +1,20 @@ | ||
| 1 | /* Bit size of the time_t type at glibc build time, Linux/ARM. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* Size in bits of the 'time_t' type of the default ABI. */ | ||
| 20 | #define __TIMESIZE	32 | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnu/bits/typesizes.h created+74| ... | @@ -0,0 +1,74 @@ | ||
| 1 | /* bits/typesizes.h -- underlying types for *_t. ARM version. | ||
| 2 | Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_TYPES_H | ||
| 20 | # error "Never include <bits/typesizes.h> directly; use <sys/types.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef	_BITS_TYPESIZES_H | ||
| 24 | #define	_BITS_TYPESIZES_H	1 | ||
| 25 | |||
| 26 | /* See <bits/types.h> for the meaning of these macros. This file exists so | ||
| 27 | that <bits/types.h> need not vary across different GNU platforms. */ | ||
| 28 | |||
| 29 | #define __DEV_T_TYPE		__UQUAD_TYPE | ||
| 30 | #define __UID_T_TYPE		__U32_TYPE | ||
| 31 | #define __GID_T_TYPE		__U32_TYPE | ||
| 32 | #define __INO_T_TYPE		__ULONGWORD_TYPE | ||
| 33 | #define __INO64_T_TYPE		__UQUAD_TYPE | ||
| 34 | #define __MODE_T_TYPE		__U32_TYPE | ||
| 35 | #define __NLINK_T_TYPE		__UWORD_TYPE | ||
| 36 | #define __OFF_T_TYPE		__SLONGWORD_TYPE | ||
| 37 | #define __OFF64_T_TYPE		__SQUAD_TYPE | ||
| 38 | #define __PID_T_TYPE		__S32_TYPE | ||
| 39 | #define __RLIM_T_TYPE		__ULONGWORD_TYPE | ||
| 40 | #define __RLIM64_T_TYPE		__UQUAD_TYPE | ||
| 41 | #define	__BLKCNT_T_TYPE		__SLONGWORD_TYPE | ||
| 42 | #define	__BLKCNT64_T_TYPE	__SQUAD_TYPE | ||
| 43 | #define	__FSBLKCNT_T_TYPE	__ULONGWORD_TYPE | ||
| 44 | #define	__FSBLKCNT64_T_TYPE	__UQUAD_TYPE | ||
| 45 | #define	__FSFILCNT_T_TYPE	__ULONGWORD_TYPE | ||
| 46 | #define	__FSFILCNT64_T_TYPE	__UQUAD_TYPE | ||
| 47 | #define	__FSWORD_T_TYPE		__SWORD_TYPE | ||
| 48 | #define	__ID_T_TYPE		__U32_TYPE | ||
| 49 | #define __CLOCK_T_TYPE		__SLONGWORD_TYPE | ||
| 50 | #define __TIME_T_TYPE		__SLONGWORD_TYPE | ||
| 51 | #define __USECONDS_T_TYPE	__U32_TYPE | ||
| 52 | #define __SUSECONDS_T_TYPE	__SLONGWORD_TYPE | ||
| 53 | #define __SUSECONDS64_T_TYPE	__SQUAD_TYPE | ||
| 54 | #define __DADDR_T_TYPE		__S32_TYPE | ||
| 55 | #define __KEY_T_TYPE		__S32_TYPE | ||
| 56 | #define __CLOCKID_T_TYPE	__S32_TYPE | ||
| 57 | #define __TIMER_T_TYPE		void * | ||
| 58 | #define __BLKSIZE_T_TYPE	__SLONGWORD_TYPE | ||
| 59 | #define __FSID_T_TYPE		struct { int __val[2]; } | ||
| 60 | #define __SSIZE_T_TYPE		__SWORD_TYPE | ||
| 61 | #define __SYSCALL_SLONG_TYPE	__SLONGWORD_TYPE | ||
| 62 | #define __SYSCALL_ULONG_TYPE	__ULONGWORD_TYPE | ||
| 63 | #define __CPU_MASK_TYPE 	__ULONGWORD_TYPE | ||
| 64 | |||
| 65 | #define __RLIM_T_MATCHES_RLIM64_T		0 | ||
| 66 | #define __STATFS_MATCHES_STATFS64		0 | ||
| 67 | /* And for getitimer, setitimer and rusage */ | ||
| 68 | #define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64	0 | ||
| 69 | |||
| 70 | /* Number of descriptors that can fit in an `fd_set'. */ | ||
| 71 | #define	__FD_SETSIZE		1024 | ||
| 72 | |||
| 73 | |||
| 74 | #endif /* bits/typesizes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnu/bits/wordsize.h created+21| ... | @@ -0,0 +1,21 @@ | ||
| 1 | /* Copyright (C) 1999-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #define __WORDSIZE			32 | ||
| 19 | #define __WORDSIZE_TIME64_COMPAT32	1 | ||
| 20 | #define __WORDSIZE32_SIZE_ULONG		0 | ||
| 21 | #define __WORDSIZE32_PTRDIFF_LONG	0 | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnu/fpu_control.h created+75| ... | @@ -0,0 +1,75 @@ | ||
| 1 | /* FPU control word definitions. ARM VFP version. | ||
| 2 | Copyright (C) 2004-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _FPU_CONTROL_H | ||
| 20 | #define _FPU_CONTROL_H | ||
| 21 | |||
| 22 | #if !(defined(_LIBC) && !defined(_LIBC_TEST)) && defined(__SOFTFP__) | ||
| 23 | |||
| 24 | #define _FPU_RESERVED 0xffffffff | ||
| 25 | #define _FPU_DEFAULT 0x00000000 | ||
| 26 | typedef unsigned int fpu_control_t; | ||
| 27 | #define _FPU_GETCW(cw) (cw) = 0 | ||
| 28 | #define _FPU_SETCW(cw) (void) (cw) | ||
| 29 | extern fpu_control_t __fpu_control; | ||
| 30 | |||
| 31 | #else | ||
| 32 | |||
| 33 | /* masking of interrupts */ | ||
| 34 | #define _FPU_MASK_IM	0x00000100	/* invalid operation */ | ||
| 35 | #define _FPU_MASK_ZM	0x00000200	/* divide by zero */ | ||
| 36 | #define _FPU_MASK_OM	0x00000400	/* overflow */ | ||
| 37 | #define _FPU_MASK_UM	0x00000800	/* underflow */ | ||
| 38 | #define _FPU_MASK_PM	0x00001000	/* inexact */ | ||
| 39 | |||
| 40 | #define _FPU_MASK_NZCV	0xf0000000	/* NZCV flags */ | ||
| 41 | #define _FPU_MASK_RM	0x00c00000	/* rounding mode */ | ||
| 42 | #define _FPU_MASK_EXCEPT 0x00001f1f	/* all exception flags */ | ||
| 43 | |||
| 44 | /* Some bits in the FPSCR are not yet defined. They must be preserved when | ||
| 45 | modifying the contents. */ | ||
| 46 | #define _FPU_RESERVED	0x00086060 | ||
| 47 | #define _FPU_DEFAULT 0x00000000 | ||
| 48 | |||
| 49 | /* Default + exceptions enabled. */ | ||
| 50 | #define _FPU_IEEE	(_FPU_DEFAULT | 0x00001f00) | ||
| 51 | |||
| 52 | /* Type of the control word. */ | ||
| 53 | typedef unsigned int fpu_control_t; | ||
| 54 | |||
| 55 | /* Macros for accessing the hardware control word. */ | ||
| 56 | #ifdef __SOFTFP__ | ||
| 57 | /* This is fmrx %0, fpscr. */ | ||
| 58 | # define _FPU_GETCW(cw) \ | ||
| 59 | __asm__ __volatile__ ("mrc p10, 7, %0, cr1, cr0, 0" : "=r" (cw)) | ||
| 60 | /* This is fmxr fpscr, %0. */ | ||
| 61 | # define _FPU_SETCW(cw) \ | ||
| 62 | __asm__ __volatile__ ("mcr p10, 7, %0, cr1, cr0, 0" : : "r" (cw)) | ||
| 63 | #else | ||
| 64 | # define _FPU_GETCW(cw) \ | ||
| 65 | __asm__ __volatile__ ("vmrs %0, fpscr" : "=r" (cw)) | ||
| 66 | # define _FPU_SETCW(cw) \ | ||
| 67 | __asm__ __volatile__ ("vmsr fpscr, %0" : : "r" (cw)) | ||
| 68 | #endif | ||
| 69 | |||
| 70 | /* Default control word set at startup. */ | ||
| 71 | extern fpu_control_t __fpu_control; | ||
| 72 | |||
| 73 | #endif /* __SOFTFP__ */ | ||
| 74 | |||
| 75 | #endif /* _FPU_CONTROL_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnu/gnu/lib-names.h created+14| ... | @@ -0,0 +1,14 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | It defines macros to allow user program to find the shared | ||
| 3 | library files which come as part of GNU libc. */ | ||
| 4 | #ifndef __GNU_LIB_NAMES_H | ||
| 5 | #define __GNU_LIB_NAMES_H	1 | ||
| 6 | |||
| 7 | #if !defined __ARM_PCS_VFP | ||
| 8 | # include <gnu/lib-names-soft.h> | ||
| 9 | #endif | ||
| 10 | #if defined __ARM_PCS_VFP | ||
| 11 | # include <gnu/lib-names-hard.h> | ||
| 12 | #endif | ||
| 13 | |||
| 14 | #endif	/* gnu/lib-names.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnu/gnu/stubs.h created+11| ... | @@ -0,0 +1,11 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | This file selects the right generated file of `__stub_FUNCTION' macros | ||
| 3 | based on the architecture being compiled for. */ | ||
| 4 | |||
| 5 | |||
| 6 | #if !defined __ARM_PCS_VFP | ||
| 7 | # include <gnu/stubs-soft.h> | ||
| 8 | #endif | ||
| 9 | #if defined __ARM_PCS_VFP | ||
| 10 | # include <gnu/stubs-hard.h> | ||
| 11 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnu/sys/ptrace.h created+226| ... | @@ -0,0 +1,226 @@ | ||
| 1 | /* `ptrace' debugger support interface. Linux/ARM version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library; if not, see | ||
| 18 | <https://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifndef _SYS_PTRACE_H | ||
| 21 | #define _SYS_PTRACE_H	1 | ||
| 22 | |||
| 23 | #include <features.h> | ||
| 24 | #include <bits/types.h> | ||
| 25 | |||
| 26 | __BEGIN_DECLS | ||
| 27 | |||
| 28 | /* Type of the REQUEST argument to `ptrace.' */ | ||
| 29 | enum __ptrace_request | ||
| 30 | { | ||
| 31 | /* Indicate that the process making this request should be traced. | ||
| 32 | All signals received by this process can be intercepted by its | ||
| 33 | parent, and its parent can use the other `ptrace' requests. */ | ||
| 34 | PTRACE_TRACEME = 0, | ||
| 35 | #define PT_TRACE_ME PTRACE_TRACEME | ||
| 36 | |||
| 37 | /* Return the word in the process's text space at address ADDR. */ | ||
| 38 | PTRACE_PEEKTEXT = 1, | ||
| 39 | #define PT_READ_I PTRACE_PEEKTEXT | ||
| 40 | |||
| 41 | /* Return the word in the process's data space at address ADDR. */ | ||
| 42 | PTRACE_PEEKDATA = 2, | ||
| 43 | #define PT_READ_D PTRACE_PEEKDATA | ||
| 44 | |||
| 45 | /* Return the word in the process's user area at offset ADDR. */ | ||
| 46 | PTRACE_PEEKUSER = 3, | ||
| 47 | #define PT_READ_U PTRACE_PEEKUSER | ||
| 48 | |||
| 49 | /* Write the word DATA into the process's text space at address ADDR. */ | ||
| 50 | PTRACE_POKETEXT = 4, | ||
| 51 | #define PT_WRITE_I PTRACE_POKETEXT | ||
| 52 | |||
| 53 | /* Write the word DATA into the process's data space at address ADDR. */ | ||
| 54 | PTRACE_POKEDATA = 5, | ||
| 55 | #define PT_WRITE_D PTRACE_POKEDATA | ||
| 56 | |||
| 57 | /* Write the word DATA into the process's user area at offset ADDR. */ | ||
| 58 | PTRACE_POKEUSER = 6, | ||
| 59 | #define PT_WRITE_U PTRACE_POKEUSER | ||
| 60 | |||
| 61 | /* Continue the process. */ | ||
| 62 | PTRACE_CONT = 7, | ||
| 63 | #define PT_CONTINUE PTRACE_CONT | ||
| 64 | |||
| 65 | /* Kill the process. */ | ||
| 66 | PTRACE_KILL = 8, | ||
| 67 | #define PT_KILL PTRACE_KILL | ||
| 68 | |||
| 69 | /* Single step the process. */ | ||
| 70 | PTRACE_SINGLESTEP = 9, | ||
| 71 | #define PT_STEP PTRACE_SINGLESTEP | ||
| 72 | |||
| 73 | /* Get all general purpose registers used by a process. */ | ||
| 74 | PTRACE_GETREGS = 12, | ||
| 75 | #define PT_GETREGS PTRACE_GETREGS | ||
| 76 | |||
| 77 | /* Set all general purpose registers used by a process. */ | ||
| 78 | PTRACE_SETREGS = 13, | ||
| 79 | #define PT_SETREGS PTRACE_SETREGS | ||
| 80 | |||
| 81 | /* Get all floating point registers used by a process. */ | ||
| 82 | PTRACE_GETFPREGS = 14, | ||
| 83 | #define PT_GETFPREGS PTRACE_GETFPREGS | ||
| 84 | |||
| 85 | /* Set all floating point registers used by a process. */ | ||
| 86 | PTRACE_SETFPREGS = 15, | ||
| 87 | #define PT_SETFPREGS PTRACE_SETFPREGS | ||
| 88 | |||
| 89 | /* Attach to a process that is already running. */ | ||
| 90 | PTRACE_ATTACH = 16, | ||
| 91 | #define PT_ATTACH PTRACE_ATTACH | ||
| 92 | |||
| 93 | /* Detach from a process attached to with PTRACE_ATTACH. */ | ||
| 94 | PTRACE_DETACH = 17, | ||
| 95 | #define PT_DETACH PTRACE_DETACH | ||
| 96 | |||
| 97 | /* Get the iWMMXt state of a process. */ | ||
| 98 | PTRACE_GETWMMXREGS = 18, | ||
| 99 | #define PT_GETWMMXREGS PTRACE_GETWMMXREGS | ||
| 100 | |||
| 101 | /* Set the iWMMXt state of a process. */ | ||
| 102 | PTRACE_SETWMMXREGS = 19, | ||
| 103 | #define PT_SETWMMXREGS PTRACE_SETWMMXREGS | ||
| 104 | |||
| 105 | /* Get the thread pointer of a process. */ | ||
| 106 | PTRACE_GET_THREAD_AREA = 22, | ||
| 107 | #define PT_GET_THREAD_AREA PTRACE_GET_THREAD_AREA | ||
| 108 | |||
| 109 | /* Change the syscall number of a process. */ | ||
| 110 | PTRACE_SET_SYSCALL = 23, | ||
| 111 | #define PT_SET_SYSCALL PTRACE_SET_SYSCALL | ||
| 112 | |||
| 113 | /* Continue and stop at the next entry to or return from syscall. */ | ||
| 114 | PTRACE_SYSCALL = 24, | ||
| 115 | #define PT_SYSCALL PTRACE_SYSCALL | ||
| 116 | |||
| 117 | /* Get the Crunch state of a process. */ | ||
| 118 | PTRACE_GETCRUNCHREGS = 25, | ||
| 119 | #define PT_GETCRUNCHREGS PTRACE_GETCRUNCHREGS | ||
| 120 | |||
| 121 | /* Set the Crunch state of a process. */ | ||
| 122 | PTRACE_SETCRUNCHREGS = 26, | ||
| 123 | #define PT_SETCRUNCHREGS PTRACE_SETCRUNCHREGS | ||
| 124 | |||
| 125 | /* Get all VFP registers used by a process. */ | ||
| 126 | PTRACE_GETVFPREGS = 27, | ||
| 127 | #define PT_GETVFPREGS PTRACE_GETVFPREGS | ||
| 128 | |||
| 129 | /* Set all VFP registers used by a process. */ | ||
| 130 | PTRACE_SETVFPREGS = 28, | ||
| 131 | #define PT_SETVFPREGS PTRACE_SETVFPREGS | ||
| 132 | |||
| 133 | /* Get all hardware breakpoint registers. */ | ||
| 134 | PTRACE_GETHBPREGS = 29, | ||
| 135 | #define PT_GETHBPREGS PTRACE_GETHBPREGS | ||
| 136 | |||
| 137 | /* Set all hardware breakpoint registers. */ | ||
| 138 | PTRACE_SETHBPREGS = 30, | ||
| 139 | #define PT_SETHBPREGS PTRACE_SETHBPREGS | ||
| 140 | |||
| 141 | /* Get the ELF fdpic loadmap address. */ | ||
| 142 | PTRACE_GETFDPIC = 31, | ||
| 143 | #define PT_GETFDPIC PTRACE_GETFDPIC | ||
| 144 | |||
| 145 | /* Set ptrace filter options. */ | ||
| 146 | PTRACE_SETOPTIONS = 0x4200, | ||
| 147 | #define PT_SETOPTIONS PTRACE_SETOPTIONS | ||
| 148 | |||
| 149 | /* Get last ptrace message. */ | ||
| 150 | PTRACE_GETEVENTMSG = 0x4201, | ||
| 151 | #define PT_GETEVENTMSG PTRACE_GETEVENTMSG | ||
| 152 | |||
| 153 | /* Get siginfo for process. */ | ||
| 154 | PTRACE_GETSIGINFO = 0x4202, | ||
| 155 | #define PT_GETSIGINFO PTRACE_GETSIGINFO | ||
| 156 | |||
| 157 | /* Set new siginfo for process. */ | ||
| 158 | PTRACE_SETSIGINFO = 0x4203, | ||
| 159 | #define PT_SETSIGINFO PTRACE_SETSIGINFO | ||
| 160 | |||
| 161 | /* Get register content. */ | ||
| 162 | PTRACE_GETREGSET = 0x4204, | ||
| 163 | #define PTRACE_GETREGSET PTRACE_GETREGSET | ||
| 164 | |||
| 165 | /* Set register content. */ | ||
| 166 | PTRACE_SETREGSET = 0x4205, | ||
| 167 | #define PTRACE_SETREGSET PTRACE_SETREGSET | ||
| 168 | |||
| 169 | /* Like PTRACE_ATTACH, but do not force tracee to trap and do not affect | ||
| 170 | signal or group stop state. */ | ||
| 171 | PTRACE_SEIZE = 0x4206, | ||
| 172 | #define PTRACE_SEIZE PTRACE_SEIZE | ||
| 173 | |||
| 174 | /* Trap seized tracee. */ | ||
| 175 | PTRACE_INTERRUPT = 0x4207, | ||
| 176 | #define PTRACE_INTERRUPT PTRACE_INTERRUPT | ||
| 177 | |||
| 178 | /* Wait for next group event. */ | ||
| 179 | PTRACE_LISTEN = 0x4208, | ||
| 180 | #define PTRACE_LISTEN PTRACE_LISTEN | ||
| 181 | |||
| 182 | /* Retrieve siginfo_t structures without removing signals from a queue. */ | ||
| 183 | PTRACE_PEEKSIGINFO = 0x4209, | ||
| 184 | #define PTRACE_PEEKSIGINFO PTRACE_PEEKSIGINFO | ||
| 185 | |||
| 186 | /* Get the mask of blocked signals. */ | ||
| 187 | PTRACE_GETSIGMASK = 0x420a, | ||
| 188 | #define PTRACE_GETSIGMASK PTRACE_GETSIGMASK | ||
| 189 | |||
| 190 | /* Change the mask of blocked signals. */ | ||
| 191 | PTRACE_SETSIGMASK = 0x420b, | ||
| 192 | #define PTRACE_SETSIGMASK PTRACE_SETSIGMASK | ||
| 193 | |||
| 194 | /* Get seccomp BPF filters. */ | ||
| 195 | PTRACE_SECCOMP_GET_FILTER = 0x420c, | ||
| 196 | #define PTRACE_SECCOMP_GET_FILTER PTRACE_SECCOMP_GET_FILTER | ||
| 197 | |||
| 198 | /* Get seccomp BPF filter metadata. */ | ||
| 199 | PTRACE_SECCOMP_GET_METADATA = 0x420d, | ||
| 200 | #define PTRACE_SECCOMP_GET_METADATA PTRACE_SECCOMP_GET_METADATA | ||
| 201 | |||
| 202 | /* Get information about system call. */ | ||
| 203 | PTRACE_GET_SYSCALL_INFO = 0x420e, | ||
| 204 | #define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO | ||
| 205 | |||
| 206 | /* Get rseq configuration information. */ | ||
| 207 | PTRACE_GET_RSEQ_CONFIGURATION = 0x420f, | ||
| 208 | #define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION | ||
| 209 | |||
| 210 | /* Set configuration for syscall user dispatch. */ | ||
| 211 | PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG = 0x4210, | ||
| 212 | #define PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG \ | ||
| 213 | PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG | ||
| 214 | |||
| 215 | /* Get configuration for syscall user dispatch. */ | ||
| 216 | PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG = 0x4211 | ||
| 217 | #define PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG \ | ||
| 218 | PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG | ||
| 219 | }; | ||
| 220 | |||
| 221 | |||
| 222 | #include <bits/ptrace-shared.h> | ||
| 223 | |||
| 224 | __END_DECLS | ||
| 225 | |||
| 226 | #endif /* _SYS_PTRACE_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnu/sys/ucontext.h created+144| ... | @@ -0,0 +1,144 @@ | ||
| 1 | /* Copyright (C) 1998-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | /* System V/ARM ABI compliant context switching support. */ | ||
| 19 | |||
| 20 | #ifndef _SYS_UCONTEXT_H | ||
| 21 | #define _SYS_UCONTEXT_H	1 | ||
| 22 | |||
| 23 | #include <features.h> | ||
| 24 | |||
| 25 | #include <bits/types/sigset_t.h> | ||
| 26 | #include <bits/types/stack_t.h> | ||
| 27 | |||
| 28 | |||
| 29 | #ifdef __USE_MISC | ||
| 30 | # define __ctx(fld) fld | ||
| 31 | #else | ||
| 32 | # define __ctx(fld) __ ## fld | ||
| 33 | #endif | ||
| 34 | |||
| 35 | #ifdef __USE_MISC | ||
| 36 | typedef int greg_t; | ||
| 37 | |||
| 38 | /* Number of general registers. */ | ||
| 39 | # define NGREG	18 | ||
| 40 | |||
| 41 | /* Container for all general registers. */ | ||
| 42 | typedef greg_t gregset_t[NGREG]; | ||
| 43 | |||
| 44 | /* Number of each register is the `gregset_t' array. */ | ||
| 45 | enum | ||
| 46 | { | ||
| 47 | REG_R0 = 0, | ||
| 48 | # define REG_R0	REG_R0 | ||
| 49 | REG_R1 = 1, | ||
| 50 | # define REG_R1	REG_R1 | ||
| 51 | REG_R2 = 2, | ||
| 52 | # define REG_R2	REG_R2 | ||
| 53 | REG_R3 = 3, | ||
| 54 | # define REG_R3	REG_R3 | ||
| 55 | REG_R4 = 4, | ||
| 56 | # define REG_R4	REG_R4 | ||
| 57 | REG_R5 = 5, | ||
| 58 | # define REG_R5	REG_R5 | ||
| 59 | REG_R6 = 6, | ||
| 60 | # define REG_R6	REG_R6 | ||
| 61 | REG_R7 = 7, | ||
| 62 | # define REG_R7	REG_R7 | ||
| 63 | REG_R8 = 8, | ||
| 64 | # define REG_R8	REG_R8 | ||
| 65 | REG_R9 = 9, | ||
| 66 | # define REG_R9	REG_R9 | ||
| 67 | REG_R10 = 10, | ||
| 68 | # define REG_R10	REG_R10 | ||
| 69 | REG_R11 = 11, | ||
| 70 | # define REG_R11	REG_R11 | ||
| 71 | REG_R12 = 12, | ||
| 72 | # define REG_R12	REG_R12 | ||
| 73 | REG_R13 = 13, | ||
| 74 | # define REG_R13	REG_R13 | ||
| 75 | REG_R14 = 14, | ||
| 76 | # define REG_R14	REG_R14 | ||
| 77 | REG_R15 = 15 | ||
| 78 | # define REG_R15	REG_R15 | ||
| 79 | }; | ||
| 80 | |||
| 81 | struct _libc_fpstate | ||
| 82 | { | ||
| 83 | struct | ||
| 84 | { | ||
| 85 | unsigned int sign1:1; | ||
| 86 | unsigned int unused:15; | ||
| 87 | unsigned int sign2:1; | ||
| 88 | unsigned int exponent:14; | ||
| 89 | unsigned int j:1; | ||
| 90 | unsigned int mantissa1:31; | ||
| 91 | unsigned int mantissa0:32; | ||
| 92 | } fpregs[8]; | ||
| 93 | unsigned int fpsr:32; | ||
| 94 | unsigned int fpcr:32; | ||
| 95 | unsigned char ftype[8]; | ||
| 96 | unsigned int init_flag; | ||
| 97 | }; | ||
| 98 | /* Structure to describe FPU registers. */ | ||
| 99 | typedef struct _libc_fpstate fpregset_t; | ||
| 100 | #endif | ||
| 101 | |||
| 102 | /* Context to describe whole processor state. This only describes | ||
| 103 | the core registers; coprocessor registers get saved elsewhere | ||
| 104 | (e.g. in uc_regspace, or somewhere unspecified on the stack | ||
| 105 | during non-RT signal handlers). */ | ||
| 106 | typedef struct | ||
| 107 | { | ||
| 108 | unsigned long int __ctx(trap_no); | ||
| 109 | unsigned long int __ctx(error_code); | ||
| 110 | unsigned long int __ctx(oldmask); | ||
| 111 | unsigned long int __ctx(arm_r0); | ||
| 112 | unsigned long int __ctx(arm_r1); | ||
| 113 | unsigned long int __ctx(arm_r2); | ||
| 114 | unsigned long int __ctx(arm_r3); | ||
| 115 | unsigned long int __ctx(arm_r4); | ||
| 116 | unsigned long int __ctx(arm_r5); | ||
| 117 | unsigned long int __ctx(arm_r6); | ||
| 118 | unsigned long int __ctx(arm_r7); | ||
| 119 | unsigned long int __ctx(arm_r8); | ||
| 120 | unsigned long int __ctx(arm_r9); | ||
| 121 | unsigned long int __ctx(arm_r10); | ||
| 122 | unsigned long int __ctx(arm_fp); | ||
| 123 | unsigned long int __ctx(arm_ip); | ||
| 124 | unsigned long int __ctx(arm_sp); | ||
| 125 | unsigned long int __ctx(arm_lr); | ||
| 126 | unsigned long int __ctx(arm_pc); | ||
| 127 | unsigned long int __ctx(arm_cpsr); | ||
| 128 | unsigned long int __ctx(fault_address); | ||
| 129 | } mcontext_t; | ||
| 130 | |||
| 131 | /* Userlevel context. */ | ||
| 132 | typedef struct ucontext_t | ||
| 133 | { | ||
| 134 | unsigned long __ctx(uc_flags); | ||
| 135 | struct ucontext_t *uc_link; | ||
| 136 | stack_t uc_stack; | ||
| 137 | mcontext_t uc_mcontext; | ||
| 138 | sigset_t uc_sigmask; | ||
| 139 | unsigned long __ctx(uc_regspace)[128] __attribute__((__aligned__(8))); | ||
| 140 | } ucontext_t; | ||
| 141 | |||
| 142 | #undef __ctx | ||
| 143 | |||
| 144 | #endif /* sys/ucontext.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnu/sys/user.h created+71| ... | @@ -0,0 +1,71 @@ | ||
| 1 | /* Copyright (C) 1998-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_USER_H | ||
| 19 | #define _SYS_USER_H	1 | ||
| 20 | |||
| 21 | /* The whole purpose of this file is for GDB and GDB only. Don't read | ||
| 22 | too much into it. Don't use it for anything other than GDB unless | ||
| 23 | you know what you are doing. */ | ||
| 24 | |||
| 25 | struct user_fpregs | ||
| 26 | { | ||
| 27 | struct fp_reg | ||
| 28 | { | ||
| 29 | unsigned int sign1:1; | ||
| 30 | unsigned int unused:15; | ||
| 31 | unsigned int sign2:1; | ||
| 32 | unsigned int exponent:14; | ||
| 33 | unsigned int j:1; | ||
| 34 | unsigned int mantissa1:31; | ||
| 35 | unsigned int mantissa0:32; | ||
| 36 | } fpregs[8]; | ||
| 37 | unsigned int fpsr:32; | ||
| 38 | unsigned int fpcr:32; | ||
| 39 | unsigned char ftype[8]; | ||
| 40 | unsigned int init_flag; | ||
| 41 | }; | ||
| 42 | |||
| 43 | struct user_regs | ||
| 44 | { | ||
| 45 | unsigned long int uregs[18]; | ||
| 46 | }; | ||
| 47 | |||
| 48 | struct user | ||
| 49 | { | ||
| 50 | struct user_regs regs;	/* General registers */ | ||
| 51 | int u_fpvalid;		/* True if math co-processor being used. */ | ||
| 52 | |||
| 53 | unsigned long int u_tsize;	/* Text segment size (pages). */ | ||
| 54 | unsigned long int u_dsize;	/* Data segment size (pages). */ | ||
| 55 | unsigned long int u_ssize;	/* Stack segment size (pages). */ | ||
| 56 | |||
| 57 | unsigned long start_code;	/* Starting virtual address of text. */ | ||
| 58 | unsigned long start_stack;	/* Starting virtual address of stack. */ | ||
| 59 | |||
| 60 | long int signal; 		/* Signal that caused the core dump. */ | ||
| 61 | int reserved;			/* No longer used */ | ||
| 62 | struct user_regs *u_ar0;	/* help gdb to find the general registers. */ | ||
| 63 | |||
| 64 | unsigned long magic;		/* uniquely identify a core file */ | ||
| 65 | char u_comm[32];		/* User command that was responsible */ | ||
| 66 | int u_debugreg[8]; | ||
| 67 | struct user_fpregs u_fp;	/* Floating point registers */ | ||
| 68 | struct user_fpregs *u_fp0;	/* help gdb to find the FP registers. */ | ||
| 69 | }; | ||
| 70 | |||
| 71 | #endif /* sys/user.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnueabi/bits/dl_find_object.h deleted-25| ... | @@ -1,25 +0,0 @@ | ||
| 1 | /* arm definitions for finding objects. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _DLFCN_H | ||
| 20 | # error "Never use <bits/dl_find_object.h> directly; include <dlfcn.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #define DLFO_STRUCT_HAS_EH_DBASE 0 | ||
| 24 | #define DLFO_STRUCT_HAS_EH_COUNT 1 | ||
| 25 | #define DLFO_EH_SEGMENT_TYPE PT_ARM_EXIDX | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnueabi/bits/endianness.h deleted-15| ... | @@ -1,15 +0,0 @@ | ||
| 1 | #ifndef _BITS_ENDIANNESS_H | ||
| 2 | #define _BITS_ENDIANNESS_H 1 | ||
| 3 | |||
| 4 | #ifndef _BITS_ENDIAN_H | ||
| 5 | # error "Never use <bits/endianness.h> directly; include <endian.h> instead." | ||
| 6 | #endif | ||
| 7 | |||
| 8 | /* ARM has selectable endianness. */ | ||
| 9 | #ifdef __ARMEB__ | ||
| 10 | #define __BYTE_ORDER __BIG_ENDIAN | ||
| 11 | #else | ||
| 12 | #define __BYTE_ORDER __LITTLE_ENDIAN | ||
| 13 | #endif | ||
| 14 | |||
| 15 | #endif /* bits/endianness.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnueabi/bits/fcntl.h deleted-54| ... | @@ -1,54 +0,0 @@ | ||
| 1 | /* O_*, F_*, FD_* bit values for Linux. | ||
| 2 | Copyright (C) 1995-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef	_FCNTL_H | ||
| 20 | # error "Never use <bits/fcntl.h> directly; include <fcntl.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #define __O_DIRECTORY	 040000	/* Must be a directory.	 */ | ||
| 24 | #define __O_NOFOLLOW	0100000	/* Do not follow links.	 */ | ||
| 25 | #define __O_DIRECT	0200000	/* Direct disk access.	*/ | ||
| 26 | #define __O_LARGEFILE	0400000 | ||
| 27 | |||
| 28 | struct flock | ||
| 29 | { | ||
| 30 | short int l_type;	/* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK.	*/ | ||
| 31 | short int l_whence;	/* Where `l_start' is relative to (like `lseek'). */ | ||
| 32 | #ifndef __USE_FILE_OFFSET64 | ||
| 33 | __off_t l_start;	/* Offset where the lock begins. */ | ||
| 34 | __off_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 35 | #else | ||
| 36 | __off64_t l_start;	/* Offset where the lock begins. */ | ||
| 37 | __off64_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 38 | #endif | ||
| 39 | __pid_t l_pid;	/* Process holding the lock. */ | ||
| 40 | }; | ||
| 41 | |||
| 42 | #ifdef __USE_LARGEFILE64 | ||
| 43 | struct flock64 | ||
| 44 | { | ||
| 45 | short int l_type;	/* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK.	*/ | ||
| 46 | short int l_whence;	/* Where `l_start' is relative to (like `lseek'). */ | ||
| 47 | __off64_t l_start;	/* Offset where the lock begins. */ | ||
| 48 | __off64_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 49 | __pid_t l_pid;	/* Process holding the lock. */ | ||
| 50 | }; | ||
| 51 | #endif | ||
| 52 | |||
| 53 | /* Include generic Linux declarations. */ | ||
| 54 | #include <bits/fcntl-linux.h> | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnueabi/bits/fenv.h deleted-90| ... | @@ -1,90 +0,0 @@ | ||
| 1 | /* Copyright (C) 2004-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _FENV_H | ||
| 19 | # error "Never use <bits/fenv.h> directly; include <fenv.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Define bits representing exceptions in the FPU status word. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | FE_INVALID = | ||
| 26 | #define FE_INVALID	1 | ||
| 27 | FE_INVALID, | ||
| 28 | FE_DIVBYZERO = | ||
| 29 | #define FE_DIVBYZERO	2 | ||
| 30 | FE_DIVBYZERO, | ||
| 31 | FE_OVERFLOW = | ||
| 32 | #define FE_OVERFLOW	4 | ||
| 33 | FE_OVERFLOW, | ||
| 34 | FE_UNDERFLOW = | ||
| 35 | #define FE_UNDERFLOW	8 | ||
| 36 | FE_UNDERFLOW, | ||
| 37 | FE_INEXACT = | ||
| 38 | #define FE_INEXACT	16 | ||
| 39 | FE_INEXACT, | ||
| 40 | }; | ||
| 41 | |||
| 42 | /* Amount to shift by to convert an exception to a mask bit. */ | ||
| 43 | #define FE_EXCEPT_SHIFT	8 | ||
| 44 | |||
| 45 | /* All supported exceptions. */ | ||
| 46 | #define FE_ALL_EXCEPT	\ | ||
| 47 | 	(FE_INVALID | FE_DIVBYZERO | FE_OVERFLOW | FE_UNDERFLOW | FE_INEXACT) | ||
| 48 | |||
| 49 | /* VFP supports all of the four defined rounding modes. */ | ||
| 50 | enum | ||
| 51 | { | ||
| 52 | FE_TONEAREST = | ||
| 53 | #define FE_TONEAREST	0 | ||
| 54 | FE_TONEAREST, | ||
| 55 | FE_UPWARD = | ||
| 56 | #define FE_UPWARD	0x400000 | ||
| 57 | FE_UPWARD, | ||
| 58 | FE_DOWNWARD = | ||
| 59 | #define FE_DOWNWARD	0x800000 | ||
| 60 | FE_DOWNWARD, | ||
| 61 | FE_TOWARDZERO = | ||
| 62 | #define FE_TOWARDZERO	0xc00000 | ||
| 63 | FE_TOWARDZERO | ||
| 64 | }; | ||
| 65 | |||
| 66 | /* Type representing exception flags. */ | ||
| 67 | typedef unsigned int fexcept_t; | ||
| 68 | |||
| 69 | /* Type representing floating-point environment. */ | ||
| 70 | typedef struct | ||
| 71 | { | ||
| 72 | unsigned int __cw; | ||
| 73 | } | ||
| 74 | fenv_t; | ||
| 75 | |||
| 76 | /* If the default argument is used we use this value. */ | ||
| 77 | #define FE_DFL_ENV	((const fenv_t *) -1l) | ||
| 78 | |||
| 79 | #ifdef __USE_GNU | ||
| 80 | /* Floating-point environment where none of the exceptions are masked. */ | ||
| 81 | # define FE_NOMASK_ENV ((const fenv_t *) -2) | ||
| 82 | #endif | ||
| 83 | |||
| 84 | #if __GLIBC_USE (IEC_60559_BFP_EXT_C23) | ||
| 85 | /* Type representing floating-point control modes. */ | ||
| 86 | typedef unsigned int femode_t; | ||
| 87 | |||
| 88 | /* Default floating-point control modes. */ | ||
| 89 | # define FE_DFL_MODE	((const femode_t *) -1L) | ||
| 90 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnueabi/bits/floatn.h deleted-52| ... | @@ -1,52 +0,0 @@ | ||
| 1 | /* Macros to control TS 18661-3 glibc features. | ||
| 2 | Copyright (C) 2017-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* Defined to 1 if the current compiler invocation provides a | ||
| 20 | floating-point type with the IEEE 754 binary128 format, and this glibc | ||
| 21 | includes corresponding *f128 interfaces for it. */ | ||
| 22 | #define __HAVE_FLOAT128 0 | ||
| 23 | |||
| 24 | /* Defined to 1 if __HAVE_FLOAT128 is 1 and the type is ABI-distinct | ||
| 25 | from the default float, double and long double types in this glibc. */ | ||
| 26 | #define __HAVE_DISTINCT_FLOAT128 0 | ||
| 27 | |||
| 28 | /* Defined to 1 if the current compiler invocation provides a | ||
| 29 | floating-point type with the right format for _Float64x, and this | ||
| 30 | glibc includes corresponding *f64x interfaces for it. */ | ||
| 31 | #define __HAVE_FLOAT64X 0 | ||
| 32 | |||
| 33 | /* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format | ||
| 34 | of long double. Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has | ||
| 35 | the format of _Float128, which must be different from that of long | ||
| 36 | double. */ | ||
| 37 | #define __HAVE_FLOAT64X_LONG_DOUBLE 0 | ||
| 38 | |||
| 39 | #ifndef __ASSEMBLER__ | ||
| 40 | |||
| 41 | /* Defined to concatenate the literal suffix to be used with _Float128 | ||
| 42 | types, if __HAVE_FLOAT128 is 1. | ||
| 43 | E.g.: #define __f128(x) x##f128. */ | ||
| 44 | # undef __f128 | ||
| 45 | |||
| 46 | /* Defined to a complex binary128 type if __HAVE_FLOAT128 is 1. | ||
| 47 | E.g.: #define __CFLOAT128 _Complex _Float128. */ | ||
| 48 | # undef __CFLOAT128 | ||
| 49 | |||
| 50 | #endif /* !__ASSEMBLER__. */ | ||
| 51 | |||
| 52 | #include <bits/floatn-common.h> | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnueabi/bits/hwcap.h deleted-59| ... | @@ -1,59 +0,0 @@ | ||
| 1 | /* Defines for bits in AT_HWCAP. ARM Linux version. | ||
| 2 | Copyright (C) 2012-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #if !defined (_SYS_AUXV_H) && !defined (_LINUX_ARM_SYSDEP_H) | ||
| 20 | # error "Never include <bits/hwcap.h> directly; use <sys/auxv.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* The following must match the kernel's <asm/hwcap.h>. */ | ||
| 24 | #define HWCAP_ARM_SWP		1 | ||
| 25 | #define HWCAP_ARM_HALF		2 | ||
| 26 | #define HWCAP_ARM_THUMB		4 | ||
| 27 | #define HWCAP_ARM_26BIT		8 | ||
| 28 | #define HWCAP_ARM_FAST_MULT	16 | ||
| 29 | #define HWCAP_ARM_FPA		32 | ||
| 30 | #define HWCAP_ARM_VFP		64 | ||
| 31 | #define HWCAP_ARM_EDSP		128 | ||
| 32 | #define HWCAP_ARM_JAVA		256 | ||
| 33 | #define HWCAP_ARM_IWMMXT	512 | ||
| 34 | #define HWCAP_ARM_CRUNCH	1024 | ||
| 35 | #define HWCAP_ARM_THUMBEE	2048 | ||
| 36 | #define HWCAP_ARM_NEON		4096 | ||
| 37 | #define HWCAP_ARM_VFPv3		8192 | ||
| 38 | #define HWCAP_ARM_VFPv3D16	16384 | ||
| 39 | #define HWCAP_ARM_TLS		32768 | ||
| 40 | #define HWCAP_ARM_VFPv4		65536 | ||
| 41 | #define HWCAP_ARM_IDIVA		131072 | ||
| 42 | #define HWCAP_ARM_IDIVT		262144 | ||
| 43 | #define HWCAP_ARM_VFPD32	524288 | ||
| 44 | #define HWCAP_ARM_LPAE		1048576 | ||
| 45 | #define HWCAP_ARM_EVTSTRM	2097152 | ||
| 46 | #define HWCAP_FPHP		4194304 | ||
| 47 | #define HWCAP_ASIMDHP		8388608 | ||
| 48 | #define HWCAP_ASIMDDP		16777216 | ||
| 49 | #define HWCAP_ASIMDFHM		33554432 | ||
| 50 | #define HWCAP_ASIMDBF16		67108864 | ||
| 51 | #define HWCAP_I8MM		134217728 | ||
| 52 | |||
| 53 | #define HWCAP2_AES		1 | ||
| 54 | #define HWCAP2_PMULL		2 | ||
| 55 | #define HWCAP2_SHA1		4 | ||
| 56 | #define HWCAP2_SHA2		8 | ||
| 57 | #define HWCAP2_CRC32		16 | ||
| 58 | #define HWCAP2_SB		32 | ||
| 59 | #define HWCAP2_SSBS		64 | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnueabi/bits/link.h deleted-65| ... | @@ -1,65 +0,0 @@ | ||
| 1 | /* Copyright (C) 2005-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_LINK_H | ||
| 19 | # error "Never include <bits/link.h> directly; use <link.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | |||
| 23 | /* Registers for entry into PLT on ARM. */ | ||
| 24 | typedef struct La_arm_regs | ||
| 25 | { | ||
| 26 | uint32_t lr_reg[4]; | ||
| 27 | uint32_t lr_sp; | ||
| 28 | uint32_t lr_lr; | ||
| 29 | /* Coprocessor registers used for argument passing. The data | ||
| 30 | stored here depends on the coprocessors available in the | ||
| 31 | system which are used for function calls in the current ABI. | ||
| 32 | VFP uses eight 64-bit registers, and iWMMXt uses ten. */ | ||
| 33 | uint32_t lr_coproc[42]; | ||
| 34 | } La_arm_regs; | ||
| 35 | |||
| 36 | /* Return values for calls from PLT on ARM. */ | ||
| 37 | typedef struct La_arm_retval | ||
| 38 | { | ||
| 39 | /* Up to four integer registers can be used for a return value in | ||
| 40 | some ABIs (APCS complex long double). */ | ||
| 41 | uint32_t lrv_reg[4]; | ||
| 42 | |||
| 43 | /* Any coprocessor registers which might be used to return values | ||
| 44 | in the current ABI. */ | ||
| 45 | uint32_t lrv_coproc[12]; | ||
| 46 | } La_arm_retval; | ||
| 47 | |||
| 48 | |||
| 49 | __BEGIN_DECLS | ||
| 50 | |||
| 51 | extern Elf32_Addr la_arm_gnu_pltenter (Elf32_Sym *__sym, unsigned int __ndx, | ||
| 52 | 				 uintptr_t *__refcook, | ||
| 53 | 				 uintptr_t *__defcook, | ||
| 54 | 				 La_arm_regs *__regs, | ||
| 55 | 				 unsigned int *__flags, | ||
| 56 | 				 const char *__symname, | ||
| 57 | 				 long int *__framesizep); | ||
| 58 | extern unsigned int la_arm_gnu_pltexit (Elf32_Sym *__sym, unsigned int __ndx, | ||
| 59 | 					uintptr_t *__refcook, | ||
| 60 | 					uintptr_t *__defcook, | ||
| 61 | 					const La_arm_regs *__inregs, | ||
| 62 | 					La_arm_retval *__outregs, | ||
| 63 | 					const char *__symname); | ||
| 64 | |||
| 65 | __END_DECLS | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnueabi/bits/long-double.h deleted-53| ... | @@ -1,53 +0,0 @@ | ||
| 1 | /* Properties of long double type. | ||
| 2 | Copyright (C) 2016-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* This header is included by <sys/cdefs.h>. | ||
| 20 | |||
| 21 | If long double is ABI-compatible with double, it should define | ||
| 22 | __NO_LONG_DOUBLE_MATH to 1; otherwise, it should leave | ||
| 23 | __NO_LONG_DOUBLE_MATH undefined. | ||
| 24 | |||
| 25 | If this build of the GNU C Library supports both long double | ||
| 26 | ABI-compatible with double and some other long double format not | ||
| 27 | ABI-compatible with double, it should define | ||
| 28 | __LONG_DOUBLE_MATH_OPTIONAL to 1; otherwise, it should leave | ||
| 29 | __LONG_DOUBLE_MATH_OPTIONAL undefined. | ||
| 30 | |||
| 31 | If __NO_LONG_DOUBLE_MATH is already defined, this header must not | ||
| 32 | define anything; this is needed to work with the definition of | ||
| 33 | __NO_LONG_DOUBLE_MATH in nldbl-compat.h. */ | ||
| 34 | |||
| 35 | /* In the default version of this header, long double is | ||
| 36 | ABI-compatible with double. */ | ||
| 37 | #ifndef __NO_LONG_DOUBLE_MATH | ||
| 38 | # define __NO_LONG_DOUBLE_MATH	1 | ||
| 39 | #endif | ||
| 40 | |||
| 41 | /* The macro __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI is used to determine the | ||
| 42 | choice of the underlying ABI of long double. It will always assume | ||
| 43 | a constant value for each translation unit. | ||
| 44 | |||
| 45 | If the value is non-zero, any API which is parameterized by the long | ||
| 46 | double type (i.e the scanf/printf family of functions or the explicitly | ||
| 47 | parameterized math.h functions) will be redirected to a compatible | ||
| 48 | implementation using _Float128 ABI via symbols suffixed with ieee128. | ||
| 49 | |||
| 50 | The mechanism this macro uses to acquire may be a function | ||
| 51 | of architecture, or target specific options used to invoke the | ||
| 52 | compiler. */ | ||
| 53 | #define __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI 0 | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnueabi/bits/procfs-id.h deleted-25| ... | @@ -1,25 +0,0 @@ | ||
| 1 | /* Types of pr_uid and pr_gid in struct elf_prpsinfo. Arm version. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library; if not, see | ||
| 18 | <https://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifndef _SYS_PROCFS_H | ||
| 21 | # error "Never include <bits/procfs-id.h> directly; use <sys/procfs.h> instead." | ||
| 22 | #endif | ||
| 23 | |||
| 24 | typedef unsigned short int __pr_uid_t; | ||
| 25 | typedef unsigned short int __pr_gid_t; | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnueabi/bits/procfs.h deleted-34| ... | @@ -1,34 +0,0 @@ | ||
| 1 | /* Types for registers for sys/procfs.h. Arm version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_PROCFS_H | ||
| 20 | # error "Never include <bits/procfs.h> directly; use <sys/procfs.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Type for a general-purpose register. */ | ||
| 24 | typedef unsigned long elf_greg_t; | ||
| 25 | |||
| 26 | /* And the whole bunch of them. We could have used `struct | ||
| 27 | user_regs' directly in the typedef, but tradition says that | ||
| 28 | the register set is an array, which does have some peculiar | ||
| 29 | semantics, so leave it that way. */ | ||
| 30 | #define ELF_NGREG (sizeof (struct user_regs) / sizeof (elf_greg_t)) | ||
| 31 | typedef elf_greg_t elf_gregset_t[ELF_NGREG]; | ||
| 32 | |||
| 33 | /* Register set for the floating-point registers. */ | ||
| 34 | typedef struct user_fpregs elf_fpregset_t; | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnueabi/bits/rseq.h deleted-83| ... | @@ -1,83 +0,0 @@ | ||
| 1 | /* Restartable Sequences Linux arm architecture header. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_RSEQ_H | ||
| 19 | # error "Never use <bits/rseq.h> directly; include <sys/rseq.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* | ||
| 23 | RSEQ_SIG is a signature required before each abort handler code. | ||
| 24 | |||
| 25 | It is a 32-bit value that maps to actual architecture code compiled | ||
| 26 | into applications and libraries. It needs to be defined for each | ||
| 27 | architecture. When choosing this value, it needs to be taken into | ||
| 28 | account that generating invalid instructions may have ill effects on | ||
| 29 | tools like objdump, and may also have impact on the CPU speculative | ||
| 30 | execution efficiency in some cases. | ||
| 31 | |||
| 32 | - ARM little endian | ||
| 33 | |||
| 34 | RSEQ_SIG uses the udf A32 instruction with an uncommon immediate operand | ||
| 35 | value 0x5de3. This traps if user-space reaches this instruction by mistake, | ||
| 36 | and the uncommon operand ensures the kernel does not move the instruction | ||
| 37 | pointer to attacker-controlled code on rseq abort. | ||
| 38 | |||
| 39 | The instruction pattern in the A32 instruction set is: | ||
| 40 | |||
| 41 | e7f5def3 udf #24035 ; 0x5de3 | ||
| 42 | |||
| 43 | This translates to the following instruction pattern in the T16 instruction | ||
| 44 | set: | ||
| 45 | |||
| 46 | little endian: | ||
| 47 | def3 udf #243 ; 0xf3 | ||
| 48 | e7f5 b.n <7f5> | ||
| 49 | |||
| 50 | - ARMv6+ big endian (BE8): | ||
| 51 | |||
| 52 | ARMv6+ -mbig-endian generates mixed endianness code vs data: little-endian | ||
| 53 | code and big-endian data. The data value of the signature needs to have its | ||
| 54 | byte order reversed to generate the trap instruction: | ||
| 55 | |||
| 56 | Data: 0xf3def5e7 | ||
| 57 | |||
| 58 | Translates to this A32 instruction pattern: | ||
| 59 | |||
| 60 | e7f5def3 udf #24035 ; 0x5de3 | ||
| 61 | |||
| 62 | Translates to this T16 instruction pattern: | ||
| 63 | |||
| 64 | def3 udf #243 ; 0xf3 | ||
| 65 | e7f5 b.n <7f5> | ||
| 66 | |||
| 67 | - Prior to ARMv6 big endian (BE32): | ||
| 68 | |||
| 69 | Prior to ARMv6, -mbig-endian generates big-endian code and data | ||
| 70 | (which match), so the endianness of the data representation of the | ||
| 71 | signature should not be reversed. However, the choice between BE32 | ||
| 72 | and BE8 is done by the linker, so we cannot know whether code and | ||
| 73 | data endianness will be mixed before the linker is invoked. So rather | ||
| 74 | than try to play tricks with the linker, the rseq signature is simply | ||
| 75 | data (not a trap instruction) prior to ARMv6 on big endian. This is | ||
| 76 | why the signature is expressed as data (.word) rather than as | ||
| 77 | instruction (.inst) in assembler. */ | ||
| 78 | |||
| 79 | #ifdef __ARMEB__ | ||
| 80 | # define RSEQ_SIG 0xf3def5e7 /* udf #24035 ; 0x5de3 (ARMv6+) */ | ||
| 81 | #else | ||
| 82 | # define RSEQ_SIG 0xe7f5def3 /* udf #24035 ; 0x5de3 */ | ||
| 83 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnueabi/bits/setjmp.h deleted-36| ... | @@ -1,36 +0,0 @@ | ||
| 1 | /* Copyright (C) 2004-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | /* Define the machine-dependent type `jmp_buf'. ARM EABI version. */ | ||
| 19 | |||
| 20 | #ifndef _BITS_SETJMP_H | ||
| 21 | #define _BITS_SETJMP_H 1 | ||
| 22 | |||
| 23 | #if !defined _SETJMP_H && !defined _PTHREAD_H | ||
| 24 | # error "Never include <bits/setjmp.h> directly; use <setjmp.h> instead." | ||
| 25 | #endif | ||
| 26 | |||
| 27 | #ifndef __ASSEMBLER__ | ||
| 28 | /* The exact set of registers saved may depend on the particular core | ||
| 29 | in use, as some coprocessor registers may need to be saved. The C | ||
| 30 | Library ABI requires that the buffer be 8-byte aligned, and | ||
| 31 | recommends that the buffer contain 64 words. The first 26 words | ||
| 32 | are occupied by sp, lr, v1-v6, sl, fp, and d8-d15. */ | ||
| 33 | typedef int __jmp_buf[64] __attribute__((__aligned__ (8))); | ||
| 34 | #endif | ||
| 35 | |||
| 36 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnueabi/bits/shmlba.h deleted-29| ... | @@ -1,29 +0,0 @@ | ||
| 1 | /* Define SHMLBA. ARM version. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SHM_H | ||
| 20 | # error "Never use <bits/shmlba.h> directly; include <sys/shm.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | __BEGIN_DECLS | ||
| 24 | |||
| 25 | /* Segment low boundary address multiple. */ | ||
| 26 | #define SHMLBA		(__getpagesize () << 2) | ||
| 27 | extern int __getpagesize (void) __THROW __attribute__ ((__const__)); | ||
| 28 | |||
| 29 | __END_DECLS | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnueabi/bits/struct_stat.h deleted-139| ... | @@ -1,139 +0,0 @@ | ||
| 1 | /* Definition for struct stat. Linux/arm version. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #if !defined _SYS_STAT_H && !defined _FCNTL_H | ||
| 20 | # error "Never include <bits/struct_stat.h> directly; use <sys/stat.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef _BITS_STRUCT_STAT_H | ||
| 24 | #define _BITS_STRUCT_STAT_H	1 | ||
| 25 | |||
| 26 | #include <bits/endian.h> | ||
| 27 | #include <bits/wordsize.h> | ||
| 28 | |||
| 29 | struct stat | ||
| 30 | { | ||
| 31 | #ifdef __USE_TIME64_REDIRECTS | ||
| 32 | # include <bits/struct_stat_time64_helper.h> | ||
| 33 | #else | ||
| 34 | __dev_t st_dev;			/* Device. */ | ||
| 35 | unsigned short int __pad1; | ||
| 36 | # ifndef __USE_FILE_OFFSET64 | ||
| 37 | __ino_t st_ino;			/* File serial number.	*/ | ||
| 38 | # else | ||
| 39 | __ino_t __st_ino;			/* 32bit file serial number.	*/ | ||
| 40 | # endif | ||
| 41 | __mode_t st_mode;			/* File mode. */ | ||
| 42 | __nlink_t st_nlink;			/* Link count. */ | ||
| 43 | __uid_t st_uid;			/* User ID of the file's owner.	*/ | ||
| 44 | __gid_t st_gid;			/* Group ID of the file's group.*/ | ||
| 45 | __dev_t st_rdev;			/* Device number, if device. */ | ||
| 46 | unsigned short int __pad2; | ||
| 47 | # ifndef __USE_FILE_OFFSET64 | ||
| 48 | __off_t st_size;			/* Size of file, in bytes. */ | ||
| 49 | # else | ||
| 50 | __off64_t st_size;			/* Size of file, in bytes. */ | ||
| 51 | # endif | ||
| 52 | __blksize_t st_blksize;		/* Optimal block size for I/O. */ | ||
| 53 | |||
| 54 | # ifndef __USE_FILE_OFFSET64 | ||
| 55 | __blkcnt_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 56 | # else | ||
| 57 | __blkcnt64_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 58 | # endif | ||
| 59 | # ifdef __USE_XOPEN2K8 | ||
| 60 | /* Nanosecond resolution timestamps are stored in a format | ||
| 61 | equivalent to 'struct timespec'. This is the type used | ||
| 62 | whenever possible but the Unix namespace rules do not allow the | ||
| 63 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 64 | Therefore we have to handle the use of this header in strictly | ||
| 65 | standard-compliant sources special. */ | ||
| 66 | struct timespec st_atim;		/* Time of last access. */ | ||
| 67 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 68 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 69 | # define st_atime st_atim.tv_sec	/* Backward compatibility. */ | ||
| 70 | # define st_mtime st_mtim.tv_sec | ||
| 71 | # define st_ctime st_ctim.tv_sec | ||
| 72 | # else | ||
| 73 | __time_t st_atime;			/* Time of last access. */ | ||
| 74 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 75 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 76 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 77 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 78 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 79 | # endif | ||
| 80 | # ifndef __USE_FILE_OFFSET64 | ||
| 81 | unsigned long int __glibc_reserved4; | ||
| 82 | unsigned long int __glibc_reserved5; | ||
| 83 | # else | ||
| 84 | __ino64_t st_ino;			/* File serial number.	*/ | ||
| 85 | # endif | ||
| 86 | #endif /* __USE_TIME64_REDIRECTS */ | ||
| 87 | }; | ||
| 88 | |||
| 89 | #ifdef __USE_LARGEFILE64 | ||
| 90 | struct stat64 | ||
| 91 | { | ||
| 92 | # ifdef __USE_TIME64_REDIRECTS | ||
| 93 | # include <bits/struct_stat_time64_helper.h> | ||
| 94 | # else | ||
| 95 | __dev_t st_dev;			/* Device. */ | ||
| 96 | unsigned int __pad1; | ||
| 97 | |||
| 98 | __ino_t __st_ino;			/* 32bit file serial number.	*/ | ||
| 99 | __mode_t st_mode;			/* File mode. */ | ||
| 100 | __nlink_t st_nlink;			/* Link count. */ | ||
| 101 | __uid_t st_uid;			/* User ID of the file's owner.	*/ | ||
| 102 | __gid_t st_gid;			/* Group ID of the file's group.*/ | ||
| 103 | __dev_t st_rdev;			/* Device number, if device. */ | ||
| 104 | unsigned int __pad2; | ||
| 105 | __off64_t st_size;			/* Size of file, in bytes. */ | ||
| 106 | __blksize_t st_blksize;		/* Optimal block size for I/O. */ | ||
| 107 | |||
| 108 | __blkcnt64_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 109 | # ifdef __USE_XOPEN2K8 | ||
| 110 | /* Nanosecond resolution timestamps are stored in a format | ||
| 111 | equivalent to 'struct timespec'. This is the type used | ||
| 112 | whenever possible but the Unix namespace rules do not allow the | ||
| 113 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 114 | Therefore we have to handle the use of this header in strictly | ||
| 115 | standard-compliant sources special. */ | ||
| 116 | struct timespec st_atim;		/* Time of last access. */ | ||
| 117 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 118 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 119 | # else | ||
| 120 | __time_t st_atime;			/* Time of last access. */ | ||
| 121 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 122 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 123 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 124 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 125 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 126 | # endif | ||
| 127 | __ino64_t st_ino;			/* File serial number.		*/ | ||
| 128 | # endif /* __USE_TIME64_REDIRECTS */ | ||
| 129 | }; | ||
| 130 | #endif | ||
| 131 | |||
| 132 | /* Tell code we have these members. */ | ||
| 133 | #define	_STATBUF_ST_BLKSIZE | ||
| 134 | #define _STATBUF_ST_RDEV | ||
| 135 | /* Nanosecond resolution time values are supported. */ | ||
| 136 | #define _STATBUF_ST_NSEC | ||
| 137 | |||
| 138 | |||
| 139 | #endif /* _BITS_STRUCT_STAT_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnueabi/bits/timesize.h deleted-20| ... | @@ -1,20 +0,0 @@ | ||
| 1 | /* Bit size of the time_t type at glibc build time, Linux/ARM. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* Size in bits of the 'time_t' type of the default ABI. */ | ||
| 20 | #define __TIMESIZE	32 | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnueabi/bits/typesizes.h deleted-74| ... | @@ -1,74 +0,0 @@ | ||
| 1 | /* bits/typesizes.h -- underlying types for *_t. ARM version. | ||
| 2 | Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_TYPES_H | ||
| 20 | # error "Never include <bits/typesizes.h> directly; use <sys/types.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef	_BITS_TYPESIZES_H | ||
| 24 | #define	_BITS_TYPESIZES_H	1 | ||
| 25 | |||
| 26 | /* See <bits/types.h> for the meaning of these macros. This file exists so | ||
| 27 | that <bits/types.h> need not vary across different GNU platforms. */ | ||
| 28 | |||
| 29 | #define __DEV_T_TYPE		__UQUAD_TYPE | ||
| 30 | #define __UID_T_TYPE		__U32_TYPE | ||
| 31 | #define __GID_T_TYPE		__U32_TYPE | ||
| 32 | #define __INO_T_TYPE		__ULONGWORD_TYPE | ||
| 33 | #define __INO64_T_TYPE		__UQUAD_TYPE | ||
| 34 | #define __MODE_T_TYPE		__U32_TYPE | ||
| 35 | #define __NLINK_T_TYPE		__UWORD_TYPE | ||
| 36 | #define __OFF_T_TYPE		__SLONGWORD_TYPE | ||
| 37 | #define __OFF64_T_TYPE		__SQUAD_TYPE | ||
| 38 | #define __PID_T_TYPE		__S32_TYPE | ||
| 39 | #define __RLIM_T_TYPE		__ULONGWORD_TYPE | ||
| 40 | #define __RLIM64_T_TYPE		__UQUAD_TYPE | ||
| 41 | #define	__BLKCNT_T_TYPE		__SLONGWORD_TYPE | ||
| 42 | #define	__BLKCNT64_T_TYPE	__SQUAD_TYPE | ||
| 43 | #define	__FSBLKCNT_T_TYPE	__ULONGWORD_TYPE | ||
| 44 | #define	__FSBLKCNT64_T_TYPE	__UQUAD_TYPE | ||
| 45 | #define	__FSFILCNT_T_TYPE	__ULONGWORD_TYPE | ||
| 46 | #define	__FSFILCNT64_T_TYPE	__UQUAD_TYPE | ||
| 47 | #define	__FSWORD_T_TYPE		__SWORD_TYPE | ||
| 48 | #define	__ID_T_TYPE		__U32_TYPE | ||
| 49 | #define __CLOCK_T_TYPE		__SLONGWORD_TYPE | ||
| 50 | #define __TIME_T_TYPE		__SLONGWORD_TYPE | ||
| 51 | #define __USECONDS_T_TYPE	__U32_TYPE | ||
| 52 | #define __SUSECONDS_T_TYPE	__SLONGWORD_TYPE | ||
| 53 | #define __SUSECONDS64_T_TYPE	__SQUAD_TYPE | ||
| 54 | #define __DADDR_T_TYPE		__S32_TYPE | ||
| 55 | #define __KEY_T_TYPE		__S32_TYPE | ||
| 56 | #define __CLOCKID_T_TYPE	__S32_TYPE | ||
| 57 | #define __TIMER_T_TYPE		void * | ||
| 58 | #define __BLKSIZE_T_TYPE	__SLONGWORD_TYPE | ||
| 59 | #define __FSID_T_TYPE		struct { int __val[2]; } | ||
| 60 | #define __SSIZE_T_TYPE		__SWORD_TYPE | ||
| 61 | #define __SYSCALL_SLONG_TYPE	__SLONGWORD_TYPE | ||
| 62 | #define __SYSCALL_ULONG_TYPE	__ULONGWORD_TYPE | ||
| 63 | #define __CPU_MASK_TYPE 	__ULONGWORD_TYPE | ||
| 64 | |||
| 65 | #define __RLIM_T_MATCHES_RLIM64_T		0 | ||
| 66 | #define __STATFS_MATCHES_STATFS64		0 | ||
| 67 | /* And for getitimer, setitimer and rusage */ | ||
| 68 | #define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64	0 | ||
| 69 | |||
| 70 | /* Number of descriptors that can fit in an `fd_set'. */ | ||
| 71 | #define	__FD_SETSIZE		1024 | ||
| 72 | |||
| 73 | |||
| 74 | #endif /* bits/typesizes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnueabi/bits/wordsize.h deleted-21| ... | @@ -1,21 +0,0 @@ | ||
| 1 | /* Copyright (C) 1999-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #define __WORDSIZE			32 | ||
| 19 | #define __WORDSIZE_TIME64_COMPAT32	1 | ||
| 20 | #define __WORDSIZE32_SIZE_ULONG		0 | ||
| 21 | #define __WORDSIZE32_PTRDIFF_LONG	0 | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnueabi/fpu_control.h deleted-75| ... | @@ -1,75 +0,0 @@ | ||
| 1 | /* FPU control word definitions. ARM VFP version. | ||
| 2 | Copyright (C) 2004-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _FPU_CONTROL_H | ||
| 20 | #define _FPU_CONTROL_H | ||
| 21 | |||
| 22 | #if !(defined(_LIBC) && !defined(_LIBC_TEST)) && defined(__SOFTFP__) | ||
| 23 | |||
| 24 | #define _FPU_RESERVED 0xffffffff | ||
| 25 | #define _FPU_DEFAULT 0x00000000 | ||
| 26 | typedef unsigned int fpu_control_t; | ||
| 27 | #define _FPU_GETCW(cw) (cw) = 0 | ||
| 28 | #define _FPU_SETCW(cw) (void) (cw) | ||
| 29 | extern fpu_control_t __fpu_control; | ||
| 30 | |||
| 31 | #else | ||
| 32 | |||
| 33 | /* masking of interrupts */ | ||
| 34 | #define _FPU_MASK_IM	0x00000100	/* invalid operation */ | ||
| 35 | #define _FPU_MASK_ZM	0x00000200	/* divide by zero */ | ||
| 36 | #define _FPU_MASK_OM	0x00000400	/* overflow */ | ||
| 37 | #define _FPU_MASK_UM	0x00000800	/* underflow */ | ||
| 38 | #define _FPU_MASK_PM	0x00001000	/* inexact */ | ||
| 39 | |||
| 40 | #define _FPU_MASK_NZCV	0xf0000000	/* NZCV flags */ | ||
| 41 | #define _FPU_MASK_RM	0x00c00000	/* rounding mode */ | ||
| 42 | #define _FPU_MASK_EXCEPT 0x00001f1f	/* all exception flags */ | ||
| 43 | |||
| 44 | /* Some bits in the FPSCR are not yet defined. They must be preserved when | ||
| 45 | modifying the contents. */ | ||
| 46 | #define _FPU_RESERVED	0x00086060 | ||
| 47 | #define _FPU_DEFAULT 0x00000000 | ||
| 48 | |||
| 49 | /* Default + exceptions enabled. */ | ||
| 50 | #define _FPU_IEEE	(_FPU_DEFAULT | 0x00001f00) | ||
| 51 | |||
| 52 | /* Type of the control word. */ | ||
| 53 | typedef unsigned int fpu_control_t; | ||
| 54 | |||
| 55 | /* Macros for accessing the hardware control word. */ | ||
| 56 | #ifdef __SOFTFP__ | ||
| 57 | /* This is fmrx %0, fpscr. */ | ||
| 58 | # define _FPU_GETCW(cw) \ | ||
| 59 | __asm__ __volatile__ ("mrc p10, 7, %0, cr1, cr0, 0" : "=r" (cw)) | ||
| 60 | /* This is fmxr fpscr, %0. */ | ||
| 61 | # define _FPU_SETCW(cw) \ | ||
| 62 | __asm__ __volatile__ ("mcr p10, 7, %0, cr1, cr0, 0" : : "r" (cw)) | ||
| 63 | #else | ||
| 64 | # define _FPU_GETCW(cw) \ | ||
| 65 | __asm__ __volatile__ ("vmrs %0, fpscr" : "=r" (cw)) | ||
| 66 | # define _FPU_SETCW(cw) \ | ||
| 67 | __asm__ __volatile__ ("vmsr fpscr, %0" : : "r" (cw)) | ||
| 68 | #endif | ||
| 69 | |||
| 70 | /* Default control word set at startup. */ | ||
| 71 | extern fpu_control_t __fpu_control; | ||
| 72 | |||
| 73 | #endif /* __SOFTFP__ */ | ||
| 74 | |||
| 75 | #endif /* _FPU_CONTROL_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnueabi/gnu/lib-names.h deleted-14| ... | @@ -1,14 +0,0 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | It defines macros to allow user program to find the shared | ||
| 3 | library files which come as part of GNU libc. */ | ||
| 4 | #ifndef __GNU_LIB_NAMES_H | ||
| 5 | #define __GNU_LIB_NAMES_H	1 | ||
| 6 | |||
| 7 | #if !defined __ARM_PCS_VFP | ||
| 8 | # include <gnu/lib-names-soft.h> | ||
| 9 | #endif | ||
| 10 | #if defined __ARM_PCS_VFP | ||
| 11 | # include <gnu/lib-names-hard.h> | ||
| 12 | #endif | ||
| 13 | |||
| 14 | #endif	/* gnu/lib-names.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnueabi/gnu/stubs.h deleted-11| ... | @@ -1,11 +0,0 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | This file selects the right generated file of `__stub_FUNCTION' macros | ||
| 3 | based on the architecture being compiled for. */ | ||
| 4 | |||
| 5 | |||
| 6 | #if !defined __ARM_PCS_VFP | ||
| 7 | # include <gnu/stubs-soft.h> | ||
| 8 | #endif | ||
| 9 | #if defined __ARM_PCS_VFP | ||
| 10 | # include <gnu/stubs-hard.h> | ||
| 11 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnueabi/sys/ptrace.h deleted-226| ... | @@ -1,226 +0,0 @@ | ||
| 1 | /* `ptrace' debugger support interface. Linux/ARM version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library; if not, see | ||
| 18 | <https://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifndef _SYS_PTRACE_H | ||
| 21 | #define _SYS_PTRACE_H	1 | ||
| 22 | |||
| 23 | #include <features.h> | ||
| 24 | #include <bits/types.h> | ||
| 25 | |||
| 26 | __BEGIN_DECLS | ||
| 27 | |||
| 28 | /* Type of the REQUEST argument to `ptrace.' */ | ||
| 29 | enum __ptrace_request | ||
| 30 | { | ||
| 31 | /* Indicate that the process making this request should be traced. | ||
| 32 | All signals received by this process can be intercepted by its | ||
| 33 | parent, and its parent can use the other `ptrace' requests. */ | ||
| 34 | PTRACE_TRACEME = 0, | ||
| 35 | #define PT_TRACE_ME PTRACE_TRACEME | ||
| 36 | |||
| 37 | /* Return the word in the process's text space at address ADDR. */ | ||
| 38 | PTRACE_PEEKTEXT = 1, | ||
| 39 | #define PT_READ_I PTRACE_PEEKTEXT | ||
| 40 | |||
| 41 | /* Return the word in the process's data space at address ADDR. */ | ||
| 42 | PTRACE_PEEKDATA = 2, | ||
| 43 | #define PT_READ_D PTRACE_PEEKDATA | ||
| 44 | |||
| 45 | /* Return the word in the process's user area at offset ADDR. */ | ||
| 46 | PTRACE_PEEKUSER = 3, | ||
| 47 | #define PT_READ_U PTRACE_PEEKUSER | ||
| 48 | |||
| 49 | /* Write the word DATA into the process's text space at address ADDR. */ | ||
| 50 | PTRACE_POKETEXT = 4, | ||
| 51 | #define PT_WRITE_I PTRACE_POKETEXT | ||
| 52 | |||
| 53 | /* Write the word DATA into the process's data space at address ADDR. */ | ||
| 54 | PTRACE_POKEDATA = 5, | ||
| 55 | #define PT_WRITE_D PTRACE_POKEDATA | ||
| 56 | |||
| 57 | /* Write the word DATA into the process's user area at offset ADDR. */ | ||
| 58 | PTRACE_POKEUSER = 6, | ||
| 59 | #define PT_WRITE_U PTRACE_POKEUSER | ||
| 60 | |||
| 61 | /* Continue the process. */ | ||
| 62 | PTRACE_CONT = 7, | ||
| 63 | #define PT_CONTINUE PTRACE_CONT | ||
| 64 | |||
| 65 | /* Kill the process. */ | ||
| 66 | PTRACE_KILL = 8, | ||
| 67 | #define PT_KILL PTRACE_KILL | ||
| 68 | |||
| 69 | /* Single step the process. */ | ||
| 70 | PTRACE_SINGLESTEP = 9, | ||
| 71 | #define PT_STEP PTRACE_SINGLESTEP | ||
| 72 | |||
| 73 | /* Get all general purpose registers used by a process. */ | ||
| 74 | PTRACE_GETREGS = 12, | ||
| 75 | #define PT_GETREGS PTRACE_GETREGS | ||
| 76 | |||
| 77 | /* Set all general purpose registers used by a process. */ | ||
| 78 | PTRACE_SETREGS = 13, | ||
| 79 | #define PT_SETREGS PTRACE_SETREGS | ||
| 80 | |||
| 81 | /* Get all floating point registers used by a process. */ | ||
| 82 | PTRACE_GETFPREGS = 14, | ||
| 83 | #define PT_GETFPREGS PTRACE_GETFPREGS | ||
| 84 | |||
| 85 | /* Set all floating point registers used by a process. */ | ||
| 86 | PTRACE_SETFPREGS = 15, | ||
| 87 | #define PT_SETFPREGS PTRACE_SETFPREGS | ||
| 88 | |||
| 89 | /* Attach to a process that is already running. */ | ||
| 90 | PTRACE_ATTACH = 16, | ||
| 91 | #define PT_ATTACH PTRACE_ATTACH | ||
| 92 | |||
| 93 | /* Detach from a process attached to with PTRACE_ATTACH. */ | ||
| 94 | PTRACE_DETACH = 17, | ||
| 95 | #define PT_DETACH PTRACE_DETACH | ||
| 96 | |||
| 97 | /* Get the iWMMXt state of a process. */ | ||
| 98 | PTRACE_GETWMMXREGS = 18, | ||
| 99 | #define PT_GETWMMXREGS PTRACE_GETWMMXREGS | ||
| 100 | |||
| 101 | /* Set the iWMMXt state of a process. */ | ||
| 102 | PTRACE_SETWMMXREGS = 19, | ||
| 103 | #define PT_SETWMMXREGS PTRACE_SETWMMXREGS | ||
| 104 | |||
| 105 | /* Get the thread pointer of a process. */ | ||
| 106 | PTRACE_GET_THREAD_AREA = 22, | ||
| 107 | #define PT_GET_THREAD_AREA PTRACE_GET_THREAD_AREA | ||
| 108 | |||
| 109 | /* Change the syscall number of a process. */ | ||
| 110 | PTRACE_SET_SYSCALL = 23, | ||
| 111 | #define PT_SET_SYSCALL PTRACE_SET_SYSCALL | ||
| 112 | |||
| 113 | /* Continue and stop at the next entry to or return from syscall. */ | ||
| 114 | PTRACE_SYSCALL = 24, | ||
| 115 | #define PT_SYSCALL PTRACE_SYSCALL | ||
| 116 | |||
| 117 | /* Get the Crunch state of a process. */ | ||
| 118 | PTRACE_GETCRUNCHREGS = 25, | ||
| 119 | #define PT_GETCRUNCHREGS PTRACE_GETCRUNCHREGS | ||
| 120 | |||
| 121 | /* Set the Crunch state of a process. */ | ||
| 122 | PTRACE_SETCRUNCHREGS = 26, | ||
| 123 | #define PT_SETCRUNCHREGS PTRACE_SETCRUNCHREGS | ||
| 124 | |||
| 125 | /* Get all VFP registers used by a process. */ | ||
| 126 | PTRACE_GETVFPREGS = 27, | ||
| 127 | #define PT_GETVFPREGS PTRACE_GETVFPREGS | ||
| 128 | |||
| 129 | /* Set all VFP registers used by a process. */ | ||
| 130 | PTRACE_SETVFPREGS = 28, | ||
| 131 | #define PT_SETVFPREGS PTRACE_SETVFPREGS | ||
| 132 | |||
| 133 | /* Get all hardware breakpoint registers. */ | ||
| 134 | PTRACE_GETHBPREGS = 29, | ||
| 135 | #define PT_GETHBPREGS PTRACE_GETHBPREGS | ||
| 136 | |||
| 137 | /* Set all hardware breakpoint registers. */ | ||
| 138 | PTRACE_SETHBPREGS = 30, | ||
| 139 | #define PT_SETHBPREGS PTRACE_SETHBPREGS | ||
| 140 | |||
| 141 | /* Get the ELF fdpic loadmap address. */ | ||
| 142 | PTRACE_GETFDPIC = 31, | ||
| 143 | #define PT_GETFDPIC PTRACE_GETFDPIC | ||
| 144 | |||
| 145 | /* Set ptrace filter options. */ | ||
| 146 | PTRACE_SETOPTIONS = 0x4200, | ||
| 147 | #define PT_SETOPTIONS PTRACE_SETOPTIONS | ||
| 148 | |||
| 149 | /* Get last ptrace message. */ | ||
| 150 | PTRACE_GETEVENTMSG = 0x4201, | ||
| 151 | #define PT_GETEVENTMSG PTRACE_GETEVENTMSG | ||
| 152 | |||
| 153 | /* Get siginfo for process. */ | ||
| 154 | PTRACE_GETSIGINFO = 0x4202, | ||
| 155 | #define PT_GETSIGINFO PTRACE_GETSIGINFO | ||
| 156 | |||
| 157 | /* Set new siginfo for process. */ | ||
| 158 | PTRACE_SETSIGINFO = 0x4203, | ||
| 159 | #define PT_SETSIGINFO PTRACE_SETSIGINFO | ||
| 160 | |||
| 161 | /* Get register content. */ | ||
| 162 | PTRACE_GETREGSET = 0x4204, | ||
| 163 | #define PTRACE_GETREGSET PTRACE_GETREGSET | ||
| 164 | |||
| 165 | /* Set register content. */ | ||
| 166 | PTRACE_SETREGSET = 0x4205, | ||
| 167 | #define PTRACE_SETREGSET PTRACE_SETREGSET | ||
| 168 | |||
| 169 | /* Like PTRACE_ATTACH, but do not force tracee to trap and do not affect | ||
| 170 | signal or group stop state. */ | ||
| 171 | PTRACE_SEIZE = 0x4206, | ||
| 172 | #define PTRACE_SEIZE PTRACE_SEIZE | ||
| 173 | |||
| 174 | /* Trap seized tracee. */ | ||
| 175 | PTRACE_INTERRUPT = 0x4207, | ||
| 176 | #define PTRACE_INTERRUPT PTRACE_INTERRUPT | ||
| 177 | |||
| 178 | /* Wait for next group event. */ | ||
| 179 | PTRACE_LISTEN = 0x4208, | ||
| 180 | #define PTRACE_LISTEN PTRACE_LISTEN | ||
| 181 | |||
| 182 | /* Retrieve siginfo_t structures without removing signals from a queue. */ | ||
| 183 | PTRACE_PEEKSIGINFO = 0x4209, | ||
| 184 | #define PTRACE_PEEKSIGINFO PTRACE_PEEKSIGINFO | ||
| 185 | |||
| 186 | /* Get the mask of blocked signals. */ | ||
| 187 | PTRACE_GETSIGMASK = 0x420a, | ||
| 188 | #define PTRACE_GETSIGMASK PTRACE_GETSIGMASK | ||
| 189 | |||
| 190 | /* Change the mask of blocked signals. */ | ||
| 191 | PTRACE_SETSIGMASK = 0x420b, | ||
| 192 | #define PTRACE_SETSIGMASK PTRACE_SETSIGMASK | ||
| 193 | |||
| 194 | /* Get seccomp BPF filters. */ | ||
| 195 | PTRACE_SECCOMP_GET_FILTER = 0x420c, | ||
| 196 | #define PTRACE_SECCOMP_GET_FILTER PTRACE_SECCOMP_GET_FILTER | ||
| 197 | |||
| 198 | /* Get seccomp BPF filter metadata. */ | ||
| 199 | PTRACE_SECCOMP_GET_METADATA = 0x420d, | ||
| 200 | #define PTRACE_SECCOMP_GET_METADATA PTRACE_SECCOMP_GET_METADATA | ||
| 201 | |||
| 202 | /* Get information about system call. */ | ||
| 203 | PTRACE_GET_SYSCALL_INFO = 0x420e, | ||
| 204 | #define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO | ||
| 205 | |||
| 206 | /* Get rseq configuration information. */ | ||
| 207 | PTRACE_GET_RSEQ_CONFIGURATION = 0x420f, | ||
| 208 | #define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION | ||
| 209 | |||
| 210 | /* Set configuration for syscall user dispatch. */ | ||
| 211 | PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG = 0x4210, | ||
| 212 | #define PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG \ | ||
| 213 | PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG | ||
| 214 | |||
| 215 | /* Get configuration for syscall user dispatch. */ | ||
| 216 | PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG = 0x4211 | ||
| 217 | #define PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG \ | ||
| 218 | PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG | ||
| 219 | }; | ||
| 220 | |||
| 221 | |||
| 222 | #include <bits/ptrace-shared.h> | ||
| 223 | |||
| 224 | __END_DECLS | ||
| 225 | |||
| 226 | #endif /* _SYS_PTRACE_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnueabi/sys/ucontext.h deleted-144| ... | @@ -1,144 +0,0 @@ | ||
| 1 | /* Copyright (C) 1998-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | /* System V/ARM ABI compliant context switching support. */ | ||
| 19 | |||
| 20 | #ifndef _SYS_UCONTEXT_H | ||
| 21 | #define _SYS_UCONTEXT_H	1 | ||
| 22 | |||
| 23 | #include <features.h> | ||
| 24 | |||
| 25 | #include <bits/types/sigset_t.h> | ||
| 26 | #include <bits/types/stack_t.h> | ||
| 27 | |||
| 28 | |||
| 29 | #ifdef __USE_MISC | ||
| 30 | # define __ctx(fld) fld | ||
| 31 | #else | ||
| 32 | # define __ctx(fld) __ ## fld | ||
| 33 | #endif | ||
| 34 | |||
| 35 | #ifdef __USE_MISC | ||
| 36 | typedef int greg_t; | ||
| 37 | |||
| 38 | /* Number of general registers. */ | ||
| 39 | # define NGREG	18 | ||
| 40 | |||
| 41 | /* Container for all general registers. */ | ||
| 42 | typedef greg_t gregset_t[NGREG]; | ||
| 43 | |||
| 44 | /* Number of each register is the `gregset_t' array. */ | ||
| 45 | enum | ||
| 46 | { | ||
| 47 | REG_R0 = 0, | ||
| 48 | # define REG_R0	REG_R0 | ||
| 49 | REG_R1 = 1, | ||
| 50 | # define REG_R1	REG_R1 | ||
| 51 | REG_R2 = 2, | ||
| 52 | # define REG_R2	REG_R2 | ||
| 53 | REG_R3 = 3, | ||
| 54 | # define REG_R3	REG_R3 | ||
| 55 | REG_R4 = 4, | ||
| 56 | # define REG_R4	REG_R4 | ||
| 57 | REG_R5 = 5, | ||
| 58 | # define REG_R5	REG_R5 | ||
| 59 | REG_R6 = 6, | ||
| 60 | # define REG_R6	REG_R6 | ||
| 61 | REG_R7 = 7, | ||
| 62 | # define REG_R7	REG_R7 | ||
| 63 | REG_R8 = 8, | ||
| 64 | # define REG_R8	REG_R8 | ||
| 65 | REG_R9 = 9, | ||
| 66 | # define REG_R9	REG_R9 | ||
| 67 | REG_R10 = 10, | ||
| 68 | # define REG_R10	REG_R10 | ||
| 69 | REG_R11 = 11, | ||
| 70 | # define REG_R11	REG_R11 | ||
| 71 | REG_R12 = 12, | ||
| 72 | # define REG_R12	REG_R12 | ||
| 73 | REG_R13 = 13, | ||
| 74 | # define REG_R13	REG_R13 | ||
| 75 | REG_R14 = 14, | ||
| 76 | # define REG_R14	REG_R14 | ||
| 77 | REG_R15 = 15 | ||
| 78 | # define REG_R15	REG_R15 | ||
| 79 | }; | ||
| 80 | |||
| 81 | struct _libc_fpstate | ||
| 82 | { | ||
| 83 | struct | ||
| 84 | { | ||
| 85 | unsigned int sign1:1; | ||
| 86 | unsigned int unused:15; | ||
| 87 | unsigned int sign2:1; | ||
| 88 | unsigned int exponent:14; | ||
| 89 | unsigned int j:1; | ||
| 90 | unsigned int mantissa1:31; | ||
| 91 | unsigned int mantissa0:32; | ||
| 92 | } fpregs[8]; | ||
| 93 | unsigned int fpsr:32; | ||
| 94 | unsigned int fpcr:32; | ||
| 95 | unsigned char ftype[8]; | ||
| 96 | unsigned int init_flag; | ||
| 97 | }; | ||
| 98 | /* Structure to describe FPU registers. */ | ||
| 99 | typedef struct _libc_fpstate fpregset_t; | ||
| 100 | #endif | ||
| 101 | |||
| 102 | /* Context to describe whole processor state. This only describes | ||
| 103 | the core registers; coprocessor registers get saved elsewhere | ||
| 104 | (e.g. in uc_regspace, or somewhere unspecified on the stack | ||
| 105 | during non-RT signal handlers). */ | ||
| 106 | typedef struct | ||
| 107 | { | ||
| 108 | unsigned long int __ctx(trap_no); | ||
| 109 | unsigned long int __ctx(error_code); | ||
| 110 | unsigned long int __ctx(oldmask); | ||
| 111 | unsigned long int __ctx(arm_r0); | ||
| 112 | unsigned long int __ctx(arm_r1); | ||
| 113 | unsigned long int __ctx(arm_r2); | ||
| 114 | unsigned long int __ctx(arm_r3); | ||
| 115 | unsigned long int __ctx(arm_r4); | ||
| 116 | unsigned long int __ctx(arm_r5); | ||
| 117 | unsigned long int __ctx(arm_r6); | ||
| 118 | unsigned long int __ctx(arm_r7); | ||
| 119 | unsigned long int __ctx(arm_r8); | ||
| 120 | unsigned long int __ctx(arm_r9); | ||
| 121 | unsigned long int __ctx(arm_r10); | ||
| 122 | unsigned long int __ctx(arm_fp); | ||
| 123 | unsigned long int __ctx(arm_ip); | ||
| 124 | unsigned long int __ctx(arm_sp); | ||
| 125 | unsigned long int __ctx(arm_lr); | ||
| 126 | unsigned long int __ctx(arm_pc); | ||
| 127 | unsigned long int __ctx(arm_cpsr); | ||
| 128 | unsigned long int __ctx(fault_address); | ||
| 129 | } mcontext_t; | ||
| 130 | |||
| 131 | /* Userlevel context. */ | ||
| 132 | typedef struct ucontext_t | ||
| 133 | { | ||
| 134 | unsigned long __ctx(uc_flags); | ||
| 135 | struct ucontext_t *uc_link; | ||
| 136 | stack_t uc_stack; | ||
| 137 | mcontext_t uc_mcontext; | ||
| 138 | sigset_t uc_sigmask; | ||
| 139 | unsigned long __ctx(uc_regspace)[128] __attribute__((__aligned__(8))); | ||
| 140 | } ucontext_t; | ||
| 141 | |||
| 142 | #undef __ctx | ||
| 143 | |||
| 144 | #endif /* sys/ucontext.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnueabi/sys/user.h deleted-71| ... | @@ -1,71 +0,0 @@ | ||
| 1 | /* Copyright (C) 1998-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_USER_H | ||
| 19 | #define _SYS_USER_H	1 | ||
| 20 | |||
| 21 | /* The whole purpose of this file is for GDB and GDB only. Don't read | ||
| 22 | too much into it. Don't use it for anything other than GDB unless | ||
| 23 | you know what you are doing. */ | ||
| 24 | |||
| 25 | struct user_fpregs | ||
| 26 | { | ||
| 27 | struct fp_reg | ||
| 28 | { | ||
| 29 | unsigned int sign1:1; | ||
| 30 | unsigned int unused:15; | ||
| 31 | unsigned int sign2:1; | ||
| 32 | unsigned int exponent:14; | ||
| 33 | unsigned int j:1; | ||
| 34 | unsigned int mantissa1:31; | ||
| 35 | unsigned int mantissa0:32; | ||
| 36 | } fpregs[8]; | ||
| 37 | unsigned int fpsr:32; | ||
| 38 | unsigned int fpcr:32; | ||
| 39 | unsigned char ftype[8]; | ||
| 40 | unsigned int init_flag; | ||
| 41 | }; | ||
| 42 | |||
| 43 | struct user_regs | ||
| 44 | { | ||
| 45 | unsigned long int uregs[18]; | ||
| 46 | }; | ||
| 47 | |||
| 48 | struct user | ||
| 49 | { | ||
| 50 | struct user_regs regs;	/* General registers */ | ||
| 51 | int u_fpvalid;		/* True if math co-processor being used. */ | ||
| 52 | |||
| 53 | unsigned long int u_tsize;	/* Text segment size (pages). */ | ||
| 54 | unsigned long int u_dsize;	/* Data segment size (pages). */ | ||
| 55 | unsigned long int u_ssize;	/* Stack segment size (pages). */ | ||
| 56 | |||
| 57 | unsigned long start_code;	/* Starting virtual address of text. */ | ||
| 58 | unsigned long start_stack;	/* Starting virtual address of stack. */ | ||
| 59 | |||
| 60 | long int signal; 		/* Signal that caused the core dump. */ | ||
| 61 | int reserved;			/* No longer used */ | ||
| 62 | struct user_regs *u_ar0;	/* help gdb to find the general registers. */ | ||
| 63 | |||
| 64 | unsigned long magic;		/* uniquely identify a core file */ | ||
| 65 | char u_comm[32];		/* User command that was responsible */ | ||
| 66 | int u_debugreg[8]; | ||
| 67 | struct user_fpregs u_fp;	/* Floating point registers */ | ||
| 68 | struct user_fpregs *u_fp0;	/* help gdb to find the FP registers. */ | ||
| 69 | }; | ||
| 70 | |||
| 71 | #endif /* sys/user.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnueabihf/bits/dl_find_object.h deleted-25| ... | @@ -1,25 +0,0 @@ | ||
| 1 | /* arm definitions for finding objects. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _DLFCN_H | ||
| 20 | # error "Never use <bits/dl_find_object.h> directly; include <dlfcn.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #define DLFO_STRUCT_HAS_EH_DBASE 0 | ||
| 24 | #define DLFO_STRUCT_HAS_EH_COUNT 1 | ||
| 25 | #define DLFO_EH_SEGMENT_TYPE PT_ARM_EXIDX | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnueabihf/bits/endianness.h deleted-15| ... | @@ -1,15 +0,0 @@ | ||
| 1 | #ifndef _BITS_ENDIANNESS_H | ||
| 2 | #define _BITS_ENDIANNESS_H 1 | ||
| 3 | |||
| 4 | #ifndef _BITS_ENDIAN_H | ||
| 5 | # error "Never use <bits/endianness.h> directly; include <endian.h> instead." | ||
| 6 | #endif | ||
| 7 | |||
| 8 | /* ARM has selectable endianness. */ | ||
| 9 | #ifdef __ARMEB__ | ||
| 10 | #define __BYTE_ORDER __BIG_ENDIAN | ||
| 11 | #else | ||
| 12 | #define __BYTE_ORDER __LITTLE_ENDIAN | ||
| 13 | #endif | ||
| 14 | |||
| 15 | #endif /* bits/endianness.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnueabihf/bits/fcntl.h deleted-54| ... | @@ -1,54 +0,0 @@ | ||
| 1 | /* O_*, F_*, FD_* bit values for Linux. | ||
| 2 | Copyright (C) 1995-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef	_FCNTL_H | ||
| 20 | # error "Never use <bits/fcntl.h> directly; include <fcntl.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #define __O_DIRECTORY	 040000	/* Must be a directory.	 */ | ||
| 24 | #define __O_NOFOLLOW	0100000	/* Do not follow links.	 */ | ||
| 25 | #define __O_DIRECT	0200000	/* Direct disk access.	*/ | ||
| 26 | #define __O_LARGEFILE	0400000 | ||
| 27 | |||
| 28 | struct flock | ||
| 29 | { | ||
| 30 | short int l_type;	/* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK.	*/ | ||
| 31 | short int l_whence;	/* Where `l_start' is relative to (like `lseek'). */ | ||
| 32 | #ifndef __USE_FILE_OFFSET64 | ||
| 33 | __off_t l_start;	/* Offset where the lock begins. */ | ||
| 34 | __off_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 35 | #else | ||
| 36 | __off64_t l_start;	/* Offset where the lock begins. */ | ||
| 37 | __off64_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 38 | #endif | ||
| 39 | __pid_t l_pid;	/* Process holding the lock. */ | ||
| 40 | }; | ||
| 41 | |||
| 42 | #ifdef __USE_LARGEFILE64 | ||
| 43 | struct flock64 | ||
| 44 | { | ||
| 45 | short int l_type;	/* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK.	*/ | ||
| 46 | short int l_whence;	/* Where `l_start' is relative to (like `lseek'). */ | ||
| 47 | __off64_t l_start;	/* Offset where the lock begins. */ | ||
| 48 | __off64_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 49 | __pid_t l_pid;	/* Process holding the lock. */ | ||
| 50 | }; | ||
| 51 | #endif | ||
| 52 | |||
| 53 | /* Include generic Linux declarations. */ | ||
| 54 | #include <bits/fcntl-linux.h> | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnueabihf/bits/fenv.h deleted-90| ... | @@ -1,90 +0,0 @@ | ||
| 1 | /* Copyright (C) 2004-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _FENV_H | ||
| 19 | # error "Never use <bits/fenv.h> directly; include <fenv.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Define bits representing exceptions in the FPU status word. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | FE_INVALID = | ||
| 26 | #define FE_INVALID	1 | ||
| 27 | FE_INVALID, | ||
| 28 | FE_DIVBYZERO = | ||
| 29 | #define FE_DIVBYZERO	2 | ||
| 30 | FE_DIVBYZERO, | ||
| 31 | FE_OVERFLOW = | ||
| 32 | #define FE_OVERFLOW	4 | ||
| 33 | FE_OVERFLOW, | ||
| 34 | FE_UNDERFLOW = | ||
| 35 | #define FE_UNDERFLOW	8 | ||
| 36 | FE_UNDERFLOW, | ||
| 37 | FE_INEXACT = | ||
| 38 | #define FE_INEXACT	16 | ||
| 39 | FE_INEXACT, | ||
| 40 | }; | ||
| 41 | |||
| 42 | /* Amount to shift by to convert an exception to a mask bit. */ | ||
| 43 | #define FE_EXCEPT_SHIFT	8 | ||
| 44 | |||
| 45 | /* All supported exceptions. */ | ||
| 46 | #define FE_ALL_EXCEPT	\ | ||
| 47 | 	(FE_INVALID | FE_DIVBYZERO | FE_OVERFLOW | FE_UNDERFLOW | FE_INEXACT) | ||
| 48 | |||
| 49 | /* VFP supports all of the four defined rounding modes. */ | ||
| 50 | enum | ||
| 51 | { | ||
| 52 | FE_TONEAREST = | ||
| 53 | #define FE_TONEAREST	0 | ||
| 54 | FE_TONEAREST, | ||
| 55 | FE_UPWARD = | ||
| 56 | #define FE_UPWARD	0x400000 | ||
| 57 | FE_UPWARD, | ||
| 58 | FE_DOWNWARD = | ||
| 59 | #define FE_DOWNWARD	0x800000 | ||
| 60 | FE_DOWNWARD, | ||
| 61 | FE_TOWARDZERO = | ||
| 62 | #define FE_TOWARDZERO	0xc00000 | ||
| 63 | FE_TOWARDZERO | ||
| 64 | }; | ||
| 65 | |||
| 66 | /* Type representing exception flags. */ | ||
| 67 | typedef unsigned int fexcept_t; | ||
| 68 | |||
| 69 | /* Type representing floating-point environment. */ | ||
| 70 | typedef struct | ||
| 71 | { | ||
| 72 | unsigned int __cw; | ||
| 73 | } | ||
| 74 | fenv_t; | ||
| 75 | |||
| 76 | /* If the default argument is used we use this value. */ | ||
| 77 | #define FE_DFL_ENV	((const fenv_t *) -1l) | ||
| 78 | |||
| 79 | #ifdef __USE_GNU | ||
| 80 | /* Floating-point environment where none of the exceptions are masked. */ | ||
| 81 | # define FE_NOMASK_ENV ((const fenv_t *) -2) | ||
| 82 | #endif | ||
| 83 | |||
| 84 | #if __GLIBC_USE (IEC_60559_BFP_EXT_C23) | ||
| 85 | /* Type representing floating-point control modes. */ | ||
| 86 | typedef unsigned int femode_t; | ||
| 87 | |||
| 88 | /* Default floating-point control modes. */ | ||
| 89 | # define FE_DFL_MODE	((const femode_t *) -1L) | ||
| 90 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnueabihf/bits/floatn.h deleted-52| ... | @@ -1,52 +0,0 @@ | ||
| 1 | /* Macros to control TS 18661-3 glibc features. | ||
| 2 | Copyright (C) 2017-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* Defined to 1 if the current compiler invocation provides a | ||
| 20 | floating-point type with the IEEE 754 binary128 format, and this glibc | ||
| 21 | includes corresponding *f128 interfaces for it. */ | ||
| 22 | #define __HAVE_FLOAT128 0 | ||
| 23 | |||
| 24 | /* Defined to 1 if __HAVE_FLOAT128 is 1 and the type is ABI-distinct | ||
| 25 | from the default float, double and long double types in this glibc. */ | ||
| 26 | #define __HAVE_DISTINCT_FLOAT128 0 | ||
| 27 | |||
| 28 | /* Defined to 1 if the current compiler invocation provides a | ||
| 29 | floating-point type with the right format for _Float64x, and this | ||
| 30 | glibc includes corresponding *f64x interfaces for it. */ | ||
| 31 | #define __HAVE_FLOAT64X 0 | ||
| 32 | |||
| 33 | /* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format | ||
| 34 | of long double. Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has | ||
| 35 | the format of _Float128, which must be different from that of long | ||
| 36 | double. */ | ||
| 37 | #define __HAVE_FLOAT64X_LONG_DOUBLE 0 | ||
| 38 | |||
| 39 | #ifndef __ASSEMBLER__ | ||
| 40 | |||
| 41 | /* Defined to concatenate the literal suffix to be used with _Float128 | ||
| 42 | types, if __HAVE_FLOAT128 is 1. | ||
| 43 | E.g.: #define __f128(x) x##f128. */ | ||
| 44 | # undef __f128 | ||
| 45 | |||
| 46 | /* Defined to a complex binary128 type if __HAVE_FLOAT128 is 1. | ||
| 47 | E.g.: #define __CFLOAT128 _Complex _Float128. */ | ||
| 48 | # undef __CFLOAT128 | ||
| 49 | |||
| 50 | #endif /* !__ASSEMBLER__. */ | ||
| 51 | |||
| 52 | #include <bits/floatn-common.h> | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnueabihf/bits/hwcap.h deleted-59| ... | @@ -1,59 +0,0 @@ | ||
| 1 | /* Defines for bits in AT_HWCAP. ARM Linux version. | ||
| 2 | Copyright (C) 2012-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #if !defined (_SYS_AUXV_H) && !defined (_LINUX_ARM_SYSDEP_H) | ||
| 20 | # error "Never include <bits/hwcap.h> directly; use <sys/auxv.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* The following must match the kernel's <asm/hwcap.h>. */ | ||
| 24 | #define HWCAP_ARM_SWP		1 | ||
| 25 | #define HWCAP_ARM_HALF		2 | ||
| 26 | #define HWCAP_ARM_THUMB		4 | ||
| 27 | #define HWCAP_ARM_26BIT		8 | ||
| 28 | #define HWCAP_ARM_FAST_MULT	16 | ||
| 29 | #define HWCAP_ARM_FPA		32 | ||
| 30 | #define HWCAP_ARM_VFP		64 | ||
| 31 | #define HWCAP_ARM_EDSP		128 | ||
| 32 | #define HWCAP_ARM_JAVA		256 | ||
| 33 | #define HWCAP_ARM_IWMMXT	512 | ||
| 34 | #define HWCAP_ARM_CRUNCH	1024 | ||
| 35 | #define HWCAP_ARM_THUMBEE	2048 | ||
| 36 | #define HWCAP_ARM_NEON		4096 | ||
| 37 | #define HWCAP_ARM_VFPv3		8192 | ||
| 38 | #define HWCAP_ARM_VFPv3D16	16384 | ||
| 39 | #define HWCAP_ARM_TLS		32768 | ||
| 40 | #define HWCAP_ARM_VFPv4		65536 | ||
| 41 | #define HWCAP_ARM_IDIVA		131072 | ||
| 42 | #define HWCAP_ARM_IDIVT		262144 | ||
| 43 | #define HWCAP_ARM_VFPD32	524288 | ||
| 44 | #define HWCAP_ARM_LPAE		1048576 | ||
| 45 | #define HWCAP_ARM_EVTSTRM	2097152 | ||
| 46 | #define HWCAP_FPHP		4194304 | ||
| 47 | #define HWCAP_ASIMDHP		8388608 | ||
| 48 | #define HWCAP_ASIMDDP		16777216 | ||
| 49 | #define HWCAP_ASIMDFHM		33554432 | ||
| 50 | #define HWCAP_ASIMDBF16		67108864 | ||
| 51 | #define HWCAP_I8MM		134217728 | ||
| 52 | |||
| 53 | #define HWCAP2_AES		1 | ||
| 54 | #define HWCAP2_PMULL		2 | ||
| 55 | #define HWCAP2_SHA1		4 | ||
| 56 | #define HWCAP2_SHA2		8 | ||
| 57 | #define HWCAP2_CRC32		16 | ||
| 58 | #define HWCAP2_SB		32 | ||
| 59 | #define HWCAP2_SSBS		64 | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnueabihf/bits/link.h deleted-65| ... | @@ -1,65 +0,0 @@ | ||
| 1 | /* Copyright (C) 2005-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_LINK_H | ||
| 19 | # error "Never include <bits/link.h> directly; use <link.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | |||
| 23 | /* Registers for entry into PLT on ARM. */ | ||
| 24 | typedef struct La_arm_regs | ||
| 25 | { | ||
| 26 | uint32_t lr_reg[4]; | ||
| 27 | uint32_t lr_sp; | ||
| 28 | uint32_t lr_lr; | ||
| 29 | /* Coprocessor registers used for argument passing. The data | ||
| 30 | stored here depends on the coprocessors available in the | ||
| 31 | system which are used for function calls in the current ABI. | ||
| 32 | VFP uses eight 64-bit registers, and iWMMXt uses ten. */ | ||
| 33 | uint32_t lr_coproc[42]; | ||
| 34 | } La_arm_regs; | ||
| 35 | |||
| 36 | /* Return values for calls from PLT on ARM. */ | ||
| 37 | typedef struct La_arm_retval | ||
| 38 | { | ||
| 39 | /* Up to four integer registers can be used for a return value in | ||
| 40 | some ABIs (APCS complex long double). */ | ||
| 41 | uint32_t lrv_reg[4]; | ||
| 42 | |||
| 43 | /* Any coprocessor registers which might be used to return values | ||
| 44 | in the current ABI. */ | ||
| 45 | uint32_t lrv_coproc[12]; | ||
| 46 | } La_arm_retval; | ||
| 47 | |||
| 48 | |||
| 49 | __BEGIN_DECLS | ||
| 50 | |||
| 51 | extern Elf32_Addr la_arm_gnu_pltenter (Elf32_Sym *__sym, unsigned int __ndx, | ||
| 52 | 				 uintptr_t *__refcook, | ||
| 53 | 				 uintptr_t *__defcook, | ||
| 54 | 				 La_arm_regs *__regs, | ||
| 55 | 				 unsigned int *__flags, | ||
| 56 | 				 const char *__symname, | ||
| 57 | 				 long int *__framesizep); | ||
| 58 | extern unsigned int la_arm_gnu_pltexit (Elf32_Sym *__sym, unsigned int __ndx, | ||
| 59 | 					uintptr_t *__refcook, | ||
| 60 | 					uintptr_t *__defcook, | ||
| 61 | 					const La_arm_regs *__inregs, | ||
| 62 | 					La_arm_retval *__outregs, | ||
| 63 | 					const char *__symname); | ||
| 64 | |||
| 65 | __END_DECLS | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnueabihf/bits/long-double.h deleted-53| ... | @@ -1,53 +0,0 @@ | ||
| 1 | /* Properties of long double type. | ||
| 2 | Copyright (C) 2016-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* This header is included by <sys/cdefs.h>. | ||
| 20 | |||
| 21 | If long double is ABI-compatible with double, it should define | ||
| 22 | __NO_LONG_DOUBLE_MATH to 1; otherwise, it should leave | ||
| 23 | __NO_LONG_DOUBLE_MATH undefined. | ||
| 24 | |||
| 25 | If this build of the GNU C Library supports both long double | ||
| 26 | ABI-compatible with double and some other long double format not | ||
| 27 | ABI-compatible with double, it should define | ||
| 28 | __LONG_DOUBLE_MATH_OPTIONAL to 1; otherwise, it should leave | ||
| 29 | __LONG_DOUBLE_MATH_OPTIONAL undefined. | ||
| 30 | |||
| 31 | If __NO_LONG_DOUBLE_MATH is already defined, this header must not | ||
| 32 | define anything; this is needed to work with the definition of | ||
| 33 | __NO_LONG_DOUBLE_MATH in nldbl-compat.h. */ | ||
| 34 | |||
| 35 | /* In the default version of this header, long double is | ||
| 36 | ABI-compatible with double. */ | ||
| 37 | #ifndef __NO_LONG_DOUBLE_MATH | ||
| 38 | # define __NO_LONG_DOUBLE_MATH	1 | ||
| 39 | #endif | ||
| 40 | |||
| 41 | /* The macro __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI is used to determine the | ||
| 42 | choice of the underlying ABI of long double. It will always assume | ||
| 43 | a constant value for each translation unit. | ||
| 44 | |||
| 45 | If the value is non-zero, any API which is parameterized by the long | ||
| 46 | double type (i.e the scanf/printf family of functions or the explicitly | ||
| 47 | parameterized math.h functions) will be redirected to a compatible | ||
| 48 | implementation using _Float128 ABI via symbols suffixed with ieee128. | ||
| 49 | |||
| 50 | The mechanism this macro uses to acquire may be a function | ||
| 51 | of architecture, or target specific options used to invoke the | ||
| 52 | compiler. */ | ||
| 53 | #define __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI 0 | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnueabihf/bits/procfs-id.h deleted-25| ... | @@ -1,25 +0,0 @@ | ||
| 1 | /* Types of pr_uid and pr_gid in struct elf_prpsinfo. Arm version. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library; if not, see | ||
| 18 | <https://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifndef _SYS_PROCFS_H | ||
| 21 | # error "Never include <bits/procfs-id.h> directly; use <sys/procfs.h> instead." | ||
| 22 | #endif | ||
| 23 | |||
| 24 | typedef unsigned short int __pr_uid_t; | ||
| 25 | typedef unsigned short int __pr_gid_t; | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnueabihf/bits/procfs.h deleted-34| ... | @@ -1,34 +0,0 @@ | ||
| 1 | /* Types for registers for sys/procfs.h. Arm version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_PROCFS_H | ||
| 20 | # error "Never include <bits/procfs.h> directly; use <sys/procfs.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Type for a general-purpose register. */ | ||
| 24 | typedef unsigned long elf_greg_t; | ||
| 25 | |||
| 26 | /* And the whole bunch of them. We could have used `struct | ||
| 27 | user_regs' directly in the typedef, but tradition says that | ||
| 28 | the register set is an array, which does have some peculiar | ||
| 29 | semantics, so leave it that way. */ | ||
| 30 | #define ELF_NGREG (sizeof (struct user_regs) / sizeof (elf_greg_t)) | ||
| 31 | typedef elf_greg_t elf_gregset_t[ELF_NGREG]; | ||
| 32 | |||
| 33 | /* Register set for the floating-point registers. */ | ||
| 34 | typedef struct user_fpregs elf_fpregset_t; | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnueabihf/bits/rseq.h deleted-83| ... | @@ -1,83 +0,0 @@ | ||
| 1 | /* Restartable Sequences Linux arm architecture header. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_RSEQ_H | ||
| 19 | # error "Never use <bits/rseq.h> directly; include <sys/rseq.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* | ||
| 23 | RSEQ_SIG is a signature required before each abort handler code. | ||
| 24 | |||
| 25 | It is a 32-bit value that maps to actual architecture code compiled | ||
| 26 | into applications and libraries. It needs to be defined for each | ||
| 27 | architecture. When choosing this value, it needs to be taken into | ||
| 28 | account that generating invalid instructions may have ill effects on | ||
| 29 | tools like objdump, and may also have impact on the CPU speculative | ||
| 30 | execution efficiency in some cases. | ||
| 31 | |||
| 32 | - ARM little endian | ||
| 33 | |||
| 34 | RSEQ_SIG uses the udf A32 instruction with an uncommon immediate operand | ||
| 35 | value 0x5de3. This traps if user-space reaches this instruction by mistake, | ||
| 36 | and the uncommon operand ensures the kernel does not move the instruction | ||
| 37 | pointer to attacker-controlled code on rseq abort. | ||
| 38 | |||
| 39 | The instruction pattern in the A32 instruction set is: | ||
| 40 | |||
| 41 | e7f5def3 udf #24035 ; 0x5de3 | ||
| 42 | |||
| 43 | This translates to the following instruction pattern in the T16 instruction | ||
| 44 | set: | ||
| 45 | |||
| 46 | little endian: | ||
| 47 | def3 udf #243 ; 0xf3 | ||
| 48 | e7f5 b.n <7f5> | ||
| 49 | |||
| 50 | - ARMv6+ big endian (BE8): | ||
| 51 | |||
| 52 | ARMv6+ -mbig-endian generates mixed endianness code vs data: little-endian | ||
| 53 | code and big-endian data. The data value of the signature needs to have its | ||
| 54 | byte order reversed to generate the trap instruction: | ||
| 55 | |||
| 56 | Data: 0xf3def5e7 | ||
| 57 | |||
| 58 | Translates to this A32 instruction pattern: | ||
| 59 | |||
| 60 | e7f5def3 udf #24035 ; 0x5de3 | ||
| 61 | |||
| 62 | Translates to this T16 instruction pattern: | ||
| 63 | |||
| 64 | def3 udf #243 ; 0xf3 | ||
| 65 | e7f5 b.n <7f5> | ||
| 66 | |||
| 67 | - Prior to ARMv6 big endian (BE32): | ||
| 68 | |||
| 69 | Prior to ARMv6, -mbig-endian generates big-endian code and data | ||
| 70 | (which match), so the endianness of the data representation of the | ||
| 71 | signature should not be reversed. However, the choice between BE32 | ||
| 72 | and BE8 is done by the linker, so we cannot know whether code and | ||
| 73 | data endianness will be mixed before the linker is invoked. So rather | ||
| 74 | than try to play tricks with the linker, the rseq signature is simply | ||
| 75 | data (not a trap instruction) prior to ARMv6 on big endian. This is | ||
| 76 | why the signature is expressed as data (.word) rather than as | ||
| 77 | instruction (.inst) in assembler. */ | ||
| 78 | |||
| 79 | #ifdef __ARMEB__ | ||
| 80 | # define RSEQ_SIG 0xf3def5e7 /* udf #24035 ; 0x5de3 (ARMv6+) */ | ||
| 81 | #else | ||
| 82 | # define RSEQ_SIG 0xe7f5def3 /* udf #24035 ; 0x5de3 */ | ||
| 83 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnueabihf/bits/setjmp.h deleted-36| ... | @@ -1,36 +0,0 @@ | ||
| 1 | /* Copyright (C) 2004-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | /* Define the machine-dependent type `jmp_buf'. ARM EABI version. */ | ||
| 19 | |||
| 20 | #ifndef _BITS_SETJMP_H | ||
| 21 | #define _BITS_SETJMP_H 1 | ||
| 22 | |||
| 23 | #if !defined _SETJMP_H && !defined _PTHREAD_H | ||
| 24 | # error "Never include <bits/setjmp.h> directly; use <setjmp.h> instead." | ||
| 25 | #endif | ||
| 26 | |||
| 27 | #ifndef __ASSEMBLER__ | ||
| 28 | /* The exact set of registers saved may depend on the particular core | ||
| 29 | in use, as some coprocessor registers may need to be saved. The C | ||
| 30 | Library ABI requires that the buffer be 8-byte aligned, and | ||
| 31 | recommends that the buffer contain 64 words. The first 26 words | ||
| 32 | are occupied by sp, lr, v1-v6, sl, fp, and d8-d15. */ | ||
| 33 | typedef int __jmp_buf[64] __attribute__((__aligned__ (8))); | ||
| 34 | #endif | ||
| 35 | |||
| 36 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnueabihf/bits/shmlba.h deleted-29| ... | @@ -1,29 +0,0 @@ | ||
| 1 | /* Define SHMLBA. ARM version. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SHM_H | ||
| 20 | # error "Never use <bits/shmlba.h> directly; include <sys/shm.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | __BEGIN_DECLS | ||
| 24 | |||
| 25 | /* Segment low boundary address multiple. */ | ||
| 26 | #define SHMLBA		(__getpagesize () << 2) | ||
| 27 | extern int __getpagesize (void) __THROW __attribute__ ((__const__)); | ||
| 28 | |||
| 29 | __END_DECLS | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnueabihf/bits/struct_stat.h deleted-139| ... | @@ -1,139 +0,0 @@ | ||
| 1 | /* Definition for struct stat. Linux/arm version. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #if !defined _SYS_STAT_H && !defined _FCNTL_H | ||
| 20 | # error "Never include <bits/struct_stat.h> directly; use <sys/stat.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef _BITS_STRUCT_STAT_H | ||
| 24 | #define _BITS_STRUCT_STAT_H	1 | ||
| 25 | |||
| 26 | #include <bits/endian.h> | ||
| 27 | #include <bits/wordsize.h> | ||
| 28 | |||
| 29 | struct stat | ||
| 30 | { | ||
| 31 | #ifdef __USE_TIME64_REDIRECTS | ||
| 32 | # include <bits/struct_stat_time64_helper.h> | ||
| 33 | #else | ||
| 34 | __dev_t st_dev;			/* Device. */ | ||
| 35 | unsigned short int __pad1; | ||
| 36 | # ifndef __USE_FILE_OFFSET64 | ||
| 37 | __ino_t st_ino;			/* File serial number.	*/ | ||
| 38 | # else | ||
| 39 | __ino_t __st_ino;			/* 32bit file serial number.	*/ | ||
| 40 | # endif | ||
| 41 | __mode_t st_mode;			/* File mode. */ | ||
| 42 | __nlink_t st_nlink;			/* Link count. */ | ||
| 43 | __uid_t st_uid;			/* User ID of the file's owner.	*/ | ||
| 44 | __gid_t st_gid;			/* Group ID of the file's group.*/ | ||
| 45 | __dev_t st_rdev;			/* Device number, if device. */ | ||
| 46 | unsigned short int __pad2; | ||
| 47 | # ifndef __USE_FILE_OFFSET64 | ||
| 48 | __off_t st_size;			/* Size of file, in bytes. */ | ||
| 49 | # else | ||
| 50 | __off64_t st_size;			/* Size of file, in bytes. */ | ||
| 51 | # endif | ||
| 52 | __blksize_t st_blksize;		/* Optimal block size for I/O. */ | ||
| 53 | |||
| 54 | # ifndef __USE_FILE_OFFSET64 | ||
| 55 | __blkcnt_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 56 | # else | ||
| 57 | __blkcnt64_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 58 | # endif | ||
| 59 | # ifdef __USE_XOPEN2K8 | ||
| 60 | /* Nanosecond resolution timestamps are stored in a format | ||
| 61 | equivalent to 'struct timespec'. This is the type used | ||
| 62 | whenever possible but the Unix namespace rules do not allow the | ||
| 63 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 64 | Therefore we have to handle the use of this header in strictly | ||
| 65 | standard-compliant sources special. */ | ||
| 66 | struct timespec st_atim;		/* Time of last access. */ | ||
| 67 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 68 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 69 | # define st_atime st_atim.tv_sec	/* Backward compatibility. */ | ||
| 70 | # define st_mtime st_mtim.tv_sec | ||
| 71 | # define st_ctime st_ctim.tv_sec | ||
| 72 | # else | ||
| 73 | __time_t st_atime;			/* Time of last access. */ | ||
| 74 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 75 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 76 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 77 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 78 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 79 | # endif | ||
| 80 | # ifndef __USE_FILE_OFFSET64 | ||
| 81 | unsigned long int __glibc_reserved4; | ||
| 82 | unsigned long int __glibc_reserved5; | ||
| 83 | # else | ||
| 84 | __ino64_t st_ino;			/* File serial number.	*/ | ||
| 85 | # endif | ||
| 86 | #endif /* __USE_TIME64_REDIRECTS */ | ||
| 87 | }; | ||
| 88 | |||
| 89 | #ifdef __USE_LARGEFILE64 | ||
| 90 | struct stat64 | ||
| 91 | { | ||
| 92 | # ifdef __USE_TIME64_REDIRECTS | ||
| 93 | # include <bits/struct_stat_time64_helper.h> | ||
| 94 | # else | ||
| 95 | __dev_t st_dev;			/* Device. */ | ||
| 96 | unsigned int __pad1; | ||
| 97 | |||
| 98 | __ino_t __st_ino;			/* 32bit file serial number.	*/ | ||
| 99 | __mode_t st_mode;			/* File mode. */ | ||
| 100 | __nlink_t st_nlink;			/* Link count. */ | ||
| 101 | __uid_t st_uid;			/* User ID of the file's owner.	*/ | ||
| 102 | __gid_t st_gid;			/* Group ID of the file's group.*/ | ||
| 103 | __dev_t st_rdev;			/* Device number, if device. */ | ||
| 104 | unsigned int __pad2; | ||
| 105 | __off64_t st_size;			/* Size of file, in bytes. */ | ||
| 106 | __blksize_t st_blksize;		/* Optimal block size for I/O. */ | ||
| 107 | |||
| 108 | __blkcnt64_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 109 | # ifdef __USE_XOPEN2K8 | ||
| 110 | /* Nanosecond resolution timestamps are stored in a format | ||
| 111 | equivalent to 'struct timespec'. This is the type used | ||
| 112 | whenever possible but the Unix namespace rules do not allow the | ||
| 113 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 114 | Therefore we have to handle the use of this header in strictly | ||
| 115 | standard-compliant sources special. */ | ||
| 116 | struct timespec st_atim;		/* Time of last access. */ | ||
| 117 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 118 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 119 | # else | ||
| 120 | __time_t st_atime;			/* Time of last access. */ | ||
| 121 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 122 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 123 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 124 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 125 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 126 | # endif | ||
| 127 | __ino64_t st_ino;			/* File serial number.		*/ | ||
| 128 | # endif /* __USE_TIME64_REDIRECTS */ | ||
| 129 | }; | ||
| 130 | #endif | ||
| 131 | |||
| 132 | /* Tell code we have these members. */ | ||
| 133 | #define	_STATBUF_ST_BLKSIZE | ||
| 134 | #define _STATBUF_ST_RDEV | ||
| 135 | /* Nanosecond resolution time values are supported. */ | ||
| 136 | #define _STATBUF_ST_NSEC | ||
| 137 | |||
| 138 | |||
| 139 | #endif /* _BITS_STRUCT_STAT_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnueabihf/bits/timesize.h deleted-20| ... | @@ -1,20 +0,0 @@ | ||
| 1 | /* Bit size of the time_t type at glibc build time, Linux/ARM. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* Size in bits of the 'time_t' type of the default ABI. */ | ||
| 20 | #define __TIMESIZE	32 | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnueabihf/bits/typesizes.h deleted-74| ... | @@ -1,74 +0,0 @@ | ||
| 1 | /* bits/typesizes.h -- underlying types for *_t. ARM version. | ||
| 2 | Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_TYPES_H | ||
| 20 | # error "Never include <bits/typesizes.h> directly; use <sys/types.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef	_BITS_TYPESIZES_H | ||
| 24 | #define	_BITS_TYPESIZES_H	1 | ||
| 25 | |||
| 26 | /* See <bits/types.h> for the meaning of these macros. This file exists so | ||
| 27 | that <bits/types.h> need not vary across different GNU platforms. */ | ||
| 28 | |||
| 29 | #define __DEV_T_TYPE		__UQUAD_TYPE | ||
| 30 | #define __UID_T_TYPE		__U32_TYPE | ||
| 31 | #define __GID_T_TYPE		__U32_TYPE | ||
| 32 | #define __INO_T_TYPE		__ULONGWORD_TYPE | ||
| 33 | #define __INO64_T_TYPE		__UQUAD_TYPE | ||
| 34 | #define __MODE_T_TYPE		__U32_TYPE | ||
| 35 | #define __NLINK_T_TYPE		__UWORD_TYPE | ||
| 36 | #define __OFF_T_TYPE		__SLONGWORD_TYPE | ||
| 37 | #define __OFF64_T_TYPE		__SQUAD_TYPE | ||
| 38 | #define __PID_T_TYPE		__S32_TYPE | ||
| 39 | #define __RLIM_T_TYPE		__ULONGWORD_TYPE | ||
| 40 | #define __RLIM64_T_TYPE		__UQUAD_TYPE | ||
| 41 | #define	__BLKCNT_T_TYPE		__SLONGWORD_TYPE | ||
| 42 | #define	__BLKCNT64_T_TYPE	__SQUAD_TYPE | ||
| 43 | #define	__FSBLKCNT_T_TYPE	__ULONGWORD_TYPE | ||
| 44 | #define	__FSBLKCNT64_T_TYPE	__UQUAD_TYPE | ||
| 45 | #define	__FSFILCNT_T_TYPE	__ULONGWORD_TYPE | ||
| 46 | #define	__FSFILCNT64_T_TYPE	__UQUAD_TYPE | ||
| 47 | #define	__FSWORD_T_TYPE		__SWORD_TYPE | ||
| 48 | #define	__ID_T_TYPE		__U32_TYPE | ||
| 49 | #define __CLOCK_T_TYPE		__SLONGWORD_TYPE | ||
| 50 | #define __TIME_T_TYPE		__SLONGWORD_TYPE | ||
| 51 | #define __USECONDS_T_TYPE	__U32_TYPE | ||
| 52 | #define __SUSECONDS_T_TYPE	__SLONGWORD_TYPE | ||
| 53 | #define __SUSECONDS64_T_TYPE	__SQUAD_TYPE | ||
| 54 | #define __DADDR_T_TYPE		__S32_TYPE | ||
| 55 | #define __KEY_T_TYPE		__S32_TYPE | ||
| 56 | #define __CLOCKID_T_TYPE	__S32_TYPE | ||
| 57 | #define __TIMER_T_TYPE		void * | ||
| 58 | #define __BLKSIZE_T_TYPE	__SLONGWORD_TYPE | ||
| 59 | #define __FSID_T_TYPE		struct { int __val[2]; } | ||
| 60 | #define __SSIZE_T_TYPE		__SWORD_TYPE | ||
| 61 | #define __SYSCALL_SLONG_TYPE	__SLONGWORD_TYPE | ||
| 62 | #define __SYSCALL_ULONG_TYPE	__ULONGWORD_TYPE | ||
| 63 | #define __CPU_MASK_TYPE 	__ULONGWORD_TYPE | ||
| 64 | |||
| 65 | #define __RLIM_T_MATCHES_RLIM64_T		0 | ||
| 66 | #define __STATFS_MATCHES_STATFS64		0 | ||
| 67 | /* And for getitimer, setitimer and rusage */ | ||
| 68 | #define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64	0 | ||
| 69 | |||
| 70 | /* Number of descriptors that can fit in an `fd_set'. */ | ||
| 71 | #define	__FD_SETSIZE		1024 | ||
| 72 | |||
| 73 | |||
| 74 | #endif /* bits/typesizes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnueabihf/bits/wordsize.h deleted-21| ... | @@ -1,21 +0,0 @@ | ||
| 1 | /* Copyright (C) 1999-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #define __WORDSIZE			32 | ||
| 19 | #define __WORDSIZE_TIME64_COMPAT32	1 | ||
| 20 | #define __WORDSIZE32_SIZE_ULONG		0 | ||
| 21 | #define __WORDSIZE32_PTRDIFF_LONG	0 | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnueabihf/fpu_control.h deleted-75| ... | @@ -1,75 +0,0 @@ | ||
| 1 | /* FPU control word definitions. ARM VFP version. | ||
| 2 | Copyright (C) 2004-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _FPU_CONTROL_H | ||
| 20 | #define _FPU_CONTROL_H | ||
| 21 | |||
| 22 | #if !(defined(_LIBC) && !defined(_LIBC_TEST)) && defined(__SOFTFP__) | ||
| 23 | |||
| 24 | #define _FPU_RESERVED 0xffffffff | ||
| 25 | #define _FPU_DEFAULT 0x00000000 | ||
| 26 | typedef unsigned int fpu_control_t; | ||
| 27 | #define _FPU_GETCW(cw) (cw) = 0 | ||
| 28 | #define _FPU_SETCW(cw) (void) (cw) | ||
| 29 | extern fpu_control_t __fpu_control; | ||
| 30 | |||
| 31 | #else | ||
| 32 | |||
| 33 | /* masking of interrupts */ | ||
| 34 | #define _FPU_MASK_IM	0x00000100	/* invalid operation */ | ||
| 35 | #define _FPU_MASK_ZM	0x00000200	/* divide by zero */ | ||
| 36 | #define _FPU_MASK_OM	0x00000400	/* overflow */ | ||
| 37 | #define _FPU_MASK_UM	0x00000800	/* underflow */ | ||
| 38 | #define _FPU_MASK_PM	0x00001000	/* inexact */ | ||
| 39 | |||
| 40 | #define _FPU_MASK_NZCV	0xf0000000	/* NZCV flags */ | ||
| 41 | #define _FPU_MASK_RM	0x00c00000	/* rounding mode */ | ||
| 42 | #define _FPU_MASK_EXCEPT 0x00001f1f	/* all exception flags */ | ||
| 43 | |||
| 44 | /* Some bits in the FPSCR are not yet defined. They must be preserved when | ||
| 45 | modifying the contents. */ | ||
| 46 | #define _FPU_RESERVED	0x00086060 | ||
| 47 | #define _FPU_DEFAULT 0x00000000 | ||
| 48 | |||
| 49 | /* Default + exceptions enabled. */ | ||
| 50 | #define _FPU_IEEE	(_FPU_DEFAULT | 0x00001f00) | ||
| 51 | |||
| 52 | /* Type of the control word. */ | ||
| 53 | typedef unsigned int fpu_control_t; | ||
| 54 | |||
| 55 | /* Macros for accessing the hardware control word. */ | ||
| 56 | #ifdef __SOFTFP__ | ||
| 57 | /* This is fmrx %0, fpscr. */ | ||
| 58 | # define _FPU_GETCW(cw) \ | ||
| 59 | __asm__ __volatile__ ("mrc p10, 7, %0, cr1, cr0, 0" : "=r" (cw)) | ||
| 60 | /* This is fmxr fpscr, %0. */ | ||
| 61 | # define _FPU_SETCW(cw) \ | ||
| 62 | __asm__ __volatile__ ("mcr p10, 7, %0, cr1, cr0, 0" : : "r" (cw)) | ||
| 63 | #else | ||
| 64 | # define _FPU_GETCW(cw) \ | ||
| 65 | __asm__ __volatile__ ("vmrs %0, fpscr" : "=r" (cw)) | ||
| 66 | # define _FPU_SETCW(cw) \ | ||
| 67 | __asm__ __volatile__ ("vmsr fpscr, %0" : : "r" (cw)) | ||
| 68 | #endif | ||
| 69 | |||
| 70 | /* Default control word set at startup. */ | ||
| 71 | extern fpu_control_t __fpu_control; | ||
| 72 | |||
| 73 | #endif /* __SOFTFP__ */ | ||
| 74 | |||
| 75 | #endif /* _FPU_CONTROL_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnueabihf/gnu/lib-names.h deleted-14| ... | @@ -1,14 +0,0 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | It defines macros to allow user program to find the shared | ||
| 3 | library files which come as part of GNU libc. */ | ||
| 4 | #ifndef __GNU_LIB_NAMES_H | ||
| 5 | #define __GNU_LIB_NAMES_H	1 | ||
| 6 | |||
| 7 | #if !defined __ARM_PCS_VFP | ||
| 8 | # include <gnu/lib-names-soft.h> | ||
| 9 | #endif | ||
| 10 | #if defined __ARM_PCS_VFP | ||
| 11 | # include <gnu/lib-names-hard.h> | ||
| 12 | #endif | ||
| 13 | |||
| 14 | #endif	/* gnu/lib-names.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnueabihf/gnu/stubs.h deleted-11| ... | @@ -1,11 +0,0 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | This file selects the right generated file of `__stub_FUNCTION' macros | ||
| 3 | based on the architecture being compiled for. */ | ||
| 4 | |||
| 5 | |||
| 6 | #if !defined __ARM_PCS_VFP | ||
| 7 | # include <gnu/stubs-soft.h> | ||
| 8 | #endif | ||
| 9 | #if defined __ARM_PCS_VFP | ||
| 10 | # include <gnu/stubs-hard.h> | ||
| 11 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnueabihf/sys/ptrace.h deleted-226| ... | @@ -1,226 +0,0 @@ | ||
| 1 | /* `ptrace' debugger support interface. Linux/ARM version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library; if not, see | ||
| 18 | <https://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifndef _SYS_PTRACE_H | ||
| 21 | #define _SYS_PTRACE_H	1 | ||
| 22 | |||
| 23 | #include <features.h> | ||
| 24 | #include <bits/types.h> | ||
| 25 | |||
| 26 | __BEGIN_DECLS | ||
| 27 | |||
| 28 | /* Type of the REQUEST argument to `ptrace.' */ | ||
| 29 | enum __ptrace_request | ||
| 30 | { | ||
| 31 | /* Indicate that the process making this request should be traced. | ||
| 32 | All signals received by this process can be intercepted by its | ||
| 33 | parent, and its parent can use the other `ptrace' requests. */ | ||
| 34 | PTRACE_TRACEME = 0, | ||
| 35 | #define PT_TRACE_ME PTRACE_TRACEME | ||
| 36 | |||
| 37 | /* Return the word in the process's text space at address ADDR. */ | ||
| 38 | PTRACE_PEEKTEXT = 1, | ||
| 39 | #define PT_READ_I PTRACE_PEEKTEXT | ||
| 40 | |||
| 41 | /* Return the word in the process's data space at address ADDR. */ | ||
| 42 | PTRACE_PEEKDATA = 2, | ||
| 43 | #define PT_READ_D PTRACE_PEEKDATA | ||
| 44 | |||
| 45 | /* Return the word in the process's user area at offset ADDR. */ | ||
| 46 | PTRACE_PEEKUSER = 3, | ||
| 47 | #define PT_READ_U PTRACE_PEEKUSER | ||
| 48 | |||
| 49 | /* Write the word DATA into the process's text space at address ADDR. */ | ||
| 50 | PTRACE_POKETEXT = 4, | ||
| 51 | #define PT_WRITE_I PTRACE_POKETEXT | ||
| 52 | |||
| 53 | /* Write the word DATA into the process's data space at address ADDR. */ | ||
| 54 | PTRACE_POKEDATA = 5, | ||
| 55 | #define PT_WRITE_D PTRACE_POKEDATA | ||
| 56 | |||
| 57 | /* Write the word DATA into the process's user area at offset ADDR. */ | ||
| 58 | PTRACE_POKEUSER = 6, | ||
| 59 | #define PT_WRITE_U PTRACE_POKEUSER | ||
| 60 | |||
| 61 | /* Continue the process. */ | ||
| 62 | PTRACE_CONT = 7, | ||
| 63 | #define PT_CONTINUE PTRACE_CONT | ||
| 64 | |||
| 65 | /* Kill the process. */ | ||
| 66 | PTRACE_KILL = 8, | ||
| 67 | #define PT_KILL PTRACE_KILL | ||
| 68 | |||
| 69 | /* Single step the process. */ | ||
| 70 | PTRACE_SINGLESTEP = 9, | ||
| 71 | #define PT_STEP PTRACE_SINGLESTEP | ||
| 72 | |||
| 73 | /* Get all general purpose registers used by a process. */ | ||
| 74 | PTRACE_GETREGS = 12, | ||
| 75 | #define PT_GETREGS PTRACE_GETREGS | ||
| 76 | |||
| 77 | /* Set all general purpose registers used by a process. */ | ||
| 78 | PTRACE_SETREGS = 13, | ||
| 79 | #define PT_SETREGS PTRACE_SETREGS | ||
| 80 | |||
| 81 | /* Get all floating point registers used by a process. */ | ||
| 82 | PTRACE_GETFPREGS = 14, | ||
| 83 | #define PT_GETFPREGS PTRACE_GETFPREGS | ||
| 84 | |||
| 85 | /* Set all floating point registers used by a process. */ | ||
| 86 | PTRACE_SETFPREGS = 15, | ||
| 87 | #define PT_SETFPREGS PTRACE_SETFPREGS | ||
| 88 | |||
| 89 | /* Attach to a process that is already running. */ | ||
| 90 | PTRACE_ATTACH = 16, | ||
| 91 | #define PT_ATTACH PTRACE_ATTACH | ||
| 92 | |||
| 93 | /* Detach from a process attached to with PTRACE_ATTACH. */ | ||
| 94 | PTRACE_DETACH = 17, | ||
| 95 | #define PT_DETACH PTRACE_DETACH | ||
| 96 | |||
| 97 | /* Get the iWMMXt state of a process. */ | ||
| 98 | PTRACE_GETWMMXREGS = 18, | ||
| 99 | #define PT_GETWMMXREGS PTRACE_GETWMMXREGS | ||
| 100 | |||
| 101 | /* Set the iWMMXt state of a process. */ | ||
| 102 | PTRACE_SETWMMXREGS = 19, | ||
| 103 | #define PT_SETWMMXREGS PTRACE_SETWMMXREGS | ||
| 104 | |||
| 105 | /* Get the thread pointer of a process. */ | ||
| 106 | PTRACE_GET_THREAD_AREA = 22, | ||
| 107 | #define PT_GET_THREAD_AREA PTRACE_GET_THREAD_AREA | ||
| 108 | |||
| 109 | /* Change the syscall number of a process. */ | ||
| 110 | PTRACE_SET_SYSCALL = 23, | ||
| 111 | #define PT_SET_SYSCALL PTRACE_SET_SYSCALL | ||
| 112 | |||
| 113 | /* Continue and stop at the next entry to or return from syscall. */ | ||
| 114 | PTRACE_SYSCALL = 24, | ||
| 115 | #define PT_SYSCALL PTRACE_SYSCALL | ||
| 116 | |||
| 117 | /* Get the Crunch state of a process. */ | ||
| 118 | PTRACE_GETCRUNCHREGS = 25, | ||
| 119 | #define PT_GETCRUNCHREGS PTRACE_GETCRUNCHREGS | ||
| 120 | |||
| 121 | /* Set the Crunch state of a process. */ | ||
| 122 | PTRACE_SETCRUNCHREGS = 26, | ||
| 123 | #define PT_SETCRUNCHREGS PTRACE_SETCRUNCHREGS | ||
| 124 | |||
| 125 | /* Get all VFP registers used by a process. */ | ||
| 126 | PTRACE_GETVFPREGS = 27, | ||
| 127 | #define PT_GETVFPREGS PTRACE_GETVFPREGS | ||
| 128 | |||
| 129 | /* Set all VFP registers used by a process. */ | ||
| 130 | PTRACE_SETVFPREGS = 28, | ||
| 131 | #define PT_SETVFPREGS PTRACE_SETVFPREGS | ||
| 132 | |||
| 133 | /* Get all hardware breakpoint registers. */ | ||
| 134 | PTRACE_GETHBPREGS = 29, | ||
| 135 | #define PT_GETHBPREGS PTRACE_GETHBPREGS | ||
| 136 | |||
| 137 | /* Set all hardware breakpoint registers. */ | ||
| 138 | PTRACE_SETHBPREGS = 30, | ||
| 139 | #define PT_SETHBPREGS PTRACE_SETHBPREGS | ||
| 140 | |||
| 141 | /* Get the ELF fdpic loadmap address. */ | ||
| 142 | PTRACE_GETFDPIC = 31, | ||
| 143 | #define PT_GETFDPIC PTRACE_GETFDPIC | ||
| 144 | |||
| 145 | /* Set ptrace filter options. */ | ||
| 146 | PTRACE_SETOPTIONS = 0x4200, | ||
| 147 | #define PT_SETOPTIONS PTRACE_SETOPTIONS | ||
| 148 | |||
| 149 | /* Get last ptrace message. */ | ||
| 150 | PTRACE_GETEVENTMSG = 0x4201, | ||
| 151 | #define PT_GETEVENTMSG PTRACE_GETEVENTMSG | ||
| 152 | |||
| 153 | /* Get siginfo for process. */ | ||
| 154 | PTRACE_GETSIGINFO = 0x4202, | ||
| 155 | #define PT_GETSIGINFO PTRACE_GETSIGINFO | ||
| 156 | |||
| 157 | /* Set new siginfo for process. */ | ||
| 158 | PTRACE_SETSIGINFO = 0x4203, | ||
| 159 | #define PT_SETSIGINFO PTRACE_SETSIGINFO | ||
| 160 | |||
| 161 | /* Get register content. */ | ||
| 162 | PTRACE_GETREGSET = 0x4204, | ||
| 163 | #define PTRACE_GETREGSET PTRACE_GETREGSET | ||
| 164 | |||
| 165 | /* Set register content. */ | ||
| 166 | PTRACE_SETREGSET = 0x4205, | ||
| 167 | #define PTRACE_SETREGSET PTRACE_SETREGSET | ||
| 168 | |||
| 169 | /* Like PTRACE_ATTACH, but do not force tracee to trap and do not affect | ||
| 170 | signal or group stop state. */ | ||
| 171 | PTRACE_SEIZE = 0x4206, | ||
| 172 | #define PTRACE_SEIZE PTRACE_SEIZE | ||
| 173 | |||
| 174 | /* Trap seized tracee. */ | ||
| 175 | PTRACE_INTERRUPT = 0x4207, | ||
| 176 | #define PTRACE_INTERRUPT PTRACE_INTERRUPT | ||
| 177 | |||
| 178 | /* Wait for next group event. */ | ||
| 179 | PTRACE_LISTEN = 0x4208, | ||
| 180 | #define PTRACE_LISTEN PTRACE_LISTEN | ||
| 181 | |||
| 182 | /* Retrieve siginfo_t structures without removing signals from a queue. */ | ||
| 183 | PTRACE_PEEKSIGINFO = 0x4209, | ||
| 184 | #define PTRACE_PEEKSIGINFO PTRACE_PEEKSIGINFO | ||
| 185 | |||
| 186 | /* Get the mask of blocked signals. */ | ||
| 187 | PTRACE_GETSIGMASK = 0x420a, | ||
| 188 | #define PTRACE_GETSIGMASK PTRACE_GETSIGMASK | ||
| 189 | |||
| 190 | /* Change the mask of blocked signals. */ | ||
| 191 | PTRACE_SETSIGMASK = 0x420b, | ||
| 192 | #define PTRACE_SETSIGMASK PTRACE_SETSIGMASK | ||
| 193 | |||
| 194 | /* Get seccomp BPF filters. */ | ||
| 195 | PTRACE_SECCOMP_GET_FILTER = 0x420c, | ||
| 196 | #define PTRACE_SECCOMP_GET_FILTER PTRACE_SECCOMP_GET_FILTER | ||
| 197 | |||
| 198 | /* Get seccomp BPF filter metadata. */ | ||
| 199 | PTRACE_SECCOMP_GET_METADATA = 0x420d, | ||
| 200 | #define PTRACE_SECCOMP_GET_METADATA PTRACE_SECCOMP_GET_METADATA | ||
| 201 | |||
| 202 | /* Get information about system call. */ | ||
| 203 | PTRACE_GET_SYSCALL_INFO = 0x420e, | ||
| 204 | #define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO | ||
| 205 | |||
| 206 | /* Get rseq configuration information. */ | ||
| 207 | PTRACE_GET_RSEQ_CONFIGURATION = 0x420f, | ||
| 208 | #define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION | ||
| 209 | |||
| 210 | /* Set configuration for syscall user dispatch. */ | ||
| 211 | PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG = 0x4210, | ||
| 212 | #define PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG \ | ||
| 213 | PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG | ||
| 214 | |||
| 215 | /* Get configuration for syscall user dispatch. */ | ||
| 216 | PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG = 0x4211 | ||
| 217 | #define PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG \ | ||
| 218 | PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG | ||
| 219 | }; | ||
| 220 | |||
| 221 | |||
| 222 | #include <bits/ptrace-shared.h> | ||
| 223 | |||
| 224 | __END_DECLS | ||
| 225 | |||
| 226 | #endif /* _SYS_PTRACE_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnueabihf/sys/ucontext.h deleted-144| ... | @@ -1,144 +0,0 @@ | ||
| 1 | /* Copyright (C) 1998-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | /* System V/ARM ABI compliant context switching support. */ | ||
| 19 | |||
| 20 | #ifndef _SYS_UCONTEXT_H | ||
| 21 | #define _SYS_UCONTEXT_H	1 | ||
| 22 | |||
| 23 | #include <features.h> | ||
| 24 | |||
| 25 | #include <bits/types/sigset_t.h> | ||
| 26 | #include <bits/types/stack_t.h> | ||
| 27 | |||
| 28 | |||
| 29 | #ifdef __USE_MISC | ||
| 30 | # define __ctx(fld) fld | ||
| 31 | #else | ||
| 32 | # define __ctx(fld) __ ## fld | ||
| 33 | #endif | ||
| 34 | |||
| 35 | #ifdef __USE_MISC | ||
| 36 | typedef int greg_t; | ||
| 37 | |||
| 38 | /* Number of general registers. */ | ||
| 39 | # define NGREG	18 | ||
| 40 | |||
| 41 | /* Container for all general registers. */ | ||
| 42 | typedef greg_t gregset_t[NGREG]; | ||
| 43 | |||
| 44 | /* Number of each register is the `gregset_t' array. */ | ||
| 45 | enum | ||
| 46 | { | ||
| 47 | REG_R0 = 0, | ||
| 48 | # define REG_R0	REG_R0 | ||
| 49 | REG_R1 = 1, | ||
| 50 | # define REG_R1	REG_R1 | ||
| 51 | REG_R2 = 2, | ||
| 52 | # define REG_R2	REG_R2 | ||
| 53 | REG_R3 = 3, | ||
| 54 | # define REG_R3	REG_R3 | ||
| 55 | REG_R4 = 4, | ||
| 56 | # define REG_R4	REG_R4 | ||
| 57 | REG_R5 = 5, | ||
| 58 | # define REG_R5	REG_R5 | ||
| 59 | REG_R6 = 6, | ||
| 60 | # define REG_R6	REG_R6 | ||
| 61 | REG_R7 = 7, | ||
| 62 | # define REG_R7	REG_R7 | ||
| 63 | REG_R8 = 8, | ||
| 64 | # define REG_R8	REG_R8 | ||
| 65 | REG_R9 = 9, | ||
| 66 | # define REG_R9	REG_R9 | ||
| 67 | REG_R10 = 10, | ||
| 68 | # define REG_R10	REG_R10 | ||
| 69 | REG_R11 = 11, | ||
| 70 | # define REG_R11	REG_R11 | ||
| 71 | REG_R12 = 12, | ||
| 72 | # define REG_R12	REG_R12 | ||
| 73 | REG_R13 = 13, | ||
| 74 | # define REG_R13	REG_R13 | ||
| 75 | REG_R14 = 14, | ||
| 76 | # define REG_R14	REG_R14 | ||
| 77 | REG_R15 = 15 | ||
| 78 | # define REG_R15	REG_R15 | ||
| 79 | }; | ||
| 80 | |||
| 81 | struct _libc_fpstate | ||
| 82 | { | ||
| 83 | struct | ||
| 84 | { | ||
| 85 | unsigned int sign1:1; | ||
| 86 | unsigned int unused:15; | ||
| 87 | unsigned int sign2:1; | ||
| 88 | unsigned int exponent:14; | ||
| 89 | unsigned int j:1; | ||
| 90 | unsigned int mantissa1:31; | ||
| 91 | unsigned int mantissa0:32; | ||
| 92 | } fpregs[8]; | ||
| 93 | unsigned int fpsr:32; | ||
| 94 | unsigned int fpcr:32; | ||
| 95 | unsigned char ftype[8]; | ||
| 96 | unsigned int init_flag; | ||
| 97 | }; | ||
| 98 | /* Structure to describe FPU registers. */ | ||
| 99 | typedef struct _libc_fpstate fpregset_t; | ||
| 100 | #endif | ||
| 101 | |||
| 102 | /* Context to describe whole processor state. This only describes | ||
| 103 | the core registers; coprocessor registers get saved elsewhere | ||
| 104 | (e.g. in uc_regspace, or somewhere unspecified on the stack | ||
| 105 | during non-RT signal handlers). */ | ||
| 106 | typedef struct | ||
| 107 | { | ||
| 108 | unsigned long int __ctx(trap_no); | ||
| 109 | unsigned long int __ctx(error_code); | ||
| 110 | unsigned long int __ctx(oldmask); | ||
| 111 | unsigned long int __ctx(arm_r0); | ||
| 112 | unsigned long int __ctx(arm_r1); | ||
| 113 | unsigned long int __ctx(arm_r2); | ||
| 114 | unsigned long int __ctx(arm_r3); | ||
| 115 | unsigned long int __ctx(arm_r4); | ||
| 116 | unsigned long int __ctx(arm_r5); | ||
| 117 | unsigned long int __ctx(arm_r6); | ||
| 118 | unsigned long int __ctx(arm_r7); | ||
| 119 | unsigned long int __ctx(arm_r8); | ||
| 120 | unsigned long int __ctx(arm_r9); | ||
| 121 | unsigned long int __ctx(arm_r10); | ||
| 122 | unsigned long int __ctx(arm_fp); | ||
| 123 | unsigned long int __ctx(arm_ip); | ||
| 124 | unsigned long int __ctx(arm_sp); | ||
| 125 | unsigned long int __ctx(arm_lr); | ||
| 126 | unsigned long int __ctx(arm_pc); | ||
| 127 | unsigned long int __ctx(arm_cpsr); | ||
| 128 | unsigned long int __ctx(fault_address); | ||
| 129 | } mcontext_t; | ||
| 130 | |||
| 131 | /* Userlevel context. */ | ||
| 132 | typedef struct ucontext_t | ||
| 133 | { | ||
| 134 | unsigned long __ctx(uc_flags); | ||
| 135 | struct ucontext_t *uc_link; | ||
| 136 | stack_t uc_stack; | ||
| 137 | mcontext_t uc_mcontext; | ||
| 138 | sigset_t uc_sigmask; | ||
| 139 | unsigned long __ctx(uc_regspace)[128] __attribute__((__aligned__(8))); | ||
| 140 | } ucontext_t; | ||
| 141 | |||
| 142 | #undef __ctx | ||
| 143 | |||
| 144 | #endif /* sys/ucontext.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-linux-gnueabihf/sys/user.h deleted-71| ... | @@ -1,71 +0,0 @@ | ||
| 1 | /* Copyright (C) 1998-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_USER_H | ||
| 19 | #define _SYS_USER_H	1 | ||
| 20 | |||
| 21 | /* The whole purpose of this file is for GDB and GDB only. Don't read | ||
| 22 | too much into it. Don't use it for anything other than GDB unless | ||
| 23 | you know what you are doing. */ | ||
| 24 | |||
| 25 | struct user_fpregs | ||
| 26 | { | ||
| 27 | struct fp_reg | ||
| 28 | { | ||
| 29 | unsigned int sign1:1; | ||
| 30 | unsigned int unused:15; | ||
| 31 | unsigned int sign2:1; | ||
| 32 | unsigned int exponent:14; | ||
| 33 | unsigned int j:1; | ||
| 34 | unsigned int mantissa1:31; | ||
| 35 | unsigned int mantissa0:32; | ||
| 36 | } fpregs[8]; | ||
| 37 | unsigned int fpsr:32; | ||
| 38 | unsigned int fpcr:32; | ||
| 39 | unsigned char ftype[8]; | ||
| 40 | unsigned int init_flag; | ||
| 41 | }; | ||
| 42 | |||
| 43 | struct user_regs | ||
| 44 | { | ||
| 45 | unsigned long int uregs[18]; | ||
| 46 | }; | ||
| 47 | |||
| 48 | struct user | ||
| 49 | { | ||
| 50 | struct user_regs regs;	/* General registers */ | ||
| 51 | int u_fpvalid;		/* True if math co-processor being used. */ | ||
| 52 | |||
| 53 | unsigned long int u_tsize;	/* Text segment size (pages). */ | ||
| 54 | unsigned long int u_dsize;	/* Data segment size (pages). */ | ||
| 55 | unsigned long int u_ssize;	/* Stack segment size (pages). */ | ||
| 56 | |||
| 57 | unsigned long start_code;	/* Starting virtual address of text. */ | ||
| 58 | unsigned long start_stack;	/* Starting virtual address of stack. */ | ||
| 59 | |||
| 60 | long int signal; 		/* Signal that caused the core dump. */ | ||
| 61 | int reserved;			/* No longer used */ | ||
| 62 | struct user_regs *u_ar0;	/* help gdb to find the general registers. */ | ||
| 63 | |||
| 64 | unsigned long magic;		/* uniquely identify a core file */ | ||
| 65 | char u_comm[32];		/* User command that was responsible */ | ||
| 66 | int u_debugreg[8]; | ||
| 67 | struct user_fpregs u_fp;	/* Floating point registers */ | ||
| 68 | struct user_fpregs *u_fp0;	/* help gdb to find the FP registers. */ | ||
| 69 | }; | ||
| 70 | |||
| 71 | #endif /* sys/user.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-netbsd-eabihf/float.h deleted-63| ... | @@ -1,63 +0,0 @@ | ||
| 1 | /* $NetBSD: float.h,v 1.8 2014/01/29 01:10:36 matt Exp $ */ | ||
| 2 | |||
| 3 | /*- | ||
| 4 | * Copyright (c) 2014 The NetBSD Foundation, Inc. | ||
| 5 | * All rights reserved. | ||
| 6 | * | ||
| 7 | * This code is derived from software contributed to The NetBSD Foundation | ||
| 8 | * by Matt Thomas of 3am Software Foundry. | ||
| 9 | * | ||
| 10 | * Redistribution and use in source and binary forms, with or without | ||
| 11 | * modification, are permitted provided that the following conditions | ||
| 12 | * are met: | ||
| 13 | * 1. Redistributions of source code must retain the above copyright | ||
| 14 | * notice, this list of conditions and the following disclaimer. | ||
| 15 | * 2. Redistributions in binary form must reproduce the above copyright | ||
| 16 | * notice, this list of conditions and the following disclaimer in the | ||
| 17 | * documentation and/or other materials provided with the distribution. | ||
| 18 | * | ||
| 19 | * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS | ||
| 20 | * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED | ||
| 21 | * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR | ||
| 22 | * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS | ||
| 23 | * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR | ||
| 24 | * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF | ||
| 25 | * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS | ||
| 26 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN | ||
| 27 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) | ||
| 28 | * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE | ||
| 29 | * POSSIBILITY OF SUCH DAMAGE. | ||
| 30 | */ | ||
| 31 | |||
| 32 | #ifndef _ARM_FLOAT_H_ | ||
| 33 | #define _ARM_FLOAT_H_ | ||
| 34 | |||
| 35 | #include <sys/cdefs.h> | ||
| 36 | |||
| 37 | #ifdef __ARM_PCS_AAPCS64 | ||
| 38 | |||
| 39 | #define LDBL_MANT_DIG	__LDBL_MANT_DIG__ | ||
| 40 | #define LDBL_DIG	__LDBL_DIG__ | ||
| 41 | #define LDBL_MIN_EXP	__LDBL_MIN_EXP__ | ||
| 42 | #define LDBL_MIN_10_EXP	__LDBL_MIN_10_EXP__ | ||
| 43 | #define LDBL_MAX_EXP	__LDBL_MAX_EXP__ | ||
| 44 | #define LDBL_MAX_10_EXP	__LDBL_MAX_10_EXP__ | ||
| 45 | #define LDBL_EPSILON	__LDBL_EPSILON__ | ||
| 46 | #define LDBL_MIN	__LDBL_MIN__ | ||
| 47 | #define LDBL_MAX	__LDBL_MAX__ | ||
| 48 | |||
| 49 | #endif /* __ARM_PCS_AAPCS64 */ | ||
| 50 | |||
| 51 | #include <sys/float_ieee754.h> | ||
| 52 | |||
| 53 | #if defined(__ARM_PCS_AAPCS64) \ | ||
| 54 | && ((!defined(_ANSI_SOURCE) && !defined(_POSIX_C_SOURCE) \ | ||
| 55 | 	 && !defined(_XOPEN_SOURCE)) \ | ||
| 56 | 	|| (__STDC_VERSION__ - 0) >= 199901L \ | ||
| 57 | 	|| (_POSIX_C_SOURCE - 0) >= 200112L \ | ||
| 58 | 	|| ((_XOPEN_SOURCE - 0) >= 600) \ | ||
| 59 | 	|| defined(_ISOC99_SOURCE) || defined(_NETBSD_SOURCE)) | ||
| 60 | #define DECIMAL_DIG	__DECIMAL_DIG__ | ||
| 61 | #endif /* __ARM_PCS_AAPCS64 && ... */ | ||
| 62 | |||
| 63 | #endif /* !_ARM_FLOAT_H_ */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-netbsd-eabihf/machine/ansi.h deleted-3| ... | @@ -1,3 +0,0 @@ | ||
| 1 | /*	$NetBSD: ansi.h,v 1.18 2019/05/07 03:49:26 kamil Exp $	*/ | ||
| 2 | |||
| 3 | #include <sys/common_ansi.h> | ||
| \ No newline at end of file | |||
lib/libc/include/arm-netbsd-eabihf/machine/aout_machdep.h deleted-59| ... | @@ -1,59 +0,0 @@ | ||
| 1 | /*	$NetBSD: aout_machdep.h,v 1.8 2018/03/17 04:16:09 ryo Exp $	*/ | ||
| 2 | |||
| 3 | /* | ||
| 4 | * Copyright (c) 1994-1996 Mark Brinicombe. | ||
| 5 | * All rights reserved. | ||
| 6 | * | ||
| 7 | * Redistribution and use in source and binary forms, with or without | ||
| 8 | * modification, are permitted provided that the following conditions | ||
| 9 | * are met: | ||
| 10 | * 1. Redistributions of source code must retain the above copyright | ||
| 11 | * notice, this list of conditions and the following disclaimer. | ||
| 12 | * 2. Redistributions in binary form must reproduce the above copyright | ||
| 13 | * notice, this list of conditions and the following disclaimer in the | ||
| 14 | * documentation and/or other materials provided with the distribution. | ||
| 15 | * 3. All advertising materials mentioning features or use of this software | ||
| 16 | * must display the following acknowledgement: | ||
| 17 | *	This product includes software developed by Mark Brinicombe | ||
| 18 | * 4. The name of the author may not be used to endorse or promote | ||
| 19 | * products derived from this software without specific prior written | ||
| 20 | * permission. | ||
| 21 | * | ||
| 22 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED | ||
| 23 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF | ||
| 24 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. | ||
| 25 | * IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, | ||
| 26 | * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES | ||
| 27 | * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR | ||
| 28 | * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) | ||
| 29 | * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT | ||
| 30 | * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY | ||
| 31 | * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | ||
| 32 | * SUCH DAMAGE. | ||
| 33 | */ | ||
| 34 | |||
| 35 | #ifndef _ARM_AOUT_MACHDEP_H_ | ||
| 36 | #define _ARM_AOUT_MACHDEP_H_ | ||
| 37 | |||
| 38 | #define	AOUT_LDPGSZ	4096 | ||
| 39 | |||
| 40 | /* Relocation format. */ | ||
| 41 | |||
| 42 | struct relocation_info_arm6 { | ||
| 43 | 	int r_address;		/* offset in text or data segment */ | ||
| 44 | 	unsigned r_symbolnum:24;/* ordinal number of add symbol */ | ||
| 45 | 	unsigned r_pcrel:1;	/* 1 if value should be pc-relative */ | ||
| 46 | 	unsigned r_length:2;	/* 0=byte, 1=word, 2=long, 3=24bits shifted by 2 */ | ||
| 47 | 	unsigned r_extern:1;	/* 1 if need to add symbol to value */ | ||
| 48 | 	unsigned r_neg:1;	/* 1 if addend is negative */ | ||
| 49 | 	unsigned r_baserel:1;	/* 1 if linkage table relative */ | ||
| 50 | 	unsigned r_jmptable:1;	/* 1 if relocation to jump table */ | ||
| 51 | 	unsigned r_relative:1;	/* 1 if load address relative */ | ||
| 52 | }; | ||
| 53 | |||
| 54 | #define relocation_info relocation_info_arm6 | ||
| 55 | |||
| 56 | /* No special executable format */ | ||
| 57 | #define	cpu_exec_aout_makecmds(a, b)	ENOEXEC | ||
| 58 | |||
| 59 | #endif	/* _ARM_AOUT_MACHDEP_H_ */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-netbsd-eabihf/machine/asm.h deleted-305| ... | @@ -1,305 +0,0 @@ | ||
| 1 | /*	$NetBSD: asm.h,v 1.34 2020/04/23 23:22:41 jakllsch Exp $	*/ | ||
| 2 | |||
| 3 | /*- | ||
| 4 | * Copyright (c) 2014 The NetBSD Foundation, Inc. | ||
| 5 | * All rights reserved. | ||
| 6 | * | ||
| 7 | * This code is derived from software contributed to The NetBSD Foundation | ||
| 8 | * by Matt Thomas of 3am Software Foundry. | ||
| 9 | * | ||
| 10 | * Redistribution and use in source and binary forms, with or without | ||
| 11 | * modification, are permitted provided that the following conditions | ||
| 12 | * are met: | ||
| 13 | * 1. Redistributions of source code must retain the above copyright | ||
| 14 | * notice, this list of conditions and the following disclaimer. | ||
| 15 | * 2. Redistributions in binary form must reproduce the above copyright | ||
| 16 | * notice, this list of conditions and the following disclaimer in the | ||
| 17 | * documentation and/or other materials provided with the distribution. | ||
| 18 | * | ||
| 19 | * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS | ||
| 20 | * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED | ||
| 21 | * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR | ||
| 22 | * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS | ||
| 23 | * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR | ||
| 24 | * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF | ||
| 25 | * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS | ||
| 26 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN | ||
| 27 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) | ||
| 28 | * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE | ||
| 29 | * POSSIBILITY OF SUCH DAMAGE. | ||
| 30 | */ | ||
| 31 | |||
| 32 | /* | ||
| 33 | * Copyright (c) 1990 The Regents of the University of California. | ||
| 34 | * All rights reserved. | ||
| 35 | * | ||
| 36 | * This code is derived from software contributed to Berkeley by | ||
| 37 | * William Jolitz. | ||
| 38 | * | ||
| 39 | * Redistribution and use in source and binary forms, with or without | ||
| 40 | * modification, are permitted provided that the following conditions | ||
| 41 | * are met: | ||
| 42 | * 1. Redistributions of source code must retain the above copyright | ||
| 43 | * notice, this list of conditions and the following disclaimer. | ||
| 44 | * 2. Redistributions in binary form must reproduce the above copyright | ||
| 45 | * notice, this list of conditions and the following disclaimer in the | ||
| 46 | * documentation and/or other materials provided with the distribution. | ||
| 47 | * 3. Neither the name of the University nor the names of its contributors | ||
| 48 | * may be used to endorse or promote products derived from this software | ||
| 49 | * without specific prior written permission. | ||
| 50 | * | ||
| 51 | * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND | ||
| 52 | * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | ||
| 53 | * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | ||
| 54 | * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE | ||
| 55 | * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||
| 56 | * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS | ||
| 57 | * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) | ||
| 58 | * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT | ||
| 59 | * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY | ||
| 60 | * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | ||
| 61 | * SUCH DAMAGE. | ||
| 62 | * | ||
| 63 | *	from: @(#)asm.h	5.5 (Berkeley) 5/7/91 | ||
| 64 | */ | ||
| 65 | |||
| 66 | #ifndef _ARM_ASM_H_ | ||
| 67 | #define _ARM_ASM_H_ | ||
| 68 | |||
| 69 | #include <arm/cdefs.h> | ||
| 70 | #if defined(_KERNEL_OPT) | ||
| 71 | #include "opt_cpuoptions.h" | ||
| 72 | #endif | ||
| 73 | |||
| 74 | #ifdef __thumb__ | ||
| 75 | #define THUMB_INSN(n)	n | ||
| 76 | #else | ||
| 77 | #define THUMB_INSN(n) | ||
| 78 | #endif | ||
| 79 | |||
| 80 | #define	__BIT(n)	(1 << (n)) | ||
| 81 | #define __BITS(hi,lo)	((~((~0)<<((hi)+1)))&((~0)<<(lo))) | ||
| 82 | |||
| 83 | #define __LOWEST_SET_BIT(__mask) ((((__mask) - 1) & (__mask)) ^ (__mask)) | ||
| 84 | #define __SHIFTOUT(__x, __mask) (((__x) & (__mask)) / __LOWEST_SET_BIT(__mask)) | ||
| 85 | #define __SHIFTIN(__x, __mask) ((__x) * __LOWEST_SET_BIT(__mask)) | ||
| 86 | |||
| 87 | #define _C_LABEL(x)	x | ||
| 88 | #define	_ASM_LABEL(x)	x | ||
| 89 | |||
| 90 | #ifdef __STDC__ | ||
| 91 | # define __CONCAT(x,y)	x ## y | ||
| 92 | # define __STRING(x)	#x | ||
| 93 | #else | ||
| 94 | # define __CONCAT(x,y)	x/**/y | ||
| 95 | # define __STRING(x)	"x" | ||
| 96 | #endif | ||
| 97 | |||
| 98 | #ifndef _ALIGN_TEXT | ||
| 99 | # define _ALIGN_TEXT .align 2 | ||
| 100 | #endif | ||
| 101 | |||
| 102 | #ifndef _TEXT_SECTION | ||
| 103 | #define _TEXT_SECTION	.text | ||
| 104 | #endif | ||
| 105 | |||
| 106 | #ifdef __arm__ | ||
| 107 | |||
| 108 | 	.syntax		unified | ||
| 109 | |||
| 110 | /* | ||
| 111 | * gas/arm uses @ as a single comment character and thus cannot be used here | ||
| 112 | * Instead it recognised the # instead of an @ symbols in .type directives | ||
| 113 | * We define a couple of macros so that assembly code will not be dependent | ||
| 114 | * on one or the other. | ||
| 115 | */ | ||
| 116 | #define _ASM_TYPE_FUNCTION	%function | ||
| 117 | #define _ASM_TYPE_OBJECT	%object | ||
| 118 | #define _THUMB_ENTRY(x) \ | ||
| 119 | 	_TEXT_SECTION; _ALIGN_TEXT; .globl x; .type x,_ASM_TYPE_FUNCTION; \ | ||
| 120 | 	.thumb_func; .code 16; x: | ||
| 121 | #define _ARM_ENTRY(x) \ | ||
| 122 | 	_TEXT_SECTION; _ALIGN_TEXT; .globl x; .type x,_ASM_TYPE_FUNCTION; \ | ||
| 123 | 	.code 32; x: | ||
| 124 | #ifdef __thumb__ | ||
| 125 | #define	_ENTRY(x)	_THUMB_ENTRY(x) | ||
| 126 | #else | ||
| 127 | #define	_ENTRY(x)	_ARM_ENTRY(x) | ||
| 128 | #endif | ||
| 129 | #define	_END(x)		.size x,.-x | ||
| 130 | |||
| 131 | #ifdef GPROF | ||
| 132 | # define _PROF_PROLOGUE	\ | ||
| 133 | 	mov ip, lr; bl __mcount | ||
| 134 | #else | ||
| 135 | # define _PROF_PROLOGUE | ||
| 136 | #endif | ||
| 137 | #endif | ||
| 138 | |||
| 139 | #ifdef __aarch64__ | ||
| 140 | #define _ASM_TYPE_FUNCTION	@function | ||
| 141 | #define _ASM_TYPE_OBJECT	@object | ||
| 142 | #define _ENTRY(x) \ | ||
| 143 | 	_TEXT_SECTION; _ALIGN_TEXT; .globl x; .type x,_ASM_TYPE_FUNCTION; x: | ||
| 144 | #define	_END(x)		.size x,.-x | ||
| 145 | |||
| 146 | #ifdef GPROF | ||
| 147 | # define _PROF_PROLOGUE	\ | ||
| 148 | 	stp	x29, x30, [sp, #-16]!;	\ | ||
| 149 | 	mov	fp, sp;			\ | ||
| 150 | 	bl	__mcount; 		\ | ||
| 151 | 	ldp	x29, x30, [sp], #16; | ||
| 152 | #else | ||
| 153 | # define _PROF_PROLOGUE | ||
| 154 | #endif | ||
| 155 | |||
| 156 | #ifdef __PIC__ | ||
| 157 | #define GOTREF(x)		:got:x | ||
| 158 | #define GOTLO12(x)		:got_lo12:x | ||
| 159 | #else | ||
| 160 | #define GOTREF(x)		x | ||
| 161 | #define GOTLO12(x)		:lo12:x | ||
| 162 | #endif | ||
| 163 | #endif | ||
| 164 | |||
| 165 | #ifdef ARMV85_BTI | ||
| 166 | #define	_BTI_PROLOGUE \ | ||
| 167 | 	.byte	0x5F, 0x24, 0x03, 0xD5	/* the "bti c" instruction */ | ||
| 168 | #else | ||
| 169 | #define	_BTI_PROLOGUE		/* nothing */ | ||
| 170 | #endif | ||
| 171 | |||
| 172 | #define	ENTRY(y)		_ENTRY(_C_LABEL(y)); _BTI_PROLOGUE ; _PROF_PROLOGUE | ||
| 173 | #define	ENTRY_NP(y)		_ENTRY(_C_LABEL(y)); _BTI_PROLOGUE | ||
| 174 | #define	ENTRY_NBTI(y)		_ENTRY(_C_LABEL(y)) | ||
| 175 | #define	END(y)			_END(_C_LABEL(y)) | ||
| 176 | #define	ARM_ENTRY(y)		_ARM_ENTRY(_C_LABEL(y)); _PROF_PROLOGUE | ||
| 177 | #define	ARM_ENTRY_NP(y)		_ARM_ENTRY(_C_LABEL(y)) | ||
| 178 | #define	THUMB_ENTRY(y)		_THUMB_ENTRY(_C_LABEL(y)); _PROF_PROLOGUE | ||
| 179 | #define	THUMB_ENTRY_NP(y)	_THUMB_ENTRY(_C_LABEL(y)) | ||
| 180 | #define	ASENTRY(y)		_ENTRY(_ASM_LABEL(y)); _PROF_PROLOGUE | ||
| 181 | #define	ASENTRY_NP(y)		_ENTRY(_ASM_LABEL(y)) | ||
| 182 | #define	ASEND(y)		_END(_ASM_LABEL(y)) | ||
| 183 | #define	ARM_ASENTRY(y)		_ARM_ENTRY(_ASM_LABEL(y)); _PROF_PROLOGUE | ||
| 184 | #define	ARM_ASENTRY_NP(y)	_ARM_ENTRY(_ASM_LABEL(y)) | ||
| 185 | #define	THUMB_ASENTRY(y)	_THUMB_ENTRY(_ASM_LABEL(y)); _PROF_PROLOGUE | ||
| 186 | #define	THUMB_ASENTRY_NP(y)	_THUMB_ENTRY(_ASM_LABEL(y)) | ||
| 187 | |||
| 188 | #define	ASMSTR		.asciz | ||
| 189 | |||
| 190 | #ifdef __PIC__ | ||
| 191 | #define	REL_SYM(a, b)	((a) - (b)) | ||
| 192 | #define	PLT_SYM(x)	x | ||
| 193 | #define	GOT_SYM(x)	PIC_SYM(x, GOT) | ||
| 194 | #define	GOT_GET(x,got,sym)	\ | ||
| 195 | 	ldr	x, sym;		\ | ||
| 196 | 	ldr	x, [x, got] | ||
| 197 | #define	GOT_INIT(got,gotsym,pclabel) \ | ||
| 198 | 	ldr	got, gotsym;	\ | ||
| 199 | 	pclabel: add	got, got, pc | ||
| 200 | #ifdef __thumb__ | ||
| 201 | #define	GOT_INITSYM(gotsym,pclabel) \ | ||
| 202 | 	.align 0;		\ | ||
| 203 | 	gotsym: .word _C_LABEL(_GLOBAL_OFFSET_TABLE_) - (pclabel+4) | ||
| 204 | #else | ||
| 205 | #define	GOT_INITSYM(gotsym,pclabel) \ | ||
| 206 | 	.align 0;		\ | ||
| 207 | 	gotsym: .word _C_LABEL(_GLOBAL_OFFSET_TABLE_) - (pclabel+8) | ||
| 208 | #endif | ||
| 209 | |||
| 210 | #ifdef __STDC__ | ||
| 211 | #define	PIC_SYM(x,y)	x ## ( ## y ## ) | ||
| 212 | #else | ||
| 213 | #define	PIC_SYM(x,y)	x/**/(/**/y/**/) | ||
| 214 | #endif | ||
| 215 | |||
| 216 | #else | ||
| 217 | #define	REL_SYM(a, b)	(a) | ||
| 218 | #define	PLT_SYM(x)	x | ||
| 219 | #define	GOT_SYM(x)	x | ||
| 220 | #define	GOT_GET(x,got,sym)	\ | ||
| 221 | 	ldr	x, sym; | ||
| 222 | #define	GOT_INIT(got,gotsym,pclabel) | ||
| 223 | #define	GOT_INITSYM(gotsym,pclabel) | ||
| 224 | #define	PIC_SYM(x,y)	x | ||
| 225 | #endif	/* __PIC__ */ | ||
| 226 | |||
| 227 | #define RCSID(x)	.pushsection ".ident","MS",%progbits,1;		\ | ||
| 228 | 			.asciz x;					\ | ||
| 229 | 			.popsection | ||
| 230 | |||
| 231 | #define	WEAK_ALIAS(alias,sym)						\ | ||
| 232 | 	.weak alias;							\ | ||
| 233 | 	alias = sym | ||
| 234 | |||
| 235 | /* | ||
| 236 | * STRONG_ALIAS: create a strong alias. | ||
| 237 | */ | ||
| 238 | #define STRONG_ALIAS(alias,sym)						\ | ||
| 239 | 	.globl alias;							\ | ||
| 240 | 	alias = sym | ||
| 241 | |||
| 242 | #ifdef __STDC__ | ||
| 243 | #define	WARN_REFERENCES(sym,msg)					\ | ||
| 244 | 	.pushsection .gnu.warning. ## sym;				\ | ||
| 245 | 	.ascii msg;							\ | ||
| 246 | 	.popsection | ||
| 247 | #else | ||
| 248 | #define	WARN_REFERENCES(sym,msg)					\ | ||
| 249 | 	.pushsection .gnu.warning./**/sym;				\ | ||
| 250 | 	.ascii msg;							\ | ||
| 251 | 	.popsection | ||
| 252 | #endif /* __STDC__ */ | ||
| 253 | |||
| 254 | #ifdef __thumb__ | ||
| 255 | # define XPUSH		push | ||
| 256 | # define XPOP		pop | ||
| 257 | # define XPOPRET	pop	{pc} | ||
| 258 | #else | ||
| 259 | # define XPUSH		stmfd	sp!, | ||
| 260 | # define XPOP		ldmfd	sp!, | ||
| 261 | # ifdef _ARM_ARCH_5 | ||
| 262 | # define XPOPRET	ldmfd	sp!, {pc} | ||
| 263 | # else | ||
| 264 | # define XPOPRET	ldmfd	sp!, {lr}; mov pc, lr | ||
| 265 | # endif | ||
| 266 | #endif | ||
| 267 | |||
| 268 | #if defined(__aarch64__) | ||
| 269 | # define RET		ret | ||
| 270 | #elif defined (_ARM_ARCH_4T) | ||
| 271 | # define RET		bx		lr | ||
| 272 | # define RETr(r)	bx		r | ||
| 273 | # if defined(__thumb__) | ||
| 274 | # if defined(_ARM_ARCH_7) | ||
| 275 | # define RETc(c)	it c; __CONCAT(bx,c)	lr | ||
| 276 | # endif | ||
| 277 | # else | ||
| 278 | # define RETc(c)	__CONCAT(bx,c)	lr | ||
| 279 | # endif | ||
| 280 | #else | ||
| 281 | # define RET		mov		pc, lr | ||
| 282 | # define RETr(r)	mov		pc, r | ||
| 283 | # define RETc(c)	__CONCAT(mov,c)	pc, lr | ||
| 284 | #endif | ||
| 285 | |||
| 286 | #ifdef _ARM_ARCH_7 | ||
| 287 | #define KMODTRAMPOLINE(n)			\ | ||
| 288 | _ENTRY(__wrap_ ## n)				\ | ||
| 289 | 	movw	ip, #:lower16:n;	\ | ||
| 290 | 	movt	ip, #:upper16:n;	\ | ||
| 291 | 	bx	ip | ||
| 292 | #elif defined(_ARM_ARCH_4T) | ||
| 293 | #define KMODTRAMPOLINE(n)	\ | ||
| 294 | _ENTRY(__wrap_ ## n)		\ | ||
| 295 | 	ldr	ip, [pc];	\ | ||
| 296 | 	bx	ip;		\ | ||
| 297 | 	.word	n | ||
| 298 | #else | ||
| 299 | #define KMODTRAMPOLINE(n)	\ | ||
| 300 | _ENTRY(__wrap_ ## n)		\ | ||
| 301 | 	ldr	pc, [pc, #-4];	\ | ||
| 302 | 	.word	n | ||
| 303 | #endif | ||
| 304 | |||
| 305 | #endif /* !_ARM_ASM_H_ */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-netbsd-eabihf/machine/bswap.h deleted-15| ... | @@ -1,15 +0,0 @@ | ||
| 1 | /* $NetBSD: bswap.h,v 1.6 2014/01/29 01:36:43 matt Exp $ */ | ||
| 2 | |||
| 3 | #ifndef _ARM_BSWAP_H_ | ||
| 4 | #define	_ARM_BSWAP_H_ | ||
| 5 | |||
| 6 | #ifdef __aarch64__ | ||
| 7 | #include <aarch64/byte_swap.h> | ||
| 8 | #else | ||
| 9 | #include <arm/byte_swap.h> | ||
| 10 | #endif | ||
| 11 | |||
| 12 | #define __BSWAP_RENAME | ||
| 13 | #include <sys/bswap.h> | ||
| 14 | |||
| 15 | #endif /* !_ARM_BSWAP_H_ */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-netbsd-eabihf/machine/byte_swap.h deleted-121| ... | @@ -1,121 +0,0 @@ | ||
| 1 | /*	$NetBSD: byte_swap.h,v 1.16 2017/01/17 11:08:50 rin Exp $	*/ | ||
| 2 | |||
| 3 | /*- | ||
| 4 | * Copyright (c) 1997, 1999, 2002 The NetBSD Foundation, Inc. | ||
| 5 | * All rights reserved. | ||
| 6 | * | ||
| 7 | * This code is derived from software contributed to The NetBSD Foundation | ||
| 8 | * by Charles M. Hannum, Neil A. Carson, and Jason R. Thorpe. | ||
| 9 | * | ||
| 10 | * Redistribution and use in source and binary forms, with or without | ||
| 11 | * modification, are permitted provided that the following conditions | ||
| 12 | * are met: | ||
| 13 | * 1. Redistributions of source code must retain the above copyright | ||
| 14 | * notice, this list of conditions and the following disclaimer. | ||
| 15 | * 2. Redistributions in binary form must reproduce the above copyright | ||
| 16 | * notice, this list of conditions and the following disclaimer in the | ||
| 17 | * documentation and/or other materials provided with the distribution. | ||
| 18 | * | ||
| 19 | * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS | ||
| 20 | * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED | ||
| 21 | * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR | ||
| 22 | * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS | ||
| 23 | * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR | ||
| 24 | * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF | ||
| 25 | * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS | ||
| 26 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN | ||
| 27 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) | ||
| 28 | * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE | ||
| 29 | * POSSIBILITY OF SUCH DAMAGE. | ||
| 30 | */ | ||
| 31 | |||
| 32 | #ifndef _ARM_BYTE_SWAP_H_ | ||
| 33 | #define	_ARM_BYTE_SWAP_H_ | ||
| 34 | |||
| 35 | #ifdef _LOCORE | ||
| 36 | |||
| 37 | #if defined(_ARM_ARCH_6) || defined(_ARM_ARCH_7) | ||
| 38 | |||
| 39 | #define	BSWAP16(_src, _dst, _tmp)		\ | ||
| 40 | 	rev16	_dst, _src | ||
| 41 | #define	BSWAP32(_src, _dst, _tmp)		\ | ||
| 42 | 	rev	_dst, _src | ||
| 43 | |||
| 44 | #else | ||
| 45 | |||
| 46 | #define	BSWAP16(_src, _dst, _tmp)		\ | ||
| 47 | 	mov	_tmp, _src, ror #8		;\ | ||
| 48 | 	orr	_tmp, _tmp, _tmp, lsr #16	;\ | ||
| 49 | 	bic	_dst, _tmp, _tmp, lsl #16 | ||
| 50 | |||
| 51 | #define	BSWAP32(_src, _dst, _tmp)		\ | ||
| 52 | 	eor	_tmp, _src, _src, ror #16	;\ | ||
| 53 | 	bic	_tmp, _tmp, #0x00FF0000		;\ | ||
| 54 | 	mov	_dst, _src, ror #8		;\ | ||
| 55 | 	eor	_dst, _dst, _tmp, lsr #8 | ||
| 56 | |||
| 57 | #endif | ||
| 58 | |||
| 59 | |||
| 60 | #else | ||
| 61 | |||
| 62 | #ifdef __GNUC__ | ||
| 63 | #include <sys/types.h> | ||
| 64 | __BEGIN_DECLS | ||
| 65 | |||
| 66 | #define	__BYTE_SWAP_U32_VARIABLE __byte_swap_u32_variable | ||
| 67 | static __inline uint32_t | ||
| 68 | __byte_swap_u32_variable(uint32_t v) | ||
| 69 | { | ||
| 70 | 	uint32_t t1; | ||
| 71 | |||
| 72 | #ifdef _ARM_ARCH_6 | ||
| 73 | 	if (!__builtin_constant_p(v)) { | ||
| 74 | 		__asm("rev\t%0, %1" : "=r" (v) : "0" (v)); | ||
| 75 | 		return v; | ||
| 76 | 	} | ||
| 77 | #endif | ||
| 78 | |||
| 79 | 	t1 = v ^ ((v << 16) | (v >> 16)); | ||
| 80 | 	t1 &= 0xff00ffffU; | ||
| 81 | 	v = (v >> 8) | (v << 24); | ||
| 82 | 	v ^= (t1 >> 8); | ||
| 83 | |||
| 84 | 	return v; | ||
| 85 | } | ||
| 86 | |||
| 87 | #define	__BYTE_SWAP_U16_VARIABLE __byte_swap_u16_variable | ||
| 88 | static __inline uint16_t | ||
| 89 | __byte_swap_u16_variable(uint16_t v) | ||
| 90 | { | ||
| 91 | |||
| 92 | #ifdef _ARM_ARCH_6 | ||
| 93 | 	if (!__builtin_constant_p(v)) { | ||
| 94 | 		uint32_t v32 = v; | ||
| 95 | 		__asm("rev16\t%0, %1" : "=r" (v32) : "0" (v32)); | ||
| 96 | 		return (uint16_t)v32; | ||
| 97 | 	} | ||
| 98 | #elif !defined(__thumb__) && 0	/* gcc produces decent code for this */ | ||
| 99 | 	if (!__builtin_constant_p(v)) { | ||
| 100 | 		uint32_t v0 = v; | ||
| 101 | 		__asm volatile( | ||
| 102 | 			"mov	%0, %1, ror #8\n" | ||
| 103 | 			"orr	%0, %0, %0, lsr #16\n" | ||
| 104 | 			"bic	%0, %0, %0, lsl #16" | ||
| 105 | 		: "=&r" (v0) | ||
| 106 | 		: "0" (v0)); | ||
| 107 | 		return (uint16_t)v0; | ||
| 108 | 	} | ||
| 109 | #endif | ||
| 110 | 	v &= 0xffff; | ||
| 111 | 	v = (uint16_t)((v >> 8) | (v << 8)); | ||
| 112 | |||
| 113 | 	return v; | ||
| 114 | } | ||
| 115 | |||
| 116 | __END_DECLS | ||
| 117 | #endif | ||
| 118 | |||
| 119 | #endif	/* _LOCORE */ | ||
| 120 | |||
| 121 | #endif /* _ARM_BYTE_SWAP_H_ */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-netbsd-eabihf/machine/cdefs.h deleted-70| ... | @@ -1,70 +0,0 @@ | ||
| 1 | /*	$NetBSD: cdefs.h,v 1.19 2020/12/01 02:43:14 rin Exp $	*/ | ||
| 2 | |||
| 3 | #ifndef	_ARM_CDEFS_H_ | ||
| 4 | #define	_ARM_CDEFS_H_ | ||
| 5 | |||
| 6 | #ifndef __lint__ | ||
| 7 | #if (__GNUC__ == 4 && __GNUC_MINOR__ < 1) || __GNUC__ < 4 | ||
| 8 | #error GCC 4.1 or compatible required. | ||
| 9 | #endif | ||
| 10 | #endif | ||
| 11 | |||
| 12 | |||
| 13 | #if defined (__ARM_ARCH_8A__) || defined (__ARM_ARCH_8A) || \ | ||
| 14 | __ARM_ARCH == 8 | ||
| 15 | 	/* __ARM_ARCH_8A__ is a typo */ | ||
| 16 | #define _ARM_ARCH_8 | ||
| 17 | #endif | ||
| 18 | |||
| 19 | #if defined (_ARM_ARCH_8) || defined (__ARM_ARCH_7__) || \ | ||
| 20 | defined (__ARM_ARCH_7A__) || defined (__ARM_ARCH_7R__) || \ | ||
| 21 | defined (__ARM_ARCH_7M__) || defined (__ARM_ARCH_7EM__) | ||
| 22 | 	/* 7R, 7M, 7EM are for non MMU arms */ | ||
| 23 | #define _ARM_ARCH_7 | ||
| 24 | #endif | ||
| 25 | |||
| 26 | #if defined (_ARM_ARCH_7) || defined (__ARM_ARCH_6T2__) | ||
| 27 | #define _ARM_ARCH_T2		/* Thumb2 */ | ||
| 28 | #endif | ||
| 29 | |||
| 30 | #if defined (_ARM_ARCH_T2) || defined (__ARM_ARCH_6__) || \ | ||
| 31 | defined (__ARM_ARCH_6J__) || \ | ||
| 32 | defined (__ARM_ARCH_6K__) || defined (__ARM_ARCH_6KZ__) || \ | ||
| 33 | defined (__ARM_ARCH_6Z__) || defined (__ARM_ARCH_6ZK__) || \ | ||
| 34 | defined (__ARM_ARCH_6ZM__) | ||
| 35 | #define _ARM_ARCH_6 | ||
| 36 | #endif | ||
| 37 | |||
| 38 | #if defined (_ARM_ARCH_6) || defined (__ARM_ARCH_5T__) || \ | ||
| 39 | defined (__ARM_ARCH_5TE__) || defined (__ARM_ARCH_5TEJ__) | ||
| 40 | #define _ARM_ARCH_5T | ||
| 41 | #endif | ||
| 42 | |||
| 43 | #if defined (_ARM_ARCH_6) || defined (_ARM_ARCH_5T) || defined (__ARM_ARCH_5__) | ||
| 44 | #define _ARM_ARCH_5 | ||
| 45 | #endif | ||
| 46 | |||
| 47 | #if defined (_ARM_ARCH_5) || defined (__ARM_ARCH_4T__) | ||
| 48 | #define _ARM_ARCH_4T | ||
| 49 | #endif | ||
| 50 | |||
| 51 | #if defined (_ARM_ARCH_T2) || \ | ||
| 52 | (!defined (__thumb__) && \ | ||
| 53 | (defined (_ARM_ARCH_6) || defined (__ARM_ARCH_5TE__) || \ | ||
| 54 | defined (__ARM_ARCH_5TEJ__))) | ||
| 55 | #define	_ARM_ARCH_DWORD_OK | ||
| 56 | #endif | ||
| 57 | |||
| 58 | #if defined (__ARMEB__) && defined (_ARM_ARCH_6) | ||
| 59 | #define	_ARM_ARCH_BE8 | ||
| 60 | #endif | ||
| 61 | |||
| 62 | #if defined(__ARM_PCS_AAPCS64) | ||
| 63 | #define __ALIGNBYTES		(sizeof(__int128_t) - 1) | ||
| 64 | #elif defined(__ARM_EABI__) | ||
| 65 | #define __ALIGNBYTES		(sizeof(long long) - 1) | ||
| 66 | #else | ||
| 67 | #define __ALIGNBYTES		(sizeof(int) - 1) | ||
| 68 | #endif | ||
| 69 | |||
| 70 | #endif /* !_ARM_CDEFS_H_ */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-netbsd-eabihf/machine/cpu.h deleted-399| ... | @@ -1,399 +0,0 @@ | ||
| 1 | /*	$NetBSD: cpu.h,v 1.123.4.1 2023/08/09 17:42:01 martin Exp $	*/ | ||
| 2 | |||
| 3 | /* | ||
| 4 | * Copyright (c) 1994-1996 Mark Brinicombe. | ||
| 5 | * Copyright (c) 1994 Brini. | ||
| 6 | * All rights reserved. | ||
| 7 | * | ||
| 8 | * This code is derived from software written for Brini by Mark Brinicombe | ||
| 9 | * | ||
| 10 | * Redistribution and use in source and binary forms, with or without | ||
| 11 | * modification, are permitted provided that the following conditions | ||
| 12 | * are met: | ||
| 13 | * 1. Redistributions of source code must retain the above copyright | ||
| 14 | * notice, this list of conditions and the following disclaimer. | ||
| 15 | * 2. Redistributions in binary form must reproduce the above copyright | ||
| 16 | * notice, this list of conditions and the following disclaimer in the | ||
| 17 | * documentation and/or other materials provided with the distribution. | ||
| 18 | * 3. All advertising materials mentioning features or use of this software | ||
| 19 | * must display the following acknowledgement: | ||
| 20 | *	This product includes software developed by Brini. | ||
| 21 | * 4. The name of the company nor the name of the author may be used to | ||
| 22 | * endorse or promote products derived from this software without specific | ||
| 23 | * prior written permission. | ||
| 24 | * | ||
| 25 | * THIS SOFTWARE IS PROVIDED BY BRINI ``AS IS'' AND ANY EXPRESS OR IMPLIED | ||
| 26 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF | ||
| 27 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. | ||
| 28 | * IN NO EVENT SHALL BRINI OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, | ||
| 29 | * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES | ||
| 30 | * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR | ||
| 31 | * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) | ||
| 32 | * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT | ||
| 33 | * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY | ||
| 34 | * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | ||
| 35 | * SUCH DAMAGE. | ||
| 36 | * | ||
| 37 | * RiscBSD kernel project | ||
| 38 | * | ||
| 39 | * cpu.h | ||
| 40 | * | ||
| 41 | * CPU specific symbols | ||
| 42 | * | ||
| 43 | * Created : 18/09/94 | ||
| 44 | * | ||
| 45 | * Based on kate/katelib/arm6.h | ||
| 46 | */ | ||
| 47 | |||
| 48 | #ifndef _ARM_CPU_H_ | ||
| 49 | #define _ARM_CPU_H_ | ||
| 50 | |||
| 51 | #ifdef _KERNEL | ||
| 52 | #ifndef _LOCORE | ||
| 53 | |||
| 54 | typedef unsigned long mpidr_t; | ||
| 55 | |||
| 56 | #ifdef MULTIPROCESSOR | ||
| 57 | extern u_int arm_cpu_max; | ||
| 58 | extern mpidr_t cpu_mpidr[]; | ||
| 59 | |||
| 60 | void cpu_init_secondary_processor(int); | ||
| 61 | void cpu_boot_secondary_processors(void); | ||
| 62 | void cpu_mpstart(void); | ||
| 63 | bool cpu_hatched_p(u_int); | ||
| 64 | |||
| 65 | void cpu_clr_mbox(int); | ||
| 66 | void cpu_set_hatched(int); | ||
| 67 | |||
| 68 | #endif | ||
| 69 | |||
| 70 | struct proc; | ||
| 71 | |||
| 72 | void	cpu_proc_fork(struct proc *, struct proc *); | ||
| 73 | |||
| 74 | #endif	/* !_LOCORE */ | ||
| 75 | #endif	/* _KERNEL */ | ||
| 76 | |||
| 77 | #ifdef __arm__ | ||
| 78 | |||
| 79 | /* | ||
| 80 | * User-visible definitions | ||
| 81 | */ | ||
| 82 | |||
| 83 | /* CTL_MACHDEP definitions. */ | ||
| 84 | #define	CPU_DEBUG		1	/* int: misc kernel debug control */ | ||
| 85 | #define	CPU_BOOTED_DEVICE	2	/* string: device we booted from */ | ||
| 86 | #define	CPU_BOOTED_KERNEL	3	/* string: kernel we booted */ | ||
| 87 | #define	CPU_CONSDEV		4	/* struct: dev_t of our console */ | ||
| 88 | #define	CPU_POWERSAVE		5	/* int: use CPU powersave mode */ | ||
| 89 | |||
| 90 | #if defined(_KERNEL) || defined(_KMEMUSER) | ||
| 91 | |||
| 92 | /* | ||
| 93 | * Kernel-only definitions | ||
| 94 | */ | ||
| 95 | |||
| 96 | #if !defined(_MODULE) && defined(_KERNEL_OPT) | ||
| 97 | #include "opt_gprof.h" | ||
| 98 | #include "opt_multiprocessor.h" | ||
| 99 | #include "opt_cpuoptions.h" | ||
| 100 | #include "opt_lockdebug.h" | ||
| 101 | #include "opt_cputypes.h" | ||
| 102 | #endif /* !_MODULE && _KERNEL_OPT */ | ||
| 103 | |||
| 104 | #ifndef _LOCORE | ||
| 105 | #if defined(TPIDRPRW_IS_CURLWP) || defined(TPIDRPRW_IS_CURCPU) | ||
| 106 | #include <arm/armreg.h> | ||
| 107 | #endif /* TPIDRPRW_IS_CURLWP || TPIDRPRW_IS_CURCPU */ | ||
| 108 | |||
| 109 | /* 1 == use cpu_sleep(), 0 == don't */ | ||
| 110 | extern int cpu_do_powersave; | ||
| 111 | extern int cpu_fpu_present; | ||
| 112 | |||
| 113 | /* All the CLKF_* macros take a struct clockframe * as an argument. */ | ||
| 114 | |||
| 115 | /* | ||
| 116 | * CLKF_USERMODE: Return TRUE/FALSE (1/0) depending on whether the | ||
| 117 | * frame came from USR mode or not. | ||
| 118 | */ | ||
| 119 | #define CLKF_USERMODE(cf) (((cf)->cf_tf.tf_spsr & PSR_MODE) == PSR_USR32_MODE) | ||
| 120 | |||
| 121 | /* | ||
| 122 | * CLKF_INTR: True if we took the interrupt from inside another | ||
| 123 | * interrupt handler. | ||
| 124 | */ | ||
| 125 | #if !defined(__ARM_EABI__) | ||
| 126 | /* Hack to treat FPE time as interrupt time so we can measure it */ | ||
| 127 | #define CLKF_INTR(cf)						\ | ||
| 128 | 	((curcpu()->ci_intr_depth > 1) ||			\ | ||
| 129 | 	 ((cf)->cf_tf.tf_spsr & PSR_MODE) == PSR_UND32_MODE) | ||
| 130 | #else | ||
| 131 | #define CLKF_INTR(cf)	((void)(cf), curcpu()->ci_intr_depth > 1) | ||
| 132 | #endif | ||
| 133 | |||
| 134 | /* | ||
| 135 | * CLKF_PC: Extract the program counter from a clockframe | ||
| 136 | */ | ||
| 137 | #define CLKF_PC(frame)		(frame->cf_tf.tf_pc) | ||
| 138 | |||
| 139 | /* | ||
| 140 | * LWP_PC: Find out the program counter for the given lwp. | ||
| 141 | */ | ||
| 142 | #define LWP_PC(l)		(lwp_trapframe(l)->tf_pc) | ||
| 143 | |||
| 144 | /* | ||
| 145 | * Per-CPU information. For now we assume one CPU. | ||
| 146 | */ | ||
| 147 | #ifdef _KERNEL | ||
| 148 | static inline int curcpl(void); | ||
| 149 | static inline void set_curcpl(int); | ||
| 150 | static inline void cpu_dosoftints(void); | ||
| 151 | #endif | ||
| 152 | |||
| 153 | #include <sys/param.h> | ||
| 154 | |||
| 155 | #ifdef _KMEMUSER | ||
| 156 | #include <sys/intr.h> | ||
| 157 | #endif | ||
| 158 | #include <sys/atomic.h> | ||
| 159 | #include <sys/cpu_data.h> | ||
| 160 | #include <sys/device_if.h> | ||
| 161 | #include <sys/evcnt.h> | ||
| 162 | |||
| 163 | /* | ||
| 164 | * Cache info variables. | ||
| 165 | */ | ||
| 166 | #define	CACHE_TYPE_VIVT		0 | ||
| 167 | #define	CACHE_TYPE_xxPT		1 | ||
| 168 | #define	CACHE_TYPE_VIPT		1 | ||
| 169 | #define	CACHE_TYPE_PIxx		2 | ||
| 170 | #define	CACHE_TYPE_PIPT		3 | ||
| 171 | |||
| 172 | /* PRIMARY CACHE VARIABLES */ | ||
| 173 | struct arm_cache_info { | ||
| 174 | 	u_int icache_size; | ||
| 175 | 	u_int icache_line_size; | ||
| 176 | 	u_int icache_ways; | ||
| 177 | 	u_int icache_way_size; | ||
| 178 | 	u_int icache_sets; | ||
| 179 | |||
| 180 | 	u_int dcache_size; | ||
| 181 | 	u_int dcache_line_size; | ||
| 182 | 	u_int dcache_ways; | ||
| 183 | 	u_int dcache_way_size; | ||
| 184 | 	u_int dcache_sets; | ||
| 185 | |||
| 186 | 	uint8_t cache_type; | ||
| 187 | 	bool cache_unified; | ||
| 188 | 	uint8_t icache_type; | ||
| 189 | 	uint8_t dcache_type; | ||
| 190 | }; | ||
| 191 | |||
| 192 | struct cpu_info { | ||
| 193 | 	struct cpu_data	ci_data;	/* MI per-cpu data */ | ||
| 194 | 	device_t	ci_dev;		/* Device corresponding to this CPU */ | ||
| 195 | 	cpuid_t		ci_cpuid; | ||
| 196 | 	uint32_t	ci_arm_cpuid;	/* aggregate CPU id */ | ||
| 197 | 	uint32_t	ci_arm_cputype;	/* CPU type */ | ||
| 198 | 	uint32_t	ci_arm_cpurev;	/* CPU revision */ | ||
| 199 | 	uint32_t	ci_ctrl;	/* The CPU control register */ | ||
| 200 | |||
| 201 | 	/* | ||
| 202 | 	 * the following are in their own cache line, as they are stored to | ||
| 203 | 	 * regularly by remote CPUs; when they were mixed with other fields | ||
| 204 | 	 * we observed frequent cache misses. | ||
| 205 | 	 */ | ||
| 206 | 	int		ci_want_resched __aligned(COHERENCY_UNIT); | ||
| 207 | 					/* resched() was called */ | ||
| 208 | 	lwp_t *		ci_curlwp __aligned(COHERENCY_UNIT); | ||
| 209 | 					/* current lwp */ | ||
| 210 | 	lwp_t *		ci_onproc;	/* current user LWP / kthread */ | ||
| 211 | |||
| 212 | 	/* | ||
| 213 | 	 * largely CPU-private. | ||
| 214 | 	 */ | ||
| 215 | 	lwp_t *		ci_softlwps[SOFTINT_COUNT] __aligned(COHERENCY_UNIT); | ||
| 216 | |||
| 217 | 	struct cpu_softc * | ||
| 218 | 			ci_softc;	/* platform softc */ | ||
| 219 | |||
| 220 | 	int		ci_cpl;		/* current processor level (spl) */ | ||
| 221 | 	volatile int	ci_hwpl;	/* current hardware priority */ | ||
| 222 | 	int		ci_kfpu_spl; | ||
| 223 | |||
| 224 | 	volatile u_int	ci_intr_depth;	/* */ | ||
| 225 | 	volatile u_int	ci_softints; | ||
| 226 | 	volatile uint32_t ci_blocked_pics; | ||
| 227 | 	volatile uint32_t ci_pending_pics; | ||
| 228 | 	volatile uint32_t ci_pending_ipls; | ||
| 229 | |||
| 230 | 	lwp_t *		ci_lastlwp;	/* last lwp */ | ||
| 231 | |||
| 232 | 	struct evcnt	ci_arm700bugcount; | ||
| 233 | 	int32_t		ci_mtx_count; | ||
| 234 | 	int		ci_mtx_oldspl; | ||
| 235 | 	register_t	ci_undefsave[3]; | ||
| 236 | 	uint32_t	ci_vfp_id; | ||
| 237 | 	uint64_t	ci_lastintr; | ||
| 238 | |||
| 239 | 	struct pmap_tlb_info * | ||
| 240 | 			ci_tlb_info; | ||
| 241 | 	struct pmap *	ci_pmap_lastuser; | ||
| 242 | 	struct pmap *	ci_pmap_cur; | ||
| 243 | 	tlb_asid_t	ci_pmap_asid_cur; | ||
| 244 | |||
| 245 | 	struct trapframe * | ||
| 246 | 			ci_ddb_regs; | ||
| 247 | |||
| 248 | 	struct evcnt	ci_abt_evs[16]; | ||
| 249 | 	struct evcnt	ci_und_ev; | ||
| 250 | 	struct evcnt	ci_und_cp15_ev; | ||
| 251 | 	struct evcnt	ci_vfp_evs[3]; | ||
| 252 | |||
| 253 | 	uint32_t	ci_midr; | ||
| 254 | 	uint32_t	ci_actlr; | ||
| 255 | 	uint32_t	ci_revidr; | ||
| 256 | 	uint32_t	ci_mpidr; | ||
| 257 | 	uint32_t	ci_mvfr[2]; | ||
| 258 | |||
| 259 | 	uint32_t	ci_capacity_dmips_mhz; | ||
| 260 | |||
| 261 | 	struct arm_cache_info | ||
| 262 | 			ci_cacheinfo; | ||
| 263 | |||
| 264 | #if defined(GPROF) && defined(MULTIPROCESSOR) | ||
| 265 | 	struct gmonparam *ci_gmon;	/* MI per-cpu GPROF */ | ||
| 266 | #endif | ||
| 267 | }; | ||
| 268 | |||
| 269 | extern struct cpu_info cpu_info_store[]; | ||
| 270 | |||
| 271 | struct lwp *arm_curlwp(void); | ||
| 272 | struct cpu_info *arm_curcpu(void); | ||
| 273 | |||
| 274 | #ifdef _KERNEL | ||
| 275 | #if defined(_MODULE) | ||
| 276 | |||
| 277 | #define	curlwp		arm_curlwp() | ||
| 278 | #define curcpu()	arm_curcpu() | ||
| 279 | |||
| 280 | #elif defined(TPIDRPRW_IS_CURLWP) | ||
| 281 | static inline struct lwp * | ||
| 282 | _curlwp(void) | ||
| 283 | { | ||
| 284 | 	return (struct lwp *) armreg_tpidrprw_read(); | ||
| 285 | } | ||
| 286 | |||
| 287 | static inline void | ||
| 288 | _curlwp_set(struct lwp *l) | ||
| 289 | { | ||
| 290 | 	armreg_tpidrprw_write((uintptr_t)l); | ||
| 291 | } | ||
| 292 | |||
| 293 | // Also in <sys/lwp.h> but also here if this was included before <sys/lwp.h> | ||
| 294 | static inline struct cpu_info *lwp_getcpu(struct lwp *); | ||
| 295 | |||
| 296 | #define	curlwp		_curlwp() | ||
| 297 | // curcpu() expands into two instructions: a mrc and a ldr | ||
| 298 | #define	curcpu()	lwp_getcpu(_curlwp()) | ||
| 299 | #elif defined(TPIDRPRW_IS_CURCPU) | ||
| 300 | #ifdef __HAVE_PREEMPTION | ||
| 301 | #error __HAVE_PREEMPTION requires TPIDRPRW_IS_CURLWP | ||
| 302 | #endif | ||
| 303 | static inline struct cpu_info * | ||
| 304 | curcpu(void) | ||
| 305 | { | ||
| 306 | 	return (struct cpu_info *) armreg_tpidrprw_read(); | ||
| 307 | } | ||
| 308 | #elif !defined(MULTIPROCESSOR) | ||
| 309 | #define	curcpu()	(&cpu_info_store[0]) | ||
| 310 | #elif !defined(__HAVE_PREEMPTION) | ||
| 311 | #error MULTIPROCESSOR && !__HAVE_PREEMPTION requires TPIDRPRW_IS_CURCPU or TPIDRPRW_IS_CURLWP | ||
| 312 | #else | ||
| 313 | #error MULTIPROCESSOR && __HAVE_PREEMPTION requires TPIDRPRW_IS_CURLWP | ||
| 314 | #endif /* !TPIDRPRW_IS_CURCPU && !TPIDRPRW_IS_CURLWP */ | ||
| 315 | |||
| 316 | #ifndef curlwp | ||
| 317 | #define	curlwp		(curcpu()->ci_curlwp) | ||
| 318 | #endif | ||
| 319 | #define curpcb		((struct pcb *)lwp_getpcb(curlwp)) | ||
| 320 | |||
| 321 | #define CPU_INFO_ITERATOR	int | ||
| 322 | #if defined(_MODULE) || defined(MULTIPROCESSOR) | ||
| 323 | extern struct cpu_info *cpu_info[]; | ||
| 324 | #define cpu_number()		(curcpu()->ci_index) | ||
| 325 | #define CPU_IS_PRIMARY(ci)	((ci)->ci_index == 0) | ||
| 326 | #define CPU_INFO_FOREACH(cii, ci)			\ | ||
| 327 | 	cii = 0, ci = cpu_info[0]; cii < (ncpu ? ncpu : 1) && (ci = cpu_info[cii]) != NULL; cii++ | ||
| 328 | #else | ||
| 329 | #define cpu_number() 0 | ||
| 330 | |||
| 331 | #define CPU_IS_PRIMARY(ci)	true | ||
| 332 | #define CPU_INFO_FOREACH(cii, ci)			\ | ||
| 333 | 	cii = 0, __USE(cii), ci = curcpu(); ci != NULL; ci = NULL | ||
| 334 | #endif | ||
| 335 | |||
| 336 | #define	LWP0_CPU_INFO	(&cpu_info_store[0]) | ||
| 337 | |||
| 338 | static inline int | ||
| 339 | curcpl(void) | ||
| 340 | { | ||
| 341 | 	return curcpu()->ci_cpl; | ||
| 342 | } | ||
| 343 | |||
| 344 | static inline void | ||
| 345 | set_curcpl(int pri) | ||
| 346 | { | ||
| 347 | 	curcpu()->ci_cpl = pri; | ||
| 348 | } | ||
| 349 | |||
| 350 | static inline void | ||
| 351 | cpu_dosoftints(void) | ||
| 352 | { | ||
| 353 | #ifdef __HAVE_FAST_SOFTINTS | ||
| 354 | 	void	dosoftints(void); | ||
| 355 | #ifndef __HAVE_PIC_FAST_SOFTINTS | ||
| 356 | 	struct cpu_info * const ci = curcpu(); | ||
| 357 | 	if (ci->ci_intr_depth == 0 && (ci->ci_softints >> ci->ci_cpl) > 0) | ||
| 358 | 		dosoftints(); | ||
| 359 | #endif | ||
| 360 | #endif | ||
| 361 | } | ||
| 362 | |||
| 363 | /* | ||
| 364 | * Scheduling glue | ||
| 365 | */ | ||
| 366 | void cpu_signotify(struct lwp *); | ||
| 367 | #define	setsoftast(ci)		(cpu_signotify((ci)->ci_onproc)) | ||
| 368 | |||
| 369 | /* | ||
| 370 | * Give a profiling tick to the current process when the user profiling | ||
| 371 | * buffer pages are invalid. On the i386, request an ast to send us | ||
| 372 | * through trap(), marking the proc as needing a profiling tick. | ||
| 373 | */ | ||
| 374 | #define	cpu_need_proftick(l)	((l)->l_pflag |= LP_OWEUPC, \ | ||
| 375 | 				 setsoftast(lwp_getcpu(l))) | ||
| 376 | |||
| 377 | /* | ||
| 378 | * We've already preallocated the stack for the idlelwps for additional CPUs. | ||
| 379 | * This hook allows to return them. | ||
| 380 | */ | ||
| 381 | vaddr_t cpu_uarea_alloc_idlelwp(struct cpu_info *); | ||
| 382 | |||
| 383 | #ifdef _ARM_ARCH_6 | ||
| 384 | int	cpu_maxproc_hook(int); | ||
| 385 | #endif | ||
| 386 | |||
| 387 | #endif /* _KERNEL */ | ||
| 388 | |||
| 389 | #endif /* !_LOCORE */ | ||
| 390 | |||
| 391 | #endif /* _KERNEL || _KMEMUSER */ | ||
| 392 | |||
| 393 | #elif defined(__aarch64__) | ||
| 394 | |||
| 395 | #include <aarch64/cpu.h> | ||
| 396 | |||
| 397 | #endif /* __arm__/__aarch64__ */ | ||
| 398 | |||
| 399 | #endif /* !_ARM_CPU_H_ */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-netbsd-eabihf/machine/disklabel.h deleted-105| ... | @@ -1,105 +0,0 @@ | ||
| 1 | /*	$NetBSD: disklabel.h,v 1.14 2022/05/24 19:37:39 andvar Exp $	*/ | ||
| 2 | |||
| 3 | /* | ||
| 4 | * Copyright (c) 1994 Mark Brinicombe. | ||
| 5 | * Copyright (c) 1994 Brini. | ||
| 6 | * All rights reserved. | ||
| 7 | * | ||
| 8 | * This code is derived from software written for Brini by Mark Brinicombe | ||
| 9 | * | ||
| 10 | * Redistribution and use in source and binary forms, with or without | ||
| 11 | * modification, are permitted provided that the following conditions | ||
| 12 | * are met: | ||
| 13 | * 1. Redistributions of source code must retain the above copyright | ||
| 14 | * notice, this list of conditions and the following disclaimer. | ||
| 15 | * 2. Redistributions in binary form must reproduce the above copyright | ||
| 16 | * notice, this list of conditions and the following disclaimer in the | ||
| 17 | * documentation and/or other materials provided with the distribution. | ||
| 18 | * 3. All advertising materials mentioning features or use of this software | ||
| 19 | * must display the following acknowledgement: | ||
| 20 | *	This product includes software developed by Brini. | ||
| 21 | * 4. The name of the company nor the name of the author may be used to | ||
| 22 | * endorse or promote products derived from this software without specific | ||
| 23 | * prior written permission. | ||
| 24 | * | ||
| 25 | * THIS SOFTWARE IS PROVIDED BY BRINI ``AS IS'' AND ANY EXPRESS OR IMPLIED | ||
| 26 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF | ||
| 27 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. | ||
| 28 | * IN NO EVENT SHALL BRINI OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, | ||
| 29 | * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES | ||
| 30 | * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR | ||
| 31 | * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) | ||
| 32 | * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT | ||
| 33 | * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY | ||
| 34 | * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | ||
| 35 | * SUCH DAMAGE. | ||
| 36 | * | ||
| 37 | * RiscBSD kernel project | ||
| 38 | * | ||
| 39 | * disklabel.h | ||
| 40 | * | ||
| 41 | * machine specific disk label info | ||
| 42 | * | ||
| 43 | * Created : 04/10/94 | ||
| 44 | */ | ||
| 45 | |||
| 46 | #ifndef _ARM_DISKLABEL_H_ | ||
| 47 | #define _ARM_DISKLABEL_H_ | ||
| 48 | |||
| 49 | #ifndef LABELUSESMBR | ||
| 50 | #define LABELUSESMBR		1	/* use MBR partitionning */ | ||
| 51 | #endif | ||
| 52 | #define LABELSECTOR		1	/* sector containing label */ | ||
| 53 | #define LABELOFFSET		0	/* offset of label in sector */ | ||
| 54 | #define MAXPARTITIONS		16	/* number of partitions */ | ||
| 55 | #define OLDMAXPARTITIONS	8	/* old number of partitions */ | ||
| 56 | #ifndef RAW_PART | ||
| 57 | #define RAW_PART		2	/* raw partition: XX?c */ | ||
| 58 | #endif | ||
| 59 | |||
| 60 | |||
| 61 | #ifdef __HAVE_OLD_DISKLABEL | ||
| 62 | /* | ||
| 63 | * We use the highest bit of the minor number for the partition number. | ||
| 64 | * This maintains backward compatibility with device nodes created before | ||
| 65 | * MAXPARTITIONS was increased. | ||
| 66 | */ | ||
| 67 | #define	__ARM_MAXDISKS	((1 << 20) / MAXPARTITIONS) | ||
| 68 | #define	DISKUNIT(dev)	((minor(dev) / OLDMAXPARTITIONS) % __ARM_MAXDISKS) | ||
| 69 | #define	DISKPART(dev)	((minor(dev) % OLDMAXPARTITIONS) + \ | ||
| 70 | ((minor(dev) / (__ARM_MAXDISKS * OLDMAXPARTITIONS)) * OLDMAXPARTITIONS)) | ||
| 71 | #define	DISKMINOR(unit, part) \ | ||
| 72 | (((unit) * OLDMAXPARTITIONS) + ((part) % OLDMAXPARTITIONS) + \ | ||
| 73 | ((part) / OLDMAXPARTITIONS) * (__ARM_MAXDISKS * OLDMAXPARTITIONS)) | ||
| 74 | #endif | ||
| 75 | |||
| 76 | #if HAVE_NBTOOL_CONFIG_H | ||
| 77 | #include <nbinclude/sys/dkbad.h> | ||
| 78 | #include <nbinclude/sys/disklabel_acorn.h> | ||
| 79 | #include <nbinclude/sys/bootblock.h> | ||
| 80 | #else | ||
| 81 | #include <sys/dkbad.h> | ||
| 82 | #include <sys/disklabel_acorn.h> | ||
| 83 | #include <sys/bootblock.h> | ||
| 84 | #endif /* HAVE_NBTOOL_CONFIG_H */ | ||
| 85 | |||
| 86 | struct cpu_disklabel { | ||
| 87 | 	struct mbr_partition mbrparts[MBR_PART_COUNT]; | ||
| 88 | #define __HAVE_DISKLABEL_DKBAD | ||
| 89 | 	struct dkbad bad; | ||
| 90 | }; | ||
| 91 | |||
| 92 | #ifdef _KERNEL | ||
| 93 | struct buf; | ||
| 94 | struct disklabel; | ||
| 95 | |||
| 96 | /* for readdisklabel. rv != 0 -> matches, msg == NULL -> success */ | ||
| 97 | int	mbr_label_read(dev_t, void (*)(struct buf *), struct disklabel *, | ||
| 98 | 	 struct cpu_disklabel *, const char **, int *, int *); | ||
| 99 | |||
| 100 | /* for writedisklabel. rv == 0 -> doesn't match, rv > 0 -> success */ | ||
| 101 | int	mbr_label_locate(dev_t, void (*)(struct buf *), | ||
| 102 | 	 struct disklabel *, struct cpu_disklabel *, int *, int *); | ||
| 103 | #endif /* _KERNEL */ | ||
| 104 | |||
| 105 | #endif /* _ARM_DISKLABEL_H_ */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-netbsd-eabihf/machine/elf_machdep.h deleted-163| ... | @@ -1,163 +0,0 @@ | ||
| 1 | /*	$NetBSD: elf_machdep.h,v 1.19 2017/11/06 03:47:45 christos Exp $	*/ | ||
| 2 | |||
| 3 | #ifndef _ARM_ELF_MACHDEP_H_ | ||
| 4 | #define _ARM_ELF_MACHDEP_H_ | ||
| 5 | |||
| 6 | #if defined(__ARMEB__) | ||
| 7 | #define ELF32_MACHDEP_ENDIANNESS	ELFDATA2MSB | ||
| 8 | #else | ||
| 9 | #define ELF32_MACHDEP_ENDIANNESS	ELFDATA2LSB | ||
| 10 | #endif | ||
| 11 | |||
| 12 | #define ELF64_MACHDEP_ENDIANNESS	XXX	/* break compilation */ | ||
| 13 | #define ELF64_MACHDEP_ID_CASES \ | ||
| 14 | 		/* no 64-bit ELF machine types supported */ | ||
| 15 | |||
| 16 | /* Processor specific flags for the ELF header e_flags field. */ | ||
| 17 | #define EF_ARM_RELEXEC		0x00000001 | ||
| 18 | #define EF_ARM_HASENTRY		0x00000002 | ||
| 19 | #define EF_ARM_INTERWORK	0x00000004 /* GNU binutils 000413 */ | ||
| 20 | #define EF_ARM_SYMSARESORTED	0x00000004 /* ARM ELF A08 */ | ||
| 21 | #define EF_ARM_APCS_26		0x00000008 /* GNU binutils 000413 */ | ||
| 22 | #define EF_ARM_DYNSYMSUSESEGIDX	0x00000008 /* ARM ELF B01 */ | ||
| 23 | #define EF_ARM_APCS_FLOAT	0x00000010 /* GNU binutils 000413 */ | ||
| 24 | #define EF_ARM_MAPSYMSFIRST	0x00000010 /* ARM ELF B01 */ | ||
| 25 | #define EF_ARM_PIC		0x00000020 | ||
| 26 | #define EF_ARM_ALIGN8		0x00000040 /* 8-bit structure alignment. */ | ||
| 27 | #define EF_ARM_NEW_ABI		0x00000080 | ||
| 28 | #define EF_ARM_OLD_ABI		0x00000100 | ||
| 29 | #define EF_ARM_SOFT_FLOAT	0x00000200 | ||
| 30 | #define EF_ARM_BE8		0x00800000 | ||
| 31 | #define EF_ARM_EABIMASK		0xff000000 | ||
| 32 | #define	EF_ARM_EABI_VER1	0x01000000 | ||
| 33 | #define	EF_ARM_EABI_VER2	0x02000000 | ||
| 34 | #define	EF_ARM_EABI_VER3	0x03000000 | ||
| 35 | #define	EF_ARM_EABI_VER4	0x04000000 | ||
| 36 | #define	EF_ARM_EABI_VER5	0x05000000 | ||
| 37 | |||
| 38 | #define	ELF32_MACHDEP_ID_CASES						\ | ||
| 39 | 		case EM_ARM:						\ | ||
| 40 | 			break; | ||
| 41 | |||
| 42 | #define	ELF32_MACHDEP_ID	EM_ARM | ||
| 43 | |||
| 44 | #define	KERN_ELFSIZE		32 | ||
| 45 | #define ARCH_ELFSIZE		32	/* MD native binary size */ | ||
| 46 | |||
| 47 | /* Processor specific relocation types */ | ||
| 48 | |||
| 49 | #define R_ARM_NONE		0 | ||
| 50 | #define R_ARM_PC24		1 | ||
| 51 | #define R_ARM_ABS32		2 | ||
| 52 | #define R_ARM_REL32		3 | ||
| 53 | #define R_ARM_PC13		4 | ||
| 54 | #define R_ARM_ABS16		5 | ||
| 55 | #define R_ARM_ABS12		6 | ||
| 56 | #define R_ARM_THM_ABS5		7 | ||
| 57 | #define R_ARM_ABS8		8 | ||
| 58 | #define R_ARM_SBREL32		9 | ||
| 59 | #define R_ARM_THM_PC22		10 | ||
| 60 | #define R_ARM_THM_PC8		11 | ||
| 61 | #define R_ARM_AMP_VCALL9	12 | ||
| 62 | #define R_ARM_SWI24		13 | ||
| 63 | #define R_ARM_THM_SWI8		14 | ||
| 64 | #define R_ARM_XPC25		15 | ||
| 65 | #define R_ARM_THM_XPC22		16 | ||
| 66 | |||
| 67 | /* TLS relocations */ | ||
| 68 | #define R_ARM_TLS_DTPMOD32	17	/* ID of module containing symbol */ | ||
| 69 | #define R_ARM_TLS_DTPOFF32	18	/* Offset in TLS block */ | ||
| 70 | #define R_ARM_TLS_TPOFF32	19	/* Offset in static TLS block */ | ||
| 71 | |||
| 72 | /* 20-31 are reserved for ARM Linux. */ | ||
| 73 | #define R_ARM_COPY		20 | ||
| 74 | #define R_ARM_GLOB_DAT		21 | ||
| 75 | #define	R_ARM_JUMP_SLOT		22 | ||
| 76 | #define R_ARM_RELATIVE		23 | ||
| 77 | #define	R_ARM_GOTOFF		24 | ||
| 78 | #define R_ARM_GOTPC		25 | ||
| 79 | #define R_ARM_GOT32		26 | ||
| 80 | #define R_ARM_PLT32		27 | ||
| 81 | #define R_ARM_CALL		28 | ||
| 82 | #define R_ARM_JUMP24		29 | ||
| 83 | #define R_ARM_THM_JUMP24	30 | ||
| 84 | #define R_ARM_BASE_ABS		31 | ||
| 85 | #define R_ARM_ALU_PCREL_7_0	32 | ||
| 86 | #define R_ARM_ALU_PCREL_15_8	33 | ||
| 87 | #define R_ARM_ALU_PCREL_23_15	34 | ||
| 88 | #define R_ARM_ALU_SBREL_11_0	35 | ||
| 89 | #define R_ARM_ALU_SBREL_19_12	36 | ||
| 90 | #define R_ARM_ALU_SBREL_27_20	37	// depcreated | ||
| 91 | #define R_ARM_TARGET1		38 | ||
| 92 | #define R_ARM_SBREL31		39	// deprecated | ||
| 93 | #define R_ARM_V4BX		40 | ||
| 94 | #define R_ARM_TARGET2		41 | ||
| 95 | #define R_ARM_PREL31		42 | ||
| 96 | #define R_ARM_MOVW_ABS_NC	43 | ||
| 97 | #define R_ARM_MOVT_ABS		44 | ||
| 98 | #define R_ARM_MOVW_PREL_NC	45 | ||
| 99 | #define R_ARM_MOVT_PREL		46 | ||
| 100 | #define R_ARM_THM_MOVW_ABS_NC	47 | ||
| 101 | #define R_ARM_THM_MOVT_ABS	48 | ||
| 102 | #define R_ARM_THM_MOVW_PREL_NC	49 | ||
| 103 | #define R_ARM_THM_MOVT_PREL	50 | ||
| 104 | |||
| 105 | /* 96-111 are reserved to G++. */ | ||
| 106 | #define R_ARM_GNU_VTENTRY	100 | ||
| 107 | #define R_ARM_GNU_VTINHERIT	101 | ||
| 108 | #define R_ARM_THM_PC11		102 | ||
| 109 | #define R_ARM_THM_PC9		103 | ||
| 110 | |||
| 111 | /* More TLS relocations */ | ||
| 112 | #define R_ARM_TLS_GD32		104	/* PC-rel 32 bit for global dynamic */ | ||
| 113 | #define R_ARM_TLS_LDM32		105	/* PC-rel 32 bit for local dynamic */ | ||
| 114 | #define R_ARM_TLS_LDO32		106	/* 32 bit offset relative to TLS */ | ||
| 115 | #define R_ARM_TLS_IE32		107	/* PC-rel 32 bit for GOT entry of */ | ||
| 116 | #define R_ARM_TLS_LE32		108 | ||
| 117 | #define R_ARM_TLS_LDO12		109 | ||
| 118 | #define R_ARM_TLS_LE12		110 | ||
| 119 | #define R_ARM_TLS_IE12GP	111 | ||
| 120 | |||
| 121 | /* 112-127 are reserved for private experiments. */ | ||
| 122 | |||
| 123 | #define R_ARM_IRELATIVE		160 | ||
| 124 | |||
| 125 | #define R_ARM_RXPC25		249 | ||
| 126 | #define R_ARM_RSBREL32		250 | ||
| 127 | #define R_ARM_THM_RPC22		251 | ||
| 128 | #define R_ARM_RREL32		252 | ||
| 129 | #define R_ARM_RABS32		253 | ||
| 130 | #define R_ARM_RPC24		254 | ||
| 131 | #define R_ARM_RBASE		255 | ||
| 132 | |||
| 133 | #define R_TYPE(name)		__CONCAT(R_ARM_,name) | ||
| 134 | |||
| 135 | /* Processor specific program header flags */ | ||
| 136 | #define PF_ARM_SB		0x10000000 | ||
| 137 | #define PF_ARM_PI		0x20000000 | ||
| 138 | #define PF_ARM_ENTRY		0x80000000 | ||
| 139 | |||
| 140 | /* Processor specific program header types */ | ||
| 141 | #define PT_ARM_EXIDX		(PT_LOPROC + 1) | ||
| 142 | |||
| 143 | /* Processor specific section header flags */ | ||
| 144 | #define SHF_ENTRYSECT		0x10000000 | ||
| 145 | #define SHF_COMDEF		0x80000000 | ||
| 146 | |||
| 147 | /* Processor specific symbol types */ | ||
| 148 | #define STT_ARM_TFUNC		STT_LOPROC | ||
| 149 | |||
| 150 | #ifdef _KERNEL | ||
| 151 | #ifdef ELFSIZE | ||
| 152 | #define	ELF_MD_PROBE_FUNC	ELFNAME2(arm_netbsd,probe) | ||
| 153 | #define	ELF_MD_COREDUMP_SETUP	ELFNAME2(arm_netbsd,coredump_setup) | ||
| 154 | #endif | ||
| 155 | |||
| 156 | struct exec_package; | ||
| 157 | |||
| 158 | int arm_netbsd_elf32_probe(struct lwp *, struct exec_package *, void *, char *, | ||
| 159 | 	vaddr_t *); | ||
| 160 | void arm_netbsd_elf32_coredump_setup(struct lwp *, void *); | ||
| 161 | #endif | ||
| 162 | |||
| 163 | #endif /* _ARM_ELF_MACHDEP_H_ */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-netbsd-eabihf/machine/endian.h deleted-3| ... | @@ -1,3 +0,0 @@ | ||
| 1 | /*	$NetBSD: endian.h,v 1.3 2001/06/23 12:20:27 bjh21 Exp $	*/ | ||
| 2 | |||
| 3 | #include <sys/endian.h> | ||
| \ No newline at end of file | |||
lib/libc/include/arm-netbsd-eabihf/machine/endian_machdep.h deleted-8| ... | @@ -1,8 +0,0 @@ | ||
| 1 | /* $NetBSD: endian_machdep.h,v 1.9 2014/01/29 01:03:13 matt Exp $ */ | ||
| 2 | |||
| 3 | /* __ARMEB__ or __AARCH64EB__ is predefined when building big-endian ARM. */ | ||
| 4 | #if defined(__ARMEB__) || defined(__AARCH64EB__) | ||
| 5 | #define _BYTE_ORDER _BIG_ENDIAN | ||
| 6 | #else | ||
| 7 | #define _BYTE_ORDER _LITTLE_ENDIAN | ||
| 8 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/arm-netbsd-eabihf/machine/fenv.h deleted-67| ... | @@ -1,67 +0,0 @@ | ||
| 1 | /*	$NetBSD: fenv.h,v 1.6 2021/10/06 05:33:15 skrll Exp $	*/ | ||
| 2 | |||
| 3 | /* | ||
| 4 | * Based on ieeefp.h written by J.T. Conklin, Apr 28, 1995 | ||
| 5 | * Public domain. | ||
| 6 | */ | ||
| 7 | |||
| 8 | #ifndef _ARM_FENV_H_ | ||
| 9 | #define _ARM_FENV_H_ | ||
| 10 | |||
| 11 | #include <sys/cdefs.h> | ||
| 12 | |||
| 13 | #ifdef __ARM_PCS_AAPCS64 | ||
| 14 | /* AArch64 split FPSCR into two registers FPCR and FPSR */ | ||
| 15 | typedef struct { | ||
| 16 | 	unsigned int __fpcr; | ||
| 17 | 	unsigned int __fpsr; | ||
| 18 | } fenv_t; | ||
| 19 | #else | ||
| 20 | typedef int fenv_t;		/* FPSCR */ | ||
| 21 | #endif | ||
| 22 | typedef int fexcept_t; | ||
| 23 | |||
| 24 | #define	FE_INVALID	0x01	/* invalid operation exception */ | ||
| 25 | #define	FE_DIVBYZERO	0x02	/* divide-by-zero exception */ | ||
| 26 | #define	FE_OVERFLOW	0x04	/* overflow exception */ | ||
| 27 | #define	FE_UNDERFLOW	0x08	/* underflow exception */ | ||
| 28 | #define	FE_INEXACT	0x10	/* imprecise (loss of precision; "inexact") */ | ||
| 29 | |||
| 30 | #define	FE_ALL_EXCEPT	0x1f | ||
| 31 | |||
| 32 | #define	FE_TONEAREST	0	/* round to nearest representable number */ | ||
| 33 | #define	FE_UPWARD	1	/* round toward positive infinity */ | ||
| 34 | #define	FE_DOWNWARD	2	/* round toward negative infinity */ | ||
| 35 | #define	FE_TOWARDZERO	3	/* round to zero (truncate) */ | ||
| 36 | |||
| 37 | #ifdef __SOFTFP__ | ||
| 38 | |||
| 39 | /* | ||
| 40 | * Provide a platform-specific softfloat ABI. | ||
| 41 | */ | ||
| 42 | |||
| 43 | #include <arm/vfpreg.h> | ||
| 44 | |||
| 45 | #define __FENV_GET_FLAGS(__envp)	__SHIFTOUT(*(__envp), VFP_FPSCR_CSUM) | ||
| 46 | #define __FENV_GET_MASK(__envp)		__SHIFTOUT(*(__envp), VFP_FPSCR_ESUM) | ||
| 47 | #define __FENV_GET_ROUND(__envp)	__SHIFTOUT(*(__envp), VFP_FPSCR_RMODE) | ||
| 48 | #define __FENV_SET_FLAGS(__envp, __val) \ | ||
| 49 | 	*(__envp) = __SHIFTIN((__val), VFP_FPSCR_CSUM) | ||
| 50 | #define __FENV_SET_MASK(__envp, __val) \ | ||
| 51 | 	*(__envp) = __SHIFTIN((__val), VFP_FPSCR_ESUM) | ||
| 52 | #define __FENV_SET_ROUND(__envp, __val) \ | ||
| 53 | 	*(__envp) = __SHIFTIN((__val), VFP_FPSCR_RMODE) | ||
| 54 | |||
| 55 | #define __HAVE_FENV_SOFTFLOAT_DEFS | ||
| 56 | |||
| 57 | #endif /* __SOFTFP__ */ | ||
| 58 | |||
| 59 | __BEGIN_DECLS | ||
| 60 | |||
| 61 | /* Default floating-point environment */ | ||
| 62 | extern const fenv_t	__fe_dfl_env; | ||
| 63 | #define FE_DFL_ENV	(&__fe_dfl_env) | ||
| 64 | |||
| 65 | __END_DECLS | ||
| 66 | |||
| 67 | #endif /* _ARM_FENV_H_ */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-netbsd-eabihf/machine/float.h deleted-63| ... | @@ -1,63 +0,0 @@ | ||
| 1 | /* $NetBSD: float.h,v 1.8 2014/01/29 01:10:36 matt Exp $ */ | ||
| 2 | |||
| 3 | /*- | ||
| 4 | * Copyright (c) 2014 The NetBSD Foundation, Inc. | ||
| 5 | * All rights reserved. | ||
| 6 | * | ||
| 7 | * This code is derived from software contributed to The NetBSD Foundation | ||
| 8 | * by Matt Thomas of 3am Software Foundry. | ||
| 9 | * | ||
| 10 | * Redistribution and use in source and binary forms, with or without | ||
| 11 | * modification, are permitted provided that the following conditions | ||
| 12 | * are met: | ||
| 13 | * 1. Redistributions of source code must retain the above copyright | ||
| 14 | * notice, this list of conditions and the following disclaimer. | ||
| 15 | * 2. Redistributions in binary form must reproduce the above copyright | ||
| 16 | * notice, this list of conditions and the following disclaimer in the | ||
| 17 | * documentation and/or other materials provided with the distribution. | ||
| 18 | * | ||
| 19 | * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS | ||
| 20 | * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED | ||
| 21 | * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR | ||
| 22 | * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS | ||
| 23 | * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR | ||
| 24 | * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF | ||
| 25 | * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS | ||
| 26 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN | ||
| 27 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) | ||
| 28 | * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE | ||
| 29 | * POSSIBILITY OF SUCH DAMAGE. | ||
| 30 | */ | ||
| 31 | |||
| 32 | #ifndef _ARM_FLOAT_H_ | ||
| 33 | #define _ARM_FLOAT_H_ | ||
| 34 | |||
| 35 | #include <sys/cdefs.h> | ||
| 36 | |||
| 37 | #ifdef __ARM_PCS_AAPCS64 | ||
| 38 | |||
| 39 | #define LDBL_MANT_DIG	__LDBL_MANT_DIG__ | ||
| 40 | #define LDBL_DIG	__LDBL_DIG__ | ||
| 41 | #define LDBL_MIN_EXP	__LDBL_MIN_EXP__ | ||
| 42 | #define LDBL_MIN_10_EXP	__LDBL_MIN_10_EXP__ | ||
| 43 | #define LDBL_MAX_EXP	__LDBL_MAX_EXP__ | ||
| 44 | #define LDBL_MAX_10_EXP	__LDBL_MAX_10_EXP__ | ||
| 45 | #define LDBL_EPSILON	__LDBL_EPSILON__ | ||
| 46 | #define LDBL_MIN	__LDBL_MIN__ | ||
| 47 | #define LDBL_MAX	__LDBL_MAX__ | ||
| 48 | |||
| 49 | #endif /* __ARM_PCS_AAPCS64 */ | ||
| 50 | |||
| 51 | #include <sys/float_ieee754.h> | ||
| 52 | |||
| 53 | #if defined(__ARM_PCS_AAPCS64) \ | ||
| 54 | && ((!defined(_ANSI_SOURCE) && !defined(_POSIX_C_SOURCE) \ | ||
| 55 | 	 && !defined(_XOPEN_SOURCE)) \ | ||
| 56 | 	|| (__STDC_VERSION__ - 0) >= 199901L \ | ||
| 57 | 	|| (_POSIX_C_SOURCE - 0) >= 200112L \ | ||
| 58 | 	|| ((_XOPEN_SOURCE - 0) >= 600) \ | ||
| 59 | 	|| defined(_ISOC99_SOURCE) || defined(_NETBSD_SOURCE)) | ||
| 60 | #define DECIMAL_DIG	__DECIMAL_DIG__ | ||
| 61 | #endif /* __ARM_PCS_AAPCS64 && ... */ | ||
| 62 | |||
| 63 | #endif /* !_ARM_FLOAT_H_ */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-netbsd-eabihf/machine/frame.h deleted-130| ... | @@ -1,130 +0,0 @@ | ||
| 1 | /*	$NetBSD: frame.h,v 1.23 2022/04/02 11:16:07 skrll Exp $	*/ | ||
| 2 | |||
| 3 | /* | ||
| 4 | * Copyright (c) 1994-1997 Mark Brinicombe. | ||
| 5 | * Copyright (c) 1994 Brini. | ||
| 6 | * All rights reserved. | ||
| 7 | * | ||
| 8 | * This code is derived from software written for Brini by Mark Brinicombe | ||
| 9 | * | ||
| 10 | * Redistribution and use in source and binary forms, with or without | ||
| 11 | * modification, are permitted provided that the following conditions | ||
| 12 | * are met: | ||
| 13 | * 1. Redistributions of source code must retain the above copyright | ||
| 14 | * notice, this list of conditions and the following disclaimer. | ||
| 15 | * 2. Redistributions in binary form must reproduce the above copyright | ||
| 16 | * notice, this list of conditions and the following disclaimer in the | ||
| 17 | * documentation and/or other materials provided with the distribution. | ||
| 18 | * 3. All advertising materials mentioning features or use of this software | ||
| 19 | * must display the following acknowledgement: | ||
| 20 | *	This product includes software developed by Brini. | ||
| 21 | * 4. The name of the company nor the name of the author may be used to | ||
| 22 | * endorse or promote products derived from this software without specific | ||
| 23 | * prior written permission. | ||
| 24 | * | ||
| 25 | * THIS SOFTWARE IS PROVIDED BY BRINI ``AS IS'' AND ANY EXPRESS OR IMPLIED | ||
| 26 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF | ||
| 27 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. | ||
| 28 | * IN NO EVENT SHALL BRINI OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, | ||
| 29 | * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES | ||
| 30 | * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR | ||
| 31 | * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) | ||
| 32 | * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT | ||
| 33 | * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY | ||
| 34 | * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | ||
| 35 | * SUCH DAMAGE. | ||
| 36 | */ | ||
| 37 | /* | ||
| 38 | * arm/frame.h - Stack frames structures | ||
| 39 | */ | ||
| 40 | |||
| 41 | #ifndef _ARM_FRAME_H_ | ||
| 42 | #define _ARM_FRAME_H_ | ||
| 43 | |||
| 44 | #ifndef _LOCORE | ||
| 45 | |||
| 46 | #include <sys/signal.h> | ||
| 47 | #include <sys/ucontext.h> | ||
| 48 | |||
| 49 | /* | ||
| 50 | * Trap frame. Pushed onto the kernel stack on a trap (synchronous exception). | ||
| 51 | */ | ||
| 52 | |||
| 53 | typedef struct trapframe { | ||
| 54 | 	register_t tf_spsr; | ||
| 55 | 	register_t tf_fill; /* fill here so r0 will be dword aligned */ | ||
| 56 | 	register_t tf_r0; | ||
| 57 | 	register_t tf_r1; | ||
| 58 | 	register_t tf_r2; | ||
| 59 | 	register_t tf_r3; | ||
| 60 | 	register_t tf_r4; | ||
| 61 | 	register_t tf_r5; | ||
| 62 | 	register_t tf_r6; | ||
| 63 | 	register_t tf_r7; | ||
| 64 | 	register_t tf_r8; | ||
| 65 | 	register_t tf_r9; | ||
| 66 | 	register_t tf_r10; | ||
| 67 | 	register_t tf_r11; | ||
| 68 | 	register_t tf_r12; | ||
| 69 | 	register_t tf_usr_sp; | ||
| 70 | 	register_t tf_usr_lr; | ||
| 71 | 	register_t tf_svc_sp; | ||
| 72 | 	register_t tf_svc_lr; | ||
| 73 | 	register_t tf_pc; | ||
| 74 | } trapframe_t; | ||
| 75 | |||
| 76 | /* Register numbers */ | ||
| 77 | #define tf_ip tf_r12 | ||
| 78 | #define tf_r13 tf_usr_sp | ||
| 79 | #define tf_r14 tf_usr_lr | ||
| 80 | #define tf_r15 tf_pc | ||
| 81 | |||
| 82 | #define TRAP_USERMODE(tf)	(((tf)->tf_spsr & PSR_MODE) == PSR_USR32_MODE) | ||
| 83 | |||
| 84 | #define FB_R4	0 | ||
| 85 | #define FB_R5	1 | ||
| 86 | #define FB_R6	2 | ||
| 87 | #define FB_R7	3 | ||
| 88 | #define FB_R8	4 | ||
| 89 | #define FB_R9	5 | ||
| 90 | #define FB_R10	6 | ||
| 91 | #define FB_R11	7 | ||
| 92 | #define FB_R12	8 | ||
| 93 | #define FB_R13	9 | ||
| 94 | #define FB_R14	10 | ||
| 95 | #define FB_MAX	11 | ||
| 96 | struct faultbuf { | ||
| 97 | 	register_t fb_reg[FB_MAX]; | ||
| 98 | }; | ||
| 99 | |||
| 100 | /* | ||
| 101 | * Signal frame. Pushed onto user stack before calling sigcode. | ||
| 102 | */ | ||
| 103 | #ifdef COMPAT_16 | ||
| 104 | struct sigframe_sigcontext { | ||
| 105 | 	struct	sigcontext sf_sc; | ||
| 106 | }; | ||
| 107 | #endif | ||
| 108 | |||
| 109 | /* the pointers are use in the trampoline code to locate the ucontext */ | ||
| 110 | struct sigframe_siginfo { | ||
| 111 | 	siginfo_t	sf_si;		/* actual saved siginfo */ | ||
| 112 | 	ucontext_t	sf_uc;		/* actual saved ucontext */ | ||
| 113 | }; | ||
| 114 | |||
| 115 | #if defined(_KERNEL) || defined(_KMEMUSER) | ||
| 116 | #ifdef _KERNEL | ||
| 117 | __BEGIN_DECLS | ||
| 118 | void sendsig_sigcontext(const ksiginfo_t *, const sigset_t *); | ||
| 119 | void *getframe(struct lwp *, int, int *); | ||
| 120 | __END_DECLS | ||
| 121 | #define lwp_settrapframe(l, tf)		((l)->l_md.md_tf = (tf)) | ||
| 122 | #endif | ||
| 123 | #define lwp_trapframe(l)		((l)->l_md.md_tf) | ||
| 124 | #endif /* _KERNEL || _KMEMUSER */ | ||
| 125 | |||
| 126 | #endif /* _LOCORE */ | ||
| 127 | |||
| 128 | #endif /* _ARM_FRAME_H_ */ | ||
| 129 | |||
| 130 | /* End of frame.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-netbsd-eabihf/machine/ieee.h deleted-4| ... | @@ -1,4 +0,0 @@ | ||
| 1 | /* $NetBSD: ieee.h,v 1.11 2014/01/31 19:38:06 matt Exp $ */ | ||
| 2 | |||
| 3 | #include <arm/math.h>		/* for #define __HAVE_LONG_DOUBLE 128 */ | ||
| 4 | #include <sys/ieee754.h> | ||
| \ No newline at end of file | |||
lib/libc/include/arm-netbsd-eabihf/machine/ieeefp.h deleted-50| ... | @@ -1,50 +0,0 @@ | ||
| 1 | /*	$NetBSD: ieeefp.h,v 1.5 2021/10/06 05:33:15 skrll Exp $	*/ | ||
| 2 | |||
| 3 | /* | ||
| 4 | * Based on ieeefp.h written by J.T. Conklin, Apr 28, 1995 | ||
| 5 | * Public domain. | ||
| 6 | */ | ||
| 7 | |||
| 8 | #ifndef _ARM_IEEEFP_H_ | ||
| 9 | #define _ARM_IEEEFP_H_ | ||
| 10 | |||
| 11 | #include <sys/featuretest.h> | ||
| 12 | |||
| 13 | #if defined(_NETBSD_SOURCE) || defined(_ISOC99_SOURCE) | ||
| 14 | |||
| 15 | #include <arm/fenv.h> | ||
| 16 | |||
| 17 | #if !defined(_ISOC99_SOURCE) | ||
| 18 | |||
| 19 | /* Exception type (used by fpsetmask() et al.) */ | ||
| 20 | |||
| 21 | typedef int fp_except; | ||
| 22 | |||
| 23 | /* adjust for FP_* and FE_* value differences */ | ||
| 24 | #define	__FPE(x) (x) | ||
| 25 | #define	__FEE(x) (x) | ||
| 26 | #define	__FPR(x) (x) | ||
| 27 | #define	__FER(x) (x) | ||
| 28 | |||
| 29 | /* Bit defines for fp_except */ | ||
| 30 | |||
| 31 | #define	FP_X_INV	FE_INVALID	/* invalid operation exception */ | ||
| 32 | #define	FP_X_DZ		FE_DIVBYZERO	/* divide-by-zero exception */ | ||
| 33 | #define	FP_X_OFL	FE_OVERFLOW	/* overflow exception */ | ||
| 34 | #define	FP_X_UFL	FE_UNDERFLOW	/* underflow exception */ | ||
| 35 | #define	FP_X_IMP	FE_INEXACT	/* imprecise (prec. loss; "inexact") */ | ||
| 36 | |||
| 37 | /* Rounding modes */ | ||
| 38 | |||
| 39 | typedef enum { | ||
| 40 | FP_RN=FE_TONEAREST,		/* round to nearest representable number */ | ||
| 41 | FP_RP=FE_UPWARD,		/* round toward positive infinity */ | ||
| 42 | FP_RM=FE_DOWNWARD,		/* round toward negative infinity */ | ||
| 43 | FP_RZ=FE_TOWARDZERO		/* round to zero (truncate) */ | ||
| 44 | } fp_rnd; | ||
| 45 | |||
| 46 | #endif /* !_ISOC99_SOURCE */ | ||
| 47 | |||
| 48 | #endif /* _NETBSD_SOURCE || _ISOC99_SOURCE */ | ||
| 49 | |||
| 50 | #endif /* _ARM_IEEEFP_H_ */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-netbsd-eabihf/machine/int_const.h deleted-74| ... | @@ -1,74 +0,0 @@ | ||
| 1 | /*	$NetBSD: int_const.h,v 1.5 2018/08/10 17:05:22 jakllsch Exp $	*/ | ||
| 2 | |||
| 3 | /*- | ||
| 4 | * Copyright (c) 2001 The NetBSD Foundation, Inc. | ||
| 5 | * All rights reserved. | ||
| 6 | * | ||
| 7 | * This code is derived from software contributed to The NetBSD Foundation | ||
| 8 | * by Klaus Klein. | ||
| 9 | * | ||
| 10 | * Redistribution and use in source and binary forms, with or without | ||
| 11 | * modification, are permitted provided that the following conditions | ||
| 12 | * are met: | ||
| 13 | * 1. Redistributions of source code must retain the above copyright | ||
| 14 | * notice, this list of conditions and the following disclaimer. | ||
| 15 | * 2. Redistributions in binary form must reproduce the above copyright | ||
| 16 | * notice, this list of conditions and the following disclaimer in the | ||
| 17 | * documentation and/or other materials provided with the distribution. | ||
| 18 | * | ||
| 19 | * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS | ||
| 20 | * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED | ||
| 21 | * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR | ||
| 22 | * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS | ||
| 23 | * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR | ||
| 24 | * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF | ||
| 25 | * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS | ||
| 26 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN | ||
| 27 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) | ||
| 28 | * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE | ||
| 29 | * POSSIBILITY OF SUCH DAMAGE. | ||
| 30 | */ | ||
| 31 | |||
| 32 | #ifndef _ARM_INT_CONST_H_ | ||
| 33 | #define _ARM_INT_CONST_H_ | ||
| 34 | |||
| 35 | #ifdef __INTMAX_C_SUFFIX__ | ||
| 36 | #include <sys/common_int_const.h> | ||
| 37 | #else | ||
| 38 | /* | ||
| 39 | * 7.18.4 Macros for integer constants | ||
| 40 | */ | ||
| 41 | |||
| 42 | /* 7.18.4.1 Macros for minimum-width integer constants */ | ||
| 43 | |||
| 44 | #define	INT8_C(c)	c | ||
| 45 | #define	INT16_C(c)	c | ||
| 46 | #define	INT32_C(c)	c | ||
| 47 | #ifdef _LP64 | ||
| 48 | #define	INT64_C(c)	c ## L | ||
| 49 | #else | ||
| 50 | #define	INT64_C(c)	c ## LL | ||
| 51 | #endif | ||
| 52 | |||
| 53 | #define	UINT8_C(c)	c | ||
| 54 | #define	UINT16_C(c)	c | ||
| 55 | #define	UINT32_C(c)	c ## U | ||
| 56 | #ifdef _LP64 | ||
| 57 | #define	UINT64_C(c)	c ## UL | ||
| 58 | #else | ||
| 59 | #define	UINT64_C(c)	c ## ULL | ||
| 60 | #endif | ||
| 61 | |||
| 62 | /* 7.18.4.2 Macros for greatest-width integer constants */ | ||
| 63 | |||
| 64 | #ifdef _LP64 | ||
| 65 | #define	INTMAX_C(c)	c ## L | ||
| 66 | #define	UINTMAX_C(c)	c ## UL | ||
| 67 | #else | ||
| 68 | #define	INTMAX_C(c)	c ## LL | ||
| 69 | #define	UINTMAX_C(c)	c ## ULL | ||
| 70 | #endif | ||
| 71 | |||
| 72 | #endif /* !__INTMAX_C_SUFFIX__ */ | ||
| 73 | |||
| 74 | #endif /* !_ARM_INT_CONST_H_ */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-netbsd-eabihf/machine/int_fmtio.h deleted-359| ... | @@ -1,359 +0,0 @@ | ||
| 1 | /*	$NetBSD: int_fmtio.h,v 1.10 2018/07/15 00:36:13 christos Exp $	*/ | ||
| 2 | |||
| 3 | /*- | ||
| 4 | * Copyright (c) 2001 The NetBSD Foundation, Inc. | ||
| 5 | * All rights reserved. | ||
| 6 | * | ||
| 7 | * This code is derived from software contributed to The NetBSD Foundation | ||
| 8 | * by Klaus Klein. | ||
| 9 | * | ||
| 10 | * Redistribution and use in source and binary forms, with or without | ||
| 11 | * modification, are permitted provided that the following conditions | ||
| 12 | * are met: | ||
| 13 | * 1. Redistributions of source code must retain the above copyright | ||
| 14 | * notice, this list of conditions and the following disclaimer. | ||
| 15 | * 2. Redistributions in binary form must reproduce the above copyright | ||
| 16 | * notice, this list of conditions and the following disclaimer in the | ||
| 17 | * documentation and/or other materials provided with the distribution. | ||
| 18 | * | ||
| 19 | * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS | ||
| 20 | * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED | ||
| 21 | * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR | ||
| 22 | * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS | ||
| 23 | * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR | ||
| 24 | * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF | ||
| 25 | * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS | ||
| 26 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN | ||
| 27 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) | ||
| 28 | * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE | ||
| 29 | * POSSIBILITY OF SUCH DAMAGE. | ||
| 30 | */ | ||
| 31 | |||
| 32 | #ifndef _ARM_INT_FMTIO_H_ | ||
| 33 | #define _ARM_INT_FMTIO_H_ | ||
| 34 | |||
| 35 | #ifdef __INTPTR_FMTd__ | ||
| 36 | #include <sys/common_int_fmtio.h> | ||
| 37 | #else | ||
| 38 | /* | ||
| 39 | * 7.8.1 Macros for format specifiers | ||
| 40 | */ | ||
| 41 | |||
| 42 | /* fprintf macros for signed integers */ | ||
| 43 | #define	PRId8		"d"	/* int8_t		*/ | ||
| 44 | #define	PRId16		"d"	/* int16_t		*/ | ||
| 45 | #define	PRId32		"d"	/* int32_t		*/ | ||
| 46 | #if defined(__clang__) || !defined(_LP64) | ||
| 47 | #define	PRId64		"lld"	/* int64_t		*/ | ||
| 48 | #else | ||
| 49 | #define	PRId64		"ld"	/* int64_t		*/ | ||
| 50 | #endif | ||
| 51 | #define	PRIdLEAST8	"d"	/* int_least8_t		*/ | ||
| 52 | #define	PRIdLEAST16	"d"	/* int_least16_t	*/ | ||
| 53 | #define	PRIdLEAST32	"d"	/* int_least32_t	*/ | ||
| 54 | #if defined(__clang__) || !defined(_LP64) | ||
| 55 | #define	PRIdLEAST64	"lld"	/* int_least64_t	*/ | ||
| 56 | #else | ||
| 57 | #define	PRIdLEAST64	"ld"	/* int_least64_t	*/ | ||
| 58 | #endif | ||
| 59 | #define	PRIdFAST8	"d"	/* int_fast8_t		*/ | ||
| 60 | #define	PRIdFAST16	"d"	/* int_fast16_t		*/ | ||
| 61 | #define	PRIdFAST32	"d"	/* int_fast32_t		*/ | ||
| 62 | #if defined(__clang__) || !defined(_LP64) | ||
| 63 | #define	PRIdFAST64	"lld"	/* int_fast64_t		*/ | ||
| 64 | #define	PRIdMAX		"lld"	/* intmax_t		*/ | ||
| 65 | #else | ||
| 66 | #define	PRIdFAST64	"ld"	/* int_fast64_t		*/ | ||
| 67 | #define	PRIdMAX		"ld"	/* intmax_t		*/ | ||
| 68 | #endif | ||
| 69 | #define	PRIdPTR		"ld"	/* intptr_t		*/ | ||
| 70 | |||
| 71 | #define	PRIi8		"i"	/* int8_t		*/ | ||
| 72 | #define	PRIi16		"i"	/* int16_t		*/ | ||
| 73 | #define	PRIi32		"i"	/* int32_t		*/ | ||
| 74 | #if defined(__clang__) || !defined(_LP64) | ||
| 75 | #define	PRIi64		"lli"	/* int64_t		*/ | ||
| 76 | #else | ||
| 77 | #define	PRIi64		"li"	/* int64_t		*/ | ||
| 78 | #endif | ||
| 79 | #define	PRIiLEAST8	"i"	/* int_least8_t		*/ | ||
| 80 | #define	PRIiLEAST16	"i"	/* int_least16_t	*/ | ||
| 81 | #define	PRIiLEAST32	"i"	/* int_least32_t	*/ | ||
| 82 | #if defined(__clang__) || !defined(_LP64) | ||
| 83 | #define	PRIiLEAST64	"lli"	/* int_least64_t	*/ | ||
| 84 | #else | ||
| 85 | #define	PRIiLEAST64	"li"	/* int_least64_t	*/ | ||
| 86 | #endif | ||
| 87 | #define	PRIiFAST8	"i"	/* int_fast8_t		*/ | ||
| 88 | #define	PRIiFAST16	"i"	/* int_fast16_t		*/ | ||
| 89 | #define	PRIiFAST32	"i"	/* int_fast32_t		*/ | ||
| 90 | #if defined(__clang__) || !defined(_LP64) | ||
| 91 | #define	PRIiFAST64	"lli"	/* int_fast64_t		*/ | ||
| 92 | #define	PRIiMAX		"lli"	/* intmax_t		*/ | ||
| 93 | #else | ||
| 94 | #define	PRIiFAST64	"li"	/* int_fast64_t		*/ | ||
| 95 | #define	PRIiMAX		"li"	/* intmax_t		*/ | ||
| 96 | #endif | ||
| 97 | #define	PRIiPTR		"li"	/* intptr_t		*/ | ||
| 98 | |||
| 99 | /* fprintf macros for unsigned integers */ | ||
| 100 | |||
| 101 | #define	PRIo8		"o"	/* uint8_t		*/ | ||
| 102 | #define	PRIo16		"o"	/* uint16_t		*/ | ||
| 103 | #define	PRIo32		"o"	/* uint32_t		*/ | ||
| 104 | #if defined(__clang__) || !defined(_LP64) | ||
| 105 | #define	PRIo64		"llo"	/* uint64_t		*/ | ||
| 106 | #else | ||
| 107 | #define	PRIo64		"lo"	/* uint64_t		*/ | ||
| 108 | #endif | ||
| 109 | #define	PRIoLEAST8	"o"	/* uint_least8_t	*/ | ||
| 110 | #define	PRIoLEAST16	"o"	/* uint_least16_t	*/ | ||
| 111 | #define	PRIoLEAST32	"o"	/* uint_least32_t	*/ | ||
| 112 | #if defined(__clang__) || !defined(_LP64) | ||
| 113 | #define	PRIoLEAST64	"llo"	/* uint_least64_t	*/ | ||
| 114 | #else | ||
| 115 | #define	PRIoLEAST64	"lo"	/* uint_least64_t	*/ | ||
| 116 | #endif | ||
| 117 | #define	PRIoFAST8	"o"	/* uint_fast8_t		*/ | ||
| 118 | #define	PRIoFAST16	"o"	/* uint_fast16_t	*/ | ||
| 119 | #define	PRIoFAST32	"o"	/* uint_fast32_t	*/ | ||
| 120 | #if defined(__clang__) || !defined(_LP64) | ||
| 121 | #define	PRIoFAST64	"llo"	/* uint_fast64_t	*/ | ||
| 122 | #define	PRIoMAX		"llo"	/* uintmax_t		*/ | ||
| 123 | #else | ||
| 124 | #define	PRIoFAST64	"lo"	/* uint_fast64_t	*/ | ||
| 125 | #define	PRIoMAX		"lo"	/* uintmax_t		*/ | ||
| 126 | #endif | ||
| 127 | #define	PRIoPTR		"lo"	/* uintptr_t		*/ | ||
| 128 | |||
| 129 | #define	PRIu8		"u"	/* uint8_t		*/ | ||
| 130 | #define	PRIu16		"u"	/* uint16_t		*/ | ||
| 131 | #define	PRIu32		"u"	/* uint32_t		*/ | ||
| 132 | #if defined(__clang__) || !defined(_LP64) | ||
| 133 | #define	PRIu64		"llu"	/* uint64_t		*/ | ||
| 134 | #else | ||
| 135 | #define	PRIu64		"lu"	/* uint64_t		*/ | ||
| 136 | #endif | ||
| 137 | #define	PRIuLEAST8	"u"	/* uint_least8_t	*/ | ||
| 138 | #define	PRIuLEAST16	"u"	/* uint_least16_t	*/ | ||
| 139 | #define	PRIuLEAST32	"u"	/* uint_least32_t	*/ | ||
| 140 | #if defined(__clang__) || !defined(_LP64) | ||
| 141 | #define	PRIuLEAST64	"llu"	/* uint_least64_t	*/ | ||
| 142 | #else | ||
| 143 | #define	PRIuLEAST64	"lu"	/* uint_least64_t	*/ | ||
| 144 | #endif | ||
| 145 | #define	PRIuFAST8	"u"	/* uint_fast8_t		*/ | ||
| 146 | #define	PRIuFAST16	"u"	/* uint_fast16_t	*/ | ||
| 147 | #define	PRIuFAST32	"u"	/* uint_fast32_t	*/ | ||
| 148 | #if defined(__clang__) || !defined(_LP64) | ||
| 149 | #define	PRIuFAST64	"llu"	/* uint_fast64_t	*/ | ||
| 150 | #define	PRIuMAX		"llu"	/* uintmax_t		*/ | ||
| 151 | #else | ||
| 152 | #define	PRIuFAST64	"lu"	/* uint_fast64_t	*/ | ||
| 153 | #define	PRIuMAX		"lu"	/* uintmax_t		*/ | ||
| 154 | #endif | ||
| 155 | #define	PRIuPTR		"lu"	/* uintptr_t		*/ | ||
| 156 | |||
| 157 | #define	PRIx8		"x"	/* uint8_t		*/ | ||
| 158 | #define	PRIx16		"x"	/* uint16_t		*/ | ||
| 159 | #define	PRIx32		"x"	/* uint32_t		*/ | ||
| 160 | #if defined(__clang__) || !defined(_LP64) | ||
| 161 | #define	PRIx64		"llx"	/* uint64_t		*/ | ||
| 162 | #else | ||
| 163 | #define	PRIx64		"lx"	/* uint64_t		*/ | ||
| 164 | #endif | ||
| 165 | #define	PRIxLEAST8	"x"	/* uint_least8_t	*/ | ||
| 166 | #define	PRIxLEAST16	"x"	/* uint_least16_t	*/ | ||
| 167 | #define	PRIxLEAST32	"x"	/* uint_least32_t	*/ | ||
| 168 | #if defined(__clang__) || !defined(_LP64) | ||
| 169 | #define	PRIxLEAST64	"llx"	/* uint_least64_t	*/ | ||
| 170 | #else | ||
| 171 | #define	PRIxLEAST64	"lx"	/* uint_least64_t	*/ | ||
| 172 | #endif | ||
| 173 | #define	PRIxFAST8	"x"	/* uint_fast8_t		*/ | ||
| 174 | #define	PRIxFAST16	"x"	/* uint_fast16_t	*/ | ||
| 175 | #define	PRIxFAST32	"x"	/* uint_fast32_t	*/ | ||
| 176 | #if defined(__clang__) || !defined(_LP64) | ||
| 177 | #define	PRIxFAST64	"llx"	/* uint_fast64_t	*/ | ||
| 178 | #define	PRIxMAX		"llx"	/* uintmax_t		*/ | ||
| 179 | #else | ||
| 180 | #define	PRIxFAST64	"lx"	/* uint_fast64_t	*/ | ||
| 181 | #define	PRIxMAX		"lx"	/* uintmax_t		*/ | ||
| 182 | #endif | ||
| 183 | #define	PRIxPTR		"lx"	/* uintptr_t		*/ | ||
| 184 | |||
| 185 | #define	PRIX8		"X"	/* uint8_t		*/ | ||
| 186 | #define	PRIX16		"X"	/* uint16_t		*/ | ||
| 187 | #define	PRIX32		"X"	/* uint32_t		*/ | ||
| 188 | #if defined(__clang__) || !defined(_LP64) | ||
| 189 | #define	PRIX64		"llX"	/* uint64_t		*/ | ||
| 190 | #else | ||
| 191 | #define	PRIX64		"lX"	/* uint64_t		*/ | ||
| 192 | #endif | ||
| 193 | #define	PRIXLEAST8	"X"	/* uint_least8_t	*/ | ||
| 194 | #define	PRIXLEAST16	"X"	/* uint_least16_t	*/ | ||
| 195 | #define	PRIXLEAST32	"X"	/* uint_least32_t	*/ | ||
| 196 | #if defined(__clang__) || !defined(_LP64) | ||
| 197 | #define	PRIXLEAST64	"llX"	/* uint_least64_t	*/ | ||
| 198 | #else | ||
| 199 | #define	PRIXLEAST64	"lX"	/* uint_least64_t	*/ | ||
| 200 | #endif | ||
| 201 | #define	PRIXFAST8	"X"	/* uint_fast8_t		*/ | ||
| 202 | #define	PRIXFAST16	"X"	/* uint_fast16_t	*/ | ||
| 203 | #define	PRIXFAST32	"X"	/* uint_fast32_t	*/ | ||
| 204 | #if defined(__clang__) || !defined(_LP64) | ||
| 205 | #define	PRIXFAST64	"llX"	/* uint_fast64_t	*/ | ||
| 206 | #define	PRIXMAX		"llX"	/* uintmax_t		*/ | ||
| 207 | #else | ||
| 208 | #define	PRIXFAST64	"lX"	/* uint_fast64_t	*/ | ||
| 209 | #define	PRIXMAX		"lX"	/* uintmax_t		*/ | ||
| 210 | #endif | ||
| 211 | #define	PRIXPTR		"lX"	/* uintptr_t		*/ | ||
| 212 | |||
| 213 | /* fscanf macros for signed integers */ | ||
| 214 | |||
| 215 | #define	SCNd8		"hhd"	/* int8_t		*/ | ||
| 216 | #define	SCNd16		"hd"	/* int16_t		*/ | ||
| 217 | #define	SCNd32		"d"	/* int32_t		*/ | ||
| 218 | #if defined(__clang__) || !defined(_LP64) | ||
| 219 | #define	SCNd64		"lld"	/* int64_t		*/ | ||
| 220 | #else | ||
| 221 | #define	SCNd64		"ld"	/* int64_t		*/ | ||
| 222 | #endif | ||
| 223 | #define	SCNdLEAST8	"hhd"	/* int_least8_t		*/ | ||
| 224 | #define	SCNdLEAST16	"hd"	/* int_least16_t	*/ | ||
| 225 | #define	SCNdLEAST32	"d"	/* int_least32_t	*/ | ||
| 226 | #if defined(__clang__) || !defined(_LP64) | ||
| 227 | #define	SCNdLEAST64	"lld"	/* int_least64_t	*/ | ||
| 228 | #else | ||
| 229 | #define	SCNdLEAST64	"ld"	/* int_least64_t	*/ | ||
| 230 | #endif | ||
| 231 | #define	SCNdFAST8	"d"	/* int_fast8_t		*/ | ||
| 232 | #define	SCNdFAST16	"d"	/* int_fast16_t		*/ | ||
| 233 | #define	SCNdFAST32	"d"	/* int_fast32_t		*/ | ||
| 234 | #if defined(__clang__) || !defined(_LP64) | ||
| 235 | #define	SCNdFAST64	"lld"	/* int_fast64_t		*/ | ||
| 236 | #define	SCNdMAX		"lld"	/* intmax_t		*/ | ||
| 237 | #else | ||
| 238 | #define	SCNdFAST64	"ld"	/* int_fast64_t		*/ | ||
| 239 | #define	SCNdMAX		"ld"	/* intmax_t		*/ | ||
| 240 | #endif | ||
| 241 | #define	SCNdPTR		"ld"	/* intptr_t		*/ | ||
| 242 | |||
| 243 | #define	SCNi8		"hhi"	/* int8_t		*/ | ||
| 244 | #define	SCNi16		"hi"	/* int16_t		*/ | ||
| 245 | #define	SCNi32		"i"	/* int32_t		*/ | ||
| 246 | #if defined(__clang__) || !defined(_LP64) | ||
| 247 | #define	SCNi64		"lli"	/* int64_t		*/ | ||
| 248 | #else | ||
| 249 | #define	SCNi64		"li"	/* int64_t		*/ | ||
| 250 | #endif | ||
| 251 | #define	SCNiLEAST8	"hhi"	/* int_least8_t		*/ | ||
| 252 | #define	SCNiLEAST16	"hi"	/* int_least16_t	*/ | ||
| 253 | #define	SCNiLEAST32	"i"	/* int_least32_t	*/ | ||
| 254 | #if defined(__clang__) || !defined(_LP64) | ||
| 255 | #define	SCNiLEAST64	"lli"	/* int_least64_t	*/ | ||
| 256 | #else | ||
| 257 | #define	SCNiLEAST64	"li"	/* int_least64_t	*/ | ||
| 258 | #endif | ||
| 259 | #define	SCNiFAST8	"i"	/* int_fast8_t		*/ | ||
| 260 | #define	SCNiFAST16	"i"	/* int_fast16_t		*/ | ||
| 261 | #define	SCNiFAST32	"i"	/* int_fast32_t		*/ | ||
| 262 | #if defined(__clang__) || !defined(_LP64) | ||
| 263 | #define	SCNiFAST64	"lli"	/* int_fast64_t		*/ | ||
| 264 | #define	SCNiMAX		"lli"	/* intmax_t		*/ | ||
| 265 | #else | ||
| 266 | #define	SCNiFAST64	"li"	/* int_fast64_t		*/ | ||
| 267 | #define	SCNiMAX		"li"	/* intmax_t		*/ | ||
| 268 | #endif | ||
| 269 | #define	SCNiPTR		"li"	/* intptr_t		*/ | ||
| 270 | |||
| 271 | /* fscanf macros for unsigned integers */ | ||
| 272 | |||
| 273 | #define	SCNo8		"hho"	/* uint8_t		*/ | ||
| 274 | #define	SCNo16		"ho"	/* uint16_t		*/ | ||
| 275 | #define	SCNo32		"o"	/* uint32_t		*/ | ||
| 276 | #if defined(__clang__) || !defined(_LP64) | ||
| 277 | #define	SCNo64		"llo"	/* uint64_t		*/ | ||
| 278 | #else | ||
| 279 | #define	SCNo64		"lo"	/* uint64_t		*/ | ||
| 280 | #endif | ||
| 281 | #define	SCNoLEAST8	"hho"	/* uint_least8_t	*/ | ||
| 282 | #define	SCNoLEAST16	"ho"	/* uint_least16_t	*/ | ||
| 283 | #define	SCNoLEAST32	"o"	/* uint_least32_t	*/ | ||
| 284 | #if defined(__clang__) || !defined(_LP64) | ||
| 285 | #define	SCNoLEAST64	"llo"	/* uint_least64_t	*/ | ||
| 286 | #else | ||
| 287 | #define	SCNoLEAST64	"lo"	/* uint_least64_t	*/ | ||
| 288 | #endif | ||
| 289 | #define	SCNoFAST8	"o"	/* uint_fast8_t		*/ | ||
| 290 | #define	SCNoFAST16	"o"	/* uint_fast16_t	*/ | ||
| 291 | #define	SCNoFAST32	"o"	/* uint_fast32_t	*/ | ||
| 292 | #if defined(__clang__) || !defined(_LP64) | ||
| 293 | #define	SCNoFAST64	"llo"	/* uint_fast64_t	*/ | ||
| 294 | #define	SCNoMAX		"llo"	/* uintmax_t		*/ | ||
| 295 | #else | ||
| 296 | #define	SCNoFAST64	"lo"	/* uint_fast64_t	*/ | ||
| 297 | #define	SCNoMAX		"lo"	/* uintmax_t		*/ | ||
| 298 | #endif | ||
| 299 | #define	SCNoPTR		"lo"	/* uintptr_t		*/ | ||
| 300 | |||
| 301 | #define	SCNu8		"hhu"	/* uint8_t		*/ | ||
| 302 | #define	SCNu16		"hu"	/* uint16_t		*/ | ||
| 303 | #define	SCNu32		"u"	/* uint32_t		*/ | ||
| 304 | #if defined(__clang__) || !defined(_LP64) | ||
| 305 | #define	SCNu64		"llu"	/* uint64_t		*/ | ||
| 306 | #else | ||
| 307 | #define	SCNu64		"lu"	/* uint64_t		*/ | ||
| 308 | #endif | ||
| 309 | #define	SCNuLEAST8	"hhu"	/* uint_least8_t	*/ | ||
| 310 | #define	SCNuLEAST16	"hu"	/* uint_least16_t	*/ | ||
| 311 | #define	SCNuLEAST32	"u"	/* uint_least32_t	*/ | ||
| 312 | #if defined(__clang__) || !defined(_LP64) | ||
| 313 | #define	SCNuLEAST64	"llu"	/* uint_least64_t	*/ | ||
| 314 | #else | ||
| 315 | #define	SCNuLEAST64	"lu"	/* uint_least64_t	*/ | ||
| 316 | #endif | ||
| 317 | #define	SCNuFAST8	"u"	/* uint_fast8_t		*/ | ||
| 318 | #define	SCNuFAST16	"u"	/* uint_fast16_t	*/ | ||
| 319 | #define	SCNuFAST32	"u"	/* uint_fast32_t	*/ | ||
| 320 | #if defined(__clang__) || !defined(_LP64) | ||
| 321 | #define	SCNuFAST64	"llu"	/* uint_fast64_t	*/ | ||
| 322 | #define	SCNuMAX		"llu"	/* uintmax_t		*/ | ||
| 323 | #else | ||
| 324 | #define	SCNuFAST64	"lu"	/* uint_fast64_t	*/ | ||
| 325 | #define	SCNuMAX		"lu"	/* uintmax_t		*/ | ||
| 326 | #endif | ||
| 327 | #define	SCNuPTR		"lu"	/* uintptr_t		*/ | ||
| 328 | |||
| 329 | #define	SCNx8		"hhx"	/* uint8_t		*/ | ||
| 330 | #define	SCNx16		"hx"	/* uint16_t		*/ | ||
| 331 | #define	SCNx32		"x"	/* uint32_t		*/ | ||
| 332 | #if defined(__clang__) || !defined(_LP64) | ||
| 333 | #define	SCNx64		"llx"	/* uint64_t		*/ | ||
| 334 | #else | ||
| 335 | #define	SCNx64		"lx"	/* uint64_t		*/ | ||
| 336 | #endif | ||
| 337 | #define	SCNxLEAST8	"hhx"	/* uint_least8_t	*/ | ||
| 338 | #define	SCNxLEAST16	"hx"	/* uint_least16_t	*/ | ||
| 339 | #define	SCNxLEAST32	"x"	/* uint_least32_t	*/ | ||
| 340 | #if defined(__clang__) || !defined(_LP64) | ||
| 341 | #define	SCNxLEAST64	"llx"	/* uint_least64_t	*/ | ||
| 342 | #else | ||
| 343 | #define	SCNxLEAST64	"lx"	/* uint_least64_t	*/ | ||
| 344 | #endif | ||
| 345 | #define	SCNxFAST8	"x"	/* uint_fast8_t		*/ | ||
| 346 | #define	SCNxFAST16	"x"	/* uint_fast16_t	*/ | ||
| 347 | #define	SCNxFAST32	"x"	/* uint_fast32_t	*/ | ||
| 348 | #if defined(__clang__) || !defined(_LP64) | ||
| 349 | #define	SCNxFAST64	"llx"	/* uint_fast64_t	*/ | ||
| 350 | #define	SCNxMAX		"llx"	/* uintmax_t		*/ | ||
| 351 | #else | ||
| 352 | #define	SCNxFAST64	"lx"	/* uint_fast64_t	*/ | ||
| 353 | #define	SCNxMAX		"lx"	/* uintmax_t		*/ | ||
| 354 | #endif | ||
| 355 | #define	SCNxPTR		"lx"	/* uintptr_t		*/ | ||
| 356 | |||
| 357 | #endif /* !__INTPTR_FMTd__ */ | ||
| 358 | |||
| 359 | #endif /* !_ARM_INT_FMTIO_H_ */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-netbsd-eabihf/machine/int_limits.h deleted-146| ... | @@ -1,146 +0,0 @@ | ||
| 1 | /*	$NetBSD: int_limits.h,v 1.12 2021/10/06 05:33:15 skrll Exp $	*/ | ||
| 2 | |||
| 3 | /*- | ||
| 4 | * Copyright (c) 2001 The NetBSD Foundation, Inc. | ||
| 5 | * All rights reserved. | ||
| 6 | * | ||
| 7 | * This code is derived from software contributed to The NetBSD Foundation | ||
| 8 | * by Klaus Klein. | ||
| 9 | * | ||
| 10 | * Redistribution and use in source and binary forms, with or without | ||
| 11 | * modification, are permitted provided that the following conditions | ||
| 12 | * are met: | ||
| 13 | * 1. Redistributions of source code must retain the above copyright | ||
| 14 | * notice, this list of conditions and the following disclaimer. | ||
| 15 | * 2. Redistributions in binary form must reproduce the above copyright | ||
| 16 | * notice, this list of conditions and the following disclaimer in the | ||
| 17 | * documentation and/or other materials provided with the distribution. | ||
| 18 | * | ||
| 19 | * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS | ||
| 20 | * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED | ||
| 21 | * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR | ||
| 22 | * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS | ||
| 23 | * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR | ||
| 24 | * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF | ||
| 25 | * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS | ||
| 26 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN | ||
| 27 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) | ||
| 28 | * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE | ||
| 29 | * POSSIBILITY OF SUCH DAMAGE. | ||
| 30 | */ | ||
| 31 | |||
| 32 | #ifndef _ARM_INT_LIMITS_H_ | ||
| 33 | #define _ARM_INT_LIMITS_H_ | ||
| 34 | |||
| 35 | #ifdef __SIG_ATOMIC_MAX__ | ||
| 36 | #include <sys/common_int_limits.h> | ||
| 37 | #else | ||
| 38 | /* | ||
| 39 | * 7.18.2 Limits of specified-width integer types | ||
| 40 | */ | ||
| 41 | |||
| 42 | /* 7.18.2.1 Limits of exact-width integer types */ | ||
| 43 | |||
| 44 | /* minimum values of exact-width signed integer types */ | ||
| 45 | #define	INT8_MIN	(-0x7f-1)			/* int8_t	 */ | ||
| 46 | #define	INT16_MIN	(-0x7fff-1)			/* int16_t	 */ | ||
| 47 | #define	INT32_MIN	(-0x7fffffff-1)			/* int32_t	 */ | ||
| 48 | #define	INT64_MIN	(-0x7fffffffffffffffLL-1)	/* int64_t	 */ | ||
| 49 | |||
| 50 | /* maximum values of exact-width signed integer types */ | ||
| 51 | #define	INT8_MAX	0x7f				/* int8_t	 */ | ||
| 52 | #define	INT16_MAX	0x7fff				/* int16_t	 */ | ||
| 53 | #define	INT32_MAX	0x7fffffff			/* int32_t	 */ | ||
| 54 | #define	INT64_MAX	0x7fffffffffffffffLL		/* int64_t	 */ | ||
| 55 | |||
| 56 | /* maximum values of exact-width unsigned integer types */ | ||
| 57 | #define	UINT8_MAX	0xff				/* uint8_t	 */ | ||
| 58 | #define	UINT16_MAX	0xffff				/* uint16_t	 */ | ||
| 59 | #define	UINT32_MAX	0xffffffffU			/* uint32_t	 */ | ||
| 60 | #define	UINT64_MAX	0xffffffffffffffffULL		/* uint64_t	 */ | ||
| 61 | |||
| 62 | /* 7.18.2.2 Limits of minimum-width integer types */ | ||
| 63 | |||
| 64 | /* minimum values of minimum-width signed integer types */ | ||
| 65 | #define	INT_LEAST8_MIN	(-0x7f-1)			/* int_least8_t	 */ | ||
| 66 | #define	INT_LEAST16_MIN	(-0x7fff-1)			/* int_least16_t */ | ||
| 67 | #define	INT_LEAST32_MIN	(-0x7fffffff-1)			/* int_least32_t */ | ||
| 68 | #define	INT_LEAST64_MIN	(-0x7fffffffffffffffLL-1)	/* int_least64_t */ | ||
| 69 | |||
| 70 | /* maximum values of minimum-width signed integer types */ | ||
| 71 | #define	INT_LEAST8_MAX	0x7f				/* int_least8_t	 */ | ||
| 72 | #define	INT_LEAST16_MAX	0x7fff				/* int_least16_t */ | ||
| 73 | #define	INT_LEAST32_MAX	0x7fffffff			/* int_least32_t */ | ||
| 74 | #define	INT_LEAST64_MAX	0x7fffffffffffffffLL		/* int_least64_t */ | ||
| 75 | |||
| 76 | /* maximum values of minimum-width unsigned integer types */ | ||
| 77 | #define	UINT_LEAST8_MAX	 0xff				/* uint_least8_t */ | ||
| 78 | #define	UINT_LEAST16_MAX 0xffff				/* uint_least16_t */ | ||
| 79 | #define	UINT_LEAST32_MAX 0xffffffffU			/* uint_least32_t */ | ||
| 80 | #define	UINT_LEAST64_MAX 0xffffffffffffffffULL		/* uint_least64_t */ | ||
| 81 | |||
| 82 | /* 7.18.2.3 Limits of fastest minimum-width integer types */ | ||
| 83 | |||
| 84 | /* minimum values of fastest minimum-width signed integer types */ | ||
| 85 | #define	INT_FAST8_MIN	(-0x7fffffff-1)			/* int_fast8_t	 */ | ||
| 86 | #define	INT_FAST16_MIN	(-0x7fffffff-1)			/* int_fast16_t	 */ | ||
| 87 | #define	INT_FAST32_MIN	(-0x7fffffff-1)			/* int_fast32_t	 */ | ||
| 88 | #define	INT_FAST64_MIN	(-0x7fffffffffffffffLL-1)	/* int_fast64_t	 */ | ||
| 89 | |||
| 90 | /* maximum values of fastest minimum-width signed integer types */ | ||
| 91 | #define	INT_FAST8_MAX	0x7fffffff			/* int_fast8_t	 */ | ||
| 92 | #define	INT_FAST16_MAX	0x7fffffff			/* int_fast16_t	 */ | ||
| 93 | #define	INT_FAST32_MAX	0x7fffffff			/* int_fast32_t	 */ | ||
| 94 | #define	INT_FAST64_MAX	0x7fffffffffffffffLL		/* int_fast64_t	 */ | ||
| 95 | |||
| 96 | /* maximum values of fastest minimum-width unsigned integer types */ | ||
| 97 | #define	UINT_FAST8_MAX	0xffffffffU			/* uint_fast8_t	 */ | ||
| 98 | #define	UINT_FAST16_MAX	0xffffffffU			/* uint_fast16_t */ | ||
| 99 | #define	UINT_FAST32_MAX	0xffffffffU			/* uint_fast32_t */ | ||
| 100 | #define	UINT_FAST64_MAX	0xffffffffffffffffULL		/* uint_fast64_t */ | ||
| 101 | |||
| 102 | /* 7.18.2.4 Limits of integer types capable of holding object pointers */ | ||
| 103 | |||
| 104 | #ifdef _LP64 | ||
| 105 | #define	INTPTR_MIN	(-0x7fffffffffffffffL-1)	/* intptr_t	 */ | ||
| 106 | #define	INTPTR_MAX	0x7fffffffffffffffL		/* intptr_t	 */ | ||
| 107 | #define	UINTPTR_MAX	0xffffffffffffffffUL		/* uintptr_t	 */ | ||
| 108 | #else | ||
| 109 | #define	INTPTR_MIN	(-0x7fffffffL-1)		/* intptr_t	 */ | ||
| 110 | #define	INTPTR_MAX	0x7fffffffL			/* intptr_t	 */ | ||
| 111 | #define	UINTPTR_MAX	0xffffffffUL			/* uintptr_t	 */ | ||
| 112 | #endif | ||
| 113 | |||
| 114 | /* 7.18.2.5 Limits of greatest-width integer types */ | ||
| 115 | |||
| 116 | #define	INTMAX_MIN	(-0x7fffffffffffffffLL-1)	/* intmax_t	 */ | ||
| 117 | #define	INTMAX_MAX	0x7fffffffffffffffLL		/* intmax_t	 */ | ||
| 118 | #define	UINTMAX_MAX	0xffffffffffffffffULL		/* uintmax_t	 */ | ||
| 119 | |||
| 120 | |||
| 121 | /* | ||
| 122 | * 7.18.3 Limits of other integer types | ||
| 123 | */ | ||
| 124 | |||
| 125 | /* limits of ptrdiff_t */ | ||
| 126 | #ifdef _LP64 | ||
| 127 | #define	PTRDIFF_MIN	(-0x7fffffffffffffffL-1)	/* ptrdiff_t	 */ | ||
| 128 | #define	PTRDIFF_MAX	0x7fffffffffffffffL		/* ptrdiff_t	 */ | ||
| 129 | #else | ||
| 130 | #define	PTRDIFF_MIN	(-0x7fffffffL-1)		/* ptrdiff_t	 */ | ||
| 131 | #define	PTRDIFF_MAX	0x7fffffffL			/* ptrdiff_t	 */ | ||
| 132 | #endif | ||
| 133 | |||
| 134 | /* limits of sig_atomic_t */ | ||
| 135 | #define	SIG_ATOMIC_MIN	(-0x7fffffff-1)			/* sig_atomic_t	 */ | ||
| 136 | #define	SIG_ATOMIC_MAX	0x7fffffff			/* sig_atomic_t	 */ | ||
| 137 | |||
| 138 | /* limit of size_t */ | ||
| 139 | #ifdef _LP64 | ||
| 140 | #define	SIZE_MAX	0xffffffffffffffffUL		/* size_t	 */ | ||
| 141 | #else | ||
| 142 | #define	SIZE_MAX	0xffffffffUL			/* size_t	 */ | ||
| 143 | #endif | ||
| 144 | #endif | ||
| 145 | |||
| 146 | #endif /* !_ARM_INT_LIMITS_H_ */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-netbsd-eabihf/machine/int_mwgwtypes.h deleted-127| ... | @@ -1,127 +0,0 @@ | ||
| 1 | /* $NetBSD: int_mwgwtypes.h,v 1.7 2014/07/25 21:43:13 joerg Exp $ */ | ||
| 2 | |||
| 3 | /*- | ||
| 4 | * Copyright (c) 2014 The NetBSD Foundation, Inc. | ||
| 5 | * All rights reserved. | ||
| 6 | * | ||
| 7 | * This code is derived from software contributed to The NetBSD Foundation | ||
| 8 | * by Matt Thomas of 3am Software Foundry. | ||
| 9 | * | ||
| 10 | * Redistribution and use in source and binary forms, with or without | ||
| 11 | * modification, are permitted provided that the following conditions | ||
| 12 | * are met: | ||
| 13 | * 1. Redistributions of source code must retain the above copyright | ||
| 14 | * notice, this list of conditions and the following disclaimer. | ||
| 15 | * 2. Redistributions in binary form must reproduce the above copyright | ||
| 16 | * notice, this list of conditions and the following disclaimer in the | ||
| 17 | * documentation and/or other materials provided with the distribution. | ||
| 18 | * | ||
| 19 | * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS | ||
| 20 | * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED | ||
| 21 | * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR | ||
| 22 | * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS | ||
| 23 | * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR | ||
| 24 | * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF | ||
| 25 | * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS | ||
| 26 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN | ||
| 27 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) | ||
| 28 | * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE | ||
| 29 | * POSSIBILITY OF SUCH DAMAGE. | ||
| 30 | */ | ||
| 31 | |||
| 32 | #ifndef _ARM_INT_MWGWTYPES_H_ | ||
| 33 | #define _ARM_INT_MWGWTYPES_H_ | ||
| 34 | |||
| 35 | #ifdef __UINT_FAST64_TYPE__ | ||
| 36 | #include <sys/common_int_mwgwtypes.h> | ||
| 37 | #else | ||
| 38 | /* | ||
| 39 | * 7.18.1 Integer types | ||
| 40 | */ | ||
| 41 | |||
| 42 | /* 7.18.1.2 Minimum-width integer types */ | ||
| 43 | |||
| 44 | #ifndef __INT_LEAST8_TYPE__ | ||
| 45 | # define __INT_LEAST8_TYPE__	signed char | ||
| 46 | #endif | ||
| 47 | #ifndef __UINT_LEAST8_TYPE__ | ||
| 48 | # define __UINT_LEAST8_TYPE__	unsigned char | ||
| 49 | #endif | ||
| 50 | #ifndef __INT_LEAST16_TYPE__ | ||
| 51 | # define __INT_LEAST16_TYPE__	short int | ||
| 52 | #endif | ||
| 53 | #ifndef __UINT_LEAST16_TYPE__ | ||
| 54 | # define __UINT_LEAST16_TYPE__	short unsigned int | ||
| 55 | #endif | ||
| 56 | #ifndef __INT_LEAST32_TYPE__ | ||
| 57 | # define __INT_LEAST32_TYPE__	int | ||
| 58 | #endif | ||
| 59 | #ifndef __UINT_LEAST32_TYPE__ | ||
| 60 | # define __UINT_LEAST32_TYPE__	unsigned int | ||
| 61 | #endif | ||
| 62 | #ifndef __INT_LEAST64_TYPE__ | ||
| 63 | # define __INT_LEAST64_TYPE__	long long int | ||
| 64 | #endif | ||
| 65 | #ifndef __UINT_LEAST64_TYPE__ | ||
| 66 | # define __UINT_LEAST64_TYPE__	long long unsigned int | ||
| 67 | #endif | ||
| 68 | |||
| 69 | typedef	__INT_LEAST8_TYPE__	 int_least8_t; | ||
| 70 | typedef	__UINT_LEAST8_TYPE__	 uint_least8_t; | ||
| 71 | typedef	__INT_LEAST16_TYPE__	 int_least16_t; | ||
| 72 | typedef	__UINT_LEAST16_TYPE__	uint_least16_t; | ||
| 73 | typedef	__INT_LEAST32_TYPE__	 int_least32_t; | ||
| 74 | typedef	__UINT_LEAST32_TYPE__	uint_least32_t; | ||
| 75 | typedef	__INT_LEAST64_TYPE__	 int_least64_t; | ||
| 76 | typedef	__UINT_LEAST64_TYPE__	uint_least64_t; | ||
| 77 | |||
| 78 | /* 7.18.1.3 Fastest minimum-width integer types */ | ||
| 79 | |||
| 80 | #ifndef __INT_FAST8_TYPE__ | ||
| 81 | # define __INT_FAST8_TYPE__	int | ||
| 82 | #endif | ||
| 83 | #ifndef __UINT_FAST8_TYPE__ | ||
| 84 | # define __UINT_FAST8_TYPE__	unsigned int | ||
| 85 | #endif | ||
| 86 | #ifndef __INT_FAST16_TYPE__ | ||
| 87 | # define __INT_FAST16_TYPE__	int | ||
| 88 | #endif | ||
| 89 | #ifndef __UINT_FAST16_TYPE__ | ||
| 90 | # define __UINT_FAST16_TYPE__	unsigned int | ||
| 91 | #endif | ||
| 92 | #ifndef __INT_FAST32_TYPE__ | ||
| 93 | # define __INT_FAST32_TYPE__	int | ||
| 94 | #endif | ||
| 95 | #ifndef __UINT_FAST32_TYPE__ | ||
| 96 | # define __UINT_FAST32_TYPE__	unsigned int | ||
| 97 | #endif | ||
| 98 | #ifndef __INT_FAST64_TYPE__ | ||
| 99 | # define __INT_FAST64_TYPE__	long long int | ||
| 100 | #endif | ||
| 101 | #ifndef __UINT_FAST64_TYPE__ | ||
| 102 | # define __UINT_FAST64_TYPE__	long long unsigned int | ||
| 103 | #endif | ||
| 104 | |||
| 105 | typedef	__INT_FAST8_TYPE__	 int_fast8_t; | ||
| 106 | typedef	__UINT_FAST8_TYPE__	 uint_fast8_t; | ||
| 107 | typedef	__INT_FAST16_TYPE__	 int_fast16_t; | ||
| 108 | typedef	__UINT_FAST16_TYPE__	 uint_fast16_t; | ||
| 109 | typedef	__INT_FAST32_TYPE__	 int_fast32_t; | ||
| 110 | typedef	__UINT_FAST32_TYPE__	 uint_fast32_t; | ||
| 111 | typedef	__INT_FAST64_TYPE__	 int_fast64_t; | ||
| 112 | typedef	__UINT_FAST64_TYPE__	 uint_fast64_t; | ||
| 113 | |||
| 114 | /* 7.18.1.5 Greatest-width integer types */ | ||
| 115 | |||
| 116 | #ifndef __INTMAX_TYPE__ | ||
| 117 | # define __INTMAX_TYPE__	long long int | ||
| 118 | #endif | ||
| 119 | #ifndef __UINTMAX_TYPE__ | ||
| 120 | # define __UINTMAX_TYPE__	unsigned __INTMAX_TYPE__ | ||
| 121 | #endif | ||
| 122 | |||
| 123 | typedef	__INTMAX_TYPE__	 	 intmax_t; | ||
| 124 | typedef	__UINTMAX_TYPE__	 uintmax_t; | ||
| 125 | #endif | ||
| 126 | |||
| 127 | #endif /* !_ARM_INT_MWGWTYPES_H_ */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-netbsd-eabihf/machine/int_types.h deleted-99| ... | @@ -1,99 +0,0 @@ | ||
| 1 | /*	$NetBSD: int_types.h,v 1.17 2014/07/25 21:43:13 joerg Exp $	*/ | ||
| 2 | |||
| 3 | /*- | ||
| 4 | * Copyright (c) 2014 The NetBSD Foundation, Inc. | ||
| 5 | * All rights reserved. | ||
| 6 | * | ||
| 7 | * This code is derived from software contributed to The NetBSD Foundation | ||
| 8 | * by Matt Thomas of 3am Software Foundry. | ||
| 9 | * | ||
| 10 | * Redistribution and use in source and binary forms, with or without | ||
| 11 | * modification, are permitted provided that the following conditions | ||
| 12 | * are met: | ||
| 13 | * 1. Redistributions of source code must retain the above copyright | ||
| 14 | * notice, this list of conditions and the following disclaimer. | ||
| 15 | * 2. Redistributions in binary form must reproduce the above copyright | ||
| 16 | * notice, this list of conditions and the following disclaimer in the | ||
| 17 | * documentation and/or other materials provided with the distribution. | ||
| 18 | * | ||
| 19 | * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS | ||
| 20 | * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED | ||
| 21 | * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR | ||
| 22 | * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS | ||
| 23 | * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR | ||
| 24 | * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF | ||
| 25 | * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS | ||
| 26 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN | ||
| 27 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) | ||
| 28 | * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE | ||
| 29 | * POSSIBILITY OF SUCH DAMAGE. | ||
| 30 | */ | ||
| 31 | |||
| 32 | #ifndef _ARM_INT_TYPES_H_ | ||
| 33 | #define _ARM_INT_TYPES_H_ | ||
| 34 | |||
| 35 | #ifdef __UINTPTR_TYPE__ | ||
| 36 | #include <sys/common_int_types.h> | ||
| 37 | #else | ||
| 38 | #include <sys/cdefs.h> | ||
| 39 | |||
| 40 | /* | ||
| 41 | * 7.18.1 Integer types | ||
| 42 | */ | ||
| 43 | |||
| 44 | /* 7.18.1.1 Exact-width integer types */ | ||
| 45 | |||
| 46 | #ifndef __UINT8_TYPE__ | ||
| 47 | # define __UINT8_TYPE__		unsigned char | ||
| 48 | #endif | ||
| 49 | #ifndef __INT8_TYPE__ | ||
| 50 | # define __INT8_TYPE__		signed char | ||
| 51 | #endif | ||
| 52 | #ifndef __UINT16_TYPE__ | ||
| 53 | # ifndef __INT16_TYPE__ | ||
| 54 | # define __INT16_TYPE__	short int | ||
| 55 | # endif | ||
| 56 | # define __UINT16_TYPE__	unsigned __INT16_TYPE__ | ||
| 57 | #endif | ||
| 58 | #ifndef __UINT32_TYPE__ | ||
| 59 | # ifndef __INT32_TYPE__ | ||
| 60 | # define __INT32_TYPE__	int | ||
| 61 | # endif | ||
| 62 | # define __UINT32_TYPE__	unsigned __INT32_TYPE__ | ||
| 63 | #endif | ||
| 64 | #ifndef __UINT64_TYPE__ | ||
| 65 | # ifndef __INT64_TYPE__ | ||
| 66 | # define __INT64_TYPE__	long long int | ||
| 67 | # endif | ||
| 68 | # define __UINT64_TYPE__	unsigned __INT64_TYPE__ | ||
| 69 | #endif | ||
| 70 | |||
| 71 | #ifdef __clang__ | ||
| 72 | typedef	signed __INT8_TYPE__	 __int8_t; | ||
| 73 | #else | ||
| 74 | typedef	__INT8_TYPE__		 __int8_t; | ||
| 75 | #endif | ||
| 76 | typedef	__UINT8_TYPE__		 __uint8_t; | ||
| 77 | typedef	__INT16_TYPE__		 __int16_t; | ||
| 78 | typedef	__UINT16_TYPE__		 __uint16_t; | ||
| 79 | typedef	__INT32_TYPE__		 __int32_t; | ||
| 80 | typedef	__UINT32_TYPE__		 __uint32_t; | ||
| 81 | typedef	__INT64_TYPE__		 __int64_t; | ||
| 82 | typedef	__UINT64_TYPE__		 __uint64_t; | ||
| 83 | |||
| 84 | #define	__BIT_TYPES_DEFINED__ | ||
| 85 | |||
| 86 | /* 7.18.1.4 Integer types capable of holding object pointers */ | ||
| 87 | |||
| 88 | #ifndef __UINTPTR_TYPE__ | ||
| 89 | # ifndef __INTPTR_TYPE__ | ||
| 90 | # define __INTPTR_TYPE__	long int | ||
| 91 | # endif | ||
| 92 | # define __UINTPTR_TYPE__	unsigned __INTPTR_TYPE__ | ||
| 93 | #endif | ||
| 94 | |||
| 95 | typedef	__INTPTR_TYPE__		 __intptr_t; | ||
| 96 | typedef	__UINTPTR_TYPE__	__uintptr_t; | ||
| 97 | #endif | ||
| 98 | |||
| 99 | #endif	/* !_ARM_INT_TYPES_H_ */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-netbsd-eabihf/machine/kcore.h deleted-57| ... | @@ -1,57 +0,0 @@ | ||
| 1 | /*	$NetBSD: kcore.h,v 1.1 2008/01/01 14:06:43 chris Exp $	*/ | ||
| 2 | |||
| 3 | /* | ||
| 4 | * Copyright (c) 1996 Carnegie-Mellon University. | ||
| 5 | * All rights reserved. | ||
| 6 | * | ||
| 7 | * Author: Chris G. Demetriou | ||
| 8 | * | ||
| 9 | * Permission to use, copy, modify and distribute this software and | ||
| 10 | * its documentation is hereby granted, provided that both the copyright | ||
| 11 | * notice and this permission notice appear in all copies of the | ||
| 12 | * software, derivative works or modified versions, and any portions | ||
| 13 | * thereof, and that both notices appear in supporting documentation. | ||
| 14 | * | ||
| 15 | * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS" | ||
| 16 | * CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND | ||
| 17 | * FOR ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE. | ||
| 18 | * | ||
| 19 | * Carnegie Mellon requests users of this software to return to | ||
| 20 | * | ||
| 21 | * Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU | ||
| 22 | * School of Computer Science | ||
| 23 | * Carnegie Mellon University | ||
| 24 | * Pittsburgh PA 15213-3890 | ||
| 25 | * | ||
| 26 | * any improvements or extensions that they make and grant Carnegie the | ||
| 27 | * rights to redistribute these changes. | ||
| 28 | */ | ||
| 29 | |||
| 30 | /* | ||
| 31 | * Modified for NetBSD/i386 by Jason R. Thorpe, Numerical Aerospace | ||
| 32 | * Simulation Facility, NASA Ames Research Center. | ||
| 33 | */ | ||
| 34 | |||
| 35 | #ifndef _ARM_KCORE_H_ | ||
| 36 | #define _ARM_KCORE_H_ | ||
| 37 | |||
| 38 | typedef struct cpu_kcore_hdr { | ||
| 39 | 	uint32_t	version;		/* structure version */ | ||
| 40 | 	uint32_t	flags;			/* flags */ | ||
| 41 | #define	KCORE_ARM_APX 0x0001		/* L1 tables are in APX | ||
| 42 | 						 format */ | ||
| 43 | 	uint32_t	PAKernelL1Table;	/* PA of kernel L1 table */ | ||
| 44 | 	uint32_t	PAUserL1Table;		/* PA of userland L1 table */ | ||
| 45 | 	uint16_t	UserL1TableSize;	/* size of User L1 table */ | ||
| 46 | 	uint32_t	nmemsegs;		/* Number of RAM segments */ | ||
| 47 | 	uint32_t	omemsegs;		/* offset to memsegs */ | ||
| 48 | |||
| 49 | 	/* | ||
| 50 | 	 * future versions will add fields here. | ||
| 51 | 	 */ | ||
| 52 | #if 0 | ||
| 53 | 	phys_ram_seg_t memsegs[];		/* RAM segments */ | ||
| 54 | #endif | ||
| 55 | } cpu_kcore_hdr_t; | ||
| 56 | |||
| 57 | #endif /* _ARM_KCORE_H_ */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-netbsd-eabihf/machine/limits.h deleted-109| ... | @@ -1,109 +0,0 @@ | ||
| 1 | /*	$NetBSD: limits.h,v 1.19 2019/01/21 20:28:17 dholland Exp $	*/ | ||
| 2 | |||
| 3 | /* | ||
| 4 | * Copyright (c) 1988 The Regents of the University of California. | ||
| 5 | * All rights reserved. | ||
| 6 | * | ||
| 7 | * Redistribution and use in source and binary forms, with or without | ||
| 8 | * modification, are permitted provided that the following conditions | ||
| 9 | * are met: | ||
| 10 | * 1. Redistributions of source code must retain the above copyright | ||
| 11 | * notice, this list of conditions and the following disclaimer. | ||
| 12 | * 2. Redistributions in binary form must reproduce the above copyright | ||
| 13 | * notice, this list of conditions and the following disclaimer in the | ||
| 14 | * documentation and/or other materials provided with the distribution. | ||
| 15 | * 3. Neither the name of the University nor the names of its contributors | ||
| 16 | * may be used to endorse or promote products derived from this software | ||
| 17 | * without specific prior written permission. | ||
| 18 | * | ||
| 19 | * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND | ||
| 20 | * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | ||
| 21 | * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | ||
| 22 | * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE | ||
| 23 | * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||
| 24 | * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS | ||
| 25 | * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) | ||
| 26 | * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT | ||
| 27 | * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY | ||
| 28 | * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | ||
| 29 | * SUCH DAMAGE. | ||
| 30 | * | ||
| 31 | *	from: @(#)limits.h	7.2 (Berkeley) 6/28/90 | ||
| 32 | */ | ||
| 33 | |||
| 34 | #ifndef _ARM_LIMITS_H_ | ||
| 35 | #define _ARM_LIMITS_H_ | ||
| 36 | |||
| 37 | #include <sys/featuretest.h> | ||
| 38 | |||
| 39 | #define	CHAR_BIT	8		/* number of bits in a char */ | ||
| 40 | |||
| 41 | #define	UCHAR_MAX	0xff		/* max value for an unsigned char */ | ||
| 42 | #define	SCHAR_MAX	0x7f		/* max value for a signed char */ | ||
| 43 | #define SCHAR_MIN	(-0x7f-1)	/* min value for a signed char */ | ||
| 44 | |||
| 45 | #define	USHRT_MAX	0xffff		/* max value for an unsigned short */ | ||
| 46 | #define	SHRT_MAX	0x7fff		/* max value for a short */ | ||
| 47 | #define	SHRT_MIN	(-0x7fff-1)	/* min value for a short */ | ||
| 48 | |||
| 49 | #define	UINT_MAX	0xffffffffU	/* max value for an unsigned int */ | ||
| 50 | #define	INT_MAX		0x7fffffff	/* max value for an int */ | ||
| 51 | #define	INT_MIN		(-0x7fffffff-1)	/* min value for an int */ | ||
| 52 | |||
| 53 | #ifdef _LP64 | ||
| 54 | #define	ULONG_MAX	0xffffffffffffffffUL	/* max unsigned long */ | ||
| 55 | #define	LONG_MAX	0x7fffffffffffffffL	/* max signed long */ | ||
| 56 | #define	LONG_MIN	(-0x7fffffffffffffffL-1) /* min signed long */ | ||
| 57 | #else | ||
| 58 | #define	ULONG_MAX	0xffffffffUL	/* max value for an unsigned long */ | ||
| 59 | #define	LONG_MAX	0x7fffffffL	/* max value for a long */ | ||
| 60 | #define	LONG_MIN	(-0x7fffffffL-1)	/* min value for a long */ | ||
| 61 | #endif | ||
| 62 | |||
| 63 | #if defined(_ISOC99_SOURCE) || (__STDC_VERSION__ - 0) >= 199901L || \ | ||
| 64 | defined(_NETBSD_SOURCE) | ||
| 65 | #define	ULLONG_MAX	0xffffffffffffffffULL	/* max unsigned long long */ | ||
| 66 | #define	LLONG_MAX	0x7fffffffffffffffLL	/* max signed long long */ | ||
| 67 | #define	LLONG_MIN	(-0x7fffffffffffffffLL-1) /* min signed long long */ | ||
| 68 | #endif | ||
| 69 | |||
| 70 | #if defined(_POSIX_C_SOURCE) || defined(_XOPEN_SOURCE) || \ | ||
| 71 | defined(_NETBSD_SOURCE) | ||
| 72 | #define	SSIZE_MAX	LONG_MAX	/* max value for a ssize_t */ | ||
| 73 | |||
| 74 | #if defined(_NETBSD_SOURCE) | ||
| 75 | #define	SSIZE_MIN	LONG_MIN	/* min value for a ssize_t */ | ||
| 76 | #define	SIZE_T_MAX	ULONG_MAX	/* max value for a size_t */ | ||
| 77 | |||
| 78 | #define	UQUAD_MAX	0xffffffffffffffffULL		/* max unsigned quad */ | ||
| 79 | #define	QUAD_MAX	0x7fffffffffffffffLL		/* max signed quad */ | ||
| 80 | #define	QUAD_MIN	(-0x7fffffffffffffffLL-1)	/* min signed quad */ | ||
| 81 | |||
| 82 | #endif /* _NETBSD_SOURCE */ | ||
| 83 | #endif /* _POSIX_C_SOURCE || _XOPEN_SOURCE || _NETBSD_SOURCE */ | ||
| 84 | |||
| 85 | #if defined(_XOPEN_SOURCE) || defined(_NETBSD_SOURCE) | ||
| 86 | #ifdef _LP64 | ||
| 87 | #define LONG_BIT	64 | ||
| 88 | #else | ||
| 89 | #define LONG_BIT	32 | ||
| 90 | #endif | ||
| 91 | #define WORD_BIT	32 | ||
| 92 | |||
| 93 | #define DBL_DIG		__DBL_DIG__ | ||
| 94 | #define DBL_MAX		__DBL_MAX__ | ||
| 95 | #define DBL_MIN		__DBL_MIN__ | ||
| 96 | |||
| 97 | #define FLT_DIG		__FLT_DIG__ | ||
| 98 | #define FLT_MAX		__FLT_MAX__ | ||
| 99 | #define FLT_MIN		__FLT_MIN__ | ||
| 100 | |||
| 101 | #ifdef __ARM_PCS_AAPCS64 | ||
| 102 | #define LDBL_DIG	__LDBL_DIG__ | ||
| 103 | #define LDBL_MAX	__LDBL_MAX__ | ||
| 104 | #define LDBL_MIN	__LDBL_MIN__ | ||
| 105 | #endif | ||
| 106 | |||
| 107 | #endif /* _XOPEN_SOURCE || _NETBSD_SOURCE */ | ||
| 108 | |||
| 109 | #endif	/* _ARM_LIMITS_H_ */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-netbsd-eabihf/machine/lock.h deleted-221| ... | @@ -1,221 +0,0 @@ | ||
| 1 | /*	$NetBSD: lock.h,v 1.39 2021/05/30 02:28:59 joerg Exp $	*/ | ||
| 2 | |||
| 3 | /*- | ||
| 4 | * Copyright (c) 2000, 2001 The NetBSD Foundation, Inc. | ||
| 5 | * All rights reserved. | ||
| 6 | * | ||
| 7 | * This code is derived from software contributed to The NetBSD Foundation | ||
| 8 | * by Jason R. Thorpe. | ||
| 9 | * | ||
| 10 | * Redistribution and use in source and binary forms, with or without | ||
| 11 | * modification, are permitted provided that the following conditions | ||
| 12 | * are met: | ||
| 13 | * 1. Redistributions of source code must retain the above copyright | ||
| 14 | * notice, this list of conditions and the following disclaimer. | ||
| 15 | * 2. Redistributions in binary form must reproduce the above copyright | ||
| 16 | * notice, this list of conditions and the following disclaimer in the | ||
| 17 | * documentation and/or other materials provided with the distribution. | ||
| 18 | * | ||
| 19 | * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS | ||
| 20 | * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED | ||
| 21 | * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR | ||
| 22 | * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS | ||
| 23 | * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR | ||
| 24 | * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF | ||
| 25 | * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS | ||
| 26 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN | ||
| 27 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) | ||
| 28 | * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE | ||
| 29 | * POSSIBILITY OF SUCH DAMAGE. | ||
| 30 | */ | ||
| 31 | |||
| 32 | /* | ||
| 33 | * Machine-dependent spin lock operations. | ||
| 34 | * | ||
| 35 | * NOTE: The SWP insn used here is available only on ARM architecture | ||
| 36 | * version 3 and later (as well as 2a). What we are going to do is | ||
| 37 | * expect that the kernel will trap and emulate the insn. That will | ||
| 38 | * be slow, but give us the atomicity that we need. | ||
| 39 | */ | ||
| 40 | |||
| 41 | #ifndef _ARM_LOCK_H_ | ||
| 42 | #define	_ARM_LOCK_H_ | ||
| 43 | |||
| 44 | static __inline int | ||
| 45 | __SIMPLELOCK_LOCKED_P(const __cpu_simple_lock_t *__ptr) | ||
| 46 | { | ||
| 47 | 	return *__ptr == __SIMPLELOCK_LOCKED; | ||
| 48 | } | ||
| 49 | |||
| 50 | static __inline int | ||
| 51 | __SIMPLELOCK_UNLOCKED_P(const __cpu_simple_lock_t *__ptr) | ||
| 52 | { | ||
| 53 | 	return *__ptr == __SIMPLELOCK_UNLOCKED; | ||
| 54 | } | ||
| 55 | |||
| 56 | static __inline void | ||
| 57 | __cpu_simple_lock_clear(__cpu_simple_lock_t *__ptr) | ||
| 58 | { | ||
| 59 | 	*__ptr = __SIMPLELOCK_UNLOCKED; | ||
| 60 | } | ||
| 61 | |||
| 62 | static __inline void | ||
| 63 | __cpu_simple_lock_set(__cpu_simple_lock_t *__ptr) | ||
| 64 | { | ||
| 65 | 	*__ptr = __SIMPLELOCK_LOCKED; | ||
| 66 | } | ||
| 67 | |||
| 68 | #if defined(_ARM_ARCH_6) | ||
| 69 | static __inline unsigned int | ||
| 70 | __arm_load_exclusive(__cpu_simple_lock_t *__alp) | ||
| 71 | { | ||
| 72 | 	unsigned int __rv; | ||
| 73 | 	if (/*CONSTCOND*/sizeof(*__alp) == 1) { | ||
| 74 | 		__asm __volatile("ldrexb\t%0,[%1]" : "=r"(__rv) : "r"(__alp)); | ||
| 75 | 	} else { | ||
| 76 | 		__asm __volatile("ldrex\t%0,[%1]" : "=r"(__rv) : "r"(__alp)); | ||
| 77 | 	} | ||
| 78 | 	return __rv; | ||
| 79 | } | ||
| 80 | |||
| 81 | /* returns 0 on success and 1 on failure */ | ||
| 82 | static __inline unsigned int | ||
| 83 | __arm_store_exclusive(__cpu_simple_lock_t *__alp, unsigned int __val) | ||
| 84 | { | ||
| 85 | 	unsigned int __rv; | ||
| 86 | 	if (/*CONSTCOND*/sizeof(*__alp) == 1) { | ||
| 87 | 		__asm __volatile("strexb\t%0,%1,[%2]" | ||
| 88 | 		 : "=&r"(__rv) : "r"(__val), "r"(__alp) : "cc", "memory"); | ||
| 89 | 	} else { | ||
| 90 | 		__asm __volatile("strex\t%0,%1,[%2]" | ||
| 91 | 		 : "=&r"(__rv) : "r"(__val), "r"(__alp) : "cc", "memory"); | ||
| 92 | 	} | ||
| 93 | 	return __rv; | ||
| 94 | } | ||
| 95 | #elif defined(_KERNEL) | ||
| 96 | static __inline unsigned char | ||
| 97 | __swp(unsigned char __val, __cpu_simple_lock_t *__ptr) | ||
| 98 | { | ||
| 99 | 	uint32_t __val32; | ||
| 100 | 	__asm volatile("swpb	%0, %1, [%2]" | ||
| 101 | 	 : "=&r" (__val32) : "r" (__val), "r" (__ptr) : "memory"); | ||
| 102 | 	return __val32; | ||
| 103 | } | ||
| 104 | #else | ||
| 105 | /* | ||
| 106 | * On MP Cortex, SWP no longer guarantees atomic results. Thus we pad | ||
| 107 | * out SWP so that when the cpu generates an undefined exception we can replace | ||
| 108 | * the SWP/MOV instructions with the right LDREX/STREX instructions. | ||
| 109 | * | ||
| 110 | * This is why we force the SWP into the template needed for LDREX/STREX | ||
| 111 | * including the extra instructions and extra register for testing the result. | ||
| 112 | */ | ||
| 113 | static __inline int | ||
| 114 | __swp(int __val, __cpu_simple_lock_t *__ptr) | ||
| 115 | { | ||
| 116 | 	int __tmp, __rv; | ||
| 117 | 	__asm volatile( | ||
| 118 | #if 1 | ||
| 119 | 	"1:\t"	"swp	%[__rv], %[__val], [%[__ptr]]" | ||
| 120 | 	"\n\t"	"b	2f" | ||
| 121 | #else | ||
| 122 | 	"1:\t"	"ldrex	%[__rv],[%[__ptr]]" | ||
| 123 | 	"\n\t"	"strex	%[__tmp],%[__val],[%[__ptr]]" | ||
| 124 | #endif | ||
| 125 | 	"\n\t"	"cmp	%[__tmp],#0" | ||
| 126 | 	"\n\t"	"bne	1b" | ||
| 127 | 	"\n"	"2:" | ||
| 128 | 	 : [__rv] "=&r" (__rv), [__tmp] "=&r" (__tmp) | ||
| 129 | 	 : [__val] "r" (__val), [__ptr] "r" (__ptr) : "cc", "memory"); | ||
| 130 | 	return __rv; | ||
| 131 | } | ||
| 132 | #endif /* !_ARM_ARCH_6 */ | ||
| 133 | |||
| 134 | /* load/dmb implies load-acquire */ | ||
| 135 | static __inline void | ||
| 136 | __arm_load_dmb(void) | ||
| 137 | { | ||
| 138 | #if defined(_ARM_ARCH_7) | ||
| 139 | 	__asm __volatile("dmb ish" ::: "memory"); | ||
| 140 | #elif defined(_ARM_ARCH_6) | ||
| 141 | 	__asm __volatile("mcr\tp15,0,%0,c7,c10,5" :: "r"(0) : "memory"); | ||
| 142 | #endif | ||
| 143 | } | ||
| 144 | |||
| 145 | /* dmb/store implies store-release */ | ||
| 146 | static __inline void | ||
| 147 | __arm_dmb_store(void) | ||
| 148 | { | ||
| 149 | #if defined(_ARM_ARCH_7) | ||
| 150 | 	__asm __volatile("dmb ish" ::: "memory"); | ||
| 151 | #elif defined(_ARM_ARCH_6) | ||
| 152 | 	__asm __volatile("mcr\tp15,0,%0,c7,c10,5" :: "r"(0) : "memory"); | ||
| 153 | #endif | ||
| 154 | } | ||
| 155 | |||
| 156 | |||
| 157 | static __inline void __unused | ||
| 158 | __cpu_simple_lock_init(__cpu_simple_lock_t *__alp) | ||
| 159 | { | ||
| 160 | |||
| 161 | 	*__alp = __SIMPLELOCK_UNLOCKED; | ||
| 162 | } | ||
| 163 | |||
| 164 | #if !defined(__thumb__) || defined(_ARM_ARCH_T2) | ||
| 165 | static __inline void __unused | ||
| 166 | __cpu_simple_lock(__cpu_simple_lock_t *__alp) | ||
| 167 | { | ||
| 168 | #if defined(_ARM_ARCH_6) | ||
| 169 | 	do { | ||
| 170 | 		/* spin */ | ||
| 171 | 	} while (__arm_load_exclusive(__alp) != __SIMPLELOCK_UNLOCKED | ||
| 172 | 		 || __arm_store_exclusive(__alp, __SIMPLELOCK_LOCKED)); | ||
| 173 | 	__arm_load_dmb(); | ||
| 174 | #else | ||
| 175 | 	while (__swp(__SIMPLELOCK_LOCKED, __alp) != __SIMPLELOCK_UNLOCKED) | ||
| 176 | 		continue; | ||
| 177 | #endif | ||
| 178 | } | ||
| 179 | #else | ||
| 180 | void __cpu_simple_lock(__cpu_simple_lock_t *); | ||
| 181 | #endif | ||
| 182 | |||
| 183 | #if !defined(__thumb__) || defined(_ARM_ARCH_T2) | ||
| 184 | static __inline int __unused | ||
| 185 | __cpu_simple_lock_try(__cpu_simple_lock_t *__alp) | ||
| 186 | { | ||
| 187 | #if defined(_ARM_ARCH_6) | ||
| 188 | 	do { | ||
| 189 | 		if (__arm_load_exclusive(__alp) != __SIMPLELOCK_UNLOCKED) { | ||
| 190 | 			return 0; | ||
| 191 | 		} | ||
| 192 | 	} while (__arm_store_exclusive(__alp, __SIMPLELOCK_LOCKED)); | ||
| 193 | 	__arm_load_dmb(); | ||
| 194 | 	return 1; | ||
| 195 | #else | ||
| 196 | 	return (__swp(__SIMPLELOCK_LOCKED, __alp) == __SIMPLELOCK_UNLOCKED); | ||
| 197 | #endif | ||
| 198 | } | ||
| 199 | #else | ||
| 200 | int __cpu_simple_lock_try(__cpu_simple_lock_t *); | ||
| 201 | #endif | ||
| 202 | |||
| 203 | static __inline void __unused | ||
| 204 | __cpu_simple_unlock(__cpu_simple_lock_t *__alp) | ||
| 205 | { | ||
| 206 | |||
| 207 | #if defined(_ARM_ARCH_8) && defined(__LP64__) | ||
| 208 | 	if (sizeof(*__alp) == 1) { | ||
| 209 | 		__asm __volatile("stlrb\t%w0, [%1]" | ||
| 210 | 		 :: "r"(__SIMPLELOCK_UNLOCKED), "r"(__alp) : "memory"); | ||
| 211 | 	} else { | ||
| 212 | 		__asm __volatile("stlr\t%0, [%1]" | ||
| 213 | 		 :: "r"(__SIMPLELOCK_UNLOCKED), "r"(__alp) : "memory"); | ||
| 214 | 	} | ||
| 215 | #else | ||
| 216 | 	__arm_dmb_store(); | ||
| 217 | 	*__alp = __SIMPLELOCK_UNLOCKED; | ||
| 218 | #endif | ||
| 219 | } | ||
| 220 | |||
| 221 | #endif /* _ARM_LOCK_H_ */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-netbsd-eabihf/machine/math.h deleted-6| ... | @@ -1,6 +0,0 @@ | ||
| 1 | /*	$NetBSD: math.h,v 1.4 2014/01/31 19:38:06 matt Exp $	*/ | ||
| 2 | |||
| 3 | #define	__HAVE_NANF | ||
| 4 | #ifdef __ARM_PCS_AAPCS64 | ||
| 5 | #define __HAVE_LONG_DOUBLE	128 | ||
| 6 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/arm-netbsd-eabihf/machine/mcontext.h deleted-284| ... | @@ -1,284 +0,0 @@ | ||
| 1 | /*	$NetBSD: mcontext.h,v 1.23 2021/10/06 05:33:15 skrll Exp $	*/ | ||
| 2 | |||
| 3 | /*- | ||
| 4 | * Copyright (c) 2001, 2002 The NetBSD Foundation, Inc. | ||
| 5 | * All rights reserved. | ||
| 6 | * | ||
| 7 | * This code is derived from software contributed to The NetBSD Foundation | ||
| 8 | * by Klaus Klein and by Jason R. Thorpe of Wasabi Systems, Inc. | ||
| 9 | * | ||
| 10 | * Redistribution and use in source and binary forms, with or without | ||
| 11 | * modification, are permitted provided that the following conditions | ||
| 12 | * are met: | ||
| 13 | * 1. Redistributions of source code must retain the above copyright | ||
| 14 | * notice, this list of conditions and the following disclaimer. | ||
| 15 | * 2. Redistributions in binary form must reproduce the above copyright | ||
| 16 | * notice, this list of conditions and the following disclaimer in the | ||
| 17 | * documentation and/or other materials provided with the distribution. | ||
| 18 | * | ||
| 19 | * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS | ||
| 20 | * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED | ||
| 21 | * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR | ||
| 22 | * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS | ||
| 23 | * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR | ||
| 24 | * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF | ||
| 25 | * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS | ||
| 26 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN | ||
| 27 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) | ||
| 28 | * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE | ||
| 29 | * POSSIBILITY OF SUCH DAMAGE. | ||
| 30 | */ | ||
| 31 | |||
| 32 | #ifndef _ARM_MCONTEXT_H_ | ||
| 33 | #define _ARM_MCONTEXT_H_ | ||
| 34 | |||
| 35 | #include <sys/stdint.h> | ||
| 36 | |||
| 37 | /* | ||
| 38 | * General register state | ||
| 39 | */ | ||
| 40 | #if defined(__aarch64__) | ||
| 41 | #define _NGREG		35	/* GR0-30, SP, PC, SPSR, TPIDR */ | ||
| 42 | #define _NGREG32	17 | ||
| 43 | typedef __uint64_t	__greg_t; | ||
| 44 | typedef unsigned int	__greg32_t; | ||
| 45 | |||
| 46 | typedef __greg32_t	__gregset32_t[_NGREG32]; | ||
| 47 | #elif defined(__arm__) | ||
| 48 | #define _NGREG		17 | ||
| 49 | typedef unsigned int	__greg_t; | ||
| 50 | #endif | ||
| 51 | |||
| 52 | typedef __greg_t	__gregset_t[_NGREG]; | ||
| 53 | |||
| 54 | #define _REG_R0		0 | ||
| 55 | #define _REG_R1		1 | ||
| 56 | #define _REG_R2		2 | ||
| 57 | #define _REG_R3		3 | ||
| 58 | #define _REG_R4		4 | ||
| 59 | #define _REG_R5		5 | ||
| 60 | #define _REG_R6		6 | ||
| 61 | #define _REG_R7		7 | ||
| 62 | #define _REG_R8		8 | ||
| 63 | #define _REG_R9		9 | ||
| 64 | #define _REG_R10	10 | ||
| 65 | #define _REG_R11	11 | ||
| 66 | #define _REG_R12	12 | ||
| 67 | #define _REG_R13	13 | ||
| 68 | #define _REG_R14	14 | ||
| 69 | #define _REG_R15	15 | ||
| 70 | #define _REG_CPSR	16 | ||
| 71 | |||
| 72 | #define _REG_X0		0 | ||
| 73 | #define _REG_X1		1 | ||
| 74 | #define _REG_X2		2 | ||
| 75 | #define _REG_X3		3 | ||
| 76 | #define _REG_X4		4 | ||
| 77 | #define _REG_X5		5 | ||
| 78 | #define _REG_X6		6 | ||
| 79 | #define _REG_X7		7 | ||
| 80 | #define _REG_X8		8 | ||
| 81 | #define _REG_X9		9 | ||
| 82 | #define _REG_X10	10 | ||
| 83 | #define _REG_X11	11 | ||
| 84 | #define _REG_X12	12 | ||
| 85 | #define _REG_X13	13 | ||
| 86 | #define _REG_X14	14 | ||
| 87 | #define _REG_X15	15 | ||
| 88 | #define _REG_X16	16 | ||
| 89 | #define _REG_X17	17 | ||
| 90 | #define _REG_X18	18 | ||
| 91 | #define _REG_X19	19 | ||
| 92 | #define _REG_X20	20 | ||
| 93 | #define _REG_X21	21 | ||
| 94 | #define _REG_X22	22 | ||
| 95 | #define _REG_X23	23 | ||
| 96 | #define _REG_X24	24 | ||
| 97 | #define _REG_X25	25 | ||
| 98 | #define _REG_X26	26 | ||
| 99 | #define _REG_X27	27 | ||
| 100 | #define _REG_X28	28 | ||
| 101 | #define _REG_X29	29 | ||
| 102 | #define _REG_X30	30 | ||
| 103 | #define _REG_X31	31 | ||
| 104 | #define _REG_ELR	32 | ||
| 105 | #define _REG_SPSR	33 | ||
| 106 | #define _REG_TPIDR	34 | ||
| 107 | |||
| 108 | /* Convenience synonyms */ | ||
| 109 | |||
| 110 | #if defined(__aarch64__) | ||
| 111 | #define _REG_RV		_REG_X0 | ||
| 112 | #define _REG_FP		_REG_X29 | ||
| 113 | #define _REG_LR		_REG_X30 | ||
| 114 | #define _REG_SP		_REG_X31 | ||
| 115 | #define _REG_PC		_REG_ELR | ||
| 116 | #elif defined(__arm__) | ||
| 117 | #define _REG_RV		_REG_R0 | ||
| 118 | #define _REG_FP		_REG_R11 | ||
| 119 | #define _REG_SP		_REG_R13 | ||
| 120 | #define _REG_LR		_REG_R14 | ||
| 121 | #define _REG_PC		_REG_R15 | ||
| 122 | #endif | ||
| 123 | |||
| 124 | /* | ||
| 125 | * Floating point register state | ||
| 126 | */ | ||
| 127 | #if defined(__aarch64__) | ||
| 128 | |||
| 129 | #define _NFREG	32			/* Number of SIMD registers */ | ||
| 130 | |||
| 131 | typedef struct { | ||
| 132 | 	union __freg { | ||
| 133 | 		__uint8_t	__b8[16]; | ||
| 134 | 		__uint16_t	__h16[8]; | ||
| 135 | 		__uint32_t	__s32[4]; | ||
| 136 | 		__uint64_t	__d64[2]; | ||
| 137 | 		__uint128_t	__q128[1]; | ||
| 138 | 	}		__qregs[_NFREG] __aligned(16); | ||
| 139 | 	__uint32_t	__fpcr;		/* FPCR */ | ||
| 140 | 	__uint32_t	__fpsr;		/* FPSR */ | ||
| 141 | } __fregset_t; | ||
| 142 | |||
| 143 | /* Compat structures */ | ||
| 144 | typedef struct { | ||
| 145 | #if 1 /* __ARM_EABI__ is default on aarch64 */ | ||
| 146 | 	unsigned int	__vfp_fpscr; | ||
| 147 | 	uint64_t	__vfp_fstmx[32]; | ||
| 148 | 	unsigned int	__vfp_fpsid; | ||
| 149 | #else | ||
| 150 | 	unsigned int	__vfp_fpscr; | ||
| 151 | 	unsigned int	__vfp_fstmx[33]; | ||
| 152 | 	unsigned int	__vfp_fpsid; | ||
| 153 | #endif | ||
| 154 | } __vfpregset32_t; | ||
| 155 | |||
| 156 | typedef struct { | ||
| 157 | 	__gregset32_t	__gregs; | ||
| 158 | 	__vfpregset32_t __vfpregs; | ||
| 159 | 	__greg32_t	_mc_tlsbase; | ||
| 160 | 	__greg32_t	_mc_user_tpid; | ||
| 161 | } mcontext32_t; | ||
| 162 | |||
| 163 | typedef struct { | ||
| 164 | 	__gregset_t	__gregs;	/* General Purpose Register set */ | ||
| 165 | 	__fregset_t	__fregs;	/* FPU/SIMD Register File */ | ||
| 166 | 	__greg_t	__spare[8];	/* future proof */ | ||
| 167 | } mcontext_t; | ||
| 168 | |||
| 169 | #elif defined(__arm__) | ||
| 170 | /* Note: the storage layout of this structure must be identical to ARMFPE! */ | ||
| 171 | typedef struct { | ||
| 172 | 	unsigned int	__fp_fpsr; | ||
| 173 | 	struct { | ||
| 174 | 		unsigned int	__fp_exponent; | ||
| 175 | 		unsigned int	__fp_mantissa_hi; | ||
| 176 | 		unsigned int	__fp_mantissa_lo; | ||
| 177 | 	}		__fp_fr[8]; | ||
| 178 | } __fpregset_t; | ||
| 179 | |||
| 180 | typedef struct { | ||
| 181 | #ifdef __ARM_EABI__ | ||
| 182 | 	unsigned int	__vfp_fpscr; | ||
| 183 | 	uint64_t	__vfp_fstmx[32]; | ||
| 184 | 	unsigned int	__vfp_fpsid; | ||
| 185 | #else | ||
| 186 | 	unsigned int	__vfp_fpscr; | ||
| 187 | 	unsigned int	__vfp_fstmx[33]; | ||
| 188 | 	unsigned int	__vfp_fpsid; | ||
| 189 | #endif | ||
| 190 | } __vfpregset_t; | ||
| 191 | |||
| 192 | typedef struct { | ||
| 193 | 	__gregset_t	__gregs; | ||
| 194 | 	union { | ||
| 195 | 		__fpregset_t __fpregs; | ||
| 196 | 		__vfpregset_t __vfpregs; | ||
| 197 | 	} __fpu; | ||
| 198 | 	__greg_t	_mc_tlsbase; | ||
| 199 | 	__greg_t	_mc_user_tpid; | ||
| 200 | } mcontext_t, mcontext32_t; | ||
| 201 | |||
| 202 | |||
| 203 | #define _UC_MACHINE_PAD	1		/* Padding appended to ucontext_t */ | ||
| 204 | |||
| 205 | #ifdef __ARM_EABI__ | ||
| 206 | #define	__UCONTEXT_SIZE	(256 + 144) | ||
| 207 | #else | ||
| 208 | #define	__UCONTEXT_SIZE	256 | ||
| 209 | #endif | ||
| 210 | |||
| 211 | #endif | ||
| 212 | |||
| 213 | #if defined(_RTLD_SOURCE) || defined(_LIBC_SOURCE) || \ | ||
| 214 | defined(__LIBPTHREAD_SOURCE__) | ||
| 215 | |||
| 216 | #include <sys/tls.h> | ||
| 217 | |||
| 218 | #if defined(__aarch64__) | ||
| 219 | |||
| 220 | __BEGIN_DECLS | ||
| 221 | static __inline void * | ||
| 222 | __lwp_getprivate_fast(void) | ||
| 223 | { | ||
| 224 | 	void *__tpidr; | ||
| 225 | 	__asm __volatile("mrs\t%0, tpidr_el0" : "=r"(__tpidr)); | ||
| 226 | 	return __tpidr; | ||
| 227 | } | ||
| 228 | __END_DECLS | ||
| 229 | |||
| 230 | #elif defined(__arm__) | ||
| 231 | |||
| 232 | __BEGIN_DECLS | ||
| 233 | static __inline void * | ||
| 234 | __lwp_getprivate_fast(void) | ||
| 235 | { | ||
| 236 | #if !defined(__thumb__) || defined(_ARM_ARCH_T2) | ||
| 237 | 	extern void *_lwp_getprivate(void); | ||
| 238 | 	void *rv; | ||
| 239 | 	__asm("mrc p15, 0, %0, c13, c0, 3" : "=r"(rv)); | ||
| 240 | 	if (__predict_true(rv)) | ||
| 241 | 		return rv; | ||
| 242 | 	/* | ||
| 243 | 	 * Some ARM cores are broken and don't raise an undefined fault when an | ||
| 244 | 	 * unrecogized mrc instruction is encountered, but just return zero. | ||
| 245 | 	 * To do deal with that, if we get a zero we (re-)fetch the value using | ||
| 246 | 	 * syscall. | ||
| 247 | 	 */ | ||
| 248 | 	return _lwp_getprivate(); | ||
| 249 | #else | ||
| 250 | 	extern void *__aeabi_read_tp(void); | ||
| 251 | 	return __aeabi_read_tp(); | ||
| 252 | #endif /* !__thumb__ || _ARM_ARCH_T2 */ | ||
| 253 | } | ||
| 254 | __END_DECLS | ||
| 255 | #endif | ||
| 256 | |||
| 257 | #endif /* _RTLD_SOURCE || _LIBC_SOURCE || __LIBPTHREAD_SOURCE__ */ | ||
| 258 | |||
| 259 | /* Machine-dependent uc_flags */ | ||
| 260 | #define _UC_TLSBASE	0x00080000	/* see <sys/ucontext.h> */ | ||
| 261 | |||
| 262 | /* Machine-dependent uc_flags for arm */ | ||
| 263 | #define	_UC_ARM_VFP	0x00010000	/* FPU field is VFP */ | ||
| 264 | |||
| 265 | /* used by signal delivery to indicate status of signal stack */ | ||
| 266 | #define _UC_SETSTACK	0x00020000 | ||
| 267 | #define _UC_CLRSTACK	0x00040000 | ||
| 268 | |||
| 269 | #define _UC_MACHINE_SP(uc)	((uc)->uc_mcontext.__gregs[_REG_SP]) | ||
| 270 | #define _UC_MACHINE_FP(uc)	((uc)->uc_mcontext.__gregs[_REG_FP]) | ||
| 271 | #define _UC_MACHINE_PC(uc)	((uc)->uc_mcontext.__gregs[_REG_PC]) | ||
| 272 | #define _UC_MACHINE_INTRV(uc)	((uc)->uc_mcontext.__gregs[_REG_RV]) | ||
| 273 | |||
| 274 | #define _UC_MACHINE_SET_PC(uc, pc)	\ | ||
| 275 | 				_UC_MACHINE_PC(uc) = (pc) | ||
| 276 | |||
| 277 | #if defined(_KERNEL) | ||
| 278 | __BEGIN_DECLS | ||
| 279 | void vfp_getcontext(struct lwp *, mcontext_t *, int *); | ||
| 280 | void vfp_setcontext(struct lwp *, const mcontext_t *); | ||
| 281 | __END_DECLS | ||
| 282 | #endif | ||
| 283 | |||
| 284 | #endif	/* !_ARM_MCONTEXT_H_ */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-netbsd-eabihf/machine/mutex.h deleted-93| ... | @@ -1,93 +0,0 @@ | ||
| 1 | /*	$NetBSD: mutex.h,v 1.27.4.1 2023/08/09 17:42:01 martin Exp $	*/ | ||
| 2 | |||
| 3 | /*- | ||
| 4 | * Copyright (c) 2002, 2007 The NetBSD Foundation, Inc. | ||
| 5 | * All rights reserved. | ||
| 6 | * | ||
| 7 | * This code is derived from software contributed to The NetBSD Foundation | ||
| 8 | * by Jason R. Thorpe and Andrew Doran. | ||
| 9 | * | ||
| 10 | * Redistribution and use in source and binary forms, with or without | ||
| 11 | * modification, are permitted provided that the following conditions | ||
| 12 | * are met: | ||
| 13 | * 1. Redistributions of source code must retain the above copyright | ||
| 14 | * notice, this list of conditions and the following disclaimer. | ||
| 15 | * 2. Redistributions in binary form must reproduce the above copyright | ||
| 16 | * notice, this list of conditions and the following disclaimer in the | ||
| 17 | * documentation and/or other materials provided with the distribution. | ||
| 18 | * | ||
| 19 | * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS | ||
| 20 | * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED | ||
| 21 | * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR | ||
| 22 | * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS | ||
| 23 | * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR | ||
| 24 | * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF | ||
| 25 | * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS | ||
| 26 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN | ||
| 27 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) | ||
| 28 | * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE | ||
| 29 | * POSSIBILITY OF SUCH DAMAGE. | ||
| 30 | */ | ||
| 31 | |||
| 32 | #ifndef _ARM_MUTEX_H_ | ||
| 33 | #define	_ARM_MUTEX_H_ | ||
| 34 | |||
| 35 | #include <sys/types.h> | ||
| 36 | |||
| 37 | #ifdef _KERNEL | ||
| 38 | #include <machine/intr.h> | ||
| 39 | #endif | ||
| 40 | |||
| 41 | /* | ||
| 42 | * The ARM mutex implementation is troublesome, because pre-v6 ARM lacks a | ||
| 43 | * compare-and-swap operation. However, there aren't any MP pre-v6 ARM | ||
| 44 | * systems to speak of. | ||
| 45 | * | ||
| 46 | * ARMv6 and later, however, does have ldrex/strex, and can thus implement an | ||
| 47 | * MP-safe compare-and-swap. | ||
| 48 | * | ||
| 49 | * So, what we have done is implement simple mutexes using a compare-and-swap. | ||
| 50 | * We support pre-ARMv6 by implementing CAS as a restartable atomic sequence | ||
| 51 | * that is checked by the IRQ vector. | ||
| 52 | * | ||
| 53 | */ | ||
| 54 | |||
| 55 | struct kmutex { | ||
| 56 | 	union { | ||
| 57 | 		/* Adaptive mutex */ | ||
| 58 | 		volatile uintptr_t	mtxa_owner;	/* 0-3 */ | ||
| 59 | |||
| 60 | #ifdef _KERNEL | ||
| 61 | 		/* Spin mutex */ | ||
| 62 | 		struct { | ||
| 63 | 			/* | ||
| 64 | 			 * Since the low bit of mtxa_owner is used to flag this | ||
| 65 | 			 * mutex as a spin mutex, we can't use the first byte | ||
| 66 | 			 * or the last byte to store the ipl or lock values. | ||
| 67 | 			 */ | ||
| 68 | 			volatile uint8_t	mtxs_dummy; | ||
| 69 | 			ipl_cookie_t		mtxs_ipl; | ||
| 70 | 			__cpu_simple_lock_t	mtxs_lock; | ||
| 71 | 			volatile uint8_t	mtxs_unused; | ||
| 72 | 		} s; | ||
| 73 | #endif | ||
| 74 | 	} u; | ||
| 75 | }; | ||
| 76 | |||
| 77 | #ifdef __MUTEX_PRIVATE | ||
| 78 | |||
| 79 | #define	mtx_owner		u.mtxa_owner | ||
| 80 | #define	mtx_ipl			u.s.mtxs_ipl | ||
| 81 | #define	mtx_lock		u.s.mtxs_lock | ||
| 82 | |||
| 83 | #if 0 | ||
| 84 | #define	__HAVE_MUTEX_STUBS		1 | ||
| 85 | #define	__HAVE_SPIN_MUTEX_STUBS		1 | ||
| 86 | #endif | ||
| 87 | #define	__HAVE_SIMPLE_MUTEXES		1 | ||
| 88 | |||
| 89 | #endif	/* __MUTEX_PRIVATE */ | ||
| 90 | |||
| 91 | __CTASSERT(sizeof(struct kmutex) == sizeof(uintptr_t)); | ||
| 92 | |||
| 93 | #endif /* _ARM_MUTEX_H_ */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-netbsd-eabihf/machine/param.h deleted-189| ... | @@ -1,189 +0,0 @@ | ||
| 1 | /*	$NetBSD: param.h,v 1.24 2021/07/19 10:28:58 christos Exp $	*/ | ||
| 2 | |||
| 3 | /* | ||
| 4 | * Copyright (c) 1994,1995 Mark Brinicombe. | ||
| 5 | * All rights reserved. | ||
| 6 | * | ||
| 7 | * Redistribution and use in source and binary forms, with or without | ||
| 8 | * modification, are permitted provided that the following conditions | ||
| 9 | * are met: | ||
| 10 | * 1. Redistributions of source code must retain the above copyright | ||
| 11 | * notice, this list of conditions and the following disclaimer. | ||
| 12 | * 2. Redistributions in binary form must reproduce the above copyright | ||
| 13 | * notice, this list of conditions and the following disclaimer in the | ||
| 14 | * documentation and/or other materials provided with the distribution. | ||
| 15 | * 3. All advertising materials mentioning features or use of this software | ||
| 16 | * must display the following acknowledgement: | ||
| 17 | *	This product includes software developed by the RiscBSD team. | ||
| 18 | * 4. The name "RiscBSD" nor the name of the author may be used to | ||
| 19 | * endorse or promote products derived from this software without specific | ||
| 20 | * prior written permission. | ||
| 21 | * | ||
| 22 | * THIS SOFTWARE IS PROVIDED BY RISCBSD ``AS IS'' AND ANY EXPRESS OR IMPLIED | ||
| 23 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF | ||
| 24 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. | ||
| 25 | * IN NO EVENT SHALL RISCBSD OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, | ||
| 26 | * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES | ||
| 27 | * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR | ||
| 28 | * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) | ||
| 29 | * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT | ||
| 30 | * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY | ||
| 31 | * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | ||
| 32 | * SUCH DAMAGE. | ||
| 33 | */ | ||
| 34 | |||
| 35 | #ifndef	_ARM_PARAM_H_ | ||
| 36 | #define	_ARM_PARAM_H_ | ||
| 37 | |||
| 38 | /* | ||
| 39 | * Machine dependent constants for all ARM processors | ||
| 40 | */ | ||
| 41 | |||
| 42 | /* | ||
| 43 | * For KERNEL code: | ||
| 44 | *	MACHINE must be defined by the individual port. This is so that | ||
| 45 | *	uname returns the correct thing, etc. | ||
| 46 | * | ||
| 47 | *	MACHINE_ARCH may be defined by individual ports as a temporary | ||
| 48 | *	measure while we're finishing the conversion to ELF. | ||
| 49 | * | ||
| 50 | * For non-KERNEL code: | ||
| 51 | *	If ELF, MACHINE and MACHINE_ARCH are forced to "arm/armeb". | ||
| 52 | */ | ||
| 53 | |||
| 54 | #if defined(_KERNEL) | ||
| 55 | # ifndef MACHINE_ARCH			/* XXX For now */ | ||
| 56 | # ifndef __ARMEB__ | ||
| 57 | # ifdef __ARM_EABI__ | ||
| 58 | # define	_MACHINE_ARCH	earm | ||
| 59 | # define	MACHINE_ARCH	"earm" | ||
| 60 | # else | ||
| 61 | # define	_MACHINE_ARCH	arm | ||
| 62 | # define	MACHINE_ARCH	"arm" | ||
| 63 | # endif | ||
| 64 | # else | ||
| 65 | # ifdef __ARM_EABI__ | ||
| 66 | # define	_MACHINE_ARCH	earmeb | ||
| 67 | # define	MACHINE_ARCH	"earmeb" | ||
| 68 | # else | ||
| 69 | # define	_MACHINE_ARCH	armeb | ||
| 70 | # define	MACHINE_ARCH	"armeb" | ||
| 71 | # endif | ||
| 72 | # endif /* __ARMEB__ */ | ||
| 73 | # endif /* MACHINE_ARCH */ | ||
| 74 | #else | ||
| 75 | # undef _MACHINE | ||
| 76 | # undef MACHINE | ||
| 77 | # undef _MACHINE_ARCH | ||
| 78 | # undef MACHINE_ARCH | ||
| 79 | # define	_MACHINE	arm | ||
| 80 | # define	MACHINE		"arm" | ||
| 81 | # ifndef __ARMEB__ | ||
| 82 | # ifdef __ARM_EABI__ | ||
| 83 | # ifdef __ARM_PCS_VFP | ||
| 84 | # ifdef _ARM_ARCH_7 | ||
| 85 | # define	_MACHINE_ARCH	earmv7hf | ||
| 86 | # define	MACHINE_ARCH	"earmv7hf" | ||
| 87 | # elif defined(_ARM_ARCH_6) | ||
| 88 | # define	_MACHINE_ARCH	earmv6hf | ||
| 89 | # define	MACHINE_ARCH	"earmv6hf" | ||
| 90 | # else | ||
| 91 | # define	_MACHINE_ARCH	earmhf | ||
| 92 | # define	MACHINE_ARCH	"earmhf" | ||
| 93 | # endif | ||
| 94 | # else | ||
| 95 | # ifdef _ARM_ARCH_7 | ||
| 96 | # define	_MACHINE_ARCH	earmv7 | ||
| 97 | # define	MACHINE_ARCH	"earmv7" | ||
| 98 | # elif defined(_ARM_ARCH_6) | ||
| 99 | # define	_MACHINE_ARCH	earmv6 | ||
| 100 | # define	MACHINE_ARCH	"earmv6" | ||
| 101 | # elif !defined(_ARM_ARCH_5T) | ||
| 102 | # define	_MACHINE_ARCH	earmv4 | ||
| 103 | # define	MACHINE_ARCH	"earmv4" | ||
| 104 | # else | ||
| 105 | # define	_MACHINE_ARCH	earm | ||
| 106 | # define	MACHINE_ARCH	"earm" | ||
| 107 | # endif | ||
| 108 | # endif | ||
| 109 | # else | ||
| 110 | # define	_MACHINE_ARCH	arm | ||
| 111 | # define	MACHINE_ARCH	"arm" | ||
| 112 | # endif | ||
| 113 | # else | ||
| 114 | # ifdef __ARM_EABI__ | ||
| 115 | # ifdef __ARM_PCS_VFP | ||
| 116 | # ifdef _ARM_ARCH_7 | ||
| 117 | # define	_MACHINE_ARCH	earmv7hfeb | ||
| 118 | # define	MACHINE_ARCH	"earmv7hfeb" | ||
| 119 | # elif defined(_ARM_ARCH_6) | ||
| 120 | # define	_MACHINE_ARCH	earmv6hfeb | ||
| 121 | # define	MACHINE_ARCH	"earmv6hfeb" | ||
| 122 | # else | ||
| 123 | # define	_MACHINE_ARCH	earmhfeb | ||
| 124 | # define	MACHINE_ARCH	"earmhfeb" | ||
| 125 | # endif | ||
| 126 | # else | ||
| 127 | # ifdef _ARM_ARCH_7 | ||
| 128 | # define	_MACHINE_ARCH	earmv7eb | ||
| 129 | # define	MACHINE_ARCH	"earmv7eb" | ||
| 130 | # elif defined(_ARM_ARCH_6) | ||
| 131 | # define	_MACHINE_ARCH	earmv6eb | ||
| 132 | # define	MACHINE_ARCH	"earmv6eb" | ||
| 133 | # elif !defined(_ARM_ARCH_5T) | ||
| 134 | # define	_MACHINE_ARCH	earmv4eb | ||
| 135 | # define	MACHINE_ARCH	"earmv4eb" | ||
| 136 | # else | ||
| 137 | # define	_MACHINE_ARCH	earmeb | ||
| 138 | # define	MACHINE_ARCH	"earmeb" | ||
| 139 | # endif | ||
| 140 | # endif | ||
| 141 | # else | ||
| 142 | # define	_MACHINE_ARCH	armeb | ||
| 143 | # define	MACHINE_ARCH	"armeb" | ||
| 144 | # endif | ||
| 145 | # endif /* __ARMEB__ */ | ||
| 146 | #endif /* !_KERNEL */ | ||
| 147 | |||
| 148 | #define MAXCPUS		8 | ||
| 149 | |||
| 150 | #define	MID_MACHINE	MID_ARM6 | ||
| 151 | |||
| 152 | /* ARM-specific macro to align a stack pointer (downwards). */ | ||
| 153 | #define STACK_ALIGNBYTES	(8 - 1) | ||
| 154 | #ifdef __ARM_EABI__ | ||
| 155 | #define	ALIGNBYTES32	3 | ||
| 156 | #else | ||
| 157 | #define	ALIGNBYTES32	7 | ||
| 158 | #endif | ||
| 159 | |||
| 160 | /* | ||
| 161 | * Constants related to network buffer management. | ||
| 162 | * MCLBYTES must be no larger than NBPG (the software page size), and, | ||
| 163 | * on machines that exchange pages of input or output buffers with mbuf | ||
| 164 | * clusters (MAPPED_MBUFS), MCLBYTES must also be an integral multiple | ||
| 165 | * of the hardware page size. | ||
| 166 | */ | ||
| 167 | #define	MSIZE		256		/* size of an mbuf */ | ||
| 168 | |||
| 169 | #ifndef MCLSHIFT | ||
| 170 | #define	MCLSHIFT	11		/* convert bytes to m_buf clusters */ | ||
| 171 | 					/* 2K cluster can hold Ether frame */ | ||
| 172 | #endif	/* MCLSHIFT */ | ||
| 173 | |||
| 174 | #define	MCLBYTES	(1 << MCLSHIFT)	/* size of a m_buf cluster */ | ||
| 175 | |||
| 176 | #ifndef NMBCLUSTERS_MAX | ||
| 177 | #define	NMBCLUSTERS_MAX	(0x4000000 / MCLBYTES)	/* Limit to 64MB for clusters */ | ||
| 178 | #endif | ||
| 179 | |||
| 180 | /* | ||
| 181 | * Compatibility /dev/zero mapping. | ||
| 182 | */ | ||
| 183 | #ifdef _KERNEL | ||
| 184 | #ifdef COMPAT_16 | ||
| 185 | #define	COMPAT_ZERODEV(x)	(x == makedev(0, _DEV_ZERO_oARM)) | ||
| 186 | #endif | ||
| 187 | #endif /* _KERNEL */ | ||
| 188 | |||
| 189 | #endif /* _ARM_PARAM_H_ */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-netbsd-eabihf/machine/pcb.h deleted-89| ... | @@ -1,89 +0,0 @@ | ||
| 1 | /*	pcb.h,v 1.14.22.2 2007/11/06 23:15:05 matt Exp	*/ | ||
| 2 | |||
| 3 | /* | ||
| 4 | * Copyright (c) 2001 Matt Thomas <matt@3am-software.com>. | ||
| 5 | * Copyright (c) 1994 Mark Brinicombe. | ||
| 6 | * All rights reserved. | ||
| 7 | * | ||
| 8 | * Redistribution and use in source and binary forms, with or without | ||
| 9 | * modification, are permitted provided that the following conditions | ||
| 10 | * are met: | ||
| 11 | * 1. Redistributions of source code must retain the above copyright | ||
| 12 | * notice, this list of conditions and the following disclaimer. | ||
| 13 | * 2. Redistributions in binary form must reproduce the above copyright | ||
| 14 | * notice, this list of conditions and the following disclaimer in the | ||
| 15 | * documentation and/or other materials provided with the distribution. | ||
| 16 | * 3. All advertising materials mentioning features or use of this software | ||
| 17 | * must display the following acknowledgement: | ||
| 18 | *	This product includes software developed by the RiscBSD team. | ||
| 19 | * 4. The name "RiscBSD" nor the name of the author may be used to | ||
| 20 | * endorse or promote products derived from this software without specific | ||
| 21 | * prior written permission. | ||
| 22 | * | ||
| 23 | * THIS SOFTWARE IS PROVIDED BY RISCBSD ``AS IS'' AND ANY EXPRESS OR IMPLIED | ||
| 24 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF | ||
| 25 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. | ||
| 26 | * IN NO EVENT SHALL RISCBSD OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, | ||
| 27 | * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES | ||
| 28 | * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR | ||
| 29 | * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) | ||
| 30 | * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT | ||
| 31 | * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY | ||
| 32 | * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | ||
| 33 | * SUCH DAMAGE. | ||
| 34 | */ | ||
| 35 | |||
| 36 | #ifndef	_ARM_PCB_H_ | ||
| 37 | #define	_ARM_PCB_H_ | ||
| 38 | |||
| 39 | #include <machine/frame.h> | ||
| 40 | |||
| 41 | #include <arm/arm32/pte.h> | ||
| 42 | #include <arm/reg.h> | ||
| 43 | |||
| 44 | struct pcb_faultinfo { | ||
| 45 | 	void *pfi_faultptep; | ||
| 46 | 	vaddr_t pfi_faultaddr; | ||
| 47 | 	u_int pfi_repeats; | ||
| 48 | 	pid_t pfi_lastpid; | ||
| 49 | 	uint8_t pfi_faulttype; | ||
| 50 | }; | ||
| 51 | |||
| 52 | #define	pcb_ksp		pcb_sp | ||
| 53 | |||
| 54 | struct pcb { | ||
| 55 | 	/* | ||
| 56 | 	 * WARNING! | ||
| 57 | 	 * cpuswitchto.S relies on pcb_r8 being quad-aligned | ||
| 58 | 	 * (due to the use of "strd" when compiled for XSCALE) | ||
| 59 | 	 */ | ||
| 60 | 	u_int	pcb_r8 __aligned(8);		/* used */ | ||
| 61 | 	u_int	pcb_r9;				/* used */ | ||
| 62 | 	u_int	pcb_r10;			/* used */ | ||
| 63 | 	u_int	pcb_r11;			/* used */ | ||
| 64 | 	u_int	pcb_r12;			/* used */ | ||
| 65 | 	u_int	pcb_sp;				/* used */ | ||
| 66 | 	u_int	pcb_lr; | ||
| 67 | 	u_int	pcb_pc; | ||
| 68 | |||
| 69 | 	/* | ||
| 70 | 	 * ARMv6 has two user thread/process id registers which can hold | ||
| 71 | 	 * any 32bit quanttiies. | ||
| 72 | 	 */ | ||
| 73 | 	u_int	pcb_user_pid_rw;		/* p15, 0, Rd, c13, c0, 2 */ | ||
| 74 | 	u_int	pcb_user_pid_ro;		/* p15, 0, Rd, c13, c0, 3 */ | ||
| 75 | |||
| 76 | 	void *	pcb_onfault;			/* On fault handler */ | ||
| 77 | 	struct	vfpreg pcb_vfp;			/* VFP registers */ | ||
| 78 | 	struct	vfpreg pcb_kernel_vfp;		/* kernel VFP state */ | ||
| 79 | 	struct pcb_faultinfo pcb_faultinfo; | ||
| 80 | }; | ||
| 81 | |||
| 82 | /* | ||
| 83 | * No additional data for core dumps. | ||
| 84 | */ | ||
| 85 | struct md_coredump { | ||
| 86 | 	int	md_empty; | ||
| 87 | }; | ||
| 88 | |||
| 89 | #endif	/* _ARM_PCB_H_ */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-netbsd-eabihf/machine/proc.h deleted-66| ... | @@ -1,66 +0,0 @@ | ||
| 1 | /*	$NetBSD: proc.h,v 1.19 2020/08/14 16:18:36 skrll Exp $	*/ | ||
| 2 | |||
| 3 | /* | ||
| 4 | * Copyright (c) 1994 Mark Brinicombe. | ||
| 5 | * All rights reserved. | ||
| 6 | * | ||
| 7 | * Redistribution and use in source and binary forms, with or without | ||
| 8 | * modification, are permitted provided that the following conditions | ||
| 9 | * are met: | ||
| 10 | * 1. Redistributions of source code must retain the above copyright | ||
| 11 | * notice, this list of conditions and the following disclaimer. | ||
| 12 | * 2. Redistributions in binary form must reproduce the above copyright | ||
| 13 | * notice, this list of conditions and the following disclaimer in the | ||
| 14 | * documentation and/or other materials provided with the distribution. | ||
| 15 | * 3. All advertising materials mentioning features or use of this software | ||
| 16 | * must display the following acknowledgement: | ||
| 17 | *	This product includes software developed by the RiscBSD team. | ||
| 18 | * 4. The name "RiscBSD" nor the name of the author may be used to | ||
| 19 | * endorse or promote products derived from this software without specific | ||
| 20 | * prior written permission. | ||
| 21 | * | ||
| 22 | * THIS SOFTWARE IS PROVIDED BY RISCBSD ``AS IS'' AND ANY EXPRESS OR IMPLIED | ||
| 23 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF | ||
| 24 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. | ||
| 25 | * IN NO EVENT SHALL RISCBSD OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, | ||
| 26 | * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES | ||
| 27 | * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR | ||
| 28 | * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) | ||
| 29 | * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT | ||
| 30 | * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY | ||
| 31 | * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | ||
| 32 | * SUCH DAMAGE. | ||
| 33 | */ | ||
| 34 | |||
| 35 | #ifndef _ARM_PROC_H_ | ||
| 36 | #define _ARM_PROC_H_ | ||
| 37 | |||
| 38 | /* | ||
| 39 | * Machine-dependent part of the proc structure for arm. | ||
| 40 | */ | ||
| 41 | |||
| 42 | struct trapframe; | ||
| 43 | struct lwp; | ||
| 44 | |||
| 45 | struct mdlwp { | ||
| 46 | 	struct trapframe *md_tf; | ||
| 47 | 	int	md_flags; | ||
| 48 | 	volatile uint32_t md_astpending; | ||
| 49 | }; | ||
| 50 | |||
| 51 | /* Flags setttings for md_flags */ | ||
| 52 | #define MDLWP_NOALIGNFLT	0x00000002	/* For EXEC_AOUT */ | ||
| 53 | #define MDLWP_VFPINTR		0x00000004	/* VFP used in intr */ | ||
| 54 | |||
| 55 | |||
| 56 | struct mdproc { | ||
| 57 | 	void	(*md_syscall)(struct trapframe *, struct lwp *, uint32_t); | ||
| 58 | 	int	pmc_enabled;		/* bitfield of enabled counters */ | ||
| 59 | 	void	*pmc_state;		/* port-specific pmc state */ | ||
| 60 | 	char	md_march[12];		/* machine arch of executable */ | ||
| 61 | }; | ||
| 62 | |||
| 63 | #define	PROC_MACHINE_ARCH(P)	((P)->p_md.md_march) | ||
| 64 | #define	PROC0_MD_INITIALIZERS	.p_md = { .md_march = MACHINE_ARCH }, | ||
| 65 | |||
| 66 | #endif /* _ARM_PROC_H_ */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-netbsd-eabihf/machine/profile.h deleted-181| ... | @@ -1,181 +0,0 @@ | ||
| 1 | /*	$NetBSD: profile.h,v 1.18 2018/01/24 09:04:45 skrll Exp $	*/ | ||
| 2 | |||
| 3 | /* | ||
| 4 | * Copyright (c) 2001 Ben Harris | ||
| 5 | * Copyright (c) 1995-1996 Mark Brinicombe | ||
| 6 | * | ||
| 7 | * Redistribution and use in source and binary forms, with or without | ||
| 8 | * modification, are permitted provided that the following conditions | ||
| 9 | * are met: | ||
| 10 | * 1. Redistributions of source code must retain the above copyright | ||
| 11 | * notice, this list of conditions and the following disclaimer. | ||
| 12 | * 2. Redistributions in binary form must reproduce the above copyright | ||
| 13 | * notice, this list of conditions and the following disclaimer in the | ||
| 14 | * documentation and/or other materials provided with the distribution. | ||
| 15 | * 3. All advertising materials mentioning features or use of this software | ||
| 16 | * must display the following acknowledgement: | ||
| 17 | *	This product includes software developed by Mark Brinicombe. | ||
| 18 | * 4. The name of the author may not be used to endorse or promote products | ||
| 19 | * derived from this software without specific prior written permission. | ||
| 20 | * | ||
| 21 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR | ||
| 22 | * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES | ||
| 23 | * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. | ||
| 24 | * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, | ||
| 25 | * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT | ||
| 26 | * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||
| 27 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY | ||
| 28 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | ||
| 29 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF | ||
| 30 | * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||
| 31 | */ | ||
| 32 | |||
| 33 | #define	_MCOUNT_DECL void _mcount | ||
| 34 | |||
| 35 | /* | ||
| 36 | * Cannot implement mcount in C as GCC will trash the ip register when it | ||
| 37 | * pushes a trapframe. Pity we cannot insert assembly before the function | ||
| 38 | * prologue. | ||
| 39 | */ | ||
| 40 | |||
| 41 | #define MCOUNT_ASM_NAME "__mcount" | ||
| 42 | #define	PLTSYM | ||
| 43 | |||
| 44 | #if !defined(__ARM_EABI__) | ||
| 45 | #define	MCOUNT								\ | ||
| 46 | 	__asm(".text");							\ | ||
| 47 | 	__asm(".align	0");						\ | ||
| 48 | 	__asm(".arm");							\ | ||
| 49 | 	__asm(".type	" MCOUNT_ASM_NAME ",%function");		\ | ||
| 50 | 	__asm(".global	" MCOUNT_ASM_NAME);				\ | ||
| 51 | 	__asm(MCOUNT_ASM_NAME ":");					\ | ||
| 52 | 	/*								\ | ||
| 53 | 	 * Preserve registers that are trashed during mcount		\ | ||
| 54 | 	 */								\ | ||
| 55 | 	__asm("push	{r0-r3, ip, lr}");				\ | ||
| 56 | 	/* Check what mode we're in. EQ => 32, NE => 26 */		\ | ||
| 57 | 	__asm("teq	r0, r0");					\ | ||
| 58 | 	__asm("teq	pc, r15");					\ | ||
| 59 | 	/*								\ | ||
| 60 | 	 * find the return address for mcount,				\ | ||
| 61 | 	 * and the return address for mcount's caller.			\ | ||
| 62 | 	 *								\ | ||
| 63 | 	 * frompcindex = pc pushed by call into self.			\ | ||
| 64 | 	 */								\ | ||
| 65 | 	__asm("moveq	r0, ip");					\ | ||
| 66 | 	__asm("bicne	r0, ip, #0xfc000003");	 			\ | ||
| 67 | 	/*								\ | ||
| 68 | 	 * selfpc = pc pushed by mcount call				\ | ||
| 69 | 	 */								\ | ||
| 70 | 	__asm("moveq	r1, lr");					\ | ||
| 71 | 	__asm("bicne	r1, lr, #0xfc000003");				\ | ||
| 72 | 	/*								\ | ||
| 73 | 	 * Call the real mcount code					\ | ||
| 74 | 	 */								\ | ||
| 75 | 	__asm("bl	" ___STRING(_C_LABEL(_mcount)) PLTSYM);		\ | ||
| 76 | 	/*								\ | ||
| 77 | 	 * Restore registers that were trashed during mcount		\ | ||
| 78 | 	 */								\ | ||
| 79 | 	__asm("pop	{r0-r3, lr}");					\ | ||
| 80 | 	__asm("pop	{pc}");						\ | ||
| 81 | 	__asm(".size	" MCOUNT_ASM_NAME ", .-" MCOUNT_ASM_NAME); | ||
| 82 | #elif defined(__ARM_DWARF_EH__) | ||
| 83 | #define	MCOUNT								\ | ||
| 84 | 	__asm(".text");							\ | ||
| 85 | 	__asm(".align	0");						\ | ||
| 86 | 	__asm(".arm");							\ | ||
| 87 | 	__asm(".type	" MCOUNT_ASM_NAME ",%function");		\ | ||
| 88 | 	__asm(".global	" MCOUNT_ASM_NAME);				\ | ||
| 89 | 	__asm(MCOUNT_ASM_NAME ":");					\ | ||
| 90 | 	__asm(".cfi_startproc");					\ | ||
| 91 | 	/*								\ | ||
| 92 | 	 * Preserve registers that are trashed during mcount		\ | ||
| 93 | 	 */								\ | ||
| 94 | 	__asm("push	{r0-r3, ip, lr}");				\ | ||
| 95 | 	__asm(".cfi_def_cfa_offset 24");				\ | ||
| 96 | 	__asm(".cfi_offset 14, -4");					\ | ||
| 97 | 	__asm(".cfi_offset 12, -8");					\ | ||
| 98 | 	__asm(".cfi_offset 3, -12");					\ | ||
| 99 | 	__asm(".cfi_offset 2, -16");					\ | ||
| 100 | 	__asm(".cfi_offset 1, -20");					\ | ||
| 101 | 	__asm(".cfi_offset 0, -24");					\ | ||
| 102 | 	/*								\ | ||
| 103 | 	 * find the return address for mcount,				\ | ||
| 104 | 	 * and the return address for mcount's caller.			\ | ||
| 105 | 	 *								\ | ||
| 106 | 	 * frompcindex = pc pushed by call into self.			\ | ||
| 107 | 	 */								\ | ||
| 108 | 	__asm("mov	r0, ip");					\ | ||
| 109 | 	/*								\ | ||
| 110 | 	 * selfpc = pc pushed by mcount call				\ | ||
| 111 | 	 */								\ | ||
| 112 | 	__asm("mov	r1, lr");					\ | ||
| 113 | 	/*								\ | ||
| 114 | 	 * Call the real mcount code					\ | ||
| 115 | 	 */								\ | ||
| 116 | 	__asm("bl	" ___STRING(_C_LABEL(_mcount)) PLTSYM);		\ | ||
| 117 | 	/*								\ | ||
| 118 | 	 * Restore registers that were trashed during mcount		\ | ||
| 119 | 	 */								\ | ||
| 120 | 	__asm("pop	{r0-r3, lr}");					\ | ||
| 121 | 	__asm("pop	{pc}");						\ | ||
| 122 | 	__asm(".cfi_endproc");						\ | ||
| 123 | 	__asm(".size	" MCOUNT_ASM_NAME ", .-" MCOUNT_ASM_NAME); | ||
| 124 | #else | ||
| 125 | #define	MCOUNT								\ | ||
| 126 | 	__asm(".text");							\ | ||
| 127 | 	__asm(".align	0");						\ | ||
| 128 | 	__asm(".arm");							\ | ||
| 129 | 	__asm(".type	" MCOUNT_ASM_NAME ",%function");		\ | ||
| 130 | 	__asm(".global	" MCOUNT_ASM_NAME);				\ | ||
| 131 | 	__asm(MCOUNT_ASM_NAME ":");					\ | ||
| 132 | 	__asm(".fnstart");						\ | ||
| 133 | 	__asm(".cfi_startproc");					\ | ||
| 134 | 	/*								\ | ||
| 135 | 	 * Preserve registers that are trashed during mcount		\ | ||
| 136 | 	 */								\ | ||
| 137 | 	__asm("push	{r0-r3, ip, lr}");				\ | ||
| 138 | 	__asm(".save {r0-r3, lr}");					\ | ||
| 139 | 	__asm(".cfi_def_cfa_offset 24");				\ | ||
| 140 | 	__asm(".cfi_offset 14, -4");					\ | ||
| 141 | 	__asm(".cfi_offset 12, -8");					\ | ||
| 142 | 	__asm(".cfi_offset 3, -12");					\ | ||
| 143 | 	__asm(".cfi_offset 2, -16");					\ | ||
| 144 | 	__asm(".cfi_offset 1, -20");					\ | ||
| 145 | 	__asm(".cfi_offset 0, -24");					\ | ||
| 146 | 	/*								\ | ||
| 147 | 	 * find the return address for mcount,				\ | ||
| 148 | 	 * and the return address for mcount's caller.			\ | ||
| 149 | 	 *								\ | ||
| 150 | 	 * frompcindex = pc pushed by call into self.			\ | ||
| 151 | 	 */								\ | ||
| 152 | 	__asm("mov	r0, ip");					\ | ||
| 153 | 	/*								\ | ||
| 154 | 	 * selfpc = pc pushed by mcount call				\ | ||
| 155 | 	 */								\ | ||
| 156 | 	__asm("mov	r1, lr");					\ | ||
| 157 | 	/*								\ | ||
| 158 | 	 * Call the real mcount code					\ | ||
| 159 | 	 */								\ | ||
| 160 | 	__asm("bl	" ___STRING(_C_LABEL(_mcount)) PLTSYM);		\ | ||
| 161 | 	/*								\ | ||
| 162 | 	 * Restore registers that were trashed during mcount		\ | ||
| 163 | 	 */								\ | ||
| 164 | 	__asm("pop	{r0-r3, lr}");					\ | ||
| 165 | 	__asm("pop	{pc}");						\ | ||
| 166 | 	__asm(".cfi_endproc");						\ | ||
| 167 | 	__asm(".fnend");						\ | ||
| 168 | 	__asm(".size	" MCOUNT_ASM_NAME ", .-" MCOUNT_ASM_NAME); | ||
| 169 | #endif | ||
| 170 | |||
| 171 | #ifdef _KERNEL | ||
| 172 | #include <arm/cpufunc.h> | ||
| 173 | /* | ||
| 174 | * splhigh() and splx() are heavyweight, and call mcount(). Therefore | ||
| 175 | * we disabled interrupts (IRQ, but not FIQ) directly on the CPU. | ||
| 176 | * | ||
| 177 | * We're lucky that the CPSR and 's' both happen to be 'int's. | ||
| 178 | */ | ||
| 179 | #define	MCOUNT_ENTER	s = __set_cpsr_c(0x0080, 0x0080);	/* kill IRQ */ | ||
| 180 | #define	MCOUNT_EXIT	__set_cpsr_c(0xffffffff, s);	/* restore old value */ | ||
| 181 | #endif /* _KERNEL */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-netbsd-eabihf/machine/ptrace.h deleted-87| ... | @@ -1,87 +0,0 @@ | ||
| 1 | /*	$NetBSD: ptrace.h,v 1.17 2020/12/14 01:58:48 rin Exp $	*/ | ||
| 2 | |||
| 3 | /* | ||
| 4 | * Copyright (c) 1995 Frank Lancaster | ||
| 5 | * Copyright (c) 1995 Tools GmbH | ||
| 6 | * All rights reserved. | ||
| 7 | * | ||
| 8 | * Redistribution and use in source and binary forms, with or without | ||
| 9 | * modification, are permitted provided that the following conditions | ||
| 10 | * are met: | ||
| 11 | * 1. Redistributions of source code must retain the above copyright | ||
| 12 | * notice, this list of conditions and the following disclaimer. | ||
| 13 | * 2. Redistributions in binary form must reproduce the above copyright | ||
| 14 | * notice, this list of conditions and the following disclaimer in the | ||
| 15 | * documentation and/or other materials provided with the distribution. | ||
| 16 | * 3. All advertising materials mentioning features or use of this software | ||
| 17 | * must display the following acknowledgement: | ||
| 18 | * This product includes software developed by TooLs GmbH. | ||
| 19 | * 4. The name of the author may not be used to endorse or promote products | ||
| 20 | * derived from this software without specific prior written permission | ||
| 21 | * | ||
| 22 | * THIS SOFTWARE IS PROVIDED BY TOOLS GMBH ``AS IS'' AND ANY EXPRESS OR | ||
| 23 | * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES | ||
| 24 | * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. | ||
| 25 | * IN NO EVENT SHALL TOOLS GMBH BE LIABLE FOR ANY DIRECT, INDIRECT, | ||
| 26 | * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT | ||
| 27 | * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||
| 28 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY | ||
| 29 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | ||
| 30 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF | ||
| 31 | * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||
| 32 | */ | ||
| 33 | |||
| 34 | #include <arm/cdefs.h> | ||
| 35 | |||
| 36 | /* | ||
| 37 | * arm-dependent ptrace definitions | ||
| 38 | */ | ||
| 39 | #if 0 | ||
| 40 | /* Exposed to userland for NetBSD 1.6 to 9. Do not reuse for other purpose. */ | ||
| 41 | #define PT_STEP		(PT_FIRSTMACH + 0) /* Not implemented */ | ||
| 42 | #endif | ||
| 43 | #define	PT_GETREGS	(PT_FIRSTMACH + 1) | ||
| 44 | #define	PT_SETREGS	(PT_FIRSTMACH + 2) | ||
| 45 | /* 3 and 4 are for FPE registers */ | ||
| 46 | #define	PT_GETFPREGS	(PT_FIRSTMACH + 5) | ||
| 47 | #define	PT_SETFPREGS	(PT_FIRSTMACH + 6) | ||
| 48 | #if 0 | ||
| 49 | /* Exposed to userland for NetBSD 8 to 9. Do not reuse for other purpose. */ | ||
| 50 | #define PT_SETSTEP	(PT_FIRSTMACH + 7) /* Not implemented */ | ||
| 51 | #define PT_CLEARSTEP	(PT_FIRSTMACH + 8) /* Not implemented */ | ||
| 52 | #endif | ||
| 53 | |||
| 54 | #define PT_MACHDEP_STRINGS \ | ||
| 55 | 	"n/a PT_STEP", \ | ||
| 56 | 	"PT_GETREGS", \ | ||
| 57 | 	"PT_SETREGS", \ | ||
| 58 | 	"old PT_GETFPREGS", \ | ||
| 59 | 	"old PT_SETFPREGS", \ | ||
| 60 | 	"PT_GETFPREGS", \ | ||
| 61 | 	"PT_SETFPREGS", \ | ||
| 62 | 	"n/a PT_SETSTEP", \ | ||
| 63 | 	"n/a PT_CLEARSTEP", | ||
| 64 | |||
| 65 | #include <machine/reg.h> | ||
| 66 | #define PTRACE_REG_PC(_r)		(_r)->r_pc | ||
| 67 | #define PTRACE_REG_FP(_r)		(_r)->r[11] | ||
| 68 | #define PTRACE_REG_SET_PC(_r, _v)	(_r)->r_pc = (_v) | ||
| 69 | #define PTRACE_REG_SP(_r)		(_r)->r_sp | ||
| 70 | #define PTRACE_REG_INTRV(_r)		(_r)->r[0] | ||
| 71 | |||
| 72 | #define PTRACE_ILLEGAL_ASM	__asm __volatile ("udf #0" : : : "memory") | ||
| 73 | |||
| 74 | #if defined(__ARMEL__) || defined(_ARM_ARCH_BE8) | ||
| 75 | #define PTRACE_BREAKPOINT	((const uint8_t[]) { 0xfe, 0xde, 0xff, 0xe7 }) | ||
| 76 | #else | ||
| 77 | #define PTRACE_BREAKPOINT	((const uint8_t[]) { 0xe7, 0xff, 0xde, 0xfe }) | ||
| 78 | #endif | ||
| 79 | |||
| 80 | #ifdef _ARM_ARCH_BE8 | ||
| 81 | #define PTRACE_BREAKPOINT_INSN	0xfedeffe7 | ||
| 82 | #else | ||
| 83 | #define PTRACE_BREAKPOINT_INSN	0xe7ffdefe | ||
| 84 | #endif | ||
| 85 | |||
| 86 | #define PTRACE_BREAKPOINT_ASM	__asm __volatile (".word " ___STRING(PTRACE_BREAKPOINT_INSN) ) | ||
| 87 | #define PTRACE_BREAKPOINT_SIZE	4 | ||
| \ No newline at end of file | |||
lib/libc/include/arm-netbsd-eabihf/machine/reg.h deleted-60| ... | @@ -1,60 +0,0 @@ | ||
| 1 | /*	$NetBSD: reg.h,v 1.6 2014/01/29 00:42:15 matt Exp $	*/ | ||
| 2 | |||
| 3 | /* | ||
| 4 | * Copyright (C) 1994, 1995 Frank Lancaster | ||
| 5 | * Copyright (C) 1994, 1995 TooLs GmbH. | ||
| 6 | * All rights reserved. | ||
| 7 | * | ||
| 8 | * Redistribution and use in source and binary forms, with or without | ||
| 9 | * modification, are permitted provided that the following conditions | ||
| 10 | * are met: | ||
| 11 | * 1. Redistributions of source code must retain the above copyright | ||
| 12 | * notice, this list of conditions and the following disclaimer. | ||
| 13 | * 2. Redistributions in binary form must reproduce the above copyright | ||
| 14 | * notice, this list of conditions and the following disclaimer in the | ||
| 15 | * documentation and/or other materials provided with the distribution. | ||
| 16 | * 3. All advertising materials mentioning features or use of this software | ||
| 17 | * must display the following acknowledgement: | ||
| 18 | *	This product includes software developed by TooLs GmbH. | ||
| 19 | * 4. The name of TooLs GmbH may not be used to endorse or promote products | ||
| 20 | * derived from this software without specific prior written permission. | ||
| 21 | * | ||
| 22 | * THIS SOFTWARE IS PROVIDED BY TOOLS GMBH ``AS IS'' AND ANY EXPRESS OR | ||
| 23 | * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES | ||
| 24 | * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. | ||
| 25 | * IN NO EVENT SHALL TOOLS GMBH BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, | ||
| 26 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, | ||
| 27 | * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; | ||
| 28 | * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, | ||
| 29 | * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR | ||
| 30 | * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF | ||
| 31 | * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||
| 32 | * | ||
| 33 | *	@(#)reg.h	5.5 (Berkeley) 1/18/91 | ||
| 34 | */ | ||
| 35 | |||
| 36 | #ifndef _ARM_REG_H_ | ||
| 37 | #define _ARM_REG_H_ | ||
| 38 | |||
| 39 | struct reg { | ||
| 40 | 	unsigned int r[13]; | ||
| 41 | 	unsigned int r_sp; | ||
| 42 | 	unsigned int r_lr; | ||
| 43 | 	unsigned int r_pc; | ||
| 44 | 	unsigned int r_cpsr; | ||
| 45 | }; | ||
| 46 | |||
| 47 | struct vfpreg { | ||
| 48 | 	uint32_t vfp_fpexc; | ||
| 49 | 	uint32_t vfp_fpscr; | ||
| 50 | 	uint32_t vfp_fpinst; | ||
| 51 | 	uint32_t vfp_fpinst2; | ||
| 52 | 	uint64_t vfp_regs[33];	/* In case we need fstmx format. */ | ||
| 53 | }; | ||
| 54 | |||
| 55 | struct fpreg { | ||
| 56 | 	struct vfpreg fpr_vfp; | ||
| 57 | }; | ||
| 58 | |||
| 59 | |||
| 60 | #endif /* !_ARM_REG_H_ */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-netbsd-eabihf/machine/rwlock.h deleted-1| ... | @@ -1 +0,0 @@ | ||
| 1 | /*	$NetBSD: rwlock.h,v 1.10 2019/11/29 20:04:52 riastradh Exp $	*/ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-netbsd-eabihf/machine/setjmp.h deleted-93| ... | @@ -1,93 +0,0 @@ | ||
| 1 | /*	$NetBSD: setjmp.h,v 1.5 2013/01/11 13:56:32 matt Exp $	*/ | ||
| 2 | |||
| 3 | /* | ||
| 4 | * machine/setjmp.h: machine dependent setjmp-related information. | ||
| 5 | */ | ||
| 6 | |||
| 7 | #define	_JBLEN	64		/* size, in longs, of a jmp_buf */ | ||
| 8 | |||
| 9 | /* | ||
| 10 | * NOTE: The internal structure of a jmp_buf is *PRIVATE* | ||
| 11 | * This information is provided as there is software | ||
| 12 | * that fiddles with this with obtain the stack pointer | ||
| 13 | *	 (yes really ! and its commercial !). | ||
| 14 | * | ||
| 15 | * Description of the setjmp buffer | ||
| 16 | * | ||
| 17 | * word 0	magic number	(dependent on creator) | ||
| 18 | *	13	fpscr		vfp status control register | ||
| 19 | *	14	r4		register 4 | ||
| 20 | *	15	r5		register 5 | ||
| 21 | *	16	r6		register 6 | ||
| 22 | *	17	r7		register 7 | ||
| 23 | *	18	r8		register 8 | ||
| 24 | *	19	r9		register 9 | ||
| 25 | *	20	r10		register 10 (sl) | ||
| 26 | *	21	r11		register 11 (fp) | ||
| 27 | *	22	r12		register 12 (ip) | ||
| 28 | *	23	r13		register 13 (sp) | ||
| 29 | *	24	r14		register 14 (lr) | ||
| 30 | *	25	signal mask	(dependent on magic) | ||
| 31 | *	26	(con't) | ||
| 32 | *	27	(con't) | ||
| 33 | *	28	(con't) | ||
| 34 | *	32-33	d8		(vfp register d8) | ||
| 35 | *	34-35	d9		(vfp register d9) | ||
| 36 | *	36-37	d10		(vfp register d10) | ||
| 37 | *	38-39	d11		(vfp register d11) | ||
| 38 | *	40-41	d12		(vfp register d12) | ||
| 39 | *	42-43	d13		(vfp register d13) | ||
| 40 | *	44-45	d14		(vfp register d14) | ||
| 41 | *	46-47	d15		(vfp register d15) | ||
| 42 | * | ||
| 43 | * The magic number number identifies the jmp_buf and | ||
| 44 | * how the buffer was created as well as providing | ||
| 45 | * a sanity check | ||
| 46 | * | ||
| 47 | * A side note I should mention - Please do not tamper | ||
| 48 | * with the floating point fields. While they are | ||
| 49 | * always saved and restored at the moment this cannot | ||
| 50 | * be garenteed especially if the compiler happens | ||
| 51 | * to be generating soft-float code so no fp | ||
| 52 | * registers will be used. | ||
| 53 | * | ||
| 54 | * Whilst this can be seen an encouraging people to | ||
| 55 | * use the setjmp buffer in this way I think that it | ||
| 56 | * is for the best then if changes occur compiles will | ||
| 57 | * break rather than just having new builds falling over | ||
| 58 | * mysteriously. | ||
| 59 | */ | ||
| 60 | |||
| 61 | #define _JB_MAGIC__SETJMP	0x4278f500 | ||
| 62 | #define _JB_MAGIC_SETJMP	0x4278f501 | ||
| 63 | #define _JB_MAGIC__SETJMP_VFP	0x4278f502 | ||
| 64 | #define _JB_MAGIC_SETJMP_VFP	0x4278f503 | ||
| 65 | |||
| 66 | /* Valid for all jmp_buf's */ | ||
| 67 | |||
| 68 | #define _JB_MAGIC		 0 | ||
| 69 | #define _JB_REG_FPSCR		13 | ||
| 70 | #define _JB_REG_R4		14 | ||
| 71 | #define _JB_REG_R5		15 | ||
| 72 | #define _JB_REG_R6		16 | ||
| 73 | #define _JB_REG_R7		17 | ||
| 74 | #define _JB_REG_R8		18 | ||
| 75 | #define _JB_REG_R9		19 | ||
| 76 | #define _JB_REG_R10		20 | ||
| 77 | #define _JB_REG_R11		21 | ||
| 78 | #define _JB_REG_R12		22 | ||
| 79 | #define _JB_REG_R13		23 | ||
| 80 | #define _JB_REG_R14		24 | ||
| 81 | |||
| 82 | /* Only valid with the _JB_MAGIC_SETJMP magic */ | ||
| 83 | |||
| 84 | #define _JB_SIGMASK		25 | ||
| 85 | |||
| 86 | #define	_JB_REG_D8		32 | ||
| 87 | #define	_JB_REG_D9		34 | ||
| 88 | #define	_JB_REG_D10		36 | ||
| 89 | #define	_JB_REG_D11		38 | ||
| 90 | #define	_JB_REG_D12		40 | ||
| 91 | #define	_JB_REG_D13		42 | ||
| 92 | #define	_JB_REG_D14		44 | ||
| 93 | #define	_JB_REG_D15		46 | ||
| \ No newline at end of file | |||
lib/libc/include/arm-netbsd-eabihf/machine/signal.h deleted-167| ... | @@ -1,167 +0,0 @@ | ||
| 1 | /*	$NetBSD: signal.h,v 1.20 2021/10/30 19:54:58 thorpej Exp $	*/ | ||
| 2 | |||
| 3 | /* | ||
| 4 | * Copyright (c) 1994-1996 Mark Brinicombe. | ||
| 5 | * Copyright (c) 1994 Brini. | ||
| 6 | * All rights reserved. | ||
| 7 | * | ||
| 8 | * This code is derived from software written for Brini by Mark Brinicombe | ||
| 9 | * | ||
| 10 | * Redistribution and use in source and binary forms, with or without | ||
| 11 | * modification, are permitted provided that the following conditions | ||
| 12 | * are met: | ||
| 13 | * 1. Redistributions of source code must retain the above copyright | ||
| 14 | * notice, this list of conditions and the following disclaimer. | ||
| 15 | * 2. Redistributions in binary form must reproduce the above copyright | ||
| 16 | * notice, this list of conditions and the following disclaimer in the | ||
| 17 | * documentation and/or other materials provided with the distribution. | ||
| 18 | * 3. All advertising materials mentioning features or use of this software | ||
| 19 | * must display the following acknowledgement: | ||
| 20 | *	This product includes software developed by Brini. | ||
| 21 | * 4. The name of the company nor the name of the author may be used to | ||
| 22 | * endorse or promote products derived from this software without specific | ||
| 23 | * prior written permission. | ||
| 24 | * | ||
| 25 | * THIS SOFTWARE IS PROVIDED BY BRINI ``AS IS'' AND ANY EXPRESS OR IMPLIED | ||
| 26 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF | ||
| 27 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. | ||
| 28 | * IN NO EVENT SHALL BRINI OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, | ||
| 29 | * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES | ||
| 30 | * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR | ||
| 31 | * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) | ||
| 32 | * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT | ||
| 33 | * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY | ||
| 34 | * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | ||
| 35 | * SUCH DAMAGE. | ||
| 36 | * | ||
| 37 | * RiscBSD kernel project | ||
| 38 | * | ||
| 39 | * signal.h | ||
| 40 | * | ||
| 41 | * Architecture dependent signal types and structures | ||
| 42 | * | ||
| 43 | * Created : 30/09/94 | ||
| 44 | */ | ||
| 45 | |||
| 46 | #ifndef _ARM_SIGNAL_H_ | ||
| 47 | #define _ARM_SIGNAL_H_ | ||
| 48 | |||
| 49 | #include <sys/featuretest.h> | ||
| 50 | #include <sys/sigtypes.h> | ||
| 51 | |||
| 52 | #ifndef _LOCORE | ||
| 53 | typedef int sig_atomic_t; | ||
| 54 | #endif | ||
| 55 | |||
| 56 | #if defined(__arm__) | ||
| 57 | |||
| 58 | #define	__HAVE_STRUCT_SIGCONTEXT | ||
| 59 | |||
| 60 | #if defined(_NETBSD_SOURCE) | ||
| 61 | |||
| 62 | #ifndef _LOCORE | ||
| 63 | /* | ||
| 64 | * Information pushed on stack when a signal is delivered. | ||
| 65 | * This is used by the kernel to restore state following | ||
| 66 | * execution of the signal handler. It is also made available | ||
| 67 | * to the handler to allow it to restore state properly if | ||
| 68 | * a non-standard exit is performed. | ||
| 69 | */ | ||
| 70 | |||
| 71 | #if defined(_KERNEL) | ||
| 72 | struct sigcontext13 { | ||
| 73 | 	int	sc_onstack;		/* sigstack state to restore */ | ||
| 74 | 	int	sc_mask;		/* signal mask to restore (old style) */ | ||
| 75 | |||
| 76 | 	unsigned int sc_spsr; | ||
| 77 | 	unsigned int sc_r0; | ||
| 78 | 	unsigned int sc_r1; | ||
| 79 | 	unsigned int sc_r2; | ||
| 80 | 	unsigned int sc_r3; | ||
| 81 | 	unsigned int sc_r4; | ||
| 82 | 	unsigned int sc_r5; | ||
| 83 | 	unsigned int sc_r6; | ||
| 84 | 	unsigned int sc_r7; | ||
| 85 | 	unsigned int sc_r8; | ||
| 86 | 	unsigned int sc_r9; | ||
| 87 | 	unsigned int sc_r10; | ||
| 88 | 	unsigned int sc_r11; | ||
| 89 | 	unsigned int sc_r12; | ||
| 90 | 	unsigned int sc_usr_sp; | ||
| 91 | 	unsigned int sc_usr_lr; | ||
| 92 | 	unsigned int sc_svc_lr; | ||
| 93 | 	unsigned int sc_pc; | ||
| 94 | }; | ||
| 95 | #endif /* _KERNEL */ | ||
| 96 | |||
| 97 | #if defined(_LIBC) || defined(_KERNEL) | ||
| 98 | struct sigcontext { | ||
| 99 | 	int	sc_onstack;		/* sigstack state to restore */ | ||
| 100 | 	int	__sc_mask13;		/* signal mask to restore (old style) */ | ||
| 101 | |||
| 102 | 	unsigned int sc_spsr; | ||
| 103 | 	unsigned int sc_r0; | ||
| 104 | 	unsigned int sc_r1; | ||
| 105 | 	unsigned int sc_r2; | ||
| 106 | 	unsigned int sc_r3; | ||
| 107 | 	unsigned int sc_r4; | ||
| 108 | 	unsigned int sc_r5; | ||
| 109 | 	unsigned int sc_r6; | ||
| 110 | 	unsigned int sc_r7; | ||
| 111 | 	unsigned int sc_r8; | ||
| 112 | 	unsigned int sc_r9; | ||
| 113 | 	unsigned int sc_r10; | ||
| 114 | 	unsigned int sc_r11; | ||
| 115 | 	unsigned int sc_r12; | ||
| 116 | 	unsigned int sc_usr_sp; | ||
| 117 | 	unsigned int sc_usr_lr; | ||
| 118 | 	unsigned int sc_svc_lr; | ||
| 119 | 	unsigned int sc_pc; | ||
| 120 | |||
| 121 | 	sigset_t sc_mask;		/* signal mask to restore (new style) */ | ||
| 122 | }; | ||
| 123 | #endif /* _LIBC || _KERNEL */ | ||
| 124 | |||
| 125 | #endif /* !_LOCORE */ | ||
| 126 | |||
| 127 | /* Signals codes */ | ||
| 128 | |||
| 129 | /* | ||
| 130 | * SIGFPE codes | ||
| 131 | * | ||
| 132 | * see ieeefp.h for definition of FP exception codes | ||
| 133 | */ | ||
| 134 | |||
| 135 | #define SIG_CODE_FPE_CODE_MASK	0x00000f00	/* Mask for exception code */ | ||
| 136 | #define SIG_CODE_FPE_CODE_SHIFT	8		/* Shift for exception code */ | ||
| 137 | #define SIG_CODE_FPE_TYPE_MASK	0x000000ff	/* Mask for specific code */ | ||
| 138 | |||
| 139 | /* | ||
| 140 | * SIGILL codes | ||
| 141 | * | ||
| 142 | * the signal code is the instruction that raised the signal | ||
| 143 | */ | ||
| 144 | |||
| 145 | /* | ||
| 146 | * SIGBUS and SIGSEGV codes | ||
| 147 | * | ||
| 148 | * The signal code is combination of the fault address and the fault code. | ||
| 149 | * | ||
| 150 | * The fault code is the coproc #15 fault status code | ||
| 151 | * | ||
| 152 | * The exception to this is a SIGBUS or SIGSEGV from a prefetch abort. | ||
| 153 | * In this case the fault status code is not valid so the TYPE_MASK | ||
| 154 | * should be treated as undefined (in practice it is the bottom 4 bits | ||
| 155 | * of the fault address). | ||
| 156 | */ | ||
| 157 | |||
| 158 | #define SIG_CODE_BUS_ADDR_MASK	0xfffffff0 | ||
| 159 | #define SIG_CODE_BUS_TYPE_MASK	0x0000000f | ||
| 160 | #define SIG_CODE_SEGV_ADDR_MASK	SIG_CODE_BUS_ADDR_MASK | ||
| 161 | #define SIG_CODE_SEGV_TYPE_MASK	SIG_CODE_BUS_TYPE_MASK | ||
| 162 | |||
| 163 | #endif	/* _NETBSD_SOURCE */ | ||
| 164 | #endif	/* __arm__ */ | ||
| 165 | #endif	/* !_ARM_SIGNAL_H_ */ | ||
| 166 | |||
| 167 | /* End of signal.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-netbsd-eabihf/machine/sljit_machdep.h deleted-59| ... | @@ -1,59 +0,0 @@ | ||
| 1 | /*	$NetBSD: sljit_machdep.h,v 1.1 2014/07/23 18:19:43 alnsn Exp $	*/ | ||
| 2 | |||
| 3 | /*- | ||
| 4 | * Copyright (c) 2014 Alexander Nasonov. | ||
| 5 | * All rights reserved. | ||
| 6 | * | ||
| 7 | * Redistribution and use in source and binary forms, with or without | ||
| 8 | * modification, are permitted provided that the following conditions | ||
| 9 | * are met: | ||
| 10 | * 1. Redistributions of source code must retain the above copyright | ||
| 11 | * notice, this list of conditions and the following disclaimer. | ||
| 12 | * 2. Redistributions in binary form must reproduce the above copyright | ||
| 13 | * notice, this list of conditions and the following disclaimer in the | ||
| 14 | * documentation and/or other materials provided with the distribution. | ||
| 15 | * | ||
| 16 | * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS | ||
| 17 | * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED | ||
| 18 | * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR | ||
| 19 | * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS | ||
| 20 | * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR | ||
| 21 | * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF | ||
| 22 | * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS | ||
| 23 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN | ||
| 24 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) | ||
| 25 | * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE | ||
| 26 | * POSSIBILITY OF SUCH DAMAGE. | ||
| 27 | */ | ||
| 28 | |||
| 29 | #ifndef _ARM_SLJITARCH_H | ||
| 30 | #define _ARM_SLJITARCH_H | ||
| 31 | |||
| 32 | #include <sys/cdefs.h> | ||
| 33 | |||
| 34 | #ifdef _KERNEL | ||
| 35 | #include <machine/types.h> | ||
| 36 | #include <arm/cpufunc.h> | ||
| 37 | #else | ||
| 38 | #include <stddef.h> | ||
| 39 | #include <stdint.h> | ||
| 40 | #include <arm/sysarch.h> | ||
| 41 | #endif | ||
| 42 | |||
| 43 | #if defined(_ARM_ARCH_T2) | ||
| 44 | #define SLJIT_CONFIG_ARM_THUMB2 1 | ||
| 45 | #elif defined(_ARM_ARCH_7) | ||
| 46 | #define SLJIT_CONFIG_ARM_V7 1 | ||
| 47 | #else | ||
| 48 | #define SLJIT_CONFIG_ARM_V5 1 | ||
| 49 | #endif | ||
| 50 | |||
| 51 | #ifdef _KERNEL | ||
| 52 | #define SLJIT_CACHE_FLUSH(from, to) \ | ||
| 53 | 	cpu_icache_sync_range((vaddr_t)(from), (vsize_t)((to) - (from))) | ||
| 54 | #else | ||
| 55 | #define SLJIT_CACHE_FLUSH(from, to) \ | ||
| 56 | 	(void)arm_sync_icache((uintptr_t)(from), (size_t)((to) - (from))) | ||
| 57 | #endif | ||
| 58 | |||
| 59 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/arm-netbsd-eabihf/machine/sysarch.h deleted-85| ... | @@ -1,85 +0,0 @@ | ||
| 1 | /*	$NetBSD: sysarch.h,v 1.15 2021/10/06 05:33:15 skrll Exp $	*/ | ||
| 2 | |||
| 3 | /* | ||
| 4 | * Copyright (c) 1996-1997 Mark Brinicombe. | ||
| 5 | * All rights reserved. | ||
| 6 | * | ||
| 7 | * Redistribution and use in source and binary forms, with or without | ||
| 8 | * modification, are permitted provided that the following conditions | ||
| 9 | * are met: | ||
| 10 | * 1. Redistributions of source code must retain the above copyright | ||
| 11 | * notice, this list of conditions and the following disclaimer. | ||
| 12 | * 2. Redistributions in binary form must reproduce the above copyright | ||
| 13 | * notice, this list of conditions and the following disclaimer in the | ||
| 14 | * documentation and/or other materials provided with the distribution. | ||
| 15 | * 3. All advertising materials mentioning features or use of this software | ||
| 16 | * must display the following acknowledgement: | ||
| 17 | *	This product includes software developed by Mark Brinicombe. | ||
| 18 | * 4. The name of the company nor the name of the author may be used to | ||
| 19 | * endorse or promote products derived from this software without specific | ||
| 20 | * prior written permission. | ||
| 21 | * | ||
| 22 | * THIS SOFTWARE IS PROVIDED BY AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED | ||
| 23 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF | ||
| 24 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. | ||
| 25 | * IN NO EVENT SHALL AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, | ||
| 26 | * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES | ||
| 27 | * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR | ||
| 28 | * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) | ||
| 29 | * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT | ||
| 30 | * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY | ||
| 31 | * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | ||
| 32 | * SUCH DAMAGE. | ||
| 33 | */ | ||
| 34 | |||
| 35 | #ifndef _ARM_SYSARCH_H_ | ||
| 36 | #define _ARM_SYSARCH_H_ | ||
| 37 | |||
| 38 | #include <sys/cdefs.h> | ||
| 39 | |||
| 40 | /* | ||
| 41 | * Pickup definition of size_t and uintptr_t | ||
| 42 | */ | ||
| 43 | #include <machine/ansi.h> | ||
| 44 | #include <sys/stdint.h> | ||
| 45 | #ifndef _KERNEL | ||
| 46 | #include <stdbool.h> | ||
| 47 | #endif | ||
| 48 | |||
| 49 | #ifdef	_BSD_SIZE_T_ | ||
| 50 | typedef	_BSD_SIZE_T_ size_t; | ||
| 51 | #undef	_BSD_SIZE_T_ | ||
| 52 | #endif | ||
| 53 | |||
| 54 | /* | ||
| 55 | * Architecture specific syscalls (arm) | ||
| 56 | */ | ||
| 57 | |||
| 58 | #define ARM_SYNC_ICACHE		0 | ||
| 59 | #define ARM_DRAIN_WRITEBUF	1 | ||
| 60 | #define ARM_VFP_FPSCR		2 | ||
| 61 | #define ARM_FPU_USED		3 | ||
| 62 | |||
| 63 | struct arm_sync_icache_args { | ||
| 64 | 	uintptr_t	addr;		/* Virtual start address */ | ||
| 65 | 	size_t		len;		/* Region size */ | ||
| 66 | }; | ||
| 67 | |||
| 68 | struct arm_vfp_fpscr_args { | ||
| 69 | 	uint32_t	fpscr_clear;	/* bits to clear */ | ||
| 70 | 	uint32_t	fpscr_set;	/* bits to set */ | ||
| 71 | }; | ||
| 72 | |||
| 73 | struct arm_unaligned_faults_args { | ||
| 74 | 	bool		enabled;	/* unaligned faults are enabled */ | ||
| 75 | }; | ||
| 76 | |||
| 77 | #ifndef _KERNEL | ||
| 78 | __BEGIN_DECLS | ||
| 79 | int	arm_sync_icache(uintptr_t, size_t); | ||
| 80 | int	arm_drain_writebuf(void); | ||
| 81 | int	sysarch(int, void *); | ||
| 82 | __END_DECLS | ||
| 83 | #endif | ||
| 84 | |||
| 85 | #endif /* !_ARM_SYSARCH_H_ */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-netbsd-eabihf/machine/trap.h deleted-83| ... | @@ -1,83 +0,0 @@ | ||
| 1 | /*	$NetBSD: trap.h,v 1.10 2020/12/01 02:48:29 rin Exp $	*/ | ||
| 2 | |||
| 3 | /* | ||
| 4 | * Copyright (c) 1995 Mark Brinicombe. | ||
| 5 | * All rights reserved. | ||
| 6 | * | ||
| 7 | * Redistribution and use in source and binary forms, with or without | ||
| 8 | * modification, are permitted provided that the following conditions | ||
| 9 | * are met: | ||
| 10 | * 1. Redistributions of source code must retain the above copyright | ||
| 11 | * notice, this list of conditions and the following disclaimer. | ||
| 12 | * 2. Redistributions in binary form must reproduce the above copyright | ||
| 13 | * notice, this list of conditions and the following disclaimer in the | ||
| 14 | * documentation and/or other materials provided with the distribution. | ||
| 15 | * 3. All advertising materials mentioning features or use of this software | ||
| 16 | * must display the following acknowledgement: | ||
| 17 | *	This product includes software developed by Mark Brinicombe. | ||
| 18 | * 4. The name of the company nor the name of the author may be used to | ||
| 19 | * endorse or promote products derived from this software without specific | ||
| 20 | * prior written permission. | ||
| 21 | * | ||
| 22 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED | ||
| 23 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF | ||
| 24 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. | ||
| 25 | * IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, | ||
| 26 | * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES | ||
| 27 | * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR | ||
| 28 | * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) | ||
| 29 | * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT | ||
| 30 | * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY | ||
| 31 | * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | ||
| 32 | * SUCH DAMAGE. | ||
| 33 | * | ||
| 34 | * RiscBSD kernel project | ||
| 35 | * | ||
| 36 | * trap.h | ||
| 37 | * | ||
| 38 | * Various trap definitions | ||
| 39 | */ | ||
| 40 | |||
| 41 | #include <arm/cdefs.h> | ||
| 42 | |||
| 43 | /* | ||
| 44 | * Instructions used for breakpoints. | ||
| 45 | * | ||
| 46 | * These are undefined instructions. | ||
| 47 | * Technically the userspace breakpoint could be a SWI but we want to | ||
| 48 | * keep this the same as IPKDB which needs an undefined instruction as | ||
| 49 | * a break point. | ||
| 50 | * | ||
| 51 | * Ideally ARM would define several standard instruction sequences for | ||
| 52 | * use as breakpoints. | ||
| 53 | * | ||
| 54 | * The BKPT instruction isn't much use to us, since its behaviour is | ||
| 55 | * unpredictable on ARMv3 and lower. | ||
| 56 | * | ||
| 57 | * The ARM ARM says that for maximum compatibility, we should use undefined | ||
| 58 | * instructions that look like 0x.7f...f. . | ||
| 59 | */ | ||
| 60 | |||
| 61 | #define GDB_BREAKPOINT		0xe6000011	/* Used by GDB 4.x */ | ||
| 62 | #define IPKDB_BREAKPOINT_DEAD	0xe6000010	/* was used by IPKDB */ | ||
| 63 | #define GDB5_BREAKPOINT		0xe7ffdefe	/* Used by GDB 5.0 */ | ||
| 64 | #define GDB_THUMB_BREAKPOINT	0xdefe		/* Thumb in GDB */ | ||
| 65 | #define KERNEL_BREAKPOINT	0xe7ffffff	/* Used by DDB */ | ||
| 66 | |||
| 67 | /* | ||
| 68 | * DTrace uses 0xe7fffef0 to 0xe7fffeff as breakpoints. | ||
| 69 | * The first byte is used to encode a cond value. | ||
| 70 | */ | ||
| 71 | #define DTRACE_BREAKPOINT	0xe7fffef0 | ||
| 72 | #define DTRACE_BREAKPOINT_MASK	0xfffffff0 | ||
| 73 | #define DTRACE_IS_BREAKPOINT(insn)	((insn & DTRACE_BREAKPOINT_MASK) == DTRACE_BREAKPOINT) | ||
| 74 | |||
| 75 | #ifdef _ARM_ARCH_BE8 | ||
| 76 | #define KBPT_ASM		".word 0xfedeffe7" | ||
| 77 | #else | ||
| 78 | #define KBPT_ASM		".word 0xe7ffdefe" | ||
| 79 | #endif | ||
| 80 | |||
| 81 | #define USER_BREAKPOINT		GDB_BREAKPOINT | ||
| 82 | |||
| 83 | /* End of trap.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-netbsd-eabihf/machine/types.h deleted-107| ... | @@ -1,107 +0,0 @@ | ||
| 1 | /*	$NetBSD: types.h,v 1.40 2020/01/18 14:40:04 skrll Exp $	*/ | ||
| 2 | |||
| 3 | /* | ||
| 4 | * Copyright (c) 1990 The Regents of the University of California. | ||
| 5 | * All rights reserved. | ||
| 6 | * | ||
| 7 | * Redistribution and use in source and binary forms, with or without | ||
| 8 | * modification, are permitted provided that the following conditions | ||
| 9 | * are met: | ||
| 10 | * 1. Redistributions of source code must retain the above copyright | ||
| 11 | * notice, this list of conditions and the following disclaimer. | ||
| 12 | * 2. Redistributions in binary form must reproduce the above copyright | ||
| 13 | * notice, this list of conditions and the following disclaimer in the | ||
| 14 | * documentation and/or other materials provided with the distribution. | ||
| 15 | * 3. Neither the name of the University nor the names of its contributors | ||
| 16 | * may be used to endorse or promote products derived from this software | ||
| 17 | * without specific prior written permission. | ||
| 18 | * | ||
| 19 | * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND | ||
| 20 | * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | ||
| 21 | * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | ||
| 22 | * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE | ||
| 23 | * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||
| 24 | * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS | ||
| 25 | * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) | ||
| 26 | * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT | ||
| 27 | * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY | ||
| 28 | * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | ||
| 29 | * SUCH DAMAGE. | ||
| 30 | * | ||
| 31 | *	from: @(#)types.h	7.5 (Berkeley) 3/9/91 | ||
| 32 | */ | ||
| 33 | |||
| 34 | #ifndef	_ARM_TYPES_H_ | ||
| 35 | #define	_ARM_TYPES_H_ | ||
| 36 | |||
| 37 | #include <sys/cdefs.h> | ||
| 38 | #include <sys/featuretest.h> | ||
| 39 | #include <arm/int_types.h> | ||
| 40 | |||
| 41 | #if defined(_KERNEL) | ||
| 42 | typedef struct label_t {	/* Used by setjmp & longjmp */ | ||
| 43 | int val[11]; | ||
| 44 | } label_t; | ||
| 45 | #endif | ||
| 46 | |||
| 47 | #if defined(_KERNEL) || defined(_KMEMUSER) || defined(_KERNTYPES) || defined(_STANDALONE) | ||
| 48 | typedef unsigned long	paddr_t; | ||
| 49 | typedef unsigned long	psize_t; | ||
| 50 | typedef unsigned long	vaddr_t; | ||
| 51 | typedef unsigned long	vsize_t; | ||
| 52 | #define	PRIxPADDR	"lx" | ||
| 53 | #define	PRIxPSIZE	"lx" | ||
| 54 | #define	PRIuPSIZE	"lu" | ||
| 55 | #define	PRIxVADDR	"lx" | ||
| 56 | #define	PRIxVSIZE	"lx" | ||
| 57 | #define	PRIuVSIZE	"lu" | ||
| 58 | |||
| 59 | #define	VADDR_MAX	ULONG_MAX | ||
| 60 | #define	PADDR_MAX	ULONG_MAX | ||
| 61 | |||
| 62 | typedef int		register_t, register32_t; | ||
| 63 | #define	PRIxREGISTER	"x" | ||
| 64 | |||
| 65 | typedef unsigned short	tlb_asid_t; | ||
| 66 | #endif | ||
| 67 | |||
| 68 | /* | ||
| 69 | * This should have always been an 8-bit type, but since it's been exposed | ||
| 70 | * to user-space, we don't want ABI breakage there. | ||
| 71 | */ | ||
| 72 | #if defined(_KERNEL) | ||
| 73 | typedef unsigned char	__cpu_simple_lock_nv_t; | ||
| 74 | #else | ||
| 75 | typedef	int		__cpu_simple_lock_nv_t; | ||
| 76 | #endif /* _KERNEL */ | ||
| 77 | typedef	int		__register_t; | ||
| 78 | |||
| 79 | #define	__SIMPLELOCK_LOCKED	1 | ||
| 80 | #define	__SIMPLELOCK_UNLOCKED	0 | ||
| 81 | |||
| 82 | #define	__HAVE_COMMON___TLS_GET_ADDR | ||
| 83 | #define	__HAVE_CPU_DATA_FIRST | ||
| 84 | #define	__HAVE_MINIMAL_EMUL | ||
| 85 | #define	__HAVE_NEW_STYLE_BUS_H | ||
| 86 | #define	__HAVE_OLD_DISKLABEL | ||
| 87 | #define	__HAVE_SYSCALL_INTERN | ||
| 88 | #define	__HAVE_TLS_VARIANT_I | ||
| 89 | #define	__HAVE___LWP_GETPRIVATE_FAST | ||
| 90 | #if defined(__ARM_EABI__) && defined(_ARM_ARCH_6) | ||
| 91 | #define	__HAVE_ATOMIC64_OPS | ||
| 92 | #endif | ||
| 93 | #if defined(_ARM_ARCH_6) | ||
| 94 | #define	__HAVE_MAXPROC_HOOK | ||
| 95 | #define	__HAVE_UCAS_MP | ||
| 96 | #endif | ||
| 97 | |||
| 98 | #if defined(_KERNEL) || defined(_KMEMUSER) | ||
| 99 | #define	PCU_FPU			0 | ||
| 100 | #define	PCU_UNIT_COUNT		1 | ||
| 101 | #endif | ||
| 102 | |||
| 103 | #if defined(_KERNEL) | ||
| 104 | #define	__HAVE_RAS | ||
| 105 | #endif | ||
| 106 | |||
| 107 | #endif	/* _ARM_TYPES_H_ */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-netbsd-eabihf/machine/vmparam.h deleted-3| ... | @@ -1,3 +0,0 @@ | ||
| 1 | /* $NetBSD: vmparam.h,v 1.3 2013/05/01 12:00:51 matt Exp $ */ | ||
| 2 | |||
| 3 | #include <arm/arm32/vmparam.h> | ||
| \ No newline at end of file | |||
lib/libc/include/arm-netbsd-eabihf/machine/wchar_limits.h deleted-75| ... | @@ -1,75 +0,0 @@ | ||
| 1 | /*	$NetBSD: wchar_limits.h,v 1.4 2013/01/24 10:17:00 matt Exp $	*/ | ||
| 2 | |||
| 3 | /*- | ||
| 4 | * Copyright (c) 2004 The NetBSD Foundation, Inc. | ||
| 5 | * All rights reserved. | ||
| 6 | * | ||
| 7 | * This code is derived from software contributed to The NetBSD Foundation | ||
| 8 | * by Klaus Klein. | ||
| 9 | * | ||
| 10 | * Redistribution and use in source and binary forms, with or without | ||
| 11 | * modification, are permitted provided that the following conditions | ||
| 12 | * are met: | ||
| 13 | * 1. Redistributions of source code must retain the above copyright | ||
| 14 | * notice, this list of conditions and the following disclaimer. | ||
| 15 | * 2. Redistributions in binary form must reproduce the above copyright | ||
| 16 | * notice, this list of conditions and the following disclaimer in the | ||
| 17 | * documentation and/or other materials provided with the distribution. | ||
| 18 | * | ||
| 19 | * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS | ||
| 20 | * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED | ||
| 21 | * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR | ||
| 22 | * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS | ||
| 23 | * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR | ||
| 24 | * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF | ||
| 25 | * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS | ||
| 26 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN | ||
| 27 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) | ||
| 28 | * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE | ||
| 29 | * POSSIBILITY OF SUCH DAMAGE. | ||
| 30 | */ | ||
| 31 | |||
| 32 | #ifndef _ARM_WCHAR_LIMITS_H_ | ||
| 33 | #define _ARM_WCHAR_LIMITS_H_ | ||
| 34 | |||
| 35 | /* | ||
| 36 | * 7.18.3 Limits of other integer types | ||
| 37 | */ | ||
| 38 | |||
| 39 | /* limits of wchar_t */ | ||
| 40 | |||
| 41 | #ifdef __WCHAR_MIN__ | ||
| 42 | #define	WCHAR_MIN	__WCHAR_MIN__			/* wchar_t	 */ | ||
| 43 | #elif __WCHAR_UNSIGNED__ | ||
| 44 | #define	WCHAR_MIN	0U				/* wchar_t	 */ | ||
| 45 | #else | ||
| 46 | #define	WCHAR_MIN	(-0x7fffffff-1)			/* wchar_t	 */ | ||
| 47 | #endif | ||
| 48 | |||
| 49 | #ifdef __WCHAR_MAX__ | ||
| 50 | #define	WCHAR_MAX	__WCHAR_MAX__			/* wchar_t	 */ | ||
| 51 | #elif __WCHAR_UNSIGNED__ | ||
| 52 | #define	WCHAR_MAX	0xffffffffU			/* wchar_t	 */ | ||
| 53 | #else | ||
| 54 | #define	WCHAR_MAX	0x7fffffff			/* wchar_t	 */ | ||
| 55 | #endif | ||
| 56 | |||
| 57 | /* limits of wint_t */ | ||
| 58 | |||
| 59 | #ifdef __WINT_MIN__ | ||
| 60 | #define	WINT_MIN	__WINT_MIN__			/* wint_t	 */ | ||
| 61 | #elif __WINT_UNSIGNED__ | ||
| 62 | #define	WINT_MIN	0U				/* wint_t	 */ | ||
| 63 | #else | ||
| 64 | #define	WINT_MIN	(-0x7fffffff-1)			/* wint_t	 */ | ||
| 65 | #endif | ||
| 66 | |||
| 67 | #ifdef __WINT_MAX__ | ||
| 68 | #define	WINT_MAX	__WINT_MAX__			/* wint_t	 */ | ||
| 69 | #elif __WINT_UNSIGNED__ | ||
| 70 | #define	WINT_MAX	0xffffffffU			/* wint_t	 */ | ||
| 71 | #else | ||
| 72 | #define	WINT_MAX	0x7fffffff			/* wint_t	 */ | ||
| 73 | #endif | ||
| 74 | |||
| 75 | #endif /* !_ARM_WCHAR_LIMITS_H_ */ | ||
| \ No newline at end of file | |||
lib/libc/include/arm-netbsd-eabihf/unwind.h deleted-102| ... | @@ -1,102 +0,0 @@ | ||
| 1 | //===------------------------------- unwind.h -----------------------------===// | ||
| 2 | // | ||
| 3 | // The LLVM Compiler Infrastructure | ||
| 4 | // | ||
| 5 | // This file is dual licensed under the MIT and the University of Illinois Open | ||
| 6 | // Source Licenses. See LICENSE.TXT for details. | ||
| 7 | // | ||
| 8 | // | ||
| 9 | // C++ ABI Level 1 ABI documented at: | ||
| 10 | // http://mentorembedded.github.io/cxx-abi/abi-eh.html | ||
| 11 | // | ||
| 12 | //===----------------------------------------------------------------------===// | ||
| 13 | |||
| 14 | #ifndef _UNWIND_H | ||
| 15 | #define _UNWIND_H | ||
| 16 | |||
| 17 | #include <stdint.h> | ||
| 18 | #include <stddef.h> | ||
| 19 | |||
| 20 | typedef enum { | ||
| 21 | _URC_NO_REASON = 0, | ||
| 22 | _URC_FOREIGN_EXCEPTION_CAUGHT = 1, | ||
| 23 | _URC_FATAL_PHASE2_ERROR = 2, | ||
| 24 | _URC_FATAL_PHASE1_ERROR = 3, | ||
| 25 | _URC_NORMAL_STOP = 4, | ||
| 26 | _URC_END_OF_STACK = 5, | ||
| 27 | _URC_HANDLER_FOUND = 6, | ||
| 28 | _URC_INSTALL_CONTEXT = 7, | ||
| 29 | _URC_CONTINUE_UNWIND = 8 | ||
| 30 | } _Unwind_Reason_Code; | ||
| 31 | |||
| 32 | typedef enum { | ||
| 33 | _UA_SEARCH_PHASE = 1, | ||
| 34 | _UA_CLEANUP_PHASE = 2, | ||
| 35 | _UA_HANDLER_FRAME = 4, | ||
| 36 | _UA_FORCE_UNWIND = 8, | ||
| 37 | _UA_END_OF_STACK = 16 /* GCC extension */ | ||
| 38 | } _Unwind_Action; | ||
| 39 | |||
| 40 | struct _Unwind_Context; | ||
| 41 | |||
| 42 | struct _Unwind_Exception { | ||
| 43 | uint64_t exception_class; | ||
| 44 | void (*exception_cleanup)(_Unwind_Reason_Code, struct _Unwind_Exception *); | ||
| 45 | uintptr_t private_1; | ||
| 46 | uintptr_t private_2; | ||
| 47 | } __attribute__((__aligned__)); | ||
| 48 | |||
| 49 | typedef _Unwind_Reason_Code (*_Unwind_Stop_Fn)(int, _Unwind_Action, uint64_t, | ||
| 50 | struct _Unwind_Exception *, | ||
| 51 | struct _Unwind_Context *, | ||
| 52 | void *); | ||
| 53 | |||
| 54 | typedef _Unwind_Reason_Code (*__personality_routine)(int, _Unwind_Action, | ||
| 55 | uint64_t, | ||
| 56 | struct _Unwind_Exception *, | ||
| 57 | struct _Unwind_Context *); | ||
| 58 | |||
| 59 | #ifdef _UNWIND_GCC_EXTENSIONS | ||
| 60 | struct dwarf_eh_bases { | ||
| 61 | void *tbase; | ||
| 62 | void *dbase; | ||
| 63 | void *func; | ||
| 64 | }; | ||
| 65 | #endif | ||
| 66 | |||
| 67 | __BEGIN_DECLS | ||
| 68 | |||
| 69 | _Unwind_Reason_Code _Unwind_RaiseException(struct _Unwind_Exception *); | ||
| 70 | void _Unwind_Resume(struct _Unwind_Exception *) __dead; | ||
| 71 | _Unwind_Reason_Code _Unwind_Resume_or_Rethrow(struct _Unwind_Exception *); | ||
| 72 | _Unwind_Reason_Code _Unwind_ForcedUnwind(struct _Unwind_Exception *, | ||
| 73 | _Unwind_Stop_Fn, void *); | ||
| 74 | void _Unwind_DeleteException(struct _Unwind_Exception *); | ||
| 75 | uintptr_t _Unwind_GetGR(struct _Unwind_Context *, int); | ||
| 76 | void _Unwind_SetGR(struct _Unwind_Context *, int, uintptr_t); | ||
| 77 | uintptr_t _Unwind_GetIP(struct _Unwind_Context *); | ||
| 78 | uintptr_t _Unwind_GetIPInfo(struct _Unwind_Context *, int *); | ||
| 79 | uintptr_t _Unwind_GetCFA(struct _Unwind_Context *); | ||
| 80 | void _Unwind_SetIP(struct _Unwind_Context *, uintptr_t); | ||
| 81 | uintptr_t _Unwind_GetRegionStart(struct _Unwind_Context *); | ||
| 82 | uintptr_t _Unwind_GetLanguageSpecificData(struct _Unwind_Context *); | ||
| 83 | uintptr_t _Unwind_GetDataRelBase(struct _Unwind_Context *); | ||
| 84 | uintptr_t _Unwind_GetTextRelBase(struct _Unwind_Context *); | ||
| 85 | |||
| 86 | typedef _Unwind_Reason_Code (*_Unwind_Trace_Fn)(struct _Unwind_Context *, | ||
| 87 | void *); | ||
| 88 | _Unwind_Reason_Code _Unwind_Backtrace(_Unwind_Trace_Fn, void *); | ||
| 89 | void *_Unwind_FindEnclosingFunction(void *); | ||
| 90 | |||
| 91 | void __register_frame(const void *); | ||
| 92 | void __register_frame_info(const void *, void *); | ||
| 93 | void __deregister_frame(const void *); | ||
| 94 | void *__deregister_frame_info(const void *); | ||
| 95 | |||
| 96 | #ifdef _UNWIND_GCC_EXTENSIONS | ||
| 97 | void *_Unwind_Find_FDE(void *, struct dwarf_eh_bases *); | ||
| 98 | #endif | ||
| 99 | |||
| 100 | __END_DECLS | ||
| 101 | |||
| 102 | #endif // _UNWIND_H | ||
| \ No newline at end of file | |||
lib/libc/include/armeb-linux-gnueabi/bits/dl_find_object.h deleted-25| ... | @@ -1,25 +0,0 @@ | ||
| 1 | /* arm definitions for finding objects. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _DLFCN_H | ||
| 20 | # error "Never use <bits/dl_find_object.h> directly; include <dlfcn.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #define DLFO_STRUCT_HAS_EH_DBASE 0 | ||
| 24 | #define DLFO_STRUCT_HAS_EH_COUNT 1 | ||
| 25 | #define DLFO_EH_SEGMENT_TYPE PT_ARM_EXIDX | ||
| \ No newline at end of file | |||
lib/libc/include/armeb-linux-gnueabi/bits/endianness.h deleted-15| ... | @@ -1,15 +0,0 @@ | ||
| 1 | #ifndef _BITS_ENDIANNESS_H | ||
| 2 | #define _BITS_ENDIANNESS_H 1 | ||
| 3 | |||
| 4 | #ifndef _BITS_ENDIAN_H | ||
| 5 | # error "Never use <bits/endianness.h> directly; include <endian.h> instead." | ||
| 6 | #endif | ||
| 7 | |||
| 8 | /* ARM has selectable endianness. */ | ||
| 9 | #ifdef __ARMEB__ | ||
| 10 | #define __BYTE_ORDER __BIG_ENDIAN | ||
| 11 | #else | ||
| 12 | #define __BYTE_ORDER __LITTLE_ENDIAN | ||
| 13 | #endif | ||
| 14 | |||
| 15 | #endif /* bits/endianness.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/armeb-linux-gnueabi/bits/fcntl.h deleted-54| ... | @@ -1,54 +0,0 @@ | ||
| 1 | /* O_*, F_*, FD_* bit values for Linux. | ||
| 2 | Copyright (C) 1995-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef	_FCNTL_H | ||
| 20 | # error "Never use <bits/fcntl.h> directly; include <fcntl.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #define __O_DIRECTORY	 040000	/* Must be a directory.	 */ | ||
| 24 | #define __O_NOFOLLOW	0100000	/* Do not follow links.	 */ | ||
| 25 | #define __O_DIRECT	0200000	/* Direct disk access.	*/ | ||
| 26 | #define __O_LARGEFILE	0400000 | ||
| 27 | |||
| 28 | struct flock | ||
| 29 | { | ||
| 30 | short int l_type;	/* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK.	*/ | ||
| 31 | short int l_whence;	/* Where `l_start' is relative to (like `lseek'). */ | ||
| 32 | #ifndef __USE_FILE_OFFSET64 | ||
| 33 | __off_t l_start;	/* Offset where the lock begins. */ | ||
| 34 | __off_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 35 | #else | ||
| 36 | __off64_t l_start;	/* Offset where the lock begins. */ | ||
| 37 | __off64_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 38 | #endif | ||
| 39 | __pid_t l_pid;	/* Process holding the lock. */ | ||
| 40 | }; | ||
| 41 | |||
| 42 | #ifdef __USE_LARGEFILE64 | ||
| 43 | struct flock64 | ||
| 44 | { | ||
| 45 | short int l_type;	/* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK.	*/ | ||
| 46 | short int l_whence;	/* Where `l_start' is relative to (like `lseek'). */ | ||
| 47 | __off64_t l_start;	/* Offset where the lock begins. */ | ||
| 48 | __off64_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 49 | __pid_t l_pid;	/* Process holding the lock. */ | ||
| 50 | }; | ||
| 51 | #endif | ||
| 52 | |||
| 53 | /* Include generic Linux declarations. */ | ||
| 54 | #include <bits/fcntl-linux.h> | ||
| \ No newline at end of file | |||
lib/libc/include/armeb-linux-gnueabi/bits/fenv.h deleted-90| ... | @@ -1,90 +0,0 @@ | ||
| 1 | /* Copyright (C) 2004-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _FENV_H | ||
| 19 | # error "Never use <bits/fenv.h> directly; include <fenv.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Define bits representing exceptions in the FPU status word. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | FE_INVALID = | ||
| 26 | #define FE_INVALID	1 | ||
| 27 | FE_INVALID, | ||
| 28 | FE_DIVBYZERO = | ||
| 29 | #define FE_DIVBYZERO	2 | ||
| 30 | FE_DIVBYZERO, | ||
| 31 | FE_OVERFLOW = | ||
| 32 | #define FE_OVERFLOW	4 | ||
| 33 | FE_OVERFLOW, | ||
| 34 | FE_UNDERFLOW = | ||
| 35 | #define FE_UNDERFLOW	8 | ||
| 36 | FE_UNDERFLOW, | ||
| 37 | FE_INEXACT = | ||
| 38 | #define FE_INEXACT	16 | ||
| 39 | FE_INEXACT, | ||
| 40 | }; | ||
| 41 | |||
| 42 | /* Amount to shift by to convert an exception to a mask bit. */ | ||
| 43 | #define FE_EXCEPT_SHIFT	8 | ||
| 44 | |||
| 45 | /* All supported exceptions. */ | ||
| 46 | #define FE_ALL_EXCEPT	\ | ||
| 47 | 	(FE_INVALID | FE_DIVBYZERO | FE_OVERFLOW | FE_UNDERFLOW | FE_INEXACT) | ||
| 48 | |||
| 49 | /* VFP supports all of the four defined rounding modes. */ | ||
| 50 | enum | ||
| 51 | { | ||
| 52 | FE_TONEAREST = | ||
| 53 | #define FE_TONEAREST	0 | ||
| 54 | FE_TONEAREST, | ||
| 55 | FE_UPWARD = | ||
| 56 | #define FE_UPWARD	0x400000 | ||
| 57 | FE_UPWARD, | ||
| 58 | FE_DOWNWARD = | ||
| 59 | #define FE_DOWNWARD	0x800000 | ||
| 60 | FE_DOWNWARD, | ||
| 61 | FE_TOWARDZERO = | ||
| 62 | #define FE_TOWARDZERO	0xc00000 | ||
| 63 | FE_TOWARDZERO | ||
| 64 | }; | ||
| 65 | |||
| 66 | /* Type representing exception flags. */ | ||
| 67 | typedef unsigned int fexcept_t; | ||
| 68 | |||
| 69 | /* Type representing floating-point environment. */ | ||
| 70 | typedef struct | ||
| 71 | { | ||
| 72 | unsigned int __cw; | ||
| 73 | } | ||
| 74 | fenv_t; | ||
| 75 | |||
| 76 | /* If the default argument is used we use this value. */ | ||
| 77 | #define FE_DFL_ENV	((const fenv_t *) -1l) | ||
| 78 | |||
| 79 | #ifdef __USE_GNU | ||
| 80 | /* Floating-point environment where none of the exceptions are masked. */ | ||
| 81 | # define FE_NOMASK_ENV ((const fenv_t *) -2) | ||
| 82 | #endif | ||
| 83 | |||
| 84 | #if __GLIBC_USE (IEC_60559_BFP_EXT_C23) | ||
| 85 | /* Type representing floating-point control modes. */ | ||
| 86 | typedef unsigned int femode_t; | ||
| 87 | |||
| 88 | /* Default floating-point control modes. */ | ||
| 89 | # define FE_DFL_MODE	((const femode_t *) -1L) | ||
| 90 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/armeb-linux-gnueabi/bits/floatn.h deleted-52| ... | @@ -1,52 +0,0 @@ | ||
| 1 | /* Macros to control TS 18661-3 glibc features. | ||
| 2 | Copyright (C) 2017-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* Defined to 1 if the current compiler invocation provides a | ||
| 20 | floating-point type with the IEEE 754 binary128 format, and this glibc | ||
| 21 | includes corresponding *f128 interfaces for it. */ | ||
| 22 | #define __HAVE_FLOAT128 0 | ||
| 23 | |||
| 24 | /* Defined to 1 if __HAVE_FLOAT128 is 1 and the type is ABI-distinct | ||
| 25 | from the default float, double and long double types in this glibc. */ | ||
| 26 | #define __HAVE_DISTINCT_FLOAT128 0 | ||
| 27 | |||
| 28 | /* Defined to 1 if the current compiler invocation provides a | ||
| 29 | floating-point type with the right format for _Float64x, and this | ||
| 30 | glibc includes corresponding *f64x interfaces for it. */ | ||
| 31 | #define __HAVE_FLOAT64X 0 | ||
| 32 | |||
| 33 | /* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format | ||
| 34 | of long double. Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has | ||
| 35 | the format of _Float128, which must be different from that of long | ||
| 36 | double. */ | ||
| 37 | #define __HAVE_FLOAT64X_LONG_DOUBLE 0 | ||
| 38 | |||
| 39 | #ifndef __ASSEMBLER__ | ||
| 40 | |||
| 41 | /* Defined to concatenate the literal suffix to be used with _Float128 | ||
| 42 | types, if __HAVE_FLOAT128 is 1. | ||
| 43 | E.g.: #define __f128(x) x##f128. */ | ||
| 44 | # undef __f128 | ||
| 45 | |||
| 46 | /* Defined to a complex binary128 type if __HAVE_FLOAT128 is 1. | ||
| 47 | E.g.: #define __CFLOAT128 _Complex _Float128. */ | ||
| 48 | # undef __CFLOAT128 | ||
| 49 | |||
| 50 | #endif /* !__ASSEMBLER__. */ | ||
| 51 | |||
| 52 | #include <bits/floatn-common.h> | ||
| \ No newline at end of file | |||
lib/libc/include/armeb-linux-gnueabi/bits/hwcap.h deleted-59| ... | @@ -1,59 +0,0 @@ | ||
| 1 | /* Defines for bits in AT_HWCAP. ARM Linux version. | ||
| 2 | Copyright (C) 2012-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #if !defined (_SYS_AUXV_H) && !defined (_LINUX_ARM_SYSDEP_H) | ||
| 20 | # error "Never include <bits/hwcap.h> directly; use <sys/auxv.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* The following must match the kernel's <asm/hwcap.h>. */ | ||
| 24 | #define HWCAP_ARM_SWP		1 | ||
| 25 | #define HWCAP_ARM_HALF		2 | ||
| 26 | #define HWCAP_ARM_THUMB		4 | ||
| 27 | #define HWCAP_ARM_26BIT		8 | ||
| 28 | #define HWCAP_ARM_FAST_MULT	16 | ||
| 29 | #define HWCAP_ARM_FPA		32 | ||
| 30 | #define HWCAP_ARM_VFP		64 | ||
| 31 | #define HWCAP_ARM_EDSP		128 | ||
| 32 | #define HWCAP_ARM_JAVA		256 | ||
| 33 | #define HWCAP_ARM_IWMMXT	512 | ||
| 34 | #define HWCAP_ARM_CRUNCH	1024 | ||
| 35 | #define HWCAP_ARM_THUMBEE	2048 | ||
| 36 | #define HWCAP_ARM_NEON		4096 | ||
| 37 | #define HWCAP_ARM_VFPv3		8192 | ||
| 38 | #define HWCAP_ARM_VFPv3D16	16384 | ||
| 39 | #define HWCAP_ARM_TLS		32768 | ||
| 40 | #define HWCAP_ARM_VFPv4		65536 | ||
| 41 | #define HWCAP_ARM_IDIVA		131072 | ||
| 42 | #define HWCAP_ARM_IDIVT		262144 | ||
| 43 | #define HWCAP_ARM_VFPD32	524288 | ||
| 44 | #define HWCAP_ARM_LPAE		1048576 | ||
| 45 | #define HWCAP_ARM_EVTSTRM	2097152 | ||
| 46 | #define HWCAP_FPHP		4194304 | ||
| 47 | #define HWCAP_ASIMDHP		8388608 | ||
| 48 | #define HWCAP_ASIMDDP		16777216 | ||
| 49 | #define HWCAP_ASIMDFHM		33554432 | ||
| 50 | #define HWCAP_ASIMDBF16		67108864 | ||
| 51 | #define HWCAP_I8MM		134217728 | ||
| 52 | |||
| 53 | #define HWCAP2_AES		1 | ||
| 54 | #define HWCAP2_PMULL		2 | ||
| 55 | #define HWCAP2_SHA1		4 | ||
| 56 | #define HWCAP2_SHA2		8 | ||
| 57 | #define HWCAP2_CRC32		16 | ||
| 58 | #define HWCAP2_SB		32 | ||
| 59 | #define HWCAP2_SSBS		64 | ||
| \ No newline at end of file | |||
lib/libc/include/armeb-linux-gnueabi/bits/link.h deleted-65| ... | @@ -1,65 +0,0 @@ | ||
| 1 | /* Copyright (C) 2005-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_LINK_H | ||
| 19 | # error "Never include <bits/link.h> directly; use <link.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | |||
| 23 | /* Registers for entry into PLT on ARM. */ | ||
| 24 | typedef struct La_arm_regs | ||
| 25 | { | ||
| 26 | uint32_t lr_reg[4]; | ||
| 27 | uint32_t lr_sp; | ||
| 28 | uint32_t lr_lr; | ||
| 29 | /* Coprocessor registers used for argument passing. The data | ||
| 30 | stored here depends on the coprocessors available in the | ||
| 31 | system which are used for function calls in the current ABI. | ||
| 32 | VFP uses eight 64-bit registers, and iWMMXt uses ten. */ | ||
| 33 | uint32_t lr_coproc[42]; | ||
| 34 | } La_arm_regs; | ||
| 35 | |||
| 36 | /* Return values for calls from PLT on ARM. */ | ||
| 37 | typedef struct La_arm_retval | ||
| 38 | { | ||
| 39 | /* Up to four integer registers can be used for a return value in | ||
| 40 | some ABIs (APCS complex long double). */ | ||
| 41 | uint32_t lrv_reg[4]; | ||
| 42 | |||
| 43 | /* Any coprocessor registers which might be used to return values | ||
| 44 | in the current ABI. */ | ||
| 45 | uint32_t lrv_coproc[12]; | ||
| 46 | } La_arm_retval; | ||
| 47 | |||
| 48 | |||
| 49 | __BEGIN_DECLS | ||
| 50 | |||
| 51 | extern Elf32_Addr la_arm_gnu_pltenter (Elf32_Sym *__sym, unsigned int __ndx, | ||
| 52 | 				 uintptr_t *__refcook, | ||
| 53 | 				 uintptr_t *__defcook, | ||
| 54 | 				 La_arm_regs *__regs, | ||
| 55 | 				 unsigned int *__flags, | ||
| 56 | 				 const char *__symname, | ||
| 57 | 				 long int *__framesizep); | ||
| 58 | extern unsigned int la_arm_gnu_pltexit (Elf32_Sym *__sym, unsigned int __ndx, | ||
| 59 | 					uintptr_t *__refcook, | ||
| 60 | 					uintptr_t *__defcook, | ||
| 61 | 					const La_arm_regs *__inregs, | ||
| 62 | 					La_arm_retval *__outregs, | ||
| 63 | 					const char *__symname); | ||
| 64 | |||
| 65 | __END_DECLS | ||
| \ No newline at end of file | |||
lib/libc/include/armeb-linux-gnueabi/bits/long-double.h deleted-53| ... | @@ -1,53 +0,0 @@ | ||
| 1 | /* Properties of long double type. | ||
| 2 | Copyright (C) 2016-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* This header is included by <sys/cdefs.h>. | ||
| 20 | |||
| 21 | If long double is ABI-compatible with double, it should define | ||
| 22 | __NO_LONG_DOUBLE_MATH to 1; otherwise, it should leave | ||
| 23 | __NO_LONG_DOUBLE_MATH undefined. | ||
| 24 | |||
| 25 | If this build of the GNU C Library supports both long double | ||
| 26 | ABI-compatible with double and some other long double format not | ||
| 27 | ABI-compatible with double, it should define | ||
| 28 | __LONG_DOUBLE_MATH_OPTIONAL to 1; otherwise, it should leave | ||
| 29 | __LONG_DOUBLE_MATH_OPTIONAL undefined. | ||
| 30 | |||
| 31 | If __NO_LONG_DOUBLE_MATH is already defined, this header must not | ||
| 32 | define anything; this is needed to work with the definition of | ||
| 33 | __NO_LONG_DOUBLE_MATH in nldbl-compat.h. */ | ||
| 34 | |||
| 35 | /* In the default version of this header, long double is | ||
| 36 | ABI-compatible with double. */ | ||
| 37 | #ifndef __NO_LONG_DOUBLE_MATH | ||
| 38 | # define __NO_LONG_DOUBLE_MATH	1 | ||
| 39 | #endif | ||
| 40 | |||
| 41 | /* The macro __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI is used to determine the | ||
| 42 | choice of the underlying ABI of long double. It will always assume | ||
| 43 | a constant value for each translation unit. | ||
| 44 | |||
| 45 | If the value is non-zero, any API which is parameterized by the long | ||
| 46 | double type (i.e the scanf/printf family of functions or the explicitly | ||
| 47 | parameterized math.h functions) will be redirected to a compatible | ||
| 48 | implementation using _Float128 ABI via symbols suffixed with ieee128. | ||
| 49 | |||
| 50 | The mechanism this macro uses to acquire may be a function | ||
| 51 | of architecture, or target specific options used to invoke the | ||
| 52 | compiler. */ | ||
| 53 | #define __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI 0 | ||
| \ No newline at end of file | |||
lib/libc/include/armeb-linux-gnueabi/bits/procfs-id.h deleted-25| ... | @@ -1,25 +0,0 @@ | ||
| 1 | /* Types of pr_uid and pr_gid in struct elf_prpsinfo. Arm version. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library; if not, see | ||
| 18 | <https://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifndef _SYS_PROCFS_H | ||
| 21 | # error "Never include <bits/procfs-id.h> directly; use <sys/procfs.h> instead." | ||
| 22 | #endif | ||
| 23 | |||
| 24 | typedef unsigned short int __pr_uid_t; | ||
| 25 | typedef unsigned short int __pr_gid_t; | ||
| \ No newline at end of file | |||
lib/libc/include/armeb-linux-gnueabi/bits/procfs.h deleted-34| ... | @@ -1,34 +0,0 @@ | ||
| 1 | /* Types for registers for sys/procfs.h. Arm version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_PROCFS_H | ||
| 20 | # error "Never include <bits/procfs.h> directly; use <sys/procfs.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Type for a general-purpose register. */ | ||
| 24 | typedef unsigned long elf_greg_t; | ||
| 25 | |||
| 26 | /* And the whole bunch of them. We could have used `struct | ||
| 27 | user_regs' directly in the typedef, but tradition says that | ||
| 28 | the register set is an array, which does have some peculiar | ||
| 29 | semantics, so leave it that way. */ | ||
| 30 | #define ELF_NGREG (sizeof (struct user_regs) / sizeof (elf_greg_t)) | ||
| 31 | typedef elf_greg_t elf_gregset_t[ELF_NGREG]; | ||
| 32 | |||
| 33 | /* Register set for the floating-point registers. */ | ||
| 34 | typedef struct user_fpregs elf_fpregset_t; | ||
| \ No newline at end of file | |||
lib/libc/include/armeb-linux-gnueabi/bits/rseq.h deleted-83| ... | @@ -1,83 +0,0 @@ | ||
| 1 | /* Restartable Sequences Linux arm architecture header. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_RSEQ_H | ||
| 19 | # error "Never use <bits/rseq.h> directly; include <sys/rseq.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* | ||
| 23 | RSEQ_SIG is a signature required before each abort handler code. | ||
| 24 | |||
| 25 | It is a 32-bit value that maps to actual architecture code compiled | ||
| 26 | into applications and libraries. It needs to be defined for each | ||
| 27 | architecture. When choosing this value, it needs to be taken into | ||
| 28 | account that generating invalid instructions may have ill effects on | ||
| 29 | tools like objdump, and may also have impact on the CPU speculative | ||
| 30 | execution efficiency in some cases. | ||
| 31 | |||
| 32 | - ARM little endian | ||
| 33 | |||
| 34 | RSEQ_SIG uses the udf A32 instruction with an uncommon immediate operand | ||
| 35 | value 0x5de3. This traps if user-space reaches this instruction by mistake, | ||
| 36 | and the uncommon operand ensures the kernel does not move the instruction | ||
| 37 | pointer to attacker-controlled code on rseq abort. | ||
| 38 | |||
| 39 | The instruction pattern in the A32 instruction set is: | ||
| 40 | |||
| 41 | e7f5def3 udf #24035 ; 0x5de3 | ||
| 42 | |||
| 43 | This translates to the following instruction pattern in the T16 instruction | ||
| 44 | set: | ||
| 45 | |||
| 46 | little endian: | ||
| 47 | def3 udf #243 ; 0xf3 | ||
| 48 | e7f5 b.n <7f5> | ||
| 49 | |||
| 50 | - ARMv6+ big endian (BE8): | ||
| 51 | |||
| 52 | ARMv6+ -mbig-endian generates mixed endianness code vs data: little-endian | ||
| 53 | code and big-endian data. The data value of the signature needs to have its | ||
| 54 | byte order reversed to generate the trap instruction: | ||
| 55 | |||
| 56 | Data: 0xf3def5e7 | ||
| 57 | |||
| 58 | Translates to this A32 instruction pattern: | ||
| 59 | |||
| 60 | e7f5def3 udf #24035 ; 0x5de3 | ||
| 61 | |||
| 62 | Translates to this T16 instruction pattern: | ||
| 63 | |||
| 64 | def3 udf #243 ; 0xf3 | ||
| 65 | e7f5 b.n <7f5> | ||
| 66 | |||
| 67 | - Prior to ARMv6 big endian (BE32): | ||
| 68 | |||
| 69 | Prior to ARMv6, -mbig-endian generates big-endian code and data | ||
| 70 | (which match), so the endianness of the data representation of the | ||
| 71 | signature should not be reversed. However, the choice between BE32 | ||
| 72 | and BE8 is done by the linker, so we cannot know whether code and | ||
| 73 | data endianness will be mixed before the linker is invoked. So rather | ||
| 74 | than try to play tricks with the linker, the rseq signature is simply | ||
| 75 | data (not a trap instruction) prior to ARMv6 on big endian. This is | ||
| 76 | why the signature is expressed as data (.word) rather than as | ||
| 77 | instruction (.inst) in assembler. */ | ||
| 78 | |||
| 79 | #ifdef __ARMEB__ | ||
| 80 | # define RSEQ_SIG 0xf3def5e7 /* udf #24035 ; 0x5de3 (ARMv6+) */ | ||
| 81 | #else | ||
| 82 | # define RSEQ_SIG 0xe7f5def3 /* udf #24035 ; 0x5de3 */ | ||
| 83 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/armeb-linux-gnueabi/bits/setjmp.h deleted-36| ... | @@ -1,36 +0,0 @@ | ||
| 1 | /* Copyright (C) 2004-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | /* Define the machine-dependent type `jmp_buf'. ARM EABI version. */ | ||
| 19 | |||
| 20 | #ifndef _BITS_SETJMP_H | ||
| 21 | #define _BITS_SETJMP_H 1 | ||
| 22 | |||
| 23 | #if !defined _SETJMP_H && !defined _PTHREAD_H | ||
| 24 | # error "Never include <bits/setjmp.h> directly; use <setjmp.h> instead." | ||
| 25 | #endif | ||
| 26 | |||
| 27 | #ifndef __ASSEMBLER__ | ||
| 28 | /* The exact set of registers saved may depend on the particular core | ||
| 29 | in use, as some coprocessor registers may need to be saved. The C | ||
| 30 | Library ABI requires that the buffer be 8-byte aligned, and | ||
| 31 | recommends that the buffer contain 64 words. The first 26 words | ||
| 32 | are occupied by sp, lr, v1-v6, sl, fp, and d8-d15. */ | ||
| 33 | typedef int __jmp_buf[64] __attribute__((__aligned__ (8))); | ||
| 34 | #endif | ||
| 35 | |||
| 36 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/armeb-linux-gnueabi/bits/shmlba.h deleted-29| ... | @@ -1,29 +0,0 @@ | ||
| 1 | /* Define SHMLBA. ARM version. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SHM_H | ||
| 20 | # error "Never use <bits/shmlba.h> directly; include <sys/shm.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | __BEGIN_DECLS | ||
| 24 | |||
| 25 | /* Segment low boundary address multiple. */ | ||
| 26 | #define SHMLBA		(__getpagesize () << 2) | ||
| 27 | extern int __getpagesize (void) __THROW __attribute__ ((__const__)); | ||
| 28 | |||
| 29 | __END_DECLS | ||
| \ No newline at end of file | |||
lib/libc/include/armeb-linux-gnueabi/bits/struct_stat.h deleted-139| ... | @@ -1,139 +0,0 @@ | ||
| 1 | /* Definition for struct stat. Linux/arm version. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #if !defined _SYS_STAT_H && !defined _FCNTL_H | ||
| 20 | # error "Never include <bits/struct_stat.h> directly; use <sys/stat.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef _BITS_STRUCT_STAT_H | ||
| 24 | #define _BITS_STRUCT_STAT_H	1 | ||
| 25 | |||
| 26 | #include <bits/endian.h> | ||
| 27 | #include <bits/wordsize.h> | ||
| 28 | |||
| 29 | struct stat | ||
| 30 | { | ||
| 31 | #ifdef __USE_TIME64_REDIRECTS | ||
| 32 | # include <bits/struct_stat_time64_helper.h> | ||
| 33 | #else | ||
| 34 | __dev_t st_dev;			/* Device. */ | ||
| 35 | unsigned short int __pad1; | ||
| 36 | # ifndef __USE_FILE_OFFSET64 | ||
| 37 | __ino_t st_ino;			/* File serial number.	*/ | ||
| 38 | # else | ||
| 39 | __ino_t __st_ino;			/* 32bit file serial number.	*/ | ||
| 40 | # endif | ||
| 41 | __mode_t st_mode;			/* File mode. */ | ||
| 42 | __nlink_t st_nlink;			/* Link count. */ | ||
| 43 | __uid_t st_uid;			/* User ID of the file's owner.	*/ | ||
| 44 | __gid_t st_gid;			/* Group ID of the file's group.*/ | ||
| 45 | __dev_t st_rdev;			/* Device number, if device. */ | ||
| 46 | unsigned short int __pad2; | ||
| 47 | # ifndef __USE_FILE_OFFSET64 | ||
| 48 | __off_t st_size;			/* Size of file, in bytes. */ | ||
| 49 | # else | ||
| 50 | __off64_t st_size;			/* Size of file, in bytes. */ | ||
| 51 | # endif | ||
| 52 | __blksize_t st_blksize;		/* Optimal block size for I/O. */ | ||
| 53 | |||
| 54 | # ifndef __USE_FILE_OFFSET64 | ||
| 55 | __blkcnt_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 56 | # else | ||
| 57 | __blkcnt64_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 58 | # endif | ||
| 59 | # ifdef __USE_XOPEN2K8 | ||
| 60 | /* Nanosecond resolution timestamps are stored in a format | ||
| 61 | equivalent to 'struct timespec'. This is the type used | ||
| 62 | whenever possible but the Unix namespace rules do not allow the | ||
| 63 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 64 | Therefore we have to handle the use of this header in strictly | ||
| 65 | standard-compliant sources special. */ | ||
| 66 | struct timespec st_atim;		/* Time of last access. */ | ||
| 67 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 68 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 69 | # define st_atime st_atim.tv_sec	/* Backward compatibility. */ | ||
| 70 | # define st_mtime st_mtim.tv_sec | ||
| 71 | # define st_ctime st_ctim.tv_sec | ||
| 72 | # else | ||
| 73 | __time_t st_atime;			/* Time of last access. */ | ||
| 74 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 75 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 76 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 77 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 78 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 79 | # endif | ||
| 80 | # ifndef __USE_FILE_OFFSET64 | ||
| 81 | unsigned long int __glibc_reserved4; | ||
| 82 | unsigned long int __glibc_reserved5; | ||
| 83 | # else | ||
| 84 | __ino64_t st_ino;			/* File serial number.	*/ | ||
| 85 | # endif | ||
| 86 | #endif /* __USE_TIME64_REDIRECTS */ | ||
| 87 | }; | ||
| 88 | |||
| 89 | #ifdef __USE_LARGEFILE64 | ||
| 90 | struct stat64 | ||
| 91 | { | ||
| 92 | # ifdef __USE_TIME64_REDIRECTS | ||
| 93 | # include <bits/struct_stat_time64_helper.h> | ||
| 94 | # else | ||
| 95 | __dev_t st_dev;			/* Device. */ | ||
| 96 | unsigned int __pad1; | ||
| 97 | |||
| 98 | __ino_t __st_ino;			/* 32bit file serial number.	*/ | ||
| 99 | __mode_t st_mode;			/* File mode. */ | ||
| 100 | __nlink_t st_nlink;			/* Link count. */ | ||
| 101 | __uid_t st_uid;			/* User ID of the file's owner.	*/ | ||
| 102 | __gid_t st_gid;			/* Group ID of the file's group.*/ | ||
| 103 | __dev_t st_rdev;			/* Device number, if device. */ | ||
| 104 | unsigned int __pad2; | ||
| 105 | __off64_t st_size;			/* Size of file, in bytes. */ | ||
| 106 | __blksize_t st_blksize;		/* Optimal block size for I/O. */ | ||
| 107 | |||
| 108 | __blkcnt64_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 109 | # ifdef __USE_XOPEN2K8 | ||
| 110 | /* Nanosecond resolution timestamps are stored in a format | ||
| 111 | equivalent to 'struct timespec'. This is the type used | ||
| 112 | whenever possible but the Unix namespace rules do not allow the | ||
| 113 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 114 | Therefore we have to handle the use of this header in strictly | ||
| 115 | standard-compliant sources special. */ | ||
| 116 | struct timespec st_atim;		/* Time of last access. */ | ||
| 117 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 118 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 119 | # else | ||
| 120 | __time_t st_atime;			/* Time of last access. */ | ||
| 121 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 122 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 123 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 124 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 125 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 126 | # endif | ||
| 127 | __ino64_t st_ino;			/* File serial number.		*/ | ||
| 128 | # endif /* __USE_TIME64_REDIRECTS */ | ||
| 129 | }; | ||
| 130 | #endif | ||
| 131 | |||
| 132 | /* Tell code we have these members. */ | ||
| 133 | #define	_STATBUF_ST_BLKSIZE | ||
| 134 | #define _STATBUF_ST_RDEV | ||
| 135 | /* Nanosecond resolution time values are supported. */ | ||
| 136 | #define _STATBUF_ST_NSEC | ||
| 137 | |||
| 138 | |||
| 139 | #endif /* _BITS_STRUCT_STAT_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/armeb-linux-gnueabi/bits/timesize.h deleted-20| ... | @@ -1,20 +0,0 @@ | ||
| 1 | /* Bit size of the time_t type at glibc build time, Linux/ARM. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* Size in bits of the 'time_t' type of the default ABI. */ | ||
| 20 | #define __TIMESIZE	32 | ||
| \ No newline at end of file | |||
lib/libc/include/armeb-linux-gnueabi/bits/typesizes.h deleted-74| ... | @@ -1,74 +0,0 @@ | ||
| 1 | /* bits/typesizes.h -- underlying types for *_t. ARM version. | ||
| 2 | Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_TYPES_H | ||
| 20 | # error "Never include <bits/typesizes.h> directly; use <sys/types.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef	_BITS_TYPESIZES_H | ||
| 24 | #define	_BITS_TYPESIZES_H	1 | ||
| 25 | |||
| 26 | /* See <bits/types.h> for the meaning of these macros. This file exists so | ||
| 27 | that <bits/types.h> need not vary across different GNU platforms. */ | ||
| 28 | |||
| 29 | #define __DEV_T_TYPE		__UQUAD_TYPE | ||
| 30 | #define __UID_T_TYPE		__U32_TYPE | ||
| 31 | #define __GID_T_TYPE		__U32_TYPE | ||
| 32 | #define __INO_T_TYPE		__ULONGWORD_TYPE | ||
| 33 | #define __INO64_T_TYPE		__UQUAD_TYPE | ||
| 34 | #define __MODE_T_TYPE		__U32_TYPE | ||
| 35 | #define __NLINK_T_TYPE		__UWORD_TYPE | ||
| 36 | #define __OFF_T_TYPE		__SLONGWORD_TYPE | ||
| 37 | #define __OFF64_T_TYPE		__SQUAD_TYPE | ||
| 38 | #define __PID_T_TYPE		__S32_TYPE | ||
| 39 | #define __RLIM_T_TYPE		__ULONGWORD_TYPE | ||
| 40 | #define __RLIM64_T_TYPE		__UQUAD_TYPE | ||
| 41 | #define	__BLKCNT_T_TYPE		__SLONGWORD_TYPE | ||
| 42 | #define	__BLKCNT64_T_TYPE	__SQUAD_TYPE | ||
| 43 | #define	__FSBLKCNT_T_TYPE	__ULONGWORD_TYPE | ||
| 44 | #define	__FSBLKCNT64_T_TYPE	__UQUAD_TYPE | ||
| 45 | #define	__FSFILCNT_T_TYPE	__ULONGWORD_TYPE | ||
| 46 | #define	__FSFILCNT64_T_TYPE	__UQUAD_TYPE | ||
| 47 | #define	__FSWORD_T_TYPE		__SWORD_TYPE | ||
| 48 | #define	__ID_T_TYPE		__U32_TYPE | ||
| 49 | #define __CLOCK_T_TYPE		__SLONGWORD_TYPE | ||
| 50 | #define __TIME_T_TYPE		__SLONGWORD_TYPE | ||
| 51 | #define __USECONDS_T_TYPE	__U32_TYPE | ||
| 52 | #define __SUSECONDS_T_TYPE	__SLONGWORD_TYPE | ||
| 53 | #define __SUSECONDS64_T_TYPE	__SQUAD_TYPE | ||
| 54 | #define __DADDR_T_TYPE		__S32_TYPE | ||
| 55 | #define __KEY_T_TYPE		__S32_TYPE | ||
| 56 | #define __CLOCKID_T_TYPE	__S32_TYPE | ||
| 57 | #define __TIMER_T_TYPE		void * | ||
| 58 | #define __BLKSIZE_T_TYPE	__SLONGWORD_TYPE | ||
| 59 | #define __FSID_T_TYPE		struct { int __val[2]; } | ||
| 60 | #define __SSIZE_T_TYPE		__SWORD_TYPE | ||
| 61 | #define __SYSCALL_SLONG_TYPE	__SLONGWORD_TYPE | ||
| 62 | #define __SYSCALL_ULONG_TYPE	__ULONGWORD_TYPE | ||
| 63 | #define __CPU_MASK_TYPE 	__ULONGWORD_TYPE | ||
| 64 | |||
| 65 | #define __RLIM_T_MATCHES_RLIM64_T		0 | ||
| 66 | #define __STATFS_MATCHES_STATFS64		0 | ||
| 67 | /* And for getitimer, setitimer and rusage */ | ||
| 68 | #define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64	0 | ||
| 69 | |||
| 70 | /* Number of descriptors that can fit in an `fd_set'. */ | ||
| 71 | #define	__FD_SETSIZE		1024 | ||
| 72 | |||
| 73 | |||
| 74 | #endif /* bits/typesizes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/armeb-linux-gnueabi/bits/wordsize.h deleted-21| ... | @@ -1,21 +0,0 @@ | ||
| 1 | /* Copyright (C) 1999-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #define __WORDSIZE			32 | ||
| 19 | #define __WORDSIZE_TIME64_COMPAT32	1 | ||
| 20 | #define __WORDSIZE32_SIZE_ULONG		0 | ||
| 21 | #define __WORDSIZE32_PTRDIFF_LONG	0 | ||
| \ No newline at end of file | |||
lib/libc/include/armeb-linux-gnueabi/fpu_control.h deleted-75| ... | @@ -1,75 +0,0 @@ | ||
| 1 | /* FPU control word definitions. ARM VFP version. | ||
| 2 | Copyright (C) 2004-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _FPU_CONTROL_H | ||
| 20 | #define _FPU_CONTROL_H | ||
| 21 | |||
| 22 | #if !(defined(_LIBC) && !defined(_LIBC_TEST)) && defined(__SOFTFP__) | ||
| 23 | |||
| 24 | #define _FPU_RESERVED 0xffffffff | ||
| 25 | #define _FPU_DEFAULT 0x00000000 | ||
| 26 | typedef unsigned int fpu_control_t; | ||
| 27 | #define _FPU_GETCW(cw) (cw) = 0 | ||
| 28 | #define _FPU_SETCW(cw) (void) (cw) | ||
| 29 | extern fpu_control_t __fpu_control; | ||
| 30 | |||
| 31 | #else | ||
| 32 | |||
| 33 | /* masking of interrupts */ | ||
| 34 | #define _FPU_MASK_IM	0x00000100	/* invalid operation */ | ||
| 35 | #define _FPU_MASK_ZM	0x00000200	/* divide by zero */ | ||
| 36 | #define _FPU_MASK_OM	0x00000400	/* overflow */ | ||
| 37 | #define _FPU_MASK_UM	0x00000800	/* underflow */ | ||
| 38 | #define _FPU_MASK_PM	0x00001000	/* inexact */ | ||
| 39 | |||
| 40 | #define _FPU_MASK_NZCV	0xf0000000	/* NZCV flags */ | ||
| 41 | #define _FPU_MASK_RM	0x00c00000	/* rounding mode */ | ||
| 42 | #define _FPU_MASK_EXCEPT 0x00001f1f	/* all exception flags */ | ||
| 43 | |||
| 44 | /* Some bits in the FPSCR are not yet defined. They must be preserved when | ||
| 45 | modifying the contents. */ | ||
| 46 | #define _FPU_RESERVED	0x00086060 | ||
| 47 | #define _FPU_DEFAULT 0x00000000 | ||
| 48 | |||
| 49 | /* Default + exceptions enabled. */ | ||
| 50 | #define _FPU_IEEE	(_FPU_DEFAULT | 0x00001f00) | ||
| 51 | |||
| 52 | /* Type of the control word. */ | ||
| 53 | typedef unsigned int fpu_control_t; | ||
| 54 | |||
| 55 | /* Macros for accessing the hardware control word. */ | ||
| 56 | #ifdef __SOFTFP__ | ||
| 57 | /* This is fmrx %0, fpscr. */ | ||
| 58 | # define _FPU_GETCW(cw) \ | ||
| 59 | __asm__ __volatile__ ("mrc p10, 7, %0, cr1, cr0, 0" : "=r" (cw)) | ||
| 60 | /* This is fmxr fpscr, %0. */ | ||
| 61 | # define _FPU_SETCW(cw) \ | ||
| 62 | __asm__ __volatile__ ("mcr p10, 7, %0, cr1, cr0, 0" : : "r" (cw)) | ||
| 63 | #else | ||
| 64 | # define _FPU_GETCW(cw) \ | ||
| 65 | __asm__ __volatile__ ("vmrs %0, fpscr" : "=r" (cw)) | ||
| 66 | # define _FPU_SETCW(cw) \ | ||
| 67 | __asm__ __volatile__ ("vmsr fpscr, %0" : : "r" (cw)) | ||
| 68 | #endif | ||
| 69 | |||
| 70 | /* Default control word set at startup. */ | ||
| 71 | extern fpu_control_t __fpu_control; | ||
| 72 | |||
| 73 | #endif /* __SOFTFP__ */ | ||
| 74 | |||
| 75 | #endif /* _FPU_CONTROL_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/armeb-linux-gnueabi/gnu/lib-names.h deleted-14| ... | @@ -1,14 +0,0 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | It defines macros to allow user program to find the shared | ||
| 3 | library files which come as part of GNU libc. */ | ||
| 4 | #ifndef __GNU_LIB_NAMES_H | ||
| 5 | #define __GNU_LIB_NAMES_H	1 | ||
| 6 | |||
| 7 | #if !defined __ARM_PCS_VFP | ||
| 8 | # include <gnu/lib-names-soft.h> | ||
| 9 | #endif | ||
| 10 | #if defined __ARM_PCS_VFP | ||
| 11 | # include <gnu/lib-names-hard.h> | ||
| 12 | #endif | ||
| 13 | |||
| 14 | #endif	/* gnu/lib-names.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/armeb-linux-gnueabi/gnu/stubs.h deleted-11| ... | @@ -1,11 +0,0 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | This file selects the right generated file of `__stub_FUNCTION' macros | ||
| 3 | based on the architecture being compiled for. */ | ||
| 4 | |||
| 5 | |||
| 6 | #if !defined __ARM_PCS_VFP | ||
| 7 | # include <gnu/stubs-soft.h> | ||
| 8 | #endif | ||
| 9 | #if defined __ARM_PCS_VFP | ||
| 10 | # include <gnu/stubs-hard.h> | ||
| 11 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/armeb-linux-gnueabi/sys/ptrace.h deleted-226| ... | @@ -1,226 +0,0 @@ | ||
| 1 | /* `ptrace' debugger support interface. Linux/ARM version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library; if not, see | ||
| 18 | <https://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifndef _SYS_PTRACE_H | ||
| 21 | #define _SYS_PTRACE_H	1 | ||
| 22 | |||
| 23 | #include <features.h> | ||
| 24 | #include <bits/types.h> | ||
| 25 | |||
| 26 | __BEGIN_DECLS | ||
| 27 | |||
| 28 | /* Type of the REQUEST argument to `ptrace.' */ | ||
| 29 | enum __ptrace_request | ||
| 30 | { | ||
| 31 | /* Indicate that the process making this request should be traced. | ||
| 32 | All signals received by this process can be intercepted by its | ||
| 33 | parent, and its parent can use the other `ptrace' requests. */ | ||
| 34 | PTRACE_TRACEME = 0, | ||
| 35 | #define PT_TRACE_ME PTRACE_TRACEME | ||
| 36 | |||
| 37 | /* Return the word in the process's text space at address ADDR. */ | ||
| 38 | PTRACE_PEEKTEXT = 1, | ||
| 39 | #define PT_READ_I PTRACE_PEEKTEXT | ||
| 40 | |||
| 41 | /* Return the word in the process's data space at address ADDR. */ | ||
| 42 | PTRACE_PEEKDATA = 2, | ||
| 43 | #define PT_READ_D PTRACE_PEEKDATA | ||
| 44 | |||
| 45 | /* Return the word in the process's user area at offset ADDR. */ | ||
| 46 | PTRACE_PEEKUSER = 3, | ||
| 47 | #define PT_READ_U PTRACE_PEEKUSER | ||
| 48 | |||
| 49 | /* Write the word DATA into the process's text space at address ADDR. */ | ||
| 50 | PTRACE_POKETEXT = 4, | ||
| 51 | #define PT_WRITE_I PTRACE_POKETEXT | ||
| 52 | |||
| 53 | /* Write the word DATA into the process's data space at address ADDR. */ | ||
| 54 | PTRACE_POKEDATA = 5, | ||
| 55 | #define PT_WRITE_D PTRACE_POKEDATA | ||
| 56 | |||
| 57 | /* Write the word DATA into the process's user area at offset ADDR. */ | ||
| 58 | PTRACE_POKEUSER = 6, | ||
| 59 | #define PT_WRITE_U PTRACE_POKEUSER | ||
| 60 | |||
| 61 | /* Continue the process. */ | ||
| 62 | PTRACE_CONT = 7, | ||
| 63 | #define PT_CONTINUE PTRACE_CONT | ||
| 64 | |||
| 65 | /* Kill the process. */ | ||
| 66 | PTRACE_KILL = 8, | ||
| 67 | #define PT_KILL PTRACE_KILL | ||
| 68 | |||
| 69 | /* Single step the process. */ | ||
| 70 | PTRACE_SINGLESTEP = 9, | ||
| 71 | #define PT_STEP PTRACE_SINGLESTEP | ||
| 72 | |||
| 73 | /* Get all general purpose registers used by a process. */ | ||
| 74 | PTRACE_GETREGS = 12, | ||
| 75 | #define PT_GETREGS PTRACE_GETREGS | ||
| 76 | |||
| 77 | /* Set all general purpose registers used by a process. */ | ||
| 78 | PTRACE_SETREGS = 13, | ||
| 79 | #define PT_SETREGS PTRACE_SETREGS | ||
| 80 | |||
| 81 | /* Get all floating point registers used by a process. */ | ||
| 82 | PTRACE_GETFPREGS = 14, | ||
| 83 | #define PT_GETFPREGS PTRACE_GETFPREGS | ||
| 84 | |||
| 85 | /* Set all floating point registers used by a process. */ | ||
| 86 | PTRACE_SETFPREGS = 15, | ||
| 87 | #define PT_SETFPREGS PTRACE_SETFPREGS | ||
| 88 | |||
| 89 | /* Attach to a process that is already running. */ | ||
| 90 | PTRACE_ATTACH = 16, | ||
| 91 | #define PT_ATTACH PTRACE_ATTACH | ||
| 92 | |||
| 93 | /* Detach from a process attached to with PTRACE_ATTACH. */ | ||
| 94 | PTRACE_DETACH = 17, | ||
| 95 | #define PT_DETACH PTRACE_DETACH | ||
| 96 | |||
| 97 | /* Get the iWMMXt state of a process. */ | ||
| 98 | PTRACE_GETWMMXREGS = 18, | ||
| 99 | #define PT_GETWMMXREGS PTRACE_GETWMMXREGS | ||
| 100 | |||
| 101 | /* Set the iWMMXt state of a process. */ | ||
| 102 | PTRACE_SETWMMXREGS = 19, | ||
| 103 | #define PT_SETWMMXREGS PTRACE_SETWMMXREGS | ||
| 104 | |||
| 105 | /* Get the thread pointer of a process. */ | ||
| 106 | PTRACE_GET_THREAD_AREA = 22, | ||
| 107 | #define PT_GET_THREAD_AREA PTRACE_GET_THREAD_AREA | ||
| 108 | |||
| 109 | /* Change the syscall number of a process. */ | ||
| 110 | PTRACE_SET_SYSCALL = 23, | ||
| 111 | #define PT_SET_SYSCALL PTRACE_SET_SYSCALL | ||
| 112 | |||
| 113 | /* Continue and stop at the next entry to or return from syscall. */ | ||
| 114 | PTRACE_SYSCALL = 24, | ||
| 115 | #define PT_SYSCALL PTRACE_SYSCALL | ||
| 116 | |||
| 117 | /* Get the Crunch state of a process. */ | ||
| 118 | PTRACE_GETCRUNCHREGS = 25, | ||
| 119 | #define PT_GETCRUNCHREGS PTRACE_GETCRUNCHREGS | ||
| 120 | |||
| 121 | /* Set the Crunch state of a process. */ | ||
| 122 | PTRACE_SETCRUNCHREGS = 26, | ||
| 123 | #define PT_SETCRUNCHREGS PTRACE_SETCRUNCHREGS | ||
| 124 | |||
| 125 | /* Get all VFP registers used by a process. */ | ||
| 126 | PTRACE_GETVFPREGS = 27, | ||
| 127 | #define PT_GETVFPREGS PTRACE_GETVFPREGS | ||
| 128 | |||
| 129 | /* Set all VFP registers used by a process. */ | ||
| 130 | PTRACE_SETVFPREGS = 28, | ||
| 131 | #define PT_SETVFPREGS PTRACE_SETVFPREGS | ||
| 132 | |||
| 133 | /* Get all hardware breakpoint registers. */ | ||
| 134 | PTRACE_GETHBPREGS = 29, | ||
| 135 | #define PT_GETHBPREGS PTRACE_GETHBPREGS | ||
| 136 | |||
| 137 | /* Set all hardware breakpoint registers. */ | ||
| 138 | PTRACE_SETHBPREGS = 30, | ||
| 139 | #define PT_SETHBPREGS PTRACE_SETHBPREGS | ||
| 140 | |||
| 141 | /* Get the ELF fdpic loadmap address. */ | ||
| 142 | PTRACE_GETFDPIC = 31, | ||
| 143 | #define PT_GETFDPIC PTRACE_GETFDPIC | ||
| 144 | |||
| 145 | /* Set ptrace filter options. */ | ||
| 146 | PTRACE_SETOPTIONS = 0x4200, | ||
| 147 | #define PT_SETOPTIONS PTRACE_SETOPTIONS | ||
| 148 | |||
| 149 | /* Get last ptrace message. */ | ||
| 150 | PTRACE_GETEVENTMSG = 0x4201, | ||
| 151 | #define PT_GETEVENTMSG PTRACE_GETEVENTMSG | ||
| 152 | |||
| 153 | /* Get siginfo for process. */ | ||
| 154 | PTRACE_GETSIGINFO = 0x4202, | ||
| 155 | #define PT_GETSIGINFO PTRACE_GETSIGINFO | ||
| 156 | |||
| 157 | /* Set new siginfo for process. */ | ||
| 158 | PTRACE_SETSIGINFO = 0x4203, | ||
| 159 | #define PT_SETSIGINFO PTRACE_SETSIGINFO | ||
| 160 | |||
| 161 | /* Get register content. */ | ||
| 162 | PTRACE_GETREGSET = 0x4204, | ||
| 163 | #define PTRACE_GETREGSET PTRACE_GETREGSET | ||
| 164 | |||
| 165 | /* Set register content. */ | ||
| 166 | PTRACE_SETREGSET = 0x4205, | ||
| 167 | #define PTRACE_SETREGSET PTRACE_SETREGSET | ||
| 168 | |||
| 169 | /* Like PTRACE_ATTACH, but do not force tracee to trap and do not affect | ||
| 170 | signal or group stop state. */ | ||
| 171 | PTRACE_SEIZE = 0x4206, | ||
| 172 | #define PTRACE_SEIZE PTRACE_SEIZE | ||
| 173 | |||
| 174 | /* Trap seized tracee. */ | ||
| 175 | PTRACE_INTERRUPT = 0x4207, | ||
| 176 | #define PTRACE_INTERRUPT PTRACE_INTERRUPT | ||
| 177 | |||
| 178 | /* Wait for next group event. */ | ||
| 179 | PTRACE_LISTEN = 0x4208, | ||
| 180 | #define PTRACE_LISTEN PTRACE_LISTEN | ||
| 181 | |||
| 182 | /* Retrieve siginfo_t structures without removing signals from a queue. */ | ||
| 183 | PTRACE_PEEKSIGINFO = 0x4209, | ||
| 184 | #define PTRACE_PEEKSIGINFO PTRACE_PEEKSIGINFO | ||
| 185 | |||
| 186 | /* Get the mask of blocked signals. */ | ||
| 187 | PTRACE_GETSIGMASK = 0x420a, | ||
| 188 | #define PTRACE_GETSIGMASK PTRACE_GETSIGMASK | ||
| 189 | |||
| 190 | /* Change the mask of blocked signals. */ | ||
| 191 | PTRACE_SETSIGMASK = 0x420b, | ||
| 192 | #define PTRACE_SETSIGMASK PTRACE_SETSIGMASK | ||
| 193 | |||
| 194 | /* Get seccomp BPF filters. */ | ||
| 195 | PTRACE_SECCOMP_GET_FILTER = 0x420c, | ||
| 196 | #define PTRACE_SECCOMP_GET_FILTER PTRACE_SECCOMP_GET_FILTER | ||
| 197 | |||
| 198 | /* Get seccomp BPF filter metadata. */ | ||
| 199 | PTRACE_SECCOMP_GET_METADATA = 0x420d, | ||
| 200 | #define PTRACE_SECCOMP_GET_METADATA PTRACE_SECCOMP_GET_METADATA | ||
| 201 | |||
| 202 | /* Get information about system call. */ | ||
| 203 | PTRACE_GET_SYSCALL_INFO = 0x420e, | ||
| 204 | #define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO | ||
| 205 | |||
| 206 | /* Get rseq configuration information. */ | ||
| 207 | PTRACE_GET_RSEQ_CONFIGURATION = 0x420f, | ||
| 208 | #define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION | ||
| 209 | |||
| 210 | /* Set configuration for syscall user dispatch. */ | ||
| 211 | PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG = 0x4210, | ||
| 212 | #define PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG \ | ||
| 213 | PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG | ||
| 214 | |||
| 215 | /* Get configuration for syscall user dispatch. */ | ||
| 216 | PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG = 0x4211 | ||
| 217 | #define PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG \ | ||
| 218 | PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG | ||
| 219 | }; | ||
| 220 | |||
| 221 | |||
| 222 | #include <bits/ptrace-shared.h> | ||
| 223 | |||
| 224 | __END_DECLS | ||
| 225 | |||
| 226 | #endif /* _SYS_PTRACE_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/armeb-linux-gnueabi/sys/ucontext.h deleted-144| ... | @@ -1,144 +0,0 @@ | ||
| 1 | /* Copyright (C) 1998-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | /* System V/ARM ABI compliant context switching support. */ | ||
| 19 | |||
| 20 | #ifndef _SYS_UCONTEXT_H | ||
| 21 | #define _SYS_UCONTEXT_H	1 | ||
| 22 | |||
| 23 | #include <features.h> | ||
| 24 | |||
| 25 | #include <bits/types/sigset_t.h> | ||
| 26 | #include <bits/types/stack_t.h> | ||
| 27 | |||
| 28 | |||
| 29 | #ifdef __USE_MISC | ||
| 30 | # define __ctx(fld) fld | ||
| 31 | #else | ||
| 32 | # define __ctx(fld) __ ## fld | ||
| 33 | #endif | ||
| 34 | |||
| 35 | #ifdef __USE_MISC | ||
| 36 | typedef int greg_t; | ||
| 37 | |||
| 38 | /* Number of general registers. */ | ||
| 39 | # define NGREG	18 | ||
| 40 | |||
| 41 | /* Container for all general registers. */ | ||
| 42 | typedef greg_t gregset_t[NGREG]; | ||
| 43 | |||
| 44 | /* Number of each register is the `gregset_t' array. */ | ||
| 45 | enum | ||
| 46 | { | ||
| 47 | REG_R0 = 0, | ||
| 48 | # define REG_R0	REG_R0 | ||
| 49 | REG_R1 = 1, | ||
| 50 | # define REG_R1	REG_R1 | ||
| 51 | REG_R2 = 2, | ||
| 52 | # define REG_R2	REG_R2 | ||
| 53 | REG_R3 = 3, | ||
| 54 | # define REG_R3	REG_R3 | ||
| 55 | REG_R4 = 4, | ||
| 56 | # define REG_R4	REG_R4 | ||
| 57 | REG_R5 = 5, | ||
| 58 | # define REG_R5	REG_R5 | ||
| 59 | REG_R6 = 6, | ||
| 60 | # define REG_R6	REG_R6 | ||
| 61 | REG_R7 = 7, | ||
| 62 | # define REG_R7	REG_R7 | ||
| 63 | REG_R8 = 8, | ||
| 64 | # define REG_R8	REG_R8 | ||
| 65 | REG_R9 = 9, | ||
| 66 | # define REG_R9	REG_R9 | ||
| 67 | REG_R10 = 10, | ||
| 68 | # define REG_R10	REG_R10 | ||
| 69 | REG_R11 = 11, | ||
| 70 | # define REG_R11	REG_R11 | ||
| 71 | REG_R12 = 12, | ||
| 72 | # define REG_R12	REG_R12 | ||
| 73 | REG_R13 = 13, | ||
| 74 | # define REG_R13	REG_R13 | ||
| 75 | REG_R14 = 14, | ||
| 76 | # define REG_R14	REG_R14 | ||
| 77 | REG_R15 = 15 | ||
| 78 | # define REG_R15	REG_R15 | ||
| 79 | }; | ||
| 80 | |||
| 81 | struct _libc_fpstate | ||
| 82 | { | ||
| 83 | struct | ||
| 84 | { | ||
| 85 | unsigned int sign1:1; | ||
| 86 | unsigned int unused:15; | ||
| 87 | unsigned int sign2:1; | ||
| 88 | unsigned int exponent:14; | ||
| 89 | unsigned int j:1; | ||
| 90 | unsigned int mantissa1:31; | ||
| 91 | unsigned int mantissa0:32; | ||
| 92 | } fpregs[8]; | ||
| 93 | unsigned int fpsr:32; | ||
| 94 | unsigned int fpcr:32; | ||
| 95 | unsigned char ftype[8]; | ||
| 96 | unsigned int init_flag; | ||
| 97 | }; | ||
| 98 | /* Structure to describe FPU registers. */ | ||
| 99 | typedef struct _libc_fpstate fpregset_t; | ||
| 100 | #endif | ||
| 101 | |||
| 102 | /* Context to describe whole processor state. This only describes | ||
| 103 | the core registers; coprocessor registers get saved elsewhere | ||
| 104 | (e.g. in uc_regspace, or somewhere unspecified on the stack | ||
| 105 | during non-RT signal handlers). */ | ||
| 106 | typedef struct | ||
| 107 | { | ||
| 108 | unsigned long int __ctx(trap_no); | ||
| 109 | unsigned long int __ctx(error_code); | ||
| 110 | unsigned long int __ctx(oldmask); | ||
| 111 | unsigned long int __ctx(arm_r0); | ||
| 112 | unsigned long int __ctx(arm_r1); | ||
| 113 | unsigned long int __ctx(arm_r2); | ||
| 114 | unsigned long int __ctx(arm_r3); | ||
| 115 | unsigned long int __ctx(arm_r4); | ||
| 116 | unsigned long int __ctx(arm_r5); | ||
| 117 | unsigned long int __ctx(arm_r6); | ||
| 118 | unsigned long int __ctx(arm_r7); | ||
| 119 | unsigned long int __ctx(arm_r8); | ||
| 120 | unsigned long int __ctx(arm_r9); | ||
| 121 | unsigned long int __ctx(arm_r10); | ||
| 122 | unsigned long int __ctx(arm_fp); | ||
| 123 | unsigned long int __ctx(arm_ip); | ||
| 124 | unsigned long int __ctx(arm_sp); | ||
| 125 | unsigned long int __ctx(arm_lr); | ||
| 126 | unsigned long int __ctx(arm_pc); | ||
| 127 | unsigned long int __ctx(arm_cpsr); | ||
| 128 | unsigned long int __ctx(fault_address); | ||
| 129 | } mcontext_t; | ||
| 130 | |||
| 131 | /* Userlevel context. */ | ||
| 132 | typedef struct ucontext_t | ||
| 133 | { | ||
| 134 | unsigned long __ctx(uc_flags); | ||
| 135 | struct ucontext_t *uc_link; | ||
| 136 | stack_t uc_stack; | ||
| 137 | mcontext_t uc_mcontext; | ||
| 138 | sigset_t uc_sigmask; | ||
| 139 | unsigned long __ctx(uc_regspace)[128] __attribute__((__aligned__(8))); | ||
| 140 | } ucontext_t; | ||
| 141 | |||
| 142 | #undef __ctx | ||
| 143 | |||
| 144 | #endif /* sys/ucontext.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/armeb-linux-gnueabi/sys/user.h deleted-71| ... | @@ -1,71 +0,0 @@ | ||
| 1 | /* Copyright (C) 1998-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_USER_H | ||
| 19 | #define _SYS_USER_H	1 | ||
| 20 | |||
| 21 | /* The whole purpose of this file is for GDB and GDB only. Don't read | ||
| 22 | too much into it. Don't use it for anything other than GDB unless | ||
| 23 | you know what you are doing. */ | ||
| 24 | |||
| 25 | struct user_fpregs | ||
| 26 | { | ||
| 27 | struct fp_reg | ||
| 28 | { | ||
| 29 | unsigned int sign1:1; | ||
| 30 | unsigned int unused:15; | ||
| 31 | unsigned int sign2:1; | ||
| 32 | unsigned int exponent:14; | ||
| 33 | unsigned int j:1; | ||
| 34 | unsigned int mantissa1:31; | ||
| 35 | unsigned int mantissa0:32; | ||
| 36 | } fpregs[8]; | ||
| 37 | unsigned int fpsr:32; | ||
| 38 | unsigned int fpcr:32; | ||
| 39 | unsigned char ftype[8]; | ||
| 40 | unsigned int init_flag; | ||
| 41 | }; | ||
| 42 | |||
| 43 | struct user_regs | ||
| 44 | { | ||
| 45 | unsigned long int uregs[18]; | ||
| 46 | }; | ||
| 47 | |||
| 48 | struct user | ||
| 49 | { | ||
| 50 | struct user_regs regs;	/* General registers */ | ||
| 51 | int u_fpvalid;		/* True if math co-processor being used. */ | ||
| 52 | |||
| 53 | unsigned long int u_tsize;	/* Text segment size (pages). */ | ||
| 54 | unsigned long int u_dsize;	/* Data segment size (pages). */ | ||
| 55 | unsigned long int u_ssize;	/* Stack segment size (pages). */ | ||
| 56 | |||
| 57 | unsigned long start_code;	/* Starting virtual address of text. */ | ||
| 58 | unsigned long start_stack;	/* Starting virtual address of stack. */ | ||
| 59 | |||
| 60 | long int signal; 		/* Signal that caused the core dump. */ | ||
| 61 | int reserved;			/* No longer used */ | ||
| 62 | struct user_regs *u_ar0;	/* help gdb to find the general registers. */ | ||
| 63 | |||
| 64 | unsigned long magic;		/* uniquely identify a core file */ | ||
| 65 | char u_comm[32];		/* User command that was responsible */ | ||
| 66 | int u_debugreg[8]; | ||
| 67 | struct user_fpregs u_fp;	/* Floating point registers */ | ||
| 68 | struct user_fpregs *u_fp0;	/* help gdb to find the FP registers. */ | ||
| 69 | }; | ||
| 70 | |||
| 71 | #endif /* sys/user.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/armeb-linux-gnueabihf/bits/dl_find_object.h deleted-25| ... | @@ -1,25 +0,0 @@ | ||
| 1 | /* arm definitions for finding objects. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _DLFCN_H | ||
| 20 | # error "Never use <bits/dl_find_object.h> directly; include <dlfcn.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #define DLFO_STRUCT_HAS_EH_DBASE 0 | ||
| 24 | #define DLFO_STRUCT_HAS_EH_COUNT 1 | ||
| 25 | #define DLFO_EH_SEGMENT_TYPE PT_ARM_EXIDX | ||
| \ No newline at end of file | |||
lib/libc/include/armeb-linux-gnueabihf/bits/endianness.h deleted-15| ... | @@ -1,15 +0,0 @@ | ||
| 1 | #ifndef _BITS_ENDIANNESS_H | ||
| 2 | #define _BITS_ENDIANNESS_H 1 | ||
| 3 | |||
| 4 | #ifndef _BITS_ENDIAN_H | ||
| 5 | # error "Never use <bits/endianness.h> directly; include <endian.h> instead." | ||
| 6 | #endif | ||
| 7 | |||
| 8 | /* ARM has selectable endianness. */ | ||
| 9 | #ifdef __ARMEB__ | ||
| 10 | #define __BYTE_ORDER __BIG_ENDIAN | ||
| 11 | #else | ||
| 12 | #define __BYTE_ORDER __LITTLE_ENDIAN | ||
| 13 | #endif | ||
| 14 | |||
| 15 | #endif /* bits/endianness.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/armeb-linux-gnueabihf/bits/fcntl.h deleted-54| ... | @@ -1,54 +0,0 @@ | ||
| 1 | /* O_*, F_*, FD_* bit values for Linux. | ||
| 2 | Copyright (C) 1995-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef	_FCNTL_H | ||
| 20 | # error "Never use <bits/fcntl.h> directly; include <fcntl.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #define __O_DIRECTORY	 040000	/* Must be a directory.	 */ | ||
| 24 | #define __O_NOFOLLOW	0100000	/* Do not follow links.	 */ | ||
| 25 | #define __O_DIRECT	0200000	/* Direct disk access.	*/ | ||
| 26 | #define __O_LARGEFILE	0400000 | ||
| 27 | |||
| 28 | struct flock | ||
| 29 | { | ||
| 30 | short int l_type;	/* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK.	*/ | ||
| 31 | short int l_whence;	/* Where `l_start' is relative to (like `lseek'). */ | ||
| 32 | #ifndef __USE_FILE_OFFSET64 | ||
| 33 | __off_t l_start;	/* Offset where the lock begins. */ | ||
| 34 | __off_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 35 | #else | ||
| 36 | __off64_t l_start;	/* Offset where the lock begins. */ | ||
| 37 | __off64_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 38 | #endif | ||
| 39 | __pid_t l_pid;	/* Process holding the lock. */ | ||
| 40 | }; | ||
| 41 | |||
| 42 | #ifdef __USE_LARGEFILE64 | ||
| 43 | struct flock64 | ||
| 44 | { | ||
| 45 | short int l_type;	/* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK.	*/ | ||
| 46 | short int l_whence;	/* Where `l_start' is relative to (like `lseek'). */ | ||
| 47 | __off64_t l_start;	/* Offset where the lock begins. */ | ||
| 48 | __off64_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 49 | __pid_t l_pid;	/* Process holding the lock. */ | ||
| 50 | }; | ||
| 51 | #endif | ||
| 52 | |||
| 53 | /* Include generic Linux declarations. */ | ||
| 54 | #include <bits/fcntl-linux.h> | ||
| \ No newline at end of file | |||
lib/libc/include/armeb-linux-gnueabihf/bits/fenv.h deleted-90| ... | @@ -1,90 +0,0 @@ | ||
| 1 | /* Copyright (C) 2004-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _FENV_H | ||
| 19 | # error "Never use <bits/fenv.h> directly; include <fenv.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Define bits representing exceptions in the FPU status word. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | FE_INVALID = | ||
| 26 | #define FE_INVALID	1 | ||
| 27 | FE_INVALID, | ||
| 28 | FE_DIVBYZERO = | ||
| 29 | #define FE_DIVBYZERO	2 | ||
| 30 | FE_DIVBYZERO, | ||
| 31 | FE_OVERFLOW = | ||
| 32 | #define FE_OVERFLOW	4 | ||
| 33 | FE_OVERFLOW, | ||
| 34 | FE_UNDERFLOW = | ||
| 35 | #define FE_UNDERFLOW	8 | ||
| 36 | FE_UNDERFLOW, | ||
| 37 | FE_INEXACT = | ||
| 38 | #define FE_INEXACT	16 | ||
| 39 | FE_INEXACT, | ||
| 40 | }; | ||
| 41 | |||
| 42 | /* Amount to shift by to convert an exception to a mask bit. */ | ||
| 43 | #define FE_EXCEPT_SHIFT	8 | ||
| 44 | |||
| 45 | /* All supported exceptions. */ | ||
| 46 | #define FE_ALL_EXCEPT	\ | ||
| 47 | 	(FE_INVALID | FE_DIVBYZERO | FE_OVERFLOW | FE_UNDERFLOW | FE_INEXACT) | ||
| 48 | |||
| 49 | /* VFP supports all of the four defined rounding modes. */ | ||
| 50 | enum | ||
| 51 | { | ||
| 52 | FE_TONEAREST = | ||
| 53 | #define FE_TONEAREST	0 | ||
| 54 | FE_TONEAREST, | ||
| 55 | FE_UPWARD = | ||
| 56 | #define FE_UPWARD	0x400000 | ||
| 57 | FE_UPWARD, | ||
| 58 | FE_DOWNWARD = | ||
| 59 | #define FE_DOWNWARD	0x800000 | ||
| 60 | FE_DOWNWARD, | ||
| 61 | FE_TOWARDZERO = | ||
| 62 | #define FE_TOWARDZERO	0xc00000 | ||
| 63 | FE_TOWARDZERO | ||
| 64 | }; | ||
| 65 | |||
| 66 | /* Type representing exception flags. */ | ||
| 67 | typedef unsigned int fexcept_t; | ||
| 68 | |||
| 69 | /* Type representing floating-point environment. */ | ||
| 70 | typedef struct | ||
| 71 | { | ||
| 72 | unsigned int __cw; | ||
| 73 | } | ||
| 74 | fenv_t; | ||
| 75 | |||
| 76 | /* If the default argument is used we use this value. */ | ||
| 77 | #define FE_DFL_ENV	((const fenv_t *) -1l) | ||
| 78 | |||
| 79 | #ifdef __USE_GNU | ||
| 80 | /* Floating-point environment where none of the exceptions are masked. */ | ||
| 81 | # define FE_NOMASK_ENV ((const fenv_t *) -2) | ||
| 82 | #endif | ||
| 83 | |||
| 84 | #if __GLIBC_USE (IEC_60559_BFP_EXT_C23) | ||
| 85 | /* Type representing floating-point control modes. */ | ||
| 86 | typedef unsigned int femode_t; | ||
| 87 | |||
| 88 | /* Default floating-point control modes. */ | ||
| 89 | # define FE_DFL_MODE	((const femode_t *) -1L) | ||
| 90 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/armeb-linux-gnueabihf/bits/floatn.h deleted-52| ... | @@ -1,52 +0,0 @@ | ||
| 1 | /* Macros to control TS 18661-3 glibc features. | ||
| 2 | Copyright (C) 2017-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* Defined to 1 if the current compiler invocation provides a | ||
| 20 | floating-point type with the IEEE 754 binary128 format, and this glibc | ||
| 21 | includes corresponding *f128 interfaces for it. */ | ||
| 22 | #define __HAVE_FLOAT128 0 | ||
| 23 | |||
| 24 | /* Defined to 1 if __HAVE_FLOAT128 is 1 and the type is ABI-distinct | ||
| 25 | from the default float, double and long double types in this glibc. */ | ||
| 26 | #define __HAVE_DISTINCT_FLOAT128 0 | ||
| 27 | |||
| 28 | /* Defined to 1 if the current compiler invocation provides a | ||
| 29 | floating-point type with the right format for _Float64x, and this | ||
| 30 | glibc includes corresponding *f64x interfaces for it. */ | ||
| 31 | #define __HAVE_FLOAT64X 0 | ||
| 32 | |||
| 33 | /* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format | ||
| 34 | of long double. Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has | ||
| 35 | the format of _Float128, which must be different from that of long | ||
| 36 | double. */ | ||
| 37 | #define __HAVE_FLOAT64X_LONG_DOUBLE 0 | ||
| 38 | |||
| 39 | #ifndef __ASSEMBLER__ | ||
| 40 | |||
| 41 | /* Defined to concatenate the literal suffix to be used with _Float128 | ||
| 42 | types, if __HAVE_FLOAT128 is 1. | ||
| 43 | E.g.: #define __f128(x) x##f128. */ | ||
| 44 | # undef __f128 | ||
| 45 | |||
| 46 | /* Defined to a complex binary128 type if __HAVE_FLOAT128 is 1. | ||
| 47 | E.g.: #define __CFLOAT128 _Complex _Float128. */ | ||
| 48 | # undef __CFLOAT128 | ||
| 49 | |||
| 50 | #endif /* !__ASSEMBLER__. */ | ||
| 51 | |||
| 52 | #include <bits/floatn-common.h> | ||
| \ No newline at end of file | |||
lib/libc/include/armeb-linux-gnueabihf/bits/hwcap.h deleted-59| ... | @@ -1,59 +0,0 @@ | ||
| 1 | /* Defines for bits in AT_HWCAP. ARM Linux version. | ||
| 2 | Copyright (C) 2012-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #if !defined (_SYS_AUXV_H) && !defined (_LINUX_ARM_SYSDEP_H) | ||
| 20 | # error "Never include <bits/hwcap.h> directly; use <sys/auxv.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* The following must match the kernel's <asm/hwcap.h>. */ | ||
| 24 | #define HWCAP_ARM_SWP		1 | ||
| 25 | #define HWCAP_ARM_HALF		2 | ||
| 26 | #define HWCAP_ARM_THUMB		4 | ||
| 27 | #define HWCAP_ARM_26BIT		8 | ||
| 28 | #define HWCAP_ARM_FAST_MULT	16 | ||
| 29 | #define HWCAP_ARM_FPA		32 | ||
| 30 | #define HWCAP_ARM_VFP		64 | ||
| 31 | #define HWCAP_ARM_EDSP		128 | ||
| 32 | #define HWCAP_ARM_JAVA		256 | ||
| 33 | #define HWCAP_ARM_IWMMXT	512 | ||
| 34 | #define HWCAP_ARM_CRUNCH	1024 | ||
| 35 | #define HWCAP_ARM_THUMBEE	2048 | ||
| 36 | #define HWCAP_ARM_NEON		4096 | ||
| 37 | #define HWCAP_ARM_VFPv3		8192 | ||
| 38 | #define HWCAP_ARM_VFPv3D16	16384 | ||
| 39 | #define HWCAP_ARM_TLS		32768 | ||
| 40 | #define HWCAP_ARM_VFPv4		65536 | ||
| 41 | #define HWCAP_ARM_IDIVA		131072 | ||
| 42 | #define HWCAP_ARM_IDIVT		262144 | ||
| 43 | #define HWCAP_ARM_VFPD32	524288 | ||
| 44 | #define HWCAP_ARM_LPAE		1048576 | ||
| 45 | #define HWCAP_ARM_EVTSTRM	2097152 | ||
| 46 | #define HWCAP_FPHP		4194304 | ||
| 47 | #define HWCAP_ASIMDHP		8388608 | ||
| 48 | #define HWCAP_ASIMDDP		16777216 | ||
| 49 | #define HWCAP_ASIMDFHM		33554432 | ||
| 50 | #define HWCAP_ASIMDBF16		67108864 | ||
| 51 | #define HWCAP_I8MM		134217728 | ||
| 52 | |||
| 53 | #define HWCAP2_AES		1 | ||
| 54 | #define HWCAP2_PMULL		2 | ||
| 55 | #define HWCAP2_SHA1		4 | ||
| 56 | #define HWCAP2_SHA2		8 | ||
| 57 | #define HWCAP2_CRC32		16 | ||
| 58 | #define HWCAP2_SB		32 | ||
| 59 | #define HWCAP2_SSBS		64 | ||
| \ No newline at end of file | |||
lib/libc/include/armeb-linux-gnueabihf/bits/link.h deleted-65| ... | @@ -1,65 +0,0 @@ | ||
| 1 | /* Copyright (C) 2005-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_LINK_H | ||
| 19 | # error "Never include <bits/link.h> directly; use <link.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | |||
| 23 | /* Registers for entry into PLT on ARM. */ | ||
| 24 | typedef struct La_arm_regs | ||
| 25 | { | ||
| 26 | uint32_t lr_reg[4]; | ||
| 27 | uint32_t lr_sp; | ||
| 28 | uint32_t lr_lr; | ||
| 29 | /* Coprocessor registers used for argument passing. The data | ||
| 30 | stored here depends on the coprocessors available in the | ||
| 31 | system which are used for function calls in the current ABI. | ||
| 32 | VFP uses eight 64-bit registers, and iWMMXt uses ten. */ | ||
| 33 | uint32_t lr_coproc[42]; | ||
| 34 | } La_arm_regs; | ||
| 35 | |||
| 36 | /* Return values for calls from PLT on ARM. */ | ||
| 37 | typedef struct La_arm_retval | ||
| 38 | { | ||
| 39 | /* Up to four integer registers can be used for a return value in | ||
| 40 | some ABIs (APCS complex long double). */ | ||
| 41 | uint32_t lrv_reg[4]; | ||
| 42 | |||
| 43 | /* Any coprocessor registers which might be used to return values | ||
| 44 | in the current ABI. */ | ||
| 45 | uint32_t lrv_coproc[12]; | ||
| 46 | } La_arm_retval; | ||
| 47 | |||
| 48 | |||
| 49 | __BEGIN_DECLS | ||
| 50 | |||
| 51 | extern Elf32_Addr la_arm_gnu_pltenter (Elf32_Sym *__sym, unsigned int __ndx, | ||
| 52 | 				 uintptr_t *__refcook, | ||
| 53 | 				 uintptr_t *__defcook, | ||
| 54 | 				 La_arm_regs *__regs, | ||
| 55 | 				 unsigned int *__flags, | ||
| 56 | 				 const char *__symname, | ||
| 57 | 				 long int *__framesizep); | ||
| 58 | extern unsigned int la_arm_gnu_pltexit (Elf32_Sym *__sym, unsigned int __ndx, | ||
| 59 | 					uintptr_t *__refcook, | ||
| 60 | 					uintptr_t *__defcook, | ||
| 61 | 					const La_arm_regs *__inregs, | ||
| 62 | 					La_arm_retval *__outregs, | ||
| 63 | 					const char *__symname); | ||
| 64 | |||
| 65 | __END_DECLS | ||
| \ No newline at end of file | |||
lib/libc/include/armeb-linux-gnueabihf/bits/long-double.h deleted-53| ... | @@ -1,53 +0,0 @@ | ||
| 1 | /* Properties of long double type. | ||
| 2 | Copyright (C) 2016-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* This header is included by <sys/cdefs.h>. | ||
| 20 | |||
| 21 | If long double is ABI-compatible with double, it should define | ||
| 22 | __NO_LONG_DOUBLE_MATH to 1; otherwise, it should leave | ||
| 23 | __NO_LONG_DOUBLE_MATH undefined. | ||
| 24 | |||
| 25 | If this build of the GNU C Library supports both long double | ||
| 26 | ABI-compatible with double and some other long double format not | ||
| 27 | ABI-compatible with double, it should define | ||
| 28 | __LONG_DOUBLE_MATH_OPTIONAL to 1; otherwise, it should leave | ||
| 29 | __LONG_DOUBLE_MATH_OPTIONAL undefined. | ||
| 30 | |||
| 31 | If __NO_LONG_DOUBLE_MATH is already defined, this header must not | ||
| 32 | define anything; this is needed to work with the definition of | ||
| 33 | __NO_LONG_DOUBLE_MATH in nldbl-compat.h. */ | ||
| 34 | |||
| 35 | /* In the default version of this header, long double is | ||
| 36 | ABI-compatible with double. */ | ||
| 37 | #ifndef __NO_LONG_DOUBLE_MATH | ||
| 38 | # define __NO_LONG_DOUBLE_MATH	1 | ||
| 39 | #endif | ||
| 40 | |||
| 41 | /* The macro __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI is used to determine the | ||
| 42 | choice of the underlying ABI of long double. It will always assume | ||
| 43 | a constant value for each translation unit. | ||
| 44 | |||
| 45 | If the value is non-zero, any API which is parameterized by the long | ||
| 46 | double type (i.e the scanf/printf family of functions or the explicitly | ||
| 47 | parameterized math.h functions) will be redirected to a compatible | ||
| 48 | implementation using _Float128 ABI via symbols suffixed with ieee128. | ||
| 49 | |||
| 50 | The mechanism this macro uses to acquire may be a function | ||
| 51 | of architecture, or target specific options used to invoke the | ||
| 52 | compiler. */ | ||
| 53 | #define __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI 0 | ||
| \ No newline at end of file | |||
lib/libc/include/armeb-linux-gnueabihf/bits/procfs-id.h deleted-25| ... | @@ -1,25 +0,0 @@ | ||
| 1 | /* Types of pr_uid and pr_gid in struct elf_prpsinfo. Arm version. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library; if not, see | ||
| 18 | <https://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifndef _SYS_PROCFS_H | ||
| 21 | # error "Never include <bits/procfs-id.h> directly; use <sys/procfs.h> instead." | ||
| 22 | #endif | ||
| 23 | |||
| 24 | typedef unsigned short int __pr_uid_t; | ||
| 25 | typedef unsigned short int __pr_gid_t; | ||
| \ No newline at end of file | |||
lib/libc/include/armeb-linux-gnueabihf/bits/procfs.h deleted-34| ... | @@ -1,34 +0,0 @@ | ||
| 1 | /* Types for registers for sys/procfs.h. Arm version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_PROCFS_H | ||
| 20 | # error "Never include <bits/procfs.h> directly; use <sys/procfs.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Type for a general-purpose register. */ | ||
| 24 | typedef unsigned long elf_greg_t; | ||
| 25 | |||
| 26 | /* And the whole bunch of them. We could have used `struct | ||
| 27 | user_regs' directly in the typedef, but tradition says that | ||
| 28 | the register set is an array, which does have some peculiar | ||
| 29 | semantics, so leave it that way. */ | ||
| 30 | #define ELF_NGREG (sizeof (struct user_regs) / sizeof (elf_greg_t)) | ||
| 31 | typedef elf_greg_t elf_gregset_t[ELF_NGREG]; | ||
| 32 | |||
| 33 | /* Register set for the floating-point registers. */ | ||
| 34 | typedef struct user_fpregs elf_fpregset_t; | ||
| \ No newline at end of file | |||
lib/libc/include/armeb-linux-gnueabihf/bits/rseq.h deleted-83| ... | @@ -1,83 +0,0 @@ | ||
| 1 | /* Restartable Sequences Linux arm architecture header. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_RSEQ_H | ||
| 19 | # error "Never use <bits/rseq.h> directly; include <sys/rseq.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* | ||
| 23 | RSEQ_SIG is a signature required before each abort handler code. | ||
| 24 | |||
| 25 | It is a 32-bit value that maps to actual architecture code compiled | ||
| 26 | into applications and libraries. It needs to be defined for each | ||
| 27 | architecture. When choosing this value, it needs to be taken into | ||
| 28 | account that generating invalid instructions may have ill effects on | ||
| 29 | tools like objdump, and may also have impact on the CPU speculative | ||
| 30 | execution efficiency in some cases. | ||
| 31 | |||
| 32 | - ARM little endian | ||
| 33 | |||
| 34 | RSEQ_SIG uses the udf A32 instruction with an uncommon immediate operand | ||
| 35 | value 0x5de3. This traps if user-space reaches this instruction by mistake, | ||
| 36 | and the uncommon operand ensures the kernel does not move the instruction | ||
| 37 | pointer to attacker-controlled code on rseq abort. | ||
| 38 | |||
| 39 | The instruction pattern in the A32 instruction set is: | ||
| 40 | |||
| 41 | e7f5def3 udf #24035 ; 0x5de3 | ||
| 42 | |||
| 43 | This translates to the following instruction pattern in the T16 instruction | ||
| 44 | set: | ||
| 45 | |||
| 46 | little endian: | ||
| 47 | def3 udf #243 ; 0xf3 | ||
| 48 | e7f5 b.n <7f5> | ||
| 49 | |||
| 50 | - ARMv6+ big endian (BE8): | ||
| 51 | |||
| 52 | ARMv6+ -mbig-endian generates mixed endianness code vs data: little-endian | ||
| 53 | code and big-endian data. The data value of the signature needs to have its | ||
| 54 | byte order reversed to generate the trap instruction: | ||
| 55 | |||
| 56 | Data: 0xf3def5e7 | ||
| 57 | |||
| 58 | Translates to this A32 instruction pattern: | ||
| 59 | |||
| 60 | e7f5def3 udf #24035 ; 0x5de3 | ||
| 61 | |||
| 62 | Translates to this T16 instruction pattern: | ||
| 63 | |||
| 64 | def3 udf #243 ; 0xf3 | ||
| 65 | e7f5 b.n <7f5> | ||
| 66 | |||
| 67 | - Prior to ARMv6 big endian (BE32): | ||
| 68 | |||
| 69 | Prior to ARMv6, -mbig-endian generates big-endian code and data | ||
| 70 | (which match), so the endianness of the data representation of the | ||
| 71 | signature should not be reversed. However, the choice between BE32 | ||
| 72 | and BE8 is done by the linker, so we cannot know whether code and | ||
| 73 | data endianness will be mixed before the linker is invoked. So rather | ||
| 74 | than try to play tricks with the linker, the rseq signature is simply | ||
| 75 | data (not a trap instruction) prior to ARMv6 on big endian. This is | ||
| 76 | why the signature is expressed as data (.word) rather than as | ||
| 77 | instruction (.inst) in assembler. */ | ||
| 78 | |||
| 79 | #ifdef __ARMEB__ | ||
| 80 | # define RSEQ_SIG 0xf3def5e7 /* udf #24035 ; 0x5de3 (ARMv6+) */ | ||
| 81 | #else | ||
| 82 | # define RSEQ_SIG 0xe7f5def3 /* udf #24035 ; 0x5de3 */ | ||
| 83 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/armeb-linux-gnueabihf/bits/setjmp.h deleted-36| ... | @@ -1,36 +0,0 @@ | ||
| 1 | /* Copyright (C) 2004-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | /* Define the machine-dependent type `jmp_buf'. ARM EABI version. */ | ||
| 19 | |||
| 20 | #ifndef _BITS_SETJMP_H | ||
| 21 | #define _BITS_SETJMP_H 1 | ||
| 22 | |||
| 23 | #if !defined _SETJMP_H && !defined _PTHREAD_H | ||
| 24 | # error "Never include <bits/setjmp.h> directly; use <setjmp.h> instead." | ||
| 25 | #endif | ||
| 26 | |||
| 27 | #ifndef __ASSEMBLER__ | ||
| 28 | /* The exact set of registers saved may depend on the particular core | ||
| 29 | in use, as some coprocessor registers may need to be saved. The C | ||
| 30 | Library ABI requires that the buffer be 8-byte aligned, and | ||
| 31 | recommends that the buffer contain 64 words. The first 26 words | ||
| 32 | are occupied by sp, lr, v1-v6, sl, fp, and d8-d15. */ | ||
| 33 | typedef int __jmp_buf[64] __attribute__((__aligned__ (8))); | ||
| 34 | #endif | ||
| 35 | |||
| 36 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/armeb-linux-gnueabihf/bits/shmlba.h deleted-29| ... | @@ -1,29 +0,0 @@ | ||
| 1 | /* Define SHMLBA. ARM version. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SHM_H | ||
| 20 | # error "Never use <bits/shmlba.h> directly; include <sys/shm.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | __BEGIN_DECLS | ||
| 24 | |||
| 25 | /* Segment low boundary address multiple. */ | ||
| 26 | #define SHMLBA		(__getpagesize () << 2) | ||
| 27 | extern int __getpagesize (void) __THROW __attribute__ ((__const__)); | ||
| 28 | |||
| 29 | __END_DECLS | ||
| \ No newline at end of file | |||
lib/libc/include/armeb-linux-gnueabihf/bits/struct_stat.h deleted-139| ... | @@ -1,139 +0,0 @@ | ||
| 1 | /* Definition for struct stat. Linux/arm version. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #if !defined _SYS_STAT_H && !defined _FCNTL_H | ||
| 20 | # error "Never include <bits/struct_stat.h> directly; use <sys/stat.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef _BITS_STRUCT_STAT_H | ||
| 24 | #define _BITS_STRUCT_STAT_H	1 | ||
| 25 | |||
| 26 | #include <bits/endian.h> | ||
| 27 | #include <bits/wordsize.h> | ||
| 28 | |||
| 29 | struct stat | ||
| 30 | { | ||
| 31 | #ifdef __USE_TIME64_REDIRECTS | ||
| 32 | # include <bits/struct_stat_time64_helper.h> | ||
| 33 | #else | ||
| 34 | __dev_t st_dev;			/* Device. */ | ||
| 35 | unsigned short int __pad1; | ||
| 36 | # ifndef __USE_FILE_OFFSET64 | ||
| 37 | __ino_t st_ino;			/* File serial number.	*/ | ||
| 38 | # else | ||
| 39 | __ino_t __st_ino;			/* 32bit file serial number.	*/ | ||
| 40 | # endif | ||
| 41 | __mode_t st_mode;			/* File mode. */ | ||
| 42 | __nlink_t st_nlink;			/* Link count. */ | ||
| 43 | __uid_t st_uid;			/* User ID of the file's owner.	*/ | ||
| 44 | __gid_t st_gid;			/* Group ID of the file's group.*/ | ||
| 45 | __dev_t st_rdev;			/* Device number, if device. */ | ||
| 46 | unsigned short int __pad2; | ||
| 47 | # ifndef __USE_FILE_OFFSET64 | ||
| 48 | __off_t st_size;			/* Size of file, in bytes. */ | ||
| 49 | # else | ||
| 50 | __off64_t st_size;			/* Size of file, in bytes. */ | ||
| 51 | # endif | ||
| 52 | __blksize_t st_blksize;		/* Optimal block size for I/O. */ | ||
| 53 | |||
| 54 | # ifndef __USE_FILE_OFFSET64 | ||
| 55 | __blkcnt_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 56 | # else | ||
| 57 | __blkcnt64_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 58 | # endif | ||
| 59 | # ifdef __USE_XOPEN2K8 | ||
| 60 | /* Nanosecond resolution timestamps are stored in a format | ||
| 61 | equivalent to 'struct timespec'. This is the type used | ||
| 62 | whenever possible but the Unix namespace rules do not allow the | ||
| 63 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 64 | Therefore we have to handle the use of this header in strictly | ||
| 65 | standard-compliant sources special. */ | ||
| 66 | struct timespec st_atim;		/* Time of last access. */ | ||
| 67 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 68 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 69 | # define st_atime st_atim.tv_sec	/* Backward compatibility. */ | ||
| 70 | # define st_mtime st_mtim.tv_sec | ||
| 71 | # define st_ctime st_ctim.tv_sec | ||
| 72 | # else | ||
| 73 | __time_t st_atime;			/* Time of last access. */ | ||
| 74 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 75 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 76 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 77 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 78 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 79 | # endif | ||
| 80 | # ifndef __USE_FILE_OFFSET64 | ||
| 81 | unsigned long int __glibc_reserved4; | ||
| 82 | unsigned long int __glibc_reserved5; | ||
| 83 | # else | ||
| 84 | __ino64_t st_ino;			/* File serial number.	*/ | ||
| 85 | # endif | ||
| 86 | #endif /* __USE_TIME64_REDIRECTS */ | ||
| 87 | }; | ||
| 88 | |||
| 89 | #ifdef __USE_LARGEFILE64 | ||
| 90 | struct stat64 | ||
| 91 | { | ||
| 92 | # ifdef __USE_TIME64_REDIRECTS | ||
| 93 | # include <bits/struct_stat_time64_helper.h> | ||
| 94 | # else | ||
| 95 | __dev_t st_dev;			/* Device. */ | ||
| 96 | unsigned int __pad1; | ||
| 97 | |||
| 98 | __ino_t __st_ino;			/* 32bit file serial number.	*/ | ||
| 99 | __mode_t st_mode;			/* File mode. */ | ||
| 100 | __nlink_t st_nlink;			/* Link count. */ | ||
| 101 | __uid_t st_uid;			/* User ID of the file's owner.	*/ | ||
| 102 | __gid_t st_gid;			/* Group ID of the file's group.*/ | ||
| 103 | __dev_t st_rdev;			/* Device number, if device. */ | ||
| 104 | unsigned int __pad2; | ||
| 105 | __off64_t st_size;			/* Size of file, in bytes. */ | ||
| 106 | __blksize_t st_blksize;		/* Optimal block size for I/O. */ | ||
| 107 | |||
| 108 | __blkcnt64_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 109 | # ifdef __USE_XOPEN2K8 | ||
| 110 | /* Nanosecond resolution timestamps are stored in a format | ||
| 111 | equivalent to 'struct timespec'. This is the type used | ||
| 112 | whenever possible but the Unix namespace rules do not allow the | ||
| 113 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 114 | Therefore we have to handle the use of this header in strictly | ||
| 115 | standard-compliant sources special. */ | ||
| 116 | struct timespec st_atim;		/* Time of last access. */ | ||
| 117 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 118 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 119 | # else | ||
| 120 | __time_t st_atime;			/* Time of last access. */ | ||
| 121 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 122 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 123 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 124 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 125 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 126 | # endif | ||
| 127 | __ino64_t st_ino;			/* File serial number.		*/ | ||
| 128 | # endif /* __USE_TIME64_REDIRECTS */ | ||
| 129 | }; | ||
| 130 | #endif | ||
| 131 | |||
| 132 | /* Tell code we have these members. */ | ||
| 133 | #define	_STATBUF_ST_BLKSIZE | ||
| 134 | #define _STATBUF_ST_RDEV | ||
| 135 | /* Nanosecond resolution time values are supported. */ | ||
| 136 | #define _STATBUF_ST_NSEC | ||
| 137 | |||
| 138 | |||
| 139 | #endif /* _BITS_STRUCT_STAT_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/armeb-linux-gnueabihf/bits/timesize.h deleted-20| ... | @@ -1,20 +0,0 @@ | ||
| 1 | /* Bit size of the time_t type at glibc build time, Linux/ARM. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* Size in bits of the 'time_t' type of the default ABI. */ | ||
| 20 | #define __TIMESIZE	32 | ||
| \ No newline at end of file | |||
lib/libc/include/armeb-linux-gnueabihf/bits/typesizes.h deleted-74| ... | @@ -1,74 +0,0 @@ | ||
| 1 | /* bits/typesizes.h -- underlying types for *_t. ARM version. | ||
| 2 | Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_TYPES_H | ||
| 20 | # error "Never include <bits/typesizes.h> directly; use <sys/types.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef	_BITS_TYPESIZES_H | ||
| 24 | #define	_BITS_TYPESIZES_H	1 | ||
| 25 | |||
| 26 | /* See <bits/types.h> for the meaning of these macros. This file exists so | ||
| 27 | that <bits/types.h> need not vary across different GNU platforms. */ | ||
| 28 | |||
| 29 | #define __DEV_T_TYPE		__UQUAD_TYPE | ||
| 30 | #define __UID_T_TYPE		__U32_TYPE | ||
| 31 | #define __GID_T_TYPE		__U32_TYPE | ||
| 32 | #define __INO_T_TYPE		__ULONGWORD_TYPE | ||
| 33 | #define __INO64_T_TYPE		__UQUAD_TYPE | ||
| 34 | #define __MODE_T_TYPE		__U32_TYPE | ||
| 35 | #define __NLINK_T_TYPE		__UWORD_TYPE | ||
| 36 | #define __OFF_T_TYPE		__SLONGWORD_TYPE | ||
| 37 | #define __OFF64_T_TYPE		__SQUAD_TYPE | ||
| 38 | #define __PID_T_TYPE		__S32_TYPE | ||
| 39 | #define __RLIM_T_TYPE		__ULONGWORD_TYPE | ||
| 40 | #define __RLIM64_T_TYPE		__UQUAD_TYPE | ||
| 41 | #define	__BLKCNT_T_TYPE		__SLONGWORD_TYPE | ||
| 42 | #define	__BLKCNT64_T_TYPE	__SQUAD_TYPE | ||
| 43 | #define	__FSBLKCNT_T_TYPE	__ULONGWORD_TYPE | ||
| 44 | #define	__FSBLKCNT64_T_TYPE	__UQUAD_TYPE | ||
| 45 | #define	__FSFILCNT_T_TYPE	__ULONGWORD_TYPE | ||
| 46 | #define	__FSFILCNT64_T_TYPE	__UQUAD_TYPE | ||
| 47 | #define	__FSWORD_T_TYPE		__SWORD_TYPE | ||
| 48 | #define	__ID_T_TYPE		__U32_TYPE | ||
| 49 | #define __CLOCK_T_TYPE		__SLONGWORD_TYPE | ||
| 50 | #define __TIME_T_TYPE		__SLONGWORD_TYPE | ||
| 51 | #define __USECONDS_T_TYPE	__U32_TYPE | ||
| 52 | #define __SUSECONDS_T_TYPE	__SLONGWORD_TYPE | ||
| 53 | #define __SUSECONDS64_T_TYPE	__SQUAD_TYPE | ||
| 54 | #define __DADDR_T_TYPE		__S32_TYPE | ||
| 55 | #define __KEY_T_TYPE		__S32_TYPE | ||
| 56 | #define __CLOCKID_T_TYPE	__S32_TYPE | ||
| 57 | #define __TIMER_T_TYPE		void * | ||
| 58 | #define __BLKSIZE_T_TYPE	__SLONGWORD_TYPE | ||
| 59 | #define __FSID_T_TYPE		struct { int __val[2]; } | ||
| 60 | #define __SSIZE_T_TYPE		__SWORD_TYPE | ||
| 61 | #define __SYSCALL_SLONG_TYPE	__SLONGWORD_TYPE | ||
| 62 | #define __SYSCALL_ULONG_TYPE	__ULONGWORD_TYPE | ||
| 63 | #define __CPU_MASK_TYPE 	__ULONGWORD_TYPE | ||
| 64 | |||
| 65 | #define __RLIM_T_MATCHES_RLIM64_T		0 | ||
| 66 | #define __STATFS_MATCHES_STATFS64		0 | ||
| 67 | /* And for getitimer, setitimer and rusage */ | ||
| 68 | #define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64	0 | ||
| 69 | |||
| 70 | /* Number of descriptors that can fit in an `fd_set'. */ | ||
| 71 | #define	__FD_SETSIZE		1024 | ||
| 72 | |||
| 73 | |||
| 74 | #endif /* bits/typesizes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/armeb-linux-gnueabihf/bits/wordsize.h deleted-21| ... | @@ -1,21 +0,0 @@ | ||
| 1 | /* Copyright (C) 1999-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #define __WORDSIZE			32 | ||
| 19 | #define __WORDSIZE_TIME64_COMPAT32	1 | ||
| 20 | #define __WORDSIZE32_SIZE_ULONG		0 | ||
| 21 | #define __WORDSIZE32_PTRDIFF_LONG	0 | ||
| \ No newline at end of file | |||
lib/libc/include/armeb-linux-gnueabihf/fpu_control.h deleted-75| ... | @@ -1,75 +0,0 @@ | ||
| 1 | /* FPU control word definitions. ARM VFP version. | ||
| 2 | Copyright (C) 2004-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _FPU_CONTROL_H | ||
| 20 | #define _FPU_CONTROL_H | ||
| 21 | |||
| 22 | #if !(defined(_LIBC) && !defined(_LIBC_TEST)) && defined(__SOFTFP__) | ||
| 23 | |||
| 24 | #define _FPU_RESERVED 0xffffffff | ||
| 25 | #define _FPU_DEFAULT 0x00000000 | ||
| 26 | typedef unsigned int fpu_control_t; | ||
| 27 | #define _FPU_GETCW(cw) (cw) = 0 | ||
| 28 | #define _FPU_SETCW(cw) (void) (cw) | ||
| 29 | extern fpu_control_t __fpu_control; | ||
| 30 | |||
| 31 | #else | ||
| 32 | |||
| 33 | /* masking of interrupts */ | ||
| 34 | #define _FPU_MASK_IM	0x00000100	/* invalid operation */ | ||
| 35 | #define _FPU_MASK_ZM	0x00000200	/* divide by zero */ | ||
| 36 | #define _FPU_MASK_OM	0x00000400	/* overflow */ | ||
| 37 | #define _FPU_MASK_UM	0x00000800	/* underflow */ | ||
| 38 | #define _FPU_MASK_PM	0x00001000	/* inexact */ | ||
| 39 | |||
| 40 | #define _FPU_MASK_NZCV	0xf0000000	/* NZCV flags */ | ||
| 41 | #define _FPU_MASK_RM	0x00c00000	/* rounding mode */ | ||
| 42 | #define _FPU_MASK_EXCEPT 0x00001f1f	/* all exception flags */ | ||
| 43 | |||
| 44 | /* Some bits in the FPSCR are not yet defined. They must be preserved when | ||
| 45 | modifying the contents. */ | ||
| 46 | #define _FPU_RESERVED	0x00086060 | ||
| 47 | #define _FPU_DEFAULT 0x00000000 | ||
| 48 | |||
| 49 | /* Default + exceptions enabled. */ | ||
| 50 | #define _FPU_IEEE	(_FPU_DEFAULT | 0x00001f00) | ||
| 51 | |||
| 52 | /* Type of the control word. */ | ||
| 53 | typedef unsigned int fpu_control_t; | ||
| 54 | |||
| 55 | /* Macros for accessing the hardware control word. */ | ||
| 56 | #ifdef __SOFTFP__ | ||
| 57 | /* This is fmrx %0, fpscr. */ | ||
| 58 | # define _FPU_GETCW(cw) \ | ||
| 59 | __asm__ __volatile__ ("mrc p10, 7, %0, cr1, cr0, 0" : "=r" (cw)) | ||
| 60 | /* This is fmxr fpscr, %0. */ | ||
| 61 | # define _FPU_SETCW(cw) \ | ||
| 62 | __asm__ __volatile__ ("mcr p10, 7, %0, cr1, cr0, 0" : : "r" (cw)) | ||
| 63 | #else | ||
| 64 | # define _FPU_GETCW(cw) \ | ||
| 65 | __asm__ __volatile__ ("vmrs %0, fpscr" : "=r" (cw)) | ||
| 66 | # define _FPU_SETCW(cw) \ | ||
| 67 | __asm__ __volatile__ ("vmsr fpscr, %0" : : "r" (cw)) | ||
| 68 | #endif | ||
| 69 | |||
| 70 | /* Default control word set at startup. */ | ||
| 71 | extern fpu_control_t __fpu_control; | ||
| 72 | |||
| 73 | #endif /* __SOFTFP__ */ | ||
| 74 | |||
| 75 | #endif /* _FPU_CONTROL_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/armeb-linux-gnueabihf/gnu/lib-names.h deleted-14| ... | @@ -1,14 +0,0 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | It defines macros to allow user program to find the shared | ||
| 3 | library files which come as part of GNU libc. */ | ||
| 4 | #ifndef __GNU_LIB_NAMES_H | ||
| 5 | #define __GNU_LIB_NAMES_H	1 | ||
| 6 | |||
| 7 | #if !defined __ARM_PCS_VFP | ||
| 8 | # include <gnu/lib-names-soft.h> | ||
| 9 | #endif | ||
| 10 | #if defined __ARM_PCS_VFP | ||
| 11 | # include <gnu/lib-names-hard.h> | ||
| 12 | #endif | ||
| 13 | |||
| 14 | #endif	/* gnu/lib-names.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/armeb-linux-gnueabihf/gnu/stubs.h deleted-11| ... | @@ -1,11 +0,0 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | This file selects the right generated file of `__stub_FUNCTION' macros | ||
| 3 | based on the architecture being compiled for. */ | ||
| 4 | |||
| 5 | |||
| 6 | #if !defined __ARM_PCS_VFP | ||
| 7 | # include <gnu/stubs-soft.h> | ||
| 8 | #endif | ||
| 9 | #if defined __ARM_PCS_VFP | ||
| 10 | # include <gnu/stubs-hard.h> | ||
| 11 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/armeb-linux-gnueabihf/sys/ptrace.h deleted-226| ... | @@ -1,226 +0,0 @@ | ||
| 1 | /* `ptrace' debugger support interface. Linux/ARM version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library; if not, see | ||
| 18 | <https://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifndef _SYS_PTRACE_H | ||
| 21 | #define _SYS_PTRACE_H	1 | ||
| 22 | |||
| 23 | #include <features.h> | ||
| 24 | #include <bits/types.h> | ||
| 25 | |||
| 26 | __BEGIN_DECLS | ||
| 27 | |||
| 28 | /* Type of the REQUEST argument to `ptrace.' */ | ||
| 29 | enum __ptrace_request | ||
| 30 | { | ||
| 31 | /* Indicate that the process making this request should be traced. | ||
| 32 | All signals received by this process can be intercepted by its | ||
| 33 | parent, and its parent can use the other `ptrace' requests. */ | ||
| 34 | PTRACE_TRACEME = 0, | ||
| 35 | #define PT_TRACE_ME PTRACE_TRACEME | ||
| 36 | |||
| 37 | /* Return the word in the process's text space at address ADDR. */ | ||
| 38 | PTRACE_PEEKTEXT = 1, | ||
| 39 | #define PT_READ_I PTRACE_PEEKTEXT | ||
| 40 | |||
| 41 | /* Return the word in the process's data space at address ADDR. */ | ||
| 42 | PTRACE_PEEKDATA = 2, | ||
| 43 | #define PT_READ_D PTRACE_PEEKDATA | ||
| 44 | |||
| 45 | /* Return the word in the process's user area at offset ADDR. */ | ||
| 46 | PTRACE_PEEKUSER = 3, | ||
| 47 | #define PT_READ_U PTRACE_PEEKUSER | ||
| 48 | |||
| 49 | /* Write the word DATA into the process's text space at address ADDR. */ | ||
| 50 | PTRACE_POKETEXT = 4, | ||
| 51 | #define PT_WRITE_I PTRACE_POKETEXT | ||
| 52 | |||
| 53 | /* Write the word DATA into the process's data space at address ADDR. */ | ||
| 54 | PTRACE_POKEDATA = 5, | ||
| 55 | #define PT_WRITE_D PTRACE_POKEDATA | ||
| 56 | |||
| 57 | /* Write the word DATA into the process's user area at offset ADDR. */ | ||
| 58 | PTRACE_POKEUSER = 6, | ||
| 59 | #define PT_WRITE_U PTRACE_POKEUSER | ||
| 60 | |||
| 61 | /* Continue the process. */ | ||
| 62 | PTRACE_CONT = 7, | ||
| 63 | #define PT_CONTINUE PTRACE_CONT | ||
| 64 | |||
| 65 | /* Kill the process. */ | ||
| 66 | PTRACE_KILL = 8, | ||
| 67 | #define PT_KILL PTRACE_KILL | ||
| 68 | |||
| 69 | /* Single step the process. */ | ||
| 70 | PTRACE_SINGLESTEP = 9, | ||
| 71 | #define PT_STEP PTRACE_SINGLESTEP | ||
| 72 | |||
| 73 | /* Get all general purpose registers used by a process. */ | ||
| 74 | PTRACE_GETREGS = 12, | ||
| 75 | #define PT_GETREGS PTRACE_GETREGS | ||
| 76 | |||
| 77 | /* Set all general purpose registers used by a process. */ | ||
| 78 | PTRACE_SETREGS = 13, | ||
| 79 | #define PT_SETREGS PTRACE_SETREGS | ||
| 80 | |||
| 81 | /* Get all floating point registers used by a process. */ | ||
| 82 | PTRACE_GETFPREGS = 14, | ||
| 83 | #define PT_GETFPREGS PTRACE_GETFPREGS | ||
| 84 | |||
| 85 | /* Set all floating point registers used by a process. */ | ||
| 86 | PTRACE_SETFPREGS = 15, | ||
| 87 | #define PT_SETFPREGS PTRACE_SETFPREGS | ||
| 88 | |||
| 89 | /* Attach to a process that is already running. */ | ||
| 90 | PTRACE_ATTACH = 16, | ||
| 91 | #define PT_ATTACH PTRACE_ATTACH | ||
| 92 | |||
| 93 | /* Detach from a process attached to with PTRACE_ATTACH. */ | ||
| 94 | PTRACE_DETACH = 17, | ||
| 95 | #define PT_DETACH PTRACE_DETACH | ||
| 96 | |||
| 97 | /* Get the iWMMXt state of a process. */ | ||
| 98 | PTRACE_GETWMMXREGS = 18, | ||
| 99 | #define PT_GETWMMXREGS PTRACE_GETWMMXREGS | ||
| 100 | |||
| 101 | /* Set the iWMMXt state of a process. */ | ||
| 102 | PTRACE_SETWMMXREGS = 19, | ||
| 103 | #define PT_SETWMMXREGS PTRACE_SETWMMXREGS | ||
| 104 | |||
| 105 | /* Get the thread pointer of a process. */ | ||
| 106 | PTRACE_GET_THREAD_AREA = 22, | ||
| 107 | #define PT_GET_THREAD_AREA PTRACE_GET_THREAD_AREA | ||
| 108 | |||
| 109 | /* Change the syscall number of a process. */ | ||
| 110 | PTRACE_SET_SYSCALL = 23, | ||
| 111 | #define PT_SET_SYSCALL PTRACE_SET_SYSCALL | ||
| 112 | |||
| 113 | /* Continue and stop at the next entry to or return from syscall. */ | ||
| 114 | PTRACE_SYSCALL = 24, | ||
| 115 | #define PT_SYSCALL PTRACE_SYSCALL | ||
| 116 | |||
| 117 | /* Get the Crunch state of a process. */ | ||
| 118 | PTRACE_GETCRUNCHREGS = 25, | ||
| 119 | #define PT_GETCRUNCHREGS PTRACE_GETCRUNCHREGS | ||
| 120 | |||
| 121 | /* Set the Crunch state of a process. */ | ||
| 122 | PTRACE_SETCRUNCHREGS = 26, | ||
| 123 | #define PT_SETCRUNCHREGS PTRACE_SETCRUNCHREGS | ||
| 124 | |||
| 125 | /* Get all VFP registers used by a process. */ | ||
| 126 | PTRACE_GETVFPREGS = 27, | ||
| 127 | #define PT_GETVFPREGS PTRACE_GETVFPREGS | ||
| 128 | |||
| 129 | /* Set all VFP registers used by a process. */ | ||
| 130 | PTRACE_SETVFPREGS = 28, | ||
| 131 | #define PT_SETVFPREGS PTRACE_SETVFPREGS | ||
| 132 | |||
| 133 | /* Get all hardware breakpoint registers. */ | ||
| 134 | PTRACE_GETHBPREGS = 29, | ||
| 135 | #define PT_GETHBPREGS PTRACE_GETHBPREGS | ||
| 136 | |||
| 137 | /* Set all hardware breakpoint registers. */ | ||
| 138 | PTRACE_SETHBPREGS = 30, | ||
| 139 | #define PT_SETHBPREGS PTRACE_SETHBPREGS | ||
| 140 | |||
| 141 | /* Get the ELF fdpic loadmap address. */ | ||
| 142 | PTRACE_GETFDPIC = 31, | ||
| 143 | #define PT_GETFDPIC PTRACE_GETFDPIC | ||
| 144 | |||
| 145 | /* Set ptrace filter options. */ | ||
| 146 | PTRACE_SETOPTIONS = 0x4200, | ||
| 147 | #define PT_SETOPTIONS PTRACE_SETOPTIONS | ||
| 148 | |||
| 149 | /* Get last ptrace message. */ | ||
| 150 | PTRACE_GETEVENTMSG = 0x4201, | ||
| 151 | #define PT_GETEVENTMSG PTRACE_GETEVENTMSG | ||
| 152 | |||
| 153 | /* Get siginfo for process. */ | ||
| 154 | PTRACE_GETSIGINFO = 0x4202, | ||
| 155 | #define PT_GETSIGINFO PTRACE_GETSIGINFO | ||
| 156 | |||
| 157 | /* Set new siginfo for process. */ | ||
| 158 | PTRACE_SETSIGINFO = 0x4203, | ||
| 159 | #define PT_SETSIGINFO PTRACE_SETSIGINFO | ||
| 160 | |||
| 161 | /* Get register content. */ | ||
| 162 | PTRACE_GETREGSET = 0x4204, | ||
| 163 | #define PTRACE_GETREGSET PTRACE_GETREGSET | ||
| 164 | |||
| 165 | /* Set register content. */ | ||
| 166 | PTRACE_SETREGSET = 0x4205, | ||
| 167 | #define PTRACE_SETREGSET PTRACE_SETREGSET | ||
| 168 | |||
| 169 | /* Like PTRACE_ATTACH, but do not force tracee to trap and do not affect | ||
| 170 | signal or group stop state. */ | ||
| 171 | PTRACE_SEIZE = 0x4206, | ||
| 172 | #define PTRACE_SEIZE PTRACE_SEIZE | ||
| 173 | |||
| 174 | /* Trap seized tracee. */ | ||
| 175 | PTRACE_INTERRUPT = 0x4207, | ||
| 176 | #define PTRACE_INTERRUPT PTRACE_INTERRUPT | ||
| 177 | |||
| 178 | /* Wait for next group event. */ | ||
| 179 | PTRACE_LISTEN = 0x4208, | ||
| 180 | #define PTRACE_LISTEN PTRACE_LISTEN | ||
| 181 | |||
| 182 | /* Retrieve siginfo_t structures without removing signals from a queue. */ | ||
| 183 | PTRACE_PEEKSIGINFO = 0x4209, | ||
| 184 | #define PTRACE_PEEKSIGINFO PTRACE_PEEKSIGINFO | ||
| 185 | |||
| 186 | /* Get the mask of blocked signals. */ | ||
| 187 | PTRACE_GETSIGMASK = 0x420a, | ||
| 188 | #define PTRACE_GETSIGMASK PTRACE_GETSIGMASK | ||
| 189 | |||
| 190 | /* Change the mask of blocked signals. */ | ||
| 191 | PTRACE_SETSIGMASK = 0x420b, | ||
| 192 | #define PTRACE_SETSIGMASK PTRACE_SETSIGMASK | ||
| 193 | |||
| 194 | /* Get seccomp BPF filters. */ | ||
| 195 | PTRACE_SECCOMP_GET_FILTER = 0x420c, | ||
| 196 | #define PTRACE_SECCOMP_GET_FILTER PTRACE_SECCOMP_GET_FILTER | ||
| 197 | |||
| 198 | /* Get seccomp BPF filter metadata. */ | ||
| 199 | PTRACE_SECCOMP_GET_METADATA = 0x420d, | ||
| 200 | #define PTRACE_SECCOMP_GET_METADATA PTRACE_SECCOMP_GET_METADATA | ||
| 201 | |||
| 202 | /* Get information about system call. */ | ||
| 203 | PTRACE_GET_SYSCALL_INFO = 0x420e, | ||
| 204 | #define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO | ||
| 205 | |||
| 206 | /* Get rseq configuration information. */ | ||
| 207 | PTRACE_GET_RSEQ_CONFIGURATION = 0x420f, | ||
| 208 | #define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION | ||
| 209 | |||
| 210 | /* Set configuration for syscall user dispatch. */ | ||
| 211 | PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG = 0x4210, | ||
| 212 | #define PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG \ | ||
| 213 | PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG | ||
| 214 | |||
| 215 | /* Get configuration for syscall user dispatch. */ | ||
| 216 | PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG = 0x4211 | ||
| 217 | #define PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG \ | ||
| 218 | PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG | ||
| 219 | }; | ||
| 220 | |||
| 221 | |||
| 222 | #include <bits/ptrace-shared.h> | ||
| 223 | |||
| 224 | __END_DECLS | ||
| 225 | |||
| 226 | #endif /* _SYS_PTRACE_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/armeb-linux-gnueabihf/sys/ucontext.h deleted-144| ... | @@ -1,144 +0,0 @@ | ||
| 1 | /* Copyright (C) 1998-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | /* System V/ARM ABI compliant context switching support. */ | ||
| 19 | |||
| 20 | #ifndef _SYS_UCONTEXT_H | ||
| 21 | #define _SYS_UCONTEXT_H	1 | ||
| 22 | |||
| 23 | #include <features.h> | ||
| 24 | |||
| 25 | #include <bits/types/sigset_t.h> | ||
| 26 | #include <bits/types/stack_t.h> | ||
| 27 | |||
| 28 | |||
| 29 | #ifdef __USE_MISC | ||
| 30 | # define __ctx(fld) fld | ||
| 31 | #else | ||
| 32 | # define __ctx(fld) __ ## fld | ||
| 33 | #endif | ||
| 34 | |||
| 35 | #ifdef __USE_MISC | ||
| 36 | typedef int greg_t; | ||
| 37 | |||
| 38 | /* Number of general registers. */ | ||
| 39 | # define NGREG	18 | ||
| 40 | |||
| 41 | /* Container for all general registers. */ | ||
| 42 | typedef greg_t gregset_t[NGREG]; | ||
| 43 | |||
| 44 | /* Number of each register is the `gregset_t' array. */ | ||
| 45 | enum | ||
| 46 | { | ||
| 47 | REG_R0 = 0, | ||
| 48 | # define REG_R0	REG_R0 | ||
| 49 | REG_R1 = 1, | ||
| 50 | # define REG_R1	REG_R1 | ||
| 51 | REG_R2 = 2, | ||
| 52 | # define REG_R2	REG_R2 | ||
| 53 | REG_R3 = 3, | ||
| 54 | # define REG_R3	REG_R3 | ||
| 55 | REG_R4 = 4, | ||
| 56 | # define REG_R4	REG_R4 | ||
| 57 | REG_R5 = 5, | ||
| 58 | # define REG_R5	REG_R5 | ||
| 59 | REG_R6 = 6, | ||
| 60 | # define REG_R6	REG_R6 | ||
| 61 | REG_R7 = 7, | ||
| 62 | # define REG_R7	REG_R7 | ||
| 63 | REG_R8 = 8, | ||
| 64 | # define REG_R8	REG_R8 | ||
| 65 | REG_R9 = 9, | ||
| 66 | # define REG_R9	REG_R9 | ||
| 67 | REG_R10 = 10, | ||
| 68 | # define REG_R10	REG_R10 | ||
| 69 | REG_R11 = 11, | ||
| 70 | # define REG_R11	REG_R11 | ||
| 71 | REG_R12 = 12, | ||
| 72 | # define REG_R12	REG_R12 | ||
| 73 | REG_R13 = 13, | ||
| 74 | # define REG_R13	REG_R13 | ||
| 75 | REG_R14 = 14, | ||
| 76 | # define REG_R14	REG_R14 | ||
| 77 | REG_R15 = 15 | ||
| 78 | # define REG_R15	REG_R15 | ||
| 79 | }; | ||
| 80 | |||
| 81 | struct _libc_fpstate | ||
| 82 | { | ||
| 83 | struct | ||
| 84 | { | ||
| 85 | unsigned int sign1:1; | ||
| 86 | unsigned int unused:15; | ||
| 87 | unsigned int sign2:1; | ||
| 88 | unsigned int exponent:14; | ||
| 89 | unsigned int j:1; | ||
| 90 | unsigned int mantissa1:31; | ||
| 91 | unsigned int mantissa0:32; | ||
| 92 | } fpregs[8]; | ||
| 93 | unsigned int fpsr:32; | ||
| 94 | unsigned int fpcr:32; | ||
| 95 | unsigned char ftype[8]; | ||
| 96 | unsigned int init_flag; | ||
| 97 | }; | ||
| 98 | /* Structure to describe FPU registers. */ | ||
| 99 | typedef struct _libc_fpstate fpregset_t; | ||
| 100 | #endif | ||
| 101 | |||
| 102 | /* Context to describe whole processor state. This only describes | ||
| 103 | the core registers; coprocessor registers get saved elsewhere | ||
| 104 | (e.g. in uc_regspace, or somewhere unspecified on the stack | ||
| 105 | during non-RT signal handlers). */ | ||
| 106 | typedef struct | ||
| 107 | { | ||
| 108 | unsigned long int __ctx(trap_no); | ||
| 109 | unsigned long int __ctx(error_code); | ||
| 110 | unsigned long int __ctx(oldmask); | ||
| 111 | unsigned long int __ctx(arm_r0); | ||
| 112 | unsigned long int __ctx(arm_r1); | ||
| 113 | unsigned long int __ctx(arm_r2); | ||
| 114 | unsigned long int __ctx(arm_r3); | ||
| 115 | unsigned long int __ctx(arm_r4); | ||
| 116 | unsigned long int __ctx(arm_r5); | ||
| 117 | unsigned long int __ctx(arm_r6); | ||
| 118 | unsigned long int __ctx(arm_r7); | ||
| 119 | unsigned long int __ctx(arm_r8); | ||
| 120 | unsigned long int __ctx(arm_r9); | ||
| 121 | unsigned long int __ctx(arm_r10); | ||
| 122 | unsigned long int __ctx(arm_fp); | ||
| 123 | unsigned long int __ctx(arm_ip); | ||
| 124 | unsigned long int __ctx(arm_sp); | ||
| 125 | unsigned long int __ctx(arm_lr); | ||
| 126 | unsigned long int __ctx(arm_pc); | ||
| 127 | unsigned long int __ctx(arm_cpsr); | ||
| 128 | unsigned long int __ctx(fault_address); | ||
| 129 | } mcontext_t; | ||
| 130 | |||
| 131 | /* Userlevel context. */ | ||
| 132 | typedef struct ucontext_t | ||
| 133 | { | ||
| 134 | unsigned long __ctx(uc_flags); | ||
| 135 | struct ucontext_t *uc_link; | ||
| 136 | stack_t uc_stack; | ||
| 137 | mcontext_t uc_mcontext; | ||
| 138 | sigset_t uc_sigmask; | ||
| 139 | unsigned long __ctx(uc_regspace)[128] __attribute__((__aligned__(8))); | ||
| 140 | } ucontext_t; | ||
| 141 | |||
| 142 | #undef __ctx | ||
| 143 | |||
| 144 | #endif /* sys/ucontext.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/armeb-linux-gnueabihf/sys/user.h deleted-71| ... | @@ -1,71 +0,0 @@ | ||
| 1 | /* Copyright (C) 1998-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_USER_H | ||
| 19 | #define _SYS_USER_H	1 | ||
| 20 | |||
| 21 | /* The whole purpose of this file is for GDB and GDB only. Don't read | ||
| 22 | too much into it. Don't use it for anything other than GDB unless | ||
| 23 | you know what you are doing. */ | ||
| 24 | |||
| 25 | struct user_fpregs | ||
| 26 | { | ||
| 27 | struct fp_reg | ||
| 28 | { | ||
| 29 | unsigned int sign1:1; | ||
| 30 | unsigned int unused:15; | ||
| 31 | unsigned int sign2:1; | ||
| 32 | unsigned int exponent:14; | ||
| 33 | unsigned int j:1; | ||
| 34 | unsigned int mantissa1:31; | ||
| 35 | unsigned int mantissa0:32; | ||
| 36 | } fpregs[8]; | ||
| 37 | unsigned int fpsr:32; | ||
| 38 | unsigned int fpcr:32; | ||
| 39 | unsigned char ftype[8]; | ||
| 40 | unsigned int init_flag; | ||
| 41 | }; | ||
| 42 | |||
| 43 | struct user_regs | ||
| 44 | { | ||
| 45 | unsigned long int uregs[18]; | ||
| 46 | }; | ||
| 47 | |||
| 48 | struct user | ||
| 49 | { | ||
| 50 | struct user_regs regs;	/* General registers */ | ||
| 51 | int u_fpvalid;		/* True if math co-processor being used. */ | ||
| 52 | |||
| 53 | unsigned long int u_tsize;	/* Text segment size (pages). */ | ||
| 54 | unsigned long int u_dsize;	/* Data segment size (pages). */ | ||
| 55 | unsigned long int u_ssize;	/* Stack segment size (pages). */ | ||
| 56 | |||
| 57 | unsigned long start_code;	/* Starting virtual address of text. */ | ||
| 58 | unsigned long start_stack;	/* Starting virtual address of stack. */ | ||
| 59 | |||
| 60 | long int signal; 		/* Signal that caused the core dump. */ | ||
| 61 | int reserved;			/* No longer used */ | ||
| 62 | struct user_regs *u_ar0;	/* help gdb to find the general registers. */ | ||
| 63 | |||
| 64 | unsigned long magic;		/* uniquely identify a core file */ | ||
| 65 | char u_comm[32];		/* User command that was responsible */ | ||
| 66 | int u_debugreg[8]; | ||
| 67 | struct user_fpregs u_fp;	/* Floating point registers */ | ||
| 68 | struct user_fpregs *u_fp0;	/* help gdb to find the FP registers. */ | ||
| 69 | }; | ||
| 70 | |||
| 71 | #endif /* sys/user.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnu/bits/endianness.h created+14| ... | @@ -0,0 +1,14 @@ | ||
| 1 | #ifndef _BITS_ENDIANNESS_H | ||
| 2 | #define _BITS_ENDIANNESS_H 1 | ||
| 3 | |||
| 4 | #ifndef _BITS_ENDIAN_H | ||
| 5 | # error "Never use <bits/endianness.h> directly; include <endian.h> instead." | ||
| 6 | #endif | ||
| 7 | |||
| 8 | #ifdef __CSKYBE__ | ||
| 9 | # error "Big endian not supported for C-SKY." | ||
| 10 | #else | ||
| 11 | # define __BYTE_ORDER __LITTLE_ENDIAN | ||
| 12 | #endif | ||
| 13 | |||
| 14 | #endif /* bits/endianness.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnu/bits/fcntl.h created+55| ... | @@ -0,0 +1,55 @@ | ||
| 1 | /* O_*, F_*, FD_* bit values for the generic Linux ABI. | ||
| 2 | Copyright (C) 2011-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef	_FCNTL_H | ||
| 20 | # error "Never use <bits/fcntl.h> directly; include <fcntl.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <bits/wordsize.h> | ||
| 24 | |||
| 25 | #if __WORDSIZE == 64 | ||
| 26 | # define __O_LARGEFILE	0 | ||
| 27 | #endif | ||
| 28 | |||
| 29 | struct flock | ||
| 30 | { | ||
| 31 | short int l_type;	/* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK.	*/ | ||
| 32 | short int l_whence;	/* Where `l_start' is relative to (like `lseek'). */ | ||
| 33 | #ifndef __USE_FILE_OFFSET64 | ||
| 34 | __off_t l_start;	/* Offset where the lock begins. */ | ||
| 35 | __off_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 36 | #else | ||
| 37 | __off64_t l_start;	/* Offset where the lock begins. */ | ||
| 38 | __off64_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 39 | #endif | ||
| 40 | __pid_t l_pid;	/* Process holding the lock. */ | ||
| 41 | }; | ||
| 42 | |||
| 43 | #ifdef __USE_LARGEFILE64 | ||
| 44 | struct flock64 | ||
| 45 | { | ||
| 46 | short int l_type;	/* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK.	*/ | ||
| 47 | short int l_whence;	/* Where `l_start' is relative to (like `lseek'). */ | ||
| 48 | __off64_t l_start;	/* Offset where the lock begins. */ | ||
| 49 | __off64_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 50 | __pid_t l_pid;	/* Process holding the lock. */ | ||
| 51 | }; | ||
| 52 | #endif | ||
| 53 | |||
| 54 | /* Include generic Linux declarations. */ | ||
| 55 | #include <bits/fcntl-linux.h> | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnu/bits/fenv.h created+111| ... | @@ -0,0 +1,111 @@ | ||
| 1 | /* Floating point environment. C-SKY version. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _FENV_H | ||
| 20 | # error "Never use <bits/fenv.h> directly; include <fenv.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifdef __csky_hard_float__ | ||
| 24 | /* Define bits representing the exception. We use the bit positions | ||
| 25 | of the appropriate bits in the FPU control word. */ | ||
| 26 | enum | ||
| 27 | { | ||
| 28 | FE_INVALID = | ||
| 29 | #define FE_INVALID	0x01 | ||
| 30 | FE_INVALID, | ||
| 31 | FE_DIVBYZERO = | ||
| 32 | #define FE_DIVBYZERO	0x02 | ||
| 33 | FE_DIVBYZERO, | ||
| 34 | FE_OVERFLOW = | ||
| 35 | #define FE_OVERFLOW	0x04 | ||
| 36 | FE_OVERFLOW, | ||
| 37 | FE_UNDERFLOW = | ||
| 38 | #define FE_UNDERFLOW	0x08 | ||
| 39 | FE_UNDERFLOW, | ||
| 40 | FE_INEXACT = | ||
| 41 | #define FE_INEXACT	0x10 | ||
| 42 | FE_INEXACT, | ||
| 43 | __FE_DENORMAL = 0x20 | ||
| 44 | }; | ||
| 45 | |||
| 46 | #define FE_ALL_EXCEPT \ | ||
| 47 | 	(FE_INEXACT | FE_DIVBYZERO | FE_UNDERFLOW | FE_OVERFLOW | FE_INVALID) | ||
| 48 | |||
| 49 | /* The C-SKY FPU supports all of the four defined rounding modes. We | ||
| 50 | use again the bit positions in the FPU control word as the values | ||
| 51 | for the appropriate macros. */ | ||
| 52 | enum | ||
| 53 | { | ||
| 54 | FE_TONEAREST = | ||
| 55 | #define FE_TONEAREST	(0x0 << 24) | ||
| 56 | FE_TONEAREST, | ||
| 57 | FE_TOWARDZERO = | ||
| 58 | #define FE_TOWARDZERO	(0x1 << 24) | ||
| 59 | FE_TOWARDZERO, | ||
| 60 | FE_UPWARD = | ||
| 61 | #define FE_UPWARD	(0x2 << 24) | ||
| 62 | FE_UPWARD, | ||
| 63 | FE_DOWNWARD = | ||
| 64 | #define FE_DOWNWARD	(0x3 << 24) | ||
| 65 | FE_DOWNWARD, | ||
| 66 | __FE_ROUND_MASK = (0x3 << 24) | ||
| 67 | }; | ||
| 68 | |||
| 69 | #else | ||
| 70 | |||
| 71 | /* In the soft-float case, only rounding to nearest is supported, with | ||
| 72 | no exceptions. */ | ||
| 73 | |||
| 74 | enum | ||
| 75 | { | ||
| 76 | __FE_UNDEFINED = -1, | ||
| 77 | |||
| 78 | FE_TONEAREST = | ||
| 79 | # define FE_TONEAREST	0x0 | ||
| 80 | FE_TONEAREST | ||
| 81 | }; | ||
| 82 | |||
| 83 | # define FE_ALL_EXCEPT 0 | ||
| 84 | |||
| 85 | #endif | ||
| 86 | |||
| 87 | /* Type representing exception flags. */ | ||
| 88 | typedef unsigned int fexcept_t; | ||
| 89 | |||
| 90 | /* Type representing floating-point environment. */ | ||
| 91 | typedef struct | ||
| 92 | { | ||
| 93 | unsigned int __fpcr; | ||
| 94 | unsigned int __fpsr; | ||
| 95 | } fenv_t; | ||
| 96 | |||
| 97 | /* If the default argument is used we use this value. */ | ||
| 98 | #define FE_DFL_ENV	((const fenv_t *) -1) | ||
| 99 | |||
| 100 | #if defined __USE_GNU && defined __csky_hard_float__ | ||
| 101 | /* Floating-point environment where none of the exceptions are masked. */ | ||
| 102 | # define FE_NOMASK_ENV	((const fenv_t *) -2) | ||
| 103 | #endif | ||
| 104 | |||
| 105 | #if __GLIBC_USE (IEC_60559_BFP_EXT_C23) | ||
| 106 | /* Type representing floating-point control modes. */ | ||
| 107 | typedef unsigned int femode_t; | ||
| 108 | |||
| 109 | /* Default floating-point control modes. */ | ||
| 110 | # define FE_DFL_MODE	((const femode_t *) -1L) | ||
| 111 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnu/bits/floatn.h created+52| ... | @@ -0,0 +1,52 @@ | ||
| 1 | /* Macros to control TS 18661-3 glibc features. | ||
| 2 | Copyright (C) 2017-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* Defined to 1 if the current compiler invocation provides a | ||
| 20 | floating-point type with the IEEE 754 binary128 format, and this glibc | ||
| 21 | includes corresponding *f128 interfaces for it. */ | ||
| 22 | #define __HAVE_FLOAT128 0 | ||
| 23 | |||
| 24 | /* Defined to 1 if __HAVE_FLOAT128 is 1 and the type is ABI-distinct | ||
| 25 | from the default float, double and long double types in this glibc. */ | ||
| 26 | #define __HAVE_DISTINCT_FLOAT128 0 | ||
| 27 | |||
| 28 | /* Defined to 1 if the current compiler invocation provides a | ||
| 29 | floating-point type with the right format for _Float64x, and this | ||
| 30 | glibc includes corresponding *f64x interfaces for it. */ | ||
| 31 | #define __HAVE_FLOAT64X 0 | ||
| 32 | |||
| 33 | /* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format | ||
| 34 | of long double. Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has | ||
| 35 | the format of _Float128, which must be different from that of long | ||
| 36 | double. */ | ||
| 37 | #define __HAVE_FLOAT64X_LONG_DOUBLE 0 | ||
| 38 | |||
| 39 | #ifndef __ASSEMBLER__ | ||
| 40 | |||
| 41 | /* Defined to concatenate the literal suffix to be used with _Float128 | ||
| 42 | types, if __HAVE_FLOAT128 is 1. | ||
| 43 | E.g.: #define __f128(x) x##f128. */ | ||
| 44 | # undef __f128 | ||
| 45 | |||
| 46 | /* Defined to a complex binary128 type if __HAVE_FLOAT128 is 1. | ||
| 47 | E.g.: #define __CFLOAT128 _Complex _Float128. */ | ||
| 48 | # undef __CFLOAT128 | ||
| 49 | |||
| 50 | #endif /* !__ASSEMBLER__. */ | ||
| 51 | |||
| 52 | #include <bits/floatn-common.h> | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnu/bits/link.h created+55| ... | @@ -0,0 +1,55 @@ | ||
| 1 | /* Machine-specific declarations for dynamic linker interface. C-SKY version. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _LINK_H | ||
| 20 | # error "Never include <bits/link.h> directly; use <link.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Registers for entry into PLT on C-SKY. */ | ||
| 24 | typedef struct La_csky_regs | ||
| 25 | { | ||
| 26 | uint32_t lr_reg[4]; | ||
| 27 | uint32_t lr_sp; | ||
| 28 | uint32_t lr_lr; | ||
| 29 | } La_csky_regs; | ||
| 30 | |||
| 31 | /* Return values for calls from PLT on C-SKY. */ | ||
| 32 | typedef struct La_csky_retval | ||
| 33 | { | ||
| 34 | /* Up to four integer registers can be used for a return value. */ | ||
| 35 | uint32_t lrv_reg[4]; | ||
| 36 | uint32_t lrv_v0; | ||
| 37 | } La_csky_retval; | ||
| 38 | |||
| 39 | __BEGIN_DECLS | ||
| 40 | |||
| 41 | extern Elf32_Addr la_csky_gnu_pltenter (Elf32_Sym *__sym, unsigned int __ndx, | ||
| 42 | 					uintptr_t *__refcook, | ||
| 43 | 					uintptr_t *__defcook, | ||
| 44 | 					La_csky_regs *__regs, | ||
| 45 | 					unsigned int *__flags, | ||
| 46 | 					const char *__symname, | ||
| 47 | 					long int *__framesizep); | ||
| 48 | extern unsigned int la_csky_gnu_pltexit (Elf32_Sym *__sym, unsigned int __ndx, | ||
| 49 | 					 uintptr_t *__refcook, | ||
| 50 | 					 uintptr_t *__defcook, | ||
| 51 | 					 const La_csky_regs *__inregs, | ||
| 52 | 					 La_csky_retval *__outregs, | ||
| 53 | 					 const char *__symname); | ||
| 54 | |||
| 55 | __END_DECLS | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnu/bits/long-double.h created+53| ... | @@ -0,0 +1,53 @@ | ||
| 1 | /* Properties of long double type. | ||
| 2 | Copyright (C) 2016-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* This header is included by <sys/cdefs.h>. | ||
| 20 | |||
| 21 | If long double is ABI-compatible with double, it should define | ||
| 22 | __NO_LONG_DOUBLE_MATH to 1; otherwise, it should leave | ||
| 23 | __NO_LONG_DOUBLE_MATH undefined. | ||
| 24 | |||
| 25 | If this build of the GNU C Library supports both long double | ||
| 26 | ABI-compatible with double and some other long double format not | ||
| 27 | ABI-compatible with double, it should define | ||
| 28 | __LONG_DOUBLE_MATH_OPTIONAL to 1; otherwise, it should leave | ||
| 29 | __LONG_DOUBLE_MATH_OPTIONAL undefined. | ||
| 30 | |||
| 31 | If __NO_LONG_DOUBLE_MATH is already defined, this header must not | ||
| 32 | define anything; this is needed to work with the definition of | ||
| 33 | __NO_LONG_DOUBLE_MATH in nldbl-compat.h. */ | ||
| 34 | |||
| 35 | /* In the default version of this header, long double is | ||
| 36 | ABI-compatible with double. */ | ||
| 37 | #ifndef __NO_LONG_DOUBLE_MATH | ||
| 38 | # define __NO_LONG_DOUBLE_MATH	1 | ||
| 39 | #endif | ||
| 40 | |||
| 41 | /* The macro __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI is used to determine the | ||
| 42 | choice of the underlying ABI of long double. It will always assume | ||
| 43 | a constant value for each translation unit. | ||
| 44 | |||
| 45 | If the value is non-zero, any API which is parameterized by the long | ||
| 46 | double type (i.e the scanf/printf family of functions or the explicitly | ||
| 47 | parameterized math.h functions) will be redirected to a compatible | ||
| 48 | implementation using _Float128 ABI via symbols suffixed with ieee128. | ||
| 49 | |||
| 50 | The mechanism this macro uses to acquire may be a function | ||
| 51 | of architecture, or target specific options used to invoke the | ||
| 52 | compiler. */ | ||
| 53 | #define __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI 0 | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnu/bits/procfs.h created+37| ... | @@ -0,0 +1,37 @@ | ||
| 1 | /* Types for registers for sys/procfs.h. C-SKY version. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_PROCFS_H | ||
| 20 | # error "Never include <bits/procfs.h> directly; use <sys/procfs.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <asm/ptrace.h> | ||
| 24 | |||
| 25 | /* Type for a general-purpose register. */ | ||
| 26 | typedef unsigned long elf_greg_t; | ||
| 27 | /* Type for a floating-point registers. */ | ||
| 28 | typedef unsigned long elf_fpreg_t; | ||
| 29 | |||
| 30 | /* In gdb/bfd elf32-csky.c, csky_elf_grok_prstatus() use fixed size of | ||
| 31 | elf_prstatus. It's 148 for abiv1 and 220 for abiv2, the size is enough | ||
| 32 | for coredump and no need full sizeof (struct pt_regs). */ | ||
| 33 | #define ELF_NGREG ((sizeof (struct pt_regs) / sizeof (elf_greg_t)) - 2) | ||
| 34 | typedef elf_greg_t elf_gregset_t[ELF_NGREG]; | ||
| 35 | |||
| 36 | #define ELF_NFPREG (sizeof (struct user_fp) / sizeof (elf_fpreg_t)) | ||
| 37 | typedef elf_fpreg_t elf_fpregset_t[ELF_NFPREG]; | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnu/bits/rseq.h created+29| ... | @@ -0,0 +1,29 @@ | ||
| 1 | /* Restartable Sequences architecture header. Stub version. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_RSEQ_H | ||
| 19 | # error "Never use <bits/rseq.h> directly; include <sys/rseq.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* RSEQ_SIG is a signature required before each abort handler code. | ||
| 23 | |||
| 24 | It is a 32-bit value that maps to actual architecture code compiled | ||
| 25 | into applications and libraries. It needs to be defined for each | ||
| 26 | architecture. When choosing this value, it needs to be taken into | ||
| 27 | account that generating invalid instructions may have ill effects on | ||
| 28 | tools like objdump, and may also have impact on the CPU speculative | ||
| 29 | execution efficiency in some cases. */ | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnu/bits/setjmp.h created+34| ... | @@ -0,0 +1,34 @@ | ||
| 1 | /* Define the machine-dependent type `jmp_buf'. C-SKY version. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _CSKY_BITS_SETJMP_H | ||
| 20 | #define _CSKY_BITS_SETJMP_H 1 | ||
| 21 | |||
| 22 | typedef struct __jmp_buf_str | ||
| 23 | { | ||
| 24 | /* Stack pointer. */ | ||
| 25 | int __sp; | ||
| 26 | int __lr; | ||
| 27 | /* The actual core defines which registers should be saved. The | ||
| 28 | buffer contains 32 words, keep space for future growth. | ||
| 29 | Callee-saved registers: | ||
| 30 | r4 ~ r11, r16 ~ r17, r26 ~r31 for abiv2; r8 ~ r14 for abiv1. */ | ||
| 31 | int __regs[32]; | ||
| 32 | } __jmp_buf[1]; | ||
| 33 | |||
| 34 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnu/bits/shmlba.h created+29| ... | @@ -0,0 +1,29 @@ | ||
| 1 | /* Define SHMLBA. C-SKY version. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SHM_H | ||
| 20 | # error "Never use <bits/shmlba.h> directly; include <sys/shm.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | __BEGIN_DECLS | ||
| 24 | |||
| 25 | /* Segment low boundary address multiple. */ | ||
| 26 | #define SHMLBA		(__getpagesize () << 2) | ||
| 27 | extern int __getpagesize (void) __THROW __attribute__ ((__const__)); | ||
| 28 | |||
| 29 | __END_DECLS | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnu/bits/statfs.h created+75| ... | @@ -0,0 +1,75 @@ | ||
| 1 | /* Copyright (C) 2011-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_STATFS_H | ||
| 19 | # error "Never include <bits/statfs.h> directly; use <sys/statfs.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | #include <bits/endian.h> | ||
| 23 | #include <bits/types.h> | ||
| 24 | #include <bits/wordsize.h> | ||
| 25 | |||
| 26 | #if defined __USE_FILE_OFFSET64 | ||
| 27 | # define __field64(type, type64, name) type64 name | ||
| 28 | #elif __BYTE_ORDER == __LITTLE_ENDIAN | ||
| 29 | # define __field64(type, type64, name) \ | ||
| 30 | type name __attribute__((__aligned__ (__alignof__ (type64)))); int __##name##_pad | ||
| 31 | #else | ||
| 32 | # define __field64(type, type64, name) \ | ||
| 33 | int __##name##_pad __attribute__((__aligned__ (__alignof__ (type64)))); type name | ||
| 34 | #endif | ||
| 35 | |||
| 36 | struct statfs | ||
| 37 | { | ||
| 38 | __SWORD_TYPE f_type; | ||
| 39 | __SWORD_TYPE f_bsize; | ||
| 40 | __field64(__fsblkcnt_t, __fsblkcnt64_t, f_blocks); | ||
| 41 | __field64(__fsblkcnt_t, __fsblkcnt64_t, f_bfree); | ||
| 42 | __field64(__fsblkcnt_t, __fsblkcnt64_t, f_bavail); | ||
| 43 | __field64(__fsfilcnt_t, __fsfilcnt64_t, f_files); | ||
| 44 | __field64(__fsfilcnt_t, __fsfilcnt64_t, f_ffree); | ||
| 45 | __fsid_t f_fsid; | ||
| 46 | __SWORD_TYPE f_namelen; | ||
| 47 | __SWORD_TYPE f_frsize; | ||
| 48 | __SWORD_TYPE f_flags; | ||
| 49 | __SWORD_TYPE f_spare[4]; | ||
| 50 | }; | ||
| 51 | |||
| 52 | #undef __field64 | ||
| 53 | |||
| 54 | #ifdef __USE_LARGEFILE64 | ||
| 55 | struct statfs64 | ||
| 56 | { | ||
| 57 | __SWORD_TYPE f_type; | ||
| 58 | __SWORD_TYPE f_bsize; | ||
| 59 | __fsblkcnt64_t f_blocks; | ||
| 60 | __fsblkcnt64_t f_bfree; | ||
| 61 | __fsblkcnt64_t f_bavail; | ||
| 62 | __fsfilcnt64_t f_files; | ||
| 63 | __fsfilcnt64_t f_ffree; | ||
| 64 | __fsid_t f_fsid; | ||
| 65 | __SWORD_TYPE f_namelen; | ||
| 66 | __SWORD_TYPE f_frsize; | ||
| 67 | __SWORD_TYPE f_flags; | ||
| 68 | __SWORD_TYPE f_spare[4]; | ||
| 69 | }; | ||
| 70 | #endif | ||
| 71 | |||
| 72 | /* Tell code we have these members. */ | ||
| 73 | #define _STATFS_F_NAMELEN | ||
| 74 | #define _STATFS_F_FRSIZE | ||
| 75 | #define _STATFS_F_FLAGS | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnu/bits/struct_stat.h created+135| ... | @@ -0,0 +1,135 @@ | ||
| 1 | /* Definition for struct stat. Linux/csky version. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #if !defined _SYS_STAT_H && !defined _FCNTL_H | ||
| 20 | # error "Never include <bits/struct_stat.h> directly; use <sys/stat.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef _BITS_STRUCT_STAT_H | ||
| 24 | #define _BITS_STRUCT_STAT_H	1 | ||
| 25 | |||
| 26 | #include <bits/endian.h> | ||
| 27 | #include <bits/wordsize.h> | ||
| 28 | |||
| 29 | #if defined __USE_FILE_OFFSET64 | ||
| 30 | # define __field64(type, type64, name) type64 name | ||
| 31 | #elif __WORDSIZE == 64 || defined __INO_T_MATCHES_INO64_T | ||
| 32 | # if defined __INO_T_MATCHES_INO64_T && !defined __OFF_T_MATCHES_OFF64_T | ||
| 33 | # error "ino_t and off_t must both be the same type" | ||
| 34 | # endif | ||
| 35 | # define __field64(type, type64, name) type name | ||
| 36 | #elif __BYTE_ORDER == __LITTLE_ENDIAN | ||
| 37 | # define __field64(type, type64, name) \ | ||
| 38 | type name __attribute__((__aligned__ (__alignof__ (type64)))); int __##name##_pad | ||
| 39 | #else | ||
| 40 | # define __field64(type, type64, name) \ | ||
| 41 | int __##name##_pad __attribute__((__aligned__ (__alignof__ (type64)))); type name | ||
| 42 | #endif | ||
| 43 | |||
| 44 | struct stat | ||
| 45 | { | ||
| 46 | #ifdef __USE_TIME64_REDIRECTS | ||
| 47 | # include <bits/struct_stat_time64_helper.h> | ||
| 48 | #else | ||
| 49 | __dev_t st_dev;		/* Device. */ | ||
| 50 | __field64(__ino_t, __ino64_t, st_ino); /* File serial number. */ | ||
| 51 | __mode_t st_mode;		/* File mode. */ | ||
| 52 | __nlink_t st_nlink;		/* Link count. */ | ||
| 53 | __uid_t st_uid;		/* User ID of the file's owner.	*/ | ||
| 54 | __gid_t st_gid;		/* Group ID of the file's group.*/ | ||
| 55 | __dev_t st_rdev;		/* Device number, if device. */ | ||
| 56 | __dev_t __pad1; | ||
| 57 | __field64(__off_t, __off64_t, st_size); /* Size of file, in bytes. */ | ||
| 58 | __blksize_t st_blksize;	/* Optimal block size for I/O. */ | ||
| 59 | int __pad2; | ||
| 60 | __field64(__blkcnt_t, __blkcnt64_t, st_blocks); /* 512-byte blocks */ | ||
| 61 | # ifdef __USE_XOPEN2K8 | ||
| 62 | /* Nanosecond resolution timestamps are stored in a format | ||
| 63 | equivalent to 'struct timespec'. This is the type used | ||
| 64 | whenever possible but the Unix namespace rules do not allow the | ||
| 65 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 66 | Therefore we have to handle the use of this header in strictly | ||
| 67 | standard-compliant sources special. */ | ||
| 68 | struct timespec st_atim;		/* Time of last access. */ | ||
| 69 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 70 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 71 | # define st_atime st_atim.tv_sec	/* Backward compatibility. */ | ||
| 72 | # define st_mtime st_mtim.tv_sec | ||
| 73 | # define st_ctime st_ctim.tv_sec | ||
| 74 | # else | ||
| 75 | __time_t st_atime;			/* Time of last access. */ | ||
| 76 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 77 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 78 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 79 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 80 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 81 | # endif | ||
| 82 | int __glibc_reserved[2]; | ||
| 83 | #endif | ||
| 84 | }; | ||
| 85 | |||
| 86 | #undef __field64 | ||
| 87 | |||
| 88 | #ifdef __USE_LARGEFILE64 | ||
| 89 | struct stat64 | ||
| 90 | { | ||
| 91 | # ifdef __USE_TIME64_REDIRECTS | ||
| 92 | # include <bits/struct_stat_time64_helper.h> | ||
| 93 | # else | ||
| 94 | __dev_t st_dev;		/* Device. */ | ||
| 95 | __ino64_t st_ino;		/* File serial number.	*/ | ||
| 96 | __mode_t st_mode;		/* File mode. */ | ||
| 97 | __nlink_t st_nlink;		/* Link count. */ | ||
| 98 | __uid_t st_uid;		/* User ID of the file's owner.	*/ | ||
| 99 | __gid_t st_gid;		/* Group ID of the file's group.*/ | ||
| 100 | __dev_t st_rdev;		/* Device number, if device. */ | ||
| 101 | __dev_t __pad1; | ||
| 102 | __off64_t st_size;		/* Size of file, in bytes. */ | ||
| 103 | __blksize_t st_blksize;	/* Optimal block size for I/O. */ | ||
| 104 | int __pad2; | ||
| 105 | __blkcnt64_t st_blocks;	/* Nr. 512-byte blocks allocated. */ | ||
| 106 | # ifdef __USE_XOPEN2K8 | ||
| 107 | /* Nanosecond resolution timestamps are stored in a format | ||
| 108 | equivalent to 'struct timespec'. This is the type used | ||
| 109 | whenever possible but the Unix namespace rules do not allow the | ||
| 110 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 111 | Therefore we have to handle the use of this header in strictly | ||
| 112 | standard-compliant sources special. */ | ||
| 113 | struct timespec st_atim;		/* Time of last access. */ | ||
| 114 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 115 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 116 | # else | ||
| 117 | __time_t st_atime;			/* Time of last access. */ | ||
| 118 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 119 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 120 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 121 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 122 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 123 | # endif | ||
| 124 | int __glibc_reserved[2]; | ||
| 125 | # endif | ||
| 126 | }; | ||
| 127 | #endif | ||
| 128 | |||
| 129 | /* Tell code we have these members. */ | ||
| 130 | #define	_STATBUF_ST_BLKSIZE | ||
| 131 | #define _STATBUF_ST_RDEV | ||
| 132 | /* Nanosecond resolution time values are supported. */ | ||
| 133 | #define _STATBUF_ST_NSEC | ||
| 134 | |||
| 135 | #endif /* _BITS_STRUCT_STAT_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnu/bits/timesize.h created+20| ... | @@ -0,0 +1,20 @@ | ||
| 1 | /* Bit size of the time_t type at glibc build time, Linux/csky. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* Size in bits of the 'time_t' type of the default ABI. */ | ||
| 20 | #define __TIMESIZE	32 | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnu/bits/wordsize.h created+21| ... | @@ -0,0 +1,21 @@ | ||
| 1 | /* Copyright (C) 1999-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #define __WORDSIZE			32 | ||
| 19 | #define __WORDSIZE_TIME64_COMPAT32	1 | ||
| 20 | #define __WORDSIZE32_SIZE_ULONG		0 | ||
| 21 | #define __WORDSIZE32_PTRDIFF_LONG	0 | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnu/fpu_control.h created+148| ... | @@ -0,0 +1,148 @@ | ||
| 1 | /* FPU control word bits. C-SKY version. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _FPU_CONTROL_H | ||
| 20 | #define _FPU_CONTROL_H | ||
| 21 | |||
| 22 | /* C-SKY FPU floating point control register bits. | ||
| 23 | |||
| 24 | 31-28 -> Reserved (read as 0, write with 0). | ||
| 25 | 27 -> 0: Flush denormalized results to zero. | ||
| 26 | 1: Flush denormalized results to signed minimal normal number. | ||
| 27 | 26 -> Reserved (read as 0, write with 0). | ||
| 28 | 25-24 -> Rounding control. | ||
| 29 | 23-6 -> Reserved (read as 0, write with 0). | ||
| 30 | 5 -> Enable exception for input denormalized exception. | ||
| 31 | 4 -> Enable exception for inexact exception. | ||
| 32 | 3 -> Enable exception for underflow exception. | ||
| 33 | 2 -> Enable exception for overflow exception. | ||
| 34 | 1 -> Enable exception for division by zero exception. | ||
| 35 | 0 -> Enable exception for invalid operation exception. | ||
| 36 | |||
| 37 | Rounding Control: | ||
| 38 | 00 - Rounding to nearest (RN). | ||
| 39 | 01 - Rounding toward zero (RZ). | ||
| 40 | 10 - Rounding (up) toward plus infinity (RP). | ||
| 41 | 11 - Rounding (down)toward minus infinity (RM). | ||
| 42 | |||
| 43 | C-SKY FPU floating point exception status register bits. | ||
| 44 | |||
| 45 | 15 -> Accumulate bit for any exception. | ||
| 46 | 14 -> Reserved (read as 0, write with 0). | ||
| 47 | 13 -> Cause bit for input denormalized exception. | ||
| 48 | 12 -> Cause bit for inexact exception. | ||
| 49 | 11 -> Cause bit for underflow exception. | ||
| 50 | 10 -> Cause bit for overflow exception. | ||
| 51 | 9 -> Cause bit for division by zero exception. | ||
| 52 | 8 -> Cause bit for invalid operation exception. | ||
| 53 | 7 -> Flag bit for any exception. | ||
| 54 | 6 -> Reserved (read as 0, write with 0). | ||
| 55 | 5 -> Flag exception for input denormalized exception. | ||
| 56 | 4 -> Flag exception for inexact exception. | ||
| 57 | 3 -> Flag exception for underflow exception. | ||
| 58 | 2 -> Flag exception for overflow exception. | ||
| 59 | 1 -> Flag exception for division by zero exception. | ||
| 60 | 0 -> Flag exception for invalid operation exception. */ | ||
| 61 | |||
| 62 | #include <features.h> | ||
| 63 | |||
| 64 | #ifdef __csky_soft_float__ | ||
| 65 | |||
| 66 | # define _FPU_RESERVED 0xffffffff | ||
| 67 | # define _FPU_DEFAULT 0x00000000 | ||
| 68 | typedef unsigned int fpu_control_t; | ||
| 69 | # define _FPU_GETCW(cw) (cw) = 0 | ||
| 70 | # define _FPU_SETCW(cw) (void) (cw) | ||
| 71 | # define _FPU_GETFPSR(cw) (cw) = 0 | ||
| 72 | # define _FPU_SETFPSR(cw) (void) (cw) | ||
| 73 | extern fpu_control_t __fpu_control; | ||
| 74 | |||
| 75 | #else /* __csky_soft_float__ */ | ||
| 76 | |||
| 77 | /* Masking of interrupts. */ | ||
| 78 | # define _FPU_MASK_IDE (1 << 5) /* Input denormalized exception. */ | ||
| 79 | # define _FPU_MASK_IXE (1 << 4) /* Inexact exception. */ | ||
| 80 | # define _FPU_MASK_UFE (1 << 3) /* Underflow exception. */ | ||
| 81 | # define _FPU_MASK_OFE (1 << 2) /* Overflow exception. */ | ||
| 82 | # define _FPU_MASK_DZE (1 << 1) /* Division by zero exception. */ | ||
| 83 | # define _FPU_MASK_IOE (1 << 0) /* Invalid operation exception. */ | ||
| 84 | |||
| 85 | # define _FPU_MASK_FEA (1 << 15) /* Case for any exception. */ | ||
| 86 | # define _FPU_MASK_FEC (1 << 7) /* Flag for any exception. */ | ||
| 87 | |||
| 88 | /* Flush denormalized numbers to zero. */ | ||
| 89 | # define _FPU_FLUSH_TZ 0x8000000 | ||
| 90 | |||
| 91 | /* Rounding control. */ | ||
| 92 | # define _FPU_RC_NEAREST (0x0 << 24) /* RECOMMENDED. */ | ||
| 93 | # define _FPU_RC_ZERO (0x1 << 24) | ||
| 94 | # define _FPU_RC_UP (0x2 << 24) | ||
| 95 | # define _FPU_RC_DOWN (0x3 << 24) | ||
| 96 | |||
| 97 | # define _FPU_RESERVED 0xf460ffc0 /* Reserved bits in cw. */ | ||
| 98 | # define _FPU_FPSR_RESERVED 0xffff4040 | ||
| 99 | |||
| 100 | /* The fdlibm code requires strict IEEE double precision arithmetic, | ||
| 101 | and no interrupts for exceptions, rounding to nearest. */ | ||
| 102 | |||
| 103 | # define _FPU_DEFAULT 0x00000000 | ||
| 104 | # define _FPU_FPSR_DEFAULT 0x00000000 | ||
| 105 | |||
| 106 | /* IEEE: same as above, but exceptions. */ | ||
| 107 | # define _FPU_FPCR_IEEE 0x0000001F | ||
| 108 | # define _FPU_FPSR_IEEE 0x00000000 | ||
| 109 | |||
| 110 | /* Type of the control word. */ | ||
| 111 | typedef unsigned int fpu_control_t; | ||
| 112 | |||
| 113 | /* Macros for accessing the hardware control word. */ | ||
| 114 | # if (__CSKY__ == 2) | ||
| 115 | # define _FPU_GETCW(cw) __asm__ volatile ("mfcr %0, cr<1, 2>" : "=a" (cw)) | ||
| 116 | # define _FPU_SETCW(cw) __asm__ volatile ("mtcr %0, cr<1, 2>" : : "a" (cw)) | ||
| 117 | # define _FPU_GETFPSR(cw) __asm__ volatile ("mfcr %0, cr<2, 2>" : "=a" (cw)) | ||
| 118 | # define _FPU_SETFPSR(cw) __asm__ volatile ("mtcr %0, cr<2, 2>" : : "a" (cw)) | ||
| 119 | # else | ||
| 120 | # define _FPU_GETCW(cw) __asm__ volatile ("1: cprcr %0, cpcr2 \n" \ | ||
| 121 | " btsti %0, 31 \n" \ | ||
| 122 | " bt 1b \n" \ | ||
| 123 | " cprcr %0, cpcr1\n" : "=b" (cw)) | ||
| 124 | |||
| 125 | # define _FPU_SETCW(cw) __asm__ volatile ("1: cprcr r7, cpcr2 \n" \ | ||
| 126 | " btsti r7, 31 \n" \ | ||
| 127 | " bt 1b \n" \ | ||
| 128 | " cpwcr %0, cpcr1 \n" \ | ||
| 129 | : : "b" (cw) : "r7") | ||
| 130 | |||
| 131 | # define _FPU_GETFPSR(cw) __asm__ volatile ("1: cprcr %0, cpcr2 \n" \ | ||
| 132 | " btsti %0, 31 \n" \ | ||
| 133 | " bt 1b \n" \ | ||
| 134 | " cprcr %0, cpcr4\n" : "=b" (cw)) | ||
| 135 | |||
| 136 | # define _FPU_SETFPSR(cw) __asm__ volatile ("1: cprcr r7, cpcr2 \n" \ | ||
| 137 | " btsti r7, 31 \n" \ | ||
| 138 | " bt 1b \n" \ | ||
| 139 | " cpwcr %0, cpcr4 \n" \ | ||
| 140 | : : "b" (cw) : "r7") | ||
| 141 | # endif /* __CSKY__ != 2 */ | ||
| 142 | |||
| 143 | /* Default control word set at startup. */ | ||
| 144 | extern fpu_control_t __fpu_control; | ||
| 145 | |||
| 146 | #endif /* !__csky_soft_float__ */ | ||
| 147 | |||
| 148 | #endif /* fpu_control.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnu/gnu/lib-names.h created+36| ... | @@ -0,0 +1,36 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | It defines macros to allow user program to find the shared | ||
| 3 | library files which come as part of GNU libc. */ | ||
| 4 | #ifndef __GNU_LIB_NAMES_H | ||
| 5 | #define __GNU_LIB_NAMES_H	1 | ||
| 6 | |||
| 7 | // zig patch: handle both float abis in the same header | ||
| 8 | #ifdef __CSKY_HARD_FLOAT_ABI__ | ||
| 9 | #define LD_LINUX_CSKYV2_HF_SO "ld-linux-cskyv2-hf.so.1" | ||
| 10 | #define LD_SO "ld-linux-cskyv2-hf.so.1" | ||
| 11 | #else | ||
| 12 | #define LD_LINUX_CSKYV2_SO "ld-linux-cskyv2.so.1" | ||
| 13 | #define LD_SO "ld-linux-cskyv2.so.1" | ||
| 14 | #endif | ||
| 15 | #define LIBANL_SO "libanl.so.1" | ||
| 16 | #define LIBBROKENLOCALE_SO "libBrokenLocale.so.1" | ||
| 17 | #define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0" | ||
| 18 | #define LIBC_SO "libc.so.6" | ||
| 19 | #define LIBDL_SO "libdl.so.2" | ||
| 20 | #define LIBGCC_S_SO "libgcc_s.so.1" | ||
| 21 | #define LIBMVEC_SO "libmvec.so.1" | ||
| 22 | #define LIBM_SO "libm.so.6" | ||
| 23 | #define LIBNSL_SO "libnsl.so.1" | ||
| 24 | #define LIBNSS_COMPAT_SO "libnss_compat.so.2" | ||
| 25 | #define LIBNSS_DB_SO "libnss_db.so.2" | ||
| 26 | #define LIBNSS_DNS_SO "libnss_dns.so.2" | ||
| 27 | #define LIBNSS_FILES_SO "libnss_files.so.2" | ||
| 28 | #define LIBNSS_HESIOD_SO "libnss_hesiod.so.2" | ||
| 29 | #define LIBNSS_LDAP_SO "libnss_ldap.so.2" | ||
| 30 | #define LIBPTHREAD_SO "libpthread.so.0" | ||
| 31 | #define LIBRESOLV_SO "libresolv.so.2" | ||
| 32 | #define LIBRT_SO "librt.so.1" | ||
| 33 | #define LIBTHREAD_DB_SO "libthread_db.so.1" | ||
| 34 | #define LIBUTIL_SO "libutil.so.1" | ||
| 35 | |||
| 36 | #endif	/* gnu/lib-names.h */ | ||
lib/libc/include/csky-linux-gnu/gnu/stubs.h created+43| ... | @@ -0,0 +1,43 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | It defines a symbol `__stub_FUNCTION' for each function | ||
| 3 | in the C library which is a stub, meaning it will fail | ||
| 4 | every time called, usually setting errno to ENOSYS. */ | ||
| 5 | |||
| 6 | #ifdef _LIBC | ||
| 7 | #error Applications may not define the macro _LIBC | ||
| 8 | #endif | ||
| 9 | |||
| 10 | #define __stub___compat_bdflush | ||
| 11 | #define __stub___compat_create_module | ||
| 12 | #define __stub___compat_get_kernel_syms | ||
| 13 | #define __stub___compat_query_module | ||
| 14 | #define __stub___compat_uselib | ||
| 15 | #define __stub_chflags | ||
| 16 | #define __stub_fchflags | ||
| 17 | |||
| 18 | // zig patch: handle both float abis in the same header | ||
| 19 | #ifndef __CSKY_HARD_FLOAT_ABI__ | ||
| 20 | #define __stub_feclearexcept | ||
| 21 | #define __stub_fedisableexcept | ||
| 22 | #define __stub_feenableexcept | ||
| 23 | #define __stub_fegetenv | ||
| 24 | #define __stub_fegetexcept | ||
| 25 | #define __stub_fegetexceptflag | ||
| 26 | #define __stub_fegetmode | ||
| 27 | #define __stub_fegetround | ||
| 28 | #define __stub_feholdexcept | ||
| 29 | #define __stub_feraiseexcept | ||
| 30 | #define __stub_fesetenv | ||
| 31 | #define __stub_fesetexcept | ||
| 32 | #define __stub_fesetexceptflag | ||
| 33 | #define __stub_fesetmode | ||
| 34 | #define __stub_fesetround | ||
| 35 | #define __stub_fetestexcept | ||
| 36 | #define __stub_feupdateenv | ||
| 37 | #endif | ||
| 38 | |||
| 39 | #define __stub_gtty | ||
| 40 | #define __stub_revoke | ||
| 41 | #define __stub_setlogin | ||
| 42 | #define __stub_sigreturn | ||
| 43 | #define __stub_stty | ||
lib/libc/include/csky-linux-gnu/sys/cachectl.h created+36| ... | @@ -0,0 +1,36 @@ | ||
| 1 | /* C-SKY cache flushing interface. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_CACHECTL_H | ||
| 20 | #define _SYS_CACHECTL_H 1 | ||
| 21 | |||
| 22 | #include <features.h> | ||
| 23 | |||
| 24 | /* Get the kernel definition for the op bits. */ | ||
| 25 | #include <asm/cachectl.h> | ||
| 26 | |||
| 27 | __BEGIN_DECLS | ||
| 28 | |||
| 29 | #ifdef __USE_MISC | ||
| 30 | extern int cacheflush (void *__addr, const int __nbytes, | ||
| 31 | 		 const int __op) __THROW; | ||
| 32 | #endif | ||
| 33 | |||
| 34 | __END_DECLS | ||
| 35 | |||
| 36 | #endif /* sys/cachectl.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnu/sys/ucontext.h created+89| ... | @@ -0,0 +1,89 @@ | ||
| 1 | /* struct ucontext definition, C-SKY version. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_UCONTEXT_H | ||
| 20 | #define _SYS_UCONTEXT_H	1 | ||
| 21 | |||
| 22 | #include <features.h> | ||
| 23 | |||
| 24 | #include <bits/types/sigset_t.h> | ||
| 25 | #include <bits/types/stack_t.h> | ||
| 26 | |||
| 27 | typedef struct | ||
| 28 | { | ||
| 29 | unsigned long __tls; | ||
| 30 | unsigned long __lr; | ||
| 31 | unsigned long __pc; | ||
| 32 | unsigned long __sr; | ||
| 33 | unsigned long __usp; | ||
| 34 | |||
| 35 | /* | ||
| 36 | * a0, a1, a2, a3: | ||
| 37 | * abiv1: r2, r3, r4, r5 | ||
| 38 | * abiv2: r0, r1, r2, r3 | ||
| 39 | */ | ||
| 40 | |||
| 41 | unsigned long __orig_a0; | ||
| 42 | unsigned long __a0; | ||
| 43 | unsigned long __a1; | ||
| 44 | unsigned long __a2; | ||
| 45 | unsigned long __a3; | ||
| 46 | |||
| 47 | /* | ||
| 48 | * ABIV2: r4 ~ r13 | ||
| 49 | */ | ||
| 50 | unsigned long __regs[10]; | ||
| 51 | |||
| 52 | /* r16 ~ r30 */ | ||
| 53 | unsigned long __exregs[15]; | ||
| 54 | |||
| 55 | unsigned long __rhi; | ||
| 56 | unsigned long __rlo; | ||
| 57 | unsigned long __glibc_reserved; | ||
| 58 | } gregset_t; | ||
| 59 | |||
| 60 | typedef struct | ||
| 61 | { | ||
| 62 | unsigned long __vr[64]; | ||
| 63 | unsigned long __fcr; | ||
| 64 | unsigned long __fesr; | ||
| 65 | unsigned long __fid; | ||
| 66 | unsigned long __glibc_reserved; | ||
| 67 | } fpregset_t; | ||
| 68 | |||
| 69 | /* Context to describe whole processor state. */ | ||
| 70 | typedef struct | ||
| 71 | { | ||
| 72 | gregset_t __gregs; | ||
| 73 | fpregset_t __fpregs; | ||
| 74 | } mcontext_t; | ||
| 75 | |||
| 76 | /* Userlevel context. */ | ||
| 77 | typedef struct ucontext_t | ||
| 78 | { | ||
| 79 | unsigned long int __uc_flags; | ||
| 80 | struct ucontext_t *uc_link; | ||
| 81 | stack_t uc_stack; | ||
| 82 | mcontext_t uc_mcontext; | ||
| 83 | sigset_t uc_sigmask; | ||
| 84 | } ucontext_t; | ||
| 85 | |||
| 86 | #undef __ctx | ||
| 87 | |||
| 88 | |||
| 89 | #endif /* sys/ucontext.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnu/sys/user.h created+23| ... | @@ -0,0 +1,23 @@ | ||
| 1 | /* This file is not used by C-SKY GDB. ptrace can use pt_regs definition | ||
| 2 | from linux kernel directly. | ||
| 3 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library. If not, see | ||
| 18 | <https://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifndef _SYS_USER_H | ||
| 21 | #define _SYS_USER_H 1 | ||
| 22 | |||
| 23 | #endif /* _SYS_USER_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnueabi/bits/endianness.h deleted-14| ... | @@ -1,14 +0,0 @@ | ||
| 1 | #ifndef _BITS_ENDIANNESS_H | ||
| 2 | #define _BITS_ENDIANNESS_H 1 | ||
| 3 | |||
| 4 | #ifndef _BITS_ENDIAN_H | ||
| 5 | # error "Never use <bits/endianness.h> directly; include <endian.h> instead." | ||
| 6 | #endif | ||
| 7 | |||
| 8 | #ifdef __CSKYBE__ | ||
| 9 | # error "Big endian not supported for C-SKY." | ||
| 10 | #else | ||
| 11 | # define __BYTE_ORDER __LITTLE_ENDIAN | ||
| 12 | #endif | ||
| 13 | |||
| 14 | #endif /* bits/endianness.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnueabi/bits/fcntl.h deleted-55| ... | @@ -1,55 +0,0 @@ | ||
| 1 | /* O_*, F_*, FD_* bit values for the generic Linux ABI. | ||
| 2 | Copyright (C) 2011-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef	_FCNTL_H | ||
| 20 | # error "Never use <bits/fcntl.h> directly; include <fcntl.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <bits/wordsize.h> | ||
| 24 | |||
| 25 | #if __WORDSIZE == 64 | ||
| 26 | # define __O_LARGEFILE	0 | ||
| 27 | #endif | ||
| 28 | |||
| 29 | struct flock | ||
| 30 | { | ||
| 31 | short int l_type;	/* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK.	*/ | ||
| 32 | short int l_whence;	/* Where `l_start' is relative to (like `lseek'). */ | ||
| 33 | #ifndef __USE_FILE_OFFSET64 | ||
| 34 | __off_t l_start;	/* Offset where the lock begins. */ | ||
| 35 | __off_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 36 | #else | ||
| 37 | __off64_t l_start;	/* Offset where the lock begins. */ | ||
| 38 | __off64_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 39 | #endif | ||
| 40 | __pid_t l_pid;	/* Process holding the lock. */ | ||
| 41 | }; | ||
| 42 | |||
| 43 | #ifdef __USE_LARGEFILE64 | ||
| 44 | struct flock64 | ||
| 45 | { | ||
| 46 | short int l_type;	/* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK.	*/ | ||
| 47 | short int l_whence;	/* Where `l_start' is relative to (like `lseek'). */ | ||
| 48 | __off64_t l_start;	/* Offset where the lock begins. */ | ||
| 49 | __off64_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 50 | __pid_t l_pid;	/* Process holding the lock. */ | ||
| 51 | }; | ||
| 52 | #endif | ||
| 53 | |||
| 54 | /* Include generic Linux declarations. */ | ||
| 55 | #include <bits/fcntl-linux.h> | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnueabi/bits/fenv.h deleted-111| ... | @@ -1,111 +0,0 @@ | ||
| 1 | /* Floating point environment. C-SKY version. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _FENV_H | ||
| 20 | # error "Never use <bits/fenv.h> directly; include <fenv.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifdef __csky_hard_float__ | ||
| 24 | /* Define bits representing the exception. We use the bit positions | ||
| 25 | of the appropriate bits in the FPU control word. */ | ||
| 26 | enum | ||
| 27 | { | ||
| 28 | FE_INVALID = | ||
| 29 | #define FE_INVALID	0x01 | ||
| 30 | FE_INVALID, | ||
| 31 | FE_DIVBYZERO = | ||
| 32 | #define FE_DIVBYZERO	0x02 | ||
| 33 | FE_DIVBYZERO, | ||
| 34 | FE_OVERFLOW = | ||
| 35 | #define FE_OVERFLOW	0x04 | ||
| 36 | FE_OVERFLOW, | ||
| 37 | FE_UNDERFLOW = | ||
| 38 | #define FE_UNDERFLOW	0x08 | ||
| 39 | FE_UNDERFLOW, | ||
| 40 | FE_INEXACT = | ||
| 41 | #define FE_INEXACT	0x10 | ||
| 42 | FE_INEXACT, | ||
| 43 | __FE_DENORMAL = 0x20 | ||
| 44 | }; | ||
| 45 | |||
| 46 | #define FE_ALL_EXCEPT \ | ||
| 47 | 	(FE_INEXACT | FE_DIVBYZERO | FE_UNDERFLOW | FE_OVERFLOW | FE_INVALID) | ||
| 48 | |||
| 49 | /* The C-SKY FPU supports all of the four defined rounding modes. We | ||
| 50 | use again the bit positions in the FPU control word as the values | ||
| 51 | for the appropriate macros. */ | ||
| 52 | enum | ||
| 53 | { | ||
| 54 | FE_TONEAREST = | ||
| 55 | #define FE_TONEAREST	(0x0 << 24) | ||
| 56 | FE_TONEAREST, | ||
| 57 | FE_TOWARDZERO = | ||
| 58 | #define FE_TOWARDZERO	(0x1 << 24) | ||
| 59 | FE_TOWARDZERO, | ||
| 60 | FE_UPWARD = | ||
| 61 | #define FE_UPWARD	(0x2 << 24) | ||
| 62 | FE_UPWARD, | ||
| 63 | FE_DOWNWARD = | ||
| 64 | #define FE_DOWNWARD	(0x3 << 24) | ||
| 65 | FE_DOWNWARD, | ||
| 66 | __FE_ROUND_MASK = (0x3 << 24) | ||
| 67 | }; | ||
| 68 | |||
| 69 | #else | ||
| 70 | |||
| 71 | /* In the soft-float case, only rounding to nearest is supported, with | ||
| 72 | no exceptions. */ | ||
| 73 | |||
| 74 | enum | ||
| 75 | { | ||
| 76 | __FE_UNDEFINED = -1, | ||
| 77 | |||
| 78 | FE_TONEAREST = | ||
| 79 | # define FE_TONEAREST	0x0 | ||
| 80 | FE_TONEAREST | ||
| 81 | }; | ||
| 82 | |||
| 83 | # define FE_ALL_EXCEPT 0 | ||
| 84 | |||
| 85 | #endif | ||
| 86 | |||
| 87 | /* Type representing exception flags. */ | ||
| 88 | typedef unsigned int fexcept_t; | ||
| 89 | |||
| 90 | /* Type representing floating-point environment. */ | ||
| 91 | typedef struct | ||
| 92 | { | ||
| 93 | unsigned int __fpcr; | ||
| 94 | unsigned int __fpsr; | ||
| 95 | } fenv_t; | ||
| 96 | |||
| 97 | /* If the default argument is used we use this value. */ | ||
| 98 | #define FE_DFL_ENV	((const fenv_t *) -1) | ||
| 99 | |||
| 100 | #if defined __USE_GNU && defined __csky_hard_float__ | ||
| 101 | /* Floating-point environment where none of the exceptions are masked. */ | ||
| 102 | # define FE_NOMASK_ENV	((const fenv_t *) -2) | ||
| 103 | #endif | ||
| 104 | |||
| 105 | #if __GLIBC_USE (IEC_60559_BFP_EXT_C23) | ||
| 106 | /* Type representing floating-point control modes. */ | ||
| 107 | typedef unsigned int femode_t; | ||
| 108 | |||
| 109 | /* Default floating-point control modes. */ | ||
| 110 | # define FE_DFL_MODE	((const femode_t *) -1L) | ||
| 111 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnueabi/bits/floatn.h deleted-52| ... | @@ -1,52 +0,0 @@ | ||
| 1 | /* Macros to control TS 18661-3 glibc features. | ||
| 2 | Copyright (C) 2017-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* Defined to 1 if the current compiler invocation provides a | ||
| 20 | floating-point type with the IEEE 754 binary128 format, and this glibc | ||
| 21 | includes corresponding *f128 interfaces for it. */ | ||
| 22 | #define __HAVE_FLOAT128 0 | ||
| 23 | |||
| 24 | /* Defined to 1 if __HAVE_FLOAT128 is 1 and the type is ABI-distinct | ||
| 25 | from the default float, double and long double types in this glibc. */ | ||
| 26 | #define __HAVE_DISTINCT_FLOAT128 0 | ||
| 27 | |||
| 28 | /* Defined to 1 if the current compiler invocation provides a | ||
| 29 | floating-point type with the right format for _Float64x, and this | ||
| 30 | glibc includes corresponding *f64x interfaces for it. */ | ||
| 31 | #define __HAVE_FLOAT64X 0 | ||
| 32 | |||
| 33 | /* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format | ||
| 34 | of long double. Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has | ||
| 35 | the format of _Float128, which must be different from that of long | ||
| 36 | double. */ | ||
| 37 | #define __HAVE_FLOAT64X_LONG_DOUBLE 0 | ||
| 38 | |||
| 39 | #ifndef __ASSEMBLER__ | ||
| 40 | |||
| 41 | /* Defined to concatenate the literal suffix to be used with _Float128 | ||
| 42 | types, if __HAVE_FLOAT128 is 1. | ||
| 43 | E.g.: #define __f128(x) x##f128. */ | ||
| 44 | # undef __f128 | ||
| 45 | |||
| 46 | /* Defined to a complex binary128 type if __HAVE_FLOAT128 is 1. | ||
| 47 | E.g.: #define __CFLOAT128 _Complex _Float128. */ | ||
| 48 | # undef __CFLOAT128 | ||
| 49 | |||
| 50 | #endif /* !__ASSEMBLER__. */ | ||
| 51 | |||
| 52 | #include <bits/floatn-common.h> | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnueabi/bits/link.h deleted-55| ... | @@ -1,55 +0,0 @@ | ||
| 1 | /* Machine-specific declarations for dynamic linker interface. C-SKY version. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _LINK_H | ||
| 20 | # error "Never include <bits/link.h> directly; use <link.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Registers for entry into PLT on C-SKY. */ | ||
| 24 | typedef struct La_csky_regs | ||
| 25 | { | ||
| 26 | uint32_t lr_reg[4]; | ||
| 27 | uint32_t lr_sp; | ||
| 28 | uint32_t lr_lr; | ||
| 29 | } La_csky_regs; | ||
| 30 | |||
| 31 | /* Return values for calls from PLT on C-SKY. */ | ||
| 32 | typedef struct La_csky_retval | ||
| 33 | { | ||
| 34 | /* Up to four integer registers can be used for a return value. */ | ||
| 35 | uint32_t lrv_reg[4]; | ||
| 36 | uint32_t lrv_v0; | ||
| 37 | } La_csky_retval; | ||
| 38 | |||
| 39 | __BEGIN_DECLS | ||
| 40 | |||
| 41 | extern Elf32_Addr la_csky_gnu_pltenter (Elf32_Sym *__sym, unsigned int __ndx, | ||
| 42 | 					uintptr_t *__refcook, | ||
| 43 | 					uintptr_t *__defcook, | ||
| 44 | 					La_csky_regs *__regs, | ||
| 45 | 					unsigned int *__flags, | ||
| 46 | 					const char *__symname, | ||
| 47 | 					long int *__framesizep); | ||
| 48 | extern unsigned int la_csky_gnu_pltexit (Elf32_Sym *__sym, unsigned int __ndx, | ||
| 49 | 					 uintptr_t *__refcook, | ||
| 50 | 					 uintptr_t *__defcook, | ||
| 51 | 					 const La_csky_regs *__inregs, | ||
| 52 | 					 La_csky_retval *__outregs, | ||
| 53 | 					 const char *__symname); | ||
| 54 | |||
| 55 | __END_DECLS | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnueabi/bits/long-double.h deleted-53| ... | @@ -1,53 +0,0 @@ | ||
| 1 | /* Properties of long double type. | ||
| 2 | Copyright (C) 2016-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* This header is included by <sys/cdefs.h>. | ||
| 20 | |||
| 21 | If long double is ABI-compatible with double, it should define | ||
| 22 | __NO_LONG_DOUBLE_MATH to 1; otherwise, it should leave | ||
| 23 | __NO_LONG_DOUBLE_MATH undefined. | ||
| 24 | |||
| 25 | If this build of the GNU C Library supports both long double | ||
| 26 | ABI-compatible with double and some other long double format not | ||
| 27 | ABI-compatible with double, it should define | ||
| 28 | __LONG_DOUBLE_MATH_OPTIONAL to 1; otherwise, it should leave | ||
| 29 | __LONG_DOUBLE_MATH_OPTIONAL undefined. | ||
| 30 | |||
| 31 | If __NO_LONG_DOUBLE_MATH is already defined, this header must not | ||
| 32 | define anything; this is needed to work with the definition of | ||
| 33 | __NO_LONG_DOUBLE_MATH in nldbl-compat.h. */ | ||
| 34 | |||
| 35 | /* In the default version of this header, long double is | ||
| 36 | ABI-compatible with double. */ | ||
| 37 | #ifndef __NO_LONG_DOUBLE_MATH | ||
| 38 | # define __NO_LONG_DOUBLE_MATH	1 | ||
| 39 | #endif | ||
| 40 | |||
| 41 | /* The macro __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI is used to determine the | ||
| 42 | choice of the underlying ABI of long double. It will always assume | ||
| 43 | a constant value for each translation unit. | ||
| 44 | |||
| 45 | If the value is non-zero, any API which is parameterized by the long | ||
| 46 | double type (i.e the scanf/printf family of functions or the explicitly | ||
| 47 | parameterized math.h functions) will be redirected to a compatible | ||
| 48 | implementation using _Float128 ABI via symbols suffixed with ieee128. | ||
| 49 | |||
| 50 | The mechanism this macro uses to acquire may be a function | ||
| 51 | of architecture, or target specific options used to invoke the | ||
| 52 | compiler. */ | ||
| 53 | #define __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI 0 | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnueabi/bits/procfs.h deleted-37| ... | @@ -1,37 +0,0 @@ | ||
| 1 | /* Types for registers for sys/procfs.h. C-SKY version. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_PROCFS_H | ||
| 20 | # error "Never include <bits/procfs.h> directly; use <sys/procfs.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <asm/ptrace.h> | ||
| 24 | |||
| 25 | /* Type for a general-purpose register. */ | ||
| 26 | typedef unsigned long elf_greg_t; | ||
| 27 | /* Type for a floating-point registers. */ | ||
| 28 | typedef unsigned long elf_fpreg_t; | ||
| 29 | |||
| 30 | /* In gdb/bfd elf32-csky.c, csky_elf_grok_prstatus() use fixed size of | ||
| 31 | elf_prstatus. It's 148 for abiv1 and 220 for abiv2, the size is enough | ||
| 32 | for coredump and no need full sizeof (struct pt_regs). */ | ||
| 33 | #define ELF_NGREG ((sizeof (struct pt_regs) / sizeof (elf_greg_t)) - 2) | ||
| 34 | typedef elf_greg_t elf_gregset_t[ELF_NGREG]; | ||
| 35 | |||
| 36 | #define ELF_NFPREG (sizeof (struct user_fp) / sizeof (elf_fpreg_t)) | ||
| 37 | typedef elf_fpreg_t elf_fpregset_t[ELF_NFPREG]; | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnueabi/bits/rseq.h deleted-29| ... | @@ -1,29 +0,0 @@ | ||
| 1 | /* Restartable Sequences architecture header. Stub version. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_RSEQ_H | ||
| 19 | # error "Never use <bits/rseq.h> directly; include <sys/rseq.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* RSEQ_SIG is a signature required before each abort handler code. | ||
| 23 | |||
| 24 | It is a 32-bit value that maps to actual architecture code compiled | ||
| 25 | into applications and libraries. It needs to be defined for each | ||
| 26 | architecture. When choosing this value, it needs to be taken into | ||
| 27 | account that generating invalid instructions may have ill effects on | ||
| 28 | tools like objdump, and may also have impact on the CPU speculative | ||
| 29 | execution efficiency in some cases. */ | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnueabi/bits/setjmp.h deleted-34| ... | @@ -1,34 +0,0 @@ | ||
| 1 | /* Define the machine-dependent type `jmp_buf'. C-SKY version. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _CSKY_BITS_SETJMP_H | ||
| 20 | #define _CSKY_BITS_SETJMP_H 1 | ||
| 21 | |||
| 22 | typedef struct __jmp_buf_str | ||
| 23 | { | ||
| 24 | /* Stack pointer. */ | ||
| 25 | int __sp; | ||
| 26 | int __lr; | ||
| 27 | /* The actual core defines which registers should be saved. The | ||
| 28 | buffer contains 32 words, keep space for future growth. | ||
| 29 | Callee-saved registers: | ||
| 30 | r4 ~ r11, r16 ~ r17, r26 ~r31 for abiv2; r8 ~ r14 for abiv1. */ | ||
| 31 | int __regs[32]; | ||
| 32 | } __jmp_buf[1]; | ||
| 33 | |||
| 34 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnueabi/bits/shmlba.h deleted-29| ... | @@ -1,29 +0,0 @@ | ||
| 1 | /* Define SHMLBA. C-SKY version. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SHM_H | ||
| 20 | # error "Never use <bits/shmlba.h> directly; include <sys/shm.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | __BEGIN_DECLS | ||
| 24 | |||
| 25 | /* Segment low boundary address multiple. */ | ||
| 26 | #define SHMLBA		(__getpagesize () << 2) | ||
| 27 | extern int __getpagesize (void) __THROW __attribute__ ((__const__)); | ||
| 28 | |||
| 29 | __END_DECLS | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnueabi/bits/statfs.h deleted-75| ... | @@ -1,75 +0,0 @@ | ||
| 1 | /* Copyright (C) 2011-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_STATFS_H | ||
| 19 | # error "Never include <bits/statfs.h> directly; use <sys/statfs.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | #include <bits/endian.h> | ||
| 23 | #include <bits/types.h> | ||
| 24 | #include <bits/wordsize.h> | ||
| 25 | |||
| 26 | #if defined __USE_FILE_OFFSET64 | ||
| 27 | # define __field64(type, type64, name) type64 name | ||
| 28 | #elif __BYTE_ORDER == __LITTLE_ENDIAN | ||
| 29 | # define __field64(type, type64, name) \ | ||
| 30 | type name __attribute__((__aligned__ (__alignof__ (type64)))); int __##name##_pad | ||
| 31 | #else | ||
| 32 | # define __field64(type, type64, name) \ | ||
| 33 | int __##name##_pad __attribute__((__aligned__ (__alignof__ (type64)))); type name | ||
| 34 | #endif | ||
| 35 | |||
| 36 | struct statfs | ||
| 37 | { | ||
| 38 | __SWORD_TYPE f_type; | ||
| 39 | __SWORD_TYPE f_bsize; | ||
| 40 | __field64(__fsblkcnt_t, __fsblkcnt64_t, f_blocks); | ||
| 41 | __field64(__fsblkcnt_t, __fsblkcnt64_t, f_bfree); | ||
| 42 | __field64(__fsblkcnt_t, __fsblkcnt64_t, f_bavail); | ||
| 43 | __field64(__fsfilcnt_t, __fsfilcnt64_t, f_files); | ||
| 44 | __field64(__fsfilcnt_t, __fsfilcnt64_t, f_ffree); | ||
| 45 | __fsid_t f_fsid; | ||
| 46 | __SWORD_TYPE f_namelen; | ||
| 47 | __SWORD_TYPE f_frsize; | ||
| 48 | __SWORD_TYPE f_flags; | ||
| 49 | __SWORD_TYPE f_spare[4]; | ||
| 50 | }; | ||
| 51 | |||
| 52 | #undef __field64 | ||
| 53 | |||
| 54 | #ifdef __USE_LARGEFILE64 | ||
| 55 | struct statfs64 | ||
| 56 | { | ||
| 57 | __SWORD_TYPE f_type; | ||
| 58 | __SWORD_TYPE f_bsize; | ||
| 59 | __fsblkcnt64_t f_blocks; | ||
| 60 | __fsblkcnt64_t f_bfree; | ||
| 61 | __fsblkcnt64_t f_bavail; | ||
| 62 | __fsfilcnt64_t f_files; | ||
| 63 | __fsfilcnt64_t f_ffree; | ||
| 64 | __fsid_t f_fsid; | ||
| 65 | __SWORD_TYPE f_namelen; | ||
| 66 | __SWORD_TYPE f_frsize; | ||
| 67 | __SWORD_TYPE f_flags; | ||
| 68 | __SWORD_TYPE f_spare[4]; | ||
| 69 | }; | ||
| 70 | #endif | ||
| 71 | |||
| 72 | /* Tell code we have these members. */ | ||
| 73 | #define _STATFS_F_NAMELEN | ||
| 74 | #define _STATFS_F_FRSIZE | ||
| 75 | #define _STATFS_F_FLAGS | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnueabi/bits/struct_stat.h deleted-135| ... | @@ -1,135 +0,0 @@ | ||
| 1 | /* Definition for struct stat. Linux/csky version. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #if !defined _SYS_STAT_H && !defined _FCNTL_H | ||
| 20 | # error "Never include <bits/struct_stat.h> directly; use <sys/stat.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef _BITS_STRUCT_STAT_H | ||
| 24 | #define _BITS_STRUCT_STAT_H	1 | ||
| 25 | |||
| 26 | #include <bits/endian.h> | ||
| 27 | #include <bits/wordsize.h> | ||
| 28 | |||
| 29 | #if defined __USE_FILE_OFFSET64 | ||
| 30 | # define __field64(type, type64, name) type64 name | ||
| 31 | #elif __WORDSIZE == 64 || defined __INO_T_MATCHES_INO64_T | ||
| 32 | # if defined __INO_T_MATCHES_INO64_T && !defined __OFF_T_MATCHES_OFF64_T | ||
| 33 | # error "ino_t and off_t must both be the same type" | ||
| 34 | # endif | ||
| 35 | # define __field64(type, type64, name) type name | ||
| 36 | #elif __BYTE_ORDER == __LITTLE_ENDIAN | ||
| 37 | # define __field64(type, type64, name) \ | ||
| 38 | type name __attribute__((__aligned__ (__alignof__ (type64)))); int __##name##_pad | ||
| 39 | #else | ||
| 40 | # define __field64(type, type64, name) \ | ||
| 41 | int __##name##_pad __attribute__((__aligned__ (__alignof__ (type64)))); type name | ||
| 42 | #endif | ||
| 43 | |||
| 44 | struct stat | ||
| 45 | { | ||
| 46 | #ifdef __USE_TIME64_REDIRECTS | ||
| 47 | # include <bits/struct_stat_time64_helper.h> | ||
| 48 | #else | ||
| 49 | __dev_t st_dev;		/* Device. */ | ||
| 50 | __field64(__ino_t, __ino64_t, st_ino); /* File serial number. */ | ||
| 51 | __mode_t st_mode;		/* File mode. */ | ||
| 52 | __nlink_t st_nlink;		/* Link count. */ | ||
| 53 | __uid_t st_uid;		/* User ID of the file's owner.	*/ | ||
| 54 | __gid_t st_gid;		/* Group ID of the file's group.*/ | ||
| 55 | __dev_t st_rdev;		/* Device number, if device. */ | ||
| 56 | __dev_t __pad1; | ||
| 57 | __field64(__off_t, __off64_t, st_size); /* Size of file, in bytes. */ | ||
| 58 | __blksize_t st_blksize;	/* Optimal block size for I/O. */ | ||
| 59 | int __pad2; | ||
| 60 | __field64(__blkcnt_t, __blkcnt64_t, st_blocks); /* 512-byte blocks */ | ||
| 61 | # ifdef __USE_XOPEN2K8 | ||
| 62 | /* Nanosecond resolution timestamps are stored in a format | ||
| 63 | equivalent to 'struct timespec'. This is the type used | ||
| 64 | whenever possible but the Unix namespace rules do not allow the | ||
| 65 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 66 | Therefore we have to handle the use of this header in strictly | ||
| 67 | standard-compliant sources special. */ | ||
| 68 | struct timespec st_atim;		/* Time of last access. */ | ||
| 69 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 70 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 71 | # define st_atime st_atim.tv_sec	/* Backward compatibility. */ | ||
| 72 | # define st_mtime st_mtim.tv_sec | ||
| 73 | # define st_ctime st_ctim.tv_sec | ||
| 74 | # else | ||
| 75 | __time_t st_atime;			/* Time of last access. */ | ||
| 76 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 77 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 78 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 79 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 80 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 81 | # endif | ||
| 82 | int __glibc_reserved[2]; | ||
| 83 | #endif | ||
| 84 | }; | ||
| 85 | |||
| 86 | #undef __field64 | ||
| 87 | |||
| 88 | #ifdef __USE_LARGEFILE64 | ||
| 89 | struct stat64 | ||
| 90 | { | ||
| 91 | # ifdef __USE_TIME64_REDIRECTS | ||
| 92 | # include <bits/struct_stat_time64_helper.h> | ||
| 93 | # else | ||
| 94 | __dev_t st_dev;		/* Device. */ | ||
| 95 | __ino64_t st_ino;		/* File serial number.	*/ | ||
| 96 | __mode_t st_mode;		/* File mode. */ | ||
| 97 | __nlink_t st_nlink;		/* Link count. */ | ||
| 98 | __uid_t st_uid;		/* User ID of the file's owner.	*/ | ||
| 99 | __gid_t st_gid;		/* Group ID of the file's group.*/ | ||
| 100 | __dev_t st_rdev;		/* Device number, if device. */ | ||
| 101 | __dev_t __pad1; | ||
| 102 | __off64_t st_size;		/* Size of file, in bytes. */ | ||
| 103 | __blksize_t st_blksize;	/* Optimal block size for I/O. */ | ||
| 104 | int __pad2; | ||
| 105 | __blkcnt64_t st_blocks;	/* Nr. 512-byte blocks allocated. */ | ||
| 106 | # ifdef __USE_XOPEN2K8 | ||
| 107 | /* Nanosecond resolution timestamps are stored in a format | ||
| 108 | equivalent to 'struct timespec'. This is the type used | ||
| 109 | whenever possible but the Unix namespace rules do not allow the | ||
| 110 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 111 | Therefore we have to handle the use of this header in strictly | ||
| 112 | standard-compliant sources special. */ | ||
| 113 | struct timespec st_atim;		/* Time of last access. */ | ||
| 114 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 115 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 116 | # else | ||
| 117 | __time_t st_atime;			/* Time of last access. */ | ||
| 118 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 119 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 120 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 121 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 122 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 123 | # endif | ||
| 124 | int __glibc_reserved[2]; | ||
| 125 | # endif | ||
| 126 | }; | ||
| 127 | #endif | ||
| 128 | |||
| 129 | /* Tell code we have these members. */ | ||
| 130 | #define	_STATBUF_ST_BLKSIZE | ||
| 131 | #define _STATBUF_ST_RDEV | ||
| 132 | /* Nanosecond resolution time values are supported. */ | ||
| 133 | #define _STATBUF_ST_NSEC | ||
| 134 | |||
| 135 | #endif /* _BITS_STRUCT_STAT_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnueabi/bits/timesize.h deleted-20| ... | @@ -1,20 +0,0 @@ | ||
| 1 | /* Bit size of the time_t type at glibc build time, Linux/csky. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* Size in bits of the 'time_t' type of the default ABI. */ | ||
| 20 | #define __TIMESIZE	32 | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnueabi/bits/wordsize.h deleted-21| ... | @@ -1,21 +0,0 @@ | ||
| 1 | /* Copyright (C) 1999-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #define __WORDSIZE			32 | ||
| 19 | #define __WORDSIZE_TIME64_COMPAT32	1 | ||
| 20 | #define __WORDSIZE32_SIZE_ULONG		0 | ||
| 21 | #define __WORDSIZE32_PTRDIFF_LONG	0 | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnueabi/fpu_control.h deleted-148| ... | @@ -1,148 +0,0 @@ | ||
| 1 | /* FPU control word bits. C-SKY version. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _FPU_CONTROL_H | ||
| 20 | #define _FPU_CONTROL_H | ||
| 21 | |||
| 22 | /* C-SKY FPU floating point control register bits. | ||
| 23 | |||
| 24 | 31-28 -> Reserved (read as 0, write with 0). | ||
| 25 | 27 -> 0: Flush denormalized results to zero. | ||
| 26 | 1: Flush denormalized results to signed minimal normal number. | ||
| 27 | 26 -> Reserved (read as 0, write with 0). | ||
| 28 | 25-24 -> Rounding control. | ||
| 29 | 23-6 -> Reserved (read as 0, write with 0). | ||
| 30 | 5 -> Enable exception for input denormalized exception. | ||
| 31 | 4 -> Enable exception for inexact exception. | ||
| 32 | 3 -> Enable exception for underflow exception. | ||
| 33 | 2 -> Enable exception for overflow exception. | ||
| 34 | 1 -> Enable exception for division by zero exception. | ||
| 35 | 0 -> Enable exception for invalid operation exception. | ||
| 36 | |||
| 37 | Rounding Control: | ||
| 38 | 00 - Rounding to nearest (RN). | ||
| 39 | 01 - Rounding toward zero (RZ). | ||
| 40 | 10 - Rounding (up) toward plus infinity (RP). | ||
| 41 | 11 - Rounding (down)toward minus infinity (RM). | ||
| 42 | |||
| 43 | C-SKY FPU floating point exception status register bits. | ||
| 44 | |||
| 45 | 15 -> Accumulate bit for any exception. | ||
| 46 | 14 -> Reserved (read as 0, write with 0). | ||
| 47 | 13 -> Cause bit for input denormalized exception. | ||
| 48 | 12 -> Cause bit for inexact exception. | ||
| 49 | 11 -> Cause bit for underflow exception. | ||
| 50 | 10 -> Cause bit for overflow exception. | ||
| 51 | 9 -> Cause bit for division by zero exception. | ||
| 52 | 8 -> Cause bit for invalid operation exception. | ||
| 53 | 7 -> Flag bit for any exception. | ||
| 54 | 6 -> Reserved (read as 0, write with 0). | ||
| 55 | 5 -> Flag exception for input denormalized exception. | ||
| 56 | 4 -> Flag exception for inexact exception. | ||
| 57 | 3 -> Flag exception for underflow exception. | ||
| 58 | 2 -> Flag exception for overflow exception. | ||
| 59 | 1 -> Flag exception for division by zero exception. | ||
| 60 | 0 -> Flag exception for invalid operation exception. */ | ||
| 61 | |||
| 62 | #include <features.h> | ||
| 63 | |||
| 64 | #ifdef __csky_soft_float__ | ||
| 65 | |||
| 66 | # define _FPU_RESERVED 0xffffffff | ||
| 67 | # define _FPU_DEFAULT 0x00000000 | ||
| 68 | typedef unsigned int fpu_control_t; | ||
| 69 | # define _FPU_GETCW(cw) (cw) = 0 | ||
| 70 | # define _FPU_SETCW(cw) (void) (cw) | ||
| 71 | # define _FPU_GETFPSR(cw) (cw) = 0 | ||
| 72 | # define _FPU_SETFPSR(cw) (void) (cw) | ||
| 73 | extern fpu_control_t __fpu_control; | ||
| 74 | |||
| 75 | #else /* __csky_soft_float__ */ | ||
| 76 | |||
| 77 | /* Masking of interrupts. */ | ||
| 78 | # define _FPU_MASK_IDE (1 << 5) /* Input denormalized exception. */ | ||
| 79 | # define _FPU_MASK_IXE (1 << 4) /* Inexact exception. */ | ||
| 80 | # define _FPU_MASK_UFE (1 << 3) /* Underflow exception. */ | ||
| 81 | # define _FPU_MASK_OFE (1 << 2) /* Overflow exception. */ | ||
| 82 | # define _FPU_MASK_DZE (1 << 1) /* Division by zero exception. */ | ||
| 83 | # define _FPU_MASK_IOE (1 << 0) /* Invalid operation exception. */ | ||
| 84 | |||
| 85 | # define _FPU_MASK_FEA (1 << 15) /* Case for any exception. */ | ||
| 86 | # define _FPU_MASK_FEC (1 << 7) /* Flag for any exception. */ | ||
| 87 | |||
| 88 | /* Flush denormalized numbers to zero. */ | ||
| 89 | # define _FPU_FLUSH_TZ 0x8000000 | ||
| 90 | |||
| 91 | /* Rounding control. */ | ||
| 92 | # define _FPU_RC_NEAREST (0x0 << 24) /* RECOMMENDED. */ | ||
| 93 | # define _FPU_RC_ZERO (0x1 << 24) | ||
| 94 | # define _FPU_RC_UP (0x2 << 24) | ||
| 95 | # define _FPU_RC_DOWN (0x3 << 24) | ||
| 96 | |||
| 97 | # define _FPU_RESERVED 0xf460ffc0 /* Reserved bits in cw. */ | ||
| 98 | # define _FPU_FPSR_RESERVED 0xffff4040 | ||
| 99 | |||
| 100 | /* The fdlibm code requires strict IEEE double precision arithmetic, | ||
| 101 | and no interrupts for exceptions, rounding to nearest. */ | ||
| 102 | |||
| 103 | # define _FPU_DEFAULT 0x00000000 | ||
| 104 | # define _FPU_FPSR_DEFAULT 0x00000000 | ||
| 105 | |||
| 106 | /* IEEE: same as above, but exceptions. */ | ||
| 107 | # define _FPU_FPCR_IEEE 0x0000001F | ||
| 108 | # define _FPU_FPSR_IEEE 0x00000000 | ||
| 109 | |||
| 110 | /* Type of the control word. */ | ||
| 111 | typedef unsigned int fpu_control_t; | ||
| 112 | |||
| 113 | /* Macros for accessing the hardware control word. */ | ||
| 114 | # if (__CSKY__ == 2) | ||
| 115 | # define _FPU_GETCW(cw) __asm__ volatile ("mfcr %0, cr<1, 2>" : "=a" (cw)) | ||
| 116 | # define _FPU_SETCW(cw) __asm__ volatile ("mtcr %0, cr<1, 2>" : : "a" (cw)) | ||
| 117 | # define _FPU_GETFPSR(cw) __asm__ volatile ("mfcr %0, cr<2, 2>" : "=a" (cw)) | ||
| 118 | # define _FPU_SETFPSR(cw) __asm__ volatile ("mtcr %0, cr<2, 2>" : : "a" (cw)) | ||
| 119 | # else | ||
| 120 | # define _FPU_GETCW(cw) __asm__ volatile ("1: cprcr %0, cpcr2 \n" \ | ||
| 121 | " btsti %0, 31 \n" \ | ||
| 122 | " bt 1b \n" \ | ||
| 123 | " cprcr %0, cpcr1\n" : "=b" (cw)) | ||
| 124 | |||
| 125 | # define _FPU_SETCW(cw) __asm__ volatile ("1: cprcr r7, cpcr2 \n" \ | ||
| 126 | " btsti r7, 31 \n" \ | ||
| 127 | " bt 1b \n" \ | ||
| 128 | " cpwcr %0, cpcr1 \n" \ | ||
| 129 | : : "b" (cw) : "r7") | ||
| 130 | |||
| 131 | # define _FPU_GETFPSR(cw) __asm__ volatile ("1: cprcr %0, cpcr2 \n" \ | ||
| 132 | " btsti %0, 31 \n" \ | ||
| 133 | " bt 1b \n" \ | ||
| 134 | " cprcr %0, cpcr4\n" : "=b" (cw)) | ||
| 135 | |||
| 136 | # define _FPU_SETFPSR(cw) __asm__ volatile ("1: cprcr r7, cpcr2 \n" \ | ||
| 137 | " btsti r7, 31 \n" \ | ||
| 138 | " bt 1b \n" \ | ||
| 139 | " cpwcr %0, cpcr4 \n" \ | ||
| 140 | : : "b" (cw) : "r7") | ||
| 141 | # endif /* __CSKY__ != 2 */ | ||
| 142 | |||
| 143 | /* Default control word set at startup. */ | ||
| 144 | extern fpu_control_t __fpu_control; | ||
| 145 | |||
| 146 | #endif /* !__csky_soft_float__ */ | ||
| 147 | |||
| 148 | #endif /* fpu_control.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnueabi/gnu/lib-names.h deleted-30| ... | @@ -1,30 +0,0 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | It defines macros to allow user program to find the shared | ||
| 3 | library files which come as part of GNU libc. */ | ||
| 4 | #ifndef __GNU_LIB_NAMES_H | ||
| 5 | #define __GNU_LIB_NAMES_H	1 | ||
| 6 | |||
| 7 | #define LD_LINUX_CSKYV2_SO "ld-linux-cskyv2.so.1" | ||
| 8 | #define LD_SO "ld-linux-cskyv2.so.1" | ||
| 9 | #define LIBANL_SO "libanl.so.1" | ||
| 10 | #define LIBBROKENLOCALE_SO "libBrokenLocale.so.1" | ||
| 11 | #define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0" | ||
| 12 | #define LIBC_SO "libc.so.6" | ||
| 13 | #define LIBDL_SO "libdl.so.2" | ||
| 14 | #define LIBGCC_S_SO "libgcc_s.so.1" | ||
| 15 | #define LIBMVEC_SO "libmvec.so.1" | ||
| 16 | #define LIBM_SO "libm.so.6" | ||
| 17 | #define LIBNSL_SO "libnsl.so.1" | ||
| 18 | #define LIBNSS_COMPAT_SO "libnss_compat.so.2" | ||
| 19 | #define LIBNSS_DB_SO "libnss_db.so.2" | ||
| 20 | #define LIBNSS_DNS_SO "libnss_dns.so.2" | ||
| 21 | #define LIBNSS_FILES_SO "libnss_files.so.2" | ||
| 22 | #define LIBNSS_HESIOD_SO "libnss_hesiod.so.2" | ||
| 23 | #define LIBNSS_LDAP_SO "libnss_ldap.so.2" | ||
| 24 | #define LIBPTHREAD_SO "libpthread.so.0" | ||
| 25 | #define LIBRESOLV_SO "libresolv.so.2" | ||
| 26 | #define LIBRT_SO "librt.so.1" | ||
| 27 | #define LIBTHREAD_DB_SO "libthread_db.so.1" | ||
| 28 | #define LIBUTIL_SO "libutil.so.1" | ||
| 29 | |||
| 30 | #endif	/* gnu/lib-names.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnueabi/gnu/stubs.h deleted-38| ... | @@ -1,38 +0,0 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | It defines a symbol `__stub_FUNCTION' for each function | ||
| 3 | in the C library which is a stub, meaning it will fail | ||
| 4 | every time called, usually setting errno to ENOSYS. */ | ||
| 5 | |||
| 6 | #ifdef _LIBC | ||
| 7 | #error Applications may not define the macro _LIBC | ||
| 8 | #endif | ||
| 9 | |||
| 10 | #define __stub___compat_bdflush | ||
| 11 | #define __stub___compat_create_module | ||
| 12 | #define __stub___compat_get_kernel_syms | ||
| 13 | #define __stub___compat_query_module | ||
| 14 | #define __stub___compat_uselib | ||
| 15 | #define __stub_chflags | ||
| 16 | #define __stub_fchflags | ||
| 17 | #define __stub_feclearexcept | ||
| 18 | #define __stub_fedisableexcept | ||
| 19 | #define __stub_feenableexcept | ||
| 20 | #define __stub_fegetenv | ||
| 21 | #define __stub_fegetexcept | ||
| 22 | #define __stub_fegetexceptflag | ||
| 23 | #define __stub_fegetmode | ||
| 24 | #define __stub_fegetround | ||
| 25 | #define __stub_feholdexcept | ||
| 26 | #define __stub_feraiseexcept | ||
| 27 | #define __stub_fesetenv | ||
| 28 | #define __stub_fesetexcept | ||
| 29 | #define __stub_fesetexceptflag | ||
| 30 | #define __stub_fesetmode | ||
| 31 | #define __stub_fesetround | ||
| 32 | #define __stub_fetestexcept | ||
| 33 | #define __stub_feupdateenv | ||
| 34 | #define __stub_gtty | ||
| 35 | #define __stub_revoke | ||
| 36 | #define __stub_setlogin | ||
| 37 | #define __stub_sigreturn | ||
| 38 | #define __stub_stty | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnueabi/sys/cachectl.h deleted-36| ... | @@ -1,36 +0,0 @@ | ||
| 1 | /* C-SKY cache flushing interface. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_CACHECTL_H | ||
| 20 | #define _SYS_CACHECTL_H 1 | ||
| 21 | |||
| 22 | #include <features.h> | ||
| 23 | |||
| 24 | /* Get the kernel definition for the op bits. */ | ||
| 25 | #include <asm/cachectl.h> | ||
| 26 | |||
| 27 | __BEGIN_DECLS | ||
| 28 | |||
| 29 | #ifdef __USE_MISC | ||
| 30 | extern int cacheflush (void *__addr, const int __nbytes, | ||
| 31 | 		 const int __op) __THROW; | ||
| 32 | #endif | ||
| 33 | |||
| 34 | __END_DECLS | ||
| 35 | |||
| 36 | #endif /* sys/cachectl.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnueabi/sys/ucontext.h deleted-89| ... | @@ -1,89 +0,0 @@ | ||
| 1 | /* struct ucontext definition, C-SKY version. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_UCONTEXT_H | ||
| 20 | #define _SYS_UCONTEXT_H	1 | ||
| 21 | |||
| 22 | #include <features.h> | ||
| 23 | |||
| 24 | #include <bits/types/sigset_t.h> | ||
| 25 | #include <bits/types/stack_t.h> | ||
| 26 | |||
| 27 | typedef struct | ||
| 28 | { | ||
| 29 | unsigned long __tls; | ||
| 30 | unsigned long __lr; | ||
| 31 | unsigned long __pc; | ||
| 32 | unsigned long __sr; | ||
| 33 | unsigned long __usp; | ||
| 34 | |||
| 35 | /* | ||
| 36 | * a0, a1, a2, a3: | ||
| 37 | * abiv1: r2, r3, r4, r5 | ||
| 38 | * abiv2: r0, r1, r2, r3 | ||
| 39 | */ | ||
| 40 | |||
| 41 | unsigned long __orig_a0; | ||
| 42 | unsigned long __a0; | ||
| 43 | unsigned long __a1; | ||
| 44 | unsigned long __a2; | ||
| 45 | unsigned long __a3; | ||
| 46 | |||
| 47 | /* | ||
| 48 | * ABIV2: r4 ~ r13 | ||
| 49 | */ | ||
| 50 | unsigned long __regs[10]; | ||
| 51 | |||
| 52 | /* r16 ~ r30 */ | ||
| 53 | unsigned long __exregs[15]; | ||
| 54 | |||
| 55 | unsigned long __rhi; | ||
| 56 | unsigned long __rlo; | ||
| 57 | unsigned long __glibc_reserved; | ||
| 58 | } gregset_t; | ||
| 59 | |||
| 60 | typedef struct | ||
| 61 | { | ||
| 62 | unsigned long __vr[64]; | ||
| 63 | unsigned long __fcr; | ||
| 64 | unsigned long __fesr; | ||
| 65 | unsigned long __fid; | ||
| 66 | unsigned long __glibc_reserved; | ||
| 67 | } fpregset_t; | ||
| 68 | |||
| 69 | /* Context to describe whole processor state. */ | ||
| 70 | typedef struct | ||
| 71 | { | ||
| 72 | gregset_t __gregs; | ||
| 73 | fpregset_t __fpregs; | ||
| 74 | } mcontext_t; | ||
| 75 | |||
| 76 | /* Userlevel context. */ | ||
| 77 | typedef struct ucontext_t | ||
| 78 | { | ||
| 79 | unsigned long int __uc_flags; | ||
| 80 | struct ucontext_t *uc_link; | ||
| 81 | stack_t uc_stack; | ||
| 82 | mcontext_t uc_mcontext; | ||
| 83 | sigset_t uc_sigmask; | ||
| 84 | } ucontext_t; | ||
| 85 | |||
| 86 | #undef __ctx | ||
| 87 | |||
| 88 | |||
| 89 | #endif /* sys/ucontext.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnueabi/sys/user.h deleted-23| ... | @@ -1,23 +0,0 @@ | ||
| 1 | /* This file is not used by C-SKY GDB. ptrace can use pt_regs definition | ||
| 2 | from linux kernel directly. | ||
| 3 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library. If not, see | ||
| 18 | <https://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifndef _SYS_USER_H | ||
| 21 | #define _SYS_USER_H 1 | ||
| 22 | |||
| 23 | #endif /* _SYS_USER_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnueabihf/bits/endianness.h deleted-14| ... | @@ -1,14 +0,0 @@ | ||
| 1 | #ifndef _BITS_ENDIANNESS_H | ||
| 2 | #define _BITS_ENDIANNESS_H 1 | ||
| 3 | |||
| 4 | #ifndef _BITS_ENDIAN_H | ||
| 5 | # error "Never use <bits/endianness.h> directly; include <endian.h> instead." | ||
| 6 | #endif | ||
| 7 | |||
| 8 | #ifdef __CSKYBE__ | ||
| 9 | # error "Big endian not supported for C-SKY." | ||
| 10 | #else | ||
| 11 | # define __BYTE_ORDER __LITTLE_ENDIAN | ||
| 12 | #endif | ||
| 13 | |||
| 14 | #endif /* bits/endianness.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnueabihf/bits/fcntl.h deleted-55| ... | @@ -1,55 +0,0 @@ | ||
| 1 | /* O_*, F_*, FD_* bit values for the generic Linux ABI. | ||
| 2 | Copyright (C) 2011-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef	_FCNTL_H | ||
| 20 | # error "Never use <bits/fcntl.h> directly; include <fcntl.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <bits/wordsize.h> | ||
| 24 | |||
| 25 | #if __WORDSIZE == 64 | ||
| 26 | # define __O_LARGEFILE	0 | ||
| 27 | #endif | ||
| 28 | |||
| 29 | struct flock | ||
| 30 | { | ||
| 31 | short int l_type;	/* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK.	*/ | ||
| 32 | short int l_whence;	/* Where `l_start' is relative to (like `lseek'). */ | ||
| 33 | #ifndef __USE_FILE_OFFSET64 | ||
| 34 | __off_t l_start;	/* Offset where the lock begins. */ | ||
| 35 | __off_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 36 | #else | ||
| 37 | __off64_t l_start;	/* Offset where the lock begins. */ | ||
| 38 | __off64_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 39 | #endif | ||
| 40 | __pid_t l_pid;	/* Process holding the lock. */ | ||
| 41 | }; | ||
| 42 | |||
| 43 | #ifdef __USE_LARGEFILE64 | ||
| 44 | struct flock64 | ||
| 45 | { | ||
| 46 | short int l_type;	/* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK.	*/ | ||
| 47 | short int l_whence;	/* Where `l_start' is relative to (like `lseek'). */ | ||
| 48 | __off64_t l_start;	/* Offset where the lock begins. */ | ||
| 49 | __off64_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 50 | __pid_t l_pid;	/* Process holding the lock. */ | ||
| 51 | }; | ||
| 52 | #endif | ||
| 53 | |||
| 54 | /* Include generic Linux declarations. */ | ||
| 55 | #include <bits/fcntl-linux.h> | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnueabihf/bits/fenv.h deleted-111| ... | @@ -1,111 +0,0 @@ | ||
| 1 | /* Floating point environment. C-SKY version. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _FENV_H | ||
| 20 | # error "Never use <bits/fenv.h> directly; include <fenv.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifdef __csky_hard_float__ | ||
| 24 | /* Define bits representing the exception. We use the bit positions | ||
| 25 | of the appropriate bits in the FPU control word. */ | ||
| 26 | enum | ||
| 27 | { | ||
| 28 | FE_INVALID = | ||
| 29 | #define FE_INVALID	0x01 | ||
| 30 | FE_INVALID, | ||
| 31 | FE_DIVBYZERO = | ||
| 32 | #define FE_DIVBYZERO	0x02 | ||
| 33 | FE_DIVBYZERO, | ||
| 34 | FE_OVERFLOW = | ||
| 35 | #define FE_OVERFLOW	0x04 | ||
| 36 | FE_OVERFLOW, | ||
| 37 | FE_UNDERFLOW = | ||
| 38 | #define FE_UNDERFLOW	0x08 | ||
| 39 | FE_UNDERFLOW, | ||
| 40 | FE_INEXACT = | ||
| 41 | #define FE_INEXACT	0x10 | ||
| 42 | FE_INEXACT, | ||
| 43 | __FE_DENORMAL = 0x20 | ||
| 44 | }; | ||
| 45 | |||
| 46 | #define FE_ALL_EXCEPT \ | ||
| 47 | 	(FE_INEXACT | FE_DIVBYZERO | FE_UNDERFLOW | FE_OVERFLOW | FE_INVALID) | ||
| 48 | |||
| 49 | /* The C-SKY FPU supports all of the four defined rounding modes. We | ||
| 50 | use again the bit positions in the FPU control word as the values | ||
| 51 | for the appropriate macros. */ | ||
| 52 | enum | ||
| 53 | { | ||
| 54 | FE_TONEAREST = | ||
| 55 | #define FE_TONEAREST	(0x0 << 24) | ||
| 56 | FE_TONEAREST, | ||
| 57 | FE_TOWARDZERO = | ||
| 58 | #define FE_TOWARDZERO	(0x1 << 24) | ||
| 59 | FE_TOWARDZERO, | ||
| 60 | FE_UPWARD = | ||
| 61 | #define FE_UPWARD	(0x2 << 24) | ||
| 62 | FE_UPWARD, | ||
| 63 | FE_DOWNWARD = | ||
| 64 | #define FE_DOWNWARD	(0x3 << 24) | ||
| 65 | FE_DOWNWARD, | ||
| 66 | __FE_ROUND_MASK = (0x3 << 24) | ||
| 67 | }; | ||
| 68 | |||
| 69 | #else | ||
| 70 | |||
| 71 | /* In the soft-float case, only rounding to nearest is supported, with | ||
| 72 | no exceptions. */ | ||
| 73 | |||
| 74 | enum | ||
| 75 | { | ||
| 76 | __FE_UNDEFINED = -1, | ||
| 77 | |||
| 78 | FE_TONEAREST = | ||
| 79 | # define FE_TONEAREST	0x0 | ||
| 80 | FE_TONEAREST | ||
| 81 | }; | ||
| 82 | |||
| 83 | # define FE_ALL_EXCEPT 0 | ||
| 84 | |||
| 85 | #endif | ||
| 86 | |||
| 87 | /* Type representing exception flags. */ | ||
| 88 | typedef unsigned int fexcept_t; | ||
| 89 | |||
| 90 | /* Type representing floating-point environment. */ | ||
| 91 | typedef struct | ||
| 92 | { | ||
| 93 | unsigned int __fpcr; | ||
| 94 | unsigned int __fpsr; | ||
| 95 | } fenv_t; | ||
| 96 | |||
| 97 | /* If the default argument is used we use this value. */ | ||
| 98 | #define FE_DFL_ENV	((const fenv_t *) -1) | ||
| 99 | |||
| 100 | #if defined __USE_GNU && defined __csky_hard_float__ | ||
| 101 | /* Floating-point environment where none of the exceptions are masked. */ | ||
| 102 | # define FE_NOMASK_ENV	((const fenv_t *) -2) | ||
| 103 | #endif | ||
| 104 | |||
| 105 | #if __GLIBC_USE (IEC_60559_BFP_EXT_C23) | ||
| 106 | /* Type representing floating-point control modes. */ | ||
| 107 | typedef unsigned int femode_t; | ||
| 108 | |||
| 109 | /* Default floating-point control modes. */ | ||
| 110 | # define FE_DFL_MODE	((const femode_t *) -1L) | ||
| 111 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnueabihf/bits/floatn.h deleted-52| ... | @@ -1,52 +0,0 @@ | ||
| 1 | /* Macros to control TS 18661-3 glibc features. | ||
| 2 | Copyright (C) 2017-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* Defined to 1 if the current compiler invocation provides a | ||
| 20 | floating-point type with the IEEE 754 binary128 format, and this glibc | ||
| 21 | includes corresponding *f128 interfaces for it. */ | ||
| 22 | #define __HAVE_FLOAT128 0 | ||
| 23 | |||
| 24 | /* Defined to 1 if __HAVE_FLOAT128 is 1 and the type is ABI-distinct | ||
| 25 | from the default float, double and long double types in this glibc. */ | ||
| 26 | #define __HAVE_DISTINCT_FLOAT128 0 | ||
| 27 | |||
| 28 | /* Defined to 1 if the current compiler invocation provides a | ||
| 29 | floating-point type with the right format for _Float64x, and this | ||
| 30 | glibc includes corresponding *f64x interfaces for it. */ | ||
| 31 | #define __HAVE_FLOAT64X 0 | ||
| 32 | |||
| 33 | /* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format | ||
| 34 | of long double. Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has | ||
| 35 | the format of _Float128, which must be different from that of long | ||
| 36 | double. */ | ||
| 37 | #define __HAVE_FLOAT64X_LONG_DOUBLE 0 | ||
| 38 | |||
| 39 | #ifndef __ASSEMBLER__ | ||
| 40 | |||
| 41 | /* Defined to concatenate the literal suffix to be used with _Float128 | ||
| 42 | types, if __HAVE_FLOAT128 is 1. | ||
| 43 | E.g.: #define __f128(x) x##f128. */ | ||
| 44 | # undef __f128 | ||
| 45 | |||
| 46 | /* Defined to a complex binary128 type if __HAVE_FLOAT128 is 1. | ||
| 47 | E.g.: #define __CFLOAT128 _Complex _Float128. */ | ||
| 48 | # undef __CFLOAT128 | ||
| 49 | |||
| 50 | #endif /* !__ASSEMBLER__. */ | ||
| 51 | |||
| 52 | #include <bits/floatn-common.h> | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnueabihf/bits/link.h deleted-55| ... | @@ -1,55 +0,0 @@ | ||
| 1 | /* Machine-specific declarations for dynamic linker interface. C-SKY version. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _LINK_H | ||
| 20 | # error "Never include <bits/link.h> directly; use <link.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Registers for entry into PLT on C-SKY. */ | ||
| 24 | typedef struct La_csky_regs | ||
| 25 | { | ||
| 26 | uint32_t lr_reg[4]; | ||
| 27 | uint32_t lr_sp; | ||
| 28 | uint32_t lr_lr; | ||
| 29 | } La_csky_regs; | ||
| 30 | |||
| 31 | /* Return values for calls from PLT on C-SKY. */ | ||
| 32 | typedef struct La_csky_retval | ||
| 33 | { | ||
| 34 | /* Up to four integer registers can be used for a return value. */ | ||
| 35 | uint32_t lrv_reg[4]; | ||
| 36 | uint32_t lrv_v0; | ||
| 37 | } La_csky_retval; | ||
| 38 | |||
| 39 | __BEGIN_DECLS | ||
| 40 | |||
| 41 | extern Elf32_Addr la_csky_gnu_pltenter (Elf32_Sym *__sym, unsigned int __ndx, | ||
| 42 | 					uintptr_t *__refcook, | ||
| 43 | 					uintptr_t *__defcook, | ||
| 44 | 					La_csky_regs *__regs, | ||
| 45 | 					unsigned int *__flags, | ||
| 46 | 					const char *__symname, | ||
| 47 | 					long int *__framesizep); | ||
| 48 | extern unsigned int la_csky_gnu_pltexit (Elf32_Sym *__sym, unsigned int __ndx, | ||
| 49 | 					 uintptr_t *__refcook, | ||
| 50 | 					 uintptr_t *__defcook, | ||
| 51 | 					 const La_csky_regs *__inregs, | ||
| 52 | 					 La_csky_retval *__outregs, | ||
| 53 | 					 const char *__symname); | ||
| 54 | |||
| 55 | __END_DECLS | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnueabihf/bits/long-double.h deleted-53| ... | @@ -1,53 +0,0 @@ | ||
| 1 | /* Properties of long double type. | ||
| 2 | Copyright (C) 2016-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* This header is included by <sys/cdefs.h>. | ||
| 20 | |||
| 21 | If long double is ABI-compatible with double, it should define | ||
| 22 | __NO_LONG_DOUBLE_MATH to 1; otherwise, it should leave | ||
| 23 | __NO_LONG_DOUBLE_MATH undefined. | ||
| 24 | |||
| 25 | If this build of the GNU C Library supports both long double | ||
| 26 | ABI-compatible with double and some other long double format not | ||
| 27 | ABI-compatible with double, it should define | ||
| 28 | __LONG_DOUBLE_MATH_OPTIONAL to 1; otherwise, it should leave | ||
| 29 | __LONG_DOUBLE_MATH_OPTIONAL undefined. | ||
| 30 | |||
| 31 | If __NO_LONG_DOUBLE_MATH is already defined, this header must not | ||
| 32 | define anything; this is needed to work with the definition of | ||
| 33 | __NO_LONG_DOUBLE_MATH in nldbl-compat.h. */ | ||
| 34 | |||
| 35 | /* In the default version of this header, long double is | ||
| 36 | ABI-compatible with double. */ | ||
| 37 | #ifndef __NO_LONG_DOUBLE_MATH | ||
| 38 | # define __NO_LONG_DOUBLE_MATH	1 | ||
| 39 | #endif | ||
| 40 | |||
| 41 | /* The macro __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI is used to determine the | ||
| 42 | choice of the underlying ABI of long double. It will always assume | ||
| 43 | a constant value for each translation unit. | ||
| 44 | |||
| 45 | If the value is non-zero, any API which is parameterized by the long | ||
| 46 | double type (i.e the scanf/printf family of functions or the explicitly | ||
| 47 | parameterized math.h functions) will be redirected to a compatible | ||
| 48 | implementation using _Float128 ABI via symbols suffixed with ieee128. | ||
| 49 | |||
| 50 | The mechanism this macro uses to acquire may be a function | ||
| 51 | of architecture, or target specific options used to invoke the | ||
| 52 | compiler. */ | ||
| 53 | #define __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI 0 | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnueabihf/bits/procfs.h deleted-37| ... | @@ -1,37 +0,0 @@ | ||
| 1 | /* Types for registers for sys/procfs.h. C-SKY version. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_PROCFS_H | ||
| 20 | # error "Never include <bits/procfs.h> directly; use <sys/procfs.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <asm/ptrace.h> | ||
| 24 | |||
| 25 | /* Type for a general-purpose register. */ | ||
| 26 | typedef unsigned long elf_greg_t; | ||
| 27 | /* Type for a floating-point registers. */ | ||
| 28 | typedef unsigned long elf_fpreg_t; | ||
| 29 | |||
| 30 | /* In gdb/bfd elf32-csky.c, csky_elf_grok_prstatus() use fixed size of | ||
| 31 | elf_prstatus. It's 148 for abiv1 and 220 for abiv2, the size is enough | ||
| 32 | for coredump and no need full sizeof (struct pt_regs). */ | ||
| 33 | #define ELF_NGREG ((sizeof (struct pt_regs) / sizeof (elf_greg_t)) - 2) | ||
| 34 | typedef elf_greg_t elf_gregset_t[ELF_NGREG]; | ||
| 35 | |||
| 36 | #define ELF_NFPREG (sizeof (struct user_fp) / sizeof (elf_fpreg_t)) | ||
| 37 | typedef elf_fpreg_t elf_fpregset_t[ELF_NFPREG]; | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnueabihf/bits/rseq.h deleted-29| ... | @@ -1,29 +0,0 @@ | ||
| 1 | /* Restartable Sequences architecture header. Stub version. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_RSEQ_H | ||
| 19 | # error "Never use <bits/rseq.h> directly; include <sys/rseq.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* RSEQ_SIG is a signature required before each abort handler code. | ||
| 23 | |||
| 24 | It is a 32-bit value that maps to actual architecture code compiled | ||
| 25 | into applications and libraries. It needs to be defined for each | ||
| 26 | architecture. When choosing this value, it needs to be taken into | ||
| 27 | account that generating invalid instructions may have ill effects on | ||
| 28 | tools like objdump, and may also have impact on the CPU speculative | ||
| 29 | execution efficiency in some cases. */ | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnueabihf/bits/setjmp.h deleted-34| ... | @@ -1,34 +0,0 @@ | ||
| 1 | /* Define the machine-dependent type `jmp_buf'. C-SKY version. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _CSKY_BITS_SETJMP_H | ||
| 20 | #define _CSKY_BITS_SETJMP_H 1 | ||
| 21 | |||
| 22 | typedef struct __jmp_buf_str | ||
| 23 | { | ||
| 24 | /* Stack pointer. */ | ||
| 25 | int __sp; | ||
| 26 | int __lr; | ||
| 27 | /* The actual core defines which registers should be saved. The | ||
| 28 | buffer contains 32 words, keep space for future growth. | ||
| 29 | Callee-saved registers: | ||
| 30 | r4 ~ r11, r16 ~ r17, r26 ~r31 for abiv2; r8 ~ r14 for abiv1. */ | ||
| 31 | int __regs[32]; | ||
| 32 | } __jmp_buf[1]; | ||
| 33 | |||
| 34 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnueabihf/bits/shmlba.h deleted-29| ... | @@ -1,29 +0,0 @@ | ||
| 1 | /* Define SHMLBA. C-SKY version. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SHM_H | ||
| 20 | # error "Never use <bits/shmlba.h> directly; include <sys/shm.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | __BEGIN_DECLS | ||
| 24 | |||
| 25 | /* Segment low boundary address multiple. */ | ||
| 26 | #define SHMLBA		(__getpagesize () << 2) | ||
| 27 | extern int __getpagesize (void) __THROW __attribute__ ((__const__)); | ||
| 28 | |||
| 29 | __END_DECLS | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnueabihf/bits/statfs.h deleted-75| ... | @@ -1,75 +0,0 @@ | ||
| 1 | /* Copyright (C) 2011-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_STATFS_H | ||
| 19 | # error "Never include <bits/statfs.h> directly; use <sys/statfs.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | #include <bits/endian.h> | ||
| 23 | #include <bits/types.h> | ||
| 24 | #include <bits/wordsize.h> | ||
| 25 | |||
| 26 | #if defined __USE_FILE_OFFSET64 | ||
| 27 | # define __field64(type, type64, name) type64 name | ||
| 28 | #elif __BYTE_ORDER == __LITTLE_ENDIAN | ||
| 29 | # define __field64(type, type64, name) \ | ||
| 30 | type name __attribute__((__aligned__ (__alignof__ (type64)))); int __##name##_pad | ||
| 31 | #else | ||
| 32 | # define __field64(type, type64, name) \ | ||
| 33 | int __##name##_pad __attribute__((__aligned__ (__alignof__ (type64)))); type name | ||
| 34 | #endif | ||
| 35 | |||
| 36 | struct statfs | ||
| 37 | { | ||
| 38 | __SWORD_TYPE f_type; | ||
| 39 | __SWORD_TYPE f_bsize; | ||
| 40 | __field64(__fsblkcnt_t, __fsblkcnt64_t, f_blocks); | ||
| 41 | __field64(__fsblkcnt_t, __fsblkcnt64_t, f_bfree); | ||
| 42 | __field64(__fsblkcnt_t, __fsblkcnt64_t, f_bavail); | ||
| 43 | __field64(__fsfilcnt_t, __fsfilcnt64_t, f_files); | ||
| 44 | __field64(__fsfilcnt_t, __fsfilcnt64_t, f_ffree); | ||
| 45 | __fsid_t f_fsid; | ||
| 46 | __SWORD_TYPE f_namelen; | ||
| 47 | __SWORD_TYPE f_frsize; | ||
| 48 | __SWORD_TYPE f_flags; | ||
| 49 | __SWORD_TYPE f_spare[4]; | ||
| 50 | }; | ||
| 51 | |||
| 52 | #undef __field64 | ||
| 53 | |||
| 54 | #ifdef __USE_LARGEFILE64 | ||
| 55 | struct statfs64 | ||
| 56 | { | ||
| 57 | __SWORD_TYPE f_type; | ||
| 58 | __SWORD_TYPE f_bsize; | ||
| 59 | __fsblkcnt64_t f_blocks; | ||
| 60 | __fsblkcnt64_t f_bfree; | ||
| 61 | __fsblkcnt64_t f_bavail; | ||
| 62 | __fsfilcnt64_t f_files; | ||
| 63 | __fsfilcnt64_t f_ffree; | ||
| 64 | __fsid_t f_fsid; | ||
| 65 | __SWORD_TYPE f_namelen; | ||
| 66 | __SWORD_TYPE f_frsize; | ||
| 67 | __SWORD_TYPE f_flags; | ||
| 68 | __SWORD_TYPE f_spare[4]; | ||
| 69 | }; | ||
| 70 | #endif | ||
| 71 | |||
| 72 | /* Tell code we have these members. */ | ||
| 73 | #define _STATFS_F_NAMELEN | ||
| 74 | #define _STATFS_F_FRSIZE | ||
| 75 | #define _STATFS_F_FLAGS | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnueabihf/bits/struct_stat.h deleted-135| ... | @@ -1,135 +0,0 @@ | ||
| 1 | /* Definition for struct stat. Linux/csky version. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #if !defined _SYS_STAT_H && !defined _FCNTL_H | ||
| 20 | # error "Never include <bits/struct_stat.h> directly; use <sys/stat.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef _BITS_STRUCT_STAT_H | ||
| 24 | #define _BITS_STRUCT_STAT_H	1 | ||
| 25 | |||
| 26 | #include <bits/endian.h> | ||
| 27 | #include <bits/wordsize.h> | ||
| 28 | |||
| 29 | #if defined __USE_FILE_OFFSET64 | ||
| 30 | # define __field64(type, type64, name) type64 name | ||
| 31 | #elif __WORDSIZE == 64 || defined __INO_T_MATCHES_INO64_T | ||
| 32 | # if defined __INO_T_MATCHES_INO64_T && !defined __OFF_T_MATCHES_OFF64_T | ||
| 33 | # error "ino_t and off_t must both be the same type" | ||
| 34 | # endif | ||
| 35 | # define __field64(type, type64, name) type name | ||
| 36 | #elif __BYTE_ORDER == __LITTLE_ENDIAN | ||
| 37 | # define __field64(type, type64, name) \ | ||
| 38 | type name __attribute__((__aligned__ (__alignof__ (type64)))); int __##name##_pad | ||
| 39 | #else | ||
| 40 | # define __field64(type, type64, name) \ | ||
| 41 | int __##name##_pad __attribute__((__aligned__ (__alignof__ (type64)))); type name | ||
| 42 | #endif | ||
| 43 | |||
| 44 | struct stat | ||
| 45 | { | ||
| 46 | #ifdef __USE_TIME64_REDIRECTS | ||
| 47 | # include <bits/struct_stat_time64_helper.h> | ||
| 48 | #else | ||
| 49 | __dev_t st_dev;		/* Device. */ | ||
| 50 | __field64(__ino_t, __ino64_t, st_ino); /* File serial number. */ | ||
| 51 | __mode_t st_mode;		/* File mode. */ | ||
| 52 | __nlink_t st_nlink;		/* Link count. */ | ||
| 53 | __uid_t st_uid;		/* User ID of the file's owner.	*/ | ||
| 54 | __gid_t st_gid;		/* Group ID of the file's group.*/ | ||
| 55 | __dev_t st_rdev;		/* Device number, if device. */ | ||
| 56 | __dev_t __pad1; | ||
| 57 | __field64(__off_t, __off64_t, st_size); /* Size of file, in bytes. */ | ||
| 58 | __blksize_t st_blksize;	/* Optimal block size for I/O. */ | ||
| 59 | int __pad2; | ||
| 60 | __field64(__blkcnt_t, __blkcnt64_t, st_blocks); /* 512-byte blocks */ | ||
| 61 | # ifdef __USE_XOPEN2K8 | ||
| 62 | /* Nanosecond resolution timestamps are stored in a format | ||
| 63 | equivalent to 'struct timespec'. This is the type used | ||
| 64 | whenever possible but the Unix namespace rules do not allow the | ||
| 65 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 66 | Therefore we have to handle the use of this header in strictly | ||
| 67 | standard-compliant sources special. */ | ||
| 68 | struct timespec st_atim;		/* Time of last access. */ | ||
| 69 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 70 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 71 | # define st_atime st_atim.tv_sec	/* Backward compatibility. */ | ||
| 72 | # define st_mtime st_mtim.tv_sec | ||
| 73 | # define st_ctime st_ctim.tv_sec | ||
| 74 | # else | ||
| 75 | __time_t st_atime;			/* Time of last access. */ | ||
| 76 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 77 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 78 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 79 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 80 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 81 | # endif | ||
| 82 | int __glibc_reserved[2]; | ||
| 83 | #endif | ||
| 84 | }; | ||
| 85 | |||
| 86 | #undef __field64 | ||
| 87 | |||
| 88 | #ifdef __USE_LARGEFILE64 | ||
| 89 | struct stat64 | ||
| 90 | { | ||
| 91 | # ifdef __USE_TIME64_REDIRECTS | ||
| 92 | # include <bits/struct_stat_time64_helper.h> | ||
| 93 | # else | ||
| 94 | __dev_t st_dev;		/* Device. */ | ||
| 95 | __ino64_t st_ino;		/* File serial number.	*/ | ||
| 96 | __mode_t st_mode;		/* File mode. */ | ||
| 97 | __nlink_t st_nlink;		/* Link count. */ | ||
| 98 | __uid_t st_uid;		/* User ID of the file's owner.	*/ | ||
| 99 | __gid_t st_gid;		/* Group ID of the file's group.*/ | ||
| 100 | __dev_t st_rdev;		/* Device number, if device. */ | ||
| 101 | __dev_t __pad1; | ||
| 102 | __off64_t st_size;		/* Size of file, in bytes. */ | ||
| 103 | __blksize_t st_blksize;	/* Optimal block size for I/O. */ | ||
| 104 | int __pad2; | ||
| 105 | __blkcnt64_t st_blocks;	/* Nr. 512-byte blocks allocated. */ | ||
| 106 | # ifdef __USE_XOPEN2K8 | ||
| 107 | /* Nanosecond resolution timestamps are stored in a format | ||
| 108 | equivalent to 'struct timespec'. This is the type used | ||
| 109 | whenever possible but the Unix namespace rules do not allow the | ||
| 110 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 111 | Therefore we have to handle the use of this header in strictly | ||
| 112 | standard-compliant sources special. */ | ||
| 113 | struct timespec st_atim;		/* Time of last access. */ | ||
| 114 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 115 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 116 | # else | ||
| 117 | __time_t st_atime;			/* Time of last access. */ | ||
| 118 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 119 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 120 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 121 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 122 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 123 | # endif | ||
| 124 | int __glibc_reserved[2]; | ||
| 125 | # endif | ||
| 126 | }; | ||
| 127 | #endif | ||
| 128 | |||
| 129 | /* Tell code we have these members. */ | ||
| 130 | #define	_STATBUF_ST_BLKSIZE | ||
| 131 | #define _STATBUF_ST_RDEV | ||
| 132 | /* Nanosecond resolution time values are supported. */ | ||
| 133 | #define _STATBUF_ST_NSEC | ||
| 134 | |||
| 135 | #endif /* _BITS_STRUCT_STAT_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnueabihf/bits/timesize.h deleted-20| ... | @@ -1,20 +0,0 @@ | ||
| 1 | /* Bit size of the time_t type at glibc build time, Linux/csky. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* Size in bits of the 'time_t' type of the default ABI. */ | ||
| 20 | #define __TIMESIZE	32 | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnueabihf/bits/wordsize.h deleted-21| ... | @@ -1,21 +0,0 @@ | ||
| 1 | /* Copyright (C) 1999-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #define __WORDSIZE			32 | ||
| 19 | #define __WORDSIZE_TIME64_COMPAT32	1 | ||
| 20 | #define __WORDSIZE32_SIZE_ULONG		0 | ||
| 21 | #define __WORDSIZE32_PTRDIFF_LONG	0 | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnueabihf/fpu_control.h deleted-148| ... | @@ -1,148 +0,0 @@ | ||
| 1 | /* FPU control word bits. C-SKY version. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _FPU_CONTROL_H | ||
| 20 | #define _FPU_CONTROL_H | ||
| 21 | |||
| 22 | /* C-SKY FPU floating point control register bits. | ||
| 23 | |||
| 24 | 31-28 -> Reserved (read as 0, write with 0). | ||
| 25 | 27 -> 0: Flush denormalized results to zero. | ||
| 26 | 1: Flush denormalized results to signed minimal normal number. | ||
| 27 | 26 -> Reserved (read as 0, write with 0). | ||
| 28 | 25-24 -> Rounding control. | ||
| 29 | 23-6 -> Reserved (read as 0, write with 0). | ||
| 30 | 5 -> Enable exception for input denormalized exception. | ||
| 31 | 4 -> Enable exception for inexact exception. | ||
| 32 | 3 -> Enable exception for underflow exception. | ||
| 33 | 2 -> Enable exception for overflow exception. | ||
| 34 | 1 -> Enable exception for division by zero exception. | ||
| 35 | 0 -> Enable exception for invalid operation exception. | ||
| 36 | |||
| 37 | Rounding Control: | ||
| 38 | 00 - Rounding to nearest (RN). | ||
| 39 | 01 - Rounding toward zero (RZ). | ||
| 40 | 10 - Rounding (up) toward plus infinity (RP). | ||
| 41 | 11 - Rounding (down)toward minus infinity (RM). | ||
| 42 | |||
| 43 | C-SKY FPU floating point exception status register bits. | ||
| 44 | |||
| 45 | 15 -> Accumulate bit for any exception. | ||
| 46 | 14 -> Reserved (read as 0, write with 0). | ||
| 47 | 13 -> Cause bit for input denormalized exception. | ||
| 48 | 12 -> Cause bit for inexact exception. | ||
| 49 | 11 -> Cause bit for underflow exception. | ||
| 50 | 10 -> Cause bit for overflow exception. | ||
| 51 | 9 -> Cause bit for division by zero exception. | ||
| 52 | 8 -> Cause bit for invalid operation exception. | ||
| 53 | 7 -> Flag bit for any exception. | ||
| 54 | 6 -> Reserved (read as 0, write with 0). | ||
| 55 | 5 -> Flag exception for input denormalized exception. | ||
| 56 | 4 -> Flag exception for inexact exception. | ||
| 57 | 3 -> Flag exception for underflow exception. | ||
| 58 | 2 -> Flag exception for overflow exception. | ||
| 59 | 1 -> Flag exception for division by zero exception. | ||
| 60 | 0 -> Flag exception for invalid operation exception. */ | ||
| 61 | |||
| 62 | #include <features.h> | ||
| 63 | |||
| 64 | #ifdef __csky_soft_float__ | ||
| 65 | |||
| 66 | # define _FPU_RESERVED 0xffffffff | ||
| 67 | # define _FPU_DEFAULT 0x00000000 | ||
| 68 | typedef unsigned int fpu_control_t; | ||
| 69 | # define _FPU_GETCW(cw) (cw) = 0 | ||
| 70 | # define _FPU_SETCW(cw) (void) (cw) | ||
| 71 | # define _FPU_GETFPSR(cw) (cw) = 0 | ||
| 72 | # define _FPU_SETFPSR(cw) (void) (cw) | ||
| 73 | extern fpu_control_t __fpu_control; | ||
| 74 | |||
| 75 | #else /* __csky_soft_float__ */ | ||
| 76 | |||
| 77 | /* Masking of interrupts. */ | ||
| 78 | # define _FPU_MASK_IDE (1 << 5) /* Input denormalized exception. */ | ||
| 79 | # define _FPU_MASK_IXE (1 << 4) /* Inexact exception. */ | ||
| 80 | # define _FPU_MASK_UFE (1 << 3) /* Underflow exception. */ | ||
| 81 | # define _FPU_MASK_OFE (1 << 2) /* Overflow exception. */ | ||
| 82 | # define _FPU_MASK_DZE (1 << 1) /* Division by zero exception. */ | ||
| 83 | # define _FPU_MASK_IOE (1 << 0) /* Invalid operation exception. */ | ||
| 84 | |||
| 85 | # define _FPU_MASK_FEA (1 << 15) /* Case for any exception. */ | ||
| 86 | # define _FPU_MASK_FEC (1 << 7) /* Flag for any exception. */ | ||
| 87 | |||
| 88 | /* Flush denormalized numbers to zero. */ | ||
| 89 | # define _FPU_FLUSH_TZ 0x8000000 | ||
| 90 | |||
| 91 | /* Rounding control. */ | ||
| 92 | # define _FPU_RC_NEAREST (0x0 << 24) /* RECOMMENDED. */ | ||
| 93 | # define _FPU_RC_ZERO (0x1 << 24) | ||
| 94 | # define _FPU_RC_UP (0x2 << 24) | ||
| 95 | # define _FPU_RC_DOWN (0x3 << 24) | ||
| 96 | |||
| 97 | # define _FPU_RESERVED 0xf460ffc0 /* Reserved bits in cw. */ | ||
| 98 | # define _FPU_FPSR_RESERVED 0xffff4040 | ||
| 99 | |||
| 100 | /* The fdlibm code requires strict IEEE double precision arithmetic, | ||
| 101 | and no interrupts for exceptions, rounding to nearest. */ | ||
| 102 | |||
| 103 | # define _FPU_DEFAULT 0x00000000 | ||
| 104 | # define _FPU_FPSR_DEFAULT 0x00000000 | ||
| 105 | |||
| 106 | /* IEEE: same as above, but exceptions. */ | ||
| 107 | # define _FPU_FPCR_IEEE 0x0000001F | ||
| 108 | # define _FPU_FPSR_IEEE 0x00000000 | ||
| 109 | |||
| 110 | /* Type of the control word. */ | ||
| 111 | typedef unsigned int fpu_control_t; | ||
| 112 | |||
| 113 | /* Macros for accessing the hardware control word. */ | ||
| 114 | # if (__CSKY__ == 2) | ||
| 115 | # define _FPU_GETCW(cw) __asm__ volatile ("mfcr %0, cr<1, 2>" : "=a" (cw)) | ||
| 116 | # define _FPU_SETCW(cw) __asm__ volatile ("mtcr %0, cr<1, 2>" : : "a" (cw)) | ||
| 117 | # define _FPU_GETFPSR(cw) __asm__ volatile ("mfcr %0, cr<2, 2>" : "=a" (cw)) | ||
| 118 | # define _FPU_SETFPSR(cw) __asm__ volatile ("mtcr %0, cr<2, 2>" : : "a" (cw)) | ||
| 119 | # else | ||
| 120 | # define _FPU_GETCW(cw) __asm__ volatile ("1: cprcr %0, cpcr2 \n" \ | ||
| 121 | " btsti %0, 31 \n" \ | ||
| 122 | " bt 1b \n" \ | ||
| 123 | " cprcr %0, cpcr1\n" : "=b" (cw)) | ||
| 124 | |||
| 125 | # define _FPU_SETCW(cw) __asm__ volatile ("1: cprcr r7, cpcr2 \n" \ | ||
| 126 | " btsti r7, 31 \n" \ | ||
| 127 | " bt 1b \n" \ | ||
| 128 | " cpwcr %0, cpcr1 \n" \ | ||
| 129 | : : "b" (cw) : "r7") | ||
| 130 | |||
| 131 | # define _FPU_GETFPSR(cw) __asm__ volatile ("1: cprcr %0, cpcr2 \n" \ | ||
| 132 | " btsti %0, 31 \n" \ | ||
| 133 | " bt 1b \n" \ | ||
| 134 | " cprcr %0, cpcr4\n" : "=b" (cw)) | ||
| 135 | |||
| 136 | # define _FPU_SETFPSR(cw) __asm__ volatile ("1: cprcr r7, cpcr2 \n" \ | ||
| 137 | " btsti r7, 31 \n" \ | ||
| 138 | " bt 1b \n" \ | ||
| 139 | " cpwcr %0, cpcr4 \n" \ | ||
| 140 | : : "b" (cw) : "r7") | ||
| 141 | # endif /* __CSKY__ != 2 */ | ||
| 142 | |||
| 143 | /* Default control word set at startup. */ | ||
| 144 | extern fpu_control_t __fpu_control; | ||
| 145 | |||
| 146 | #endif /* !__csky_soft_float__ */ | ||
| 147 | |||
| 148 | #endif /* fpu_control.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnueabihf/gnu/lib-names.h deleted-30| ... | @@ -1,30 +0,0 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | It defines macros to allow user program to find the shared | ||
| 3 | library files which come as part of GNU libc. */ | ||
| 4 | #ifndef __GNU_LIB_NAMES_H | ||
| 5 | #define __GNU_LIB_NAMES_H	1 | ||
| 6 | |||
| 7 | #define LD_LINUX_CSKYV2_HF_SO "ld-linux-cskyv2-hf.so.1" | ||
| 8 | #define LD_SO "ld-linux-cskyv2-hf.so.1" | ||
| 9 | #define LIBANL_SO "libanl.so.1" | ||
| 10 | #define LIBBROKENLOCALE_SO "libBrokenLocale.so.1" | ||
| 11 | #define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0" | ||
| 12 | #define LIBC_SO "libc.so.6" | ||
| 13 | #define LIBDL_SO "libdl.so.2" | ||
| 14 | #define LIBGCC_S_SO "libgcc_s.so.1" | ||
| 15 | #define LIBMVEC_SO "libmvec.so.1" | ||
| 16 | #define LIBM_SO "libm.so.6" | ||
| 17 | #define LIBNSL_SO "libnsl.so.1" | ||
| 18 | #define LIBNSS_COMPAT_SO "libnss_compat.so.2" | ||
| 19 | #define LIBNSS_DB_SO "libnss_db.so.2" | ||
| 20 | #define LIBNSS_DNS_SO "libnss_dns.so.2" | ||
| 21 | #define LIBNSS_FILES_SO "libnss_files.so.2" | ||
| 22 | #define LIBNSS_HESIOD_SO "libnss_hesiod.so.2" | ||
| 23 | #define LIBNSS_LDAP_SO "libnss_ldap.so.2" | ||
| 24 | #define LIBPTHREAD_SO "libpthread.so.0" | ||
| 25 | #define LIBRESOLV_SO "libresolv.so.2" | ||
| 26 | #define LIBRT_SO "librt.so.1" | ||
| 27 | #define LIBTHREAD_DB_SO "libthread_db.so.1" | ||
| 28 | #define LIBUTIL_SO "libutil.so.1" | ||
| 29 | |||
| 30 | #endif	/* gnu/lib-names.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnueabihf/gnu/stubs.h deleted-21| ... | @@ -1,21 +0,0 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | It defines a symbol `__stub_FUNCTION' for each function | ||
| 3 | in the C library which is a stub, meaning it will fail | ||
| 4 | every time called, usually setting errno to ENOSYS. */ | ||
| 5 | |||
| 6 | #ifdef _LIBC | ||
| 7 | #error Applications may not define the macro _LIBC | ||
| 8 | #endif | ||
| 9 | |||
| 10 | #define __stub___compat_bdflush | ||
| 11 | #define __stub___compat_create_module | ||
| 12 | #define __stub___compat_get_kernel_syms | ||
| 13 | #define __stub___compat_query_module | ||
| 14 | #define __stub___compat_uselib | ||
| 15 | #define __stub_chflags | ||
| 16 | #define __stub_fchflags | ||
| 17 | #define __stub_gtty | ||
| 18 | #define __stub_revoke | ||
| 19 | #define __stub_setlogin | ||
| 20 | #define __stub_sigreturn | ||
| 21 | #define __stub_stty | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnueabihf/sys/cachectl.h deleted-36| ... | @@ -1,36 +0,0 @@ | ||
| 1 | /* C-SKY cache flushing interface. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_CACHECTL_H | ||
| 20 | #define _SYS_CACHECTL_H 1 | ||
| 21 | |||
| 22 | #include <features.h> | ||
| 23 | |||
| 24 | /* Get the kernel definition for the op bits. */ | ||
| 25 | #include <asm/cachectl.h> | ||
| 26 | |||
| 27 | __BEGIN_DECLS | ||
| 28 | |||
| 29 | #ifdef __USE_MISC | ||
| 30 | extern int cacheflush (void *__addr, const int __nbytes, | ||
| 31 | 		 const int __op) __THROW; | ||
| 32 | #endif | ||
| 33 | |||
| 34 | __END_DECLS | ||
| 35 | |||
| 36 | #endif /* sys/cachectl.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnueabihf/sys/ucontext.h deleted-89| ... | @@ -1,89 +0,0 @@ | ||
| 1 | /* struct ucontext definition, C-SKY version. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_UCONTEXT_H | ||
| 20 | #define _SYS_UCONTEXT_H	1 | ||
| 21 | |||
| 22 | #include <features.h> | ||
| 23 | |||
| 24 | #include <bits/types/sigset_t.h> | ||
| 25 | #include <bits/types/stack_t.h> | ||
| 26 | |||
| 27 | typedef struct | ||
| 28 | { | ||
| 29 | unsigned long __tls; | ||
| 30 | unsigned long __lr; | ||
| 31 | unsigned long __pc; | ||
| 32 | unsigned long __sr; | ||
| 33 | unsigned long __usp; | ||
| 34 | |||
| 35 | /* | ||
| 36 | * a0, a1, a2, a3: | ||
| 37 | * abiv1: r2, r3, r4, r5 | ||
| 38 | * abiv2: r0, r1, r2, r3 | ||
| 39 | */ | ||
| 40 | |||
| 41 | unsigned long __orig_a0; | ||
| 42 | unsigned long __a0; | ||
| 43 | unsigned long __a1; | ||
| 44 | unsigned long __a2; | ||
| 45 | unsigned long __a3; | ||
| 46 | |||
| 47 | /* | ||
| 48 | * ABIV2: r4 ~ r13 | ||
| 49 | */ | ||
| 50 | unsigned long __regs[10]; | ||
| 51 | |||
| 52 | /* r16 ~ r30 */ | ||
| 53 | unsigned long __exregs[15]; | ||
| 54 | |||
| 55 | unsigned long __rhi; | ||
| 56 | unsigned long __rlo; | ||
| 57 | unsigned long __glibc_reserved; | ||
| 58 | } gregset_t; | ||
| 59 | |||
| 60 | typedef struct | ||
| 61 | { | ||
| 62 | unsigned long __vr[64]; | ||
| 63 | unsigned long __fcr; | ||
| 64 | unsigned long __fesr; | ||
| 65 | unsigned long __fid; | ||
| 66 | unsigned long __glibc_reserved; | ||
| 67 | } fpregset_t; | ||
| 68 | |||
| 69 | /* Context to describe whole processor state. */ | ||
| 70 | typedef struct | ||
| 71 | { | ||
| 72 | gregset_t __gregs; | ||
| 73 | fpregset_t __fpregs; | ||
| 74 | } mcontext_t; | ||
| 75 | |||
| 76 | /* Userlevel context. */ | ||
| 77 | typedef struct ucontext_t | ||
| 78 | { | ||
| 79 | unsigned long int __uc_flags; | ||
| 80 | struct ucontext_t *uc_link; | ||
| 81 | stack_t uc_stack; | ||
| 82 | mcontext_t uc_mcontext; | ||
| 83 | sigset_t uc_sigmask; | ||
| 84 | } ucontext_t; | ||
| 85 | |||
| 86 | #undef __ctx | ||
| 87 | |||
| 88 | |||
| 89 | #endif /* sys/ucontext.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/csky-linux-gnueabihf/sys/user.h deleted-23| ... | @@ -1,23 +0,0 @@ | ||
| 1 | /* This file is not used by C-SKY GDB. ptrace can use pt_regs definition | ||
| 2 | from linux kernel directly. | ||
| 3 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library. If not, see | ||
| 18 | <https://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifndef _SYS_USER_H | ||
| 21 | #define _SYS_USER_H 1 | ||
| 22 | |||
| 23 | #endif /* _SYS_USER_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch-linux-gnu/bits/endianness.h created+11| ... | @@ -0,0 +1,11 @@ | ||
| 1 | #ifndef _BITS_ENDIANNESS_H | ||
| 2 | #define _BITS_ENDIANNESS_H 1 | ||
| 3 | |||
| 4 | #ifndef _BITS_ENDIAN_H | ||
| 5 | #error "Never use <bits/endianness.h> directly; include <endian.h> instead." | ||
| 6 | #endif | ||
| 7 | |||
| 8 | /* LoongArch is little-endian. */ | ||
| 9 | #define __BYTE_ORDER __LITTLE_ENDIAN | ||
| 10 | |||
| 11 | #endif /* bits/endianness.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch-linux-gnu/bits/fcntl.h created+61| ... | @@ -0,0 +1,61 @@ | ||
| 1 | /* O_*, F_*, FD_* bit values for the generic Linux/LoongArch ABI. | ||
| 2 | Copyright (C) 2022-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _FCNTL_H | ||
| 20 | #error "Never use <bits/fcntl.h> directly; include <fcntl.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <bits/wordsize.h> | ||
| 24 | |||
| 25 | /* In 64-bit ISA files are always with 64bit off_t and F_*LK64 are the same as | ||
| 26 | non-64-bit versions. It will need to be revised for 128-bit. */ | ||
| 27 | #if __WORDSIZE == 64 | ||
| 28 | #define __O_LARGEFILE 0 | ||
| 29 | |||
| 30 | #define F_GETLK64 5 /* Get record locking info. */ | ||
| 31 | #define F_SETLK64 6 /* Set record locking info (non-blocking). */ | ||
| 32 | #define F_SETLKW64 7 /* Set record locking info (blocking). */ | ||
| 33 | #endif | ||
| 34 | |||
| 35 | struct flock | ||
| 36 | { | ||
| 37 | short int l_type; /* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK. */ | ||
| 38 | short int l_whence; /* Where `l_start' is relative to (like `lseek'). */ | ||
| 39 | #ifndef __USE_FILE_OFFSET64 | ||
| 40 | __off_t l_start; /* Offset where the lock begins. */ | ||
| 41 | __off_t l_len; /* Size of the locked area; zero means until EOF. */ | ||
| 42 | #else | ||
| 43 | __off64_t l_start; /* Offset where the lock begins. */ | ||
| 44 | __off64_t l_len; /* Size of the locked area; zero means until EOF. */ | ||
| 45 | #endif | ||
| 46 | __pid_t l_pid; /* Process holding the lock. */ | ||
| 47 | }; | ||
| 48 | |||
| 49 | #ifdef __USE_LARGEFILE64 | ||
| 50 | struct flock64 | ||
| 51 | { | ||
| 52 | short int l_type; /* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK. */ | ||
| 53 | short int l_whence; /* Where `l_start' is relative to (like `lseek'). */ | ||
| 54 | __off64_t l_start; /* Offset where the lock begins. */ | ||
| 55 | __off64_t l_len; /* Size of the locked area; zero means until EOF. */ | ||
| 56 | __pid_t l_pid; /* Process holding the lock. */ | ||
| 57 | }; | ||
| 58 | #endif | ||
| 59 | |||
| 60 | /* Include generic Linux declarations. */ | ||
| 61 | #include <bits/fcntl-linux.h> | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch-linux-gnu/bits/fenv.h created+90| ... | @@ -0,0 +1,90 @@ | ||
| 1 | /* Floating point environment. | ||
| 2 | Copyright (C) 2022-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _FENV_H | ||
| 20 | #error "Never use <bits/fenv.h> directly; include <fenv.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Define bits representing the exception. We use the bit positions | ||
| 24 | of the appropriate bits in the FPU control word. */ | ||
| 25 | enum | ||
| 26 | { | ||
| 27 | FE_INEXACT = | ||
| 28 | #define FE_INEXACT 0x010000 | ||
| 29 | FE_INEXACT, | ||
| 30 | FE_UNDERFLOW = | ||
| 31 | #define FE_UNDERFLOW 0x020000 | ||
| 32 | FE_UNDERFLOW, | ||
| 33 | FE_OVERFLOW = | ||
| 34 | #define FE_OVERFLOW 0x040000 | ||
| 35 | FE_OVERFLOW, | ||
| 36 | FE_DIVBYZERO = | ||
| 37 | #define FE_DIVBYZERO 0x080000 | ||
| 38 | FE_DIVBYZERO, | ||
| 39 | FE_INVALID = | ||
| 40 | #define FE_INVALID 0x100000 | ||
| 41 | FE_INVALID, | ||
| 42 | }; | ||
| 43 | |||
| 44 | #define FE_ALL_EXCEPT \ | ||
| 45 | (FE_INEXACT | FE_DIVBYZERO | FE_UNDERFLOW | FE_OVERFLOW | FE_INVALID) | ||
| 46 | |||
| 47 | /* The LoongArch FPU supports all of the four defined rounding modes. We | ||
| 48 | use again the bit positions in the FPU control word as the values | ||
| 49 | for the appropriate macros. */ | ||
| 50 | enum | ||
| 51 | { | ||
| 52 | FE_TONEAREST = | ||
| 53 | #define FE_TONEAREST 0x000 | ||
| 54 | FE_TONEAREST, | ||
| 55 | FE_TOWARDZERO = | ||
| 56 | #define FE_TOWARDZERO 0x100 | ||
| 57 | FE_TOWARDZERO, | ||
| 58 | FE_UPWARD = | ||
| 59 | #define FE_UPWARD 0x200 | ||
| 60 | FE_UPWARD, | ||
| 61 | FE_DOWNWARD = | ||
| 62 | #define FE_DOWNWARD 0x300 | ||
| 63 | FE_DOWNWARD | ||
| 64 | }; | ||
| 65 | |||
| 66 | /* Type representing exception flags. */ | ||
| 67 | typedef unsigned int fexcept_t; | ||
| 68 | |||
| 69 | /* Type representing floating-point environment. This function corresponds | ||
| 70 | to the layout of the block written by the `fstenv'. */ | ||
| 71 | typedef struct | ||
| 72 | { | ||
| 73 | unsigned int __fp_control_register; | ||
| 74 | } fenv_t; | ||
| 75 | |||
| 76 | /* If the default argument is used we use this value. */ | ||
| 77 | #define FE_DFL_ENV ((const fenv_t *) -1) | ||
| 78 | |||
| 79 | #ifdef __USE_GNU | ||
| 80 | /* Floating-point environment where none of the exception is masked. */ | ||
| 81 | #define FE_NOMASK_ENV ((const fenv_t *) -257) | ||
| 82 | #endif | ||
| 83 | |||
| 84 | #if __GLIBC_USE (IEC_60559_BFP_EXT_C23) | ||
| 85 | /* Type representing floating-point control modes. */ | ||
| 86 | typedef unsigned int femode_t; | ||
| 87 | |||
| 88 | /* Default floating-point control modes. */ | ||
| 89 | #define FE_DFL_MODE ((const femode_t *) -1L) | ||
| 90 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch-linux-gnu/bits/hwcap.h created+39| ... | @@ -0,0 +1,39 @@ | ||
| 1 | /* Defines for bits in AT_HWCAP. LoongArch64 Linux version. | ||
| 2 | Copyright (C) 2022-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <http://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #if !defined (_SYS_AUXV_H) | ||
| 20 | # error "Never include <bits/hwcap.h> directly; use <sys/auxv.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* The following must match the kernel's <asm/hwcap.h>. */ | ||
| 24 | /* HWCAP flags */ | ||
| 25 | #define HWCAP_LOONGARCH_CPUCFG (1 << 0) | ||
| 26 | #define HWCAP_LOONGARCH_LAM (1 << 1) | ||
| 27 | #define HWCAP_LOONGARCH_UAL (1 << 2) | ||
| 28 | #define HWCAP_LOONGARCH_FPU (1 << 3) | ||
| 29 | #define HWCAP_LOONGARCH_LSX (1 << 4) | ||
| 30 | #define HWCAP_LOONGARCH_LASX (1 << 5) | ||
| 31 | #define HWCAP_LOONGARCH_CRC32 (1 << 6) | ||
| 32 | #define HWCAP_LOONGARCH_COMPLEX (1 << 7) | ||
| 33 | #define HWCAP_LOONGARCH_CRYPTO (1 << 8) | ||
| 34 | #define HWCAP_LOONGARCH_LVZ (1 << 9) | ||
| 35 | #define HWCAP_LOONGARCH_LBT_X86 (1 << 10) | ||
| 36 | #define HWCAP_LOONGARCH_LBT_ARM (1 << 11) | ||
| 37 | #define HWCAP_LOONGARCH_LBT_MIPS (1 << 12) | ||
| 38 | #define HWCAP_LOONGARCH_PTW (1 << 13) | ||
| 39 | #define HWCAP_LOONGARCH_LSPW (1 << 14) | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch-linux-gnu/bits/link.h created+76| ... | @@ -0,0 +1,76 @@ | ||
| 1 | /* Machine-specific declarations for dynamic linker interface. | ||
| 2 | Copyright (C) 2022-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _LINK_H | ||
| 20 | #error "Never include <bits/link.h> directly; use <link.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef __loongarch_soft_float | ||
| 24 | typedef float La_loongarch_vr | ||
| 25 | __attribute__ ((__vector_size__ (16), __aligned__ (16))); | ||
| 26 | typedef float La_loongarch_xr | ||
| 27 | __attribute__ ((__vector_size__ (32), __aligned__ (16))); | ||
| 28 | |||
| 29 | typedef union | ||
| 30 | { | ||
| 31 | double fpreg[4]; | ||
| 32 | La_loongarch_vr vr[2]; | ||
| 33 | La_loongarch_xr xr[1]; | ||
| 34 | } La_loongarch_vector __attribute__ ((__aligned__ (16))); | ||
| 35 | #endif | ||
| 36 | |||
| 37 | typedef struct La_loongarch_regs | ||
| 38 | { | ||
| 39 | unsigned long int lr_reg[8]; /* a0 - a7 */ | ||
| 40 | #ifndef __loongarch_soft_float | ||
| 41 | La_loongarch_vector lr_vec[8]; /* fa0 - fa7 or vr0 - vr7 or xr0 - xr7*/ | ||
| 42 | #endif | ||
| 43 | unsigned long int lr_ra; | ||
| 44 | unsigned long int lr_sp; | ||
| 45 | } La_loongarch_regs; | ||
| 46 | |||
| 47 | /* Return values for calls from PLT on LoongArch. */ | ||
| 48 | typedef struct La_loongarch_retval | ||
| 49 | { | ||
| 50 | unsigned long int lrv_a0; | ||
| 51 | unsigned long int lrv_a1; | ||
| 52 | #ifndef __loongarch_soft_float | ||
| 53 | La_loongarch_vector lrv_vec0; | ||
| 54 | La_loongarch_vector lrv_vec1; | ||
| 55 | #endif | ||
| 56 | } La_loongarch_retval; | ||
| 57 | |||
| 58 | __BEGIN_DECLS | ||
| 59 | |||
| 60 | extern ElfW (Addr) la_loongarch_gnu_pltenter (ElfW (Sym) *__sym, | ||
| 61 | 					 unsigned int __ndx, | ||
| 62 | 					 uintptr_t *__refcook, | ||
| 63 | 					 uintptr_t *__defcook, | ||
| 64 | 					 La_loongarch_regs *__regs, | ||
| 65 | 					 unsigned int *__flags, | ||
| 66 | 					 const char *__symname, | ||
| 67 | 					 long int *__framesizep); | ||
| 68 | extern unsigned int la_loongarch_gnu_pltexit (ElfW (Sym) *__sym, | ||
| 69 | 					 unsigned int __ndx, | ||
| 70 | 					 uintptr_t *__refcook, | ||
| 71 | 					 uintptr_t *__defcook, | ||
| 72 | 					 const La_loongarch_regs *__inregs, | ||
| 73 | 					 La_loongarch_retval *__outregs, | ||
| 74 | 					 const char *__symname); | ||
| 75 | |||
| 76 | __END_DECLS | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch-linux-gnu/bits/link_lavcurrent.h created+25| ... | @@ -0,0 +1,25 @@ | ||
| 1 | /* Data structure for communication from the run-time dynamic linker for | ||
| 2 | loaded ELF shared objects. LAV_CURRENT definition. | ||
| 3 | Copyright (C) 2023-2025 Free Software Foundation, Inc. | ||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library; if not, see | ||
| 18 | <https://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifndef _LINK_H | ||
| 21 | # error "Never include <bits/link_lavcurrent.h> directly; use <link.h> instead." | ||
| 22 | #endif | ||
| 23 | |||
| 24 | /* Version numbers for la_version handshake interface. */ | ||
| 25 | #define LAV_CURRENT	3 | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch-linux-gnu/bits/long-double.h created+21| ... | @@ -0,0 +1,21 @@ | ||
| 1 | /* Properties of long double type. ldbl-128 version. | ||
| 2 | Copyright (C) 2016-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* long double is distinct from double, so there is nothing to | ||
| 20 | define here. */ | ||
| 21 | #define __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI 0 | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch-linux-gnu/bits/procfs.h created+52| ... | @@ -0,0 +1,52 @@ | ||
| 1 | /* Types for registers for sys/procfs.h. | ||
| 2 | Copyright (C) 2022-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library. If not, see | ||
| 18 | <https://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifndef _SYS_PROCFS_H | ||
| 21 | # error "Never include <bits/procfs.h> directly; use <sys/procfs.h> instead." | ||
| 22 | #endif | ||
| 23 | |||
| 24 | /* Type for a general-purpose register. */ | ||
| 25 | typedef __uint64_t elf_greg_t; | ||
| 26 | |||
| 27 | /* And the whole bunch of them. We could have used `struct | ||
| 28 | pt_regs' directly in the typedef, but tradition says that | ||
| 29 | the register set is an array, which does have some peculiar | ||
| 30 | semantics, so leave it that way. */ | ||
| 31 | #define ELF_NGREG (sizeof (struct user_regs_struct) / sizeof (elf_greg_t)) | ||
| 32 | typedef elf_greg_t elf_gregset_t[ELF_NGREG]; | ||
| 33 | |||
| 34 | #define ELF_NFPREG 34 /* 32 FPRs + 8-byte byte-vec for fcc + 4-byte FCR */ | ||
| 35 | typedef union | ||
| 36 | { | ||
| 37 | double d; | ||
| 38 | float f; | ||
| 39 | } elf_fpreg_t; | ||
| 40 | typedef elf_fpreg_t elf_fpregset_t[ELF_NFPREG]; | ||
| 41 | |||
| 42 | typedef union | ||
| 43 | { | ||
| 44 | double d[2]; | ||
| 45 | float f[4]; | ||
| 46 | } __attribute__ ((__aligned__ (16))) elf_lsxregset_t[32]; | ||
| 47 | |||
| 48 | typedef union | ||
| 49 | { | ||
| 50 | double d[4]; | ||
| 51 | float f[8]; | ||
| 52 | } __attribute__ ((__aligned__ (32))) elf_lasxregset_t[32]; | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch-linux-gnu/bits/pthread_stack_min.h created+20| ... | @@ -0,0 +1,20 @@ | ||
| 1 | /* Definition of PTHREAD_STACK_MIN. LoongArch Linux version. | ||
| 2 | Copyright (C) 2022-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public License as | ||
| 7 | published by the Free Software Foundation; either version 2.1 of the | ||
| 8 | License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* Minimum size for a thread. At least two pages with 64k pages. */ | ||
| 20 | #define PTHREAD_STACK_MIN	131072 | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch-linux-gnu/bits/rseq.h created+36| ... | @@ -0,0 +1,36 @@ | ||
| 1 | /* Restartable Sequences Linux LoongArch architecture header. | ||
| 2 | Copyright (C) 2024-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_RSEQ_H | ||
| 19 | # error "Never use <bits/rseq.h> directly; include <sys/rseq.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* RSEQ_SIG is a signature required before each abort handler code. | ||
| 23 | |||
| 24 | It is a 32-bit value that maps to actual architecture code compiled | ||
| 25 | into applications and libraries. It needs to be defined for each | ||
| 26 | architecture. When choosing this value, it needs to be taken into | ||
| 27 | account that generating invalid instructions may have ill effects on | ||
| 28 | tools like objdump, and may also have impact on the CPU speculative | ||
| 29 | execution efficiency in some cases. | ||
| 30 | |||
| 31 | RSEQ_SIG uses the following break instruction: | ||
| 32 | |||
| 33 | 0x002a0010	break	0x10 | ||
| 34 | */ | ||
| 35 | |||
| 36 | #define RSEQ_SIG 0x002a0010 | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch-linux-gnu/bits/setjmp.h created+42| ... | @@ -0,0 +1,42 @@ | ||
| 1 | /* Define the machine-dependent type `jmp_buf'. | ||
| 2 | Copyright (C) 2022-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _LOONGARCH_BITS_SETJMP_H | ||
| 20 | #define _LOONGARCH_BITS_SETJMP_H | ||
| 21 | |||
| 22 | typedef struct __jmp_buf_internal_tag | ||
| 23 | { | ||
| 24 | /* Program counter. */ | ||
| 25 | long int __pc; | ||
| 26 | /* Stack pointer. */ | ||
| 27 | long int __sp; | ||
| 28 | /* Reserved */ | ||
| 29 | long int __x; | ||
| 30 | /* Frame pointer. */ | ||
| 31 | long int __fp; | ||
| 32 | /* Callee-saved registers. */ | ||
| 33 | long int __regs[9]; | ||
| 34 | |||
| 35 | #ifndef __loongarch_soft_float | ||
| 36 | /* Callee-saved floating point registers. */ | ||
| 37 | double __fpregs[8]; | ||
| 38 | #endif | ||
| 39 | |||
| 40 | } __jmp_buf[1]; | ||
| 41 | |||
| 42 | #endif /* _LOONGARCH_BITS_SETJMP_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch-linux-gnu/bits/shmlba.h created+24| ... | @@ -0,0 +1,24 @@ | ||
| 1 | /* Define SHMLBA. LoongArch version. | ||
| 2 | Copyright (C) 2023-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SHM_H | ||
| 20 | # error "Never use <bits/shmlba.h> directly; include <sys/shm.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Segment low boundary address multiple. */ | ||
| 24 | #define SHMLBA		0x10000 | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch-linux-gnu/bits/sigstack.h created+32| ... | @@ -0,0 +1,32 @@ | ||
| 1 | /* sigstack, sigaltstack definitions. | ||
| 2 | Copyright (C) 2022-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_SIGSTACK_H | ||
| 20 | #define _BITS_SIGSTACK_H 1 | ||
| 21 | |||
| 22 | #if !defined _SIGNAL_H && !defined _SYS_UCONTEXT_H | ||
| 23 | # error "Never include this file directly. Use <signal.h> instead" | ||
| 24 | #endif | ||
| 25 | |||
| 26 | /* Minimum stack size for a signal handler. */ | ||
| 27 | #define MINSIGSTKSZ	4096 | ||
| 28 | |||
| 29 | /* System default stack size. */ | ||
| 30 | #define SIGSTKSZ	16384 | ||
| 31 | |||
| 32 | #endif /* bits/sigstack.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch-linux-gnu/bits/struct_stat.h created+127| ... | @@ -0,0 +1,127 @@ | ||
| 1 | /* Definition for struct stat. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #if !defined _SYS_STAT_H && !defined _FCNTL_H | ||
| 20 | # error "Never include <bits/struct_stat.h> directly; use <sys/stat.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef _BITS_STRUCT_STAT_H | ||
| 24 | #define _BITS_STRUCT_STAT_H	1 | ||
| 25 | |||
| 26 | #include <bits/endian.h> | ||
| 27 | #include <bits/wordsize.h> | ||
| 28 | |||
| 29 | #if defined __USE_FILE_OFFSET64 | ||
| 30 | # define __field64(type, type64, name) type64 name | ||
| 31 | #elif __WORDSIZE == 64 || defined __INO_T_MATCHES_INO64_T | ||
| 32 | # if defined __INO_T_MATCHES_INO64_T && !defined __OFF_T_MATCHES_OFF64_T | ||
| 33 | # error "ino_t and off_t must both be the same type" | ||
| 34 | # endif | ||
| 35 | # define __field64(type, type64, name) type name | ||
| 36 | #elif __BYTE_ORDER == __LITTLE_ENDIAN | ||
| 37 | # define __field64(type, type64, name) \ | ||
| 38 | type name __attribute__((__aligned__ (__alignof__ (type64)))); int __##name##_pad | ||
| 39 | #else | ||
| 40 | # define __field64(type, type64, name) \ | ||
| 41 | int __##name##_pad __attribute__((__aligned__ (__alignof__ (type64)))); type name | ||
| 42 | #endif | ||
| 43 | |||
| 44 | struct stat | ||
| 45 | { | ||
| 46 | __dev_t st_dev;		/* Device. */ | ||
| 47 | __field64(__ino_t, __ino64_t, st_ino); /* File serial number. */ | ||
| 48 | __mode_t st_mode;		/* File mode. */ | ||
| 49 | __nlink_t st_nlink;		/* Link count. */ | ||
| 50 | __uid_t st_uid;		/* User ID of the file's owner.	*/ | ||
| 51 | __gid_t st_gid;		/* Group ID of the file's group.*/ | ||
| 52 | __dev_t st_rdev;		/* Device number, if device. */ | ||
| 53 | __dev_t __pad1; | ||
| 54 | __field64(__off_t, __off64_t, st_size); /* Size of file, in bytes. */ | ||
| 55 | __blksize_t st_blksize;	/* Optimal block size for I/O. */ | ||
| 56 | int __pad2; | ||
| 57 | __field64(__blkcnt_t, __blkcnt64_t, st_blocks); /* 512-byte blocks */ | ||
| 58 | #ifdef __USE_XOPEN2K8 | ||
| 59 | /* Nanosecond resolution timestamps are stored in a format | ||
| 60 | equivalent to 'struct timespec'. This is the type used | ||
| 61 | whenever possible but the Unix namespace rules do not allow the | ||
| 62 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 63 | Therefore we have to handle the use of this header in strictly | ||
| 64 | standard-compliant sources special. */ | ||
| 65 | struct timespec st_atim;		/* Time of last access. */ | ||
| 66 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 67 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 68 | # define st_atime st_atim.tv_sec	/* Backward compatibility. */ | ||
| 69 | # define st_mtime st_mtim.tv_sec | ||
| 70 | # define st_ctime st_ctim.tv_sec | ||
| 71 | #else | ||
| 72 | __time_t st_atime;			/* Time of last access. */ | ||
| 73 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 74 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 75 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 76 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 77 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 78 | #endif | ||
| 79 | int __glibc_reserved[2]; | ||
| 80 | }; | ||
| 81 | |||
| 82 | #undef __field64 | ||
| 83 | |||
| 84 | #ifdef __USE_LARGEFILE64 | ||
| 85 | struct stat64 | ||
| 86 | { | ||
| 87 | __dev_t st_dev;		/* Device. */ | ||
| 88 | __ino64_t st_ino;		/* File serial number.	*/ | ||
| 89 | __mode_t st_mode;		/* File mode. */ | ||
| 90 | __nlink_t st_nlink;		/* Link count. */ | ||
| 91 | __uid_t st_uid;		/* User ID of the file's owner.	*/ | ||
| 92 | __gid_t st_gid;		/* Group ID of the file's group.*/ | ||
| 93 | __dev_t st_rdev;		/* Device number, if device. */ | ||
| 94 | __dev_t __pad1; | ||
| 95 | __off64_t st_size;		/* Size of file, in bytes. */ | ||
| 96 | __blksize_t st_blksize;	/* Optimal block size for I/O. */ | ||
| 97 | int __pad2; | ||
| 98 | __blkcnt64_t st_blocks;	/* Nr. 512-byte blocks allocated. */ | ||
| 99 | #ifdef __USE_XOPEN2K8 | ||
| 100 | /* Nanosecond resolution timestamps are stored in a format | ||
| 101 | equivalent to 'struct timespec'. This is the type used | ||
| 102 | whenever possible but the Unix namespace rules do not allow the | ||
| 103 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 104 | Therefore we have to handle the use of this header in strictly | ||
| 105 | standard-compliant sources special. */ | ||
| 106 | struct timespec st_atim;		/* Time of last access. */ | ||
| 107 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 108 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 109 | #else | ||
| 110 | __time_t st_atime;			/* Time of last access. */ | ||
| 111 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 112 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 113 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 114 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 115 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 116 | #endif | ||
| 117 | int __glibc_reserved[2]; | ||
| 118 | }; | ||
| 119 | #endif | ||
| 120 | |||
| 121 | /* Tell code we have these members. */ | ||
| 122 | #define	_STATBUF_ST_BLKSIZE | ||
| 123 | #define _STATBUF_ST_RDEV | ||
| 124 | /* Nanosecond resolution time values are supported. */ | ||
| 125 | #define _STATBUF_ST_NSEC | ||
| 126 | |||
| 127 | #endif /* _BITS_STRUCT_STAT_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch-linux-gnu/bits/timesize.h created+20| ... | @@ -0,0 +1,20 @@ | ||
| 1 | /* Bit size of the time_t type at glibc build time, general case. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* Size in bits of the 'time_t' type of the default ABI. */ | ||
| 20 | #define __TIMESIZE	64 | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch-linux-gnu/bits/wordsize.h created+19| ... | @@ -0,0 +1,19 @@ | ||
| 1 | /* Copyright (C) 1999-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #define __WORDSIZE			64 | ||
| 19 | #define __WORDSIZE_TIME64_COMPAT32	0 | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch-linux-gnu/fpu_control.h created+119| ... | @@ -0,0 +1,119 @@ | ||
| 1 | /* FPU control word bits. | ||
| 2 | Copyright (C) 2022-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _FPU_CONTROL_H | ||
| 20 | #define _FPU_CONTROL_H | ||
| 21 | |||
| 22 | /* LoongArch FPU floating point control register bits. | ||
| 23 | * | ||
| 24 | * 31-29 -> reserved (read as 0, can not changed by software) | ||
| 25 | * 28 -> cause bit for invalid exception | ||
| 26 | * 27 -> cause bit for division by zero exception | ||
| 27 | * 26 -> cause bit for overflow exception | ||
| 28 | * 25 -> cause bit for underflow exception | ||
| 29 | * 24 -> cause bit for inexact exception | ||
| 30 | * 23-21 -> reserved (read as 0, can not changed by software) | ||
| 31 | * 20 -> flag invalid exception | ||
| 32 | * 19 -> flag division by zero exception | ||
| 33 | * 18 -> flag overflow exception | ||
| 34 | * 17 -> flag underflow exception | ||
| 35 | * 16 -> flag inexact exception | ||
| 36 | * 9-8 -> rounding control | ||
| 37 | * 7-5 -> reserved (read as 0, can not changed by software) | ||
| 38 | * 4 -> enable exception for invalid exception | ||
| 39 | * 3 -> enable exception for division by zero exception | ||
| 40 | * 2 -> enable exception for overflow exception | ||
| 41 | * 1 -> enable exception for underflow exception | ||
| 42 | * 0 -> enable exception for inexact exception | ||
| 43 | * | ||
| 44 | * | ||
| 45 | * Rounding Control: | ||
| 46 | * 00 - rounding ties to even (RNE) | ||
| 47 | * 01 - rounding toward zero (RZ) | ||
| 48 | * 10 - rounding (up) toward plus infinity (RP) | ||
| 49 | * 11 - rounding (down) toward minus infinity (RM) | ||
| 50 | */ | ||
| 51 | |||
| 52 | #include <features.h> | ||
| 53 | |||
| 54 | #ifdef __loongarch_soft_float | ||
| 55 | |||
| 56 | #define _FPU_RESERVED 0xffffffff | ||
| 57 | #define _FPU_DEFAULT 0x00000000 | ||
| 58 | typedef unsigned int fpu_control_t; | ||
| 59 | #define _FPU_GETCW(cw) (cw) = 0 | ||
| 60 | #define _FPU_SETCW(cw) (void) (cw) | ||
| 61 | extern fpu_control_t __fpu_control; | ||
| 62 | |||
| 63 | #else /* __loongarch_soft_float */ | ||
| 64 | |||
| 65 | /* Masks for interrupts. */ | ||
| 66 | #define _FPU_MASK_V 0x10 /* Invalid operation */ | ||
| 67 | #define _FPU_MASK_Z 0x08 /* Division by zero */ | ||
| 68 | #define _FPU_MASK_O 0x04 /* Overflow */ | ||
| 69 | #define _FPU_MASK_U 0x02 /* Underflow */ | ||
| 70 | #define _FPU_MASK_I 0x01 /* Inexact operation */ | ||
| 71 | |||
| 72 | /* Flush denormalized numbers to zero. */ | ||
| 73 | #define _FPU_FLUSH_TZ 0x1000000 | ||
| 74 | |||
| 75 | /* Rounding control. */ | ||
| 76 | #define _FPU_RC_NEAREST 0x000 /* RECOMMENDED */ | ||
| 77 | #define _FPU_RC_ZERO 0x100 | ||
| 78 | #define _FPU_RC_UP 0x200 | ||
| 79 | #define _FPU_RC_DOWN 0x300 | ||
| 80 | /* Mask for rounding control. */ | ||
| 81 | #define _FPU_RC_MASK 0x300 | ||
| 82 | |||
| 83 | #define _FPU_RESERVED 0x0 | ||
| 84 | |||
| 85 | #define _FPU_DEFAULT 0x0 | ||
| 86 | #define _FPU_IEEE 0x1F | ||
| 87 | |||
| 88 | /* Type of the control word. */ | ||
| 89 | typedef unsigned int fpu_control_t __attribute__ ((__mode__ (__SI__))); | ||
| 90 | |||
| 91 | /* Macros for accessing the hardware control word. */ | ||
| 92 | extern fpu_control_t __loongarch_fpu_getcw (void) __THROW; | ||
| 93 | extern void __loongarch_fpu_setcw (fpu_control_t) __THROW; | ||
| 94 | #define _FPU_GETCW(cw) __asm__ volatile ("movfcsr2gr %0,$fcsr0" : "=r"(cw)) | ||
| 95 | #define _FPU_SETCW(cw) __asm__ volatile ("movgr2fcsr $fcsr0,%0" : : "r"(cw)) | ||
| 96 | |||
| 97 | /* Default control word set at startup. */ | ||
| 98 | extern fpu_control_t __fpu_control; | ||
| 99 | |||
| 100 | # define _FCLASS_SNAN (1 << 0) | ||
| 101 | # define _FCLASS_QNAN (1 << 1) | ||
| 102 | # define _FCLASS_MINF (1 << 2) | ||
| 103 | # define _FCLASS_MNORM (1 << 3) | ||
| 104 | # define _FCLASS_MSUBNORM (1 << 4) | ||
| 105 | # define _FCLASS_MZERO (1 << 5) | ||
| 106 | # define _FCLASS_PINF (1 << 6) | ||
| 107 | # define _FCLASS_PNORM (1 << 7) | ||
| 108 | # define _FCLASS_PSUBNORM (1 << 8) | ||
| 109 | # define _FCLASS_PZERO (1 << 9) | ||
| 110 | |||
| 111 | # define _FCLASS_ZERO (_FCLASS_MZERO | _FCLASS_PZERO) | ||
| 112 | # define _FCLASS_SUBNORM (_FCLASS_MSUBNORM | _FCLASS_PSUBNORM) | ||
| 113 | # define _FCLASS_NORM (_FCLASS_MNORM | _FCLASS_PNORM) | ||
| 114 | # define _FCLASS_INF (_FCLASS_MINF | _FCLASS_PINF) | ||
| 115 | # define _FCLASS_NAN (_FCLASS_SNAN | _FCLASS_QNAN) | ||
| 116 | |||
| 117 | #endif /* __loongarch_soft_float */ | ||
| 118 | |||
| 119 | #endif /* fpu_control.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch-linux-gnu/gnu/lib-names.h created+16| ... | @@ -0,0 +1,16 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | It defines macros to allow user program to find the shared | ||
| 3 | library files which come as part of GNU libc. */ | ||
| 4 | #ifndef __GNU_LIB_NAMES_H | ||
| 5 | #define __GNU_LIB_NAMES_H	1 | ||
| 6 | |||
| 7 | #include <bits/wordsize.h> | ||
| 8 | |||
| 9 | #if __WORDSIZE == 64 && defined __loongarch_soft_float | ||
| 10 | # include <gnu/lib-names-lp64s.h> | ||
| 11 | #endif | ||
| 12 | #if __WORDSIZE == 64 && defined __loongarch_double_float | ||
| 13 | # include <gnu/lib-names-lp64d.h> | ||
| 14 | #endif | ||
| 15 | |||
| 16 | #endif	/* gnu/lib-names.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch-linux-gnu/gnu/stubs-lp64s.h created+38| ... | @@ -0,0 +1,38 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | It defines a symbol `__stub_FUNCTION' for each function | ||
| 3 | in the C library which is a stub, meaning it will fail | ||
| 4 | every time called, usually setting errno to ENOSYS. */ | ||
| 5 | |||
| 6 | #ifdef _LIBC | ||
| 7 | #error Applications may not define the macro _LIBC | ||
| 8 | #endif | ||
| 9 | |||
| 10 | #define __stub___compat_bdflush | ||
| 11 | #define __stub___compat_create_module | ||
| 12 | #define __stub___compat_get_kernel_syms | ||
| 13 | #define __stub___compat_query_module | ||
| 14 | #define __stub___compat_uselib | ||
| 15 | #define __stub_chflags | ||
| 16 | #define __stub_fchflags | ||
| 17 | #define __stub_feclearexcept | ||
| 18 | #define __stub_fedisableexcept | ||
| 19 | #define __stub_feenableexcept | ||
| 20 | #define __stub_fegetenv | ||
| 21 | #define __stub_fegetexcept | ||
| 22 | #define __stub_fegetexceptflag | ||
| 23 | #define __stub_fegetmode | ||
| 24 | #define __stub_fegetround | ||
| 25 | #define __stub_feholdexcept | ||
| 26 | #define __stub_feraiseexcept | ||
| 27 | #define __stub_fesetenv | ||
| 28 | #define __stub_fesetexcept | ||
| 29 | #define __stub_fesetexceptflag | ||
| 30 | #define __stub_fesetmode | ||
| 31 | #define __stub_fesetround | ||
| 32 | #define __stub_fetestexcept | ||
| 33 | #define __stub_feupdateenv | ||
| 34 | #define __stub_gtty | ||
| 35 | #define __stub_revoke | ||
| 36 | #define __stub_setlogin | ||
| 37 | #define __stub_sigreturn | ||
| 38 | #define __stub_stty | ||
lib/libc/include/loongarch-linux-gnu/gnu/stubs.h created+12| ... | @@ -0,0 +1,12 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | This file selects the right generated file of `__stub_FUNCTION' macros | ||
| 3 | based on the architecture being compiled for. */ | ||
| 4 | |||
| 5 | #include <bits/wordsize.h> | ||
| 6 | |||
| 7 | #if __WORDSIZE == 64 && defined __loongarch_soft_float | ||
| 8 | # include <gnu/stubs-lp64s.h> | ||
| 9 | #endif | ||
| 10 | #if __WORDSIZE == 64 && defined __loongarch_double_float | ||
| 11 | # include <gnu/stubs-lp64d.h> | ||
| 12 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch-linux-gnu/ieee754.h created+170| ... | @@ -0,0 +1,170 @@ | ||
| 1 | /* Copyright (C) 1992-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _IEEE754_H | ||
| 19 | #define _IEEE754_H 1 | ||
| 20 | |||
| 21 | #include <features.h> | ||
| 22 | |||
| 23 | #include <bits/endian.h> | ||
| 24 | |||
| 25 | __BEGIN_DECLS | ||
| 26 | |||
| 27 | union ieee754_float | ||
| 28 | { | ||
| 29 | float f; | ||
| 30 | |||
| 31 | /* This is the IEEE 754 single-precision format. */ | ||
| 32 | struct | ||
| 33 | { | ||
| 34 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 35 | 	unsigned int negative:1; | ||
| 36 | 	unsigned int exponent:8; | ||
| 37 | 	unsigned int mantissa:23; | ||
| 38 | #endif				/* Big endian. */ | ||
| 39 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 40 | 	unsigned int mantissa:23; | ||
| 41 | 	unsigned int exponent:8; | ||
| 42 | 	unsigned int negative:1; | ||
| 43 | #endif				/* Little endian. */ | ||
| 44 | } ieee; | ||
| 45 | |||
| 46 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 47 | struct | ||
| 48 | { | ||
| 49 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 50 | 	unsigned int negative:1; | ||
| 51 | 	unsigned int exponent:8; | ||
| 52 | 	unsigned int quiet_nan:1; | ||
| 53 | 	unsigned int mantissa:22; | ||
| 54 | #endif				/* Big endian. */ | ||
| 55 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 56 | 	unsigned int mantissa:22; | ||
| 57 | 	unsigned int quiet_nan:1; | ||
| 58 | 	unsigned int exponent:8; | ||
| 59 | 	unsigned int negative:1; | ||
| 60 | #endif				/* Little endian. */ | ||
| 61 | } ieee_nan; | ||
| 62 | }; | ||
| 63 | |||
| 64 | #define IEEE754_FLOAT_BIAS	0x7f /* Added to exponent. */ | ||
| 65 | |||
| 66 | |||
| 67 | union ieee754_double | ||
| 68 | { | ||
| 69 | double d; | ||
| 70 | |||
| 71 | /* This is the IEEE 754 double-precision format. */ | ||
| 72 | struct | ||
| 73 | { | ||
| 74 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 75 | 	unsigned int negative:1; | ||
| 76 | 	unsigned int exponent:11; | ||
| 77 | 	/* Together these comprise the mantissa. */ | ||
| 78 | 	unsigned int mantissa0:20; | ||
| 79 | 	unsigned int mantissa1:32; | ||
| 80 | #endif				/* Big endian. */ | ||
| 81 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 82 | 	/* Together these comprise the mantissa. */ | ||
| 83 | 	unsigned int mantissa1:32; | ||
| 84 | 	unsigned int mantissa0:20; | ||
| 85 | 	unsigned int exponent:11; | ||
| 86 | 	unsigned int negative:1; | ||
| 87 | #endif				/* Little endian. */ | ||
| 88 | } ieee; | ||
| 89 | |||
| 90 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 91 | struct | ||
| 92 | { | ||
| 93 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 94 | 	unsigned int negative:1; | ||
| 95 | 	unsigned int exponent:11; | ||
| 96 | 	unsigned int quiet_nan:1; | ||
| 97 | 	/* Together these comprise the mantissa. */ | ||
| 98 | 	unsigned int mantissa0:19; | ||
| 99 | 	unsigned int mantissa1:32; | ||
| 100 | #else | ||
| 101 | 	/* Together these comprise the mantissa. */ | ||
| 102 | 	unsigned int mantissa1:32; | ||
| 103 | 	unsigned int mantissa0:19; | ||
| 104 | 	unsigned int quiet_nan:1; | ||
| 105 | 	unsigned int exponent:11; | ||
| 106 | 	unsigned int negative:1; | ||
| 107 | #endif | ||
| 108 | } ieee_nan; | ||
| 109 | }; | ||
| 110 | |||
| 111 | #define IEEE754_DOUBLE_BIAS	0x3ff /* Added to exponent. */ | ||
| 112 | |||
| 113 | |||
| 114 | union ieee854_long_double | ||
| 115 | { | ||
| 116 | long double d; | ||
| 117 | |||
| 118 | /* This is the IEEE 854 quad-precision format. */ | ||
| 119 | struct | ||
| 120 | { | ||
| 121 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 122 | 	unsigned int negative:1; | ||
| 123 | 	unsigned int exponent:15; | ||
| 124 | 	/* Together these comprise the mantissa. */ | ||
| 125 | 	unsigned int mantissa0:16; | ||
| 126 | 	unsigned int mantissa1:32; | ||
| 127 | 	unsigned int mantissa2:32; | ||
| 128 | 	unsigned int mantissa3:32; | ||
| 129 | #endif				/* Big endian. */ | ||
| 130 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 131 | 	/* Together these comprise the mantissa. */ | ||
| 132 | 	unsigned int mantissa3:32; | ||
| 133 | 	unsigned int mantissa2:32; | ||
| 134 | 	unsigned int mantissa1:32; | ||
| 135 | 	unsigned int mantissa0:16; | ||
| 136 | 	unsigned int exponent:15; | ||
| 137 | 	unsigned int negative:1; | ||
| 138 | #endif				/* Little endian. */ | ||
| 139 | } ieee; | ||
| 140 | |||
| 141 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 142 | struct | ||
| 143 | { | ||
| 144 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 145 | 	unsigned int negative:1; | ||
| 146 | 	unsigned int exponent:15; | ||
| 147 | 	unsigned int quiet_nan:1; | ||
| 148 | 	/* Together these comprise the mantissa. */ | ||
| 149 | 	unsigned int mantissa0:15; | ||
| 150 | 	unsigned int mantissa1:32; | ||
| 151 | 	unsigned int mantissa2:32; | ||
| 152 | 	unsigned int mantissa3:32; | ||
| 153 | #else | ||
| 154 | 	/* Together these comprise the mantissa. */ | ||
| 155 | 	unsigned int mantissa3:32; | ||
| 156 | 	unsigned int mantissa2:32; | ||
| 157 | 	unsigned int mantissa1:32; | ||
| 158 | 	unsigned int mantissa0:15; | ||
| 159 | 	unsigned int quiet_nan:1; | ||
| 160 | 	unsigned int exponent:15; | ||
| 161 | 	unsigned int negative:1; | ||
| 162 | #endif | ||
| 163 | } ieee_nan; | ||
| 164 | }; | ||
| 165 | |||
| 166 | #define IEEE854_LONG_DOUBLE_BIAS 0x3fff /* Added to exponent. */ | ||
| 167 | |||
| 168 | __END_DECLS | ||
| 169 | |||
| 170 | #endif /* ieee754.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch-linux-gnu/sys/asm.h created+78| ... | @@ -0,0 +1,78 @@ | ||
| 1 | /* Miscellaneous macros. | ||
| 2 | Copyright (C) 2022-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_ASM_H | ||
| 20 | #define _SYS_ASM_H | ||
| 21 | |||
| 22 | #include <sys/regdef.h> | ||
| 23 | #include <sysdeps/generic/sysdep.h> | ||
| 24 | |||
| 25 | /* Macros to handle different pointer/register sizes for 32/64-bit code. */ | ||
| 26 | #define SZREG 8 | ||
| 27 | #define SZFREG 8 | ||
| 28 | #define SZVREG 16 | ||
| 29 | #define SZXREG 32 | ||
| 30 | #define REG_L ld.d | ||
| 31 | #define REG_S st.d | ||
| 32 | #define SRLI srli.d | ||
| 33 | #define SLLI slli.d | ||
| 34 | #define ADDI addi.d | ||
| 35 | #define ADD add.d | ||
| 36 | #define SUB sub.d | ||
| 37 | #define BSTRINS bstrins.d | ||
| 38 | #define LI li.d | ||
| 39 | #define FREG_L fld.d | ||
| 40 | #define FREG_S fst.d | ||
| 41 | |||
| 42 | /* Declare leaf routine. | ||
| 43 | The usage of macro LEAF/ENTRY is as follows: | ||
| 44 | 1. LEAF(fcn) -- the align value of fcn is .align 3 (default value) | ||
| 45 | 2. LEAF(fcn, 6) -- the align value of fcn is .align 6 | ||
| 46 | */ | ||
| 47 | #define LEAF_IMPL(symbol, aln, ...)	\ | ||
| 48 | 	.text;				\ | ||
| 49 | 	.globl symbol;			\ | ||
| 50 | 	.align aln;			\ | ||
| 51 | 	.type symbol, @function;	\ | ||
| 52 | symbol: \ | ||
| 53 | 	cfi_startproc; | ||
| 54 | |||
| 55 | |||
| 56 | #define LEAF(...) LEAF_IMPL(__VA_ARGS__, 3) | ||
| 57 | #define ENTRY(...) LEAF(__VA_ARGS__) | ||
| 58 | |||
| 59 | #define	LEAF_NO_ALIGN(symbol)		\ | ||
| 60 | 	.text;				\ | ||
| 61 | 	.globl	symbol;			\ | ||
| 62 | 	.type	symbol, @function;	\ | ||
| 63 | symbol: \ | ||
| 64 | 	cfi_startproc; | ||
| 65 | |||
| 66 | #define ENTRY_NO_ALIGN(symbol) LEAF_NO_ALIGN(symbol) | ||
| 67 | |||
| 68 | |||
| 69 | /* Mark end of function. */ | ||
| 70 | #undef END | ||
| 71 | #define END(function) \ | ||
| 72 | cfi_endproc; \ | ||
| 73 | .size function, .- function; | ||
| 74 | |||
| 75 | /* Stack alignment. */ | ||
| 76 | #define ALMASK ~15 | ||
| 77 | |||
| 78 | #endif /* sys/asm.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch-linux-gnu/sys/ucontext.h created+64| ... | @@ -0,0 +1,64 @@ | ||
| 1 | /* struct ucontext definition. | ||
| 2 | Copyright (C) 2022-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library. If not, see | ||
| 18 | <https://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | /* Don't rely on this, the interface is currently messed up and may need to | ||
| 21 | be broken to be fixed. */ | ||
| 22 | #ifndef _SYS_UCONTEXT_H | ||
| 23 | #define _SYS_UCONTEXT_H 1 | ||
| 24 | |||
| 25 | #include <features.h> | ||
| 26 | |||
| 27 | #include <bits/types/sigset_t.h> | ||
| 28 | #include <bits/types/stack_t.h> | ||
| 29 | |||
| 30 | #ifdef __USE_MISC | ||
| 31 | #define LARCH_NGREG 32 | ||
| 32 | |||
| 33 | #define LARCH_REG_RA 1 | ||
| 34 | #define LARCH_REG_SP 3 | ||
| 35 | #define LARCH_REG_S0 23 | ||
| 36 | #define LARCH_REG_S1 24 | ||
| 37 | #define LARCH_REG_A0 4 | ||
| 38 | #define LARCH_REG_S2 25 | ||
| 39 | #define LARCH_REG_NARGS 8 | ||
| 40 | |||
| 41 | typedef unsigned long int greg_t; | ||
| 42 | /* Container for all general registers. */ | ||
| 43 | typedef greg_t gregset_t[32]; | ||
| 44 | #endif | ||
| 45 | |||
| 46 | typedef struct mcontext_t | ||
| 47 | { | ||
| 48 | unsigned long long __pc; | ||
| 49 | unsigned long long __gregs[32]; | ||
| 50 | unsigned int __flags; | ||
| 51 | unsigned long long __extcontext[0] __attribute__((__aligned__(16))); | ||
| 52 | } mcontext_t; | ||
| 53 | |||
| 54 | /* Userlevel context. */ | ||
| 55 | typedef struct ucontext_t | ||
| 56 | { | ||
| 57 | unsigned long int __uc_flags; | ||
| 58 | struct ucontext_t *uc_link; | ||
| 59 | stack_t uc_stack; | ||
| 60 | sigset_t uc_sigmask; | ||
| 61 | mcontext_t uc_mcontext; | ||
| 62 | } ucontext_t; | ||
| 63 | |||
| 64 | #endif /* sys/ucontext.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch-linux-gnu/sys/user.h created+42| ... | @@ -0,0 +1,42 @@ | ||
| 1 | /* struct user_regs_struct definition for LoongArch. | ||
| 2 | Copyright (C) 2022-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_USER_H | ||
| 20 | #define _SYS_USER_H 1 | ||
| 21 | |||
| 22 | #include <stdint.h> | ||
| 23 | |||
| 24 | struct user_regs_struct | ||
| 25 | { | ||
| 26 | /* Saved main processor registers. */ | ||
| 27 | uint64_t regs[32]; | ||
| 28 | |||
| 29 | /* Saved special registers. */ | ||
| 30 | uint64_t orig_a0; | ||
| 31 | uint64_t csr_era; | ||
| 32 | uint64_t csr_badv; | ||
| 33 | uint64_t reserved[10]; | ||
| 34 | }; | ||
| 35 | |||
| 36 | struct user_fp_struct { | ||
| 37 | uint64_t fpr[32]; | ||
| 38 | uint64_t fcc; | ||
| 39 | uint32_t fcsr; | ||
| 40 | }; | ||
| 41 | |||
| 42 | #endif /* _SYS_USER_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch64-linux-gnu/bits/endianness.h deleted-11| ... | @@ -1,11 +0,0 @@ | ||
| 1 | #ifndef _BITS_ENDIANNESS_H | ||
| 2 | #define _BITS_ENDIANNESS_H 1 | ||
| 3 | |||
| 4 | #ifndef _BITS_ENDIAN_H | ||
| 5 | #error "Never use <bits/endianness.h> directly; include <endian.h> instead." | ||
| 6 | #endif | ||
| 7 | |||
| 8 | /* LoongArch is little-endian. */ | ||
| 9 | #define __BYTE_ORDER __LITTLE_ENDIAN | ||
| 10 | |||
| 11 | #endif /* bits/endianness.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch64-linux-gnu/bits/fcntl.h deleted-61| ... | @@ -1,61 +0,0 @@ | ||
| 1 | /* O_*, F_*, FD_* bit values for the generic Linux/LoongArch ABI. | ||
| 2 | Copyright (C) 2022-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _FCNTL_H | ||
| 20 | #error "Never use <bits/fcntl.h> directly; include <fcntl.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <bits/wordsize.h> | ||
| 24 | |||
| 25 | /* In 64-bit ISA files are always with 64bit off_t and F_*LK64 are the same as | ||
| 26 | non-64-bit versions. It will need to be revised for 128-bit. */ | ||
| 27 | #if __WORDSIZE == 64 | ||
| 28 | #define __O_LARGEFILE 0 | ||
| 29 | |||
| 30 | #define F_GETLK64 5 /* Get record locking info. */ | ||
| 31 | #define F_SETLK64 6 /* Set record locking info (non-blocking). */ | ||
| 32 | #define F_SETLKW64 7 /* Set record locking info (blocking). */ | ||
| 33 | #endif | ||
| 34 | |||
| 35 | struct flock | ||
| 36 | { | ||
| 37 | short int l_type; /* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK. */ | ||
| 38 | short int l_whence; /* Where `l_start' is relative to (like `lseek'). */ | ||
| 39 | #ifndef __USE_FILE_OFFSET64 | ||
| 40 | __off_t l_start; /* Offset where the lock begins. */ | ||
| 41 | __off_t l_len; /* Size of the locked area; zero means until EOF. */ | ||
| 42 | #else | ||
| 43 | __off64_t l_start; /* Offset where the lock begins. */ | ||
| 44 | __off64_t l_len; /* Size of the locked area; zero means until EOF. */ | ||
| 45 | #endif | ||
| 46 | __pid_t l_pid; /* Process holding the lock. */ | ||
| 47 | }; | ||
| 48 | |||
| 49 | #ifdef __USE_LARGEFILE64 | ||
| 50 | struct flock64 | ||
| 51 | { | ||
| 52 | short int l_type; /* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK. */ | ||
| 53 | short int l_whence; /* Where `l_start' is relative to (like `lseek'). */ | ||
| 54 | __off64_t l_start; /* Offset where the lock begins. */ | ||
| 55 | __off64_t l_len; /* Size of the locked area; zero means until EOF. */ | ||
| 56 | __pid_t l_pid; /* Process holding the lock. */ | ||
| 57 | }; | ||
| 58 | #endif | ||
| 59 | |||
| 60 | /* Include generic Linux declarations. */ | ||
| 61 | #include <bits/fcntl-linux.h> | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch64-linux-gnu/bits/fenv.h deleted-90| ... | @@ -1,90 +0,0 @@ | ||
| 1 | /* Floating point environment. | ||
| 2 | Copyright (C) 2022-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _FENV_H | ||
| 20 | #error "Never use <bits/fenv.h> directly; include <fenv.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Define bits representing the exception. We use the bit positions | ||
| 24 | of the appropriate bits in the FPU control word. */ | ||
| 25 | enum | ||
| 26 | { | ||
| 27 | FE_INEXACT = | ||
| 28 | #define FE_INEXACT 0x010000 | ||
| 29 | FE_INEXACT, | ||
| 30 | FE_UNDERFLOW = | ||
| 31 | #define FE_UNDERFLOW 0x020000 | ||
| 32 | FE_UNDERFLOW, | ||
| 33 | FE_OVERFLOW = | ||
| 34 | #define FE_OVERFLOW 0x040000 | ||
| 35 | FE_OVERFLOW, | ||
| 36 | FE_DIVBYZERO = | ||
| 37 | #define FE_DIVBYZERO 0x080000 | ||
| 38 | FE_DIVBYZERO, | ||
| 39 | FE_INVALID = | ||
| 40 | #define FE_INVALID 0x100000 | ||
| 41 | FE_INVALID, | ||
| 42 | }; | ||
| 43 | |||
| 44 | #define FE_ALL_EXCEPT \ | ||
| 45 | (FE_INEXACT | FE_DIVBYZERO | FE_UNDERFLOW | FE_OVERFLOW | FE_INVALID) | ||
| 46 | |||
| 47 | /* The LoongArch FPU supports all of the four defined rounding modes. We | ||
| 48 | use again the bit positions in the FPU control word as the values | ||
| 49 | for the appropriate macros. */ | ||
| 50 | enum | ||
| 51 | { | ||
| 52 | FE_TONEAREST = | ||
| 53 | #define FE_TONEAREST 0x000 | ||
| 54 | FE_TONEAREST, | ||
| 55 | FE_TOWARDZERO = | ||
| 56 | #define FE_TOWARDZERO 0x100 | ||
| 57 | FE_TOWARDZERO, | ||
| 58 | FE_UPWARD = | ||
| 59 | #define FE_UPWARD 0x200 | ||
| 60 | FE_UPWARD, | ||
| 61 | FE_DOWNWARD = | ||
| 62 | #define FE_DOWNWARD 0x300 | ||
| 63 | FE_DOWNWARD | ||
| 64 | }; | ||
| 65 | |||
| 66 | /* Type representing exception flags. */ | ||
| 67 | typedef unsigned int fexcept_t; | ||
| 68 | |||
| 69 | /* Type representing floating-point environment. This function corresponds | ||
| 70 | to the layout of the block written by the `fstenv'. */ | ||
| 71 | typedef struct | ||
| 72 | { | ||
| 73 | unsigned int __fp_control_register; | ||
| 74 | } fenv_t; | ||
| 75 | |||
| 76 | /* If the default argument is used we use this value. */ | ||
| 77 | #define FE_DFL_ENV ((const fenv_t *) -1) | ||
| 78 | |||
| 79 | #ifdef __USE_GNU | ||
| 80 | /* Floating-point environment where none of the exception is masked. */ | ||
| 81 | #define FE_NOMASK_ENV ((const fenv_t *) -257) | ||
| 82 | #endif | ||
| 83 | |||
| 84 | #if __GLIBC_USE (IEC_60559_BFP_EXT_C23) | ||
| 85 | /* Type representing floating-point control modes. */ | ||
| 86 | typedef unsigned int femode_t; | ||
| 87 | |||
| 88 | /* Default floating-point control modes. */ | ||
| 89 | #define FE_DFL_MODE ((const femode_t *) -1L) | ||
| 90 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch64-linux-gnu/bits/hwcap.h deleted-39| ... | @@ -1,39 +0,0 @@ | ||
| 1 | /* Defines for bits in AT_HWCAP. LoongArch64 Linux version. | ||
| 2 | Copyright (C) 2022-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <http://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #if !defined (_SYS_AUXV_H) | ||
| 20 | # error "Never include <bits/hwcap.h> directly; use <sys/auxv.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* The following must match the kernel's <asm/hwcap.h>. */ | ||
| 24 | /* HWCAP flags */ | ||
| 25 | #define HWCAP_LOONGARCH_CPUCFG (1 << 0) | ||
| 26 | #define HWCAP_LOONGARCH_LAM (1 << 1) | ||
| 27 | #define HWCAP_LOONGARCH_UAL (1 << 2) | ||
| 28 | #define HWCAP_LOONGARCH_FPU (1 << 3) | ||
| 29 | #define HWCAP_LOONGARCH_LSX (1 << 4) | ||
| 30 | #define HWCAP_LOONGARCH_LASX (1 << 5) | ||
| 31 | #define HWCAP_LOONGARCH_CRC32 (1 << 6) | ||
| 32 | #define HWCAP_LOONGARCH_COMPLEX (1 << 7) | ||
| 33 | #define HWCAP_LOONGARCH_CRYPTO (1 << 8) | ||
| 34 | #define HWCAP_LOONGARCH_LVZ (1 << 9) | ||
| 35 | #define HWCAP_LOONGARCH_LBT_X86 (1 << 10) | ||
| 36 | #define HWCAP_LOONGARCH_LBT_ARM (1 << 11) | ||
| 37 | #define HWCAP_LOONGARCH_LBT_MIPS (1 << 12) | ||
| 38 | #define HWCAP_LOONGARCH_PTW (1 << 13) | ||
| 39 | #define HWCAP_LOONGARCH_LSPW (1 << 14) | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch64-linux-gnu/bits/link.h deleted-76| ... | @@ -1,76 +0,0 @@ | ||
| 1 | /* Machine-specific declarations for dynamic linker interface. | ||
| 2 | Copyright (C) 2022-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _LINK_H | ||
| 20 | #error "Never include <bits/link.h> directly; use <link.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef __loongarch_soft_float | ||
| 24 | typedef float La_loongarch_vr | ||
| 25 | __attribute__ ((__vector_size__ (16), __aligned__ (16))); | ||
| 26 | typedef float La_loongarch_xr | ||
| 27 | __attribute__ ((__vector_size__ (32), __aligned__ (16))); | ||
| 28 | |||
| 29 | typedef union | ||
| 30 | { | ||
| 31 | double fpreg[4]; | ||
| 32 | La_loongarch_vr vr[2]; | ||
| 33 | La_loongarch_xr xr[1]; | ||
| 34 | } La_loongarch_vector __attribute__ ((__aligned__ (16))); | ||
| 35 | #endif | ||
| 36 | |||
| 37 | typedef struct La_loongarch_regs | ||
| 38 | { | ||
| 39 | unsigned long int lr_reg[8]; /* a0 - a7 */ | ||
| 40 | #ifndef __loongarch_soft_float | ||
| 41 | La_loongarch_vector lr_vec[8]; /* fa0 - fa7 or vr0 - vr7 or xr0 - xr7*/ | ||
| 42 | #endif | ||
| 43 | unsigned long int lr_ra; | ||
| 44 | unsigned long int lr_sp; | ||
| 45 | } La_loongarch_regs; | ||
| 46 | |||
| 47 | /* Return values for calls from PLT on LoongArch. */ | ||
| 48 | typedef struct La_loongarch_retval | ||
| 49 | { | ||
| 50 | unsigned long int lrv_a0; | ||
| 51 | unsigned long int lrv_a1; | ||
| 52 | #ifndef __loongarch_soft_float | ||
| 53 | La_loongarch_vector lrv_vec0; | ||
| 54 | La_loongarch_vector lrv_vec1; | ||
| 55 | #endif | ||
| 56 | } La_loongarch_retval; | ||
| 57 | |||
| 58 | __BEGIN_DECLS | ||
| 59 | |||
| 60 | extern ElfW (Addr) la_loongarch_gnu_pltenter (ElfW (Sym) *__sym, | ||
| 61 | 					 unsigned int __ndx, | ||
| 62 | 					 uintptr_t *__refcook, | ||
| 63 | 					 uintptr_t *__defcook, | ||
| 64 | 					 La_loongarch_regs *__regs, | ||
| 65 | 					 unsigned int *__flags, | ||
| 66 | 					 const char *__symname, | ||
| 67 | 					 long int *__framesizep); | ||
| 68 | extern unsigned int la_loongarch_gnu_pltexit (ElfW (Sym) *__sym, | ||
| 69 | 					 unsigned int __ndx, | ||
| 70 | 					 uintptr_t *__refcook, | ||
| 71 | 					 uintptr_t *__defcook, | ||
| 72 | 					 const La_loongarch_regs *__inregs, | ||
| 73 | 					 La_loongarch_retval *__outregs, | ||
| 74 | 					 const char *__symname); | ||
| 75 | |||
| 76 | __END_DECLS | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch64-linux-gnu/bits/link_lavcurrent.h deleted-25| ... | @@ -1,25 +0,0 @@ | ||
| 1 | /* Data structure for communication from the run-time dynamic linker for | ||
| 2 | loaded ELF shared objects. LAV_CURRENT definition. | ||
| 3 | Copyright (C) 2023-2025 Free Software Foundation, Inc. | ||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library; if not, see | ||
| 18 | <https://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifndef _LINK_H | ||
| 21 | # error "Never include <bits/link_lavcurrent.h> directly; use <link.h> instead." | ||
| 22 | #endif | ||
| 23 | |||
| 24 | /* Version numbers for la_version handshake interface. */ | ||
| 25 | #define LAV_CURRENT	3 | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch64-linux-gnu/bits/long-double.h deleted-21| ... | @@ -1,21 +0,0 @@ | ||
| 1 | /* Properties of long double type. ldbl-128 version. | ||
| 2 | Copyright (C) 2016-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* long double is distinct from double, so there is nothing to | ||
| 20 | define here. */ | ||
| 21 | #define __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI 0 | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch64-linux-gnu/bits/procfs.h deleted-52| ... | @@ -1,52 +0,0 @@ | ||
| 1 | /* Types for registers for sys/procfs.h. | ||
| 2 | Copyright (C) 2022-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library. If not, see | ||
| 18 | <https://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifndef _SYS_PROCFS_H | ||
| 21 | # error "Never include <bits/procfs.h> directly; use <sys/procfs.h> instead." | ||
| 22 | #endif | ||
| 23 | |||
| 24 | /* Type for a general-purpose register. */ | ||
| 25 | typedef __uint64_t elf_greg_t; | ||
| 26 | |||
| 27 | /* And the whole bunch of them. We could have used `struct | ||
| 28 | pt_regs' directly in the typedef, but tradition says that | ||
| 29 | the register set is an array, which does have some peculiar | ||
| 30 | semantics, so leave it that way. */ | ||
| 31 | #define ELF_NGREG (sizeof (struct user_regs_struct) / sizeof (elf_greg_t)) | ||
| 32 | typedef elf_greg_t elf_gregset_t[ELF_NGREG]; | ||
| 33 | |||
| 34 | #define ELF_NFPREG 34 /* 32 FPRs + 8-byte byte-vec for fcc + 4-byte FCR */ | ||
| 35 | typedef union | ||
| 36 | { | ||
| 37 | double d; | ||
| 38 | float f; | ||
| 39 | } elf_fpreg_t; | ||
| 40 | typedef elf_fpreg_t elf_fpregset_t[ELF_NFPREG]; | ||
| 41 | |||
| 42 | typedef union | ||
| 43 | { | ||
| 44 | double d[2]; | ||
| 45 | float f[4]; | ||
| 46 | } __attribute__ ((__aligned__ (16))) elf_lsxregset_t[32]; | ||
| 47 | |||
| 48 | typedef union | ||
| 49 | { | ||
| 50 | double d[4]; | ||
| 51 | float f[8]; | ||
| 52 | } __attribute__ ((__aligned__ (32))) elf_lasxregset_t[32]; | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch64-linux-gnu/bits/pthread_stack_min.h deleted-20| ... | @@ -1,20 +0,0 @@ | ||
| 1 | /* Definition of PTHREAD_STACK_MIN. LoongArch Linux version. | ||
| 2 | Copyright (C) 2022-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public License as | ||
| 7 | published by the Free Software Foundation; either version 2.1 of the | ||
| 8 | License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* Minimum size for a thread. At least two pages with 64k pages. */ | ||
| 20 | #define PTHREAD_STACK_MIN	131072 | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch64-linux-gnu/bits/rseq.h deleted-36| ... | @@ -1,36 +0,0 @@ | ||
| 1 | /* Restartable Sequences Linux LoongArch architecture header. | ||
| 2 | Copyright (C) 2024-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_RSEQ_H | ||
| 19 | # error "Never use <bits/rseq.h> directly; include <sys/rseq.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* RSEQ_SIG is a signature required before each abort handler code. | ||
| 23 | |||
| 24 | It is a 32-bit value that maps to actual architecture code compiled | ||
| 25 | into applications and libraries. It needs to be defined for each | ||
| 26 | architecture. When choosing this value, it needs to be taken into | ||
| 27 | account that generating invalid instructions may have ill effects on | ||
| 28 | tools like objdump, and may also have impact on the CPU speculative | ||
| 29 | execution efficiency in some cases. | ||
| 30 | |||
| 31 | RSEQ_SIG uses the following break instruction: | ||
| 32 | |||
| 33 | 0x002a0010	break	0x10 | ||
| 34 | */ | ||
| 35 | |||
| 36 | #define RSEQ_SIG 0x002a0010 | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch64-linux-gnu/bits/setjmp.h deleted-42| ... | @@ -1,42 +0,0 @@ | ||
| 1 | /* Define the machine-dependent type `jmp_buf'. | ||
| 2 | Copyright (C) 2022-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _LOONGARCH_BITS_SETJMP_H | ||
| 20 | #define _LOONGARCH_BITS_SETJMP_H | ||
| 21 | |||
| 22 | typedef struct __jmp_buf_internal_tag | ||
| 23 | { | ||
| 24 | /* Program counter. */ | ||
| 25 | long int __pc; | ||
| 26 | /* Stack pointer. */ | ||
| 27 | long int __sp; | ||
| 28 | /* Reserved */ | ||
| 29 | long int __x; | ||
| 30 | /* Frame pointer. */ | ||
| 31 | long int __fp; | ||
| 32 | /* Callee-saved registers. */ | ||
| 33 | long int __regs[9]; | ||
| 34 | |||
| 35 | #ifndef __loongarch_soft_float | ||
| 36 | /* Callee-saved floating point registers. */ | ||
| 37 | double __fpregs[8]; | ||
| 38 | #endif | ||
| 39 | |||
| 40 | } __jmp_buf[1]; | ||
| 41 | |||
| 42 | #endif /* _LOONGARCH_BITS_SETJMP_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch64-linux-gnu/bits/shmlba.h deleted-24| ... | @@ -1,24 +0,0 @@ | ||
| 1 | /* Define SHMLBA. LoongArch version. | ||
| 2 | Copyright (C) 2023-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SHM_H | ||
| 20 | # error "Never use <bits/shmlba.h> directly; include <sys/shm.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Segment low boundary address multiple. */ | ||
| 24 | #define SHMLBA		0x10000 | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch64-linux-gnu/bits/sigstack.h deleted-32| ... | @@ -1,32 +0,0 @@ | ||
| 1 | /* sigstack, sigaltstack definitions. | ||
| 2 | Copyright (C) 2022-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_SIGSTACK_H | ||
| 20 | #define _BITS_SIGSTACK_H 1 | ||
| 21 | |||
| 22 | #if !defined _SIGNAL_H && !defined _SYS_UCONTEXT_H | ||
| 23 | # error "Never include this file directly. Use <signal.h> instead" | ||
| 24 | #endif | ||
| 25 | |||
| 26 | /* Minimum stack size for a signal handler. */ | ||
| 27 | #define MINSIGSTKSZ	4096 | ||
| 28 | |||
| 29 | /* System default stack size. */ | ||
| 30 | #define SIGSTKSZ	16384 | ||
| 31 | |||
| 32 | #endif /* bits/sigstack.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch64-linux-gnu/bits/struct_stat.h deleted-127| ... | @@ -1,127 +0,0 @@ | ||
| 1 | /* Definition for struct stat. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #if !defined _SYS_STAT_H && !defined _FCNTL_H | ||
| 20 | # error "Never include <bits/struct_stat.h> directly; use <sys/stat.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef _BITS_STRUCT_STAT_H | ||
| 24 | #define _BITS_STRUCT_STAT_H	1 | ||
| 25 | |||
| 26 | #include <bits/endian.h> | ||
| 27 | #include <bits/wordsize.h> | ||
| 28 | |||
| 29 | #if defined __USE_FILE_OFFSET64 | ||
| 30 | # define __field64(type, type64, name) type64 name | ||
| 31 | #elif __WORDSIZE == 64 || defined __INO_T_MATCHES_INO64_T | ||
| 32 | # if defined __INO_T_MATCHES_INO64_T && !defined __OFF_T_MATCHES_OFF64_T | ||
| 33 | # error "ino_t and off_t must both be the same type" | ||
| 34 | # endif | ||
| 35 | # define __field64(type, type64, name) type name | ||
| 36 | #elif __BYTE_ORDER == __LITTLE_ENDIAN | ||
| 37 | # define __field64(type, type64, name) \ | ||
| 38 | type name __attribute__((__aligned__ (__alignof__ (type64)))); int __##name##_pad | ||
| 39 | #else | ||
| 40 | # define __field64(type, type64, name) \ | ||
| 41 | int __##name##_pad __attribute__((__aligned__ (__alignof__ (type64)))); type name | ||
| 42 | #endif | ||
| 43 | |||
| 44 | struct stat | ||
| 45 | { | ||
| 46 | __dev_t st_dev;		/* Device. */ | ||
| 47 | __field64(__ino_t, __ino64_t, st_ino); /* File serial number. */ | ||
| 48 | __mode_t st_mode;		/* File mode. */ | ||
| 49 | __nlink_t st_nlink;		/* Link count. */ | ||
| 50 | __uid_t st_uid;		/* User ID of the file's owner.	*/ | ||
| 51 | __gid_t st_gid;		/* Group ID of the file's group.*/ | ||
| 52 | __dev_t st_rdev;		/* Device number, if device. */ | ||
| 53 | __dev_t __pad1; | ||
| 54 | __field64(__off_t, __off64_t, st_size); /* Size of file, in bytes. */ | ||
| 55 | __blksize_t st_blksize;	/* Optimal block size for I/O. */ | ||
| 56 | int __pad2; | ||
| 57 | __field64(__blkcnt_t, __blkcnt64_t, st_blocks); /* 512-byte blocks */ | ||
| 58 | #ifdef __USE_XOPEN2K8 | ||
| 59 | /* Nanosecond resolution timestamps are stored in a format | ||
| 60 | equivalent to 'struct timespec'. This is the type used | ||
| 61 | whenever possible but the Unix namespace rules do not allow the | ||
| 62 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 63 | Therefore we have to handle the use of this header in strictly | ||
| 64 | standard-compliant sources special. */ | ||
| 65 | struct timespec st_atim;		/* Time of last access. */ | ||
| 66 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 67 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 68 | # define st_atime st_atim.tv_sec	/* Backward compatibility. */ | ||
| 69 | # define st_mtime st_mtim.tv_sec | ||
| 70 | # define st_ctime st_ctim.tv_sec | ||
| 71 | #else | ||
| 72 | __time_t st_atime;			/* Time of last access. */ | ||
| 73 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 74 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 75 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 76 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 77 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 78 | #endif | ||
| 79 | int __glibc_reserved[2]; | ||
| 80 | }; | ||
| 81 | |||
| 82 | #undef __field64 | ||
| 83 | |||
| 84 | #ifdef __USE_LARGEFILE64 | ||
| 85 | struct stat64 | ||
| 86 | { | ||
| 87 | __dev_t st_dev;		/* Device. */ | ||
| 88 | __ino64_t st_ino;		/* File serial number.	*/ | ||
| 89 | __mode_t st_mode;		/* File mode. */ | ||
| 90 | __nlink_t st_nlink;		/* Link count. */ | ||
| 91 | __uid_t st_uid;		/* User ID of the file's owner.	*/ | ||
| 92 | __gid_t st_gid;		/* Group ID of the file's group.*/ | ||
| 93 | __dev_t st_rdev;		/* Device number, if device. */ | ||
| 94 | __dev_t __pad1; | ||
| 95 | __off64_t st_size;		/* Size of file, in bytes. */ | ||
| 96 | __blksize_t st_blksize;	/* Optimal block size for I/O. */ | ||
| 97 | int __pad2; | ||
| 98 | __blkcnt64_t st_blocks;	/* Nr. 512-byte blocks allocated. */ | ||
| 99 | #ifdef __USE_XOPEN2K8 | ||
| 100 | /* Nanosecond resolution timestamps are stored in a format | ||
| 101 | equivalent to 'struct timespec'. This is the type used | ||
| 102 | whenever possible but the Unix namespace rules do not allow the | ||
| 103 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 104 | Therefore we have to handle the use of this header in strictly | ||
| 105 | standard-compliant sources special. */ | ||
| 106 | struct timespec st_atim;		/* Time of last access. */ | ||
| 107 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 108 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 109 | #else | ||
| 110 | __time_t st_atime;			/* Time of last access. */ | ||
| 111 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 112 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 113 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 114 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 115 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 116 | #endif | ||
| 117 | int __glibc_reserved[2]; | ||
| 118 | }; | ||
| 119 | #endif | ||
| 120 | |||
| 121 | /* Tell code we have these members. */ | ||
| 122 | #define	_STATBUF_ST_BLKSIZE | ||
| 123 | #define _STATBUF_ST_RDEV | ||
| 124 | /* Nanosecond resolution time values are supported. */ | ||
| 125 | #define _STATBUF_ST_NSEC | ||
| 126 | |||
| 127 | #endif /* _BITS_STRUCT_STAT_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch64-linux-gnu/bits/timesize.h deleted-20| ... | @@ -1,20 +0,0 @@ | ||
| 1 | /* Bit size of the time_t type at glibc build time, general case. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* Size in bits of the 'time_t' type of the default ABI. */ | ||
| 20 | #define __TIMESIZE	64 | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch64-linux-gnu/bits/wordsize.h deleted-19| ... | @@ -1,19 +0,0 @@ | ||
| 1 | /* Copyright (C) 1999-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #define __WORDSIZE			64 | ||
| 19 | #define __WORDSIZE_TIME64_COMPAT32	0 | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch64-linux-gnu/fpu_control.h deleted-119| ... | @@ -1,119 +0,0 @@ | ||
| 1 | /* FPU control word bits. | ||
| 2 | Copyright (C) 2022-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _FPU_CONTROL_H | ||
| 20 | #define _FPU_CONTROL_H | ||
| 21 | |||
| 22 | /* LoongArch FPU floating point control register bits. | ||
| 23 | * | ||
| 24 | * 31-29 -> reserved (read as 0, can not changed by software) | ||
| 25 | * 28 -> cause bit for invalid exception | ||
| 26 | * 27 -> cause bit for division by zero exception | ||
| 27 | * 26 -> cause bit for overflow exception | ||
| 28 | * 25 -> cause bit for underflow exception | ||
| 29 | * 24 -> cause bit for inexact exception | ||
| 30 | * 23-21 -> reserved (read as 0, can not changed by software) | ||
| 31 | * 20 -> flag invalid exception | ||
| 32 | * 19 -> flag division by zero exception | ||
| 33 | * 18 -> flag overflow exception | ||
| 34 | * 17 -> flag underflow exception | ||
| 35 | * 16 -> flag inexact exception | ||
| 36 | * 9-8 -> rounding control | ||
| 37 | * 7-5 -> reserved (read as 0, can not changed by software) | ||
| 38 | * 4 -> enable exception for invalid exception | ||
| 39 | * 3 -> enable exception for division by zero exception | ||
| 40 | * 2 -> enable exception for overflow exception | ||
| 41 | * 1 -> enable exception for underflow exception | ||
| 42 | * 0 -> enable exception for inexact exception | ||
| 43 | * | ||
| 44 | * | ||
| 45 | * Rounding Control: | ||
| 46 | * 00 - rounding ties to even (RNE) | ||
| 47 | * 01 - rounding toward zero (RZ) | ||
| 48 | * 10 - rounding (up) toward plus infinity (RP) | ||
| 49 | * 11 - rounding (down) toward minus infinity (RM) | ||
| 50 | */ | ||
| 51 | |||
| 52 | #include <features.h> | ||
| 53 | |||
| 54 | #ifdef __loongarch_soft_float | ||
| 55 | |||
| 56 | #define _FPU_RESERVED 0xffffffff | ||
| 57 | #define _FPU_DEFAULT 0x00000000 | ||
| 58 | typedef unsigned int fpu_control_t; | ||
| 59 | #define _FPU_GETCW(cw) (cw) = 0 | ||
| 60 | #define _FPU_SETCW(cw) (void) (cw) | ||
| 61 | extern fpu_control_t __fpu_control; | ||
| 62 | |||
| 63 | #else /* __loongarch_soft_float */ | ||
| 64 | |||
| 65 | /* Masks for interrupts. */ | ||
| 66 | #define _FPU_MASK_V 0x10 /* Invalid operation */ | ||
| 67 | #define _FPU_MASK_Z 0x08 /* Division by zero */ | ||
| 68 | #define _FPU_MASK_O 0x04 /* Overflow */ | ||
| 69 | #define _FPU_MASK_U 0x02 /* Underflow */ | ||
| 70 | #define _FPU_MASK_I 0x01 /* Inexact operation */ | ||
| 71 | |||
| 72 | /* Flush denormalized numbers to zero. */ | ||
| 73 | #define _FPU_FLUSH_TZ 0x1000000 | ||
| 74 | |||
| 75 | /* Rounding control. */ | ||
| 76 | #define _FPU_RC_NEAREST 0x000 /* RECOMMENDED */ | ||
| 77 | #define _FPU_RC_ZERO 0x100 | ||
| 78 | #define _FPU_RC_UP 0x200 | ||
| 79 | #define _FPU_RC_DOWN 0x300 | ||
| 80 | /* Mask for rounding control. */ | ||
| 81 | #define _FPU_RC_MASK 0x300 | ||
| 82 | |||
| 83 | #define _FPU_RESERVED 0x0 | ||
| 84 | |||
| 85 | #define _FPU_DEFAULT 0x0 | ||
| 86 | #define _FPU_IEEE 0x1F | ||
| 87 | |||
| 88 | /* Type of the control word. */ | ||
| 89 | typedef unsigned int fpu_control_t __attribute__ ((__mode__ (__SI__))); | ||
| 90 | |||
| 91 | /* Macros for accessing the hardware control word. */ | ||
| 92 | extern fpu_control_t __loongarch_fpu_getcw (void) __THROW; | ||
| 93 | extern void __loongarch_fpu_setcw (fpu_control_t) __THROW; | ||
| 94 | #define _FPU_GETCW(cw) __asm__ volatile ("movfcsr2gr %0,$fcsr0" : "=r"(cw)) | ||
| 95 | #define _FPU_SETCW(cw) __asm__ volatile ("movgr2fcsr $fcsr0,%0" : : "r"(cw)) | ||
| 96 | |||
| 97 | /* Default control word set at startup. */ | ||
| 98 | extern fpu_control_t __fpu_control; | ||
| 99 | |||
| 100 | # define _FCLASS_SNAN (1 << 0) | ||
| 101 | # define _FCLASS_QNAN (1 << 1) | ||
| 102 | # define _FCLASS_MINF (1 << 2) | ||
| 103 | # define _FCLASS_MNORM (1 << 3) | ||
| 104 | # define _FCLASS_MSUBNORM (1 << 4) | ||
| 105 | # define _FCLASS_MZERO (1 << 5) | ||
| 106 | # define _FCLASS_PINF (1 << 6) | ||
| 107 | # define _FCLASS_PNORM (1 << 7) | ||
| 108 | # define _FCLASS_PSUBNORM (1 << 8) | ||
| 109 | # define _FCLASS_PZERO (1 << 9) | ||
| 110 | |||
| 111 | # define _FCLASS_ZERO (_FCLASS_MZERO | _FCLASS_PZERO) | ||
| 112 | # define _FCLASS_SUBNORM (_FCLASS_MSUBNORM | _FCLASS_PSUBNORM) | ||
| 113 | # define _FCLASS_NORM (_FCLASS_MNORM | _FCLASS_PNORM) | ||
| 114 | # define _FCLASS_INF (_FCLASS_MINF | _FCLASS_PINF) | ||
| 115 | # define _FCLASS_NAN (_FCLASS_SNAN | _FCLASS_QNAN) | ||
| 116 | |||
| 117 | #endif /* __loongarch_soft_float */ | ||
| 118 | |||
| 119 | #endif /* fpu_control.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch64-linux-gnu/gnu/lib-names.h deleted-16| ... | @@ -1,16 +0,0 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | It defines macros to allow user program to find the shared | ||
| 3 | library files which come as part of GNU libc. */ | ||
| 4 | #ifndef __GNU_LIB_NAMES_H | ||
| 5 | #define __GNU_LIB_NAMES_H	1 | ||
| 6 | |||
| 7 | #include <bits/wordsize.h> | ||
| 8 | |||
| 9 | #if __WORDSIZE == 64 && defined __loongarch_soft_float | ||
| 10 | # include <gnu/lib-names-lp64s.h> | ||
| 11 | #endif | ||
| 12 | #if __WORDSIZE == 64 && defined __loongarch_double_float | ||
| 13 | # include <gnu/lib-names-lp64d.h> | ||
| 14 | #endif | ||
| 15 | |||
| 16 | #endif	/* gnu/lib-names.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch64-linux-gnu/gnu/stubs.h deleted-12| ... | @@ -1,12 +0,0 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | This file selects the right generated file of `__stub_FUNCTION' macros | ||
| 3 | based on the architecture being compiled for. */ | ||
| 4 | |||
| 5 | #include <bits/wordsize.h> | ||
| 6 | |||
| 7 | #if __WORDSIZE == 64 && defined __loongarch_soft_float | ||
| 8 | # include <gnu/stubs-lp64s.h> | ||
| 9 | #endif | ||
| 10 | #if __WORDSIZE == 64 && defined __loongarch_double_float | ||
| 11 | # include <gnu/stubs-lp64d.h> | ||
| 12 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch64-linux-gnu/ieee754.h deleted-170| ... | @@ -1,170 +0,0 @@ | ||
| 1 | /* Copyright (C) 1992-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _IEEE754_H | ||
| 19 | #define _IEEE754_H 1 | ||
| 20 | |||
| 21 | #include <features.h> | ||
| 22 | |||
| 23 | #include <bits/endian.h> | ||
| 24 | |||
| 25 | __BEGIN_DECLS | ||
| 26 | |||
| 27 | union ieee754_float | ||
| 28 | { | ||
| 29 | float f; | ||
| 30 | |||
| 31 | /* This is the IEEE 754 single-precision format. */ | ||
| 32 | struct | ||
| 33 | { | ||
| 34 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 35 | 	unsigned int negative:1; | ||
| 36 | 	unsigned int exponent:8; | ||
| 37 | 	unsigned int mantissa:23; | ||
| 38 | #endif				/* Big endian. */ | ||
| 39 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 40 | 	unsigned int mantissa:23; | ||
| 41 | 	unsigned int exponent:8; | ||
| 42 | 	unsigned int negative:1; | ||
| 43 | #endif				/* Little endian. */ | ||
| 44 | } ieee; | ||
| 45 | |||
| 46 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 47 | struct | ||
| 48 | { | ||
| 49 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 50 | 	unsigned int negative:1; | ||
| 51 | 	unsigned int exponent:8; | ||
| 52 | 	unsigned int quiet_nan:1; | ||
| 53 | 	unsigned int mantissa:22; | ||
| 54 | #endif				/* Big endian. */ | ||
| 55 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 56 | 	unsigned int mantissa:22; | ||
| 57 | 	unsigned int quiet_nan:1; | ||
| 58 | 	unsigned int exponent:8; | ||
| 59 | 	unsigned int negative:1; | ||
| 60 | #endif				/* Little endian. */ | ||
| 61 | } ieee_nan; | ||
| 62 | }; | ||
| 63 | |||
| 64 | #define IEEE754_FLOAT_BIAS	0x7f /* Added to exponent. */ | ||
| 65 | |||
| 66 | |||
| 67 | union ieee754_double | ||
| 68 | { | ||
| 69 | double d; | ||
| 70 | |||
| 71 | /* This is the IEEE 754 double-precision format. */ | ||
| 72 | struct | ||
| 73 | { | ||
| 74 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 75 | 	unsigned int negative:1; | ||
| 76 | 	unsigned int exponent:11; | ||
| 77 | 	/* Together these comprise the mantissa. */ | ||
| 78 | 	unsigned int mantissa0:20; | ||
| 79 | 	unsigned int mantissa1:32; | ||
| 80 | #endif				/* Big endian. */ | ||
| 81 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 82 | 	/* Together these comprise the mantissa. */ | ||
| 83 | 	unsigned int mantissa1:32; | ||
| 84 | 	unsigned int mantissa0:20; | ||
| 85 | 	unsigned int exponent:11; | ||
| 86 | 	unsigned int negative:1; | ||
| 87 | #endif				/* Little endian. */ | ||
| 88 | } ieee; | ||
| 89 | |||
| 90 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 91 | struct | ||
| 92 | { | ||
| 93 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 94 | 	unsigned int negative:1; | ||
| 95 | 	unsigned int exponent:11; | ||
| 96 | 	unsigned int quiet_nan:1; | ||
| 97 | 	/* Together these comprise the mantissa. */ | ||
| 98 | 	unsigned int mantissa0:19; | ||
| 99 | 	unsigned int mantissa1:32; | ||
| 100 | #else | ||
| 101 | 	/* Together these comprise the mantissa. */ | ||
| 102 | 	unsigned int mantissa1:32; | ||
| 103 | 	unsigned int mantissa0:19; | ||
| 104 | 	unsigned int quiet_nan:1; | ||
| 105 | 	unsigned int exponent:11; | ||
| 106 | 	unsigned int negative:1; | ||
| 107 | #endif | ||
| 108 | } ieee_nan; | ||
| 109 | }; | ||
| 110 | |||
| 111 | #define IEEE754_DOUBLE_BIAS	0x3ff /* Added to exponent. */ | ||
| 112 | |||
| 113 | |||
| 114 | union ieee854_long_double | ||
| 115 | { | ||
| 116 | long double d; | ||
| 117 | |||
| 118 | /* This is the IEEE 854 quad-precision format. */ | ||
| 119 | struct | ||
| 120 | { | ||
| 121 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 122 | 	unsigned int negative:1; | ||
| 123 | 	unsigned int exponent:15; | ||
| 124 | 	/* Together these comprise the mantissa. */ | ||
| 125 | 	unsigned int mantissa0:16; | ||
| 126 | 	unsigned int mantissa1:32; | ||
| 127 | 	unsigned int mantissa2:32; | ||
| 128 | 	unsigned int mantissa3:32; | ||
| 129 | #endif				/* Big endian. */ | ||
| 130 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 131 | 	/* Together these comprise the mantissa. */ | ||
| 132 | 	unsigned int mantissa3:32; | ||
| 133 | 	unsigned int mantissa2:32; | ||
| 134 | 	unsigned int mantissa1:32; | ||
| 135 | 	unsigned int mantissa0:16; | ||
| 136 | 	unsigned int exponent:15; | ||
| 137 | 	unsigned int negative:1; | ||
| 138 | #endif				/* Little endian. */ | ||
| 139 | } ieee; | ||
| 140 | |||
| 141 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 142 | struct | ||
| 143 | { | ||
| 144 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 145 | 	unsigned int negative:1; | ||
| 146 | 	unsigned int exponent:15; | ||
| 147 | 	unsigned int quiet_nan:1; | ||
| 148 | 	/* Together these comprise the mantissa. */ | ||
| 149 | 	unsigned int mantissa0:15; | ||
| 150 | 	unsigned int mantissa1:32; | ||
| 151 | 	unsigned int mantissa2:32; | ||
| 152 | 	unsigned int mantissa3:32; | ||
| 153 | #else | ||
| 154 | 	/* Together these comprise the mantissa. */ | ||
| 155 | 	unsigned int mantissa3:32; | ||
| 156 | 	unsigned int mantissa2:32; | ||
| 157 | 	unsigned int mantissa1:32; | ||
| 158 | 	unsigned int mantissa0:15; | ||
| 159 | 	unsigned int quiet_nan:1; | ||
| 160 | 	unsigned int exponent:15; | ||
| 161 | 	unsigned int negative:1; | ||
| 162 | #endif | ||
| 163 | } ieee_nan; | ||
| 164 | }; | ||
| 165 | |||
| 166 | #define IEEE854_LONG_DOUBLE_BIAS 0x3fff /* Added to exponent. */ | ||
| 167 | |||
| 168 | __END_DECLS | ||
| 169 | |||
| 170 | #endif /* ieee754.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch64-linux-gnu/sys/asm.h deleted-78| ... | @@ -1,78 +0,0 @@ | ||
| 1 | /* Miscellaneous macros. | ||
| 2 | Copyright (C) 2022-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_ASM_H | ||
| 20 | #define _SYS_ASM_H | ||
| 21 | |||
| 22 | #include <sys/regdef.h> | ||
| 23 | #include <sysdeps/generic/sysdep.h> | ||
| 24 | |||
| 25 | /* Macros to handle different pointer/register sizes for 32/64-bit code. */ | ||
| 26 | #define SZREG 8 | ||
| 27 | #define SZFREG 8 | ||
| 28 | #define SZVREG 16 | ||
| 29 | #define SZXREG 32 | ||
| 30 | #define REG_L ld.d | ||
| 31 | #define REG_S st.d | ||
| 32 | #define SRLI srli.d | ||
| 33 | #define SLLI slli.d | ||
| 34 | #define ADDI addi.d | ||
| 35 | #define ADD add.d | ||
| 36 | #define SUB sub.d | ||
| 37 | #define BSTRINS bstrins.d | ||
| 38 | #define LI li.d | ||
| 39 | #define FREG_L fld.d | ||
| 40 | #define FREG_S fst.d | ||
| 41 | |||
| 42 | /* Declare leaf routine. | ||
| 43 | The usage of macro LEAF/ENTRY is as follows: | ||
| 44 | 1. LEAF(fcn) -- the align value of fcn is .align 3 (default value) | ||
| 45 | 2. LEAF(fcn, 6) -- the align value of fcn is .align 6 | ||
| 46 | */ | ||
| 47 | #define LEAF_IMPL(symbol, aln, ...)	\ | ||
| 48 | 	.text;				\ | ||
| 49 | 	.globl symbol;			\ | ||
| 50 | 	.align aln;			\ | ||
| 51 | 	.type symbol, @function;	\ | ||
| 52 | symbol: \ | ||
| 53 | 	cfi_startproc; | ||
| 54 | |||
| 55 | |||
| 56 | #define LEAF(...) LEAF_IMPL(__VA_ARGS__, 3) | ||
| 57 | #define ENTRY(...) LEAF(__VA_ARGS__) | ||
| 58 | |||
| 59 | #define	LEAF_NO_ALIGN(symbol)		\ | ||
| 60 | 	.text;				\ | ||
| 61 | 	.globl	symbol;			\ | ||
| 62 | 	.type	symbol, @function;	\ | ||
| 63 | symbol: \ | ||
| 64 | 	cfi_startproc; | ||
| 65 | |||
| 66 | #define ENTRY_NO_ALIGN(symbol) LEAF_NO_ALIGN(symbol) | ||
| 67 | |||
| 68 | |||
| 69 | /* Mark end of function. */ | ||
| 70 | #undef END | ||
| 71 | #define END(function) \ | ||
| 72 | cfi_endproc; \ | ||
| 73 | .size function, .- function; | ||
| 74 | |||
| 75 | /* Stack alignment. */ | ||
| 76 | #define ALMASK ~15 | ||
| 77 | |||
| 78 | #endif /* sys/asm.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch64-linux-gnu/sys/ucontext.h deleted-64| ... | @@ -1,64 +0,0 @@ | ||
| 1 | /* struct ucontext definition. | ||
| 2 | Copyright (C) 2022-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library. If not, see | ||
| 18 | <https://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | /* Don't rely on this, the interface is currently messed up and may need to | ||
| 21 | be broken to be fixed. */ | ||
| 22 | #ifndef _SYS_UCONTEXT_H | ||
| 23 | #define _SYS_UCONTEXT_H 1 | ||
| 24 | |||
| 25 | #include <features.h> | ||
| 26 | |||
| 27 | #include <bits/types/sigset_t.h> | ||
| 28 | #include <bits/types/stack_t.h> | ||
| 29 | |||
| 30 | #ifdef __USE_MISC | ||
| 31 | #define LARCH_NGREG 32 | ||
| 32 | |||
| 33 | #define LARCH_REG_RA 1 | ||
| 34 | #define LARCH_REG_SP 3 | ||
| 35 | #define LARCH_REG_S0 23 | ||
| 36 | #define LARCH_REG_S1 24 | ||
| 37 | #define LARCH_REG_A0 4 | ||
| 38 | #define LARCH_REG_S2 25 | ||
| 39 | #define LARCH_REG_NARGS 8 | ||
| 40 | |||
| 41 | typedef unsigned long int greg_t; | ||
| 42 | /* Container for all general registers. */ | ||
| 43 | typedef greg_t gregset_t[32]; | ||
| 44 | #endif | ||
| 45 | |||
| 46 | typedef struct mcontext_t | ||
| 47 | { | ||
| 48 | unsigned long long __pc; | ||
| 49 | unsigned long long __gregs[32]; | ||
| 50 | unsigned int __flags; | ||
| 51 | unsigned long long __extcontext[0] __attribute__((__aligned__(16))); | ||
| 52 | } mcontext_t; | ||
| 53 | |||
| 54 | /* Userlevel context. */ | ||
| 55 | typedef struct ucontext_t | ||
| 56 | { | ||
| 57 | unsigned long int __uc_flags; | ||
| 58 | struct ucontext_t *uc_link; | ||
| 59 | stack_t uc_stack; | ||
| 60 | sigset_t uc_sigmask; | ||
| 61 | mcontext_t uc_mcontext; | ||
| 62 | } ucontext_t; | ||
| 63 | |||
| 64 | #endif /* sys/ucontext.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch64-linux-gnu/sys/user.h deleted-42| ... | @@ -1,42 +0,0 @@ | ||
| 1 | /* struct user_regs_struct definition for LoongArch. | ||
| 2 | Copyright (C) 2022-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_USER_H | ||
| 20 | #define _SYS_USER_H 1 | ||
| 21 | |||
| 22 | #include <stdint.h> | ||
| 23 | |||
| 24 | struct user_regs_struct | ||
| 25 | { | ||
| 26 | /* Saved main processor registers. */ | ||
| 27 | uint64_t regs[32]; | ||
| 28 | |||
| 29 | /* Saved special registers. */ | ||
| 30 | uint64_t orig_a0; | ||
| 31 | uint64_t csr_era; | ||
| 32 | uint64_t csr_badv; | ||
| 33 | uint64_t reserved[10]; | ||
| 34 | }; | ||
| 35 | |||
| 36 | struct user_fp_struct { | ||
| 37 | uint64_t fpr[32]; | ||
| 38 | uint64_t fcc; | ||
| 39 | uint32_t fcsr; | ||
| 40 | }; | ||
| 41 | |||
| 42 | #endif /* _SYS_USER_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch64-linux-gnusf/bits/endianness.h deleted-11| ... | @@ -1,11 +0,0 @@ | ||
| 1 | #ifndef _BITS_ENDIANNESS_H | ||
| 2 | #define _BITS_ENDIANNESS_H 1 | ||
| 3 | |||
| 4 | #ifndef _BITS_ENDIAN_H | ||
| 5 | #error "Never use <bits/endianness.h> directly; include <endian.h> instead." | ||
| 6 | #endif | ||
| 7 | |||
| 8 | /* LoongArch is little-endian. */ | ||
| 9 | #define __BYTE_ORDER __LITTLE_ENDIAN | ||
| 10 | |||
| 11 | #endif /* bits/endianness.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch64-linux-gnusf/bits/fcntl.h deleted-61| ... | @@ -1,61 +0,0 @@ | ||
| 1 | /* O_*, F_*, FD_* bit values for the generic Linux/LoongArch ABI. | ||
| 2 | Copyright (C) 2022-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _FCNTL_H | ||
| 20 | #error "Never use <bits/fcntl.h> directly; include <fcntl.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <bits/wordsize.h> | ||
| 24 | |||
| 25 | /* In 64-bit ISA files are always with 64bit off_t and F_*LK64 are the same as | ||
| 26 | non-64-bit versions. It will need to be revised for 128-bit. */ | ||
| 27 | #if __WORDSIZE == 64 | ||
| 28 | #define __O_LARGEFILE 0 | ||
| 29 | |||
| 30 | #define F_GETLK64 5 /* Get record locking info. */ | ||
| 31 | #define F_SETLK64 6 /* Set record locking info (non-blocking). */ | ||
| 32 | #define F_SETLKW64 7 /* Set record locking info (blocking). */ | ||
| 33 | #endif | ||
| 34 | |||
| 35 | struct flock | ||
| 36 | { | ||
| 37 | short int l_type; /* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK. */ | ||
| 38 | short int l_whence; /* Where `l_start' is relative to (like `lseek'). */ | ||
| 39 | #ifndef __USE_FILE_OFFSET64 | ||
| 40 | __off_t l_start; /* Offset where the lock begins. */ | ||
| 41 | __off_t l_len; /* Size of the locked area; zero means until EOF. */ | ||
| 42 | #else | ||
| 43 | __off64_t l_start; /* Offset where the lock begins. */ | ||
| 44 | __off64_t l_len; /* Size of the locked area; zero means until EOF. */ | ||
| 45 | #endif | ||
| 46 | __pid_t l_pid; /* Process holding the lock. */ | ||
| 47 | }; | ||
| 48 | |||
| 49 | #ifdef __USE_LARGEFILE64 | ||
| 50 | struct flock64 | ||
| 51 | { | ||
| 52 | short int l_type; /* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK. */ | ||
| 53 | short int l_whence; /* Where `l_start' is relative to (like `lseek'). */ | ||
| 54 | __off64_t l_start; /* Offset where the lock begins. */ | ||
| 55 | __off64_t l_len; /* Size of the locked area; zero means until EOF. */ | ||
| 56 | __pid_t l_pid; /* Process holding the lock. */ | ||
| 57 | }; | ||
| 58 | #endif | ||
| 59 | |||
| 60 | /* Include generic Linux declarations. */ | ||
| 61 | #include <bits/fcntl-linux.h> | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch64-linux-gnusf/bits/fenv.h deleted-90| ... | @@ -1,90 +0,0 @@ | ||
| 1 | /* Floating point environment. | ||
| 2 | Copyright (C) 2022-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _FENV_H | ||
| 20 | #error "Never use <bits/fenv.h> directly; include <fenv.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Define bits representing the exception. We use the bit positions | ||
| 24 | of the appropriate bits in the FPU control word. */ | ||
| 25 | enum | ||
| 26 | { | ||
| 27 | FE_INEXACT = | ||
| 28 | #define FE_INEXACT 0x010000 | ||
| 29 | FE_INEXACT, | ||
| 30 | FE_UNDERFLOW = | ||
| 31 | #define FE_UNDERFLOW 0x020000 | ||
| 32 | FE_UNDERFLOW, | ||
| 33 | FE_OVERFLOW = | ||
| 34 | #define FE_OVERFLOW 0x040000 | ||
| 35 | FE_OVERFLOW, | ||
| 36 | FE_DIVBYZERO = | ||
| 37 | #define FE_DIVBYZERO 0x080000 | ||
| 38 | FE_DIVBYZERO, | ||
| 39 | FE_INVALID = | ||
| 40 | #define FE_INVALID 0x100000 | ||
| 41 | FE_INVALID, | ||
| 42 | }; | ||
| 43 | |||
| 44 | #define FE_ALL_EXCEPT \ | ||
| 45 | (FE_INEXACT | FE_DIVBYZERO | FE_UNDERFLOW | FE_OVERFLOW | FE_INVALID) | ||
| 46 | |||
| 47 | /* The LoongArch FPU supports all of the four defined rounding modes. We | ||
| 48 | use again the bit positions in the FPU control word as the values | ||
| 49 | for the appropriate macros. */ | ||
| 50 | enum | ||
| 51 | { | ||
| 52 | FE_TONEAREST = | ||
| 53 | #define FE_TONEAREST 0x000 | ||
| 54 | FE_TONEAREST, | ||
| 55 | FE_TOWARDZERO = | ||
| 56 | #define FE_TOWARDZERO 0x100 | ||
| 57 | FE_TOWARDZERO, | ||
| 58 | FE_UPWARD = | ||
| 59 | #define FE_UPWARD 0x200 | ||
| 60 | FE_UPWARD, | ||
| 61 | FE_DOWNWARD = | ||
| 62 | #define FE_DOWNWARD 0x300 | ||
| 63 | FE_DOWNWARD | ||
| 64 | }; | ||
| 65 | |||
| 66 | /* Type representing exception flags. */ | ||
| 67 | typedef unsigned int fexcept_t; | ||
| 68 | |||
| 69 | /* Type representing floating-point environment. This function corresponds | ||
| 70 | to the layout of the block written by the `fstenv'. */ | ||
| 71 | typedef struct | ||
| 72 | { | ||
| 73 | unsigned int __fp_control_register; | ||
| 74 | } fenv_t; | ||
| 75 | |||
| 76 | /* If the default argument is used we use this value. */ | ||
| 77 | #define FE_DFL_ENV ((const fenv_t *) -1) | ||
| 78 | |||
| 79 | #ifdef __USE_GNU | ||
| 80 | /* Floating-point environment where none of the exception is masked. */ | ||
| 81 | #define FE_NOMASK_ENV ((const fenv_t *) -257) | ||
| 82 | #endif | ||
| 83 | |||
| 84 | #if __GLIBC_USE (IEC_60559_BFP_EXT_C23) | ||
| 85 | /* Type representing floating-point control modes. */ | ||
| 86 | typedef unsigned int femode_t; | ||
| 87 | |||
| 88 | /* Default floating-point control modes. */ | ||
| 89 | #define FE_DFL_MODE ((const femode_t *) -1L) | ||
| 90 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch64-linux-gnusf/bits/hwcap.h deleted-39| ... | @@ -1,39 +0,0 @@ | ||
| 1 | /* Defines for bits in AT_HWCAP. LoongArch64 Linux version. | ||
| 2 | Copyright (C) 2022-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <http://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #if !defined (_SYS_AUXV_H) | ||
| 20 | # error "Never include <bits/hwcap.h> directly; use <sys/auxv.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* The following must match the kernel's <asm/hwcap.h>. */ | ||
| 24 | /* HWCAP flags */ | ||
| 25 | #define HWCAP_LOONGARCH_CPUCFG (1 << 0) | ||
| 26 | #define HWCAP_LOONGARCH_LAM (1 << 1) | ||
| 27 | #define HWCAP_LOONGARCH_UAL (1 << 2) | ||
| 28 | #define HWCAP_LOONGARCH_FPU (1 << 3) | ||
| 29 | #define HWCAP_LOONGARCH_LSX (1 << 4) | ||
| 30 | #define HWCAP_LOONGARCH_LASX (1 << 5) | ||
| 31 | #define HWCAP_LOONGARCH_CRC32 (1 << 6) | ||
| 32 | #define HWCAP_LOONGARCH_COMPLEX (1 << 7) | ||
| 33 | #define HWCAP_LOONGARCH_CRYPTO (1 << 8) | ||
| 34 | #define HWCAP_LOONGARCH_LVZ (1 << 9) | ||
| 35 | #define HWCAP_LOONGARCH_LBT_X86 (1 << 10) | ||
| 36 | #define HWCAP_LOONGARCH_LBT_ARM (1 << 11) | ||
| 37 | #define HWCAP_LOONGARCH_LBT_MIPS (1 << 12) | ||
| 38 | #define HWCAP_LOONGARCH_PTW (1 << 13) | ||
| 39 | #define HWCAP_LOONGARCH_LSPW (1 << 14) | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch64-linux-gnusf/bits/link.h deleted-76| ... | @@ -1,76 +0,0 @@ | ||
| 1 | /* Machine-specific declarations for dynamic linker interface. | ||
| 2 | Copyright (C) 2022-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _LINK_H | ||
| 20 | #error "Never include <bits/link.h> directly; use <link.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef __loongarch_soft_float | ||
| 24 | typedef float La_loongarch_vr | ||
| 25 | __attribute__ ((__vector_size__ (16), __aligned__ (16))); | ||
| 26 | typedef float La_loongarch_xr | ||
| 27 | __attribute__ ((__vector_size__ (32), __aligned__ (16))); | ||
| 28 | |||
| 29 | typedef union | ||
| 30 | { | ||
| 31 | double fpreg[4]; | ||
| 32 | La_loongarch_vr vr[2]; | ||
| 33 | La_loongarch_xr xr[1]; | ||
| 34 | } La_loongarch_vector __attribute__ ((__aligned__ (16))); | ||
| 35 | #endif | ||
| 36 | |||
| 37 | typedef struct La_loongarch_regs | ||
| 38 | { | ||
| 39 | unsigned long int lr_reg[8]; /* a0 - a7 */ | ||
| 40 | #ifndef __loongarch_soft_float | ||
| 41 | La_loongarch_vector lr_vec[8]; /* fa0 - fa7 or vr0 - vr7 or xr0 - xr7*/ | ||
| 42 | #endif | ||
| 43 | unsigned long int lr_ra; | ||
| 44 | unsigned long int lr_sp; | ||
| 45 | } La_loongarch_regs; | ||
| 46 | |||
| 47 | /* Return values for calls from PLT on LoongArch. */ | ||
| 48 | typedef struct La_loongarch_retval | ||
| 49 | { | ||
| 50 | unsigned long int lrv_a0; | ||
| 51 | unsigned long int lrv_a1; | ||
| 52 | #ifndef __loongarch_soft_float | ||
| 53 | La_loongarch_vector lrv_vec0; | ||
| 54 | La_loongarch_vector lrv_vec1; | ||
| 55 | #endif | ||
| 56 | } La_loongarch_retval; | ||
| 57 | |||
| 58 | __BEGIN_DECLS | ||
| 59 | |||
| 60 | extern ElfW (Addr) la_loongarch_gnu_pltenter (ElfW (Sym) *__sym, | ||
| 61 | 					 unsigned int __ndx, | ||
| 62 | 					 uintptr_t *__refcook, | ||
| 63 | 					 uintptr_t *__defcook, | ||
| 64 | 					 La_loongarch_regs *__regs, | ||
| 65 | 					 unsigned int *__flags, | ||
| 66 | 					 const char *__symname, | ||
| 67 | 					 long int *__framesizep); | ||
| 68 | extern unsigned int la_loongarch_gnu_pltexit (ElfW (Sym) *__sym, | ||
| 69 | 					 unsigned int __ndx, | ||
| 70 | 					 uintptr_t *__refcook, | ||
| 71 | 					 uintptr_t *__defcook, | ||
| 72 | 					 const La_loongarch_regs *__inregs, | ||
| 73 | 					 La_loongarch_retval *__outregs, | ||
| 74 | 					 const char *__symname); | ||
| 75 | |||
| 76 | __END_DECLS | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch64-linux-gnusf/bits/link_lavcurrent.h deleted-25| ... | @@ -1,25 +0,0 @@ | ||
| 1 | /* Data structure for communication from the run-time dynamic linker for | ||
| 2 | loaded ELF shared objects. LAV_CURRENT definition. | ||
| 3 | Copyright (C) 2023-2025 Free Software Foundation, Inc. | ||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library; if not, see | ||
| 18 | <https://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifndef _LINK_H | ||
| 21 | # error "Never include <bits/link_lavcurrent.h> directly; use <link.h> instead." | ||
| 22 | #endif | ||
| 23 | |||
| 24 | /* Version numbers for la_version handshake interface. */ | ||
| 25 | #define LAV_CURRENT	3 | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch64-linux-gnusf/bits/long-double.h deleted-21| ... | @@ -1,21 +0,0 @@ | ||
| 1 | /* Properties of long double type. ldbl-128 version. | ||
| 2 | Copyright (C) 2016-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* long double is distinct from double, so there is nothing to | ||
| 20 | define here. */ | ||
| 21 | #define __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI 0 | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch64-linux-gnusf/bits/procfs.h deleted-52| ... | @@ -1,52 +0,0 @@ | ||
| 1 | /* Types for registers for sys/procfs.h. | ||
| 2 | Copyright (C) 2022-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library. If not, see | ||
| 18 | <https://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifndef _SYS_PROCFS_H | ||
| 21 | # error "Never include <bits/procfs.h> directly; use <sys/procfs.h> instead." | ||
| 22 | #endif | ||
| 23 | |||
| 24 | /* Type for a general-purpose register. */ | ||
| 25 | typedef __uint64_t elf_greg_t; | ||
| 26 | |||
| 27 | /* And the whole bunch of them. We could have used `struct | ||
| 28 | pt_regs' directly in the typedef, but tradition says that | ||
| 29 | the register set is an array, which does have some peculiar | ||
| 30 | semantics, so leave it that way. */ | ||
| 31 | #define ELF_NGREG (sizeof (struct user_regs_struct) / sizeof (elf_greg_t)) | ||
| 32 | typedef elf_greg_t elf_gregset_t[ELF_NGREG]; | ||
| 33 | |||
| 34 | #define ELF_NFPREG 34 /* 32 FPRs + 8-byte byte-vec for fcc + 4-byte FCR */ | ||
| 35 | typedef union | ||
| 36 | { | ||
| 37 | double d; | ||
| 38 | float f; | ||
| 39 | } elf_fpreg_t; | ||
| 40 | typedef elf_fpreg_t elf_fpregset_t[ELF_NFPREG]; | ||
| 41 | |||
| 42 | typedef union | ||
| 43 | { | ||
| 44 | double d[2]; | ||
| 45 | float f[4]; | ||
| 46 | } __attribute__ ((__aligned__ (16))) elf_lsxregset_t[32]; | ||
| 47 | |||
| 48 | typedef union | ||
| 49 | { | ||
| 50 | double d[4]; | ||
| 51 | float f[8]; | ||
| 52 | } __attribute__ ((__aligned__ (32))) elf_lasxregset_t[32]; | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch64-linux-gnusf/bits/pthread_stack_min.h deleted-20| ... | @@ -1,20 +0,0 @@ | ||
| 1 | /* Definition of PTHREAD_STACK_MIN. LoongArch Linux version. | ||
| 2 | Copyright (C) 2022-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public License as | ||
| 7 | published by the Free Software Foundation; either version 2.1 of the | ||
| 8 | License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* Minimum size for a thread. At least two pages with 64k pages. */ | ||
| 20 | #define PTHREAD_STACK_MIN	131072 | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch64-linux-gnusf/bits/rseq.h deleted-36| ... | @@ -1,36 +0,0 @@ | ||
| 1 | /* Restartable Sequences Linux LoongArch architecture header. | ||
| 2 | Copyright (C) 2024-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_RSEQ_H | ||
| 19 | # error "Never use <bits/rseq.h> directly; include <sys/rseq.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* RSEQ_SIG is a signature required before each abort handler code. | ||
| 23 | |||
| 24 | It is a 32-bit value that maps to actual architecture code compiled | ||
| 25 | into applications and libraries. It needs to be defined for each | ||
| 26 | architecture. When choosing this value, it needs to be taken into | ||
| 27 | account that generating invalid instructions may have ill effects on | ||
| 28 | tools like objdump, and may also have impact on the CPU speculative | ||
| 29 | execution efficiency in some cases. | ||
| 30 | |||
| 31 | RSEQ_SIG uses the following break instruction: | ||
| 32 | |||
| 33 | 0x002a0010	break	0x10 | ||
| 34 | */ | ||
| 35 | |||
| 36 | #define RSEQ_SIG 0x002a0010 | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch64-linux-gnusf/bits/setjmp.h deleted-42| ... | @@ -1,42 +0,0 @@ | ||
| 1 | /* Define the machine-dependent type `jmp_buf'. | ||
| 2 | Copyright (C) 2022-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _LOONGARCH_BITS_SETJMP_H | ||
| 20 | #define _LOONGARCH_BITS_SETJMP_H | ||
| 21 | |||
| 22 | typedef struct __jmp_buf_internal_tag | ||
| 23 | { | ||
| 24 | /* Program counter. */ | ||
| 25 | long int __pc; | ||
| 26 | /* Stack pointer. */ | ||
| 27 | long int __sp; | ||
| 28 | /* Reserved */ | ||
| 29 | long int __x; | ||
| 30 | /* Frame pointer. */ | ||
| 31 | long int __fp; | ||
| 32 | /* Callee-saved registers. */ | ||
| 33 | long int __regs[9]; | ||
| 34 | |||
| 35 | #ifndef __loongarch_soft_float | ||
| 36 | /* Callee-saved floating point registers. */ | ||
| 37 | double __fpregs[8]; | ||
| 38 | #endif | ||
| 39 | |||
| 40 | } __jmp_buf[1]; | ||
| 41 | |||
| 42 | #endif /* _LOONGARCH_BITS_SETJMP_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch64-linux-gnusf/bits/shmlba.h deleted-24| ... | @@ -1,24 +0,0 @@ | ||
| 1 | /* Define SHMLBA. LoongArch version. | ||
| 2 | Copyright (C) 2023-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SHM_H | ||
| 20 | # error "Never use <bits/shmlba.h> directly; include <sys/shm.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Segment low boundary address multiple. */ | ||
| 24 | #define SHMLBA		0x10000 | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch64-linux-gnusf/bits/sigstack.h deleted-32| ... | @@ -1,32 +0,0 @@ | ||
| 1 | /* sigstack, sigaltstack definitions. | ||
| 2 | Copyright (C) 2022-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_SIGSTACK_H | ||
| 20 | #define _BITS_SIGSTACK_H 1 | ||
| 21 | |||
| 22 | #if !defined _SIGNAL_H && !defined _SYS_UCONTEXT_H | ||
| 23 | # error "Never include this file directly. Use <signal.h> instead" | ||
| 24 | #endif | ||
| 25 | |||
| 26 | /* Minimum stack size for a signal handler. */ | ||
| 27 | #define MINSIGSTKSZ	4096 | ||
| 28 | |||
| 29 | /* System default stack size. */ | ||
| 30 | #define SIGSTKSZ	16384 | ||
| 31 | |||
| 32 | #endif /* bits/sigstack.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch64-linux-gnusf/bits/struct_stat.h deleted-127| ... | @@ -1,127 +0,0 @@ | ||
| 1 | /* Definition for struct stat. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #if !defined _SYS_STAT_H && !defined _FCNTL_H | ||
| 20 | # error "Never include <bits/struct_stat.h> directly; use <sys/stat.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef _BITS_STRUCT_STAT_H | ||
| 24 | #define _BITS_STRUCT_STAT_H	1 | ||
| 25 | |||
| 26 | #include <bits/endian.h> | ||
| 27 | #include <bits/wordsize.h> | ||
| 28 | |||
| 29 | #if defined __USE_FILE_OFFSET64 | ||
| 30 | # define __field64(type, type64, name) type64 name | ||
| 31 | #elif __WORDSIZE == 64 || defined __INO_T_MATCHES_INO64_T | ||
| 32 | # if defined __INO_T_MATCHES_INO64_T && !defined __OFF_T_MATCHES_OFF64_T | ||
| 33 | # error "ino_t and off_t must both be the same type" | ||
| 34 | # endif | ||
| 35 | # define __field64(type, type64, name) type name | ||
| 36 | #elif __BYTE_ORDER == __LITTLE_ENDIAN | ||
| 37 | # define __field64(type, type64, name) \ | ||
| 38 | type name __attribute__((__aligned__ (__alignof__ (type64)))); int __##name##_pad | ||
| 39 | #else | ||
| 40 | # define __field64(type, type64, name) \ | ||
| 41 | int __##name##_pad __attribute__((__aligned__ (__alignof__ (type64)))); type name | ||
| 42 | #endif | ||
| 43 | |||
| 44 | struct stat | ||
| 45 | { | ||
| 46 | __dev_t st_dev;		/* Device. */ | ||
| 47 | __field64(__ino_t, __ino64_t, st_ino); /* File serial number. */ | ||
| 48 | __mode_t st_mode;		/* File mode. */ | ||
| 49 | __nlink_t st_nlink;		/* Link count. */ | ||
| 50 | __uid_t st_uid;		/* User ID of the file's owner.	*/ | ||
| 51 | __gid_t st_gid;		/* Group ID of the file's group.*/ | ||
| 52 | __dev_t st_rdev;		/* Device number, if device. */ | ||
| 53 | __dev_t __pad1; | ||
| 54 | __field64(__off_t, __off64_t, st_size); /* Size of file, in bytes. */ | ||
| 55 | __blksize_t st_blksize;	/* Optimal block size for I/O. */ | ||
| 56 | int __pad2; | ||
| 57 | __field64(__blkcnt_t, __blkcnt64_t, st_blocks); /* 512-byte blocks */ | ||
| 58 | #ifdef __USE_XOPEN2K8 | ||
| 59 | /* Nanosecond resolution timestamps are stored in a format | ||
| 60 | equivalent to 'struct timespec'. This is the type used | ||
| 61 | whenever possible but the Unix namespace rules do not allow the | ||
| 62 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 63 | Therefore we have to handle the use of this header in strictly | ||
| 64 | standard-compliant sources special. */ | ||
| 65 | struct timespec st_atim;		/* Time of last access. */ | ||
| 66 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 67 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 68 | # define st_atime st_atim.tv_sec	/* Backward compatibility. */ | ||
| 69 | # define st_mtime st_mtim.tv_sec | ||
| 70 | # define st_ctime st_ctim.tv_sec | ||
| 71 | #else | ||
| 72 | __time_t st_atime;			/* Time of last access. */ | ||
| 73 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 74 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 75 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 76 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 77 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 78 | #endif | ||
| 79 | int __glibc_reserved[2]; | ||
| 80 | }; | ||
| 81 | |||
| 82 | #undef __field64 | ||
| 83 | |||
| 84 | #ifdef __USE_LARGEFILE64 | ||
| 85 | struct stat64 | ||
| 86 | { | ||
| 87 | __dev_t st_dev;		/* Device. */ | ||
| 88 | __ino64_t st_ino;		/* File serial number.	*/ | ||
| 89 | __mode_t st_mode;		/* File mode. */ | ||
| 90 | __nlink_t st_nlink;		/* Link count. */ | ||
| 91 | __uid_t st_uid;		/* User ID of the file's owner.	*/ | ||
| 92 | __gid_t st_gid;		/* Group ID of the file's group.*/ | ||
| 93 | __dev_t st_rdev;		/* Device number, if device. */ | ||
| 94 | __dev_t __pad1; | ||
| 95 | __off64_t st_size;		/* Size of file, in bytes. */ | ||
| 96 | __blksize_t st_blksize;	/* Optimal block size for I/O. */ | ||
| 97 | int __pad2; | ||
| 98 | __blkcnt64_t st_blocks;	/* Nr. 512-byte blocks allocated. */ | ||
| 99 | #ifdef __USE_XOPEN2K8 | ||
| 100 | /* Nanosecond resolution timestamps are stored in a format | ||
| 101 | equivalent to 'struct timespec'. This is the type used | ||
| 102 | whenever possible but the Unix namespace rules do not allow the | ||
| 103 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 104 | Therefore we have to handle the use of this header in strictly | ||
| 105 | standard-compliant sources special. */ | ||
| 106 | struct timespec st_atim;		/* Time of last access. */ | ||
| 107 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 108 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 109 | #else | ||
| 110 | __time_t st_atime;			/* Time of last access. */ | ||
| 111 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 112 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 113 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 114 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 115 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 116 | #endif | ||
| 117 | int __glibc_reserved[2]; | ||
| 118 | }; | ||
| 119 | #endif | ||
| 120 | |||
| 121 | /* Tell code we have these members. */ | ||
| 122 | #define	_STATBUF_ST_BLKSIZE | ||
| 123 | #define _STATBUF_ST_RDEV | ||
| 124 | /* Nanosecond resolution time values are supported. */ | ||
| 125 | #define _STATBUF_ST_NSEC | ||
| 126 | |||
| 127 | #endif /* _BITS_STRUCT_STAT_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch64-linux-gnusf/bits/timesize.h deleted-20| ... | @@ -1,20 +0,0 @@ | ||
| 1 | /* Bit size of the time_t type at glibc build time, general case. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* Size in bits of the 'time_t' type of the default ABI. */ | ||
| 20 | #define __TIMESIZE	64 | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch64-linux-gnusf/bits/wordsize.h deleted-19| ... | @@ -1,19 +0,0 @@ | ||
| 1 | /* Copyright (C) 1999-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #define __WORDSIZE			64 | ||
| 19 | #define __WORDSIZE_TIME64_COMPAT32	0 | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch64-linux-gnusf/fpu_control.h deleted-119| ... | @@ -1,119 +0,0 @@ | ||
| 1 | /* FPU control word bits. | ||
| 2 | Copyright (C) 2022-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _FPU_CONTROL_H | ||
| 20 | #define _FPU_CONTROL_H | ||
| 21 | |||
| 22 | /* LoongArch FPU floating point control register bits. | ||
| 23 | * | ||
| 24 | * 31-29 -> reserved (read as 0, can not changed by software) | ||
| 25 | * 28 -> cause bit for invalid exception | ||
| 26 | * 27 -> cause bit for division by zero exception | ||
| 27 | * 26 -> cause bit for overflow exception | ||
| 28 | * 25 -> cause bit for underflow exception | ||
| 29 | * 24 -> cause bit for inexact exception | ||
| 30 | * 23-21 -> reserved (read as 0, can not changed by software) | ||
| 31 | * 20 -> flag invalid exception | ||
| 32 | * 19 -> flag division by zero exception | ||
| 33 | * 18 -> flag overflow exception | ||
| 34 | * 17 -> flag underflow exception | ||
| 35 | * 16 -> flag inexact exception | ||
| 36 | * 9-8 -> rounding control | ||
| 37 | * 7-5 -> reserved (read as 0, can not changed by software) | ||
| 38 | * 4 -> enable exception for invalid exception | ||
| 39 | * 3 -> enable exception for division by zero exception | ||
| 40 | * 2 -> enable exception for overflow exception | ||
| 41 | * 1 -> enable exception for underflow exception | ||
| 42 | * 0 -> enable exception for inexact exception | ||
| 43 | * | ||
| 44 | * | ||
| 45 | * Rounding Control: | ||
| 46 | * 00 - rounding ties to even (RNE) | ||
| 47 | * 01 - rounding toward zero (RZ) | ||
| 48 | * 10 - rounding (up) toward plus infinity (RP) | ||
| 49 | * 11 - rounding (down) toward minus infinity (RM) | ||
| 50 | */ | ||
| 51 | |||
| 52 | #include <features.h> | ||
| 53 | |||
| 54 | #ifdef __loongarch_soft_float | ||
| 55 | |||
| 56 | #define _FPU_RESERVED 0xffffffff | ||
| 57 | #define _FPU_DEFAULT 0x00000000 | ||
| 58 | typedef unsigned int fpu_control_t; | ||
| 59 | #define _FPU_GETCW(cw) (cw) = 0 | ||
| 60 | #define _FPU_SETCW(cw) (void) (cw) | ||
| 61 | extern fpu_control_t __fpu_control; | ||
| 62 | |||
| 63 | #else /* __loongarch_soft_float */ | ||
| 64 | |||
| 65 | /* Masks for interrupts. */ | ||
| 66 | #define _FPU_MASK_V 0x10 /* Invalid operation */ | ||
| 67 | #define _FPU_MASK_Z 0x08 /* Division by zero */ | ||
| 68 | #define _FPU_MASK_O 0x04 /* Overflow */ | ||
| 69 | #define _FPU_MASK_U 0x02 /* Underflow */ | ||
| 70 | #define _FPU_MASK_I 0x01 /* Inexact operation */ | ||
| 71 | |||
| 72 | /* Flush denormalized numbers to zero. */ | ||
| 73 | #define _FPU_FLUSH_TZ 0x1000000 | ||
| 74 | |||
| 75 | /* Rounding control. */ | ||
| 76 | #define _FPU_RC_NEAREST 0x000 /* RECOMMENDED */ | ||
| 77 | #define _FPU_RC_ZERO 0x100 | ||
| 78 | #define _FPU_RC_UP 0x200 | ||
| 79 | #define _FPU_RC_DOWN 0x300 | ||
| 80 | /* Mask for rounding control. */ | ||
| 81 | #define _FPU_RC_MASK 0x300 | ||
| 82 | |||
| 83 | #define _FPU_RESERVED 0x0 | ||
| 84 | |||
| 85 | #define _FPU_DEFAULT 0x0 | ||
| 86 | #define _FPU_IEEE 0x1F | ||
| 87 | |||
| 88 | /* Type of the control word. */ | ||
| 89 | typedef unsigned int fpu_control_t __attribute__ ((__mode__ (__SI__))); | ||
| 90 | |||
| 91 | /* Macros for accessing the hardware control word. */ | ||
| 92 | extern fpu_control_t __loongarch_fpu_getcw (void) __THROW; | ||
| 93 | extern void __loongarch_fpu_setcw (fpu_control_t) __THROW; | ||
| 94 | #define _FPU_GETCW(cw) __asm__ volatile ("movfcsr2gr %0,$fcsr0" : "=r"(cw)) | ||
| 95 | #define _FPU_SETCW(cw) __asm__ volatile ("movgr2fcsr $fcsr0,%0" : : "r"(cw)) | ||
| 96 | |||
| 97 | /* Default control word set at startup. */ | ||
| 98 | extern fpu_control_t __fpu_control; | ||
| 99 | |||
| 100 | # define _FCLASS_SNAN (1 << 0) | ||
| 101 | # define _FCLASS_QNAN (1 << 1) | ||
| 102 | # define _FCLASS_MINF (1 << 2) | ||
| 103 | # define _FCLASS_MNORM (1 << 3) | ||
| 104 | # define _FCLASS_MSUBNORM (1 << 4) | ||
| 105 | # define _FCLASS_MZERO (1 << 5) | ||
| 106 | # define _FCLASS_PINF (1 << 6) | ||
| 107 | # define _FCLASS_PNORM (1 << 7) | ||
| 108 | # define _FCLASS_PSUBNORM (1 << 8) | ||
| 109 | # define _FCLASS_PZERO (1 << 9) | ||
| 110 | |||
| 111 | # define _FCLASS_ZERO (_FCLASS_MZERO | _FCLASS_PZERO) | ||
| 112 | # define _FCLASS_SUBNORM (_FCLASS_MSUBNORM | _FCLASS_PSUBNORM) | ||
| 113 | # define _FCLASS_NORM (_FCLASS_MNORM | _FCLASS_PNORM) | ||
| 114 | # define _FCLASS_INF (_FCLASS_MINF | _FCLASS_PINF) | ||
| 115 | # define _FCLASS_NAN (_FCLASS_SNAN | _FCLASS_QNAN) | ||
| 116 | |||
| 117 | #endif /* __loongarch_soft_float */ | ||
| 118 | |||
| 119 | #endif /* fpu_control.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch64-linux-gnusf/gnu/lib-names.h deleted-16| ... | @@ -1,16 +0,0 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | It defines macros to allow user program to find the shared | ||
| 3 | library files which come as part of GNU libc. */ | ||
| 4 | #ifndef __GNU_LIB_NAMES_H | ||
| 5 | #define __GNU_LIB_NAMES_H	1 | ||
| 6 | |||
| 7 | #include <bits/wordsize.h> | ||
| 8 | |||
| 9 | #if __WORDSIZE == 64 && defined __loongarch_soft_float | ||
| 10 | # include <gnu/lib-names-lp64s.h> | ||
| 11 | #endif | ||
| 12 | #if __WORDSIZE == 64 && defined __loongarch_double_float | ||
| 13 | # include <gnu/lib-names-lp64d.h> | ||
| 14 | #endif | ||
| 15 | |||
| 16 | #endif	/* gnu/lib-names.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch64-linux-gnusf/gnu/stubs-lp64s.h deleted-38| ... | @@ -1,38 +0,0 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | It defines a symbol `__stub_FUNCTION' for each function | ||
| 3 | in the C library which is a stub, meaning it will fail | ||
| 4 | every time called, usually setting errno to ENOSYS. */ | ||
| 5 | |||
| 6 | #ifdef _LIBC | ||
| 7 | #error Applications may not define the macro _LIBC | ||
| 8 | #endif | ||
| 9 | |||
| 10 | #define __stub___compat_bdflush | ||
| 11 | #define __stub___compat_create_module | ||
| 12 | #define __stub___compat_get_kernel_syms | ||
| 13 | #define __stub___compat_query_module | ||
| 14 | #define __stub___compat_uselib | ||
| 15 | #define __stub_chflags | ||
| 16 | #define __stub_fchflags | ||
| 17 | #define __stub_feclearexcept | ||
| 18 | #define __stub_fedisableexcept | ||
| 19 | #define __stub_feenableexcept | ||
| 20 | #define __stub_fegetenv | ||
| 21 | #define __stub_fegetexcept | ||
| 22 | #define __stub_fegetexceptflag | ||
| 23 | #define __stub_fegetmode | ||
| 24 | #define __stub_fegetround | ||
| 25 | #define __stub_feholdexcept | ||
| 26 | #define __stub_feraiseexcept | ||
| 27 | #define __stub_fesetenv | ||
| 28 | #define __stub_fesetexcept | ||
| 29 | #define __stub_fesetexceptflag | ||
| 30 | #define __stub_fesetmode | ||
| 31 | #define __stub_fesetround | ||
| 32 | #define __stub_fetestexcept | ||
| 33 | #define __stub_feupdateenv | ||
| 34 | #define __stub_gtty | ||
| 35 | #define __stub_revoke | ||
| 36 | #define __stub_setlogin | ||
| 37 | #define __stub_sigreturn | ||
| 38 | #define __stub_stty | ||
lib/libc/include/loongarch64-linux-gnusf/gnu/stubs.h deleted-12| ... | @@ -1,12 +0,0 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | This file selects the right generated file of `__stub_FUNCTION' macros | ||
| 3 | based on the architecture being compiled for. */ | ||
| 4 | |||
| 5 | #include <bits/wordsize.h> | ||
| 6 | |||
| 7 | #if __WORDSIZE == 64 && defined __loongarch_soft_float | ||
| 8 | # include <gnu/stubs-lp64s.h> | ||
| 9 | #endif | ||
| 10 | #if __WORDSIZE == 64 && defined __loongarch_double_float | ||
| 11 | # include <gnu/stubs-lp64d.h> | ||
| 12 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch64-linux-gnusf/ieee754.h deleted-170| ... | @@ -1,170 +0,0 @@ | ||
| 1 | /* Copyright (C) 1992-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _IEEE754_H | ||
| 19 | #define _IEEE754_H 1 | ||
| 20 | |||
| 21 | #include <features.h> | ||
| 22 | |||
| 23 | #include <bits/endian.h> | ||
| 24 | |||
| 25 | __BEGIN_DECLS | ||
| 26 | |||
| 27 | union ieee754_float | ||
| 28 | { | ||
| 29 | float f; | ||
| 30 | |||
| 31 | /* This is the IEEE 754 single-precision format. */ | ||
| 32 | struct | ||
| 33 | { | ||
| 34 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 35 | 	unsigned int negative:1; | ||
| 36 | 	unsigned int exponent:8; | ||
| 37 | 	unsigned int mantissa:23; | ||
| 38 | #endif				/* Big endian. */ | ||
| 39 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 40 | 	unsigned int mantissa:23; | ||
| 41 | 	unsigned int exponent:8; | ||
| 42 | 	unsigned int negative:1; | ||
| 43 | #endif				/* Little endian. */ | ||
| 44 | } ieee; | ||
| 45 | |||
| 46 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 47 | struct | ||
| 48 | { | ||
| 49 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 50 | 	unsigned int negative:1; | ||
| 51 | 	unsigned int exponent:8; | ||
| 52 | 	unsigned int quiet_nan:1; | ||
| 53 | 	unsigned int mantissa:22; | ||
| 54 | #endif				/* Big endian. */ | ||
| 55 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 56 | 	unsigned int mantissa:22; | ||
| 57 | 	unsigned int quiet_nan:1; | ||
| 58 | 	unsigned int exponent:8; | ||
| 59 | 	unsigned int negative:1; | ||
| 60 | #endif				/* Little endian. */ | ||
| 61 | } ieee_nan; | ||
| 62 | }; | ||
| 63 | |||
| 64 | #define IEEE754_FLOAT_BIAS	0x7f /* Added to exponent. */ | ||
| 65 | |||
| 66 | |||
| 67 | union ieee754_double | ||
| 68 | { | ||
| 69 | double d; | ||
| 70 | |||
| 71 | /* This is the IEEE 754 double-precision format. */ | ||
| 72 | struct | ||
| 73 | { | ||
| 74 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 75 | 	unsigned int negative:1; | ||
| 76 | 	unsigned int exponent:11; | ||
| 77 | 	/* Together these comprise the mantissa. */ | ||
| 78 | 	unsigned int mantissa0:20; | ||
| 79 | 	unsigned int mantissa1:32; | ||
| 80 | #endif				/* Big endian. */ | ||
| 81 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 82 | 	/* Together these comprise the mantissa. */ | ||
| 83 | 	unsigned int mantissa1:32; | ||
| 84 | 	unsigned int mantissa0:20; | ||
| 85 | 	unsigned int exponent:11; | ||
| 86 | 	unsigned int negative:1; | ||
| 87 | #endif				/* Little endian. */ | ||
| 88 | } ieee; | ||
| 89 | |||
| 90 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 91 | struct | ||
| 92 | { | ||
| 93 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 94 | 	unsigned int negative:1; | ||
| 95 | 	unsigned int exponent:11; | ||
| 96 | 	unsigned int quiet_nan:1; | ||
| 97 | 	/* Together these comprise the mantissa. */ | ||
| 98 | 	unsigned int mantissa0:19; | ||
| 99 | 	unsigned int mantissa1:32; | ||
| 100 | #else | ||
| 101 | 	/* Together these comprise the mantissa. */ | ||
| 102 | 	unsigned int mantissa1:32; | ||
| 103 | 	unsigned int mantissa0:19; | ||
| 104 | 	unsigned int quiet_nan:1; | ||
| 105 | 	unsigned int exponent:11; | ||
| 106 | 	unsigned int negative:1; | ||
| 107 | #endif | ||
| 108 | } ieee_nan; | ||
| 109 | }; | ||
| 110 | |||
| 111 | #define IEEE754_DOUBLE_BIAS	0x3ff /* Added to exponent. */ | ||
| 112 | |||
| 113 | |||
| 114 | union ieee854_long_double | ||
| 115 | { | ||
| 116 | long double d; | ||
| 117 | |||
| 118 | /* This is the IEEE 854 quad-precision format. */ | ||
| 119 | struct | ||
| 120 | { | ||
| 121 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 122 | 	unsigned int negative:1; | ||
| 123 | 	unsigned int exponent:15; | ||
| 124 | 	/* Together these comprise the mantissa. */ | ||
| 125 | 	unsigned int mantissa0:16; | ||
| 126 | 	unsigned int mantissa1:32; | ||
| 127 | 	unsigned int mantissa2:32; | ||
| 128 | 	unsigned int mantissa3:32; | ||
| 129 | #endif				/* Big endian. */ | ||
| 130 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 131 | 	/* Together these comprise the mantissa. */ | ||
| 132 | 	unsigned int mantissa3:32; | ||
| 133 | 	unsigned int mantissa2:32; | ||
| 134 | 	unsigned int mantissa1:32; | ||
| 135 | 	unsigned int mantissa0:16; | ||
| 136 | 	unsigned int exponent:15; | ||
| 137 | 	unsigned int negative:1; | ||
| 138 | #endif				/* Little endian. */ | ||
| 139 | } ieee; | ||
| 140 | |||
| 141 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 142 | struct | ||
| 143 | { | ||
| 144 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 145 | 	unsigned int negative:1; | ||
| 146 | 	unsigned int exponent:15; | ||
| 147 | 	unsigned int quiet_nan:1; | ||
| 148 | 	/* Together these comprise the mantissa. */ | ||
| 149 | 	unsigned int mantissa0:15; | ||
| 150 | 	unsigned int mantissa1:32; | ||
| 151 | 	unsigned int mantissa2:32; | ||
| 152 | 	unsigned int mantissa3:32; | ||
| 153 | #else | ||
| 154 | 	/* Together these comprise the mantissa. */ | ||
| 155 | 	unsigned int mantissa3:32; | ||
| 156 | 	unsigned int mantissa2:32; | ||
| 157 | 	unsigned int mantissa1:32; | ||
| 158 | 	unsigned int mantissa0:15; | ||
| 159 | 	unsigned int quiet_nan:1; | ||
| 160 | 	unsigned int exponent:15; | ||
| 161 | 	unsigned int negative:1; | ||
| 162 | #endif | ||
| 163 | } ieee_nan; | ||
| 164 | }; | ||
| 165 | |||
| 166 | #define IEEE854_LONG_DOUBLE_BIAS 0x3fff /* Added to exponent. */ | ||
| 167 | |||
| 168 | __END_DECLS | ||
| 169 | |||
| 170 | #endif /* ieee754.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch64-linux-gnusf/sys/asm.h deleted-78| ... | @@ -1,78 +0,0 @@ | ||
| 1 | /* Miscellaneous macros. | ||
| 2 | Copyright (C) 2022-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_ASM_H | ||
| 20 | #define _SYS_ASM_H | ||
| 21 | |||
| 22 | #include <sys/regdef.h> | ||
| 23 | #include <sysdeps/generic/sysdep.h> | ||
| 24 | |||
| 25 | /* Macros to handle different pointer/register sizes for 32/64-bit code. */ | ||
| 26 | #define SZREG 8 | ||
| 27 | #define SZFREG 8 | ||
| 28 | #define SZVREG 16 | ||
| 29 | #define SZXREG 32 | ||
| 30 | #define REG_L ld.d | ||
| 31 | #define REG_S st.d | ||
| 32 | #define SRLI srli.d | ||
| 33 | #define SLLI slli.d | ||
| 34 | #define ADDI addi.d | ||
| 35 | #define ADD add.d | ||
| 36 | #define SUB sub.d | ||
| 37 | #define BSTRINS bstrins.d | ||
| 38 | #define LI li.d | ||
| 39 | #define FREG_L fld.d | ||
| 40 | #define FREG_S fst.d | ||
| 41 | |||
| 42 | /* Declare leaf routine. | ||
| 43 | The usage of macro LEAF/ENTRY is as follows: | ||
| 44 | 1. LEAF(fcn) -- the align value of fcn is .align 3 (default value) | ||
| 45 | 2. LEAF(fcn, 6) -- the align value of fcn is .align 6 | ||
| 46 | */ | ||
| 47 | #define LEAF_IMPL(symbol, aln, ...)	\ | ||
| 48 | 	.text;				\ | ||
| 49 | 	.globl symbol;			\ | ||
| 50 | 	.align aln;			\ | ||
| 51 | 	.type symbol, @function;	\ | ||
| 52 | symbol: \ | ||
| 53 | 	cfi_startproc; | ||
| 54 | |||
| 55 | |||
| 56 | #define LEAF(...) LEAF_IMPL(__VA_ARGS__, 3) | ||
| 57 | #define ENTRY(...) LEAF(__VA_ARGS__) | ||
| 58 | |||
| 59 | #define	LEAF_NO_ALIGN(symbol)		\ | ||
| 60 | 	.text;				\ | ||
| 61 | 	.globl	symbol;			\ | ||
| 62 | 	.type	symbol, @function;	\ | ||
| 63 | symbol: \ | ||
| 64 | 	cfi_startproc; | ||
| 65 | |||
| 66 | #define ENTRY_NO_ALIGN(symbol) LEAF_NO_ALIGN(symbol) | ||
| 67 | |||
| 68 | |||
| 69 | /* Mark end of function. */ | ||
| 70 | #undef END | ||
| 71 | #define END(function) \ | ||
| 72 | cfi_endproc; \ | ||
| 73 | .size function, .- function; | ||
| 74 | |||
| 75 | /* Stack alignment. */ | ||
| 76 | #define ALMASK ~15 | ||
| 77 | |||
| 78 | #endif /* sys/asm.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch64-linux-gnusf/sys/ucontext.h deleted-64| ... | @@ -1,64 +0,0 @@ | ||
| 1 | /* struct ucontext definition. | ||
| 2 | Copyright (C) 2022-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library. If not, see | ||
| 18 | <https://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | /* Don't rely on this, the interface is currently messed up and may need to | ||
| 21 | be broken to be fixed. */ | ||
| 22 | #ifndef _SYS_UCONTEXT_H | ||
| 23 | #define _SYS_UCONTEXT_H 1 | ||
| 24 | |||
| 25 | #include <features.h> | ||
| 26 | |||
| 27 | #include <bits/types/sigset_t.h> | ||
| 28 | #include <bits/types/stack_t.h> | ||
| 29 | |||
| 30 | #ifdef __USE_MISC | ||
| 31 | #define LARCH_NGREG 32 | ||
| 32 | |||
| 33 | #define LARCH_REG_RA 1 | ||
| 34 | #define LARCH_REG_SP 3 | ||
| 35 | #define LARCH_REG_S0 23 | ||
| 36 | #define LARCH_REG_S1 24 | ||
| 37 | #define LARCH_REG_A0 4 | ||
| 38 | #define LARCH_REG_S2 25 | ||
| 39 | #define LARCH_REG_NARGS 8 | ||
| 40 | |||
| 41 | typedef unsigned long int greg_t; | ||
| 42 | /* Container for all general registers. */ | ||
| 43 | typedef greg_t gregset_t[32]; | ||
| 44 | #endif | ||
| 45 | |||
| 46 | typedef struct mcontext_t | ||
| 47 | { | ||
| 48 | unsigned long long __pc; | ||
| 49 | unsigned long long __gregs[32]; | ||
| 50 | unsigned int __flags; | ||
| 51 | unsigned long long __extcontext[0] __attribute__((__aligned__(16))); | ||
| 52 | } mcontext_t; | ||
| 53 | |||
| 54 | /* Userlevel context. */ | ||
| 55 | typedef struct ucontext_t | ||
| 56 | { | ||
| 57 | unsigned long int __uc_flags; | ||
| 58 | struct ucontext_t *uc_link; | ||
| 59 | stack_t uc_stack; | ||
| 60 | sigset_t uc_sigmask; | ||
| 61 | mcontext_t uc_mcontext; | ||
| 62 | } ucontext_t; | ||
| 63 | |||
| 64 | #endif /* sys/ucontext.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/loongarch64-linux-gnusf/sys/user.h deleted-42| ... | @@ -1,42 +0,0 @@ | ||
| 1 | /* struct user_regs_struct definition for LoongArch. | ||
| 2 | Copyright (C) 2022-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_USER_H | ||
| 20 | #define _SYS_USER_H 1 | ||
| 21 | |||
| 22 | #include <stdint.h> | ||
| 23 | |||
| 24 | struct user_regs_struct | ||
| 25 | { | ||
| 26 | /* Saved main processor registers. */ | ||
| 27 | uint64_t regs[32]; | ||
| 28 | |||
| 29 | /* Saved special registers. */ | ||
| 30 | uint64_t orig_a0; | ||
| 31 | uint64_t csr_era; | ||
| 32 | uint64_t csr_badv; | ||
| 33 | uint64_t reserved[10]; | ||
| 34 | }; | ||
| 35 | |||
| 36 | struct user_fp_struct { | ||
| 37 | uint64_t fpr[32]; | ||
| 38 | uint64_t fcc; | ||
| 39 | uint32_t fcsr; | ||
| 40 | }; | ||
| 41 | |||
| 42 | #endif /* _SYS_USER_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnu/bits/dlfcn.h created+64| ... | @@ -0,0 +1,64 @@ | ||
| 1 | /* System dependent definitions for run-time dynamic loading. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _DLFCN_H | ||
| 20 | # error "Never use <bits/dlfcn.h> directly; include <dlfcn.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* The MODE argument to `dlopen' contains one of the following: */ | ||
| 24 | #define RTLD_LAZY	0x0001	/* Lazy function call binding. */ | ||
| 25 | #define RTLD_NOW	0x0002	/* Immediate function call binding. */ | ||
| 26 | #define RTLD_BINDING_MASK 0x3	/* Mask of binding time value. */ | ||
| 27 | #define RTLD_NOLOAD	0x00008	/* Do not load the object. */ | ||
| 28 | #define RTLD_DEEPBIND	0x00010	/* Use deep binding. */ | ||
| 29 | |||
| 30 | /* If the following bit is set in the MODE argument to `dlopen', | ||
| 31 | the symbols of the loaded object and its dependencies are made | ||
| 32 | visible as if the object were linked directly into the program. */ | ||
| 33 | #define RTLD_GLOBAL	0x0004 | ||
| 34 | |||
| 35 | /* Unix98 demands the following flag which is the inverse to RTLD_GLOBAL. | ||
| 36 | The implementation does this by default and so we can define the | ||
| 37 | value to zero. */ | ||
| 38 | #define RTLD_LOCAL 0 | ||
| 39 | |||
| 40 | /* Do not delete object when closed. */ | ||
| 41 | #define RTLD_NODELETE	0x01000 | ||
| 42 | |||
| 43 | #ifdef __USE_GNU | ||
| 44 | /* To support profiling of shared objects it is a good idea to call | ||
| 45 | the function found using `dlsym' using the following macro since | ||
| 46 | these calls do not use the PLT. But this would mean the dynamic | ||
| 47 | loader has no chance to find out when the function is called. The | ||
| 48 | macro applies the necessary magic so that profiling is possible. | ||
| 49 | Rewrite | ||
| 50 | 	foo = (*fctp) (arg1, arg2); | ||
| 51 | into | ||
| 52 | foo = DL_CALL_FCT (fctp, (arg1, arg2)); | ||
| 53 | */ | ||
| 54 | # define DL_CALL_FCT(fctp, args) \ | ||
| 55 | (_dl_mcount_wrapper_check ((void *) (fctp)), (*(fctp)) args) | ||
| 56 | |||
| 57 | __BEGIN_DECLS | ||
| 58 | |||
| 59 | /* This function calls the profiling functions. */ | ||
| 60 | extern void _dl_mcount_wrapper_check (void *__selfpc) __THROW; | ||
| 61 | |||
| 62 | __END_DECLS | ||
| 63 | |||
| 64 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnu/bits/errno.h created+52| ... | @@ -0,0 +1,52 @@ | ||
| 1 | /* Error constants. MIPS/Linux specific version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_ERRNO_H | ||
| 20 | |||
| 21 | #if !defined _ERRNO_H | ||
| 22 | # error "Never include <bits/errno.h> directly; use <errno.h> instead." | ||
| 23 | #endif | ||
| 24 | |||
| 25 | # include <linux/errno.h> | ||
| 26 | |||
| 27 | /* Older Linux headers do not define these constants. */ | ||
| 28 | # ifndef ENOTSUP | ||
| 29 | # define ENOTSUP		EOPNOTSUPP | ||
| 30 | # endif | ||
| 31 | |||
| 32 | # ifndef ECANCELED | ||
| 33 | # define ECANCELED		158 | ||
| 34 | # endif | ||
| 35 | |||
| 36 | # ifndef EOWNERDEAD | ||
| 37 | # define EOWNERDEAD		165 | ||
| 38 | # endif | ||
| 39 | |||
| 40 | # ifndef ENOTRECOVERABLE | ||
| 41 | # define ENOTRECOVERABLE	166 | ||
| 42 | # endif | ||
| 43 | |||
| 44 | # ifndef ERFKILL | ||
| 45 | # define ERFKILL		167 | ||
| 46 | # endif | ||
| 47 | |||
| 48 | # ifndef EHWPOISON | ||
| 49 | # define EHWPOISON		168 | ||
| 50 | # endif | ||
| 51 | |||
| 52 | #endif /* bits/errno.h. */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnu/bits/eventfd.h created+31| ... | @@ -0,0 +1,31 @@ | ||
| 1 | /* Copyright (C) 2007-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_SYS_EVENTFD_H | ||
| 19 | # error "Never use <bits/eventfd.h> directly; include <sys/eventfd.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Flags for eventfd. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | EFD_SEMAPHORE = 00000001, | ||
| 26 | #define EFD_SEMAPHORE EFD_SEMAPHORE | ||
| 27 | EFD_CLOEXEC = 02000000, | ||
| 28 | #define EFD_CLOEXEC EFD_CLOEXEC | ||
| 29 | EFD_NONBLOCK = 00000200 | ||
| 30 | #define EFD_NONBLOCK EFD_NONBLOCK | ||
| 31 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnu/bits/floatn.h created+97| ... | @@ -0,0 +1,97 @@ | ||
| 1 | /* Macros to control TS 18661-3 glibc features on MIPS platforms. | ||
| 2 | Copyright (C) 2017-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_FLOATN_H | ||
| 20 | #define _BITS_FLOATN_H | ||
| 21 | |||
| 22 | #include <features.h> | ||
| 23 | #include <bits/long-double.h> | ||
| 24 | |||
| 25 | /* Defined to 1 if the current compiler invocation provides a | ||
| 26 | floating-point type with the IEEE 754 binary128 format, and this | ||
| 27 | glibc includes corresponding *f128 interfaces for it. */ | ||
| 28 | #ifndef __NO_LONG_DOUBLE_MATH | ||
| 29 | # define __HAVE_FLOAT128 1 | ||
| 30 | #else | ||
| 31 | /* glibc does not support _Float128 for platforms where long double is | ||
| 32 | normally binary128 when building with long double as binary64. | ||
| 33 | GCC's default for supported scalar modes does not support it either | ||
| 34 | in that case. */ | ||
| 35 | # define __HAVE_FLOAT128 0 | ||
| 36 | #endif | ||
| 37 | |||
| 38 | /* Defined to 1 if __HAVE_FLOAT128 is 1 and the type is ABI-distinct | ||
| 39 | from the default float, double and long double types in this glibc. */ | ||
| 40 | #define __HAVE_DISTINCT_FLOAT128 0 | ||
| 41 | |||
| 42 | /* Defined to 1 if the current compiler invocation provides a | ||
| 43 | floating-point type with the right format for _Float64x, and this | ||
| 44 | glibc includes corresponding *f64x interfaces for it. */ | ||
| 45 | #define __HAVE_FLOAT64X __HAVE_FLOAT128 | ||
| 46 | |||
| 47 | /* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format | ||
| 48 | of long double. Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has | ||
| 49 | the format of _Float128, which must be different from that of long | ||
| 50 | double. */ | ||
| 51 | #define __HAVE_FLOAT64X_LONG_DOUBLE __HAVE_FLOAT128 | ||
| 52 | |||
| 53 | #ifndef __ASSEMBLER__ | ||
| 54 | |||
| 55 | /* Defined to concatenate the literal suffix to be used with _Float128 | ||
| 56 | types, if __HAVE_FLOAT128 is 1. */ | ||
| 57 | # if __HAVE_FLOAT128 | ||
| 58 | # if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) | ||
| 59 | /* The literal suffix f128 exists only since GCC 7.0. */ | ||
| 60 | # define __f128(x) x##l | ||
| 61 | # else | ||
| 62 | # define __f128(x) x##f128 | ||
| 63 | # endif | ||
| 64 | # endif | ||
| 65 | |||
| 66 | /* Defined to a complex binary128 type if __HAVE_FLOAT128 is 1. */ | ||
| 67 | # if __HAVE_FLOAT128 | ||
| 68 | # if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) | ||
| 69 | # define __CFLOAT128 _Complex long double | ||
| 70 | # else | ||
| 71 | # define __CFLOAT128 _Complex _Float128 | ||
| 72 | # endif | ||
| 73 | # endif | ||
| 74 | |||
| 75 | /* The remaining of this file provides support for older compilers. */ | ||
| 76 | # if __HAVE_FLOAT128 | ||
| 77 | |||
| 78 | /* The type _Float128 exists only since GCC 7.0. */ | ||
| 79 | # if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) | ||
| 80 | typedef long double _Float128; | ||
| 81 | # endif | ||
| 82 | |||
| 83 | /* Various built-in functions do not exist before GCC 7.0. */ | ||
| 84 | # if !__GNUC_PREREQ (7, 0) | ||
| 85 | # define __builtin_huge_valf128() (__builtin_huge_vall ()) | ||
| 86 | # define __builtin_inff128() (__builtin_infl ()) | ||
| 87 | # define __builtin_nanf128(x) (__builtin_nanl (x)) | ||
| 88 | # define __builtin_nansf128(x) (__builtin_nansl (x)) | ||
| 89 | # endif | ||
| 90 | |||
| 91 | # endif | ||
| 92 | |||
| 93 | #endif /* !__ASSEMBLER__. */ | ||
| 94 | |||
| 95 | #include <bits/floatn-common.h> | ||
| 96 | |||
| 97 | #endif /* _BITS_FLOATN_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnu/bits/inotify.h created+29| ... | @@ -0,0 +1,29 @@ | ||
| 1 | /* Copyright (C) 2005-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_SYS_INOTIFY_H | ||
| 19 | # error "Never use <bits/inotify.h> directly; include <sys/inotify.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Flags for the parameter of inotify_init1. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | IN_CLOEXEC = 02000000, | ||
| 26 | #define IN_CLOEXEC IN_CLOEXEC | ||
| 27 | IN_NONBLOCK = 00000200 | ||
| 28 | #define IN_NONBLOCK IN_NONBLOCK | ||
| 29 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnu/bits/ioctl-types.h created+75| ... | @@ -0,0 +1,75 @@ | ||
| 1 | /* Structure types for pre-termios terminal ioctls. Linux/MIPS version. | ||
| 2 | Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_IOCTL_H | ||
| 20 | # error "Never use <bits/ioctl-types.h> directly; include <sys/ioctl.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Get definition of constants for use with `ioctl'. */ | ||
| 24 | #include <asm/ioctls.h> | ||
| 25 | |||
| 26 | struct winsize | ||
| 27 | { | ||
| 28 | unsigned short int ws_row; | ||
| 29 | unsigned short int ws_col; | ||
| 30 | unsigned short int ws_xpixel; | ||
| 31 | unsigned short int ws_ypixel; | ||
| 32 | }; | ||
| 33 | |||
| 34 | #define NCC	8 | ||
| 35 | struct termio | ||
| 36 | { | ||
| 37 | unsigned short int c_iflag;		/* input mode flags */ | ||
| 38 | unsigned short int c_oflag;		/* output mode flags */ | ||
| 39 | unsigned short int c_cflag;		/* control mode flags */ | ||
| 40 | unsigned short int c_lflag;		/* local mode flags */ | ||
| 41 | char c_line;			/* line discipline */ | ||
| 42 | /* Yes, this is really NCCS. */ | ||
| 43 | unsigned char c_cc[32 /* NCCS */]; /* control characters */ | ||
| 44 | }; | ||
| 45 | |||
| 46 | /* modem lines */ | ||
| 47 | #define TIOCM_LE	0x001		/* line enable */ | ||
| 48 | #define TIOCM_DTR	0x002		/* data terminal ready */ | ||
| 49 | #define TIOCM_RTS	0x004		/* request to send */ | ||
| 50 | #define TIOCM_ST	0x010		/* secondary transmit */ | ||
| 51 | #define TIOCM_SR	0x020		/* secondary receive */ | ||
| 52 | #define TIOCM_CTS	0x040		/* clear to send */ | ||
| 53 | #define TIOCM_CAR	0x100		/* carrier detect */ | ||
| 54 | #define TIOCM_CD	TIOCM_CAR | ||
| 55 | #define TIOCM_RNG	0x200		/* ring */ | ||
| 56 | #define TIOCM_RI	TIOCM_RNG | ||
| 57 | #define TIOCM_DSR	0x400		/* data set ready */ | ||
| 58 | |||
| 59 | /* line disciplines */ | ||
| 60 | #define N_TTY		0 | ||
| 61 | #define N_SLIP		1 | ||
| 62 | #define N_MOUSE		2 | ||
| 63 | #define N_PPP		3 | ||
| 64 | #define N_STRIP		4 | ||
| 65 | #define N_AX25		5 | ||
| 66 | #define N_X25		6	/* X.25 async */ | ||
| 67 | #define N_6PACK		7 | ||
| 68 | #define N_MASC		8	/* Mobitex module */ | ||
| 69 | #define N_R3964		9	/* Simatic R3964 module */ | ||
| 70 | #define N_PROFIBUS_FDL	10	/* Profibus */ | ||
| 71 | #define N_IRDA		11	/* Linux IR */ | ||
| 72 | #define N_SMSBLOCK	12	/* SMS block mode */ | ||
| 73 | #define N_HDLC		13	/* synchronous HDLC */ | ||
| 74 | #define N_SYNC_PPP	14	/* synchronous PPP */ | ||
| 75 | #define	N_HCI		15	/* Bluetooth HCI UART */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnu/bits/ipctypes.h created+31| ... | @@ -0,0 +1,31 @@ | ||
| 1 | /* bits/ipctypes.h -- Define some types used by SysV IPC/MSG/SHM. MIPS version | ||
| 2 | Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* | ||
| 20 | * Never include <bits/ipctypes.h> directly. | ||
| 21 | */ | ||
| 22 | |||
| 23 | #ifndef _BITS_IPCTYPES_H | ||
| 24 | #define _BITS_IPCTYPES_H	1 | ||
| 25 | |||
| 26 | #include <bits/types.h> | ||
| 27 | |||
| 28 | typedef __SLONG32_TYPE __ipc_pid_t; | ||
| 29 | |||
| 30 | |||
| 31 | #endif /* bits/ipctypes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnu/bits/mman.h created+44| ... | @@ -0,0 +1,44 @@ | ||
| 1 | /* Definitions for POSIX memory map interface. Linux/MIPS version. | ||
| 2 | Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_MMAN_H | ||
| 20 | # error "Never use <bits/mman.h> directly; include <sys/mman.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* The following definitions basically come from the kernel headers. | ||
| 24 | But the kernel header is not namespace clean. */ | ||
| 25 | |||
| 26 | /* These are Linux-specific. */ | ||
| 27 | #define MAP_NORESERVE	0x0400		/* don't check for reservations */ | ||
| 28 | #define MAP_GROWSDOWN	0x1000		/* stack-like segment */ | ||
| 29 | #define MAP_DENYWRITE	0x2000		/* ETXTBSY */ | ||
| 30 | #define MAP_EXECUTABLE	0x4000		/* mark it as an executable */ | ||
| 31 | #define MAP_LOCKED	0x8000		/* pages are locked */ | ||
| 32 | #define MAP_POPULATE 0x10000 /* populate (prefault) pagetables */ | ||
| 33 | #define MAP_NONBLOCK 0x20000 /* do not block on IO */ | ||
| 34 | #define MAP_STACK	0x40000		/* Allocation is for a stack. */ | ||
| 35 | #define MAP_HUGETLB	0x80000		/* Create huge page mapping. */ | ||
| 36 | #define MAP_FIXED_NOREPLACE 0x100000	/* MAP_FIXED but do not unmap | ||
| 37 | 					 underlying mapping. */ | ||
| 38 | |||
| 39 | #define __MAP_ANONYMOUS 0x0800 | ||
| 40 | |||
| 41 | /* Include generic Linux declarations. */ | ||
| 42 | #include <bits/mman-linux.h> | ||
| 43 | |||
| 44 | #define MAP_RENAME	MAP_ANONYMOUS | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnu/bits/poll.h created+49| ... | @@ -0,0 +1,49 @@ | ||
| 1 | /* Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_POLL_H | ||
| 19 | # error "Never use <bits/poll.h> directly; include <sys/poll.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Event types that can be polled for. These bits may be set in `events' | ||
| 23 | to indicate the interesting event types; they will appear in `revents' | ||
| 24 | to indicate the status of the file descriptor. */ | ||
| 25 | #define POLLIN		0x001		/* There is data to read. */ | ||
| 26 | #define POLLPRI		0x002		/* There is urgent data to read. */ | ||
| 27 | #define POLLOUT		0x004		/* Writing now will not block. */ | ||
| 28 | |||
| 29 | #if defined __USE_XOPEN || defined __USE_XOPEN2K8 | ||
| 30 | /* These values are defined in XPG4.2. */ | ||
| 31 | # define POLLRDNORM	0x040		/* Normal data may be read. */ | ||
| 32 | # define POLLRDBAND	0x080		/* Priority data may be read. */ | ||
| 33 | # define POLLWRNORM	POLLOUT		/* Writing now will not block. */ | ||
| 34 | # define POLLWRBAND	0x100		/* Priority data may be written. */ | ||
| 35 | #endif | ||
| 36 | |||
| 37 | #ifdef __USE_GNU | ||
| 38 | /* These are extensions for Linux. */ | ||
| 39 | # define POLLMSG	0x400 | ||
| 40 | # define POLLREMOVE	0x1000 | ||
| 41 | # define POLLRDHUP	0x2000 | ||
| 42 | #endif | ||
| 43 | |||
| 44 | /* Event types always implicitly polled for. These bits need not be set in | ||
| 45 | `events', but they will appear in `revents' to indicate the status of | ||
| 46 | the file descriptor. */ | ||
| 47 | #define POLLERR		0x008		/* Error condition. */ | ||
| 48 | #define POLLHUP		0x010		/* Hung up. */ | ||
| 49 | #define POLLNVAL	0x020		/* Invalid polling request. */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnu/bits/pthread_stack_min.h created+20| ... | @@ -0,0 +1,20 @@ | ||
| 1 | /* Definition of PTHREAD_STACK_MIN. MIPS Linux version. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public License as | ||
| 7 | published by the Free Software Foundation; either version 2.1 of the | ||
| 8 | License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* Minimum size for a thread. At least two pages with 64k pages. */ | ||
| 20 | #define PTHREAD_STACK_MIN	131072 | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnu/bits/pthreadtypes-arch.h created+44| ... | @@ -0,0 +1,44 @@ | ||
| 1 | /* Machine-specific pthread type layouts. MIPS version. | ||
| 2 | Copyright (C) 2005-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_PTHREADTYPES_ARCH_H | ||
| 20 | #define _BITS_PTHREADTYPES_ARCH_H	1 | ||
| 21 | |||
| 22 | #include <bits/endian.h> | ||
| 23 | |||
| 24 | #if _MIPS_SIM == _ABI64 | ||
| 25 | # define __SIZEOF_PTHREAD_ATTR_T 56 | ||
| 26 | # define __SIZEOF_PTHREAD_MUTEX_T 40 | ||
| 27 | # define __SIZEOF_PTHREAD_RWLOCK_T 56 | ||
| 28 | # define __SIZEOF_PTHREAD_BARRIER_T 32 | ||
| 29 | #else | ||
| 30 | # define __SIZEOF_PTHREAD_ATTR_T 36 | ||
| 31 | # define __SIZEOF_PTHREAD_MUTEX_T 24 | ||
| 32 | # define __SIZEOF_PTHREAD_RWLOCK_T 32 | ||
| 33 | # define __SIZEOF_PTHREAD_BARRIER_T 20 | ||
| 34 | #endif | ||
| 35 | #define __SIZEOF_PTHREAD_MUTEXATTR_T 4 | ||
| 36 | #define __SIZEOF_PTHREAD_COND_T 48 | ||
| 37 | #define __SIZEOF_PTHREAD_CONDATTR_T 4 | ||
| 38 | #define __SIZEOF_PTHREAD_RWLOCKATTR_T 8 | ||
| 39 | #define __SIZEOF_PTHREAD_BARRIERATTR_T 4 | ||
| 40 | |||
| 41 | #define __LOCK_ALIGNMENT | ||
| 42 | #define __ONCE_ALIGNMENT | ||
| 43 | |||
| 44 | #endif	/* bits/pthreadtypes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnu/bits/resource.h created+231| ... | @@ -0,0 +1,231 @@ | ||
| 1 | /* Bit values & structures for resource limits. Linux/MIPS version. | ||
| 2 | Copyright (C) 1994-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_RESOURCE_H | ||
| 20 | # error "Never use <bits/resource.h> directly; include <sys/resource.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <bits/types.h> | ||
| 24 | |||
| 25 | /* Transmute defines to enumerations. The macro re-definitions are | ||
| 26 | necessary because some programs want to test for operating system | ||
| 27 | features with #ifdef RUSAGE_SELF. In ISO C the reflexive | ||
| 28 | definition is a no-op. */ | ||
| 29 | |||
| 30 | /* Kinds of resource limit. */ | ||
| 31 | enum __rlimit_resource | ||
| 32 | { | ||
| 33 | /* Per-process CPU limit, in seconds. */ | ||
| 34 | RLIMIT_CPU = 0, | ||
| 35 | #define RLIMIT_CPU RLIMIT_CPU | ||
| 36 | |||
| 37 | /* Largest file that can be created, in bytes. */ | ||
| 38 | RLIMIT_FSIZE = 1, | ||
| 39 | #define	RLIMIT_FSIZE RLIMIT_FSIZE | ||
| 40 | |||
| 41 | /* Maximum size of data segment, in bytes. */ | ||
| 42 | RLIMIT_DATA = 2, | ||
| 43 | #define	RLIMIT_DATA RLIMIT_DATA | ||
| 44 | |||
| 45 | /* Maximum size of stack segment, in bytes. */ | ||
| 46 | RLIMIT_STACK = 3, | ||
| 47 | #define	RLIMIT_STACK RLIMIT_STACK | ||
| 48 | |||
| 49 | /* Largest core file that can be created, in bytes. */ | ||
| 50 | RLIMIT_CORE = 4, | ||
| 51 | #define	RLIMIT_CORE RLIMIT_CORE | ||
| 52 | |||
| 53 | /* Largest resident set size, in bytes. | ||
| 54 | This affects swapping; processes that are exceeding their | ||
| 55 | resident set size will be more likely to have physical memory | ||
| 56 | taken from them. */ | ||
| 57 | __RLIMIT_RSS = 7, | ||
| 58 | #define	RLIMIT_RSS __RLIMIT_RSS | ||
| 59 | |||
| 60 | /* Number of open files. */ | ||
| 61 | RLIMIT_NOFILE = 5, | ||
| 62 | __RLIMIT_OFILE = RLIMIT_NOFILE, /* BSD name for same. */ | ||
| 63 | #define RLIMIT_NOFILE RLIMIT_NOFILE | ||
| 64 | #define RLIMIT_OFILE __RLIMIT_OFILE | ||
| 65 | |||
| 66 | /* Address space limit (?) */ | ||
| 67 | RLIMIT_AS = 6, | ||
| 68 | #define RLIMIT_AS RLIMIT_AS | ||
| 69 | |||
| 70 | /* Number of processes. */ | ||
| 71 | __RLIMIT_NPROC = 8, | ||
| 72 | #define RLIMIT_NPROC __RLIMIT_NPROC | ||
| 73 | |||
| 74 | /* Locked-in-memory address space. */ | ||
| 75 | __RLIMIT_MEMLOCK = 9, | ||
| 76 | #define RLIMIT_MEMLOCK __RLIMIT_MEMLOCK | ||
| 77 | |||
| 78 | /* Maximum number of file locks. */ | ||
| 79 | __RLIMIT_LOCKS = 10, | ||
| 80 | #define RLIMIT_LOCKS __RLIMIT_LOCKS | ||
| 81 | |||
| 82 | /* Maximum number of pending signals. */ | ||
| 83 | __RLIMIT_SIGPENDING = 11, | ||
| 84 | #define RLIMIT_SIGPENDING __RLIMIT_SIGPENDING | ||
| 85 | |||
| 86 | /* Maximum bytes in POSIX message queues. */ | ||
| 87 | __RLIMIT_MSGQUEUE = 12, | ||
| 88 | #define RLIMIT_MSGQUEUE __RLIMIT_MSGQUEUE | ||
| 89 | |||
| 90 | /* Maximum nice priority allowed to raise to. | ||
| 91 | Nice levels 19 .. -20 correspond to 0 .. 39 | ||
| 92 | values of this resource limit. */ | ||
| 93 | __RLIMIT_NICE = 13, | ||
| 94 | #define RLIMIT_NICE __RLIMIT_NICE | ||
| 95 | |||
| 96 | /* Maximum realtime priority allowed for non-priviledged | ||
| 97 | processes. */ | ||
| 98 | __RLIMIT_RTPRIO = 14, | ||
| 99 | #define RLIMIT_RTPRIO __RLIMIT_RTPRIO | ||
| 100 | |||
| 101 | /* Maximum CPU time in microseconds that a process scheduled under a real-time | ||
| 102 | scheduling policy may consume without making a blocking system | ||
| 103 | call before being forcibly descheduled. */ | ||
| 104 | __RLIMIT_RTTIME = 15, | ||
| 105 | #define RLIMIT_RTTIME __RLIMIT_RTTIME | ||
| 106 | |||
| 107 | __RLIMIT_NLIMITS = 16, | ||
| 108 | __RLIM_NLIMITS = __RLIMIT_NLIMITS | ||
| 109 | #define RLIMIT_NLIMITS __RLIMIT_NLIMITS | ||
| 110 | #define RLIM_NLIMITS __RLIM_NLIMITS | ||
| 111 | }; | ||
| 112 | |||
| 113 | /* Value to indicate that there is no limit. */ | ||
| 114 | #if _MIPS_SIM == _ABI64 | ||
| 115 | /* The N64 syscall uses this value. */ | ||
| 116 | # define RLIM_INFINITY 0xffffffffffffffffUL | ||
| 117 | # ifdef __USE_LARGEFILE64 | ||
| 118 | # define RLIM64_INFINITY 0xffffffffffffffffUL | ||
| 119 | # endif | ||
| 120 | #else | ||
| 121 | /* The O32 and N32 syscalls use 0x7fffffff. */ | ||
| 122 | # ifndef __USE_FILE_OFFSET64 | ||
| 123 | # define RLIM_INFINITY ((long int)(~0UL >> 1)) | ||
| 124 | # else | ||
| 125 | # define RLIM_INFINITY 0xffffffffffffffffULL | ||
| 126 | # endif | ||
| 127 | # ifdef __USE_LARGEFILE64 | ||
| 128 | # define RLIM64_INFINITY 0xffffffffffffffffULL | ||
| 129 | # endif | ||
| 130 | #endif | ||
| 131 | |||
| 132 | /* We can represent all limits. */ | ||
| 133 | #define RLIM_SAVED_MAX	RLIM_INFINITY | ||
| 134 | #define RLIM_SAVED_CUR	RLIM_INFINITY | ||
| 135 | |||
| 136 | |||
| 137 | /* Type for resource quantity measurement. */ | ||
| 138 | #ifndef __USE_FILE_OFFSET64 | ||
| 139 | typedef __rlim_t rlim_t; | ||
| 140 | #else | ||
| 141 | typedef __rlim64_t rlim_t; | ||
| 142 | #endif | ||
| 143 | #ifdef __USE_LARGEFILE64 | ||
| 144 | typedef __rlim64_t rlim64_t; | ||
| 145 | #endif | ||
| 146 | |||
| 147 | struct rlimit | ||
| 148 | { | ||
| 149 | /* The current (soft) limit. */ | ||
| 150 | rlim_t rlim_cur; | ||
| 151 | /* The hard limit. */ | ||
| 152 | rlim_t rlim_max; | ||
| 153 | }; | ||
| 154 | |||
| 155 | #ifdef __USE_LARGEFILE64 | ||
| 156 | struct rlimit64 | ||
| 157 | { | ||
| 158 | /* The current (soft) limit. */ | ||
| 159 | rlim64_t rlim_cur; | ||
| 160 | /* The hard limit. */ | ||
| 161 | rlim64_t rlim_max; | ||
| 162 | }; | ||
| 163 | #endif | ||
| 164 | |||
| 165 | /* Whose usage statistics do you want? */ | ||
| 166 | enum __rusage_who | ||
| 167 | { | ||
| 168 | /* The calling process. */ | ||
| 169 | RUSAGE_SELF = 0, | ||
| 170 | #define RUSAGE_SELF RUSAGE_SELF | ||
| 171 | |||
| 172 | /* All of its terminated child processes. */ | ||
| 173 | RUSAGE_CHILDREN = -1 | ||
| 174 | #define RUSAGE_CHILDREN RUSAGE_CHILDREN | ||
| 175 | |||
| 176 | #ifdef __USE_GNU | ||
| 177 | , | ||
| 178 | /* The calling thread. */ | ||
| 179 | RUSAGE_THREAD = 1 | ||
| 180 | # define RUSAGE_THREAD RUSAGE_THREAD | ||
| 181 | /* Name for the same functionality on Solaris. */ | ||
| 182 | # define RUSAGE_LWP RUSAGE_THREAD | ||
| 183 | #endif | ||
| 184 | }; | ||
| 185 | |||
| 186 | #include <bits/types/struct_timeval.h> | ||
| 187 | #include <bits/types/struct_rusage.h> | ||
| 188 | |||
| 189 | /* Priority limits. */ | ||
| 190 | #define PRIO_MIN	-20	/* Minimum priority a process can have. */ | ||
| 191 | #define PRIO_MAX	20	/* Maximum priority a process can have. */ | ||
| 192 | |||
| 193 | /* The type of the WHICH argument to `getpriority' and `setpriority', | ||
| 194 | indicating what flavor of entity the WHO argument specifies. */ | ||
| 195 | enum __priority_which | ||
| 196 | { | ||
| 197 | PRIO_PROCESS = 0,		/* WHO is a process ID. */ | ||
| 198 | #define PRIO_PROCESS PRIO_PROCESS | ||
| 199 | PRIO_PGRP = 1,		/* WHO is a process group ID. */ | ||
| 200 | #define PRIO_PGRP PRIO_PGRP | ||
| 201 | PRIO_USER = 2			/* WHO is a user ID. */ | ||
| 202 | #define PRIO_USER PRIO_USER | ||
| 203 | }; | ||
| 204 | |||
| 205 | |||
| 206 | __BEGIN_DECLS | ||
| 207 | |||
| 208 | #ifdef __USE_GNU | ||
| 209 | /* Modify and return resource limits of a process atomically. */ | ||
| 210 | # ifndef __USE_FILE_OFFSET64 | ||
| 211 | extern int prlimit (__pid_t __pid, enum __rlimit_resource __resource, | ||
| 212 | 		 const struct rlimit *__new_limit, | ||
| 213 | 		 struct rlimit *__old_limit) __THROW; | ||
| 214 | # else | ||
| 215 | # ifdef __REDIRECT_NTH | ||
| 216 | extern int __REDIRECT_NTH (prlimit, (__pid_t __pid, | ||
| 217 | 				 enum __rlimit_resource __resource, | ||
| 218 | 				 const struct rlimit *__new_limit, | ||
| 219 | 				 struct rlimit *__old_limit), prlimit64); | ||
| 220 | # else | ||
| 221 | # define prlimit prlimit64 | ||
| 222 | # endif | ||
| 223 | # endif | ||
| 224 | # ifdef __USE_LARGEFILE64 | ||
| 225 | extern int prlimit64 (__pid_t __pid, enum __rlimit_resource __resource, | ||
| 226 | 		 const struct rlimit64 *__new_limit, | ||
| 227 | 		 struct rlimit64 *__old_limit) __THROW; | ||
| 228 | # endif | ||
| 229 | #endif | ||
| 230 | |||
| 231 | __END_DECLS | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnu/bits/semaphore.h created+36| ... | @@ -0,0 +1,36 @@ | ||
| 1 | /* Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SEMAPHORE_H | ||
| 19 | # error "Never use <bits/semaphore.h> directly; include <semaphore.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | #if _MIPS_SIM == _ABI64 | ||
| 23 | # define __SIZEOF_SEM_T	32 | ||
| 24 | #else | ||
| 25 | # define __SIZEOF_SEM_T	16 | ||
| 26 | #endif | ||
| 27 | |||
| 28 | /* Value returned if `sem_open' failed. */ | ||
| 29 | #define SEM_FAILED ((sem_t *) 0) | ||
| 30 | |||
| 31 | |||
| 32 | typedef union | ||
| 33 | { | ||
| 34 | char __size[__SIZEOF_SEM_T]; | ||
| 35 | long int __align; | ||
| 36 | } sem_t; | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnu/bits/shmlba.h created+24| ... | @@ -0,0 +1,24 @@ | ||
| 1 | /* Define SHMLBA. MIPS version. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SHM_H | ||
| 20 | # error "Never use <bits/shmlba.h> directly; include <sys/shm.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Segment low boundary address multiple. */ | ||
| 24 | #define SHMLBA		0x40000 | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnu/bits/sigaction.h created+94| ... | @@ -0,0 +1,94 @@ | ||
| 1 | /* The proper definitions for Linux/MIPS's sigaction. | ||
| 2 | Copyright (C) 1993-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_SIGACTION_H | ||
| 20 | #define _BITS_SIGACTION_H 1 | ||
| 21 | |||
| 22 | #ifndef _SIGNAL_H | ||
| 23 | # error "Never include <bits/sigaction.h> directly; use <signal.h> instead." | ||
| 24 | #endif | ||
| 25 | |||
| 26 | /* Structure describing the action to be taken when a signal arrives. */ | ||
| 27 | struct sigaction | ||
| 28 | { | ||
| 29 | /* Special flags. */ | ||
| 30 | int sa_flags; | ||
| 31 | |||
| 32 | /* Signal handler. */ | ||
| 33 | #if defined __USE_POSIX199309 || defined __USE_XOPEN_EXTENDED | ||
| 34 | union | ||
| 35 | { | ||
| 36 | 	/* Used if SA_SIGINFO is not set. */ | ||
| 37 | 	__sighandler_t sa_handler; | ||
| 38 | 	/* Used if SA_SIGINFO is set. */ | ||
| 39 | 	void (*sa_sigaction) (int, siginfo_t *, void *); | ||
| 40 | } | ||
| 41 | __sigaction_handler; | ||
| 42 | # define sa_handler __sigaction_handler.sa_handler | ||
| 43 | # define sa_sigaction __sigaction_handler.sa_sigaction | ||
| 44 | #else | ||
| 45 | __sighandler_t sa_handler; | ||
| 46 | #endif | ||
| 47 | /* Additional set of signals to be blocked. */ | ||
| 48 | __sigset_t sa_mask; | ||
| 49 | |||
| 50 | /* The ABI says here are two unused ints following. */ | ||
| 51 | /* Restore handler. */ | ||
| 52 | void (*sa_restorer) (void); | ||
| 53 | |||
| 54 | #if _MIPS_SZPTR < 64 | ||
| 55 | int sa_resv[1]; | ||
| 56 | #endif | ||
| 57 | }; | ||
| 58 | |||
| 59 | /* Bits in `sa_flags'. */ | ||
| 60 | /* Please note that some Linux kernels versions use different values for these | ||
| 61 | flags which is a bug in those kernel versions. */ | ||
| 62 | #define SA_NOCLDSTOP 0x00000001 /* Don't send SIGCHLD when children stop. */ | ||
| 63 | #define SA_NOCLDWAIT 0x00010000 /* Don't create zombie on child death. */ | ||
| 64 | #define SA_SIGINFO 0x00000008 /* Invoke signal-catching function with | ||
| 65 | 				 three arguments instead of one. */ | ||
| 66 | #if defined __USE_XOPEN_EXTENDED || defined __USE_MISC | ||
| 67 | # define SA_ONSTACK 0x08000000 /* Use signal stack by using `sa_restorer'. */ | ||
| 68 | #endif | ||
| 69 | #if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8 | ||
| 70 | # define SA_RESETHAND 0x80000000 /* Reset to SIG_DFL on entry to handler. */ | ||
| 71 | # define SA_RESTART 0x10000000 /* Restart syscall on signal return. */ | ||
| 72 | # define SA_NODEFER 0x40000000 /* Don't automatically block the signal when | ||
| 73 | 				 its handler is being executed. */ | ||
| 74 | #endif | ||
| 75 | #ifdef __USE_MISC | ||
| 76 | # define SA_INTERRUPT 0x20000000 /* Historical no-op. */ | ||
| 77 | |||
| 78 | /* Some aliases for the SA_ constants. */ | ||
| 79 | # define SA_NOMASK SA_NODEFER | ||
| 80 | # define SA_ONESHOT SA_RESETHAND | ||
| 81 | # define SA_STACK SA_ONSTACK | ||
| 82 | #endif | ||
| 83 | |||
| 84 | /* Values for the HOW argument to `sigprocmask'. */ | ||
| 85 | #define SIG_NOP	 0		/* 0 is unused to catch errors */ | ||
| 86 | #define	SIG_BLOCK 1		/* Block signals. */ | ||
| 87 | #define	SIG_UNBLOCK 2		/* Unblock signals. */ | ||
| 88 | #define	SIG_SETMASK 3		/* Set the set of blocked signals. */ | ||
| 89 | #ifdef __USE_MISC | ||
| 90 | # define SIG_SETMASK32 256	/* Goodie from SGI for BSD compatibility: | ||
| 91 | 				 set only the low 32 bit of the sigset. */ | ||
| 92 | #endif | ||
| 93 | |||
| 94 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnu/bits/sigcontext.h created+82| ... | @@ -0,0 +1,82 @@ | ||
| 1 | /* Copyright (C) 1996-2025 Free Software Foundation, Inc. This file is part of the GNU C Library. | ||
| 2 | |||
| 3 | The GNU C Library is free software; you can redistribute it and/or | ||
| 4 | modify it under the terms of the GNU Lesser General Public | ||
| 5 | License as published by the Free Software Foundation; either | ||
| 6 | version 2.1 of the License, or (at your option) any later version. | ||
| 7 | |||
| 8 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 9 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 10 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 11 | Lesser General Public License for more details. | ||
| 12 | |||
| 13 | You should have received a copy of the GNU Lesser General Public | ||
| 14 | License along with the GNU C Library. If not, see | ||
| 15 | <https://www.gnu.org/licenses/>. */ | ||
| 16 | |||
| 17 | #ifndef _BITS_SIGCONTEXT_H | ||
| 18 | #define _BITS_SIGCONTEXT_H 1 | ||
| 19 | |||
| 20 | #if !defined _SIGNAL_H && !defined _SYS_UCONTEXT_H | ||
| 21 | # error "Never use <bits/sigcontext.h> directly; include <signal.h> instead." | ||
| 22 | #endif | ||
| 23 | |||
| 24 | #include <sgidefs.h> | ||
| 25 | |||
| 26 | #if _MIPS_SIM == _ABIO32 | ||
| 27 | |||
| 28 | /* Certain unused fields were replaced with new ones in 2.6.12-rc4. | ||
| 29 | The changes were as follows: | ||
| 30 | |||
| 31 | sc_cause -> sc_hi1 | ||
| 32 | sc_badvaddr -> sc_lo1 | ||
| 33 | sc_sigset[0] -> sc_hi2 | ||
| 34 | sc_sigset[1] -> sc_lo2 | ||
| 35 | sc_sigset[2] -> sc_hi3 | ||
| 36 | sc_sigset[3] -> sc_lo3 | ||
| 37 | |||
| 38 | sc_regmask, sc_ownedfp and sc_fpc_eir are not used. */ | ||
| 39 | struct sigcontext { | ||
| 40 | unsigned int sc_regmask; | ||
| 41 | unsigned int sc_status; | ||
| 42 | __extension__ unsigned long long sc_pc; | ||
| 43 | __extension__ unsigned long long sc_regs[32]; | ||
| 44 | __extension__ unsigned long long sc_fpregs[32]; | ||
| 45 | unsigned int sc_ownedfp; | ||
| 46 | unsigned int sc_fpc_csr; | ||
| 47 | unsigned int sc_fpc_eir; | ||
| 48 | unsigned int sc_used_math; | ||
| 49 | unsigned int sc_dsp; | ||
| 50 | __extension__ unsigned long long sc_mdhi; | ||
| 51 | __extension__ unsigned long long sc_mdlo; | ||
| 52 | unsigned long sc_hi1; | ||
| 53 | unsigned long sc_lo1; | ||
| 54 | unsigned long sc_hi2; | ||
| 55 | unsigned long sc_lo2; | ||
| 56 | unsigned long sc_hi3; | ||
| 57 | unsigned long sc_lo3; | ||
| 58 | }; | ||
| 59 | |||
| 60 | #else | ||
| 61 | |||
| 62 | /* This structure changed in 2.6.12-rc4 when DSP support was added. */ | ||
| 63 | struct sigcontext { | ||
| 64 | __extension__ unsigned long long sc_regs[32]; | ||
| 65 | __extension__ unsigned long long sc_fpregs[32]; | ||
| 66 | __extension__ unsigned long long sc_mdhi; | ||
| 67 | __extension__ unsigned long long sc_hi1; | ||
| 68 | __extension__ unsigned long long sc_hi2; | ||
| 69 | __extension__ unsigned long long sc_hi3; | ||
| 70 | __extension__ unsigned long long sc_mdlo; | ||
| 71 | __extension__ unsigned long long sc_lo1; | ||
| 72 | __extension__ unsigned long long sc_lo2; | ||
| 73 | __extension__ unsigned long long sc_lo3; | ||
| 74 | __extension__ unsigned long long sc_pc; | ||
| 75 | unsigned int sc_fpc_csr; | ||
| 76 | unsigned int sc_used_math; | ||
| 77 | unsigned int sc_dsp; | ||
| 78 | unsigned int sc_reserved; | ||
| 79 | }; | ||
| 80 | |||
| 81 | #endif /* _MIPS_SIM != _ABIO32 */ | ||
| 82 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnu/bits/siginfo-arch.h created+13| ... | @@ -0,0 +1,13 @@ | ||
| 1 | /* Architecture-specific adjustments to siginfo_t. MIPS version. */ | ||
| 2 | #ifndef _BITS_SIGINFO_ARCH_H | ||
| 3 | #define _BITS_SIGINFO_ARCH_H 1 | ||
| 4 | |||
| 5 | /* MIPS has the si_code and si_errno fields in the opposite order from | ||
| 6 | all other architectures. */ | ||
| 7 | #define __SI_ERRNO_THEN_CODE 0 | ||
| 8 | |||
| 9 | /* MIPS also has different values for SI_ASYNCIO, SI_MESGQ, and SI_TIMER | ||
| 10 | than all other architectures. */ | ||
| 11 | #define __SI_ASYNCIO_AFTER_SIGIO 0 | ||
| 12 | |||
| 13 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnu/bits/signalfd.h created+29| ... | @@ -0,0 +1,29 @@ | ||
| 1 | /* Copyright (C) 2007-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_SYS_SIGNALFD_H | ||
| 19 | # error "Never use <bits/signalfd.h> directly; include <sys/signalfd.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Flags for signalfd. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | SFD_CLOEXEC = 02000000, | ||
| 26 | #define SFD_CLOEXEC SFD_CLOEXEC | ||
| 27 | SFD_NONBLOCK = 00000200 | ||
| 28 | #define SFD_NONBLOCK SFD_NONBLOCK | ||
| 29 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnu/bits/signum-arch.h created+65| ... | @@ -0,0 +1,65 @@ | ||
| 1 | /* Signal number definitions. Linux/MIPS version. | ||
| 2 | Copyright (C) 1995-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_SIGNUM_H | ||
| 20 | #define _BITS_SIGNUM_H 1 | ||
| 21 | |||
| 22 | #ifndef _SIGNAL_H | ||
| 23 | #error "Never include <bits/signum.h> directly; use <signal.h> instead." | ||
| 24 | #endif | ||
| 25 | |||
| 26 | /* Adjustments and additions to the signal number constants for | ||
| 27 | Linux/MIPS. */ | ||
| 28 | |||
| 29 | #define SIGEMT		 7	/* Emulator trap. */ | ||
| 30 | #define SIGPWR		19	/* Power failure imminent. */ | ||
| 31 | |||
| 32 | /* Historical signals specified by POSIX. */ | ||
| 33 | #define SIGBUS 	10	/* Bus error. */ | ||
| 34 | #define SIGSYS		12	/* Bad system call. */ | ||
| 35 | |||
| 36 | /* New(er) POSIX signals (1003.1-2008, 1003.1-2013). */ | ||
| 37 | #define SIGURG		21	/* Urgent data is available at a socket. */ | ||
| 38 | #define SIGSTOP		23	/* Stop, unblockable. */ | ||
| 39 | #define SIGTSTP		24	/* Keyboard stop. */ | ||
| 40 | #define SIGCONT		25	/* Continue. */ | ||
| 41 | #define SIGCHLD		18	/* Child terminated or stopped. */ | ||
| 42 | #define SIGTTIN		26	/* Background read from control terminal. */ | ||
| 43 | #define SIGTTOU		27	/* Background write to control terminal. */ | ||
| 44 | #define SIGPOLL		22	/* Pollable event occurred (System V). */ | ||
| 45 | #define SIGXCPU		30	/* CPU time limit exceeded. */ | ||
| 46 | #define SIGVTALRM	28	/* Virtual timer expired. */ | ||
| 47 | #define SIGPROF		29	/* Profiling timer expired. */ | ||
| 48 | #define SIGXFSZ		31	/* File size limit exceeded. */ | ||
| 49 | #define SIGUSR1		16	/* User-defined signal 1. */ | ||
| 50 | #define SIGUSR2		17	/* User-defined signal 2. */ | ||
| 51 | |||
| 52 | /* Nonstandard signals found in all modern POSIX systems | ||
| 53 | (including both BSD and Linux). */ | ||
| 54 | #define SIGWINCH	20	/* Window size change (4.3 BSD, Sun). */ | ||
| 55 | |||
| 56 | /* Archaic names for compatibility. */ | ||
| 57 | #define SIGIO		SIGPOLL	/* I/O now possible (4.2 BSD). */ | ||
| 58 | #define SIGIOT		SIGABRT	/* IOT instruction, abort() on a PDP-11. */ | ||
| 59 | #define SIGCLD		SIGCHLD /* Old System V name */ | ||
| 60 | |||
| 61 | /* By default no real-time signals are supported. */ | ||
| 62 | #define __SIGRTMIN	32 | ||
| 63 | #define __SIGRTMAX	127 | ||
| 64 | |||
| 65 | #endif	/* <signal.h> included. */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnu/bits/socket-constants.h created+70| ... | @@ -0,0 +1,70 @@ | ||
| 1 | /* Socket constants which vary among Linux architectures. Version for MIPS. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SOCKET_H | ||
| 20 | # error "Never include <bits/socket-constants.h> directly; use <sys/socket.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #define SOL_SOCKET 65535 | ||
| 24 | #define SO_ACCEPTCONN 4105 | ||
| 25 | #define SO_BROADCAST 32 | ||
| 26 | #define SO_DONTROUTE 16 | ||
| 27 | #define SO_ERROR 4103 | ||
| 28 | #define SO_KEEPALIVE 8 | ||
| 29 | #define SO_LINGER 128 | ||
| 30 | #define SO_OOBINLINE 256 | ||
| 31 | #define SO_RCVBUF 4098 | ||
| 32 | #define SO_RCVLOWAT 4100 | ||
| 33 | #define SO_REUSEADDR 4 | ||
| 34 | #define SO_SNDBUF 4097 | ||
| 35 | #define SO_SNDLOWAT 4099 | ||
| 36 | #define SO_TYPE 4104 | ||
| 37 | |||
| 38 | #if __TIMESIZE == 64 | ||
| 39 | # define SO_RCVTIMEO 4102 | ||
| 40 | # define SO_SNDTIMEO 4101 | ||
| 41 | # define SO_TIMESTAMP 29 | ||
| 42 | # define SO_TIMESTAMPNS 35 | ||
| 43 | # define SO_TIMESTAMPING 37 | ||
| 44 | #else | ||
| 45 | # define SO_RCVTIMEO_OLD 4102 | ||
| 46 | # define SO_SNDTIMEO_OLD 4101 | ||
| 47 | # define SO_RCVTIMEO_NEW 66 | ||
| 48 | # define SO_SNDTIMEO_NEW 67 | ||
| 49 | |||
| 50 | # define SO_TIMESTAMP_OLD 29 | ||
| 51 | # define SO_TIMESTAMPNS_OLD 35 | ||
| 52 | # define SO_TIMESTAMPING_OLD 37 | ||
| 53 | # define SO_TIMESTAMP_NEW 63 | ||
| 54 | # define SO_TIMESTAMPNS_NEW 64 | ||
| 55 | # define SO_TIMESTAMPING_NEW 65 | ||
| 56 | |||
| 57 | # ifdef __USE_TIME64_REDIRECTS | ||
| 58 | # define SO_RCVTIMEO SO_RCVTIMEO_NEW | ||
| 59 | # define SO_SNDTIMEO SO_SNDTIMEO_NEW | ||
| 60 | # define SO_TIMESTAMP SO_TIMESTAMP_NEW | ||
| 61 | # define SO_TIMESTAMPNS SO_TIMESTAMPNS_NEW | ||
| 62 | # define SO_TIMESTAMPING SO_TIMESTAMPING_NEW | ||
| 63 | # else | ||
| 64 | # define SO_RCVTIMEO SO_RCVTIMEO_OLD | ||
| 65 | # define SO_SNDTIMEO SO_SNDTIMEO_OLD | ||
| 66 | # define SO_TIMESTAMP SO_TIMESTAMP_OLD | ||
| 67 | # define SO_TIMESTAMPNS SO_TIMESTAMPNS_OLD | ||
| 68 | # define SO_TIMESTAMPING SO_TIMESTAMPING_OLD | ||
| 69 | # endif | ||
| 70 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnu/bits/socket_type.h created+55| ... | @@ -0,0 +1,55 @@ | ||
| 1 | /* Define enum __socket_type for Linux/MIPS. | ||
| 2 | Copyright (C) 1991-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SOCKET_H | ||
| 20 | # error "Never include <bits/socket_type.h> directly; use <sys/socket.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Types of sockets. */ | ||
| 24 | enum __socket_type | ||
| 25 | { | ||
| 26 | SOCK_DGRAM = 1,		/* Connectionless, unreliable datagrams | ||
| 27 | 				 of fixed maximum length. */ | ||
| 28 | #define SOCK_DGRAM SOCK_DGRAM | ||
| 29 | SOCK_STREAM = 2,		/* Sequenced, reliable, connection-based | ||
| 30 | 				 byte streams. */ | ||
| 31 | #define SOCK_STREAM SOCK_STREAM | ||
| 32 | SOCK_RAW = 3,			/* Raw protocol interface. */ | ||
| 33 | #define SOCK_RAW SOCK_RAW | ||
| 34 | SOCK_RDM = 4,			/* Reliably-delivered messages. */ | ||
| 35 | #define SOCK_RDM SOCK_RDM | ||
| 36 | SOCK_SEQPACKET = 5,		/* Sequenced, reliable, connection-based, | ||
| 37 | 				 datagrams of fixed maximum length. */ | ||
| 38 | #define SOCK_SEQPACKET SOCK_SEQPACKET | ||
| 39 | SOCK_DCCP = 6, | ||
| 40 | #define SOCK_DCCP SOCK_DCCP	/* Datagram Congestion Control Protocol. */ | ||
| 41 | SOCK_PACKET = 10,		/* Linux specific way of getting packets | ||
| 42 | 				 at the dev level. For writing rarp and | ||
| 43 | 				 other similar things on the user level. */ | ||
| 44 | #define SOCK_PACKET SOCK_PACKET | ||
| 45 | |||
| 46 | /* Flags to be ORed into the type parameter of socket and socketpair and | ||
| 47 | used for the flags parameter of paccept. */ | ||
| 48 | |||
| 49 | SOCK_CLOEXEC = 02000000,	/* Atomically set close-on-exec flag for the | ||
| 50 | 				 new descriptor(s). */ | ||
| 51 | #define SOCK_CLOEXEC SOCK_CLOEXEC | ||
| 52 | SOCK_NONBLOCK = 00000200	/* Atomically mark descriptor(s) as | ||
| 53 | 				 non-blocking. */ | ||
| 54 | #define SOCK_NONBLOCK SOCK_NONBLOCK | ||
| 55 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnu/bits/statfs.h created+73| ... | @@ -0,0 +1,73 @@ | ||
| 1 | /* Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_STATFS_H | ||
| 19 | # error "Never include <bits/statfs.h> directly; use <sys/statfs.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | #include <bits/types.h> /* for __fsid_t and __fsblkcnt_t*/ | ||
| 23 | |||
| 24 | struct statfs | ||
| 25 | { | ||
| 26 | long int f_type; | ||
| 27 | #define f_fstyp f_type | ||
| 28 | long int f_bsize; | ||
| 29 | long int f_frsize;	/* Fragment size - unsupported */ | ||
| 30 | #ifndef __USE_FILE_OFFSET64 | ||
| 31 | __fsblkcnt_t f_blocks; | ||
| 32 | __fsblkcnt_t f_bfree; | ||
| 33 | __fsblkcnt_t f_files; | ||
| 34 | __fsblkcnt_t f_ffree; | ||
| 35 | __fsblkcnt_t f_bavail; | ||
| 36 | #else | ||
| 37 | __fsblkcnt64_t f_blocks; | ||
| 38 | __fsblkcnt64_t f_bfree; | ||
| 39 | __fsblkcnt64_t f_files; | ||
| 40 | __fsblkcnt64_t f_ffree; | ||
| 41 | __fsblkcnt64_t f_bavail; | ||
| 42 | #endif | ||
| 43 | |||
| 44 | 	/* Linux specials */ | ||
| 45 | __fsid_t f_fsid; | ||
| 46 | long int f_namelen; | ||
| 47 | long int f_flags; | ||
| 48 | long int f_spare[5]; | ||
| 49 | }; | ||
| 50 | |||
| 51 | #ifdef __USE_LARGEFILE64 | ||
| 52 | struct statfs64 | ||
| 53 | { | ||
| 54 | long int f_type; | ||
| 55 | #define f_fstyp f_type | ||
| 56 | long int f_bsize; | ||
| 57 | long int f_frsize;	/* Fragment size - unsupported */ | ||
| 58 | __fsblkcnt64_t f_blocks; | ||
| 59 | __fsblkcnt64_t f_bfree; | ||
| 60 | __fsblkcnt64_t f_files; | ||
| 61 | __fsblkcnt64_t f_ffree; | ||
| 62 | __fsblkcnt64_t f_bavail; | ||
| 63 | |||
| 64 | 	/* Linux specials */ | ||
| 65 | __fsid_t f_fsid; | ||
| 66 | long int f_namelen; | ||
| 67 | long int f_flags; | ||
| 68 | long int f_spare[5]; | ||
| 69 | }; | ||
| 70 | #endif | ||
| 71 | |||
| 72 | /* Tell code we have these members. */ | ||
| 73 | #define _STATFS_F_NAMELEN | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnu/bits/struct_mutex.h created+56| ... | @@ -0,0 +1,56 @@ | ||
| 1 | /* MIPS internal mutex struct definitions. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <http://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _THREAD_MUTEX_INTERNAL_H | ||
| 20 | #define _THREAD_MUTEX_INTERNAL_H 1 | ||
| 21 | |||
| 22 | struct __pthread_mutex_s | ||
| 23 | { | ||
| 24 | int __lock; | ||
| 25 | unsigned int __count; | ||
| 26 | int __owner; | ||
| 27 | #if _MIPS_SIM == _ABI64 | ||
| 28 | unsigned int __nusers; | ||
| 29 | #endif | ||
| 30 | /* KIND must stay at this position in the structure to maintain | ||
| 31 | binary compatibility with static initializers. */ | ||
| 32 | int __kind; | ||
| 33 | #if _MIPS_SIM == _ABI64 | ||
| 34 | int __spins; | ||
| 35 | __pthread_list_t __list; | ||
| 36 | # define __PTHREAD_MUTEX_HAVE_PREV 1 | ||
| 37 | #else | ||
| 38 | unsigned int __nusers; | ||
| 39 | __extension__ union | ||
| 40 | { | ||
| 41 | int __spins; | ||
| 42 | __pthread_slist_t __list; | ||
| 43 | }; | ||
| 44 | # define __PTHREAD_MUTEX_HAVE_PREV 0 | ||
| 45 | #endif | ||
| 46 | }; | ||
| 47 | |||
| 48 | #if _MIPS_SIM == _ABI64 | ||
| 49 | # define __PTHREAD_MUTEX_INITIALIZER(__kind) \ | ||
| 50 | 0, 0, 0, 0, __kind, 0, { 0, 0 } | ||
| 51 | #else | ||
| 52 | # define __PTHREAD_MUTEX_INITIALIZER(__kind) \ | ||
| 53 | 0, 0, 0, __kind, 0, { 0 } | ||
| 54 | #endif | ||
| 55 | |||
| 56 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnu/bits/struct_rwlock.h created+71| ... | @@ -0,0 +1,71 @@ | ||
| 1 | /* MIPS internal rwlock struct definitions. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <http://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _RWLOCK_INTERNAL_H | ||
| 20 | #define _RWLOCK_INTERNAL_H | ||
| 21 | |||
| 22 | struct __pthread_rwlock_arch_t | ||
| 23 | { | ||
| 24 | unsigned int __readers; | ||
| 25 | unsigned int __writers; | ||
| 26 | unsigned int __wrphase_futex; | ||
| 27 | unsigned int __writers_futex; | ||
| 28 | unsigned int __pad3; | ||
| 29 | unsigned int __pad4; | ||
| 30 | #if _MIPS_SIM == _ABI64 | ||
| 31 | int __cur_writer; | ||
| 32 | int __shared; | ||
| 33 | unsigned long int __pad1; | ||
| 34 | unsigned long int __pad2; | ||
| 35 | /* FLAGS must stay at this position in the structure to maintain | ||
| 36 | binary compatibility. */ | ||
| 37 | unsigned int __flags; | ||
| 38 | # else | ||
| 39 | # if __BYTE_ORDER == __BIG_ENDIAN | ||
| 40 | unsigned char __pad1; | ||
| 41 | unsigned char __pad2; | ||
| 42 | unsigned char __shared; | ||
| 43 | /* FLAGS must stay at this position in the structure to maintain | ||
| 44 | binary compatibility. */ | ||
| 45 | unsigned char __flags; | ||
| 46 | # else | ||
| 47 | /* FLAGS must stay at this position in the structure to maintain | ||
| 48 | binary compatibility. */ | ||
| 49 | unsigned char __flags; | ||
| 50 | unsigned char __shared; | ||
| 51 | unsigned char __pad1; | ||
| 52 | unsigned char __pad2; | ||
| 53 | # endif | ||
| 54 | int __cur_writer; | ||
| 55 | #endif | ||
| 56 | }; | ||
| 57 | |||
| 58 | #if _MIPS_SIM == _ABI64 | ||
| 59 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 60 | 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags | ||
| 61 | #else | ||
| 62 | # if __BYTE_ORDER == __BIG_ENDIAN | ||
| 63 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 64 | 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0 | ||
| 65 | # else | ||
| 66 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 67 | 0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0 | ||
| 68 | # endif | ||
| 69 | #endif | ||
| 70 | |||
| 71 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnu/bits/termios-c_cc.h created+43| ... | @@ -0,0 +1,43 @@ | ||
| 1 | /* termios c_cc symbolic constant definitions. Linux/mips version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-c_cc.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* c_cc characters */ | ||
| 24 | #define VINTR		0	/* Interrupt character [ISIG]. */ | ||
| 25 | #define VQUIT		1	/* Quit character [ISIG]. */ | ||
| 26 | #define VERASE		2	/* Erase character [ICANON]. */ | ||
| 27 | #define VKILL		3	/* Kill-line character [ICANON]. */ | ||
| 28 | #define VMIN		4	/* Minimum number of bytes read at once [!ICANON]. */ | ||
| 29 | #define VTIME		5	/* Time-out value (tenths of a second) [!ICANON]. */ | ||
| 30 | #define VEOL2		6	/* Second EOL character [ICANON]. */ | ||
| 31 | #define VSWTC		7 | ||
| 32 | #define VSWTCH		VSWTC | ||
| 33 | #define VSTART		8	/* Start (X-ON) character [IXON, IXOFF]. */ | ||
| 34 | #define VSTOP		9	/* Stop (X-OFF) character [IXON, IXOFF]. */ | ||
| 35 | #define VSUSP		10	/* Suspend character [ISIG]. */ | ||
| 36 | 				/* VDSUSP is not supported on Linux. */ | ||
| 37 | /* #define VDSUSP	11	/ * Delayed suspend character [ISIG]. */ | ||
| 38 | #define VREPRINT	12	/* Reprint-line character [ICANON]. */ | ||
| 39 | #define VDISCARD	13	/* Discard character [IEXTEN]. */ | ||
| 40 | #define VWERASE		14	/* Word-erase character [ICANON]. */ | ||
| 41 | #define VLNEXT		15	/* Literal-next character [IEXTEN]. */ | ||
| 42 | #define VEOF		16	/* End-of-file character [ICANON]. */ | ||
| 43 | #define VEOL		17	/* End-of-line character [ICANON]. */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnu/bits/termios-c_lflag.h created+46| ... | @@ -0,0 +1,46 @@ | ||
| 1 | /* termios local mode definitions. Linux/mips version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-c_lflag.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* c_lflag bits */ | ||
| 24 | #define ISIG	0000001		/* Enable signals. */ | ||
| 25 | #define ICANON	0000002		/* Do erase and kill processing. */ | ||
| 26 | #if defined __USE_MISC || (defined __USE_XOPEN && !defined __USE_XOPEN2K) | ||
| 27 | # define XCASE	0000004 | ||
| 28 | #endif | ||
| 29 | #define ECHO	0000010		/* Enable echo. */ | ||
| 30 | #define ECHOE	0000020		/* Visual erase for ERASE. */ | ||
| 31 | #define ECHOK	0000040		/* Echo NL after KILL. */ | ||
| 32 | #define ECHONL	0000100		/* Echo NL even if ECHO is off. */ | ||
| 33 | #define NOFLSH	0000200		/* Disable flush after interrupt. */ | ||
| 34 | #define IEXTEN	0000400		/* Enable DISCARD and LNEXT. */ | ||
| 35 | #ifdef __USE_MISC | ||
| 36 | # define ECHOCTL 0001000	/* Echo control characters as ^X. */ | ||
| 37 | # define ECHOPRT 0002000	/* Hardcopy visual erase. */ | ||
| 38 | # define ECHOKE	 0004000	/* Visual erase for KILL. */ | ||
| 39 | # define FLUSHO	0020000 | ||
| 40 | # define PENDIN	0040000		/* Retype pending input (state). */ | ||
| 41 | #endif | ||
| 42 | #define TOSTOP	0100000		/* Send SIGTTOU for background output. */ | ||
| 43 | #define ITOSTOP	TOSTOP | ||
| 44 | #ifdef __USE_MISC | ||
| 45 | # define EXTPROC 0200000 | ||
| 46 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnu/bits/termios-struct.h created+34| ... | @@ -0,0 +1,34 @@ | ||
| 1 | /* struct termios definition. Linux/mips version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-struct.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #define NCCS 32 | ||
| 24 | struct termios | ||
| 25 | { | ||
| 26 | tcflag_t c_iflag;		/* input mode flags */ | ||
| 27 | tcflag_t c_oflag;		/* output mode flags */ | ||
| 28 | tcflag_t c_cflag;		/* control mode flags */ | ||
| 29 | tcflag_t c_lflag;		/* local mode flags */ | ||
| 30 | cc_t c_line;		/* line discipline */ | ||
| 31 | cc_t c_cc[NCCS];		/* control characters */ | ||
| 32 | #define _HAVE_STRUCT_TERMIOS_C_ISPEED 0 | ||
| 33 | #define _HAVE_STRUCT_TERMIOS_C_OSPEED 0 | ||
| 34 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnu/bits/termios-tcflow.h created+26| ... | @@ -0,0 +1,26 @@ | ||
| 1 | /* termios local mode definitions. Linux/mips version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-tcflow.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* tcsetattr uses these */ | ||
| 24 | #define	TCSANOW		0x540e	/* Same as TCSETS; change immediately. */ | ||
| 25 | #define	TCSADRAIN	0x540f	/* Same as TCSETSW; change when pending output is written. */ | ||
| 26 | #define	TCSAFLUSH	0x5410	/* Same as TCSETSF; flush pending input before changing. */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnu/bits/timerfd.h created+29| ... | @@ -0,0 +1,29 @@ | ||
| 1 | /* Copyright (C) 2008-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_SYS_TIMERFD_H | ||
| 19 | # error "Never use <bits/timerfd.h> directly; include <sys/timerfd.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Bits to be set in the FLAGS parameter of `timerfd_create'. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | TFD_CLOEXEC = 02000000, | ||
| 26 | #define TFD_CLOEXEC TFD_CLOEXEC | ||
| 27 | TFD_NONBLOCK = 00000200 | ||
| 28 | #define TFD_NONBLOCK TFD_NONBLOCK | ||
| 29 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnu/bits/types/stack_t.h created+33| ... | @@ -0,0 +1,33 @@ | ||
| 1 | /* Define stack_t. MIPS Linux version. | ||
| 2 | Copyright (C) 1998-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef __stack_t_defined | ||
| 20 | #define __stack_t_defined 1 | ||
| 21 | |||
| 22 | #define __need_size_t | ||
| 23 | #include <stddef.h> | ||
| 24 | |||
| 25 | /* Structure describing a signal stack. */ | ||
| 26 | typedef struct | ||
| 27 | { | ||
| 28 | void *ss_sp; | ||
| 29 | size_t ss_size; | ||
| 30 | int ss_flags; | ||
| 31 | } stack_t; | ||
| 32 | |||
| 33 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnu/bits/types/struct_msqid_ds.h created+62| ... | @@ -0,0 +1,62 @@ | ||
| 1 | /* Linux/MIPS implementation of the SysV message struct msqid_ds. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_MSG_H | ||
| 20 | # error "Never use <bits/msq.h> directly; include <sys/msg.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <bits/types/time_t.h> | ||
| 24 | |||
| 25 | /* Structure of record for one message inside the kernel. | ||
| 26 | The type `struct msg' is opaque. */ | ||
| 27 | struct msqid_ds | ||
| 28 | { | ||
| 29 | #ifdef __USE_TIME64_REDIRECTS | ||
| 30 | # include <bits/types/struct_msqid64_ds_helper.h> | ||
| 31 | #else | ||
| 32 | struct ipc_perm msg_perm;	/* structure describing operation permission */ | ||
| 33 | # if __TIMESIZE == 32 | ||
| 34 | # ifdef __MIPSEL__ | ||
| 35 | __time_t msg_stime;		/* time of last msgsnd command */ | ||
| 36 | unsigned long int __msg_stime_high; | ||
| 37 | __time_t msg_rtime;		/* time of last msgsnd command */ | ||
| 38 | unsigned long int __msg_rtime_high; | ||
| 39 | __time_t msg_ctime;		/* time of last change */ | ||
| 40 | unsigned long int __msg_ctime_high; | ||
| 41 | # else | ||
| 42 | unsigned long int __msg_stime_high; | ||
| 43 | __time_t msg_stime;		/* time of last msgsnd command */ | ||
| 44 | unsigned long int __msg_rtime_high; | ||
| 45 | __time_t msg_rtime;		/* time of last msgsnd command */ | ||
| 46 | unsigned long int __msg_ctime_high; | ||
| 47 | __time_t msg_ctime;		/* time of last change */ | ||
| 48 | # endif | ||
| 49 | # else | ||
| 50 | __time_t msg_stime;		/* time of last msgsnd command */ | ||
| 51 | __time_t msg_rtime;		/* time of last msgsnd command */ | ||
| 52 | __time_t msg_ctime;		/* time of last change */ | ||
| 53 | # endif | ||
| 54 | __syscall_ulong_t __msg_cbytes; /* current number of bytes on queue */ | ||
| 55 | msgqnum_t msg_qnum;		/* number of messages currently on queue */ | ||
| 56 | msglen_t msg_qbytes;		/* max number of bytes allowed on queue */ | ||
| 57 | __pid_t msg_lspid;		/* pid of last msgsnd() */ | ||
| 58 | __pid_t msg_lrpid;		/* pid of last msgrcv() */ | ||
| 59 | __syscall_ulong_t __glibc_reserved4; | ||
| 60 | __syscall_ulong_t __glibc_reserved5; | ||
| 61 | #endif | ||
| 62 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnu/bits/types/struct_semid_ds.h created+36| ... | @@ -0,0 +1,36 @@ | ||
| 1 | /* MIPS implementation of the semaphore struct semid_ds | ||
| 2 | Copyright (C) 1995-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SEM_H | ||
| 20 | # error "Never include <bits/types/struct_semid_ds.h> directly; use <sys/sem.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Data structure describing a set of semaphores. */ | ||
| 24 | struct semid_ds | ||
| 25 | { | ||
| 26 | #ifdef __USE_TIME64_REDIRECTS | ||
| 27 | # include <bits/types/struct_semid64_ds_helper.h> | ||
| 28 | #else | ||
| 29 | struct ipc_perm sem_perm;		/* operation permission struct */ | ||
| 30 | __time_t sem_otime;	/* last semop() time */ | ||
| 31 | __time_t sem_ctime;	/* last time changed by semctl() */ | ||
| 32 | __syscall_ulong_t sem_nsems;		/* number of semaphores in set */ | ||
| 33 | __syscall_ulong_t __sem_otime_high; | ||
| 34 | __syscall_ulong_t __sem_ctime_high; | ||
| 35 | #endif | ||
| 36 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnu/bits/types/struct_shmid_ds.h created+53| ... | @@ -0,0 +1,53 @@ | ||
| 1 | /* Linux/MIPS implementation of the shared memory struct shmid_ds. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SHM_H | ||
| 20 | # error "Never include <bits/types/struct_shmid_ds.h> directly; use <sys/shm.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Data structure describing a shared memory segment. */ | ||
| 24 | struct shmid_ds | ||
| 25 | { | ||
| 26 | #ifdef __USE_TIME64_REDIRECTS | ||
| 27 | # include <bits/types/struct_shmid64_ds_helper.h> | ||
| 28 | #else | ||
| 29 | struct ipc_perm shm_perm;		/* operation permission struct */ | ||
| 30 | size_t shm_segsz;			/* size of segment in bytes */ | ||
| 31 | # if __TIMESIZE == 32 | ||
| 32 | __time_t shm_atime;			/* time of last shmat() */ | ||
| 33 | __time_t shm_dtime;			/* time of last shmdt() */ | ||
| 34 | __time_t shm_ctime;			/* time of last change by shmctl() */ | ||
| 35 | # else | ||
| 36 | __time_t shm_atime;			/* time of last shmat() */ | ||
| 37 | __time_t shm_dtime;			/* time of last shmdt() */ | ||
| 38 | __time_t shm_ctime;			/* time of last change by shmctl() */ | ||
| 39 | # endif | ||
| 40 | __pid_t shm_cpid;			/* pid of creator */ | ||
| 41 | __pid_t shm_lpid;			/* pid of last shmop */ | ||
| 42 | shmatt_t shm_nattch;		/* number of current attaches */ | ||
| 43 | # if __TIMESIZE == 32 | ||
| 44 | unsigned short int __shm_atime_high; | ||
| 45 | unsigned short int __shm_dtime_high; | ||
| 46 | unsigned short int __shm_ctime_high; | ||
| 47 | unsigned short int __glibc_reserved4; | ||
| 48 | # else | ||
| 49 | __syscall_ulong_t __glibc_reserved5; | ||
| 50 | __syscall_ulong_t __glibc_reserved6; | ||
| 51 | # endif | ||
| 52 | #endif | ||
| 53 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnu/bits/typesizes.h created+95| ... | @@ -0,0 +1,95 @@ | ||
| 1 | /* bits/typesizes.h -- underlying types for *_t. MIPS version. | ||
| 2 | Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_TYPES_H | ||
| 20 | # error "Never include <bits/typesizes.h> directly; use <sys/types.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef	_BITS_TYPESIZES_H | ||
| 24 | #define	_BITS_TYPESIZES_H	1 | ||
| 25 | |||
| 26 | /* See <bits/types.h> for the meaning of these macros. This file exists so | ||
| 27 | that <bits/types.h> need not vary across different GNU platforms. */ | ||
| 28 | |||
| 29 | #define __DEV_T_TYPE		__UQUAD_TYPE | ||
| 30 | #define __UID_T_TYPE		__U32_TYPE | ||
| 31 | #define __GID_T_TYPE		__U32_TYPE | ||
| 32 | #define __INO_T_TYPE		__ULONGWORD_TYPE | ||
| 33 | #define __INO64_T_TYPE		__UQUAD_TYPE | ||
| 34 | #define __MODE_T_TYPE		__U32_TYPE | ||
| 35 | #define __NLINK_T_TYPE		__UWORD_TYPE | ||
| 36 | #define __OFF_T_TYPE		__SLONGWORD_TYPE | ||
| 37 | #define __OFF64_T_TYPE		__SQUAD_TYPE | ||
| 38 | #define __PID_T_TYPE		__S32_TYPE | ||
| 39 | #define __RLIM_T_TYPE		__ULONGWORD_TYPE | ||
| 40 | #define __RLIM64_T_TYPE		__UQUAD_TYPE | ||
| 41 | #define	__BLKCNT_T_TYPE		__SLONGWORD_TYPE | ||
| 42 | #define	__BLKCNT64_T_TYPE	__SQUAD_TYPE | ||
| 43 | #define	__FSBLKCNT_T_TYPE	__ULONGWORD_TYPE | ||
| 44 | #define	__FSBLKCNT64_T_TYPE	__UQUAD_TYPE | ||
| 45 | #define	__FSFILCNT_T_TYPE	__ULONGWORD_TYPE | ||
| 46 | #define	__FSFILCNT64_T_TYPE	__UQUAD_TYPE | ||
| 47 | #define	__FSWORD_T_TYPE		__SWORD_TYPE | ||
| 48 | #define	__ID_T_TYPE		__U32_TYPE | ||
| 49 | #define __CLOCK_T_TYPE		__SLONGWORD_TYPE | ||
| 50 | #define __TIME_T_TYPE		__SLONGWORD_TYPE | ||
| 51 | #define __USECONDS_T_TYPE	__U32_TYPE | ||
| 52 | #define __SUSECONDS_T_TYPE	__SLONGWORD_TYPE | ||
| 53 | #define __SUSECONDS64_T_TYPE	__SQUAD_TYPE | ||
| 54 | #define __DADDR_T_TYPE		__S32_TYPE | ||
| 55 | #define __KEY_T_TYPE		__S32_TYPE | ||
| 56 | #define __CLOCKID_T_TYPE	__S32_TYPE | ||
| 57 | #define __TIMER_T_TYPE		void * | ||
| 58 | #define __BLKSIZE_T_TYPE	__SLONGWORD_TYPE | ||
| 59 | #define __FSID_T_TYPE		struct { int __val[2]; } | ||
| 60 | #define __SSIZE_T_TYPE		__SWORD_TYPE | ||
| 61 | #define __SYSCALL_SLONG_TYPE	__SLONGWORD_TYPE | ||
| 62 | #define __SYSCALL_ULONG_TYPE	__ULONGWORD_TYPE | ||
| 63 | #define __CPU_MASK_TYPE 	__ULONGWORD_TYPE | ||
| 64 | |||
| 65 | #ifdef __LP64__ | ||
| 66 | /* Tell the libc code that off_t and off64_t are actually the same type | ||
| 67 | for all ABI purposes, even if possibly expressed as different base types | ||
| 68 | for C type-checking purposes. */ | ||
| 69 | # define __OFF_T_MATCHES_OFF64_T	1 | ||
| 70 | |||
| 71 | /* Same for ino_t and ino64_t. */ | ||
| 72 | # define __INO_T_MATCHES_INO64_T	1 | ||
| 73 | |||
| 74 | /* And for rlim_t and rlim64_t. */ | ||
| 75 | # define __RLIM_T_MATCHES_RLIM64_T	1 | ||
| 76 | |||
| 77 | /* And for fsblkcnt_t, fsblkcnt64_t, fsfilcnt_t and fsfilcnt64_t. */ | ||
| 78 | # define __STATFS_MATCHES_STATFS64 1 | ||
| 79 | |||
| 80 | /* And for getitimer, setitimer and rusage */ | ||
| 81 | # define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 1 | ||
| 82 | #else | ||
| 83 | # define __RLIM_T_MATCHES_RLIM64_T	0 | ||
| 84 | |||
| 85 | # define __STATFS_MATCHES_STATFS64 0 | ||
| 86 | |||
| 87 | /* And for getitimer, setitimer and rusage */ | ||
| 88 | # define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 0 | ||
| 89 | #endif | ||
| 90 | |||
| 91 | /* Number of descriptors that can fit in an `fd_set'. */ | ||
| 92 | #define	__FD_SETSIZE		1024 | ||
| 93 | |||
| 94 | |||
| 95 | #endif /* bits/typesizes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnu/ieee754.h created+326| ... | @@ -0,0 +1,326 @@ | ||
| 1 | /* Copyright (C) 1992-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _IEEE754_H | ||
| 19 | #define _IEEE754_H 1 | ||
| 20 | |||
| 21 | #include <features.h> | ||
| 22 | |||
| 23 | #include <bits/endian.h> | ||
| 24 | |||
| 25 | #ifndef __LDBL_MANT_DIG__ | ||
| 26 | # include <float.h> | ||
| 27 | # define __LDBL_MANT_DIG__ LDBL_MANT_DIG | ||
| 28 | #endif | ||
| 29 | |||
| 30 | __BEGIN_DECLS | ||
| 31 | |||
| 32 | union ieee754_float | ||
| 33 | { | ||
| 34 | float f; | ||
| 35 | |||
| 36 | /* This is the IEEE 754 single-precision format. */ | ||
| 37 | struct | ||
| 38 | { | ||
| 39 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 40 | 	unsigned int negative:1; | ||
| 41 | 	unsigned int exponent:8; | ||
| 42 | 	unsigned int mantissa:23; | ||
| 43 | #endif				/* Big endian. */ | ||
| 44 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 45 | 	unsigned int mantissa:23; | ||
| 46 | 	unsigned int exponent:8; | ||
| 47 | 	unsigned int negative:1; | ||
| 48 | #endif				/* Little endian. */ | ||
| 49 | } ieee; | ||
| 50 | |||
| 51 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 52 | struct | ||
| 53 | { | ||
| 54 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 55 | 	unsigned int negative:1; | ||
| 56 | 	unsigned int exponent:8; | ||
| 57 | 	unsigned int quiet_nan:1; | ||
| 58 | 	unsigned int mantissa:22; | ||
| 59 | #endif				/* Big endian. */ | ||
| 60 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 61 | 	unsigned int mantissa:22; | ||
| 62 | 	unsigned int quiet_nan:1; | ||
| 63 | 	unsigned int exponent:8; | ||
| 64 | 	unsigned int negative:1; | ||
| 65 | #endif				/* Little endian. */ | ||
| 66 | } ieee_nan; | ||
| 67 | }; | ||
| 68 | |||
| 69 | #define IEEE754_FLOAT_BIAS	0x7f /* Added to exponent. */ | ||
| 70 | |||
| 71 | |||
| 72 | union ieee754_double | ||
| 73 | { | ||
| 74 | double d; | ||
| 75 | |||
| 76 | /* This is the IEEE 754 double-precision format. */ | ||
| 77 | struct | ||
| 78 | { | ||
| 79 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 80 | 	unsigned int negative:1; | ||
| 81 | 	unsigned int exponent:11; | ||
| 82 | 	/* Together these comprise the mantissa. */ | ||
| 83 | 	unsigned int mantissa0:20; | ||
| 84 | 	unsigned int mantissa1:32; | ||
| 85 | #endif				/* Big endian. */ | ||
| 86 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 87 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 88 | 	unsigned int mantissa0:20; | ||
| 89 | 	unsigned int exponent:11; | ||
| 90 | 	unsigned int negative:1; | ||
| 91 | 	unsigned int mantissa1:32; | ||
| 92 | # else | ||
| 93 | 	/* Together these comprise the mantissa. */ | ||
| 94 | 	unsigned int mantissa1:32; | ||
| 95 | 	unsigned int mantissa0:20; | ||
| 96 | 	unsigned int exponent:11; | ||
| 97 | 	unsigned int negative:1; | ||
| 98 | # endif | ||
| 99 | #endif				/* Little endian. */ | ||
| 100 | } ieee; | ||
| 101 | |||
| 102 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 103 | struct | ||
| 104 | { | ||
| 105 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 106 | 	unsigned int negative:1; | ||
| 107 | 	unsigned int exponent:11; | ||
| 108 | 	unsigned int quiet_nan:1; | ||
| 109 | 	/* Together these comprise the mantissa. */ | ||
| 110 | 	unsigned int mantissa0:19; | ||
| 111 | 	unsigned int mantissa1:32; | ||
| 112 | #else | ||
| 113 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 114 | 	unsigned int mantissa0:19; | ||
| 115 | 	unsigned int quiet_nan:1; | ||
| 116 | 	unsigned int exponent:11; | ||
| 117 | 	unsigned int negative:1; | ||
| 118 | 	unsigned int mantissa1:32; | ||
| 119 | # else | ||
| 120 | 	/* Together these comprise the mantissa. */ | ||
| 121 | 	unsigned int mantissa1:32; | ||
| 122 | 	unsigned int mantissa0:19; | ||
| 123 | 	unsigned int quiet_nan:1; | ||
| 124 | 	unsigned int exponent:11; | ||
| 125 | 	unsigned int negative:1; | ||
| 126 | # endif | ||
| 127 | #endif | ||
| 128 | } ieee_nan; | ||
| 129 | }; | ||
| 130 | |||
| 131 | #define IEEE754_DOUBLE_BIAS	0x3ff /* Added to exponent. */ | ||
| 132 | |||
| 133 | #if __LDBL_MANT_DIG__ == 113 | ||
| 134 | |||
| 135 | union ieee854_long_double | ||
| 136 | { | ||
| 137 | long double d; | ||
| 138 | |||
| 139 | /* This is the IEEE 854 quad-precision format. */ | ||
| 140 | struct | ||
| 141 | { | ||
| 142 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 143 | 	unsigned int negative:1; | ||
| 144 | 	unsigned int exponent:15; | ||
| 145 | 	/* Together these comprise the mantissa. */ | ||
| 146 | 	unsigned int mantissa0:16; | ||
| 147 | 	unsigned int mantissa1:32; | ||
| 148 | 	unsigned int mantissa2:32; | ||
| 149 | 	unsigned int mantissa3:32; | ||
| 150 | #endif				/* Big endian. */ | ||
| 151 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 152 | 	/* Together these comprise the mantissa. */ | ||
| 153 | 	unsigned int mantissa3:32; | ||
| 154 | 	unsigned int mantissa2:32; | ||
| 155 | 	unsigned int mantissa1:32; | ||
| 156 | 	unsigned int mantissa0:16; | ||
| 157 | 	unsigned int exponent:15; | ||
| 158 | 	unsigned int negative:1; | ||
| 159 | #endif				/* Little endian. */ | ||
| 160 | } ieee; | ||
| 161 | |||
| 162 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 163 | struct | ||
| 164 | { | ||
| 165 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 166 | 	unsigned int negative:1; | ||
| 167 | 	unsigned int exponent:15; | ||
| 168 | 	unsigned int quiet_nan:1; | ||
| 169 | 	/* Together these comprise the mantissa. */ | ||
| 170 | 	unsigned int mantissa0:15; | ||
| 171 | 	unsigned int mantissa1:32; | ||
| 172 | 	unsigned int mantissa2:32; | ||
| 173 | 	unsigned int mantissa3:32; | ||
| 174 | #endif				/* Big endian. */ | ||
| 175 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 176 | 	/* Together these comprise the mantissa. */ | ||
| 177 | 	unsigned int mantissa3:32; | ||
| 178 | 	unsigned int mantissa2:32; | ||
| 179 | 	unsigned int mantissa1:32; | ||
| 180 | 	unsigned int mantissa0:15; | ||
| 181 | 	unsigned int quiet_nan:1; | ||
| 182 | 	unsigned int exponent:15; | ||
| 183 | 	unsigned int negative:1; | ||
| 184 | #endif				/* Little endian. */ | ||
| 185 | } ieee_nan; | ||
| 186 | }; | ||
| 187 | |||
| 188 | #define IEEE854_LONG_DOUBLE_BIAS 0x3fff /* Added to exponent. */ | ||
| 189 | |||
| 190 | #elif __LDBL_MANT_DIG__ == 64 | ||
| 191 | |||
| 192 | union ieee854_long_double | ||
| 193 | { | ||
| 194 | long double d; | ||
| 195 | |||
| 196 | /* This is the IEEE 854 double-extended-precision format. */ | ||
| 197 | struct | ||
| 198 | { | ||
| 199 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 200 | 	unsigned int negative:1; | ||
| 201 | 	unsigned int exponent:15; | ||
| 202 | 	unsigned int empty:16; | ||
| 203 | 	unsigned int mantissa0:32; | ||
| 204 | 	unsigned int mantissa1:32; | ||
| 205 | #endif | ||
| 206 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 207 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 208 | 	unsigned int exponent:15; | ||
| 209 | 	unsigned int negative:1; | ||
| 210 | 	unsigned int empty:16; | ||
| 211 | 	unsigned int mantissa0:32; | ||
| 212 | 	unsigned int mantissa1:32; | ||
| 213 | # else | ||
| 214 | 	unsigned int mantissa1:32; | ||
| 215 | 	unsigned int mantissa0:32; | ||
| 216 | 	unsigned int exponent:15; | ||
| 217 | 	unsigned int negative:1; | ||
| 218 | 	unsigned int empty:16; | ||
| 219 | # endif | ||
| 220 | #endif | ||
| 221 | } ieee; | ||
| 222 | |||
| 223 | /* This is for NaNs in the IEEE 854 double-extended-precision format. */ | ||
| 224 | struct | ||
| 225 | { | ||
| 226 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 227 | 	unsigned int negative:1; | ||
| 228 | 	unsigned int exponent:15; | ||
| 229 | 	unsigned int empty:16; | ||
| 230 | 	unsigned int one:1; | ||
| 231 | 	unsigned int quiet_nan:1; | ||
| 232 | 	unsigned int mantissa0:30; | ||
| 233 | 	unsigned int mantissa1:32; | ||
| 234 | #endif | ||
| 235 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 236 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 237 | 	unsigned int exponent:15; | ||
| 238 | 	unsigned int negative:1; | ||
| 239 | 	unsigned int empty:16; | ||
| 240 | 	unsigned int mantissa0:30; | ||
| 241 | 	unsigned int quiet_nan:1; | ||
| 242 | 	unsigned int one:1; | ||
| 243 | 	unsigned int mantissa1:32; | ||
| 244 | # else | ||
| 245 | 	unsigned int mantissa1:32; | ||
| 246 | 	unsigned int mantissa0:30; | ||
| 247 | 	unsigned int quiet_nan:1; | ||
| 248 | 	unsigned int one:1; | ||
| 249 | 	unsigned int exponent:15; | ||
| 250 | 	unsigned int negative:1; | ||
| 251 | 	unsigned int empty:16; | ||
| 252 | # endif | ||
| 253 | #endif | ||
| 254 | } ieee_nan; | ||
| 255 | }; | ||
| 256 | |||
| 257 | #define IEEE854_LONG_DOUBLE_BIAS 0x3fff | ||
| 258 | |||
| 259 | #elif __LDBL_MANT_DIG__ == 53 | ||
| 260 | |||
| 261 | union ieee854_long_double | ||
| 262 | { | ||
| 263 | long double d; | ||
| 264 | |||
| 265 | /* This is the IEEE 754 double-precision format. */ | ||
| 266 | struct | ||
| 267 | { | ||
| 268 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 269 | 	unsigned int negative:1; | ||
| 270 | 	unsigned int exponent:11; | ||
| 271 | 	/* Together these comprise the mantissa. */ | ||
| 272 | 	unsigned int mantissa0:20; | ||
| 273 | 	unsigned int mantissa1:32; | ||
| 274 | #endif				/* Big endian. */ | ||
| 275 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 276 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 277 | 	unsigned int mantissa0:20; | ||
| 278 | 	unsigned int exponent:11; | ||
| 279 | 	unsigned int negative:1; | ||
| 280 | 	unsigned int mantissa1:32; | ||
| 281 | # else | ||
| 282 | 	/* Together these comprise the mantissa. */ | ||
| 283 | 	unsigned int mantissa1:32; | ||
| 284 | 	unsigned int mantissa0:20; | ||
| 285 | 	unsigned int exponent:11; | ||
| 286 | 	unsigned int negative:1; | ||
| 287 | # endif | ||
| 288 | #endif				/* Little endian. */ | ||
| 289 | } ieee; | ||
| 290 | |||
| 291 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 292 | struct | ||
| 293 | { | ||
| 294 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 295 | 	unsigned int negative:1; | ||
| 296 | 	unsigned int exponent:11; | ||
| 297 | 	unsigned int quiet_nan:1; | ||
| 298 | 	/* Together these comprise the mantissa. */ | ||
| 299 | 	unsigned int mantissa0:19; | ||
| 300 | 	unsigned int mantissa1:32; | ||
| 301 | #else | ||
| 302 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 303 | 	unsigned int mantissa0:19; | ||
| 304 | 	unsigned int quiet_nan:1; | ||
| 305 | 	unsigned int exponent:11; | ||
| 306 | 	unsigned int negative:1; | ||
| 307 | 	unsigned int mantissa1:32; | ||
| 308 | # else | ||
| 309 | 	/* Together these comprise the mantissa. */ | ||
| 310 | 	unsigned int mantissa1:32; | ||
| 311 | 	unsigned int mantissa0:19; | ||
| 312 | 	unsigned int quiet_nan:1; | ||
| 313 | 	unsigned int exponent:11; | ||
| 314 | 	unsigned int negative:1; | ||
| 315 | # endif | ||
| 316 | #endif | ||
| 317 | } ieee_nan; | ||
| 318 | }; | ||
| 319 | |||
| 320 | #define IEEE854_LONG_DOUBLE_BIAS	0x3ff /* Added to exponent. */ | ||
| 321 | |||
| 322 | #endif /* __LDBL_MANT_DIG__ == 53 */ | ||
| 323 | |||
| 324 | __END_DECLS | ||
| 325 | |||
| 326 | #endif /* ieee754.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabi/bits/dlfcn.h deleted-64| ... | @@ -1,64 +0,0 @@ | ||
| 1 | /* System dependent definitions for run-time dynamic loading. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _DLFCN_H | ||
| 20 | # error "Never use <bits/dlfcn.h> directly; include <dlfcn.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* The MODE argument to `dlopen' contains one of the following: */ | ||
| 24 | #define RTLD_LAZY	0x0001	/* Lazy function call binding. */ | ||
| 25 | #define RTLD_NOW	0x0002	/* Immediate function call binding. */ | ||
| 26 | #define RTLD_BINDING_MASK 0x3	/* Mask of binding time value. */ | ||
| 27 | #define RTLD_NOLOAD	0x00008	/* Do not load the object. */ | ||
| 28 | #define RTLD_DEEPBIND	0x00010	/* Use deep binding. */ | ||
| 29 | |||
| 30 | /* If the following bit is set in the MODE argument to `dlopen', | ||
| 31 | the symbols of the loaded object and its dependencies are made | ||
| 32 | visible as if the object were linked directly into the program. */ | ||
| 33 | #define RTLD_GLOBAL	0x0004 | ||
| 34 | |||
| 35 | /* Unix98 demands the following flag which is the inverse to RTLD_GLOBAL. | ||
| 36 | The implementation does this by default and so we can define the | ||
| 37 | value to zero. */ | ||
| 38 | #define RTLD_LOCAL 0 | ||
| 39 | |||
| 40 | /* Do not delete object when closed. */ | ||
| 41 | #define RTLD_NODELETE	0x01000 | ||
| 42 | |||
| 43 | #ifdef __USE_GNU | ||
| 44 | /* To support profiling of shared objects it is a good idea to call | ||
| 45 | the function found using `dlsym' using the following macro since | ||
| 46 | these calls do not use the PLT. But this would mean the dynamic | ||
| 47 | loader has no chance to find out when the function is called. The | ||
| 48 | macro applies the necessary magic so that profiling is possible. | ||
| 49 | Rewrite | ||
| 50 | 	foo = (*fctp) (arg1, arg2); | ||
| 51 | into | ||
| 52 | foo = DL_CALL_FCT (fctp, (arg1, arg2)); | ||
| 53 | */ | ||
| 54 | # define DL_CALL_FCT(fctp, args) \ | ||
| 55 | (_dl_mcount_wrapper_check ((void *) (fctp)), (*(fctp)) args) | ||
| 56 | |||
| 57 | __BEGIN_DECLS | ||
| 58 | |||
| 59 | /* This function calls the profiling functions. */ | ||
| 60 | extern void _dl_mcount_wrapper_check (void *__selfpc) __THROW; | ||
| 61 | |||
| 62 | __END_DECLS | ||
| 63 | |||
| 64 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabi/bits/errno.h deleted-52| ... | @@ -1,52 +0,0 @@ | ||
| 1 | /* Error constants. MIPS/Linux specific version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_ERRNO_H | ||
| 20 | |||
| 21 | #if !defined _ERRNO_H | ||
| 22 | # error "Never include <bits/errno.h> directly; use <errno.h> instead." | ||
| 23 | #endif | ||
| 24 | |||
| 25 | # include <linux/errno.h> | ||
| 26 | |||
| 27 | /* Older Linux headers do not define these constants. */ | ||
| 28 | # ifndef ENOTSUP | ||
| 29 | # define ENOTSUP		EOPNOTSUPP | ||
| 30 | # endif | ||
| 31 | |||
| 32 | # ifndef ECANCELED | ||
| 33 | # define ECANCELED		158 | ||
| 34 | # endif | ||
| 35 | |||
| 36 | # ifndef EOWNERDEAD | ||
| 37 | # define EOWNERDEAD		165 | ||
| 38 | # endif | ||
| 39 | |||
| 40 | # ifndef ENOTRECOVERABLE | ||
| 41 | # define ENOTRECOVERABLE	166 | ||
| 42 | # endif | ||
| 43 | |||
| 44 | # ifndef ERFKILL | ||
| 45 | # define ERFKILL		167 | ||
| 46 | # endif | ||
| 47 | |||
| 48 | # ifndef EHWPOISON | ||
| 49 | # define EHWPOISON		168 | ||
| 50 | # endif | ||
| 51 | |||
| 52 | #endif /* bits/errno.h. */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabi/bits/eventfd.h deleted-31| ... | @@ -1,31 +0,0 @@ | ||
| 1 | /* Copyright (C) 2007-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_SYS_EVENTFD_H | ||
| 19 | # error "Never use <bits/eventfd.h> directly; include <sys/eventfd.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Flags for eventfd. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | EFD_SEMAPHORE = 00000001, | ||
| 26 | #define EFD_SEMAPHORE EFD_SEMAPHORE | ||
| 27 | EFD_CLOEXEC = 02000000, | ||
| 28 | #define EFD_CLOEXEC EFD_CLOEXEC | ||
| 29 | EFD_NONBLOCK = 00000200 | ||
| 30 | #define EFD_NONBLOCK EFD_NONBLOCK | ||
| 31 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabi/bits/floatn.h deleted-97| ... | @@ -1,97 +0,0 @@ | ||
| 1 | /* Macros to control TS 18661-3 glibc features on MIPS platforms. | ||
| 2 | Copyright (C) 2017-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_FLOATN_H | ||
| 20 | #define _BITS_FLOATN_H | ||
| 21 | |||
| 22 | #include <features.h> | ||
| 23 | #include <bits/long-double.h> | ||
| 24 | |||
| 25 | /* Defined to 1 if the current compiler invocation provides a | ||
| 26 | floating-point type with the IEEE 754 binary128 format, and this | ||
| 27 | glibc includes corresponding *f128 interfaces for it. */ | ||
| 28 | #ifndef __NO_LONG_DOUBLE_MATH | ||
| 29 | # define __HAVE_FLOAT128 1 | ||
| 30 | #else | ||
| 31 | /* glibc does not support _Float128 for platforms where long double is | ||
| 32 | normally binary128 when building with long double as binary64. | ||
| 33 | GCC's default for supported scalar modes does not support it either | ||
| 34 | in that case. */ | ||
| 35 | # define __HAVE_FLOAT128 0 | ||
| 36 | #endif | ||
| 37 | |||
| 38 | /* Defined to 1 if __HAVE_FLOAT128 is 1 and the type is ABI-distinct | ||
| 39 | from the default float, double and long double types in this glibc. */ | ||
| 40 | #define __HAVE_DISTINCT_FLOAT128 0 | ||
| 41 | |||
| 42 | /* Defined to 1 if the current compiler invocation provides a | ||
| 43 | floating-point type with the right format for _Float64x, and this | ||
| 44 | glibc includes corresponding *f64x interfaces for it. */ | ||
| 45 | #define __HAVE_FLOAT64X __HAVE_FLOAT128 | ||
| 46 | |||
| 47 | /* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format | ||
| 48 | of long double. Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has | ||
| 49 | the format of _Float128, which must be different from that of long | ||
| 50 | double. */ | ||
| 51 | #define __HAVE_FLOAT64X_LONG_DOUBLE __HAVE_FLOAT128 | ||
| 52 | |||
| 53 | #ifndef __ASSEMBLER__ | ||
| 54 | |||
| 55 | /* Defined to concatenate the literal suffix to be used with _Float128 | ||
| 56 | types, if __HAVE_FLOAT128 is 1. */ | ||
| 57 | # if __HAVE_FLOAT128 | ||
| 58 | # if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) | ||
| 59 | /* The literal suffix f128 exists only since GCC 7.0. */ | ||
| 60 | # define __f128(x) x##l | ||
| 61 | # else | ||
| 62 | # define __f128(x) x##f128 | ||
| 63 | # endif | ||
| 64 | # endif | ||
| 65 | |||
| 66 | /* Defined to a complex binary128 type if __HAVE_FLOAT128 is 1. */ | ||
| 67 | # if __HAVE_FLOAT128 | ||
| 68 | # if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) | ||
| 69 | # define __CFLOAT128 _Complex long double | ||
| 70 | # else | ||
| 71 | # define __CFLOAT128 _Complex _Float128 | ||
| 72 | # endif | ||
| 73 | # endif | ||
| 74 | |||
| 75 | /* The remaining of this file provides support for older compilers. */ | ||
| 76 | # if __HAVE_FLOAT128 | ||
| 77 | |||
| 78 | /* The type _Float128 exists only since GCC 7.0. */ | ||
| 79 | # if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) | ||
| 80 | typedef long double _Float128; | ||
| 81 | # endif | ||
| 82 | |||
| 83 | /* Various built-in functions do not exist before GCC 7.0. */ | ||
| 84 | # if !__GNUC_PREREQ (7, 0) | ||
| 85 | # define __builtin_huge_valf128() (__builtin_huge_vall ()) | ||
| 86 | # define __builtin_inff128() (__builtin_infl ()) | ||
| 87 | # define __builtin_nanf128(x) (__builtin_nanl (x)) | ||
| 88 | # define __builtin_nansf128(x) (__builtin_nansl (x)) | ||
| 89 | # endif | ||
| 90 | |||
| 91 | # endif | ||
| 92 | |||
| 93 | #endif /* !__ASSEMBLER__. */ | ||
| 94 | |||
| 95 | #include <bits/floatn-common.h> | ||
| 96 | |||
| 97 | #endif /* _BITS_FLOATN_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabi/bits/inotify.h deleted-29| ... | @@ -1,29 +0,0 @@ | ||
| 1 | /* Copyright (C) 2005-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_SYS_INOTIFY_H | ||
| 19 | # error "Never use <bits/inotify.h> directly; include <sys/inotify.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Flags for the parameter of inotify_init1. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | IN_CLOEXEC = 02000000, | ||
| 26 | #define IN_CLOEXEC IN_CLOEXEC | ||
| 27 | IN_NONBLOCK = 00000200 | ||
| 28 | #define IN_NONBLOCK IN_NONBLOCK | ||
| 29 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabi/bits/ioctl-types.h deleted-75| ... | @@ -1,75 +0,0 @@ | ||
| 1 | /* Structure types for pre-termios terminal ioctls. Linux/MIPS version. | ||
| 2 | Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_IOCTL_H | ||
| 20 | # error "Never use <bits/ioctl-types.h> directly; include <sys/ioctl.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Get definition of constants for use with `ioctl'. */ | ||
| 24 | #include <asm/ioctls.h> | ||
| 25 | |||
| 26 | struct winsize | ||
| 27 | { | ||
| 28 | unsigned short int ws_row; | ||
| 29 | unsigned short int ws_col; | ||
| 30 | unsigned short int ws_xpixel; | ||
| 31 | unsigned short int ws_ypixel; | ||
| 32 | }; | ||
| 33 | |||
| 34 | #define NCC	8 | ||
| 35 | struct termio | ||
| 36 | { | ||
| 37 | unsigned short int c_iflag;		/* input mode flags */ | ||
| 38 | unsigned short int c_oflag;		/* output mode flags */ | ||
| 39 | unsigned short int c_cflag;		/* control mode flags */ | ||
| 40 | unsigned short int c_lflag;		/* local mode flags */ | ||
| 41 | char c_line;			/* line discipline */ | ||
| 42 | /* Yes, this is really NCCS. */ | ||
| 43 | unsigned char c_cc[32 /* NCCS */]; /* control characters */ | ||
| 44 | }; | ||
| 45 | |||
| 46 | /* modem lines */ | ||
| 47 | #define TIOCM_LE	0x001		/* line enable */ | ||
| 48 | #define TIOCM_DTR	0x002		/* data terminal ready */ | ||
| 49 | #define TIOCM_RTS	0x004		/* request to send */ | ||
| 50 | #define TIOCM_ST	0x010		/* secondary transmit */ | ||
| 51 | #define TIOCM_SR	0x020		/* secondary receive */ | ||
| 52 | #define TIOCM_CTS	0x040		/* clear to send */ | ||
| 53 | #define TIOCM_CAR	0x100		/* carrier detect */ | ||
| 54 | #define TIOCM_CD	TIOCM_CAR | ||
| 55 | #define TIOCM_RNG	0x200		/* ring */ | ||
| 56 | #define TIOCM_RI	TIOCM_RNG | ||
| 57 | #define TIOCM_DSR	0x400		/* data set ready */ | ||
| 58 | |||
| 59 | /* line disciplines */ | ||
| 60 | #define N_TTY		0 | ||
| 61 | #define N_SLIP		1 | ||
| 62 | #define N_MOUSE		2 | ||
| 63 | #define N_PPP		3 | ||
| 64 | #define N_STRIP		4 | ||
| 65 | #define N_AX25		5 | ||
| 66 | #define N_X25		6	/* X.25 async */ | ||
| 67 | #define N_6PACK		7 | ||
| 68 | #define N_MASC		8	/* Mobitex module */ | ||
| 69 | #define N_R3964		9	/* Simatic R3964 module */ | ||
| 70 | #define N_PROFIBUS_FDL	10	/* Profibus */ | ||
| 71 | #define N_IRDA		11	/* Linux IR */ | ||
| 72 | #define N_SMSBLOCK	12	/* SMS block mode */ | ||
| 73 | #define N_HDLC		13	/* synchronous HDLC */ | ||
| 74 | #define N_SYNC_PPP	14	/* synchronous PPP */ | ||
| 75 | #define	N_HCI		15	/* Bluetooth HCI UART */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabi/bits/ipctypes.h deleted-31| ... | @@ -1,31 +0,0 @@ | ||
| 1 | /* bits/ipctypes.h -- Define some types used by SysV IPC/MSG/SHM. MIPS version | ||
| 2 | Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* | ||
| 20 | * Never include <bits/ipctypes.h> directly. | ||
| 21 | */ | ||
| 22 | |||
| 23 | #ifndef _BITS_IPCTYPES_H | ||
| 24 | #define _BITS_IPCTYPES_H	1 | ||
| 25 | |||
| 26 | #include <bits/types.h> | ||
| 27 | |||
| 28 | typedef __SLONG32_TYPE __ipc_pid_t; | ||
| 29 | |||
| 30 | |||
| 31 | #endif /* bits/ipctypes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabi/bits/mman.h deleted-44| ... | @@ -1,44 +0,0 @@ | ||
| 1 | /* Definitions for POSIX memory map interface. Linux/MIPS version. | ||
| 2 | Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_MMAN_H | ||
| 20 | # error "Never use <bits/mman.h> directly; include <sys/mman.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* The following definitions basically come from the kernel headers. | ||
| 24 | But the kernel header is not namespace clean. */ | ||
| 25 | |||
| 26 | /* These are Linux-specific. */ | ||
| 27 | #define MAP_NORESERVE	0x0400		/* don't check for reservations */ | ||
| 28 | #define MAP_GROWSDOWN	0x1000		/* stack-like segment */ | ||
| 29 | #define MAP_DENYWRITE	0x2000		/* ETXTBSY */ | ||
| 30 | #define MAP_EXECUTABLE	0x4000		/* mark it as an executable */ | ||
| 31 | #define MAP_LOCKED	0x8000		/* pages are locked */ | ||
| 32 | #define MAP_POPULATE 0x10000 /* populate (prefault) pagetables */ | ||
| 33 | #define MAP_NONBLOCK 0x20000 /* do not block on IO */ | ||
| 34 | #define MAP_STACK	0x40000		/* Allocation is for a stack. */ | ||
| 35 | #define MAP_HUGETLB	0x80000		/* Create huge page mapping. */ | ||
| 36 | #define MAP_FIXED_NOREPLACE 0x100000	/* MAP_FIXED but do not unmap | ||
| 37 | 					 underlying mapping. */ | ||
| 38 | |||
| 39 | #define __MAP_ANONYMOUS 0x0800 | ||
| 40 | |||
| 41 | /* Include generic Linux declarations. */ | ||
| 42 | #include <bits/mman-linux.h> | ||
| 43 | |||
| 44 | #define MAP_RENAME	MAP_ANONYMOUS | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabi/bits/poll.h deleted-49| ... | @@ -1,49 +0,0 @@ | ||
| 1 | /* Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_POLL_H | ||
| 19 | # error "Never use <bits/poll.h> directly; include <sys/poll.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Event types that can be polled for. These bits may be set in `events' | ||
| 23 | to indicate the interesting event types; they will appear in `revents' | ||
| 24 | to indicate the status of the file descriptor. */ | ||
| 25 | #define POLLIN		0x001		/* There is data to read. */ | ||
| 26 | #define POLLPRI		0x002		/* There is urgent data to read. */ | ||
| 27 | #define POLLOUT		0x004		/* Writing now will not block. */ | ||
| 28 | |||
| 29 | #if defined __USE_XOPEN || defined __USE_XOPEN2K8 | ||
| 30 | /* These values are defined in XPG4.2. */ | ||
| 31 | # define POLLRDNORM	0x040		/* Normal data may be read. */ | ||
| 32 | # define POLLRDBAND	0x080		/* Priority data may be read. */ | ||
| 33 | # define POLLWRNORM	POLLOUT		/* Writing now will not block. */ | ||
| 34 | # define POLLWRBAND	0x100		/* Priority data may be written. */ | ||
| 35 | #endif | ||
| 36 | |||
| 37 | #ifdef __USE_GNU | ||
| 38 | /* These are extensions for Linux. */ | ||
| 39 | # define POLLMSG	0x400 | ||
| 40 | # define POLLREMOVE	0x1000 | ||
| 41 | # define POLLRDHUP	0x2000 | ||
| 42 | #endif | ||
| 43 | |||
| 44 | /* Event types always implicitly polled for. These bits need not be set in | ||
| 45 | `events', but they will appear in `revents' to indicate the status of | ||
| 46 | the file descriptor. */ | ||
| 47 | #define POLLERR		0x008		/* Error condition. */ | ||
| 48 | #define POLLHUP		0x010		/* Hung up. */ | ||
| 49 | #define POLLNVAL	0x020		/* Invalid polling request. */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabi/bits/pthread_stack_min.h deleted-20| ... | @@ -1,20 +0,0 @@ | ||
| 1 | /* Definition of PTHREAD_STACK_MIN. MIPS Linux version. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public License as | ||
| 7 | published by the Free Software Foundation; either version 2.1 of the | ||
| 8 | License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* Minimum size for a thread. At least two pages with 64k pages. */ | ||
| 20 | #define PTHREAD_STACK_MIN	131072 | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabi/bits/pthreadtypes-arch.h deleted-44| ... | @@ -1,44 +0,0 @@ | ||
| 1 | /* Machine-specific pthread type layouts. MIPS version. | ||
| 2 | Copyright (C) 2005-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_PTHREADTYPES_ARCH_H | ||
| 20 | #define _BITS_PTHREADTYPES_ARCH_H	1 | ||
| 21 | |||
| 22 | #include <bits/endian.h> | ||
| 23 | |||
| 24 | #if _MIPS_SIM == _ABI64 | ||
| 25 | # define __SIZEOF_PTHREAD_ATTR_T 56 | ||
| 26 | # define __SIZEOF_PTHREAD_MUTEX_T 40 | ||
| 27 | # define __SIZEOF_PTHREAD_RWLOCK_T 56 | ||
| 28 | # define __SIZEOF_PTHREAD_BARRIER_T 32 | ||
| 29 | #else | ||
| 30 | # define __SIZEOF_PTHREAD_ATTR_T 36 | ||
| 31 | # define __SIZEOF_PTHREAD_MUTEX_T 24 | ||
| 32 | # define __SIZEOF_PTHREAD_RWLOCK_T 32 | ||
| 33 | # define __SIZEOF_PTHREAD_BARRIER_T 20 | ||
| 34 | #endif | ||
| 35 | #define __SIZEOF_PTHREAD_MUTEXATTR_T 4 | ||
| 36 | #define __SIZEOF_PTHREAD_COND_T 48 | ||
| 37 | #define __SIZEOF_PTHREAD_CONDATTR_T 4 | ||
| 38 | #define __SIZEOF_PTHREAD_RWLOCKATTR_T 8 | ||
| 39 | #define __SIZEOF_PTHREAD_BARRIERATTR_T 4 | ||
| 40 | |||
| 41 | #define __LOCK_ALIGNMENT | ||
| 42 | #define __ONCE_ALIGNMENT | ||
| 43 | |||
| 44 | #endif	/* bits/pthreadtypes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabi/bits/resource.h deleted-231| ... | @@ -1,231 +0,0 @@ | ||
| 1 | /* Bit values & structures for resource limits. Linux/MIPS version. | ||
| 2 | Copyright (C) 1994-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_RESOURCE_H | ||
| 20 | # error "Never use <bits/resource.h> directly; include <sys/resource.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <bits/types.h> | ||
| 24 | |||
| 25 | /* Transmute defines to enumerations. The macro re-definitions are | ||
| 26 | necessary because some programs want to test for operating system | ||
| 27 | features with #ifdef RUSAGE_SELF. In ISO C the reflexive | ||
| 28 | definition is a no-op. */ | ||
| 29 | |||
| 30 | /* Kinds of resource limit. */ | ||
| 31 | enum __rlimit_resource | ||
| 32 | { | ||
| 33 | /* Per-process CPU limit, in seconds. */ | ||
| 34 | RLIMIT_CPU = 0, | ||
| 35 | #define RLIMIT_CPU RLIMIT_CPU | ||
| 36 | |||
| 37 | /* Largest file that can be created, in bytes. */ | ||
| 38 | RLIMIT_FSIZE = 1, | ||
| 39 | #define	RLIMIT_FSIZE RLIMIT_FSIZE | ||
| 40 | |||
| 41 | /* Maximum size of data segment, in bytes. */ | ||
| 42 | RLIMIT_DATA = 2, | ||
| 43 | #define	RLIMIT_DATA RLIMIT_DATA | ||
| 44 | |||
| 45 | /* Maximum size of stack segment, in bytes. */ | ||
| 46 | RLIMIT_STACK = 3, | ||
| 47 | #define	RLIMIT_STACK RLIMIT_STACK | ||
| 48 | |||
| 49 | /* Largest core file that can be created, in bytes. */ | ||
| 50 | RLIMIT_CORE = 4, | ||
| 51 | #define	RLIMIT_CORE RLIMIT_CORE | ||
| 52 | |||
| 53 | /* Largest resident set size, in bytes. | ||
| 54 | This affects swapping; processes that are exceeding their | ||
| 55 | resident set size will be more likely to have physical memory | ||
| 56 | taken from them. */ | ||
| 57 | __RLIMIT_RSS = 7, | ||
| 58 | #define	RLIMIT_RSS __RLIMIT_RSS | ||
| 59 | |||
| 60 | /* Number of open files. */ | ||
| 61 | RLIMIT_NOFILE = 5, | ||
| 62 | __RLIMIT_OFILE = RLIMIT_NOFILE, /* BSD name for same. */ | ||
| 63 | #define RLIMIT_NOFILE RLIMIT_NOFILE | ||
| 64 | #define RLIMIT_OFILE __RLIMIT_OFILE | ||
| 65 | |||
| 66 | /* Address space limit (?) */ | ||
| 67 | RLIMIT_AS = 6, | ||
| 68 | #define RLIMIT_AS RLIMIT_AS | ||
| 69 | |||
| 70 | /* Number of processes. */ | ||
| 71 | __RLIMIT_NPROC = 8, | ||
| 72 | #define RLIMIT_NPROC __RLIMIT_NPROC | ||
| 73 | |||
| 74 | /* Locked-in-memory address space. */ | ||
| 75 | __RLIMIT_MEMLOCK = 9, | ||
| 76 | #define RLIMIT_MEMLOCK __RLIMIT_MEMLOCK | ||
| 77 | |||
| 78 | /* Maximum number of file locks. */ | ||
| 79 | __RLIMIT_LOCKS = 10, | ||
| 80 | #define RLIMIT_LOCKS __RLIMIT_LOCKS | ||
| 81 | |||
| 82 | /* Maximum number of pending signals. */ | ||
| 83 | __RLIMIT_SIGPENDING = 11, | ||
| 84 | #define RLIMIT_SIGPENDING __RLIMIT_SIGPENDING | ||
| 85 | |||
| 86 | /* Maximum bytes in POSIX message queues. */ | ||
| 87 | __RLIMIT_MSGQUEUE = 12, | ||
| 88 | #define RLIMIT_MSGQUEUE __RLIMIT_MSGQUEUE | ||
| 89 | |||
| 90 | /* Maximum nice priority allowed to raise to. | ||
| 91 | Nice levels 19 .. -20 correspond to 0 .. 39 | ||
| 92 | values of this resource limit. */ | ||
| 93 | __RLIMIT_NICE = 13, | ||
| 94 | #define RLIMIT_NICE __RLIMIT_NICE | ||
| 95 | |||
| 96 | /* Maximum realtime priority allowed for non-priviledged | ||
| 97 | processes. */ | ||
| 98 | __RLIMIT_RTPRIO = 14, | ||
| 99 | #define RLIMIT_RTPRIO __RLIMIT_RTPRIO | ||
| 100 | |||
| 101 | /* Maximum CPU time in microseconds that a process scheduled under a real-time | ||
| 102 | scheduling policy may consume without making a blocking system | ||
| 103 | call before being forcibly descheduled. */ | ||
| 104 | __RLIMIT_RTTIME = 15, | ||
| 105 | #define RLIMIT_RTTIME __RLIMIT_RTTIME | ||
| 106 | |||
| 107 | __RLIMIT_NLIMITS = 16, | ||
| 108 | __RLIM_NLIMITS = __RLIMIT_NLIMITS | ||
| 109 | #define RLIMIT_NLIMITS __RLIMIT_NLIMITS | ||
| 110 | #define RLIM_NLIMITS __RLIM_NLIMITS | ||
| 111 | }; | ||
| 112 | |||
| 113 | /* Value to indicate that there is no limit. */ | ||
| 114 | #if _MIPS_SIM == _ABI64 | ||
| 115 | /* The N64 syscall uses this value. */ | ||
| 116 | # define RLIM_INFINITY 0xffffffffffffffffUL | ||
| 117 | # ifdef __USE_LARGEFILE64 | ||
| 118 | # define RLIM64_INFINITY 0xffffffffffffffffUL | ||
| 119 | # endif | ||
| 120 | #else | ||
| 121 | /* The O32 and N32 syscalls use 0x7fffffff. */ | ||
| 122 | # ifndef __USE_FILE_OFFSET64 | ||
| 123 | # define RLIM_INFINITY ((long int)(~0UL >> 1)) | ||
| 124 | # else | ||
| 125 | # define RLIM_INFINITY 0xffffffffffffffffULL | ||
| 126 | # endif | ||
| 127 | # ifdef __USE_LARGEFILE64 | ||
| 128 | # define RLIM64_INFINITY 0xffffffffffffffffULL | ||
| 129 | # endif | ||
| 130 | #endif | ||
| 131 | |||
| 132 | /* We can represent all limits. */ | ||
| 133 | #define RLIM_SAVED_MAX	RLIM_INFINITY | ||
| 134 | #define RLIM_SAVED_CUR	RLIM_INFINITY | ||
| 135 | |||
| 136 | |||
| 137 | /* Type for resource quantity measurement. */ | ||
| 138 | #ifndef __USE_FILE_OFFSET64 | ||
| 139 | typedef __rlim_t rlim_t; | ||
| 140 | #else | ||
| 141 | typedef __rlim64_t rlim_t; | ||
| 142 | #endif | ||
| 143 | #ifdef __USE_LARGEFILE64 | ||
| 144 | typedef __rlim64_t rlim64_t; | ||
| 145 | #endif | ||
| 146 | |||
| 147 | struct rlimit | ||
| 148 | { | ||
| 149 | /* The current (soft) limit. */ | ||
| 150 | rlim_t rlim_cur; | ||
| 151 | /* The hard limit. */ | ||
| 152 | rlim_t rlim_max; | ||
| 153 | }; | ||
| 154 | |||
| 155 | #ifdef __USE_LARGEFILE64 | ||
| 156 | struct rlimit64 | ||
| 157 | { | ||
| 158 | /* The current (soft) limit. */ | ||
| 159 | rlim64_t rlim_cur; | ||
| 160 | /* The hard limit. */ | ||
| 161 | rlim64_t rlim_max; | ||
| 162 | }; | ||
| 163 | #endif | ||
| 164 | |||
| 165 | /* Whose usage statistics do you want? */ | ||
| 166 | enum __rusage_who | ||
| 167 | { | ||
| 168 | /* The calling process. */ | ||
| 169 | RUSAGE_SELF = 0, | ||
| 170 | #define RUSAGE_SELF RUSAGE_SELF | ||
| 171 | |||
| 172 | /* All of its terminated child processes. */ | ||
| 173 | RUSAGE_CHILDREN = -1 | ||
| 174 | #define RUSAGE_CHILDREN RUSAGE_CHILDREN | ||
| 175 | |||
| 176 | #ifdef __USE_GNU | ||
| 177 | , | ||
| 178 | /* The calling thread. */ | ||
| 179 | RUSAGE_THREAD = 1 | ||
| 180 | # define RUSAGE_THREAD RUSAGE_THREAD | ||
| 181 | /* Name for the same functionality on Solaris. */ | ||
| 182 | # define RUSAGE_LWP RUSAGE_THREAD | ||
| 183 | #endif | ||
| 184 | }; | ||
| 185 | |||
| 186 | #include <bits/types/struct_timeval.h> | ||
| 187 | #include <bits/types/struct_rusage.h> | ||
| 188 | |||
| 189 | /* Priority limits. */ | ||
| 190 | #define PRIO_MIN	-20	/* Minimum priority a process can have. */ | ||
| 191 | #define PRIO_MAX	20	/* Maximum priority a process can have. */ | ||
| 192 | |||
| 193 | /* The type of the WHICH argument to `getpriority' and `setpriority', | ||
| 194 | indicating what flavor of entity the WHO argument specifies. */ | ||
| 195 | enum __priority_which | ||
| 196 | { | ||
| 197 | PRIO_PROCESS = 0,		/* WHO is a process ID. */ | ||
| 198 | #define PRIO_PROCESS PRIO_PROCESS | ||
| 199 | PRIO_PGRP = 1,		/* WHO is a process group ID. */ | ||
| 200 | #define PRIO_PGRP PRIO_PGRP | ||
| 201 | PRIO_USER = 2			/* WHO is a user ID. */ | ||
| 202 | #define PRIO_USER PRIO_USER | ||
| 203 | }; | ||
| 204 | |||
| 205 | |||
| 206 | __BEGIN_DECLS | ||
| 207 | |||
| 208 | #ifdef __USE_GNU | ||
| 209 | /* Modify and return resource limits of a process atomically. */ | ||
| 210 | # ifndef __USE_FILE_OFFSET64 | ||
| 211 | extern int prlimit (__pid_t __pid, enum __rlimit_resource __resource, | ||
| 212 | 		 const struct rlimit *__new_limit, | ||
| 213 | 		 struct rlimit *__old_limit) __THROW; | ||
| 214 | # else | ||
| 215 | # ifdef __REDIRECT_NTH | ||
| 216 | extern int __REDIRECT_NTH (prlimit, (__pid_t __pid, | ||
| 217 | 				 enum __rlimit_resource __resource, | ||
| 218 | 				 const struct rlimit *__new_limit, | ||
| 219 | 				 struct rlimit *__old_limit), prlimit64); | ||
| 220 | # else | ||
| 221 | # define prlimit prlimit64 | ||
| 222 | # endif | ||
| 223 | # endif | ||
| 224 | # ifdef __USE_LARGEFILE64 | ||
| 225 | extern int prlimit64 (__pid_t __pid, enum __rlimit_resource __resource, | ||
| 226 | 		 const struct rlimit64 *__new_limit, | ||
| 227 | 		 struct rlimit64 *__old_limit) __THROW; | ||
| 228 | # endif | ||
| 229 | #endif | ||
| 230 | |||
| 231 | __END_DECLS | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabi/bits/semaphore.h deleted-36| ... | @@ -1,36 +0,0 @@ | ||
| 1 | /* Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SEMAPHORE_H | ||
| 19 | # error "Never use <bits/semaphore.h> directly; include <semaphore.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | #if _MIPS_SIM == _ABI64 | ||
| 23 | # define __SIZEOF_SEM_T	32 | ||
| 24 | #else | ||
| 25 | # define __SIZEOF_SEM_T	16 | ||
| 26 | #endif | ||
| 27 | |||
| 28 | /* Value returned if `sem_open' failed. */ | ||
| 29 | #define SEM_FAILED ((sem_t *) 0) | ||
| 30 | |||
| 31 | |||
| 32 | typedef union | ||
| 33 | { | ||
| 34 | char __size[__SIZEOF_SEM_T]; | ||
| 35 | long int __align; | ||
| 36 | } sem_t; | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabi/bits/shmlba.h deleted-24| ... | @@ -1,24 +0,0 @@ | ||
| 1 | /* Define SHMLBA. MIPS version. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SHM_H | ||
| 20 | # error "Never use <bits/shmlba.h> directly; include <sys/shm.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Segment low boundary address multiple. */ | ||
| 24 | #define SHMLBA		0x40000 | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabi/bits/sigaction.h deleted-94| ... | @@ -1,94 +0,0 @@ | ||
| 1 | /* The proper definitions for Linux/MIPS's sigaction. | ||
| 2 | Copyright (C) 1993-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_SIGACTION_H | ||
| 20 | #define _BITS_SIGACTION_H 1 | ||
| 21 | |||
| 22 | #ifndef _SIGNAL_H | ||
| 23 | # error "Never include <bits/sigaction.h> directly; use <signal.h> instead." | ||
| 24 | #endif | ||
| 25 | |||
| 26 | /* Structure describing the action to be taken when a signal arrives. */ | ||
| 27 | struct sigaction | ||
| 28 | { | ||
| 29 | /* Special flags. */ | ||
| 30 | int sa_flags; | ||
| 31 | |||
| 32 | /* Signal handler. */ | ||
| 33 | #if defined __USE_POSIX199309 || defined __USE_XOPEN_EXTENDED | ||
| 34 | union | ||
| 35 | { | ||
| 36 | 	/* Used if SA_SIGINFO is not set. */ | ||
| 37 | 	__sighandler_t sa_handler; | ||
| 38 | 	/* Used if SA_SIGINFO is set. */ | ||
| 39 | 	void (*sa_sigaction) (int, siginfo_t *, void *); | ||
| 40 | } | ||
| 41 | __sigaction_handler; | ||
| 42 | # define sa_handler __sigaction_handler.sa_handler | ||
| 43 | # define sa_sigaction __sigaction_handler.sa_sigaction | ||
| 44 | #else | ||
| 45 | __sighandler_t sa_handler; | ||
| 46 | #endif | ||
| 47 | /* Additional set of signals to be blocked. */ | ||
| 48 | __sigset_t sa_mask; | ||
| 49 | |||
| 50 | /* The ABI says here are two unused ints following. */ | ||
| 51 | /* Restore handler. */ | ||
| 52 | void (*sa_restorer) (void); | ||
| 53 | |||
| 54 | #if _MIPS_SZPTR < 64 | ||
| 55 | int sa_resv[1]; | ||
| 56 | #endif | ||
| 57 | }; | ||
| 58 | |||
| 59 | /* Bits in `sa_flags'. */ | ||
| 60 | /* Please note that some Linux kernels versions use different values for these | ||
| 61 | flags which is a bug in those kernel versions. */ | ||
| 62 | #define SA_NOCLDSTOP 0x00000001 /* Don't send SIGCHLD when children stop. */ | ||
| 63 | #define SA_NOCLDWAIT 0x00010000 /* Don't create zombie on child death. */ | ||
| 64 | #define SA_SIGINFO 0x00000008 /* Invoke signal-catching function with | ||
| 65 | 				 three arguments instead of one. */ | ||
| 66 | #if defined __USE_XOPEN_EXTENDED || defined __USE_MISC | ||
| 67 | # define SA_ONSTACK 0x08000000 /* Use signal stack by using `sa_restorer'. */ | ||
| 68 | #endif | ||
| 69 | #if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8 | ||
| 70 | # define SA_RESETHAND 0x80000000 /* Reset to SIG_DFL on entry to handler. */ | ||
| 71 | # define SA_RESTART 0x10000000 /* Restart syscall on signal return. */ | ||
| 72 | # define SA_NODEFER 0x40000000 /* Don't automatically block the signal when | ||
| 73 | 				 its handler is being executed. */ | ||
| 74 | #endif | ||
| 75 | #ifdef __USE_MISC | ||
| 76 | # define SA_INTERRUPT 0x20000000 /* Historical no-op. */ | ||
| 77 | |||
| 78 | /* Some aliases for the SA_ constants. */ | ||
| 79 | # define SA_NOMASK SA_NODEFER | ||
| 80 | # define SA_ONESHOT SA_RESETHAND | ||
| 81 | # define SA_STACK SA_ONSTACK | ||
| 82 | #endif | ||
| 83 | |||
| 84 | /* Values for the HOW argument to `sigprocmask'. */ | ||
| 85 | #define SIG_NOP	 0		/* 0 is unused to catch errors */ | ||
| 86 | #define	SIG_BLOCK 1		/* Block signals. */ | ||
| 87 | #define	SIG_UNBLOCK 2		/* Unblock signals. */ | ||
| 88 | #define	SIG_SETMASK 3		/* Set the set of blocked signals. */ | ||
| 89 | #ifdef __USE_MISC | ||
| 90 | # define SIG_SETMASK32 256	/* Goodie from SGI for BSD compatibility: | ||
| 91 | 				 set only the low 32 bit of the sigset. */ | ||
| 92 | #endif | ||
| 93 | |||
| 94 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabi/bits/sigcontext.h deleted-82| ... | @@ -1,82 +0,0 @@ | ||
| 1 | /* Copyright (C) 1996-2025 Free Software Foundation, Inc. This file is part of the GNU C Library. | ||
| 2 | |||
| 3 | The GNU C Library is free software; you can redistribute it and/or | ||
| 4 | modify it under the terms of the GNU Lesser General Public | ||
| 5 | License as published by the Free Software Foundation; either | ||
| 6 | version 2.1 of the License, or (at your option) any later version. | ||
| 7 | |||
| 8 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 9 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 10 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 11 | Lesser General Public License for more details. | ||
| 12 | |||
| 13 | You should have received a copy of the GNU Lesser General Public | ||
| 14 | License along with the GNU C Library. If not, see | ||
| 15 | <https://www.gnu.org/licenses/>. */ | ||
| 16 | |||
| 17 | #ifndef _BITS_SIGCONTEXT_H | ||
| 18 | #define _BITS_SIGCONTEXT_H 1 | ||
| 19 | |||
| 20 | #if !defined _SIGNAL_H && !defined _SYS_UCONTEXT_H | ||
| 21 | # error "Never use <bits/sigcontext.h> directly; include <signal.h> instead." | ||
| 22 | #endif | ||
| 23 | |||
| 24 | #include <sgidefs.h> | ||
| 25 | |||
| 26 | #if _MIPS_SIM == _ABIO32 | ||
| 27 | |||
| 28 | /* Certain unused fields were replaced with new ones in 2.6.12-rc4. | ||
| 29 | The changes were as follows: | ||
| 30 | |||
| 31 | sc_cause -> sc_hi1 | ||
| 32 | sc_badvaddr -> sc_lo1 | ||
| 33 | sc_sigset[0] -> sc_hi2 | ||
| 34 | sc_sigset[1] -> sc_lo2 | ||
| 35 | sc_sigset[2] -> sc_hi3 | ||
| 36 | sc_sigset[3] -> sc_lo3 | ||
| 37 | |||
| 38 | sc_regmask, sc_ownedfp and sc_fpc_eir are not used. */ | ||
| 39 | struct sigcontext { | ||
| 40 | unsigned int sc_regmask; | ||
| 41 | unsigned int sc_status; | ||
| 42 | __extension__ unsigned long long sc_pc; | ||
| 43 | __extension__ unsigned long long sc_regs[32]; | ||
| 44 | __extension__ unsigned long long sc_fpregs[32]; | ||
| 45 | unsigned int sc_ownedfp; | ||
| 46 | unsigned int sc_fpc_csr; | ||
| 47 | unsigned int sc_fpc_eir; | ||
| 48 | unsigned int sc_used_math; | ||
| 49 | unsigned int sc_dsp; | ||
| 50 | __extension__ unsigned long long sc_mdhi; | ||
| 51 | __extension__ unsigned long long sc_mdlo; | ||
| 52 | unsigned long sc_hi1; | ||
| 53 | unsigned long sc_lo1; | ||
| 54 | unsigned long sc_hi2; | ||
| 55 | unsigned long sc_lo2; | ||
| 56 | unsigned long sc_hi3; | ||
| 57 | unsigned long sc_lo3; | ||
| 58 | }; | ||
| 59 | |||
| 60 | #else | ||
| 61 | |||
| 62 | /* This structure changed in 2.6.12-rc4 when DSP support was added. */ | ||
| 63 | struct sigcontext { | ||
| 64 | __extension__ unsigned long long sc_regs[32]; | ||
| 65 | __extension__ unsigned long long sc_fpregs[32]; | ||
| 66 | __extension__ unsigned long long sc_mdhi; | ||
| 67 | __extension__ unsigned long long sc_hi1; | ||
| 68 | __extension__ unsigned long long sc_hi2; | ||
| 69 | __extension__ unsigned long long sc_hi3; | ||
| 70 | __extension__ unsigned long long sc_mdlo; | ||
| 71 | __extension__ unsigned long long sc_lo1; | ||
| 72 | __extension__ unsigned long long sc_lo2; | ||
| 73 | __extension__ unsigned long long sc_lo3; | ||
| 74 | __extension__ unsigned long long sc_pc; | ||
| 75 | unsigned int sc_fpc_csr; | ||
| 76 | unsigned int sc_used_math; | ||
| 77 | unsigned int sc_dsp; | ||
| 78 | unsigned int sc_reserved; | ||
| 79 | }; | ||
| 80 | |||
| 81 | #endif /* _MIPS_SIM != _ABIO32 */ | ||
| 82 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabi/bits/siginfo-arch.h deleted-13| ... | @@ -1,13 +0,0 @@ | ||
| 1 | /* Architecture-specific adjustments to siginfo_t. MIPS version. */ | ||
| 2 | #ifndef _BITS_SIGINFO_ARCH_H | ||
| 3 | #define _BITS_SIGINFO_ARCH_H 1 | ||
| 4 | |||
| 5 | /* MIPS has the si_code and si_errno fields in the opposite order from | ||
| 6 | all other architectures. */ | ||
| 7 | #define __SI_ERRNO_THEN_CODE 0 | ||
| 8 | |||
| 9 | /* MIPS also has different values for SI_ASYNCIO, SI_MESGQ, and SI_TIMER | ||
| 10 | than all other architectures. */ | ||
| 11 | #define __SI_ASYNCIO_AFTER_SIGIO 0 | ||
| 12 | |||
| 13 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabi/bits/signalfd.h deleted-29| ... | @@ -1,29 +0,0 @@ | ||
| 1 | /* Copyright (C) 2007-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_SYS_SIGNALFD_H | ||
| 19 | # error "Never use <bits/signalfd.h> directly; include <sys/signalfd.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Flags for signalfd. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | SFD_CLOEXEC = 02000000, | ||
| 26 | #define SFD_CLOEXEC SFD_CLOEXEC | ||
| 27 | SFD_NONBLOCK = 00000200 | ||
| 28 | #define SFD_NONBLOCK SFD_NONBLOCK | ||
| 29 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabi/bits/signum-arch.h deleted-65| ... | @@ -1,65 +0,0 @@ | ||
| 1 | /* Signal number definitions. Linux/MIPS version. | ||
| 2 | Copyright (C) 1995-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_SIGNUM_H | ||
| 20 | #define _BITS_SIGNUM_H 1 | ||
| 21 | |||
| 22 | #ifndef _SIGNAL_H | ||
| 23 | #error "Never include <bits/signum.h> directly; use <signal.h> instead." | ||
| 24 | #endif | ||
| 25 | |||
| 26 | /* Adjustments and additions to the signal number constants for | ||
| 27 | Linux/MIPS. */ | ||
| 28 | |||
| 29 | #define SIGEMT		 7	/* Emulator trap. */ | ||
| 30 | #define SIGPWR		19	/* Power failure imminent. */ | ||
| 31 | |||
| 32 | /* Historical signals specified by POSIX. */ | ||
| 33 | #define SIGBUS 	10	/* Bus error. */ | ||
| 34 | #define SIGSYS		12	/* Bad system call. */ | ||
| 35 | |||
| 36 | /* New(er) POSIX signals (1003.1-2008, 1003.1-2013). */ | ||
| 37 | #define SIGURG		21	/* Urgent data is available at a socket. */ | ||
| 38 | #define SIGSTOP		23	/* Stop, unblockable. */ | ||
| 39 | #define SIGTSTP		24	/* Keyboard stop. */ | ||
| 40 | #define SIGCONT		25	/* Continue. */ | ||
| 41 | #define SIGCHLD		18	/* Child terminated or stopped. */ | ||
| 42 | #define SIGTTIN		26	/* Background read from control terminal. */ | ||
| 43 | #define SIGTTOU		27	/* Background write to control terminal. */ | ||
| 44 | #define SIGPOLL		22	/* Pollable event occurred (System V). */ | ||
| 45 | #define SIGXCPU		30	/* CPU time limit exceeded. */ | ||
| 46 | #define SIGVTALRM	28	/* Virtual timer expired. */ | ||
| 47 | #define SIGPROF		29	/* Profiling timer expired. */ | ||
| 48 | #define SIGXFSZ		31	/* File size limit exceeded. */ | ||
| 49 | #define SIGUSR1		16	/* User-defined signal 1. */ | ||
| 50 | #define SIGUSR2		17	/* User-defined signal 2. */ | ||
| 51 | |||
| 52 | /* Nonstandard signals found in all modern POSIX systems | ||
| 53 | (including both BSD and Linux). */ | ||
| 54 | #define SIGWINCH	20	/* Window size change (4.3 BSD, Sun). */ | ||
| 55 | |||
| 56 | /* Archaic names for compatibility. */ | ||
| 57 | #define SIGIO		SIGPOLL	/* I/O now possible (4.2 BSD). */ | ||
| 58 | #define SIGIOT		SIGABRT	/* IOT instruction, abort() on a PDP-11. */ | ||
| 59 | #define SIGCLD		SIGCHLD /* Old System V name */ | ||
| 60 | |||
| 61 | /* By default no real-time signals are supported. */ | ||
| 62 | #define __SIGRTMIN	32 | ||
| 63 | #define __SIGRTMAX	127 | ||
| 64 | |||
| 65 | #endif	/* <signal.h> included. */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabi/bits/socket-constants.h deleted-70| ... | @@ -1,70 +0,0 @@ | ||
| 1 | /* Socket constants which vary among Linux architectures. Version for MIPS. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SOCKET_H | ||
| 20 | # error "Never include <bits/socket-constants.h> directly; use <sys/socket.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #define SOL_SOCKET 65535 | ||
| 24 | #define SO_ACCEPTCONN 4105 | ||
| 25 | #define SO_BROADCAST 32 | ||
| 26 | #define SO_DONTROUTE 16 | ||
| 27 | #define SO_ERROR 4103 | ||
| 28 | #define SO_KEEPALIVE 8 | ||
| 29 | #define SO_LINGER 128 | ||
| 30 | #define SO_OOBINLINE 256 | ||
| 31 | #define SO_RCVBUF 4098 | ||
| 32 | #define SO_RCVLOWAT 4100 | ||
| 33 | #define SO_REUSEADDR 4 | ||
| 34 | #define SO_SNDBUF 4097 | ||
| 35 | #define SO_SNDLOWAT 4099 | ||
| 36 | #define SO_TYPE 4104 | ||
| 37 | |||
| 38 | #if __TIMESIZE == 64 | ||
| 39 | # define SO_RCVTIMEO 4102 | ||
| 40 | # define SO_SNDTIMEO 4101 | ||
| 41 | # define SO_TIMESTAMP 29 | ||
| 42 | # define SO_TIMESTAMPNS 35 | ||
| 43 | # define SO_TIMESTAMPING 37 | ||
| 44 | #else | ||
| 45 | # define SO_RCVTIMEO_OLD 4102 | ||
| 46 | # define SO_SNDTIMEO_OLD 4101 | ||
| 47 | # define SO_RCVTIMEO_NEW 66 | ||
| 48 | # define SO_SNDTIMEO_NEW 67 | ||
| 49 | |||
| 50 | # define SO_TIMESTAMP_OLD 29 | ||
| 51 | # define SO_TIMESTAMPNS_OLD 35 | ||
| 52 | # define SO_TIMESTAMPING_OLD 37 | ||
| 53 | # define SO_TIMESTAMP_NEW 63 | ||
| 54 | # define SO_TIMESTAMPNS_NEW 64 | ||
| 55 | # define SO_TIMESTAMPING_NEW 65 | ||
| 56 | |||
| 57 | # ifdef __USE_TIME64_REDIRECTS | ||
| 58 | # define SO_RCVTIMEO SO_RCVTIMEO_NEW | ||
| 59 | # define SO_SNDTIMEO SO_SNDTIMEO_NEW | ||
| 60 | # define SO_TIMESTAMP SO_TIMESTAMP_NEW | ||
| 61 | # define SO_TIMESTAMPNS SO_TIMESTAMPNS_NEW | ||
| 62 | # define SO_TIMESTAMPING SO_TIMESTAMPING_NEW | ||
| 63 | # else | ||
| 64 | # define SO_RCVTIMEO SO_RCVTIMEO_OLD | ||
| 65 | # define SO_SNDTIMEO SO_SNDTIMEO_OLD | ||
| 66 | # define SO_TIMESTAMP SO_TIMESTAMP_OLD | ||
| 67 | # define SO_TIMESTAMPNS SO_TIMESTAMPNS_OLD | ||
| 68 | # define SO_TIMESTAMPING SO_TIMESTAMPING_OLD | ||
| 69 | # endif | ||
| 70 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabi/bits/socket_type.h deleted-55| ... | @@ -1,55 +0,0 @@ | ||
| 1 | /* Define enum __socket_type for Linux/MIPS. | ||
| 2 | Copyright (C) 1991-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SOCKET_H | ||
| 20 | # error "Never include <bits/socket_type.h> directly; use <sys/socket.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Types of sockets. */ | ||
| 24 | enum __socket_type | ||
| 25 | { | ||
| 26 | SOCK_DGRAM = 1,		/* Connectionless, unreliable datagrams | ||
| 27 | 				 of fixed maximum length. */ | ||
| 28 | #define SOCK_DGRAM SOCK_DGRAM | ||
| 29 | SOCK_STREAM = 2,		/* Sequenced, reliable, connection-based | ||
| 30 | 				 byte streams. */ | ||
| 31 | #define SOCK_STREAM SOCK_STREAM | ||
| 32 | SOCK_RAW = 3,			/* Raw protocol interface. */ | ||
| 33 | #define SOCK_RAW SOCK_RAW | ||
| 34 | SOCK_RDM = 4,			/* Reliably-delivered messages. */ | ||
| 35 | #define SOCK_RDM SOCK_RDM | ||
| 36 | SOCK_SEQPACKET = 5,		/* Sequenced, reliable, connection-based, | ||
| 37 | 				 datagrams of fixed maximum length. */ | ||
| 38 | #define SOCK_SEQPACKET SOCK_SEQPACKET | ||
| 39 | SOCK_DCCP = 6, | ||
| 40 | #define SOCK_DCCP SOCK_DCCP	/* Datagram Congestion Control Protocol. */ | ||
| 41 | SOCK_PACKET = 10,		/* Linux specific way of getting packets | ||
| 42 | 				 at the dev level. For writing rarp and | ||
| 43 | 				 other similar things on the user level. */ | ||
| 44 | #define SOCK_PACKET SOCK_PACKET | ||
| 45 | |||
| 46 | /* Flags to be ORed into the type parameter of socket and socketpair and | ||
| 47 | used for the flags parameter of paccept. */ | ||
| 48 | |||
| 49 | SOCK_CLOEXEC = 02000000,	/* Atomically set close-on-exec flag for the | ||
| 50 | 				 new descriptor(s). */ | ||
| 51 | #define SOCK_CLOEXEC SOCK_CLOEXEC | ||
| 52 | SOCK_NONBLOCK = 00000200	/* Atomically mark descriptor(s) as | ||
| 53 | 				 non-blocking. */ | ||
| 54 | #define SOCK_NONBLOCK SOCK_NONBLOCK | ||
| 55 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabi/bits/statfs.h deleted-73| ... | @@ -1,73 +0,0 @@ | ||
| 1 | /* Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_STATFS_H | ||
| 19 | # error "Never include <bits/statfs.h> directly; use <sys/statfs.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | #include <bits/types.h> /* for __fsid_t and __fsblkcnt_t*/ | ||
| 23 | |||
| 24 | struct statfs | ||
| 25 | { | ||
| 26 | long int f_type; | ||
| 27 | #define f_fstyp f_type | ||
| 28 | long int f_bsize; | ||
| 29 | long int f_frsize;	/* Fragment size - unsupported */ | ||
| 30 | #ifndef __USE_FILE_OFFSET64 | ||
| 31 | __fsblkcnt_t f_blocks; | ||
| 32 | __fsblkcnt_t f_bfree; | ||
| 33 | __fsblkcnt_t f_files; | ||
| 34 | __fsblkcnt_t f_ffree; | ||
| 35 | __fsblkcnt_t f_bavail; | ||
| 36 | #else | ||
| 37 | __fsblkcnt64_t f_blocks; | ||
| 38 | __fsblkcnt64_t f_bfree; | ||
| 39 | __fsblkcnt64_t f_files; | ||
| 40 | __fsblkcnt64_t f_ffree; | ||
| 41 | __fsblkcnt64_t f_bavail; | ||
| 42 | #endif | ||
| 43 | |||
| 44 | 	/* Linux specials */ | ||
| 45 | __fsid_t f_fsid; | ||
| 46 | long int f_namelen; | ||
| 47 | long int f_flags; | ||
| 48 | long int f_spare[5]; | ||
| 49 | }; | ||
| 50 | |||
| 51 | #ifdef __USE_LARGEFILE64 | ||
| 52 | struct statfs64 | ||
| 53 | { | ||
| 54 | long int f_type; | ||
| 55 | #define f_fstyp f_type | ||
| 56 | long int f_bsize; | ||
| 57 | long int f_frsize;	/* Fragment size - unsupported */ | ||
| 58 | __fsblkcnt64_t f_blocks; | ||
| 59 | __fsblkcnt64_t f_bfree; | ||
| 60 | __fsblkcnt64_t f_files; | ||
| 61 | __fsblkcnt64_t f_ffree; | ||
| 62 | __fsblkcnt64_t f_bavail; | ||
| 63 | |||
| 64 | 	/* Linux specials */ | ||
| 65 | __fsid_t f_fsid; | ||
| 66 | long int f_namelen; | ||
| 67 | long int f_flags; | ||
| 68 | long int f_spare[5]; | ||
| 69 | }; | ||
| 70 | #endif | ||
| 71 | |||
| 72 | /* Tell code we have these members. */ | ||
| 73 | #define _STATFS_F_NAMELEN | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabi/bits/struct_mutex.h deleted-56| ... | @@ -1,56 +0,0 @@ | ||
| 1 | /* MIPS internal mutex struct definitions. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <http://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _THREAD_MUTEX_INTERNAL_H | ||
| 20 | #define _THREAD_MUTEX_INTERNAL_H 1 | ||
| 21 | |||
| 22 | struct __pthread_mutex_s | ||
| 23 | { | ||
| 24 | int __lock; | ||
| 25 | unsigned int __count; | ||
| 26 | int __owner; | ||
| 27 | #if _MIPS_SIM == _ABI64 | ||
| 28 | unsigned int __nusers; | ||
| 29 | #endif | ||
| 30 | /* KIND must stay at this position in the structure to maintain | ||
| 31 | binary compatibility with static initializers. */ | ||
| 32 | int __kind; | ||
| 33 | #if _MIPS_SIM == _ABI64 | ||
| 34 | int __spins; | ||
| 35 | __pthread_list_t __list; | ||
| 36 | # define __PTHREAD_MUTEX_HAVE_PREV 1 | ||
| 37 | #else | ||
| 38 | unsigned int __nusers; | ||
| 39 | __extension__ union | ||
| 40 | { | ||
| 41 | int __spins; | ||
| 42 | __pthread_slist_t __list; | ||
| 43 | }; | ||
| 44 | # define __PTHREAD_MUTEX_HAVE_PREV 0 | ||
| 45 | #endif | ||
| 46 | }; | ||
| 47 | |||
| 48 | #if _MIPS_SIM == _ABI64 | ||
| 49 | # define __PTHREAD_MUTEX_INITIALIZER(__kind) \ | ||
| 50 | 0, 0, 0, 0, __kind, 0, { 0, 0 } | ||
| 51 | #else | ||
| 52 | # define __PTHREAD_MUTEX_INITIALIZER(__kind) \ | ||
| 53 | 0, 0, 0, __kind, 0, { 0 } | ||
| 54 | #endif | ||
| 55 | |||
| 56 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabi/bits/struct_rwlock.h deleted-71| ... | @@ -1,71 +0,0 @@ | ||
| 1 | /* MIPS internal rwlock struct definitions. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <http://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _RWLOCK_INTERNAL_H | ||
| 20 | #define _RWLOCK_INTERNAL_H | ||
| 21 | |||
| 22 | struct __pthread_rwlock_arch_t | ||
| 23 | { | ||
| 24 | unsigned int __readers; | ||
| 25 | unsigned int __writers; | ||
| 26 | unsigned int __wrphase_futex; | ||
| 27 | unsigned int __writers_futex; | ||
| 28 | unsigned int __pad3; | ||
| 29 | unsigned int __pad4; | ||
| 30 | #if _MIPS_SIM == _ABI64 | ||
| 31 | int __cur_writer; | ||
| 32 | int __shared; | ||
| 33 | unsigned long int __pad1; | ||
| 34 | unsigned long int __pad2; | ||
| 35 | /* FLAGS must stay at this position in the structure to maintain | ||
| 36 | binary compatibility. */ | ||
| 37 | unsigned int __flags; | ||
| 38 | # else | ||
| 39 | # if __BYTE_ORDER == __BIG_ENDIAN | ||
| 40 | unsigned char __pad1; | ||
| 41 | unsigned char __pad2; | ||
| 42 | unsigned char __shared; | ||
| 43 | /* FLAGS must stay at this position in the structure to maintain | ||
| 44 | binary compatibility. */ | ||
| 45 | unsigned char __flags; | ||
| 46 | # else | ||
| 47 | /* FLAGS must stay at this position in the structure to maintain | ||
| 48 | binary compatibility. */ | ||
| 49 | unsigned char __flags; | ||
| 50 | unsigned char __shared; | ||
| 51 | unsigned char __pad1; | ||
| 52 | unsigned char __pad2; | ||
| 53 | # endif | ||
| 54 | int __cur_writer; | ||
| 55 | #endif | ||
| 56 | }; | ||
| 57 | |||
| 58 | #if _MIPS_SIM == _ABI64 | ||
| 59 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 60 | 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags | ||
| 61 | #else | ||
| 62 | # if __BYTE_ORDER == __BIG_ENDIAN | ||
| 63 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 64 | 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0 | ||
| 65 | # else | ||
| 66 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 67 | 0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0 | ||
| 68 | # endif | ||
| 69 | #endif | ||
| 70 | |||
| 71 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabi/bits/termios-c_cc.h deleted-43| ... | @@ -1,43 +0,0 @@ | ||
| 1 | /* termios c_cc symbolic constant definitions. Linux/mips version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-c_cc.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* c_cc characters */ | ||
| 24 | #define VINTR		0	/* Interrupt character [ISIG]. */ | ||
| 25 | #define VQUIT		1	/* Quit character [ISIG]. */ | ||
| 26 | #define VERASE		2	/* Erase character [ICANON]. */ | ||
| 27 | #define VKILL		3	/* Kill-line character [ICANON]. */ | ||
| 28 | #define VMIN		4	/* Minimum number of bytes read at once [!ICANON]. */ | ||
| 29 | #define VTIME		5	/* Time-out value (tenths of a second) [!ICANON]. */ | ||
| 30 | #define VEOL2		6	/* Second EOL character [ICANON]. */ | ||
| 31 | #define VSWTC		7 | ||
| 32 | #define VSWTCH		VSWTC | ||
| 33 | #define VSTART		8	/* Start (X-ON) character [IXON, IXOFF]. */ | ||
| 34 | #define VSTOP		9	/* Stop (X-OFF) character [IXON, IXOFF]. */ | ||
| 35 | #define VSUSP		10	/* Suspend character [ISIG]. */ | ||
| 36 | 				/* VDSUSP is not supported on Linux. */ | ||
| 37 | /* #define VDSUSP	11	/ * Delayed suspend character [ISIG]. */ | ||
| 38 | #define VREPRINT	12	/* Reprint-line character [ICANON]. */ | ||
| 39 | #define VDISCARD	13	/* Discard character [IEXTEN]. */ | ||
| 40 | #define VWERASE		14	/* Word-erase character [ICANON]. */ | ||
| 41 | #define VLNEXT		15	/* Literal-next character [IEXTEN]. */ | ||
| 42 | #define VEOF		16	/* End-of-file character [ICANON]. */ | ||
| 43 | #define VEOL		17	/* End-of-line character [ICANON]. */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabi/bits/termios-c_lflag.h deleted-46| ... | @@ -1,46 +0,0 @@ | ||
| 1 | /* termios local mode definitions. Linux/mips version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-c_lflag.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* c_lflag bits */ | ||
| 24 | #define ISIG	0000001		/* Enable signals. */ | ||
| 25 | #define ICANON	0000002		/* Do erase and kill processing. */ | ||
| 26 | #if defined __USE_MISC || (defined __USE_XOPEN && !defined __USE_XOPEN2K) | ||
| 27 | # define XCASE	0000004 | ||
| 28 | #endif | ||
| 29 | #define ECHO	0000010		/* Enable echo. */ | ||
| 30 | #define ECHOE	0000020		/* Visual erase for ERASE. */ | ||
| 31 | #define ECHOK	0000040		/* Echo NL after KILL. */ | ||
| 32 | #define ECHONL	0000100		/* Echo NL even if ECHO is off. */ | ||
| 33 | #define NOFLSH	0000200		/* Disable flush after interrupt. */ | ||
| 34 | #define IEXTEN	0000400		/* Enable DISCARD and LNEXT. */ | ||
| 35 | #ifdef __USE_MISC | ||
| 36 | # define ECHOCTL 0001000	/* Echo control characters as ^X. */ | ||
| 37 | # define ECHOPRT 0002000	/* Hardcopy visual erase. */ | ||
| 38 | # define ECHOKE	 0004000	/* Visual erase for KILL. */ | ||
| 39 | # define FLUSHO	0020000 | ||
| 40 | # define PENDIN	0040000		/* Retype pending input (state). */ | ||
| 41 | #endif | ||
| 42 | #define TOSTOP	0100000		/* Send SIGTTOU for background output. */ | ||
| 43 | #define ITOSTOP	TOSTOP | ||
| 44 | #ifdef __USE_MISC | ||
| 45 | # define EXTPROC 0200000 | ||
| 46 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabi/bits/termios-struct.h deleted-34| ... | @@ -1,34 +0,0 @@ | ||
| 1 | /* struct termios definition. Linux/mips version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-struct.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #define NCCS 32 | ||
| 24 | struct termios | ||
| 25 | { | ||
| 26 | tcflag_t c_iflag;		/* input mode flags */ | ||
| 27 | tcflag_t c_oflag;		/* output mode flags */ | ||
| 28 | tcflag_t c_cflag;		/* control mode flags */ | ||
| 29 | tcflag_t c_lflag;		/* local mode flags */ | ||
| 30 | cc_t c_line;		/* line discipline */ | ||
| 31 | cc_t c_cc[NCCS];		/* control characters */ | ||
| 32 | #define _HAVE_STRUCT_TERMIOS_C_ISPEED 0 | ||
| 33 | #define _HAVE_STRUCT_TERMIOS_C_OSPEED 0 | ||
| 34 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabi/bits/termios-tcflow.h deleted-26| ... | @@ -1,26 +0,0 @@ | ||
| 1 | /* termios local mode definitions. Linux/mips version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-tcflow.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* tcsetattr uses these */ | ||
| 24 | #define	TCSANOW		0x540e	/* Same as TCSETS; change immediately. */ | ||
| 25 | #define	TCSADRAIN	0x540f	/* Same as TCSETSW; change when pending output is written. */ | ||
| 26 | #define	TCSAFLUSH	0x5410	/* Same as TCSETSF; flush pending input before changing. */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabi/bits/timerfd.h deleted-29| ... | @@ -1,29 +0,0 @@ | ||
| 1 | /* Copyright (C) 2008-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_SYS_TIMERFD_H | ||
| 19 | # error "Never use <bits/timerfd.h> directly; include <sys/timerfd.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Bits to be set in the FLAGS parameter of `timerfd_create'. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | TFD_CLOEXEC = 02000000, | ||
| 26 | #define TFD_CLOEXEC TFD_CLOEXEC | ||
| 27 | TFD_NONBLOCK = 00000200 | ||
| 28 | #define TFD_NONBLOCK TFD_NONBLOCK | ||
| 29 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabi/bits/types/stack_t.h deleted-33| ... | @@ -1,33 +0,0 @@ | ||
| 1 | /* Define stack_t. MIPS Linux version. | ||
| 2 | Copyright (C) 1998-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef __stack_t_defined | ||
| 20 | #define __stack_t_defined 1 | ||
| 21 | |||
| 22 | #define __need_size_t | ||
| 23 | #include <stddef.h> | ||
| 24 | |||
| 25 | /* Structure describing a signal stack. */ | ||
| 26 | typedef struct | ||
| 27 | { | ||
| 28 | void *ss_sp; | ||
| 29 | size_t ss_size; | ||
| 30 | int ss_flags; | ||
| 31 | } stack_t; | ||
| 32 | |||
| 33 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabi/bits/types/struct_msqid_ds.h deleted-62| ... | @@ -1,62 +0,0 @@ | ||
| 1 | /* Linux/MIPS implementation of the SysV message struct msqid_ds. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_MSG_H | ||
| 20 | # error "Never use <bits/msq.h> directly; include <sys/msg.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <bits/types/time_t.h> | ||
| 24 | |||
| 25 | /* Structure of record for one message inside the kernel. | ||
| 26 | The type `struct msg' is opaque. */ | ||
| 27 | struct msqid_ds | ||
| 28 | { | ||
| 29 | #ifdef __USE_TIME64_REDIRECTS | ||
| 30 | # include <bits/types/struct_msqid64_ds_helper.h> | ||
| 31 | #else | ||
| 32 | struct ipc_perm msg_perm;	/* structure describing operation permission */ | ||
| 33 | # if __TIMESIZE == 32 | ||
| 34 | # ifdef __MIPSEL__ | ||
| 35 | __time_t msg_stime;		/* time of last msgsnd command */ | ||
| 36 | unsigned long int __msg_stime_high; | ||
| 37 | __time_t msg_rtime;		/* time of last msgsnd command */ | ||
| 38 | unsigned long int __msg_rtime_high; | ||
| 39 | __time_t msg_ctime;		/* time of last change */ | ||
| 40 | unsigned long int __msg_ctime_high; | ||
| 41 | # else | ||
| 42 | unsigned long int __msg_stime_high; | ||
| 43 | __time_t msg_stime;		/* time of last msgsnd command */ | ||
| 44 | unsigned long int __msg_rtime_high; | ||
| 45 | __time_t msg_rtime;		/* time of last msgsnd command */ | ||
| 46 | unsigned long int __msg_ctime_high; | ||
| 47 | __time_t msg_ctime;		/* time of last change */ | ||
| 48 | # endif | ||
| 49 | # else | ||
| 50 | __time_t msg_stime;		/* time of last msgsnd command */ | ||
| 51 | __time_t msg_rtime;		/* time of last msgsnd command */ | ||
| 52 | __time_t msg_ctime;		/* time of last change */ | ||
| 53 | # endif | ||
| 54 | __syscall_ulong_t __msg_cbytes; /* current number of bytes on queue */ | ||
| 55 | msgqnum_t msg_qnum;		/* number of messages currently on queue */ | ||
| 56 | msglen_t msg_qbytes;		/* max number of bytes allowed on queue */ | ||
| 57 | __pid_t msg_lspid;		/* pid of last msgsnd() */ | ||
| 58 | __pid_t msg_lrpid;		/* pid of last msgrcv() */ | ||
| 59 | __syscall_ulong_t __glibc_reserved4; | ||
| 60 | __syscall_ulong_t __glibc_reserved5; | ||
| 61 | #endif | ||
| 62 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabi/bits/types/struct_semid_ds.h deleted-36| ... | @@ -1,36 +0,0 @@ | ||
| 1 | /* MIPS implementation of the semaphore struct semid_ds | ||
| 2 | Copyright (C) 1995-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SEM_H | ||
| 20 | # error "Never include <bits/types/struct_semid_ds.h> directly; use <sys/sem.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Data structure describing a set of semaphores. */ | ||
| 24 | struct semid_ds | ||
| 25 | { | ||
| 26 | #ifdef __USE_TIME64_REDIRECTS | ||
| 27 | # include <bits/types/struct_semid64_ds_helper.h> | ||
| 28 | #else | ||
| 29 | struct ipc_perm sem_perm;		/* operation permission struct */ | ||
| 30 | __time_t sem_otime;	/* last semop() time */ | ||
| 31 | __time_t sem_ctime;	/* last time changed by semctl() */ | ||
| 32 | __syscall_ulong_t sem_nsems;		/* number of semaphores in set */ | ||
| 33 | __syscall_ulong_t __sem_otime_high; | ||
| 34 | __syscall_ulong_t __sem_ctime_high; | ||
| 35 | #endif | ||
| 36 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabi/bits/types/struct_shmid_ds.h deleted-53| ... | @@ -1,53 +0,0 @@ | ||
| 1 | /* Linux/MIPS implementation of the shared memory struct shmid_ds. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SHM_H | ||
| 20 | # error "Never include <bits/types/struct_shmid_ds.h> directly; use <sys/shm.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Data structure describing a shared memory segment. */ | ||
| 24 | struct shmid_ds | ||
| 25 | { | ||
| 26 | #ifdef __USE_TIME64_REDIRECTS | ||
| 27 | # include <bits/types/struct_shmid64_ds_helper.h> | ||
| 28 | #else | ||
| 29 | struct ipc_perm shm_perm;		/* operation permission struct */ | ||
| 30 | size_t shm_segsz;			/* size of segment in bytes */ | ||
| 31 | # if __TIMESIZE == 32 | ||
| 32 | __time_t shm_atime;			/* time of last shmat() */ | ||
| 33 | __time_t shm_dtime;			/* time of last shmdt() */ | ||
| 34 | __time_t shm_ctime;			/* time of last change by shmctl() */ | ||
| 35 | # else | ||
| 36 | __time_t shm_atime;			/* time of last shmat() */ | ||
| 37 | __time_t shm_dtime;			/* time of last shmdt() */ | ||
| 38 | __time_t shm_ctime;			/* time of last change by shmctl() */ | ||
| 39 | # endif | ||
| 40 | __pid_t shm_cpid;			/* pid of creator */ | ||
| 41 | __pid_t shm_lpid;			/* pid of last shmop */ | ||
| 42 | shmatt_t shm_nattch;		/* number of current attaches */ | ||
| 43 | # if __TIMESIZE == 32 | ||
| 44 | unsigned short int __shm_atime_high; | ||
| 45 | unsigned short int __shm_dtime_high; | ||
| 46 | unsigned short int __shm_ctime_high; | ||
| 47 | unsigned short int __glibc_reserved4; | ||
| 48 | # else | ||
| 49 | __syscall_ulong_t __glibc_reserved5; | ||
| 50 | __syscall_ulong_t __glibc_reserved6; | ||
| 51 | # endif | ||
| 52 | #endif | ||
| 53 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabi/bits/typesizes.h deleted-95| ... | @@ -1,95 +0,0 @@ | ||
| 1 | /* bits/typesizes.h -- underlying types for *_t. MIPS version. | ||
| 2 | Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_TYPES_H | ||
| 20 | # error "Never include <bits/typesizes.h> directly; use <sys/types.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef	_BITS_TYPESIZES_H | ||
| 24 | #define	_BITS_TYPESIZES_H	1 | ||
| 25 | |||
| 26 | /* See <bits/types.h> for the meaning of these macros. This file exists so | ||
| 27 | that <bits/types.h> need not vary across different GNU platforms. */ | ||
| 28 | |||
| 29 | #define __DEV_T_TYPE		__UQUAD_TYPE | ||
| 30 | #define __UID_T_TYPE		__U32_TYPE | ||
| 31 | #define __GID_T_TYPE		__U32_TYPE | ||
| 32 | #define __INO_T_TYPE		__ULONGWORD_TYPE | ||
| 33 | #define __INO64_T_TYPE		__UQUAD_TYPE | ||
| 34 | #define __MODE_T_TYPE		__U32_TYPE | ||
| 35 | #define __NLINK_T_TYPE		__UWORD_TYPE | ||
| 36 | #define __OFF_T_TYPE		__SLONGWORD_TYPE | ||
| 37 | #define __OFF64_T_TYPE		__SQUAD_TYPE | ||
| 38 | #define __PID_T_TYPE		__S32_TYPE | ||
| 39 | #define __RLIM_T_TYPE		__ULONGWORD_TYPE | ||
| 40 | #define __RLIM64_T_TYPE		__UQUAD_TYPE | ||
| 41 | #define	__BLKCNT_T_TYPE		__SLONGWORD_TYPE | ||
| 42 | #define	__BLKCNT64_T_TYPE	__SQUAD_TYPE | ||
| 43 | #define	__FSBLKCNT_T_TYPE	__ULONGWORD_TYPE | ||
| 44 | #define	__FSBLKCNT64_T_TYPE	__UQUAD_TYPE | ||
| 45 | #define	__FSFILCNT_T_TYPE	__ULONGWORD_TYPE | ||
| 46 | #define	__FSFILCNT64_T_TYPE	__UQUAD_TYPE | ||
| 47 | #define	__FSWORD_T_TYPE		__SWORD_TYPE | ||
| 48 | #define	__ID_T_TYPE		__U32_TYPE | ||
| 49 | #define __CLOCK_T_TYPE		__SLONGWORD_TYPE | ||
| 50 | #define __TIME_T_TYPE		__SLONGWORD_TYPE | ||
| 51 | #define __USECONDS_T_TYPE	__U32_TYPE | ||
| 52 | #define __SUSECONDS_T_TYPE	__SLONGWORD_TYPE | ||
| 53 | #define __SUSECONDS64_T_TYPE	__SQUAD_TYPE | ||
| 54 | #define __DADDR_T_TYPE		__S32_TYPE | ||
| 55 | #define __KEY_T_TYPE		__S32_TYPE | ||
| 56 | #define __CLOCKID_T_TYPE	__S32_TYPE | ||
| 57 | #define __TIMER_T_TYPE		void * | ||
| 58 | #define __BLKSIZE_T_TYPE	__SLONGWORD_TYPE | ||
| 59 | #define __FSID_T_TYPE		struct { int __val[2]; } | ||
| 60 | #define __SSIZE_T_TYPE		__SWORD_TYPE | ||
| 61 | #define __SYSCALL_SLONG_TYPE	__SLONGWORD_TYPE | ||
| 62 | #define __SYSCALL_ULONG_TYPE	__ULONGWORD_TYPE | ||
| 63 | #define __CPU_MASK_TYPE 	__ULONGWORD_TYPE | ||
| 64 | |||
| 65 | #ifdef __LP64__ | ||
| 66 | /* Tell the libc code that off_t and off64_t are actually the same type | ||
| 67 | for all ABI purposes, even if possibly expressed as different base types | ||
| 68 | for C type-checking purposes. */ | ||
| 69 | # define __OFF_T_MATCHES_OFF64_T	1 | ||
| 70 | |||
| 71 | /* Same for ino_t and ino64_t. */ | ||
| 72 | # define __INO_T_MATCHES_INO64_T	1 | ||
| 73 | |||
| 74 | /* And for rlim_t and rlim64_t. */ | ||
| 75 | # define __RLIM_T_MATCHES_RLIM64_T	1 | ||
| 76 | |||
| 77 | /* And for fsblkcnt_t, fsblkcnt64_t, fsfilcnt_t and fsfilcnt64_t. */ | ||
| 78 | # define __STATFS_MATCHES_STATFS64 1 | ||
| 79 | |||
| 80 | /* And for getitimer, setitimer and rusage */ | ||
| 81 | # define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 1 | ||
| 82 | #else | ||
| 83 | # define __RLIM_T_MATCHES_RLIM64_T	0 | ||
| 84 | |||
| 85 | # define __STATFS_MATCHES_STATFS64 0 | ||
| 86 | |||
| 87 | /* And for getitimer, setitimer and rusage */ | ||
| 88 | # define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 0 | ||
| 89 | #endif | ||
| 90 | |||
| 91 | /* Number of descriptors that can fit in an `fd_set'. */ | ||
| 92 | #define	__FD_SETSIZE		1024 | ||
| 93 | |||
| 94 | |||
| 95 | #endif /* bits/typesizes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabi/ieee754.h deleted-326| ... | @@ -1,326 +0,0 @@ | ||
| 1 | /* Copyright (C) 1992-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _IEEE754_H | ||
| 19 | #define _IEEE754_H 1 | ||
| 20 | |||
| 21 | #include <features.h> | ||
| 22 | |||
| 23 | #include <bits/endian.h> | ||
| 24 | |||
| 25 | #ifndef __LDBL_MANT_DIG__ | ||
| 26 | # include <float.h> | ||
| 27 | # define __LDBL_MANT_DIG__ LDBL_MANT_DIG | ||
| 28 | #endif | ||
| 29 | |||
| 30 | __BEGIN_DECLS | ||
| 31 | |||
| 32 | union ieee754_float | ||
| 33 | { | ||
| 34 | float f; | ||
| 35 | |||
| 36 | /* This is the IEEE 754 single-precision format. */ | ||
| 37 | struct | ||
| 38 | { | ||
| 39 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 40 | 	unsigned int negative:1; | ||
| 41 | 	unsigned int exponent:8; | ||
| 42 | 	unsigned int mantissa:23; | ||
| 43 | #endif				/* Big endian. */ | ||
| 44 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 45 | 	unsigned int mantissa:23; | ||
| 46 | 	unsigned int exponent:8; | ||
| 47 | 	unsigned int negative:1; | ||
| 48 | #endif				/* Little endian. */ | ||
| 49 | } ieee; | ||
| 50 | |||
| 51 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 52 | struct | ||
| 53 | { | ||
| 54 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 55 | 	unsigned int negative:1; | ||
| 56 | 	unsigned int exponent:8; | ||
| 57 | 	unsigned int quiet_nan:1; | ||
| 58 | 	unsigned int mantissa:22; | ||
| 59 | #endif				/* Big endian. */ | ||
| 60 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 61 | 	unsigned int mantissa:22; | ||
| 62 | 	unsigned int quiet_nan:1; | ||
| 63 | 	unsigned int exponent:8; | ||
| 64 | 	unsigned int negative:1; | ||
| 65 | #endif				/* Little endian. */ | ||
| 66 | } ieee_nan; | ||
| 67 | }; | ||
| 68 | |||
| 69 | #define IEEE754_FLOAT_BIAS	0x7f /* Added to exponent. */ | ||
| 70 | |||
| 71 | |||
| 72 | union ieee754_double | ||
| 73 | { | ||
| 74 | double d; | ||
| 75 | |||
| 76 | /* This is the IEEE 754 double-precision format. */ | ||
| 77 | struct | ||
| 78 | { | ||
| 79 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 80 | 	unsigned int negative:1; | ||
| 81 | 	unsigned int exponent:11; | ||
| 82 | 	/* Together these comprise the mantissa. */ | ||
| 83 | 	unsigned int mantissa0:20; | ||
| 84 | 	unsigned int mantissa1:32; | ||
| 85 | #endif				/* Big endian. */ | ||
| 86 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 87 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 88 | 	unsigned int mantissa0:20; | ||
| 89 | 	unsigned int exponent:11; | ||
| 90 | 	unsigned int negative:1; | ||
| 91 | 	unsigned int mantissa1:32; | ||
| 92 | # else | ||
| 93 | 	/* Together these comprise the mantissa. */ | ||
| 94 | 	unsigned int mantissa1:32; | ||
| 95 | 	unsigned int mantissa0:20; | ||
| 96 | 	unsigned int exponent:11; | ||
| 97 | 	unsigned int negative:1; | ||
| 98 | # endif | ||
| 99 | #endif				/* Little endian. */ | ||
| 100 | } ieee; | ||
| 101 | |||
| 102 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 103 | struct | ||
| 104 | { | ||
| 105 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 106 | 	unsigned int negative:1; | ||
| 107 | 	unsigned int exponent:11; | ||
| 108 | 	unsigned int quiet_nan:1; | ||
| 109 | 	/* Together these comprise the mantissa. */ | ||
| 110 | 	unsigned int mantissa0:19; | ||
| 111 | 	unsigned int mantissa1:32; | ||
| 112 | #else | ||
| 113 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 114 | 	unsigned int mantissa0:19; | ||
| 115 | 	unsigned int quiet_nan:1; | ||
| 116 | 	unsigned int exponent:11; | ||
| 117 | 	unsigned int negative:1; | ||
| 118 | 	unsigned int mantissa1:32; | ||
| 119 | # else | ||
| 120 | 	/* Together these comprise the mantissa. */ | ||
| 121 | 	unsigned int mantissa1:32; | ||
| 122 | 	unsigned int mantissa0:19; | ||
| 123 | 	unsigned int quiet_nan:1; | ||
| 124 | 	unsigned int exponent:11; | ||
| 125 | 	unsigned int negative:1; | ||
| 126 | # endif | ||
| 127 | #endif | ||
| 128 | } ieee_nan; | ||
| 129 | }; | ||
| 130 | |||
| 131 | #define IEEE754_DOUBLE_BIAS	0x3ff /* Added to exponent. */ | ||
| 132 | |||
| 133 | #if __LDBL_MANT_DIG__ == 113 | ||
| 134 | |||
| 135 | union ieee854_long_double | ||
| 136 | { | ||
| 137 | long double d; | ||
| 138 | |||
| 139 | /* This is the IEEE 854 quad-precision format. */ | ||
| 140 | struct | ||
| 141 | { | ||
| 142 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 143 | 	unsigned int negative:1; | ||
| 144 | 	unsigned int exponent:15; | ||
| 145 | 	/* Together these comprise the mantissa. */ | ||
| 146 | 	unsigned int mantissa0:16; | ||
| 147 | 	unsigned int mantissa1:32; | ||
| 148 | 	unsigned int mantissa2:32; | ||
| 149 | 	unsigned int mantissa3:32; | ||
| 150 | #endif				/* Big endian. */ | ||
| 151 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 152 | 	/* Together these comprise the mantissa. */ | ||
| 153 | 	unsigned int mantissa3:32; | ||
| 154 | 	unsigned int mantissa2:32; | ||
| 155 | 	unsigned int mantissa1:32; | ||
| 156 | 	unsigned int mantissa0:16; | ||
| 157 | 	unsigned int exponent:15; | ||
| 158 | 	unsigned int negative:1; | ||
| 159 | #endif				/* Little endian. */ | ||
| 160 | } ieee; | ||
| 161 | |||
| 162 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 163 | struct | ||
| 164 | { | ||
| 165 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 166 | 	unsigned int negative:1; | ||
| 167 | 	unsigned int exponent:15; | ||
| 168 | 	unsigned int quiet_nan:1; | ||
| 169 | 	/* Together these comprise the mantissa. */ | ||
| 170 | 	unsigned int mantissa0:15; | ||
| 171 | 	unsigned int mantissa1:32; | ||
| 172 | 	unsigned int mantissa2:32; | ||
| 173 | 	unsigned int mantissa3:32; | ||
| 174 | #endif				/* Big endian. */ | ||
| 175 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 176 | 	/* Together these comprise the mantissa. */ | ||
| 177 | 	unsigned int mantissa3:32; | ||
| 178 | 	unsigned int mantissa2:32; | ||
| 179 | 	unsigned int mantissa1:32; | ||
| 180 | 	unsigned int mantissa0:15; | ||
| 181 | 	unsigned int quiet_nan:1; | ||
| 182 | 	unsigned int exponent:15; | ||
| 183 | 	unsigned int negative:1; | ||
| 184 | #endif				/* Little endian. */ | ||
| 185 | } ieee_nan; | ||
| 186 | }; | ||
| 187 | |||
| 188 | #define IEEE854_LONG_DOUBLE_BIAS 0x3fff /* Added to exponent. */ | ||
| 189 | |||
| 190 | #elif __LDBL_MANT_DIG__ == 64 | ||
| 191 | |||
| 192 | union ieee854_long_double | ||
| 193 | { | ||
| 194 | long double d; | ||
| 195 | |||
| 196 | /* This is the IEEE 854 double-extended-precision format. */ | ||
| 197 | struct | ||
| 198 | { | ||
| 199 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 200 | 	unsigned int negative:1; | ||
| 201 | 	unsigned int exponent:15; | ||
| 202 | 	unsigned int empty:16; | ||
| 203 | 	unsigned int mantissa0:32; | ||
| 204 | 	unsigned int mantissa1:32; | ||
| 205 | #endif | ||
| 206 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 207 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 208 | 	unsigned int exponent:15; | ||
| 209 | 	unsigned int negative:1; | ||
| 210 | 	unsigned int empty:16; | ||
| 211 | 	unsigned int mantissa0:32; | ||
| 212 | 	unsigned int mantissa1:32; | ||
| 213 | # else | ||
| 214 | 	unsigned int mantissa1:32; | ||
| 215 | 	unsigned int mantissa0:32; | ||
| 216 | 	unsigned int exponent:15; | ||
| 217 | 	unsigned int negative:1; | ||
| 218 | 	unsigned int empty:16; | ||
| 219 | # endif | ||
| 220 | #endif | ||
| 221 | } ieee; | ||
| 222 | |||
| 223 | /* This is for NaNs in the IEEE 854 double-extended-precision format. */ | ||
| 224 | struct | ||
| 225 | { | ||
| 226 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 227 | 	unsigned int negative:1; | ||
| 228 | 	unsigned int exponent:15; | ||
| 229 | 	unsigned int empty:16; | ||
| 230 | 	unsigned int one:1; | ||
| 231 | 	unsigned int quiet_nan:1; | ||
| 232 | 	unsigned int mantissa0:30; | ||
| 233 | 	unsigned int mantissa1:32; | ||
| 234 | #endif | ||
| 235 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 236 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 237 | 	unsigned int exponent:15; | ||
| 238 | 	unsigned int negative:1; | ||
| 239 | 	unsigned int empty:16; | ||
| 240 | 	unsigned int mantissa0:30; | ||
| 241 | 	unsigned int quiet_nan:1; | ||
| 242 | 	unsigned int one:1; | ||
| 243 | 	unsigned int mantissa1:32; | ||
| 244 | # else | ||
| 245 | 	unsigned int mantissa1:32; | ||
| 246 | 	unsigned int mantissa0:30; | ||
| 247 | 	unsigned int quiet_nan:1; | ||
| 248 | 	unsigned int one:1; | ||
| 249 | 	unsigned int exponent:15; | ||
| 250 | 	unsigned int negative:1; | ||
| 251 | 	unsigned int empty:16; | ||
| 252 | # endif | ||
| 253 | #endif | ||
| 254 | } ieee_nan; | ||
| 255 | }; | ||
| 256 | |||
| 257 | #define IEEE854_LONG_DOUBLE_BIAS 0x3fff | ||
| 258 | |||
| 259 | #elif __LDBL_MANT_DIG__ == 53 | ||
| 260 | |||
| 261 | union ieee854_long_double | ||
| 262 | { | ||
| 263 | long double d; | ||
| 264 | |||
| 265 | /* This is the IEEE 754 double-precision format. */ | ||
| 266 | struct | ||
| 267 | { | ||
| 268 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 269 | 	unsigned int negative:1; | ||
| 270 | 	unsigned int exponent:11; | ||
| 271 | 	/* Together these comprise the mantissa. */ | ||
| 272 | 	unsigned int mantissa0:20; | ||
| 273 | 	unsigned int mantissa1:32; | ||
| 274 | #endif				/* Big endian. */ | ||
| 275 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 276 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 277 | 	unsigned int mantissa0:20; | ||
| 278 | 	unsigned int exponent:11; | ||
| 279 | 	unsigned int negative:1; | ||
| 280 | 	unsigned int mantissa1:32; | ||
| 281 | # else | ||
| 282 | 	/* Together these comprise the mantissa. */ | ||
| 283 | 	unsigned int mantissa1:32; | ||
| 284 | 	unsigned int mantissa0:20; | ||
| 285 | 	unsigned int exponent:11; | ||
| 286 | 	unsigned int negative:1; | ||
| 287 | # endif | ||
| 288 | #endif				/* Little endian. */ | ||
| 289 | } ieee; | ||
| 290 | |||
| 291 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 292 | struct | ||
| 293 | { | ||
| 294 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 295 | 	unsigned int negative:1; | ||
| 296 | 	unsigned int exponent:11; | ||
| 297 | 	unsigned int quiet_nan:1; | ||
| 298 | 	/* Together these comprise the mantissa. */ | ||
| 299 | 	unsigned int mantissa0:19; | ||
| 300 | 	unsigned int mantissa1:32; | ||
| 301 | #else | ||
| 302 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 303 | 	unsigned int mantissa0:19; | ||
| 304 | 	unsigned int quiet_nan:1; | ||
| 305 | 	unsigned int exponent:11; | ||
| 306 | 	unsigned int negative:1; | ||
| 307 | 	unsigned int mantissa1:32; | ||
| 308 | # else | ||
| 309 | 	/* Together these comprise the mantissa. */ | ||
| 310 | 	unsigned int mantissa1:32; | ||
| 311 | 	unsigned int mantissa0:19; | ||
| 312 | 	unsigned int quiet_nan:1; | ||
| 313 | 	unsigned int exponent:11; | ||
| 314 | 	unsigned int negative:1; | ||
| 315 | # endif | ||
| 316 | #endif | ||
| 317 | } ieee_nan; | ||
| 318 | }; | ||
| 319 | |||
| 320 | #define IEEE854_LONG_DOUBLE_BIAS	0x3ff /* Added to exponent. */ | ||
| 321 | |||
| 322 | #endif /* __LDBL_MANT_DIG__ == 53 */ | ||
| 323 | |||
| 324 | __END_DECLS | ||
| 325 | |||
| 326 | #endif /* ieee754.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabihf/bits/dlfcn.h deleted-64| ... | @@ -1,64 +0,0 @@ | ||
| 1 | /* System dependent definitions for run-time dynamic loading. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _DLFCN_H | ||
| 20 | # error "Never use <bits/dlfcn.h> directly; include <dlfcn.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* The MODE argument to `dlopen' contains one of the following: */ | ||
| 24 | #define RTLD_LAZY	0x0001	/* Lazy function call binding. */ | ||
| 25 | #define RTLD_NOW	0x0002	/* Immediate function call binding. */ | ||
| 26 | #define RTLD_BINDING_MASK 0x3	/* Mask of binding time value. */ | ||
| 27 | #define RTLD_NOLOAD	0x00008	/* Do not load the object. */ | ||
| 28 | #define RTLD_DEEPBIND	0x00010	/* Use deep binding. */ | ||
| 29 | |||
| 30 | /* If the following bit is set in the MODE argument to `dlopen', | ||
| 31 | the symbols of the loaded object and its dependencies are made | ||
| 32 | visible as if the object were linked directly into the program. */ | ||
| 33 | #define RTLD_GLOBAL	0x0004 | ||
| 34 | |||
| 35 | /* Unix98 demands the following flag which is the inverse to RTLD_GLOBAL. | ||
| 36 | The implementation does this by default and so we can define the | ||
| 37 | value to zero. */ | ||
| 38 | #define RTLD_LOCAL 0 | ||
| 39 | |||
| 40 | /* Do not delete object when closed. */ | ||
| 41 | #define RTLD_NODELETE	0x01000 | ||
| 42 | |||
| 43 | #ifdef __USE_GNU | ||
| 44 | /* To support profiling of shared objects it is a good idea to call | ||
| 45 | the function found using `dlsym' using the following macro since | ||
| 46 | these calls do not use the PLT. But this would mean the dynamic | ||
| 47 | loader has no chance to find out when the function is called. The | ||
| 48 | macro applies the necessary magic so that profiling is possible. | ||
| 49 | Rewrite | ||
| 50 | 	foo = (*fctp) (arg1, arg2); | ||
| 51 | into | ||
| 52 | foo = DL_CALL_FCT (fctp, (arg1, arg2)); | ||
| 53 | */ | ||
| 54 | # define DL_CALL_FCT(fctp, args) \ | ||
| 55 | (_dl_mcount_wrapper_check ((void *) (fctp)), (*(fctp)) args) | ||
| 56 | |||
| 57 | __BEGIN_DECLS | ||
| 58 | |||
| 59 | /* This function calls the profiling functions. */ | ||
| 60 | extern void _dl_mcount_wrapper_check (void *__selfpc) __THROW; | ||
| 61 | |||
| 62 | __END_DECLS | ||
| 63 | |||
| 64 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabihf/bits/errno.h deleted-52| ... | @@ -1,52 +0,0 @@ | ||
| 1 | /* Error constants. MIPS/Linux specific version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_ERRNO_H | ||
| 20 | |||
| 21 | #if !defined _ERRNO_H | ||
| 22 | # error "Never include <bits/errno.h> directly; use <errno.h> instead." | ||
| 23 | #endif | ||
| 24 | |||
| 25 | # include <linux/errno.h> | ||
| 26 | |||
| 27 | /* Older Linux headers do not define these constants. */ | ||
| 28 | # ifndef ENOTSUP | ||
| 29 | # define ENOTSUP		EOPNOTSUPP | ||
| 30 | # endif | ||
| 31 | |||
| 32 | # ifndef ECANCELED | ||
| 33 | # define ECANCELED		158 | ||
| 34 | # endif | ||
| 35 | |||
| 36 | # ifndef EOWNERDEAD | ||
| 37 | # define EOWNERDEAD		165 | ||
| 38 | # endif | ||
| 39 | |||
| 40 | # ifndef ENOTRECOVERABLE | ||
| 41 | # define ENOTRECOVERABLE	166 | ||
| 42 | # endif | ||
| 43 | |||
| 44 | # ifndef ERFKILL | ||
| 45 | # define ERFKILL		167 | ||
| 46 | # endif | ||
| 47 | |||
| 48 | # ifndef EHWPOISON | ||
| 49 | # define EHWPOISON		168 | ||
| 50 | # endif | ||
| 51 | |||
| 52 | #endif /* bits/errno.h. */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabihf/bits/eventfd.h deleted-31| ... | @@ -1,31 +0,0 @@ | ||
| 1 | /* Copyright (C) 2007-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_SYS_EVENTFD_H | ||
| 19 | # error "Never use <bits/eventfd.h> directly; include <sys/eventfd.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Flags for eventfd. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | EFD_SEMAPHORE = 00000001, | ||
| 26 | #define EFD_SEMAPHORE EFD_SEMAPHORE | ||
| 27 | EFD_CLOEXEC = 02000000, | ||
| 28 | #define EFD_CLOEXEC EFD_CLOEXEC | ||
| 29 | EFD_NONBLOCK = 00000200 | ||
| 30 | #define EFD_NONBLOCK EFD_NONBLOCK | ||
| 31 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabihf/bits/floatn.h deleted-97| ... | @@ -1,97 +0,0 @@ | ||
| 1 | /* Macros to control TS 18661-3 glibc features on MIPS platforms. | ||
| 2 | Copyright (C) 2017-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_FLOATN_H | ||
| 20 | #define _BITS_FLOATN_H | ||
| 21 | |||
| 22 | #include <features.h> | ||
| 23 | #include <bits/long-double.h> | ||
| 24 | |||
| 25 | /* Defined to 1 if the current compiler invocation provides a | ||
| 26 | floating-point type with the IEEE 754 binary128 format, and this | ||
| 27 | glibc includes corresponding *f128 interfaces for it. */ | ||
| 28 | #ifndef __NO_LONG_DOUBLE_MATH | ||
| 29 | # define __HAVE_FLOAT128 1 | ||
| 30 | #else | ||
| 31 | /* glibc does not support _Float128 for platforms where long double is | ||
| 32 | normally binary128 when building with long double as binary64. | ||
| 33 | GCC's default for supported scalar modes does not support it either | ||
| 34 | in that case. */ | ||
| 35 | # define __HAVE_FLOAT128 0 | ||
| 36 | #endif | ||
| 37 | |||
| 38 | /* Defined to 1 if __HAVE_FLOAT128 is 1 and the type is ABI-distinct | ||
| 39 | from the default float, double and long double types in this glibc. */ | ||
| 40 | #define __HAVE_DISTINCT_FLOAT128 0 | ||
| 41 | |||
| 42 | /* Defined to 1 if the current compiler invocation provides a | ||
| 43 | floating-point type with the right format for _Float64x, and this | ||
| 44 | glibc includes corresponding *f64x interfaces for it. */ | ||
| 45 | #define __HAVE_FLOAT64X __HAVE_FLOAT128 | ||
| 46 | |||
| 47 | /* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format | ||
| 48 | of long double. Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has | ||
| 49 | the format of _Float128, which must be different from that of long | ||
| 50 | double. */ | ||
| 51 | #define __HAVE_FLOAT64X_LONG_DOUBLE __HAVE_FLOAT128 | ||
| 52 | |||
| 53 | #ifndef __ASSEMBLER__ | ||
| 54 | |||
| 55 | /* Defined to concatenate the literal suffix to be used with _Float128 | ||
| 56 | types, if __HAVE_FLOAT128 is 1. */ | ||
| 57 | # if __HAVE_FLOAT128 | ||
| 58 | # if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) | ||
| 59 | /* The literal suffix f128 exists only since GCC 7.0. */ | ||
| 60 | # define __f128(x) x##l | ||
| 61 | # else | ||
| 62 | # define __f128(x) x##f128 | ||
| 63 | # endif | ||
| 64 | # endif | ||
| 65 | |||
| 66 | /* Defined to a complex binary128 type if __HAVE_FLOAT128 is 1. */ | ||
| 67 | # if __HAVE_FLOAT128 | ||
| 68 | # if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) | ||
| 69 | # define __CFLOAT128 _Complex long double | ||
| 70 | # else | ||
| 71 | # define __CFLOAT128 _Complex _Float128 | ||
| 72 | # endif | ||
| 73 | # endif | ||
| 74 | |||
| 75 | /* The remaining of this file provides support for older compilers. */ | ||
| 76 | # if __HAVE_FLOAT128 | ||
| 77 | |||
| 78 | /* The type _Float128 exists only since GCC 7.0. */ | ||
| 79 | # if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) | ||
| 80 | typedef long double _Float128; | ||
| 81 | # endif | ||
| 82 | |||
| 83 | /* Various built-in functions do not exist before GCC 7.0. */ | ||
| 84 | # if !__GNUC_PREREQ (7, 0) | ||
| 85 | # define __builtin_huge_valf128() (__builtin_huge_vall ()) | ||
| 86 | # define __builtin_inff128() (__builtin_infl ()) | ||
| 87 | # define __builtin_nanf128(x) (__builtin_nanl (x)) | ||
| 88 | # define __builtin_nansf128(x) (__builtin_nansl (x)) | ||
| 89 | # endif | ||
| 90 | |||
| 91 | # endif | ||
| 92 | |||
| 93 | #endif /* !__ASSEMBLER__. */ | ||
| 94 | |||
| 95 | #include <bits/floatn-common.h> | ||
| 96 | |||
| 97 | #endif /* _BITS_FLOATN_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabihf/bits/inotify.h deleted-29| ... | @@ -1,29 +0,0 @@ | ||
| 1 | /* Copyright (C) 2005-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_SYS_INOTIFY_H | ||
| 19 | # error "Never use <bits/inotify.h> directly; include <sys/inotify.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Flags for the parameter of inotify_init1. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | IN_CLOEXEC = 02000000, | ||
| 26 | #define IN_CLOEXEC IN_CLOEXEC | ||
| 27 | IN_NONBLOCK = 00000200 | ||
| 28 | #define IN_NONBLOCK IN_NONBLOCK | ||
| 29 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabihf/bits/ioctl-types.h deleted-75| ... | @@ -1,75 +0,0 @@ | ||
| 1 | /* Structure types for pre-termios terminal ioctls. Linux/MIPS version. | ||
| 2 | Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_IOCTL_H | ||
| 20 | # error "Never use <bits/ioctl-types.h> directly; include <sys/ioctl.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Get definition of constants for use with `ioctl'. */ | ||
| 24 | #include <asm/ioctls.h> | ||
| 25 | |||
| 26 | struct winsize | ||
| 27 | { | ||
| 28 | unsigned short int ws_row; | ||
| 29 | unsigned short int ws_col; | ||
| 30 | unsigned short int ws_xpixel; | ||
| 31 | unsigned short int ws_ypixel; | ||
| 32 | }; | ||
| 33 | |||
| 34 | #define NCC	8 | ||
| 35 | struct termio | ||
| 36 | { | ||
| 37 | unsigned short int c_iflag;		/* input mode flags */ | ||
| 38 | unsigned short int c_oflag;		/* output mode flags */ | ||
| 39 | unsigned short int c_cflag;		/* control mode flags */ | ||
| 40 | unsigned short int c_lflag;		/* local mode flags */ | ||
| 41 | char c_line;			/* line discipline */ | ||
| 42 | /* Yes, this is really NCCS. */ | ||
| 43 | unsigned char c_cc[32 /* NCCS */]; /* control characters */ | ||
| 44 | }; | ||
| 45 | |||
| 46 | /* modem lines */ | ||
| 47 | #define TIOCM_LE	0x001		/* line enable */ | ||
| 48 | #define TIOCM_DTR	0x002		/* data terminal ready */ | ||
| 49 | #define TIOCM_RTS	0x004		/* request to send */ | ||
| 50 | #define TIOCM_ST	0x010		/* secondary transmit */ | ||
| 51 | #define TIOCM_SR	0x020		/* secondary receive */ | ||
| 52 | #define TIOCM_CTS	0x040		/* clear to send */ | ||
| 53 | #define TIOCM_CAR	0x100		/* carrier detect */ | ||
| 54 | #define TIOCM_CD	TIOCM_CAR | ||
| 55 | #define TIOCM_RNG	0x200		/* ring */ | ||
| 56 | #define TIOCM_RI	TIOCM_RNG | ||
| 57 | #define TIOCM_DSR	0x400		/* data set ready */ | ||
| 58 | |||
| 59 | /* line disciplines */ | ||
| 60 | #define N_TTY		0 | ||
| 61 | #define N_SLIP		1 | ||
| 62 | #define N_MOUSE		2 | ||
| 63 | #define N_PPP		3 | ||
| 64 | #define N_STRIP		4 | ||
| 65 | #define N_AX25		5 | ||
| 66 | #define N_X25		6	/* X.25 async */ | ||
| 67 | #define N_6PACK		7 | ||
| 68 | #define N_MASC		8	/* Mobitex module */ | ||
| 69 | #define N_R3964		9	/* Simatic R3964 module */ | ||
| 70 | #define N_PROFIBUS_FDL	10	/* Profibus */ | ||
| 71 | #define N_IRDA		11	/* Linux IR */ | ||
| 72 | #define N_SMSBLOCK	12	/* SMS block mode */ | ||
| 73 | #define N_HDLC		13	/* synchronous HDLC */ | ||
| 74 | #define N_SYNC_PPP	14	/* synchronous PPP */ | ||
| 75 | #define	N_HCI		15	/* Bluetooth HCI UART */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabihf/bits/ipctypes.h deleted-31| ... | @@ -1,31 +0,0 @@ | ||
| 1 | /* bits/ipctypes.h -- Define some types used by SysV IPC/MSG/SHM. MIPS version | ||
| 2 | Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* | ||
| 20 | * Never include <bits/ipctypes.h> directly. | ||
| 21 | */ | ||
| 22 | |||
| 23 | #ifndef _BITS_IPCTYPES_H | ||
| 24 | #define _BITS_IPCTYPES_H	1 | ||
| 25 | |||
| 26 | #include <bits/types.h> | ||
| 27 | |||
| 28 | typedef __SLONG32_TYPE __ipc_pid_t; | ||
| 29 | |||
| 30 | |||
| 31 | #endif /* bits/ipctypes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabihf/bits/mman.h deleted-44| ... | @@ -1,44 +0,0 @@ | ||
| 1 | /* Definitions for POSIX memory map interface. Linux/MIPS version. | ||
| 2 | Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_MMAN_H | ||
| 20 | # error "Never use <bits/mman.h> directly; include <sys/mman.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* The following definitions basically come from the kernel headers. | ||
| 24 | But the kernel header is not namespace clean. */ | ||
| 25 | |||
| 26 | /* These are Linux-specific. */ | ||
| 27 | #define MAP_NORESERVE	0x0400		/* don't check for reservations */ | ||
| 28 | #define MAP_GROWSDOWN	0x1000		/* stack-like segment */ | ||
| 29 | #define MAP_DENYWRITE	0x2000		/* ETXTBSY */ | ||
| 30 | #define MAP_EXECUTABLE	0x4000		/* mark it as an executable */ | ||
| 31 | #define MAP_LOCKED	0x8000		/* pages are locked */ | ||
| 32 | #define MAP_POPULATE 0x10000 /* populate (prefault) pagetables */ | ||
| 33 | #define MAP_NONBLOCK 0x20000 /* do not block on IO */ | ||
| 34 | #define MAP_STACK	0x40000		/* Allocation is for a stack. */ | ||
| 35 | #define MAP_HUGETLB	0x80000		/* Create huge page mapping. */ | ||
| 36 | #define MAP_FIXED_NOREPLACE 0x100000	/* MAP_FIXED but do not unmap | ||
| 37 | 					 underlying mapping. */ | ||
| 38 | |||
| 39 | #define __MAP_ANONYMOUS 0x0800 | ||
| 40 | |||
| 41 | /* Include generic Linux declarations. */ | ||
| 42 | #include <bits/mman-linux.h> | ||
| 43 | |||
| 44 | #define MAP_RENAME	MAP_ANONYMOUS | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabihf/bits/poll.h deleted-49| ... | @@ -1,49 +0,0 @@ | ||
| 1 | /* Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_POLL_H | ||
| 19 | # error "Never use <bits/poll.h> directly; include <sys/poll.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Event types that can be polled for. These bits may be set in `events' | ||
| 23 | to indicate the interesting event types; they will appear in `revents' | ||
| 24 | to indicate the status of the file descriptor. */ | ||
| 25 | #define POLLIN		0x001		/* There is data to read. */ | ||
| 26 | #define POLLPRI		0x002		/* There is urgent data to read. */ | ||
| 27 | #define POLLOUT		0x004		/* Writing now will not block. */ | ||
| 28 | |||
| 29 | #if defined __USE_XOPEN || defined __USE_XOPEN2K8 | ||
| 30 | /* These values are defined in XPG4.2. */ | ||
| 31 | # define POLLRDNORM	0x040		/* Normal data may be read. */ | ||
| 32 | # define POLLRDBAND	0x080		/* Priority data may be read. */ | ||
| 33 | # define POLLWRNORM	POLLOUT		/* Writing now will not block. */ | ||
| 34 | # define POLLWRBAND	0x100		/* Priority data may be written. */ | ||
| 35 | #endif | ||
| 36 | |||
| 37 | #ifdef __USE_GNU | ||
| 38 | /* These are extensions for Linux. */ | ||
| 39 | # define POLLMSG	0x400 | ||
| 40 | # define POLLREMOVE	0x1000 | ||
| 41 | # define POLLRDHUP	0x2000 | ||
| 42 | #endif | ||
| 43 | |||
| 44 | /* Event types always implicitly polled for. These bits need not be set in | ||
| 45 | `events', but they will appear in `revents' to indicate the status of | ||
| 46 | the file descriptor. */ | ||
| 47 | #define POLLERR		0x008		/* Error condition. */ | ||
| 48 | #define POLLHUP		0x010		/* Hung up. */ | ||
| 49 | #define POLLNVAL	0x020		/* Invalid polling request. */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabihf/bits/pthread_stack_min.h deleted-20| ... | @@ -1,20 +0,0 @@ | ||
| 1 | /* Definition of PTHREAD_STACK_MIN. MIPS Linux version. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public License as | ||
| 7 | published by the Free Software Foundation; either version 2.1 of the | ||
| 8 | License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* Minimum size for a thread. At least two pages with 64k pages. */ | ||
| 20 | #define PTHREAD_STACK_MIN	131072 | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabihf/bits/pthreadtypes-arch.h deleted-44| ... | @@ -1,44 +0,0 @@ | ||
| 1 | /* Machine-specific pthread type layouts. MIPS version. | ||
| 2 | Copyright (C) 2005-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_PTHREADTYPES_ARCH_H | ||
| 20 | #define _BITS_PTHREADTYPES_ARCH_H	1 | ||
| 21 | |||
| 22 | #include <bits/endian.h> | ||
| 23 | |||
| 24 | #if _MIPS_SIM == _ABI64 | ||
| 25 | # define __SIZEOF_PTHREAD_ATTR_T 56 | ||
| 26 | # define __SIZEOF_PTHREAD_MUTEX_T 40 | ||
| 27 | # define __SIZEOF_PTHREAD_RWLOCK_T 56 | ||
| 28 | # define __SIZEOF_PTHREAD_BARRIER_T 32 | ||
| 29 | #else | ||
| 30 | # define __SIZEOF_PTHREAD_ATTR_T 36 | ||
| 31 | # define __SIZEOF_PTHREAD_MUTEX_T 24 | ||
| 32 | # define __SIZEOF_PTHREAD_RWLOCK_T 32 | ||
| 33 | # define __SIZEOF_PTHREAD_BARRIER_T 20 | ||
| 34 | #endif | ||
| 35 | #define __SIZEOF_PTHREAD_MUTEXATTR_T 4 | ||
| 36 | #define __SIZEOF_PTHREAD_COND_T 48 | ||
| 37 | #define __SIZEOF_PTHREAD_CONDATTR_T 4 | ||
| 38 | #define __SIZEOF_PTHREAD_RWLOCKATTR_T 8 | ||
| 39 | #define __SIZEOF_PTHREAD_BARRIERATTR_T 4 | ||
| 40 | |||
| 41 | #define __LOCK_ALIGNMENT | ||
| 42 | #define __ONCE_ALIGNMENT | ||
| 43 | |||
| 44 | #endif	/* bits/pthreadtypes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabihf/bits/resource.h deleted-231| ... | @@ -1,231 +0,0 @@ | ||
| 1 | /* Bit values & structures for resource limits. Linux/MIPS version. | ||
| 2 | Copyright (C) 1994-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_RESOURCE_H | ||
| 20 | # error "Never use <bits/resource.h> directly; include <sys/resource.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <bits/types.h> | ||
| 24 | |||
| 25 | /* Transmute defines to enumerations. The macro re-definitions are | ||
| 26 | necessary because some programs want to test for operating system | ||
| 27 | features with #ifdef RUSAGE_SELF. In ISO C the reflexive | ||
| 28 | definition is a no-op. */ | ||
| 29 | |||
| 30 | /* Kinds of resource limit. */ | ||
| 31 | enum __rlimit_resource | ||
| 32 | { | ||
| 33 | /* Per-process CPU limit, in seconds. */ | ||
| 34 | RLIMIT_CPU = 0, | ||
| 35 | #define RLIMIT_CPU RLIMIT_CPU | ||
| 36 | |||
| 37 | /* Largest file that can be created, in bytes. */ | ||
| 38 | RLIMIT_FSIZE = 1, | ||
| 39 | #define	RLIMIT_FSIZE RLIMIT_FSIZE | ||
| 40 | |||
| 41 | /* Maximum size of data segment, in bytes. */ | ||
| 42 | RLIMIT_DATA = 2, | ||
| 43 | #define	RLIMIT_DATA RLIMIT_DATA | ||
| 44 | |||
| 45 | /* Maximum size of stack segment, in bytes. */ | ||
| 46 | RLIMIT_STACK = 3, | ||
| 47 | #define	RLIMIT_STACK RLIMIT_STACK | ||
| 48 | |||
| 49 | /* Largest core file that can be created, in bytes. */ | ||
| 50 | RLIMIT_CORE = 4, | ||
| 51 | #define	RLIMIT_CORE RLIMIT_CORE | ||
| 52 | |||
| 53 | /* Largest resident set size, in bytes. | ||
| 54 | This affects swapping; processes that are exceeding their | ||
| 55 | resident set size will be more likely to have physical memory | ||
| 56 | taken from them. */ | ||
| 57 | __RLIMIT_RSS = 7, | ||
| 58 | #define	RLIMIT_RSS __RLIMIT_RSS | ||
| 59 | |||
| 60 | /* Number of open files. */ | ||
| 61 | RLIMIT_NOFILE = 5, | ||
| 62 | __RLIMIT_OFILE = RLIMIT_NOFILE, /* BSD name for same. */ | ||
| 63 | #define RLIMIT_NOFILE RLIMIT_NOFILE | ||
| 64 | #define RLIMIT_OFILE __RLIMIT_OFILE | ||
| 65 | |||
| 66 | /* Address space limit (?) */ | ||
| 67 | RLIMIT_AS = 6, | ||
| 68 | #define RLIMIT_AS RLIMIT_AS | ||
| 69 | |||
| 70 | /* Number of processes. */ | ||
| 71 | __RLIMIT_NPROC = 8, | ||
| 72 | #define RLIMIT_NPROC __RLIMIT_NPROC | ||
| 73 | |||
| 74 | /* Locked-in-memory address space. */ | ||
| 75 | __RLIMIT_MEMLOCK = 9, | ||
| 76 | #define RLIMIT_MEMLOCK __RLIMIT_MEMLOCK | ||
| 77 | |||
| 78 | /* Maximum number of file locks. */ | ||
| 79 | __RLIMIT_LOCKS = 10, | ||
| 80 | #define RLIMIT_LOCKS __RLIMIT_LOCKS | ||
| 81 | |||
| 82 | /* Maximum number of pending signals. */ | ||
| 83 | __RLIMIT_SIGPENDING = 11, | ||
| 84 | #define RLIMIT_SIGPENDING __RLIMIT_SIGPENDING | ||
| 85 | |||
| 86 | /* Maximum bytes in POSIX message queues. */ | ||
| 87 | __RLIMIT_MSGQUEUE = 12, | ||
| 88 | #define RLIMIT_MSGQUEUE __RLIMIT_MSGQUEUE | ||
| 89 | |||
| 90 | /* Maximum nice priority allowed to raise to. | ||
| 91 | Nice levels 19 .. -20 correspond to 0 .. 39 | ||
| 92 | values of this resource limit. */ | ||
| 93 | __RLIMIT_NICE = 13, | ||
| 94 | #define RLIMIT_NICE __RLIMIT_NICE | ||
| 95 | |||
| 96 | /* Maximum realtime priority allowed for non-priviledged | ||
| 97 | processes. */ | ||
| 98 | __RLIMIT_RTPRIO = 14, | ||
| 99 | #define RLIMIT_RTPRIO __RLIMIT_RTPRIO | ||
| 100 | |||
| 101 | /* Maximum CPU time in microseconds that a process scheduled under a real-time | ||
| 102 | scheduling policy may consume without making a blocking system | ||
| 103 | call before being forcibly descheduled. */ | ||
| 104 | __RLIMIT_RTTIME = 15, | ||
| 105 | #define RLIMIT_RTTIME __RLIMIT_RTTIME | ||
| 106 | |||
| 107 | __RLIMIT_NLIMITS = 16, | ||
| 108 | __RLIM_NLIMITS = __RLIMIT_NLIMITS | ||
| 109 | #define RLIMIT_NLIMITS __RLIMIT_NLIMITS | ||
| 110 | #define RLIM_NLIMITS __RLIM_NLIMITS | ||
| 111 | }; | ||
| 112 | |||
| 113 | /* Value to indicate that there is no limit. */ | ||
| 114 | #if _MIPS_SIM == _ABI64 | ||
| 115 | /* The N64 syscall uses this value. */ | ||
| 116 | # define RLIM_INFINITY 0xffffffffffffffffUL | ||
| 117 | # ifdef __USE_LARGEFILE64 | ||
| 118 | # define RLIM64_INFINITY 0xffffffffffffffffUL | ||
| 119 | # endif | ||
| 120 | #else | ||
| 121 | /* The O32 and N32 syscalls use 0x7fffffff. */ | ||
| 122 | # ifndef __USE_FILE_OFFSET64 | ||
| 123 | # define RLIM_INFINITY ((long int)(~0UL >> 1)) | ||
| 124 | # else | ||
| 125 | # define RLIM_INFINITY 0xffffffffffffffffULL | ||
| 126 | # endif | ||
| 127 | # ifdef __USE_LARGEFILE64 | ||
| 128 | # define RLIM64_INFINITY 0xffffffffffffffffULL | ||
| 129 | # endif | ||
| 130 | #endif | ||
| 131 | |||
| 132 | /* We can represent all limits. */ | ||
| 133 | #define RLIM_SAVED_MAX	RLIM_INFINITY | ||
| 134 | #define RLIM_SAVED_CUR	RLIM_INFINITY | ||
| 135 | |||
| 136 | |||
| 137 | /* Type for resource quantity measurement. */ | ||
| 138 | #ifndef __USE_FILE_OFFSET64 | ||
| 139 | typedef __rlim_t rlim_t; | ||
| 140 | #else | ||
| 141 | typedef __rlim64_t rlim_t; | ||
| 142 | #endif | ||
| 143 | #ifdef __USE_LARGEFILE64 | ||
| 144 | typedef __rlim64_t rlim64_t; | ||
| 145 | #endif | ||
| 146 | |||
| 147 | struct rlimit | ||
| 148 | { | ||
| 149 | /* The current (soft) limit. */ | ||
| 150 | rlim_t rlim_cur; | ||
| 151 | /* The hard limit. */ | ||
| 152 | rlim_t rlim_max; | ||
| 153 | }; | ||
| 154 | |||
| 155 | #ifdef __USE_LARGEFILE64 | ||
| 156 | struct rlimit64 | ||
| 157 | { | ||
| 158 | /* The current (soft) limit. */ | ||
| 159 | rlim64_t rlim_cur; | ||
| 160 | /* The hard limit. */ | ||
| 161 | rlim64_t rlim_max; | ||
| 162 | }; | ||
| 163 | #endif | ||
| 164 | |||
| 165 | /* Whose usage statistics do you want? */ | ||
| 166 | enum __rusage_who | ||
| 167 | { | ||
| 168 | /* The calling process. */ | ||
| 169 | RUSAGE_SELF = 0, | ||
| 170 | #define RUSAGE_SELF RUSAGE_SELF | ||
| 171 | |||
| 172 | /* All of its terminated child processes. */ | ||
| 173 | RUSAGE_CHILDREN = -1 | ||
| 174 | #define RUSAGE_CHILDREN RUSAGE_CHILDREN | ||
| 175 | |||
| 176 | #ifdef __USE_GNU | ||
| 177 | , | ||
| 178 | /* The calling thread. */ | ||
| 179 | RUSAGE_THREAD = 1 | ||
| 180 | # define RUSAGE_THREAD RUSAGE_THREAD | ||
| 181 | /* Name for the same functionality on Solaris. */ | ||
| 182 | # define RUSAGE_LWP RUSAGE_THREAD | ||
| 183 | #endif | ||
| 184 | }; | ||
| 185 | |||
| 186 | #include <bits/types/struct_timeval.h> | ||
| 187 | #include <bits/types/struct_rusage.h> | ||
| 188 | |||
| 189 | /* Priority limits. */ | ||
| 190 | #define PRIO_MIN	-20	/* Minimum priority a process can have. */ | ||
| 191 | #define PRIO_MAX	20	/* Maximum priority a process can have. */ | ||
| 192 | |||
| 193 | /* The type of the WHICH argument to `getpriority' and `setpriority', | ||
| 194 | indicating what flavor of entity the WHO argument specifies. */ | ||
| 195 | enum __priority_which | ||
| 196 | { | ||
| 197 | PRIO_PROCESS = 0,		/* WHO is a process ID. */ | ||
| 198 | #define PRIO_PROCESS PRIO_PROCESS | ||
| 199 | PRIO_PGRP = 1,		/* WHO is a process group ID. */ | ||
| 200 | #define PRIO_PGRP PRIO_PGRP | ||
| 201 | PRIO_USER = 2			/* WHO is a user ID. */ | ||
| 202 | #define PRIO_USER PRIO_USER | ||
| 203 | }; | ||
| 204 | |||
| 205 | |||
| 206 | __BEGIN_DECLS | ||
| 207 | |||
| 208 | #ifdef __USE_GNU | ||
| 209 | /* Modify and return resource limits of a process atomically. */ | ||
| 210 | # ifndef __USE_FILE_OFFSET64 | ||
| 211 | extern int prlimit (__pid_t __pid, enum __rlimit_resource __resource, | ||
| 212 | 		 const struct rlimit *__new_limit, | ||
| 213 | 		 struct rlimit *__old_limit) __THROW; | ||
| 214 | # else | ||
| 215 | # ifdef __REDIRECT_NTH | ||
| 216 | extern int __REDIRECT_NTH (prlimit, (__pid_t __pid, | ||
| 217 | 				 enum __rlimit_resource __resource, | ||
| 218 | 				 const struct rlimit *__new_limit, | ||
| 219 | 				 struct rlimit *__old_limit), prlimit64); | ||
| 220 | # else | ||
| 221 | # define prlimit prlimit64 | ||
| 222 | # endif | ||
| 223 | # endif | ||
| 224 | # ifdef __USE_LARGEFILE64 | ||
| 225 | extern int prlimit64 (__pid_t __pid, enum __rlimit_resource __resource, | ||
| 226 | 		 const struct rlimit64 *__new_limit, | ||
| 227 | 		 struct rlimit64 *__old_limit) __THROW; | ||
| 228 | # endif | ||
| 229 | #endif | ||
| 230 | |||
| 231 | __END_DECLS | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabihf/bits/semaphore.h deleted-36| ... | @@ -1,36 +0,0 @@ | ||
| 1 | /* Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SEMAPHORE_H | ||
| 19 | # error "Never use <bits/semaphore.h> directly; include <semaphore.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | #if _MIPS_SIM == _ABI64 | ||
| 23 | # define __SIZEOF_SEM_T	32 | ||
| 24 | #else | ||
| 25 | # define __SIZEOF_SEM_T	16 | ||
| 26 | #endif | ||
| 27 | |||
| 28 | /* Value returned if `sem_open' failed. */ | ||
| 29 | #define SEM_FAILED ((sem_t *) 0) | ||
| 30 | |||
| 31 | |||
| 32 | typedef union | ||
| 33 | { | ||
| 34 | char __size[__SIZEOF_SEM_T]; | ||
| 35 | long int __align; | ||
| 36 | } sem_t; | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabihf/bits/shmlba.h deleted-24| ... | @@ -1,24 +0,0 @@ | ||
| 1 | /* Define SHMLBA. MIPS version. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SHM_H | ||
| 20 | # error "Never use <bits/shmlba.h> directly; include <sys/shm.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Segment low boundary address multiple. */ | ||
| 24 | #define SHMLBA		0x40000 | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabihf/bits/sigaction.h deleted-94| ... | @@ -1,94 +0,0 @@ | ||
| 1 | /* The proper definitions for Linux/MIPS's sigaction. | ||
| 2 | Copyright (C) 1993-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_SIGACTION_H | ||
| 20 | #define _BITS_SIGACTION_H 1 | ||
| 21 | |||
| 22 | #ifndef _SIGNAL_H | ||
| 23 | # error "Never include <bits/sigaction.h> directly; use <signal.h> instead." | ||
| 24 | #endif | ||
| 25 | |||
| 26 | /* Structure describing the action to be taken when a signal arrives. */ | ||
| 27 | struct sigaction | ||
| 28 | { | ||
| 29 | /* Special flags. */ | ||
| 30 | int sa_flags; | ||
| 31 | |||
| 32 | /* Signal handler. */ | ||
| 33 | #if defined __USE_POSIX199309 || defined __USE_XOPEN_EXTENDED | ||
| 34 | union | ||
| 35 | { | ||
| 36 | 	/* Used if SA_SIGINFO is not set. */ | ||
| 37 | 	__sighandler_t sa_handler; | ||
| 38 | 	/* Used if SA_SIGINFO is set. */ | ||
| 39 | 	void (*sa_sigaction) (int, siginfo_t *, void *); | ||
| 40 | } | ||
| 41 | __sigaction_handler; | ||
| 42 | # define sa_handler __sigaction_handler.sa_handler | ||
| 43 | # define sa_sigaction __sigaction_handler.sa_sigaction | ||
| 44 | #else | ||
| 45 | __sighandler_t sa_handler; | ||
| 46 | #endif | ||
| 47 | /* Additional set of signals to be blocked. */ | ||
| 48 | __sigset_t sa_mask; | ||
| 49 | |||
| 50 | /* The ABI says here are two unused ints following. */ | ||
| 51 | /* Restore handler. */ | ||
| 52 | void (*sa_restorer) (void); | ||
| 53 | |||
| 54 | #if _MIPS_SZPTR < 64 | ||
| 55 | int sa_resv[1]; | ||
| 56 | #endif | ||
| 57 | }; | ||
| 58 | |||
| 59 | /* Bits in `sa_flags'. */ | ||
| 60 | /* Please note that some Linux kernels versions use different values for these | ||
| 61 | flags which is a bug in those kernel versions. */ | ||
| 62 | #define SA_NOCLDSTOP 0x00000001 /* Don't send SIGCHLD when children stop. */ | ||
| 63 | #define SA_NOCLDWAIT 0x00010000 /* Don't create zombie on child death. */ | ||
| 64 | #define SA_SIGINFO 0x00000008 /* Invoke signal-catching function with | ||
| 65 | 				 three arguments instead of one. */ | ||
| 66 | #if defined __USE_XOPEN_EXTENDED || defined __USE_MISC | ||
| 67 | # define SA_ONSTACK 0x08000000 /* Use signal stack by using `sa_restorer'. */ | ||
| 68 | #endif | ||
| 69 | #if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8 | ||
| 70 | # define SA_RESETHAND 0x80000000 /* Reset to SIG_DFL on entry to handler. */ | ||
| 71 | # define SA_RESTART 0x10000000 /* Restart syscall on signal return. */ | ||
| 72 | # define SA_NODEFER 0x40000000 /* Don't automatically block the signal when | ||
| 73 | 				 its handler is being executed. */ | ||
| 74 | #endif | ||
| 75 | #ifdef __USE_MISC | ||
| 76 | # define SA_INTERRUPT 0x20000000 /* Historical no-op. */ | ||
| 77 | |||
| 78 | /* Some aliases for the SA_ constants. */ | ||
| 79 | # define SA_NOMASK SA_NODEFER | ||
| 80 | # define SA_ONESHOT SA_RESETHAND | ||
| 81 | # define SA_STACK SA_ONSTACK | ||
| 82 | #endif | ||
| 83 | |||
| 84 | /* Values for the HOW argument to `sigprocmask'. */ | ||
| 85 | #define SIG_NOP	 0		/* 0 is unused to catch errors */ | ||
| 86 | #define	SIG_BLOCK 1		/* Block signals. */ | ||
| 87 | #define	SIG_UNBLOCK 2		/* Unblock signals. */ | ||
| 88 | #define	SIG_SETMASK 3		/* Set the set of blocked signals. */ | ||
| 89 | #ifdef __USE_MISC | ||
| 90 | # define SIG_SETMASK32 256	/* Goodie from SGI for BSD compatibility: | ||
| 91 | 				 set only the low 32 bit of the sigset. */ | ||
| 92 | #endif | ||
| 93 | |||
| 94 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabihf/bits/sigcontext.h deleted-82| ... | @@ -1,82 +0,0 @@ | ||
| 1 | /* Copyright (C) 1996-2025 Free Software Foundation, Inc. This file is part of the GNU C Library. | ||
| 2 | |||
| 3 | The GNU C Library is free software; you can redistribute it and/or | ||
| 4 | modify it under the terms of the GNU Lesser General Public | ||
| 5 | License as published by the Free Software Foundation; either | ||
| 6 | version 2.1 of the License, or (at your option) any later version. | ||
| 7 | |||
| 8 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 9 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 10 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 11 | Lesser General Public License for more details. | ||
| 12 | |||
| 13 | You should have received a copy of the GNU Lesser General Public | ||
| 14 | License along with the GNU C Library. If not, see | ||
| 15 | <https://www.gnu.org/licenses/>. */ | ||
| 16 | |||
| 17 | #ifndef _BITS_SIGCONTEXT_H | ||
| 18 | #define _BITS_SIGCONTEXT_H 1 | ||
| 19 | |||
| 20 | #if !defined _SIGNAL_H && !defined _SYS_UCONTEXT_H | ||
| 21 | # error "Never use <bits/sigcontext.h> directly; include <signal.h> instead." | ||
| 22 | #endif | ||
| 23 | |||
| 24 | #include <sgidefs.h> | ||
| 25 | |||
| 26 | #if _MIPS_SIM == _ABIO32 | ||
| 27 | |||
| 28 | /* Certain unused fields were replaced with new ones in 2.6.12-rc4. | ||
| 29 | The changes were as follows: | ||
| 30 | |||
| 31 | sc_cause -> sc_hi1 | ||
| 32 | sc_badvaddr -> sc_lo1 | ||
| 33 | sc_sigset[0] -> sc_hi2 | ||
| 34 | sc_sigset[1] -> sc_lo2 | ||
| 35 | sc_sigset[2] -> sc_hi3 | ||
| 36 | sc_sigset[3] -> sc_lo3 | ||
| 37 | |||
| 38 | sc_regmask, sc_ownedfp and sc_fpc_eir are not used. */ | ||
| 39 | struct sigcontext { | ||
| 40 | unsigned int sc_regmask; | ||
| 41 | unsigned int sc_status; | ||
| 42 | __extension__ unsigned long long sc_pc; | ||
| 43 | __extension__ unsigned long long sc_regs[32]; | ||
| 44 | __extension__ unsigned long long sc_fpregs[32]; | ||
| 45 | unsigned int sc_ownedfp; | ||
| 46 | unsigned int sc_fpc_csr; | ||
| 47 | unsigned int sc_fpc_eir; | ||
| 48 | unsigned int sc_used_math; | ||
| 49 | unsigned int sc_dsp; | ||
| 50 | __extension__ unsigned long long sc_mdhi; | ||
| 51 | __extension__ unsigned long long sc_mdlo; | ||
| 52 | unsigned long sc_hi1; | ||
| 53 | unsigned long sc_lo1; | ||
| 54 | unsigned long sc_hi2; | ||
| 55 | unsigned long sc_lo2; | ||
| 56 | unsigned long sc_hi3; | ||
| 57 | unsigned long sc_lo3; | ||
| 58 | }; | ||
| 59 | |||
| 60 | #else | ||
| 61 | |||
| 62 | /* This structure changed in 2.6.12-rc4 when DSP support was added. */ | ||
| 63 | struct sigcontext { | ||
| 64 | __extension__ unsigned long long sc_regs[32]; | ||
| 65 | __extension__ unsigned long long sc_fpregs[32]; | ||
| 66 | __extension__ unsigned long long sc_mdhi; | ||
| 67 | __extension__ unsigned long long sc_hi1; | ||
| 68 | __extension__ unsigned long long sc_hi2; | ||
| 69 | __extension__ unsigned long long sc_hi3; | ||
| 70 | __extension__ unsigned long long sc_mdlo; | ||
| 71 | __extension__ unsigned long long sc_lo1; | ||
| 72 | __extension__ unsigned long long sc_lo2; | ||
| 73 | __extension__ unsigned long long sc_lo3; | ||
| 74 | __extension__ unsigned long long sc_pc; | ||
| 75 | unsigned int sc_fpc_csr; | ||
| 76 | unsigned int sc_used_math; | ||
| 77 | unsigned int sc_dsp; | ||
| 78 | unsigned int sc_reserved; | ||
| 79 | }; | ||
| 80 | |||
| 81 | #endif /* _MIPS_SIM != _ABIO32 */ | ||
| 82 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabihf/bits/siginfo-arch.h deleted-13| ... | @@ -1,13 +0,0 @@ | ||
| 1 | /* Architecture-specific adjustments to siginfo_t. MIPS version. */ | ||
| 2 | #ifndef _BITS_SIGINFO_ARCH_H | ||
| 3 | #define _BITS_SIGINFO_ARCH_H 1 | ||
| 4 | |||
| 5 | /* MIPS has the si_code and si_errno fields in the opposite order from | ||
| 6 | all other architectures. */ | ||
| 7 | #define __SI_ERRNO_THEN_CODE 0 | ||
| 8 | |||
| 9 | /* MIPS also has different values for SI_ASYNCIO, SI_MESGQ, and SI_TIMER | ||
| 10 | than all other architectures. */ | ||
| 11 | #define __SI_ASYNCIO_AFTER_SIGIO 0 | ||
| 12 | |||
| 13 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabihf/bits/signalfd.h deleted-29| ... | @@ -1,29 +0,0 @@ | ||
| 1 | /* Copyright (C) 2007-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_SYS_SIGNALFD_H | ||
| 19 | # error "Never use <bits/signalfd.h> directly; include <sys/signalfd.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Flags for signalfd. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | SFD_CLOEXEC = 02000000, | ||
| 26 | #define SFD_CLOEXEC SFD_CLOEXEC | ||
| 27 | SFD_NONBLOCK = 00000200 | ||
| 28 | #define SFD_NONBLOCK SFD_NONBLOCK | ||
| 29 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabihf/bits/signum-arch.h deleted-65| ... | @@ -1,65 +0,0 @@ | ||
| 1 | /* Signal number definitions. Linux/MIPS version. | ||
| 2 | Copyright (C) 1995-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_SIGNUM_H | ||
| 20 | #define _BITS_SIGNUM_H 1 | ||
| 21 | |||
| 22 | #ifndef _SIGNAL_H | ||
| 23 | #error "Never include <bits/signum.h> directly; use <signal.h> instead." | ||
| 24 | #endif | ||
| 25 | |||
| 26 | /* Adjustments and additions to the signal number constants for | ||
| 27 | Linux/MIPS. */ | ||
| 28 | |||
| 29 | #define SIGEMT		 7	/* Emulator trap. */ | ||
| 30 | #define SIGPWR		19	/* Power failure imminent. */ | ||
| 31 | |||
| 32 | /* Historical signals specified by POSIX. */ | ||
| 33 | #define SIGBUS 	10	/* Bus error. */ | ||
| 34 | #define SIGSYS		12	/* Bad system call. */ | ||
| 35 | |||
| 36 | /* New(er) POSIX signals (1003.1-2008, 1003.1-2013). */ | ||
| 37 | #define SIGURG		21	/* Urgent data is available at a socket. */ | ||
| 38 | #define SIGSTOP		23	/* Stop, unblockable. */ | ||
| 39 | #define SIGTSTP		24	/* Keyboard stop. */ | ||
| 40 | #define SIGCONT		25	/* Continue. */ | ||
| 41 | #define SIGCHLD		18	/* Child terminated or stopped. */ | ||
| 42 | #define SIGTTIN		26	/* Background read from control terminal. */ | ||
| 43 | #define SIGTTOU		27	/* Background write to control terminal. */ | ||
| 44 | #define SIGPOLL		22	/* Pollable event occurred (System V). */ | ||
| 45 | #define SIGXCPU		30	/* CPU time limit exceeded. */ | ||
| 46 | #define SIGVTALRM	28	/* Virtual timer expired. */ | ||
| 47 | #define SIGPROF		29	/* Profiling timer expired. */ | ||
| 48 | #define SIGXFSZ		31	/* File size limit exceeded. */ | ||
| 49 | #define SIGUSR1		16	/* User-defined signal 1. */ | ||
| 50 | #define SIGUSR2		17	/* User-defined signal 2. */ | ||
| 51 | |||
| 52 | /* Nonstandard signals found in all modern POSIX systems | ||
| 53 | (including both BSD and Linux). */ | ||
| 54 | #define SIGWINCH	20	/* Window size change (4.3 BSD, Sun). */ | ||
| 55 | |||
| 56 | /* Archaic names for compatibility. */ | ||
| 57 | #define SIGIO		SIGPOLL	/* I/O now possible (4.2 BSD). */ | ||
| 58 | #define SIGIOT		SIGABRT	/* IOT instruction, abort() on a PDP-11. */ | ||
| 59 | #define SIGCLD		SIGCHLD /* Old System V name */ | ||
| 60 | |||
| 61 | /* By default no real-time signals are supported. */ | ||
| 62 | #define __SIGRTMIN	32 | ||
| 63 | #define __SIGRTMAX	127 | ||
| 64 | |||
| 65 | #endif	/* <signal.h> included. */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabihf/bits/socket-constants.h deleted-70| ... | @@ -1,70 +0,0 @@ | ||
| 1 | /* Socket constants which vary among Linux architectures. Version for MIPS. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SOCKET_H | ||
| 20 | # error "Never include <bits/socket-constants.h> directly; use <sys/socket.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #define SOL_SOCKET 65535 | ||
| 24 | #define SO_ACCEPTCONN 4105 | ||
| 25 | #define SO_BROADCAST 32 | ||
| 26 | #define SO_DONTROUTE 16 | ||
| 27 | #define SO_ERROR 4103 | ||
| 28 | #define SO_KEEPALIVE 8 | ||
| 29 | #define SO_LINGER 128 | ||
| 30 | #define SO_OOBINLINE 256 | ||
| 31 | #define SO_RCVBUF 4098 | ||
| 32 | #define SO_RCVLOWAT 4100 | ||
| 33 | #define SO_REUSEADDR 4 | ||
| 34 | #define SO_SNDBUF 4097 | ||
| 35 | #define SO_SNDLOWAT 4099 | ||
| 36 | #define SO_TYPE 4104 | ||
| 37 | |||
| 38 | #if __TIMESIZE == 64 | ||
| 39 | # define SO_RCVTIMEO 4102 | ||
| 40 | # define SO_SNDTIMEO 4101 | ||
| 41 | # define SO_TIMESTAMP 29 | ||
| 42 | # define SO_TIMESTAMPNS 35 | ||
| 43 | # define SO_TIMESTAMPING 37 | ||
| 44 | #else | ||
| 45 | # define SO_RCVTIMEO_OLD 4102 | ||
| 46 | # define SO_SNDTIMEO_OLD 4101 | ||
| 47 | # define SO_RCVTIMEO_NEW 66 | ||
| 48 | # define SO_SNDTIMEO_NEW 67 | ||
| 49 | |||
| 50 | # define SO_TIMESTAMP_OLD 29 | ||
| 51 | # define SO_TIMESTAMPNS_OLD 35 | ||
| 52 | # define SO_TIMESTAMPING_OLD 37 | ||
| 53 | # define SO_TIMESTAMP_NEW 63 | ||
| 54 | # define SO_TIMESTAMPNS_NEW 64 | ||
| 55 | # define SO_TIMESTAMPING_NEW 65 | ||
| 56 | |||
| 57 | # ifdef __USE_TIME64_REDIRECTS | ||
| 58 | # define SO_RCVTIMEO SO_RCVTIMEO_NEW | ||
| 59 | # define SO_SNDTIMEO SO_SNDTIMEO_NEW | ||
| 60 | # define SO_TIMESTAMP SO_TIMESTAMP_NEW | ||
| 61 | # define SO_TIMESTAMPNS SO_TIMESTAMPNS_NEW | ||
| 62 | # define SO_TIMESTAMPING SO_TIMESTAMPING_NEW | ||
| 63 | # else | ||
| 64 | # define SO_RCVTIMEO SO_RCVTIMEO_OLD | ||
| 65 | # define SO_SNDTIMEO SO_SNDTIMEO_OLD | ||
| 66 | # define SO_TIMESTAMP SO_TIMESTAMP_OLD | ||
| 67 | # define SO_TIMESTAMPNS SO_TIMESTAMPNS_OLD | ||
| 68 | # define SO_TIMESTAMPING SO_TIMESTAMPING_OLD | ||
| 69 | # endif | ||
| 70 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabihf/bits/socket_type.h deleted-55| ... | @@ -1,55 +0,0 @@ | ||
| 1 | /* Define enum __socket_type for Linux/MIPS. | ||
| 2 | Copyright (C) 1991-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SOCKET_H | ||
| 20 | # error "Never include <bits/socket_type.h> directly; use <sys/socket.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Types of sockets. */ | ||
| 24 | enum __socket_type | ||
| 25 | { | ||
| 26 | SOCK_DGRAM = 1,		/* Connectionless, unreliable datagrams | ||
| 27 | 				 of fixed maximum length. */ | ||
| 28 | #define SOCK_DGRAM SOCK_DGRAM | ||
| 29 | SOCK_STREAM = 2,		/* Sequenced, reliable, connection-based | ||
| 30 | 				 byte streams. */ | ||
| 31 | #define SOCK_STREAM SOCK_STREAM | ||
| 32 | SOCK_RAW = 3,			/* Raw protocol interface. */ | ||
| 33 | #define SOCK_RAW SOCK_RAW | ||
| 34 | SOCK_RDM = 4,			/* Reliably-delivered messages. */ | ||
| 35 | #define SOCK_RDM SOCK_RDM | ||
| 36 | SOCK_SEQPACKET = 5,		/* Sequenced, reliable, connection-based, | ||
| 37 | 				 datagrams of fixed maximum length. */ | ||
| 38 | #define SOCK_SEQPACKET SOCK_SEQPACKET | ||
| 39 | SOCK_DCCP = 6, | ||
| 40 | #define SOCK_DCCP SOCK_DCCP	/* Datagram Congestion Control Protocol. */ | ||
| 41 | SOCK_PACKET = 10,		/* Linux specific way of getting packets | ||
| 42 | 				 at the dev level. For writing rarp and | ||
| 43 | 				 other similar things on the user level. */ | ||
| 44 | #define SOCK_PACKET SOCK_PACKET | ||
| 45 | |||
| 46 | /* Flags to be ORed into the type parameter of socket and socketpair and | ||
| 47 | used for the flags parameter of paccept. */ | ||
| 48 | |||
| 49 | SOCK_CLOEXEC = 02000000,	/* Atomically set close-on-exec flag for the | ||
| 50 | 				 new descriptor(s). */ | ||
| 51 | #define SOCK_CLOEXEC SOCK_CLOEXEC | ||
| 52 | SOCK_NONBLOCK = 00000200	/* Atomically mark descriptor(s) as | ||
| 53 | 				 non-blocking. */ | ||
| 54 | #define SOCK_NONBLOCK SOCK_NONBLOCK | ||
| 55 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabihf/bits/statfs.h deleted-73| ... | @@ -1,73 +0,0 @@ | ||
| 1 | /* Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_STATFS_H | ||
| 19 | # error "Never include <bits/statfs.h> directly; use <sys/statfs.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | #include <bits/types.h> /* for __fsid_t and __fsblkcnt_t*/ | ||
| 23 | |||
| 24 | struct statfs | ||
| 25 | { | ||
| 26 | long int f_type; | ||
| 27 | #define f_fstyp f_type | ||
| 28 | long int f_bsize; | ||
| 29 | long int f_frsize;	/* Fragment size - unsupported */ | ||
| 30 | #ifndef __USE_FILE_OFFSET64 | ||
| 31 | __fsblkcnt_t f_blocks; | ||
| 32 | __fsblkcnt_t f_bfree; | ||
| 33 | __fsblkcnt_t f_files; | ||
| 34 | __fsblkcnt_t f_ffree; | ||
| 35 | __fsblkcnt_t f_bavail; | ||
| 36 | #else | ||
| 37 | __fsblkcnt64_t f_blocks; | ||
| 38 | __fsblkcnt64_t f_bfree; | ||
| 39 | __fsblkcnt64_t f_files; | ||
| 40 | __fsblkcnt64_t f_ffree; | ||
| 41 | __fsblkcnt64_t f_bavail; | ||
| 42 | #endif | ||
| 43 | |||
| 44 | 	/* Linux specials */ | ||
| 45 | __fsid_t f_fsid; | ||
| 46 | long int f_namelen; | ||
| 47 | long int f_flags; | ||
| 48 | long int f_spare[5]; | ||
| 49 | }; | ||
| 50 | |||
| 51 | #ifdef __USE_LARGEFILE64 | ||
| 52 | struct statfs64 | ||
| 53 | { | ||
| 54 | long int f_type; | ||
| 55 | #define f_fstyp f_type | ||
| 56 | long int f_bsize; | ||
| 57 | long int f_frsize;	/* Fragment size - unsupported */ | ||
| 58 | __fsblkcnt64_t f_blocks; | ||
| 59 | __fsblkcnt64_t f_bfree; | ||
| 60 | __fsblkcnt64_t f_files; | ||
| 61 | __fsblkcnt64_t f_ffree; | ||
| 62 | __fsblkcnt64_t f_bavail; | ||
| 63 | |||
| 64 | 	/* Linux specials */ | ||
| 65 | __fsid_t f_fsid; | ||
| 66 | long int f_namelen; | ||
| 67 | long int f_flags; | ||
| 68 | long int f_spare[5]; | ||
| 69 | }; | ||
| 70 | #endif | ||
| 71 | |||
| 72 | /* Tell code we have these members. */ | ||
| 73 | #define _STATFS_F_NAMELEN | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabihf/bits/struct_mutex.h deleted-56| ... | @@ -1,56 +0,0 @@ | ||
| 1 | /* MIPS internal mutex struct definitions. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <http://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _THREAD_MUTEX_INTERNAL_H | ||
| 20 | #define _THREAD_MUTEX_INTERNAL_H 1 | ||
| 21 | |||
| 22 | struct __pthread_mutex_s | ||
| 23 | { | ||
| 24 | int __lock; | ||
| 25 | unsigned int __count; | ||
| 26 | int __owner; | ||
| 27 | #if _MIPS_SIM == _ABI64 | ||
| 28 | unsigned int __nusers; | ||
| 29 | #endif | ||
| 30 | /* KIND must stay at this position in the structure to maintain | ||
| 31 | binary compatibility with static initializers. */ | ||
| 32 | int __kind; | ||
| 33 | #if _MIPS_SIM == _ABI64 | ||
| 34 | int __spins; | ||
| 35 | __pthread_list_t __list; | ||
| 36 | # define __PTHREAD_MUTEX_HAVE_PREV 1 | ||
| 37 | #else | ||
| 38 | unsigned int __nusers; | ||
| 39 | __extension__ union | ||
| 40 | { | ||
| 41 | int __spins; | ||
| 42 | __pthread_slist_t __list; | ||
| 43 | }; | ||
| 44 | # define __PTHREAD_MUTEX_HAVE_PREV 0 | ||
| 45 | #endif | ||
| 46 | }; | ||
| 47 | |||
| 48 | #if _MIPS_SIM == _ABI64 | ||
| 49 | # define __PTHREAD_MUTEX_INITIALIZER(__kind) \ | ||
| 50 | 0, 0, 0, 0, __kind, 0, { 0, 0 } | ||
| 51 | #else | ||
| 52 | # define __PTHREAD_MUTEX_INITIALIZER(__kind) \ | ||
| 53 | 0, 0, 0, __kind, 0, { 0 } | ||
| 54 | #endif | ||
| 55 | |||
| 56 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabihf/bits/struct_rwlock.h deleted-71| ... | @@ -1,71 +0,0 @@ | ||
| 1 | /* MIPS internal rwlock struct definitions. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <http://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _RWLOCK_INTERNAL_H | ||
| 20 | #define _RWLOCK_INTERNAL_H | ||
| 21 | |||
| 22 | struct __pthread_rwlock_arch_t | ||
| 23 | { | ||
| 24 | unsigned int __readers; | ||
| 25 | unsigned int __writers; | ||
| 26 | unsigned int __wrphase_futex; | ||
| 27 | unsigned int __writers_futex; | ||
| 28 | unsigned int __pad3; | ||
| 29 | unsigned int __pad4; | ||
| 30 | #if _MIPS_SIM == _ABI64 | ||
| 31 | int __cur_writer; | ||
| 32 | int __shared; | ||
| 33 | unsigned long int __pad1; | ||
| 34 | unsigned long int __pad2; | ||
| 35 | /* FLAGS must stay at this position in the structure to maintain | ||
| 36 | binary compatibility. */ | ||
| 37 | unsigned int __flags; | ||
| 38 | # else | ||
| 39 | # if __BYTE_ORDER == __BIG_ENDIAN | ||
| 40 | unsigned char __pad1; | ||
| 41 | unsigned char __pad2; | ||
| 42 | unsigned char __shared; | ||
| 43 | /* FLAGS must stay at this position in the structure to maintain | ||
| 44 | binary compatibility. */ | ||
| 45 | unsigned char __flags; | ||
| 46 | # else | ||
| 47 | /* FLAGS must stay at this position in the structure to maintain | ||
| 48 | binary compatibility. */ | ||
| 49 | unsigned char __flags; | ||
| 50 | unsigned char __shared; | ||
| 51 | unsigned char __pad1; | ||
| 52 | unsigned char __pad2; | ||
| 53 | # endif | ||
| 54 | int __cur_writer; | ||
| 55 | #endif | ||
| 56 | }; | ||
| 57 | |||
| 58 | #if _MIPS_SIM == _ABI64 | ||
| 59 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 60 | 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags | ||
| 61 | #else | ||
| 62 | # if __BYTE_ORDER == __BIG_ENDIAN | ||
| 63 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 64 | 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0 | ||
| 65 | # else | ||
| 66 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 67 | 0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0 | ||
| 68 | # endif | ||
| 69 | #endif | ||
| 70 | |||
| 71 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabihf/bits/termios-c_cc.h deleted-43| ... | @@ -1,43 +0,0 @@ | ||
| 1 | /* termios c_cc symbolic constant definitions. Linux/mips version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-c_cc.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* c_cc characters */ | ||
| 24 | #define VINTR		0	/* Interrupt character [ISIG]. */ | ||
| 25 | #define VQUIT		1	/* Quit character [ISIG]. */ | ||
| 26 | #define VERASE		2	/* Erase character [ICANON]. */ | ||
| 27 | #define VKILL		3	/* Kill-line character [ICANON]. */ | ||
| 28 | #define VMIN		4	/* Minimum number of bytes read at once [!ICANON]. */ | ||
| 29 | #define VTIME		5	/* Time-out value (tenths of a second) [!ICANON]. */ | ||
| 30 | #define VEOL2		6	/* Second EOL character [ICANON]. */ | ||
| 31 | #define VSWTC		7 | ||
| 32 | #define VSWTCH		VSWTC | ||
| 33 | #define VSTART		8	/* Start (X-ON) character [IXON, IXOFF]. */ | ||
| 34 | #define VSTOP		9	/* Stop (X-OFF) character [IXON, IXOFF]. */ | ||
| 35 | #define VSUSP		10	/* Suspend character [ISIG]. */ | ||
| 36 | 				/* VDSUSP is not supported on Linux. */ | ||
| 37 | /* #define VDSUSP	11	/ * Delayed suspend character [ISIG]. */ | ||
| 38 | #define VREPRINT	12	/* Reprint-line character [ICANON]. */ | ||
| 39 | #define VDISCARD	13	/* Discard character [IEXTEN]. */ | ||
| 40 | #define VWERASE		14	/* Word-erase character [ICANON]. */ | ||
| 41 | #define VLNEXT		15	/* Literal-next character [IEXTEN]. */ | ||
| 42 | #define VEOF		16	/* End-of-file character [ICANON]. */ | ||
| 43 | #define VEOL		17	/* End-of-line character [ICANON]. */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabihf/bits/termios-c_lflag.h deleted-46| ... | @@ -1,46 +0,0 @@ | ||
| 1 | /* termios local mode definitions. Linux/mips version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-c_lflag.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* c_lflag bits */ | ||
| 24 | #define ISIG	0000001		/* Enable signals. */ | ||
| 25 | #define ICANON	0000002		/* Do erase and kill processing. */ | ||
| 26 | #if defined __USE_MISC || (defined __USE_XOPEN && !defined __USE_XOPEN2K) | ||
| 27 | # define XCASE	0000004 | ||
| 28 | #endif | ||
| 29 | #define ECHO	0000010		/* Enable echo. */ | ||
| 30 | #define ECHOE	0000020		/* Visual erase for ERASE. */ | ||
| 31 | #define ECHOK	0000040		/* Echo NL after KILL. */ | ||
| 32 | #define ECHONL	0000100		/* Echo NL even if ECHO is off. */ | ||
| 33 | #define NOFLSH	0000200		/* Disable flush after interrupt. */ | ||
| 34 | #define IEXTEN	0000400		/* Enable DISCARD and LNEXT. */ | ||
| 35 | #ifdef __USE_MISC | ||
| 36 | # define ECHOCTL 0001000	/* Echo control characters as ^X. */ | ||
| 37 | # define ECHOPRT 0002000	/* Hardcopy visual erase. */ | ||
| 38 | # define ECHOKE	 0004000	/* Visual erase for KILL. */ | ||
| 39 | # define FLUSHO	0020000 | ||
| 40 | # define PENDIN	0040000		/* Retype pending input (state). */ | ||
| 41 | #endif | ||
| 42 | #define TOSTOP	0100000		/* Send SIGTTOU for background output. */ | ||
| 43 | #define ITOSTOP	TOSTOP | ||
| 44 | #ifdef __USE_MISC | ||
| 45 | # define EXTPROC 0200000 | ||
| 46 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabihf/bits/termios-struct.h deleted-34| ... | @@ -1,34 +0,0 @@ | ||
| 1 | /* struct termios definition. Linux/mips version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-struct.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #define NCCS 32 | ||
| 24 | struct termios | ||
| 25 | { | ||
| 26 | tcflag_t c_iflag;		/* input mode flags */ | ||
| 27 | tcflag_t c_oflag;		/* output mode flags */ | ||
| 28 | tcflag_t c_cflag;		/* control mode flags */ | ||
| 29 | tcflag_t c_lflag;		/* local mode flags */ | ||
| 30 | cc_t c_line;		/* line discipline */ | ||
| 31 | cc_t c_cc[NCCS];		/* control characters */ | ||
| 32 | #define _HAVE_STRUCT_TERMIOS_C_ISPEED 0 | ||
| 33 | #define _HAVE_STRUCT_TERMIOS_C_OSPEED 0 | ||
| 34 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabihf/bits/termios-tcflow.h deleted-26| ... | @@ -1,26 +0,0 @@ | ||
| 1 | /* termios local mode definitions. Linux/mips version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-tcflow.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* tcsetattr uses these */ | ||
| 24 | #define	TCSANOW		0x540e	/* Same as TCSETS; change immediately. */ | ||
| 25 | #define	TCSADRAIN	0x540f	/* Same as TCSETSW; change when pending output is written. */ | ||
| 26 | #define	TCSAFLUSH	0x5410	/* Same as TCSETSF; flush pending input before changing. */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabihf/bits/timerfd.h deleted-29| ... | @@ -1,29 +0,0 @@ | ||
| 1 | /* Copyright (C) 2008-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_SYS_TIMERFD_H | ||
| 19 | # error "Never use <bits/timerfd.h> directly; include <sys/timerfd.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Bits to be set in the FLAGS parameter of `timerfd_create'. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | TFD_CLOEXEC = 02000000, | ||
| 26 | #define TFD_CLOEXEC TFD_CLOEXEC | ||
| 27 | TFD_NONBLOCK = 00000200 | ||
| 28 | #define TFD_NONBLOCK TFD_NONBLOCK | ||
| 29 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabihf/bits/types/stack_t.h deleted-33| ... | @@ -1,33 +0,0 @@ | ||
| 1 | /* Define stack_t. MIPS Linux version. | ||
| 2 | Copyright (C) 1998-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef __stack_t_defined | ||
| 20 | #define __stack_t_defined 1 | ||
| 21 | |||
| 22 | #define __need_size_t | ||
| 23 | #include <stddef.h> | ||
| 24 | |||
| 25 | /* Structure describing a signal stack. */ | ||
| 26 | typedef struct | ||
| 27 | { | ||
| 28 | void *ss_sp; | ||
| 29 | size_t ss_size; | ||
| 30 | int ss_flags; | ||
| 31 | } stack_t; | ||
| 32 | |||
| 33 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabihf/bits/types/struct_msqid_ds.h deleted-62| ... | @@ -1,62 +0,0 @@ | ||
| 1 | /* Linux/MIPS implementation of the SysV message struct msqid_ds. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_MSG_H | ||
| 20 | # error "Never use <bits/msq.h> directly; include <sys/msg.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <bits/types/time_t.h> | ||
| 24 | |||
| 25 | /* Structure of record for one message inside the kernel. | ||
| 26 | The type `struct msg' is opaque. */ | ||
| 27 | struct msqid_ds | ||
| 28 | { | ||
| 29 | #ifdef __USE_TIME64_REDIRECTS | ||
| 30 | # include <bits/types/struct_msqid64_ds_helper.h> | ||
| 31 | #else | ||
| 32 | struct ipc_perm msg_perm;	/* structure describing operation permission */ | ||
| 33 | # if __TIMESIZE == 32 | ||
| 34 | # ifdef __MIPSEL__ | ||
| 35 | __time_t msg_stime;		/* time of last msgsnd command */ | ||
| 36 | unsigned long int __msg_stime_high; | ||
| 37 | __time_t msg_rtime;		/* time of last msgsnd command */ | ||
| 38 | unsigned long int __msg_rtime_high; | ||
| 39 | __time_t msg_ctime;		/* time of last change */ | ||
| 40 | unsigned long int __msg_ctime_high; | ||
| 41 | # else | ||
| 42 | unsigned long int __msg_stime_high; | ||
| 43 | __time_t msg_stime;		/* time of last msgsnd command */ | ||
| 44 | unsigned long int __msg_rtime_high; | ||
| 45 | __time_t msg_rtime;		/* time of last msgsnd command */ | ||
| 46 | unsigned long int __msg_ctime_high; | ||
| 47 | __time_t msg_ctime;		/* time of last change */ | ||
| 48 | # endif | ||
| 49 | # else | ||
| 50 | __time_t msg_stime;		/* time of last msgsnd command */ | ||
| 51 | __time_t msg_rtime;		/* time of last msgsnd command */ | ||
| 52 | __time_t msg_ctime;		/* time of last change */ | ||
| 53 | # endif | ||
| 54 | __syscall_ulong_t __msg_cbytes; /* current number of bytes on queue */ | ||
| 55 | msgqnum_t msg_qnum;		/* number of messages currently on queue */ | ||
| 56 | msglen_t msg_qbytes;		/* max number of bytes allowed on queue */ | ||
| 57 | __pid_t msg_lspid;		/* pid of last msgsnd() */ | ||
| 58 | __pid_t msg_lrpid;		/* pid of last msgrcv() */ | ||
| 59 | __syscall_ulong_t __glibc_reserved4; | ||
| 60 | __syscall_ulong_t __glibc_reserved5; | ||
| 61 | #endif | ||
| 62 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabihf/bits/types/struct_semid_ds.h deleted-36| ... | @@ -1,36 +0,0 @@ | ||
| 1 | /* MIPS implementation of the semaphore struct semid_ds | ||
| 2 | Copyright (C) 1995-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SEM_H | ||
| 20 | # error "Never include <bits/types/struct_semid_ds.h> directly; use <sys/sem.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Data structure describing a set of semaphores. */ | ||
| 24 | struct semid_ds | ||
| 25 | { | ||
| 26 | #ifdef __USE_TIME64_REDIRECTS | ||
| 27 | # include <bits/types/struct_semid64_ds_helper.h> | ||
| 28 | #else | ||
| 29 | struct ipc_perm sem_perm;		/* operation permission struct */ | ||
| 30 | __time_t sem_otime;	/* last semop() time */ | ||
| 31 | __time_t sem_ctime;	/* last time changed by semctl() */ | ||
| 32 | __syscall_ulong_t sem_nsems;		/* number of semaphores in set */ | ||
| 33 | __syscall_ulong_t __sem_otime_high; | ||
| 34 | __syscall_ulong_t __sem_ctime_high; | ||
| 35 | #endif | ||
| 36 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabihf/bits/types/struct_shmid_ds.h deleted-53| ... | @@ -1,53 +0,0 @@ | ||
| 1 | /* Linux/MIPS implementation of the shared memory struct shmid_ds. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SHM_H | ||
| 20 | # error "Never include <bits/types/struct_shmid_ds.h> directly; use <sys/shm.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Data structure describing a shared memory segment. */ | ||
| 24 | struct shmid_ds | ||
| 25 | { | ||
| 26 | #ifdef __USE_TIME64_REDIRECTS | ||
| 27 | # include <bits/types/struct_shmid64_ds_helper.h> | ||
| 28 | #else | ||
| 29 | struct ipc_perm shm_perm;		/* operation permission struct */ | ||
| 30 | size_t shm_segsz;			/* size of segment in bytes */ | ||
| 31 | # if __TIMESIZE == 32 | ||
| 32 | __time_t shm_atime;			/* time of last shmat() */ | ||
| 33 | __time_t shm_dtime;			/* time of last shmdt() */ | ||
| 34 | __time_t shm_ctime;			/* time of last change by shmctl() */ | ||
| 35 | # else | ||
| 36 | __time_t shm_atime;			/* time of last shmat() */ | ||
| 37 | __time_t shm_dtime;			/* time of last shmdt() */ | ||
| 38 | __time_t shm_ctime;			/* time of last change by shmctl() */ | ||
| 39 | # endif | ||
| 40 | __pid_t shm_cpid;			/* pid of creator */ | ||
| 41 | __pid_t shm_lpid;			/* pid of last shmop */ | ||
| 42 | shmatt_t shm_nattch;		/* number of current attaches */ | ||
| 43 | # if __TIMESIZE == 32 | ||
| 44 | unsigned short int __shm_atime_high; | ||
| 45 | unsigned short int __shm_dtime_high; | ||
| 46 | unsigned short int __shm_ctime_high; | ||
| 47 | unsigned short int __glibc_reserved4; | ||
| 48 | # else | ||
| 49 | __syscall_ulong_t __glibc_reserved5; | ||
| 50 | __syscall_ulong_t __glibc_reserved6; | ||
| 51 | # endif | ||
| 52 | #endif | ||
| 53 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabihf/bits/typesizes.h deleted-95| ... | @@ -1,95 +0,0 @@ | ||
| 1 | /* bits/typesizes.h -- underlying types for *_t. MIPS version. | ||
| 2 | Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_TYPES_H | ||
| 20 | # error "Never include <bits/typesizes.h> directly; use <sys/types.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef	_BITS_TYPESIZES_H | ||
| 24 | #define	_BITS_TYPESIZES_H	1 | ||
| 25 | |||
| 26 | /* See <bits/types.h> for the meaning of these macros. This file exists so | ||
| 27 | that <bits/types.h> need not vary across different GNU platforms. */ | ||
| 28 | |||
| 29 | #define __DEV_T_TYPE		__UQUAD_TYPE | ||
| 30 | #define __UID_T_TYPE		__U32_TYPE | ||
| 31 | #define __GID_T_TYPE		__U32_TYPE | ||
| 32 | #define __INO_T_TYPE		__ULONGWORD_TYPE | ||
| 33 | #define __INO64_T_TYPE		__UQUAD_TYPE | ||
| 34 | #define __MODE_T_TYPE		__U32_TYPE | ||
| 35 | #define __NLINK_T_TYPE		__UWORD_TYPE | ||
| 36 | #define __OFF_T_TYPE		__SLONGWORD_TYPE | ||
| 37 | #define __OFF64_T_TYPE		__SQUAD_TYPE | ||
| 38 | #define __PID_T_TYPE		__S32_TYPE | ||
| 39 | #define __RLIM_T_TYPE		__ULONGWORD_TYPE | ||
| 40 | #define __RLIM64_T_TYPE		__UQUAD_TYPE | ||
| 41 | #define	__BLKCNT_T_TYPE		__SLONGWORD_TYPE | ||
| 42 | #define	__BLKCNT64_T_TYPE	__SQUAD_TYPE | ||
| 43 | #define	__FSBLKCNT_T_TYPE	__ULONGWORD_TYPE | ||
| 44 | #define	__FSBLKCNT64_T_TYPE	__UQUAD_TYPE | ||
| 45 | #define	__FSFILCNT_T_TYPE	__ULONGWORD_TYPE | ||
| 46 | #define	__FSFILCNT64_T_TYPE	__UQUAD_TYPE | ||
| 47 | #define	__FSWORD_T_TYPE		__SWORD_TYPE | ||
| 48 | #define	__ID_T_TYPE		__U32_TYPE | ||
| 49 | #define __CLOCK_T_TYPE		__SLONGWORD_TYPE | ||
| 50 | #define __TIME_T_TYPE		__SLONGWORD_TYPE | ||
| 51 | #define __USECONDS_T_TYPE	__U32_TYPE | ||
| 52 | #define __SUSECONDS_T_TYPE	__SLONGWORD_TYPE | ||
| 53 | #define __SUSECONDS64_T_TYPE	__SQUAD_TYPE | ||
| 54 | #define __DADDR_T_TYPE		__S32_TYPE | ||
| 55 | #define __KEY_T_TYPE		__S32_TYPE | ||
| 56 | #define __CLOCKID_T_TYPE	__S32_TYPE | ||
| 57 | #define __TIMER_T_TYPE		void * | ||
| 58 | #define __BLKSIZE_T_TYPE	__SLONGWORD_TYPE | ||
| 59 | #define __FSID_T_TYPE		struct { int __val[2]; } | ||
| 60 | #define __SSIZE_T_TYPE		__SWORD_TYPE | ||
| 61 | #define __SYSCALL_SLONG_TYPE	__SLONGWORD_TYPE | ||
| 62 | #define __SYSCALL_ULONG_TYPE	__ULONGWORD_TYPE | ||
| 63 | #define __CPU_MASK_TYPE 	__ULONGWORD_TYPE | ||
| 64 | |||
| 65 | #ifdef __LP64__ | ||
| 66 | /* Tell the libc code that off_t and off64_t are actually the same type | ||
| 67 | for all ABI purposes, even if possibly expressed as different base types | ||
| 68 | for C type-checking purposes. */ | ||
| 69 | # define __OFF_T_MATCHES_OFF64_T	1 | ||
| 70 | |||
| 71 | /* Same for ino_t and ino64_t. */ | ||
| 72 | # define __INO_T_MATCHES_INO64_T	1 | ||
| 73 | |||
| 74 | /* And for rlim_t and rlim64_t. */ | ||
| 75 | # define __RLIM_T_MATCHES_RLIM64_T	1 | ||
| 76 | |||
| 77 | /* And for fsblkcnt_t, fsblkcnt64_t, fsfilcnt_t and fsfilcnt64_t. */ | ||
| 78 | # define __STATFS_MATCHES_STATFS64 1 | ||
| 79 | |||
| 80 | /* And for getitimer, setitimer and rusage */ | ||
| 81 | # define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 1 | ||
| 82 | #else | ||
| 83 | # define __RLIM_T_MATCHES_RLIM64_T	0 | ||
| 84 | |||
| 85 | # define __STATFS_MATCHES_STATFS64 0 | ||
| 86 | |||
| 87 | /* And for getitimer, setitimer and rusage */ | ||
| 88 | # define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 0 | ||
| 89 | #endif | ||
| 90 | |||
| 91 | /* Number of descriptors that can fit in an `fd_set'. */ | ||
| 92 | #define	__FD_SETSIZE		1024 | ||
| 93 | |||
| 94 | |||
| 95 | #endif /* bits/typesizes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips-linux-gnueabihf/ieee754.h deleted-326| ... | @@ -1,326 +0,0 @@ | ||
| 1 | /* Copyright (C) 1992-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _IEEE754_H | ||
| 19 | #define _IEEE754_H 1 | ||
| 20 | |||
| 21 | #include <features.h> | ||
| 22 | |||
| 23 | #include <bits/endian.h> | ||
| 24 | |||
| 25 | #ifndef __LDBL_MANT_DIG__ | ||
| 26 | # include <float.h> | ||
| 27 | # define __LDBL_MANT_DIG__ LDBL_MANT_DIG | ||
| 28 | #endif | ||
| 29 | |||
| 30 | __BEGIN_DECLS | ||
| 31 | |||
| 32 | union ieee754_float | ||
| 33 | { | ||
| 34 | float f; | ||
| 35 | |||
| 36 | /* This is the IEEE 754 single-precision format. */ | ||
| 37 | struct | ||
| 38 | { | ||
| 39 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 40 | 	unsigned int negative:1; | ||
| 41 | 	unsigned int exponent:8; | ||
| 42 | 	unsigned int mantissa:23; | ||
| 43 | #endif				/* Big endian. */ | ||
| 44 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 45 | 	unsigned int mantissa:23; | ||
| 46 | 	unsigned int exponent:8; | ||
| 47 | 	unsigned int negative:1; | ||
| 48 | #endif				/* Little endian. */ | ||
| 49 | } ieee; | ||
| 50 | |||
| 51 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 52 | struct | ||
| 53 | { | ||
| 54 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 55 | 	unsigned int negative:1; | ||
| 56 | 	unsigned int exponent:8; | ||
| 57 | 	unsigned int quiet_nan:1; | ||
| 58 | 	unsigned int mantissa:22; | ||
| 59 | #endif				/* Big endian. */ | ||
| 60 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 61 | 	unsigned int mantissa:22; | ||
| 62 | 	unsigned int quiet_nan:1; | ||
| 63 | 	unsigned int exponent:8; | ||
| 64 | 	unsigned int negative:1; | ||
| 65 | #endif				/* Little endian. */ | ||
| 66 | } ieee_nan; | ||
| 67 | }; | ||
| 68 | |||
| 69 | #define IEEE754_FLOAT_BIAS	0x7f /* Added to exponent. */ | ||
| 70 | |||
| 71 | |||
| 72 | union ieee754_double | ||
| 73 | { | ||
| 74 | double d; | ||
| 75 | |||
| 76 | /* This is the IEEE 754 double-precision format. */ | ||
| 77 | struct | ||
| 78 | { | ||
| 79 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 80 | 	unsigned int negative:1; | ||
| 81 | 	unsigned int exponent:11; | ||
| 82 | 	/* Together these comprise the mantissa. */ | ||
| 83 | 	unsigned int mantissa0:20; | ||
| 84 | 	unsigned int mantissa1:32; | ||
| 85 | #endif				/* Big endian. */ | ||
| 86 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 87 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 88 | 	unsigned int mantissa0:20; | ||
| 89 | 	unsigned int exponent:11; | ||
| 90 | 	unsigned int negative:1; | ||
| 91 | 	unsigned int mantissa1:32; | ||
| 92 | # else | ||
| 93 | 	/* Together these comprise the mantissa. */ | ||
| 94 | 	unsigned int mantissa1:32; | ||
| 95 | 	unsigned int mantissa0:20; | ||
| 96 | 	unsigned int exponent:11; | ||
| 97 | 	unsigned int negative:1; | ||
| 98 | # endif | ||
| 99 | #endif				/* Little endian. */ | ||
| 100 | } ieee; | ||
| 101 | |||
| 102 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 103 | struct | ||
| 104 | { | ||
| 105 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 106 | 	unsigned int negative:1; | ||
| 107 | 	unsigned int exponent:11; | ||
| 108 | 	unsigned int quiet_nan:1; | ||
| 109 | 	/* Together these comprise the mantissa. */ | ||
| 110 | 	unsigned int mantissa0:19; | ||
| 111 | 	unsigned int mantissa1:32; | ||
| 112 | #else | ||
| 113 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 114 | 	unsigned int mantissa0:19; | ||
| 115 | 	unsigned int quiet_nan:1; | ||
| 116 | 	unsigned int exponent:11; | ||
| 117 | 	unsigned int negative:1; | ||
| 118 | 	unsigned int mantissa1:32; | ||
| 119 | # else | ||
| 120 | 	/* Together these comprise the mantissa. */ | ||
| 121 | 	unsigned int mantissa1:32; | ||
| 122 | 	unsigned int mantissa0:19; | ||
| 123 | 	unsigned int quiet_nan:1; | ||
| 124 | 	unsigned int exponent:11; | ||
| 125 | 	unsigned int negative:1; | ||
| 126 | # endif | ||
| 127 | #endif | ||
| 128 | } ieee_nan; | ||
| 129 | }; | ||
| 130 | |||
| 131 | #define IEEE754_DOUBLE_BIAS	0x3ff /* Added to exponent. */ | ||
| 132 | |||
| 133 | #if __LDBL_MANT_DIG__ == 113 | ||
| 134 | |||
| 135 | union ieee854_long_double | ||
| 136 | { | ||
| 137 | long double d; | ||
| 138 | |||
| 139 | /* This is the IEEE 854 quad-precision format. */ | ||
| 140 | struct | ||
| 141 | { | ||
| 142 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 143 | 	unsigned int negative:1; | ||
| 144 | 	unsigned int exponent:15; | ||
| 145 | 	/* Together these comprise the mantissa. */ | ||
| 146 | 	unsigned int mantissa0:16; | ||
| 147 | 	unsigned int mantissa1:32; | ||
| 148 | 	unsigned int mantissa2:32; | ||
| 149 | 	unsigned int mantissa3:32; | ||
| 150 | #endif				/* Big endian. */ | ||
| 151 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 152 | 	/* Together these comprise the mantissa. */ | ||
| 153 | 	unsigned int mantissa3:32; | ||
| 154 | 	unsigned int mantissa2:32; | ||
| 155 | 	unsigned int mantissa1:32; | ||
| 156 | 	unsigned int mantissa0:16; | ||
| 157 | 	unsigned int exponent:15; | ||
| 158 | 	unsigned int negative:1; | ||
| 159 | #endif				/* Little endian. */ | ||
| 160 | } ieee; | ||
| 161 | |||
| 162 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 163 | struct | ||
| 164 | { | ||
| 165 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 166 | 	unsigned int negative:1; | ||
| 167 | 	unsigned int exponent:15; | ||
| 168 | 	unsigned int quiet_nan:1; | ||
| 169 | 	/* Together these comprise the mantissa. */ | ||
| 170 | 	unsigned int mantissa0:15; | ||
| 171 | 	unsigned int mantissa1:32; | ||
| 172 | 	unsigned int mantissa2:32; | ||
| 173 | 	unsigned int mantissa3:32; | ||
| 174 | #endif				/* Big endian. */ | ||
| 175 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 176 | 	/* Together these comprise the mantissa. */ | ||
| 177 | 	unsigned int mantissa3:32; | ||
| 178 | 	unsigned int mantissa2:32; | ||
| 179 | 	unsigned int mantissa1:32; | ||
| 180 | 	unsigned int mantissa0:15; | ||
| 181 | 	unsigned int quiet_nan:1; | ||
| 182 | 	unsigned int exponent:15; | ||
| 183 | 	unsigned int negative:1; | ||
| 184 | #endif				/* Little endian. */ | ||
| 185 | } ieee_nan; | ||
| 186 | }; | ||
| 187 | |||
| 188 | #define IEEE854_LONG_DOUBLE_BIAS 0x3fff /* Added to exponent. */ | ||
| 189 | |||
| 190 | #elif __LDBL_MANT_DIG__ == 64 | ||
| 191 | |||
| 192 | union ieee854_long_double | ||
| 193 | { | ||
| 194 | long double d; | ||
| 195 | |||
| 196 | /* This is the IEEE 854 double-extended-precision format. */ | ||
| 197 | struct | ||
| 198 | { | ||
| 199 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 200 | 	unsigned int negative:1; | ||
| 201 | 	unsigned int exponent:15; | ||
| 202 | 	unsigned int empty:16; | ||
| 203 | 	unsigned int mantissa0:32; | ||
| 204 | 	unsigned int mantissa1:32; | ||
| 205 | #endif | ||
| 206 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 207 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 208 | 	unsigned int exponent:15; | ||
| 209 | 	unsigned int negative:1; | ||
| 210 | 	unsigned int empty:16; | ||
| 211 | 	unsigned int mantissa0:32; | ||
| 212 | 	unsigned int mantissa1:32; | ||
| 213 | # else | ||
| 214 | 	unsigned int mantissa1:32; | ||
| 215 | 	unsigned int mantissa0:32; | ||
| 216 | 	unsigned int exponent:15; | ||
| 217 | 	unsigned int negative:1; | ||
| 218 | 	unsigned int empty:16; | ||
| 219 | # endif | ||
| 220 | #endif | ||
| 221 | } ieee; | ||
| 222 | |||
| 223 | /* This is for NaNs in the IEEE 854 double-extended-precision format. */ | ||
| 224 | struct | ||
| 225 | { | ||
| 226 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 227 | 	unsigned int negative:1; | ||
| 228 | 	unsigned int exponent:15; | ||
| 229 | 	unsigned int empty:16; | ||
| 230 | 	unsigned int one:1; | ||
| 231 | 	unsigned int quiet_nan:1; | ||
| 232 | 	unsigned int mantissa0:30; | ||
| 233 | 	unsigned int mantissa1:32; | ||
| 234 | #endif | ||
| 235 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 236 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 237 | 	unsigned int exponent:15; | ||
| 238 | 	unsigned int negative:1; | ||
| 239 | 	unsigned int empty:16; | ||
| 240 | 	unsigned int mantissa0:30; | ||
| 241 | 	unsigned int quiet_nan:1; | ||
| 242 | 	unsigned int one:1; | ||
| 243 | 	unsigned int mantissa1:32; | ||
| 244 | # else | ||
| 245 | 	unsigned int mantissa1:32; | ||
| 246 | 	unsigned int mantissa0:30; | ||
| 247 | 	unsigned int quiet_nan:1; | ||
| 248 | 	unsigned int one:1; | ||
| 249 | 	unsigned int exponent:15; | ||
| 250 | 	unsigned int negative:1; | ||
| 251 | 	unsigned int empty:16; | ||
| 252 | # endif | ||
| 253 | #endif | ||
| 254 | } ieee_nan; | ||
| 255 | }; | ||
| 256 | |||
| 257 | #define IEEE854_LONG_DOUBLE_BIAS 0x3fff | ||
| 258 | |||
| 259 | #elif __LDBL_MANT_DIG__ == 53 | ||
| 260 | |||
| 261 | union ieee854_long_double | ||
| 262 | { | ||
| 263 | long double d; | ||
| 264 | |||
| 265 | /* This is the IEEE 754 double-precision format. */ | ||
| 266 | struct | ||
| 267 | { | ||
| 268 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 269 | 	unsigned int negative:1; | ||
| 270 | 	unsigned int exponent:11; | ||
| 271 | 	/* Together these comprise the mantissa. */ | ||
| 272 | 	unsigned int mantissa0:20; | ||
| 273 | 	unsigned int mantissa1:32; | ||
| 274 | #endif				/* Big endian. */ | ||
| 275 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 276 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 277 | 	unsigned int mantissa0:20; | ||
| 278 | 	unsigned int exponent:11; | ||
| 279 | 	unsigned int negative:1; | ||
| 280 | 	unsigned int mantissa1:32; | ||
| 281 | # else | ||
| 282 | 	/* Together these comprise the mantissa. */ | ||
| 283 | 	unsigned int mantissa1:32; | ||
| 284 | 	unsigned int mantissa0:20; | ||
| 285 | 	unsigned int exponent:11; | ||
| 286 | 	unsigned int negative:1; | ||
| 287 | # endif | ||
| 288 | #endif				/* Little endian. */ | ||
| 289 | } ieee; | ||
| 290 | |||
| 291 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 292 | struct | ||
| 293 | { | ||
| 294 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 295 | 	unsigned int negative:1; | ||
| 296 | 	unsigned int exponent:11; | ||
| 297 | 	unsigned int quiet_nan:1; | ||
| 298 | 	/* Together these comprise the mantissa. */ | ||
| 299 | 	unsigned int mantissa0:19; | ||
| 300 | 	unsigned int mantissa1:32; | ||
| 301 | #else | ||
| 302 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 303 | 	unsigned int mantissa0:19; | ||
| 304 | 	unsigned int quiet_nan:1; | ||
| 305 | 	unsigned int exponent:11; | ||
| 306 | 	unsigned int negative:1; | ||
| 307 | 	unsigned int mantissa1:32; | ||
| 308 | # else | ||
| 309 | 	/* Together these comprise the mantissa. */ | ||
| 310 | 	unsigned int mantissa1:32; | ||
| 311 | 	unsigned int mantissa0:19; | ||
| 312 | 	unsigned int quiet_nan:1; | ||
| 313 | 	unsigned int exponent:11; | ||
| 314 | 	unsigned int negative:1; | ||
| 315 | # endif | ||
| 316 | #endif | ||
| 317 | } ieee_nan; | ||
| 318 | }; | ||
| 319 | |||
| 320 | #define IEEE854_LONG_DOUBLE_BIAS	0x3ff /* Added to exponent. */ | ||
| 321 | |||
| 322 | #endif /* __LDBL_MANT_DIG__ == 53 */ | ||
| 323 | |||
| 324 | __END_DECLS | ||
| 325 | |||
| 326 | #endif /* ieee754.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips-netbsd-eabihf/float.h deleted-3| ... | @@ -1,3 +0,0 @@ | ||
| 1 | /*	$NetBSD: float.h,v 1.1 2002/03/07 14:44:00 simonb Exp $	*/ | ||
| 2 | |||
| 3 | #include <mips/float.h> | ||
| \ No newline at end of file | |||
lib/libc/include/mips-netbsd-eabihf/machine/ansi.h deleted-3| ... | @@ -1,3 +0,0 @@ | ||
| 1 | /*	$NetBSD: ansi.h,v 1.1 2002/03/07 14:43:59 simonb Exp $	*/ | ||
| 2 | |||
| 3 | #include <mips/ansi.h> | ||
| \ No newline at end of file | |||
lib/libc/include/mips-netbsd-eabihf/machine/asm.h deleted-3| ... | @@ -1,3 +0,0 @@ | ||
| 1 | /*	$NetBSD: asm.h,v 1.1 2002/03/07 14:43:59 simonb Exp $	*/ | ||
| 2 | |||
| 3 | #include <mips/asm.h> | ||
| \ No newline at end of file | |||
lib/libc/include/mips-netbsd-eabihf/machine/bswap.h deleted-3| ... | @@ -1,3 +0,0 @@ | ||
| 1 | /*	$NetBSD: bswap.h,v 1.1 2002/03/07 14:43:59 simonb Exp $	*/ | ||
| 2 | |||
| 3 | #include <mips/bswap.h> | ||
| \ No newline at end of file | |||
lib/libc/include/mips-netbsd-eabihf/machine/cdefs.h deleted-3| ... | @@ -1,3 +0,0 @@ | ||
| 1 | /*	$NetBSD: cdefs.h,v 1.1 2002/03/07 14:43:59 simonb Exp $	*/ | ||
| 2 | |||
| 3 | #include <mips/cdefs.h> | ||
| \ No newline at end of file | |||
lib/libc/include/mips-netbsd-eabihf/machine/cpu.h deleted-3| ... | @@ -1,3 +0,0 @@ | ||
| 1 | /*	$NetBSD: cpu.h,v 1.1 2002/03/07 14:43:59 simonb Exp $	*/ | ||
| 2 | |||
| 3 | #include <mips/cpu.h> | ||
| \ No newline at end of file | |||
lib/libc/include/mips-netbsd-eabihf/machine/disklabel.h deleted-214| ... | @@ -1,214 +0,0 @@ | ||
| 1 | /*	$NetBSD: disklabel.h,v 1.6 2017/07/24 10:04:09 mrg Exp $	*/ | ||
| 2 | |||
| 3 | /* | ||
| 4 | * Copyright (c) 1994 Christopher G. Demetriou | ||
| 5 | * All rights reserved. | ||
| 6 | * | ||
| 7 | * Redistribution and use in source and binary forms, with or without | ||
| 8 | * modification, are permitted provided that the following conditions | ||
| 9 | * are met: | ||
| 10 | * 1. Redistributions of source code must retain the above copyright | ||
| 11 | * notice, this list of conditions and the following disclaimer. | ||
| 12 | * 2. Redistributions in binary form must reproduce the above copyright | ||
| 13 | * notice, this list of conditions and the following disclaimer in the | ||
| 14 | * documentation and/or other materials provided with the distribution. | ||
| 15 | * 3. All advertising materials mentioning features or use of this software | ||
| 16 | * must display the following acknowledgement: | ||
| 17 | * This product includes software developed by Christopher G. Demetriou. | ||
| 18 | * 4. The name of the author may not be used to endorse or promote products | ||
| 19 | * derived from this software without specific prior written permission | ||
| 20 | * | ||
| 21 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR | ||
| 22 | * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES | ||
| 23 | * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. | ||
| 24 | * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, | ||
| 25 | * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT | ||
| 26 | * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||
| 27 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY | ||
| 28 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | ||
| 29 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF | ||
| 30 | * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||
| 31 | */ | ||
| 32 | |||
| 33 | /* | ||
| 34 | * Copyright 2000, 2001 | ||
| 35 | * Broadcom Corporation. All rights reserved. | ||
| 36 | * | ||
| 37 | * This software is furnished under license and may be used and copied only | ||
| 38 | * in accordance with the following terms and conditions. Subject to these | ||
| 39 | * conditions, you may download, copy, install, use, modify and distribute | ||
| 40 | * modified or unmodified copies of this software in source and/or binary | ||
| 41 | * form. No title or ownership is transferred hereby. | ||
| 42 | * | ||
| 43 | * 1) Any source code used, modified or distributed must reproduce and | ||
| 44 | * retain this copyright notice and list of conditions as they appear in | ||
| 45 | * the source file. | ||
| 46 | * | ||
| 47 | * 2) No right is granted to use any trade name, trademark, or logo of | ||
| 48 | * Broadcom Corporation. The "Broadcom Corporation" name may not be | ||
| 49 | * used to endorse or promote products derived from this software | ||
| 50 | * without the prior written permission of Broadcom Corporation. | ||
| 51 | * | ||
| 52 | * 3) THIS SOFTWARE IS PROVIDED "AS-IS" AND ANY EXPRESS OR IMPLIED | ||
| 53 | * WARRANTIES, INCLUDING BUT NOT LIMITED TO, ANY IMPLIED WARRANTIES OF | ||
| 54 | * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR | ||
| 55 | * NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL BROADCOM BE LIABLE | ||
| 56 | * FOR ANY DAMAGES WHATSOEVER, AND IN PARTICULAR, BROADCOM SHALL NOT BE | ||
| 57 | * LIABLE FOR DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR | ||
| 58 | * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF | ||
| 59 | * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR | ||
| 60 | * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, | ||
| 61 | * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE | ||
| 62 | * OR OTHERWISE), EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||
| 63 | */ | ||
| 64 | |||
| 65 | #ifndef _EVBMIPS_DISKLABEL_H_ | ||
| 66 | #define _EVBMIPS_DISKLABEL_H_ | ||
| 67 | |||
| 68 | #ifdef _KERNEL_OPT | ||
| 69 | #include "opt_pmon.h" | ||
| 70 | #include "opt_cputype.h" | ||
| 71 | #endif | ||
| 72 | |||
| 73 | #ifdef MIPS64_SB1 | ||
| 74 | |||
| 75 | #define LABELUSESMBR	0		/* no MBR partitionning */ | ||
| 76 | #define	LABELSECTOR	1		/* sector containing label */ | ||
| 77 | #define	LABELOFFSET	0		/* offset of label in sector */ | ||
| 78 | #define	MAXPARTITIONS	16 | ||
| 79 | #define	RAW_PART	3 | ||
| 80 | |||
| 81 | #ifdef __NetBSD__ | ||
| 82 | /* Pull in MBR partition definitions. */ | ||
| 83 | #if HAVE_NBTOOL_CONFIG_H | ||
| 84 | #include <nbinclude/sys/bootblock.h> | ||
| 85 | #else | ||
| 86 | #include <sys/bootblock.h> | ||
| 87 | #endif /* HAVE_NBTOOL_CONFIG_H */ | ||
| 88 | |||
| 89 | #ifndef __ASSEMBLER__ | ||
| 90 | #if HAVE_NBTOOL_CONFIG_H | ||
| 91 | #include <nbinclude/sys/dkbad.h> | ||
| 92 | #else | ||
| 93 | #include <sys/dkbad.h> | ||
| 94 | #endif /* HAVE_NBTOOL_CONFIG_H */ | ||
| 95 | struct cpu_disklabel { | ||
| 96 | 	struct mbr_partition mbrparts[MBR_PART_COUNT]; | ||
| 97 | #define __HAVE_DISKLABEL_DKBAD | ||
| 98 | 	struct dkbad bad; | ||
| 99 | }; | ||
| 100 | #endif | ||
| 101 | #endif | ||
| 102 | |||
| 103 | /* | ||
| 104 | * CFE boot block, modeled loosely on Alpha. | ||
| 105 | * | ||
| 106 | * It consists of: | ||
| 107 | * | ||
| 108 | * 		BSD disk label | ||
| 109 | *		<blank space> | ||
| 110 | *		Boot block info (5 uint_64s) | ||
| 111 | * | ||
| 112 | * The boot block portion looks like: | ||
| 113 | * | ||
| 114 | * | ||
| 115 | *	+-------+-------+-------+-------+-------+-------+-------+-------+ | ||
| 116 | *	| BOOT_MAGIC_NUMBER | | ||
| 117 | *	+-------+-------+-------+-------+-------+-------+-------+-------+ | ||
| 118 | *	| Flags | Reserved | Vers | Header Checksum | | ||
| 119 | *	+-------+-------+-------+-------+-------+-------+-------+-------+ | ||
| 120 | *	| Secondary Loader Location (bytes) | | ||
| 121 | *	+-------+-------+-------+-------+-------+-------+-------+-------+ | ||
| 122 | *	| Loader Checksum | Size of loader (bytes) | | ||
| 123 | *	+-------+-------+-------+-------+-------+-------+-------+-------+ | ||
| 124 | *	| Reserved | Architecture Information | | ||
| 125 | *	+-------+-------+-------+-------+-------+-------+-------+-------+ | ||
| 126 | * | ||
| 127 | * Boot block fields should always be read as 64-bit numbers. | ||
| 128 | * | ||
| 129 | */ | ||
| 130 | |||
| 131 | |||
| 132 | struct boot_block { | ||
| 133 | 	uint64_t cfe_bb_data[64];	/* data (disklabel, also as below) */ | ||
| 134 | }; | ||
| 135 | #define	cfe_bb_magic	cfe_bb_data[59]	/* magic number */ | ||
| 136 | #define	cfe_bb_hdrinfo	cfe_bb_data[60]	/* header checksum, ver, flags */ | ||
| 137 | #define	cfe_bb_secstart	cfe_bb_data[61]	/* secondary start (bytes) */ | ||
| 138 | #define	cfe_bb_secsize	cfe_bb_data[62]	/* secondary size (bytes) */ | ||
| 139 | #define	cfe_bb_archinfo	cfe_bb_data[63]	/* architecture info */ | ||
| 140 | |||
| 141 | #define	BOOT_BLOCK_OFFSET	0	/* offset of boot block. */ | ||
| 142 | #define	BOOT_BLOCK_BLOCKSIZE	512	/* block size for sec. size/start, | ||
| 143 | 					 * and for boot block itself | ||
| 144 | 					 */ | ||
| 145 | #define	BOOT_BLOCK_SIZE		40	/* 5 64-bit words */ | ||
| 146 | |||
| 147 | #define	BOOT_MAGIC_NUMBER	0x43465631424f4f54 | ||
| 148 | #define	BOOT_HDR_CHECKSUM_MASK	0x00000000FFFFFFFF | ||
| 149 | #define	BOOT_HDR_VER_MASK	0x000000FF00000000 | ||
| 150 | #define	BOOT_HDR_VER_SHIFT	32 | ||
| 151 | #define	BOOT_HDR_FLAGS_MASK	0xFF00000000000000 | ||
| 152 | #define	BOOT_SECSIZE_MASK	0x00000000FFFFFFFF | ||
| 153 | #define	BOOT_DATA_CHECKSUM_MASK 0xFFFFFFFF00000000 | ||
| 154 | #define	BOOT_DATA_CHECKSUM_SHIFT 32 | ||
| 155 | #define	BOOT_ARCHINFO_MASK	0x00000000FFFFFFFF | ||
| 156 | |||
| 157 | #define	BOOT_HDR_VERSION	1 | ||
| 158 | |||
| 159 | #define	CHECKSUM_BOOT_BLOCK(bb,cksum)					\ | ||
| 160 | 	do {								\ | ||
| 161 | 		uint32_t *_ptr = (uint32_t *) (bb);			\ | ||
| 162 | 		uint32_t _cksum;					\ | ||
| 163 | 		int _i;							\ | ||
| 164 | 									\ | ||
| 165 | 		_cksum = 0;						\ | ||
| 166 | 		for (_i = 0;						\ | ||
| 167 | 		 _i < (BOOT_BLOCK_SIZE / sizeof (uint32_t));		\ | ||
| 168 | 		 _i++)						\ | ||
| 169 | 			_cksum += _ptr[_i];				\ | ||
| 170 | 		*(cksum) = _cksum;					\ | ||
| 171 | 	} while (0) | ||
| 172 | |||
| 173 | |||
| 174 | #define	CHECKSUM_BOOT_DATA(data,len,cksum)				\ | ||
| 175 | 	do {								\ | ||
| 176 | 		uint32_t *_ptr = (uint32_t *) (data);			\ | ||
| 177 | 		uint32_t _cksum;					\ | ||
| 178 | 		int _i;							\ | ||
| 179 | 									\ | ||
| 180 | 		_cksum = 0;						\ | ||
| 181 | 		for (_i = 0;						\ | ||
| 182 | 		 _i < ((len) / sizeof (uint32_t));			\ | ||
| 183 | 		 _i++)						\ | ||
| 184 | 			_cksum += _ptr[_i];				\ | ||
| 185 | 		*(cksum) = _cksum;					\ | ||
| 186 | 	} while (0) | ||
| 187 | |||
| 188 | #else /* MIPS64_SB1 */ | ||
| 189 | |||
| 190 | #ifdef PMON | ||
| 191 | #define LABELUSESMBR	1			/* use MBR partitionning */ | ||
| 192 | #else | ||
| 193 | #define LABELUSESMBR	0			/* no MBR partitionning */ | ||
| 194 | #endif | ||
| 195 | #define	LABELSECTOR	0			/* sector containing label */ | ||
| 196 | #define	LABELOFFSET	64			/* offset of label in sector */ | ||
| 197 | #define	MAXPARTITIONS	16			/* number of partitions */ | ||
| 198 | #define	RAW_PART	2			/* raw partition: xx?c */ | ||
| 199 | |||
| 200 | #if HAVE_NBTOOL_CONFIG_H | ||
| 201 | #include <nbinclude/sys/dkbad.h> | ||
| 202 | #else | ||
| 203 | #include <sys/dkbad.h> | ||
| 204 | #endif /* HAVE_NBTOOL_CONFIG_H */ | ||
| 205 | |||
| 206 | /* Just a dummy */ | ||
| 207 | struct cpu_disklabel { | ||
| 208 | #define __HAVE_DISKLABEL_DKBAD | ||
| 209 | 	struct dkbad bad;			/* must have one element. */ | ||
| 210 | }; | ||
| 211 | |||
| 212 | #endif /* MIPS64_SB1 */ | ||
| 213 | |||
| 214 | #endif	/* !_EVBMIPS_DISKLABEL_H_ */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips-netbsd-eabihf/machine/elf_machdep.h deleted-3| ... | @@ -1,3 +0,0 @@ | ||
| 1 | /*	$NetBSD: elf_machdep.h,v 1.3 2009/12/14 00:46:02 matt Exp $	*/ | ||
| 2 | |||
| 3 | #include <mips/elf_machdep.h> | ||
| \ No newline at end of file | |||
lib/libc/include/mips-netbsd-eabihf/machine/endian.h deleted-3| ... | @@ -1,3 +0,0 @@ | ||
| 1 | /*	$NetBSD: endian.h,v 1.1 2002/03/07 14:44:00 simonb Exp $	*/ | ||
| 2 | |||
| 3 | #include <sys/endian.h> | ||
| \ No newline at end of file | |||
lib/libc/include/mips-netbsd-eabihf/machine/endian_machdep.h deleted-11| ... | @@ -1,11 +0,0 @@ | ||
| 1 | /*	$NetBSD: endian_machdep.h,v 1.1 2002/03/07 14:44:00 simonb Exp $	*/ | ||
| 2 | |||
| 3 | #if defined(__MIPSEB__) | ||
| 4 | #define	_BYTE_ORDER	_BIG_ENDIAN | ||
| 5 | #elif defined(__MIPSEL__) | ||
| 6 | #define	_BYTE_ORDER	_LITTLE_ENDIAN | ||
| 7 | #else | ||
| 8 | #error neither __MIPSEL__ nor __MIPSEB__ are defined. | ||
| 9 | #endif | ||
| 10 | |||
| 11 | #include <mips/endian_machdep.h> | ||
| \ No newline at end of file | |||
lib/libc/include/mips-netbsd-eabihf/machine/fenv.h deleted-3| ... | @@ -1,3 +0,0 @@ | ||
| 1 | /*	$NetBSD: fenv.h,v 1.1 2015/12/21 17:02:33 christos Exp $	*/ | ||
| 2 | |||
| 3 | #include <mips/fenv.h> | ||
| \ No newline at end of file | |||
lib/libc/include/mips-netbsd-eabihf/machine/float.h deleted-3| ... | @@ -1,3 +0,0 @@ | ||
| 1 | /*	$NetBSD: float.h,v 1.1 2002/03/07 14:44:00 simonb Exp $	*/ | ||
| 2 | |||
| 3 | #include <mips/float.h> | ||
| \ No newline at end of file | |||
lib/libc/include/mips-netbsd-eabihf/machine/ieee.h deleted-3| ... | @@ -1,3 +0,0 @@ | ||
| 1 | /*	$NetBSD: ieee.h,v 1.1 2002/03/07 14:44:00 simonb Exp $	*/ | ||
| 2 | |||
| 3 | #include <mips/ieee.h> | ||
| \ No newline at end of file | |||
lib/libc/include/mips-netbsd-eabihf/machine/ieeefp.h deleted-3| ... | @@ -1,3 +0,0 @@ | ||
| 1 | /*	$NetBSD: ieeefp.h,v 1.1 2002/03/07 14:44:00 simonb Exp $	*/ | ||
| 2 | |||
| 3 | #include <mips/ieeefp.h> | ||
| \ No newline at end of file | |||
lib/libc/include/mips-netbsd-eabihf/machine/int_const.h deleted-3| ... | @@ -1,3 +0,0 @@ | ||
| 1 | /*	$NetBSD: int_const.h,v 1.1 2002/03/07 14:44:00 simonb Exp $	*/ | ||
| 2 | |||
| 3 | #include <mips/int_const.h> | ||
| \ No newline at end of file | |||
lib/libc/include/mips-netbsd-eabihf/machine/int_fmtio.h deleted-3| ... | @@ -1,3 +0,0 @@ | ||
| 1 | /*	$NetBSD: int_fmtio.h,v 1.1 2002/03/07 14:44:00 simonb Exp $	*/ | ||
| 2 | |||
| 3 | #include <mips/int_fmtio.h> | ||
| \ No newline at end of file | |||
lib/libc/include/mips-netbsd-eabihf/machine/int_limits.h deleted-3| ... | @@ -1,3 +0,0 @@ | ||
| 1 | /*	$NetBSD: int_limits.h,v 1.1 2002/03/07 14:44:00 simonb Exp $	*/ | ||
| 2 | |||
| 3 | #include <mips/int_limits.h> | ||
| \ No newline at end of file | |||
lib/libc/include/mips-netbsd-eabihf/machine/int_mwgwtypes.h deleted-3| ... | @@ -1,3 +0,0 @@ | ||
| 1 | /*	$NetBSD: int_mwgwtypes.h,v 1.1 2002/03/07 14:44:00 simonb Exp $	*/ | ||
| 2 | |||
| 3 | #include <mips/int_mwgwtypes.h> | ||
| \ No newline at end of file | |||
lib/libc/include/mips-netbsd-eabihf/machine/int_types.h deleted-3| ... | @@ -1,3 +0,0 @@ | ||
| 1 | /*	$NetBSD: int_types.h,v 1.1 2002/03/07 14:44:00 simonb Exp $	*/ | ||
| 2 | |||
| 3 | #include <mips/int_types.h> | ||
| \ No newline at end of file | |||
lib/libc/include/mips-netbsd-eabihf/machine/kcore.h deleted-3| ... | @@ -1,3 +0,0 @@ | ||
| 1 | /*	$NetBSD: kcore.h,v 1.1 2002/03/07 14:44:00 simonb Exp $	*/ | ||
| 2 | |||
| 3 | #include <mips/kcore.h> | ||
| \ No newline at end of file | |||
lib/libc/include/mips-netbsd-eabihf/machine/limits.h deleted-3| ... | @@ -1,3 +0,0 @@ | ||
| 1 | /*	$NetBSD: limits.h,v 1.1 2002/03/07 14:44:00 simonb Exp $	*/ | ||
| 2 | |||
| 3 | #include <mips/limits.h> | ||
| \ No newline at end of file | |||
lib/libc/include/mips-netbsd-eabihf/machine/lock.h deleted-4| ... | @@ -1,4 +0,0 @@ | ||
| 1 | /*	$NetBSD: lock.h,v 1.1 2002/03/07 14:44:01 simonb Exp $	*/ | ||
| 2 | |||
| 3 | /* Just use the common mips definition */ | ||
| 4 | #include <mips/lock.h> | ||
| \ No newline at end of file | |||
lib/libc/include/mips-netbsd-eabihf/machine/math.h deleted-3| ... | @@ -1,3 +0,0 @@ | ||
| 1 | /*	$NetBSD: math.h,v 1.1 2002/03/07 14:44:01 simonb Exp $	*/ | ||
| 2 | |||
| 3 | #include <mips/math.h> | ||
| \ No newline at end of file | |||
lib/libc/include/mips-netbsd-eabihf/machine/mcontext.h deleted-3| ... | @@ -1,3 +0,0 @@ | ||
| 1 | /*	$NetBSD: mcontext.h,v 1.2 2003/01/17 22:47:09 thorpej Exp $	*/ | ||
| 2 | |||
| 3 | #include <mips/mcontext.h> | ||
| \ No newline at end of file | |||
lib/libc/include/mips-netbsd-eabihf/machine/mutex.h deleted-3| ... | @@ -1,3 +0,0 @@ | ||
| 1 | /*	$NetBSD: mutex.h,v 1.2 2007/02/09 21:55:03 ad Exp $	*/ | ||
| 2 | |||
| 3 | #include <mips/mutex.h> | ||
| \ No newline at end of file | |||
lib/libc/include/mips-netbsd-eabihf/machine/param.h deleted-62| ... | @@ -1,62 +0,0 @@ | ||
| 1 | /*	$NetBSD: param.h,v 1.12 2022/03/16 04:31:54 simonb Exp $	*/ | ||
| 2 | |||
| 3 | /* | ||
| 4 | * Copyright (c) 1988 University of Utah. | ||
| 5 | * Copyright (c) 1992, 1993 | ||
| 6 | *	The Regents of the University of California. All rights reserved. | ||
| 7 | * | ||
| 8 | * This code is derived from software contributed to Berkeley by | ||
| 9 | * the Systems Programming Group of the University of Utah Computer | ||
| 10 | * Science Department and Ralph Campbell. | ||
| 11 | * | ||
| 12 | * Redistribution and use in source and binary forms, with or without | ||
| 13 | * modification, are permitted provided that the following conditions | ||
| 14 | * are met: | ||
| 15 | * 1. Redistributions of source code must retain the above copyright | ||
| 16 | * notice, this list of conditions and the following disclaimer. | ||
| 17 | * 2. Redistributions in binary form must reproduce the above copyright | ||
| 18 | * notice, this list of conditions and the following disclaimer in the | ||
| 19 | * documentation and/or other materials provided with the distribution. | ||
| 20 | * 3. Neither the name of the University nor the names of its contributors | ||
| 21 | * may be used to endorse or promote products derived from this software | ||
| 22 | * without specific prior written permission. | ||
| 23 | * | ||
| 24 | * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND | ||
| 25 | * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | ||
| 26 | * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | ||
| 27 | * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE | ||
| 28 | * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||
| 29 | * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS | ||
| 30 | * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) | ||
| 31 | * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT | ||
| 32 | * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY | ||
| 33 | * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | ||
| 34 | * SUCH DAMAGE. | ||
| 35 | */ | ||
| 36 | |||
| 37 | #ifndef _EVBMIPS_PARAM_H_ | ||
| 38 | #define _EVBMIPS_PARAM_H_ | ||
| 39 | |||
| 40 | /* | ||
| 41 | * Machine dependent constants for MIPS evaluation boards. | ||
| 42 | */ | ||
| 43 | |||
| 44 | #define	_MACHINE	evbmips | ||
| 45 | #define	MACHINE		"evbmips" | ||
| 46 | |||
| 47 | #include <mips/mips_param.h> | ||
| 48 | |||
| 49 | #ifdef _KERNEL | ||
| 50 | #ifndef _LOCORE | ||
| 51 | |||
| 52 | #ifndef __HIDE_DELAY | ||
| 53 | void	delay(int n); | ||
| 54 | #define	DELAY(x)	 	delay(x) | ||
| 55 | #endif	/* __HIDE_DELAY */ | ||
| 56 | |||
| 57 | #include <machine/intr.h> | ||
| 58 | |||
| 59 | #endif	/* !_LOCORE */ | ||
| 60 | #endif	/* _KERNEL */ | ||
| 61 | |||
| 62 | #endif	/* !_EVBMIPS_PARAM_H_ */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips-netbsd-eabihf/machine/pcb.h deleted-3| ... | @@ -1,3 +0,0 @@ | ||
| 1 | /*	$NetBSD: pcb.h,v 1.1 2002/03/07 14:44:01 simonb Exp $	*/ | ||
| 2 | |||
| 3 | #include <mips/pcb.h> | ||
| \ No newline at end of file | |||
lib/libc/include/mips-netbsd-eabihf/machine/pmap.h deleted-3| ... | @@ -1,3 +0,0 @@ | ||
| 1 | /*	$NetBSD: pmap.h,v 1.1 2002/03/07 14:44:01 simonb Exp $	*/ | ||
| 2 | |||
| 3 | #include <mips/pmap.h> | ||
| \ No newline at end of file | |||
lib/libc/include/mips-netbsd-eabihf/machine/proc.h deleted-3| ... | @@ -1,3 +0,0 @@ | ||
| 1 | /*	$NetBSD: proc.h,v 1.1 2002/03/07 14:44:01 simonb Exp $	*/ | ||
| 2 | |||
| 3 | #include <mips/proc.h> | ||
| \ No newline at end of file | |||
lib/libc/include/mips-netbsd-eabihf/machine/profile.h deleted-3| ... | @@ -1,3 +0,0 @@ | ||
| 1 | /*	$NetBSD: profile.h,v 1.1 2002/03/07 14:44:01 simonb Exp $	*/ | ||
| 2 | |||
| 3 | #include <mips/profile.h> | ||
| \ No newline at end of file | |||
lib/libc/include/mips-netbsd-eabihf/machine/psl.h deleted-3| ... | @@ -1,3 +0,0 @@ | ||
| 1 | /*	$NetBSD: psl.h,v 1.1 2002/03/07 14:44:01 simonb Exp $	*/ | ||
| 2 | |||
| 3 | #include <mips/psl.h> | ||
| \ No newline at end of file | |||
lib/libc/include/mips-netbsd-eabihf/machine/pte.h deleted-3| ... | @@ -1,3 +0,0 @@ | ||
| 1 | /*	$NetBSD: pte.h,v 1.1 2002/03/07 14:44:01 simonb Exp $	*/ | ||
| 2 | |||
| 3 | #include <mips/pte.h> | ||
| \ No newline at end of file | |||
lib/libc/include/mips-netbsd-eabihf/machine/ptrace.h deleted-3| ... | @@ -1,3 +0,0 @@ | ||
| 1 | /*	$NetBSD: ptrace.h,v 1.1 2002/03/07 14:44:01 simonb Exp $	*/ | ||
| 2 | |||
| 3 | #include <mips/ptrace.h> | ||
| \ No newline at end of file | |||
lib/libc/include/mips-netbsd-eabihf/machine/reg.h deleted-3| ... | @@ -1,3 +0,0 @@ | ||
| 1 | /*	$NetBSD: reg.h,v 1.1 2002/03/07 14:44:02 simonb Exp $	*/ | ||
| 2 | |||
| 3 | #include <mips/reg.h> | ||
| \ No newline at end of file | |||
lib/libc/include/mips-netbsd-eabihf/machine/reloc.h deleted-3| ... | @@ -1,3 +0,0 @@ | ||
| 1 | /*	$NetBSD: reloc.h,v 1.1 2002/03/07 14:44:02 simonb Exp $	*/ | ||
| 2 | |||
| 3 | #include <mips/reloc.h> | ||
| \ No newline at end of file | |||
lib/libc/include/mips-netbsd-eabihf/machine/rwlock.h deleted-3| ... | @@ -1,3 +0,0 @@ | ||
| 1 | /*	$NetBSD: rwlock.h,v 1.2 2007/02/09 21:55:03 ad Exp $	*/ | ||
| 2 | |||
| 3 | #include <mips/rwlock.h> | ||
| \ No newline at end of file | |||
lib/libc/include/mips-netbsd-eabihf/machine/setjmp.h deleted-3| ... | @@ -1,3 +0,0 @@ | ||
| 1 | /*	$NetBSD: setjmp.h,v 1.1 2002/03/07 14:44:02 simonb Exp $	*/ | ||
| 2 | |||
| 3 | #include <mips/setjmp.h> | ||
| \ No newline at end of file | |||
lib/libc/include/mips-netbsd-eabihf/machine/signal.h deleted-3| ... | @@ -1,3 +0,0 @@ | ||
| 1 | /*	$NetBSD: signal.h,v 1.1 2002/03/07 14:44:02 simonb Exp $	*/ | ||
| 2 | |||
| 3 | #include <mips/signal.h> | ||
| \ No newline at end of file | |||
lib/libc/include/mips-netbsd-eabihf/machine/sljit_machdep.h deleted-3| ... | @@ -1,3 +0,0 @@ | ||
| 1 | /*	$NetBSD: sljit_machdep.h,v 1.1 2014/07/23 18:19:43 alnsn Exp $	*/ | ||
| 2 | |||
| 3 | #include <mips/sljit_machdep.h> | ||
| \ No newline at end of file | |||
lib/libc/include/mips-netbsd-eabihf/machine/trap.h deleted-3| ... | @@ -1,3 +0,0 @@ | ||
| 1 | /*	$NetBSD: trap.h,v 1.1 2002/03/07 14:44:02 simonb Exp $	*/ | ||
| 2 | |||
| 3 | #include <mips/trap.h> | ||
| \ No newline at end of file | |||
lib/libc/include/mips-netbsd-eabihf/machine/types.h deleted-13| ... | @@ -1,13 +0,0 @@ | ||
| 1 | /*	$NetBSD: types.h,v 1.10 2017/01/26 15:55:09 christos Exp $	*/ | ||
| 2 | |||
| 3 | #ifndef _EVBMIPS_TYPES_H_ | ||
| 4 | #define	_EVBMIPS_TYPES_H_ | ||
| 5 | |||
| 6 | #define	_MIPS_PADDR_T_64BIT | ||
| 7 | |||
| 8 | #include <mips/types.h> | ||
| 9 | |||
| 10 | #define	__HAVE_NEW_STYLE_BUS_H | ||
| 11 | #define	__HAVE_COMPAT_NETBSD32 | ||
| 12 | |||
| 13 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips-netbsd-eabihf/machine/vmparam.h deleted-23| ... | @@ -1,23 +0,0 @@ | ||
| 1 | /*	$NetBSD: vmparam.h,v 1.5 2014/04/19 12:48:42 matt Exp $	*/ | ||
| 2 | |||
| 3 | #ifndef _EVBMIPS_VMPARAM_H_ | ||
| 4 | #define _EVBMIPS_VMPARAM_H_ | ||
| 5 | |||
| 6 | #include <mips/vmparam.h> | ||
| 7 | |||
| 8 | #define	VM_PHYSSEG_MAX		32 | ||
| 9 | |||
| 10 | #undef VM_FREELIST_MAX | ||
| 11 | #define	VM_FREELIST_MAX		4 | ||
| 12 | #if defined(_MIPS_PADDR_T_64BIT) || defined(_LP64) | ||
| 13 | #define	VM_FREELIST_FIRST4G	3 | ||
| 14 | #endif | ||
| 15 | #if !defined(_LP64) | ||
| 16 | #define	VM_FREELIST_FIRST512M	2 | ||
| 17 | #endif /* !_LP64 */ | ||
| 18 | #define VM_FREELIST_ISADMA	1 | ||
| 19 | |||
| 20 | #define VM_FREELIST_NORMALOK_P(lcv) \ | ||
| 21 | 	((lcv) == VM_FREELIST_DEFAULT || (lcv) != mips_poolpage_vmfreelist) | ||
| 22 | |||
| 23 | #endif	/* !_EVBMIPS_VMPARAM_H_ */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips-netbsd-eabihf/machine/wchar_limits.h deleted-3| ... | @@ -1,3 +0,0 @@ | ||
| 1 | /*	$NetBSD: wchar_limits.h,v 1.2 2005/12/11 12:17:11 christos Exp $	*/ | ||
| 2 | |||
| 3 | #include <mips/wchar_limits.h> | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabi64/bits/dlfcn.h deleted-64| ... | @@ -1,64 +0,0 @@ | ||
| 1 | /* System dependent definitions for run-time dynamic loading. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _DLFCN_H | ||
| 20 | # error "Never use <bits/dlfcn.h> directly; include <dlfcn.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* The MODE argument to `dlopen' contains one of the following: */ | ||
| 24 | #define RTLD_LAZY	0x0001	/* Lazy function call binding. */ | ||
| 25 | #define RTLD_NOW	0x0002	/* Immediate function call binding. */ | ||
| 26 | #define RTLD_BINDING_MASK 0x3	/* Mask of binding time value. */ | ||
| 27 | #define RTLD_NOLOAD	0x00008	/* Do not load the object. */ | ||
| 28 | #define RTLD_DEEPBIND	0x00010	/* Use deep binding. */ | ||
| 29 | |||
| 30 | /* If the following bit is set in the MODE argument to `dlopen', | ||
| 31 | the symbols of the loaded object and its dependencies are made | ||
| 32 | visible as if the object were linked directly into the program. */ | ||
| 33 | #define RTLD_GLOBAL	0x0004 | ||
| 34 | |||
| 35 | /* Unix98 demands the following flag which is the inverse to RTLD_GLOBAL. | ||
| 36 | The implementation does this by default and so we can define the | ||
| 37 | value to zero. */ | ||
| 38 | #define RTLD_LOCAL 0 | ||
| 39 | |||
| 40 | /* Do not delete object when closed. */ | ||
| 41 | #define RTLD_NODELETE	0x01000 | ||
| 42 | |||
| 43 | #ifdef __USE_GNU | ||
| 44 | /* To support profiling of shared objects it is a good idea to call | ||
| 45 | the function found using `dlsym' using the following macro since | ||
| 46 | these calls do not use the PLT. But this would mean the dynamic | ||
| 47 | loader has no chance to find out when the function is called. The | ||
| 48 | macro applies the necessary magic so that profiling is possible. | ||
| 49 | Rewrite | ||
| 50 | 	foo = (*fctp) (arg1, arg2); | ||
| 51 | into | ||
| 52 | foo = DL_CALL_FCT (fctp, (arg1, arg2)); | ||
| 53 | */ | ||
| 54 | # define DL_CALL_FCT(fctp, args) \ | ||
| 55 | (_dl_mcount_wrapper_check ((void *) (fctp)), (*(fctp)) args) | ||
| 56 | |||
| 57 | __BEGIN_DECLS | ||
| 58 | |||
| 59 | /* This function calls the profiling functions. */ | ||
| 60 | extern void _dl_mcount_wrapper_check (void *__selfpc) __THROW; | ||
| 61 | |||
| 62 | __END_DECLS | ||
| 63 | |||
| 64 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabi64/bits/errno.h deleted-52| ... | @@ -1,52 +0,0 @@ | ||
| 1 | /* Error constants. MIPS/Linux specific version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_ERRNO_H | ||
| 20 | |||
| 21 | #if !defined _ERRNO_H | ||
| 22 | # error "Never include <bits/errno.h> directly; use <errno.h> instead." | ||
| 23 | #endif | ||
| 24 | |||
| 25 | # include <linux/errno.h> | ||
| 26 | |||
| 27 | /* Older Linux headers do not define these constants. */ | ||
| 28 | # ifndef ENOTSUP | ||
| 29 | # define ENOTSUP		EOPNOTSUPP | ||
| 30 | # endif | ||
| 31 | |||
| 32 | # ifndef ECANCELED | ||
| 33 | # define ECANCELED		158 | ||
| 34 | # endif | ||
| 35 | |||
| 36 | # ifndef EOWNERDEAD | ||
| 37 | # define EOWNERDEAD		165 | ||
| 38 | # endif | ||
| 39 | |||
| 40 | # ifndef ENOTRECOVERABLE | ||
| 41 | # define ENOTRECOVERABLE	166 | ||
| 42 | # endif | ||
| 43 | |||
| 44 | # ifndef ERFKILL | ||
| 45 | # define ERFKILL		167 | ||
| 46 | # endif | ||
| 47 | |||
| 48 | # ifndef EHWPOISON | ||
| 49 | # define EHWPOISON		168 | ||
| 50 | # endif | ||
| 51 | |||
| 52 | #endif /* bits/errno.h. */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabi64/bits/eventfd.h deleted-31| ... | @@ -1,31 +0,0 @@ | ||
| 1 | /* Copyright (C) 2007-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_SYS_EVENTFD_H | ||
| 19 | # error "Never use <bits/eventfd.h> directly; include <sys/eventfd.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Flags for eventfd. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | EFD_SEMAPHORE = 00000001, | ||
| 26 | #define EFD_SEMAPHORE EFD_SEMAPHORE | ||
| 27 | EFD_CLOEXEC = 02000000, | ||
| 28 | #define EFD_CLOEXEC EFD_CLOEXEC | ||
| 29 | EFD_NONBLOCK = 00000200 | ||
| 30 | #define EFD_NONBLOCK EFD_NONBLOCK | ||
| 31 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabi64/bits/floatn.h deleted-97| ... | @@ -1,97 +0,0 @@ | ||
| 1 | /* Macros to control TS 18661-3 glibc features on MIPS platforms. | ||
| 2 | Copyright (C) 2017-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_FLOATN_H | ||
| 20 | #define _BITS_FLOATN_H | ||
| 21 | |||
| 22 | #include <features.h> | ||
| 23 | #include <bits/long-double.h> | ||
| 24 | |||
| 25 | /* Defined to 1 if the current compiler invocation provides a | ||
| 26 | floating-point type with the IEEE 754 binary128 format, and this | ||
| 27 | glibc includes corresponding *f128 interfaces for it. */ | ||
| 28 | #ifndef __NO_LONG_DOUBLE_MATH | ||
| 29 | # define __HAVE_FLOAT128 1 | ||
| 30 | #else | ||
| 31 | /* glibc does not support _Float128 for platforms where long double is | ||
| 32 | normally binary128 when building with long double as binary64. | ||
| 33 | GCC's default for supported scalar modes does not support it either | ||
| 34 | in that case. */ | ||
| 35 | # define __HAVE_FLOAT128 0 | ||
| 36 | #endif | ||
| 37 | |||
| 38 | /* Defined to 1 if __HAVE_FLOAT128 is 1 and the type is ABI-distinct | ||
| 39 | from the default float, double and long double types in this glibc. */ | ||
| 40 | #define __HAVE_DISTINCT_FLOAT128 0 | ||
| 41 | |||
| 42 | /* Defined to 1 if the current compiler invocation provides a | ||
| 43 | floating-point type with the right format for _Float64x, and this | ||
| 44 | glibc includes corresponding *f64x interfaces for it. */ | ||
| 45 | #define __HAVE_FLOAT64X __HAVE_FLOAT128 | ||
| 46 | |||
| 47 | /* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format | ||
| 48 | of long double. Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has | ||
| 49 | the format of _Float128, which must be different from that of long | ||
| 50 | double. */ | ||
| 51 | #define __HAVE_FLOAT64X_LONG_DOUBLE __HAVE_FLOAT128 | ||
| 52 | |||
| 53 | #ifndef __ASSEMBLER__ | ||
| 54 | |||
| 55 | /* Defined to concatenate the literal suffix to be used with _Float128 | ||
| 56 | types, if __HAVE_FLOAT128 is 1. */ | ||
| 57 | # if __HAVE_FLOAT128 | ||
| 58 | # if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) | ||
| 59 | /* The literal suffix f128 exists only since GCC 7.0. */ | ||
| 60 | # define __f128(x) x##l | ||
| 61 | # else | ||
| 62 | # define __f128(x) x##f128 | ||
| 63 | # endif | ||
| 64 | # endif | ||
| 65 | |||
| 66 | /* Defined to a complex binary128 type if __HAVE_FLOAT128 is 1. */ | ||
| 67 | # if __HAVE_FLOAT128 | ||
| 68 | # if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) | ||
| 69 | # define __CFLOAT128 _Complex long double | ||
| 70 | # else | ||
| 71 | # define __CFLOAT128 _Complex _Float128 | ||
| 72 | # endif | ||
| 73 | # endif | ||
| 74 | |||
| 75 | /* The remaining of this file provides support for older compilers. */ | ||
| 76 | # if __HAVE_FLOAT128 | ||
| 77 | |||
| 78 | /* The type _Float128 exists only since GCC 7.0. */ | ||
| 79 | # if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) | ||
| 80 | typedef long double _Float128; | ||
| 81 | # endif | ||
| 82 | |||
| 83 | /* Various built-in functions do not exist before GCC 7.0. */ | ||
| 84 | # if !__GNUC_PREREQ (7, 0) | ||
| 85 | # define __builtin_huge_valf128() (__builtin_huge_vall ()) | ||
| 86 | # define __builtin_inff128() (__builtin_infl ()) | ||
| 87 | # define __builtin_nanf128(x) (__builtin_nanl (x)) | ||
| 88 | # define __builtin_nansf128(x) (__builtin_nansl (x)) | ||
| 89 | # endif | ||
| 90 | |||
| 91 | # endif | ||
| 92 | |||
| 93 | #endif /* !__ASSEMBLER__. */ | ||
| 94 | |||
| 95 | #include <bits/floatn-common.h> | ||
| 96 | |||
| 97 | #endif /* _BITS_FLOATN_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabi64/bits/inotify.h deleted-29| ... | @@ -1,29 +0,0 @@ | ||
| 1 | /* Copyright (C) 2005-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_SYS_INOTIFY_H | ||
| 19 | # error "Never use <bits/inotify.h> directly; include <sys/inotify.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Flags for the parameter of inotify_init1. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | IN_CLOEXEC = 02000000, | ||
| 26 | #define IN_CLOEXEC IN_CLOEXEC | ||
| 27 | IN_NONBLOCK = 00000200 | ||
| 28 | #define IN_NONBLOCK IN_NONBLOCK | ||
| 29 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabi64/bits/ioctl-types.h deleted-75| ... | @@ -1,75 +0,0 @@ | ||
| 1 | /* Structure types for pre-termios terminal ioctls. Linux/MIPS version. | ||
| 2 | Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_IOCTL_H | ||
| 20 | # error "Never use <bits/ioctl-types.h> directly; include <sys/ioctl.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Get definition of constants for use with `ioctl'. */ | ||
| 24 | #include <asm/ioctls.h> | ||
| 25 | |||
| 26 | struct winsize | ||
| 27 | { | ||
| 28 | unsigned short int ws_row; | ||
| 29 | unsigned short int ws_col; | ||
| 30 | unsigned short int ws_xpixel; | ||
| 31 | unsigned short int ws_ypixel; | ||
| 32 | }; | ||
| 33 | |||
| 34 | #define NCC	8 | ||
| 35 | struct termio | ||
| 36 | { | ||
| 37 | unsigned short int c_iflag;		/* input mode flags */ | ||
| 38 | unsigned short int c_oflag;		/* output mode flags */ | ||
| 39 | unsigned short int c_cflag;		/* control mode flags */ | ||
| 40 | unsigned short int c_lflag;		/* local mode flags */ | ||
| 41 | char c_line;			/* line discipline */ | ||
| 42 | /* Yes, this is really NCCS. */ | ||
| 43 | unsigned char c_cc[32 /* NCCS */]; /* control characters */ | ||
| 44 | }; | ||
| 45 | |||
| 46 | /* modem lines */ | ||
| 47 | #define TIOCM_LE	0x001		/* line enable */ | ||
| 48 | #define TIOCM_DTR	0x002		/* data terminal ready */ | ||
| 49 | #define TIOCM_RTS	0x004		/* request to send */ | ||
| 50 | #define TIOCM_ST	0x010		/* secondary transmit */ | ||
| 51 | #define TIOCM_SR	0x020		/* secondary receive */ | ||
| 52 | #define TIOCM_CTS	0x040		/* clear to send */ | ||
| 53 | #define TIOCM_CAR	0x100		/* carrier detect */ | ||
| 54 | #define TIOCM_CD	TIOCM_CAR | ||
| 55 | #define TIOCM_RNG	0x200		/* ring */ | ||
| 56 | #define TIOCM_RI	TIOCM_RNG | ||
| 57 | #define TIOCM_DSR	0x400		/* data set ready */ | ||
| 58 | |||
| 59 | /* line disciplines */ | ||
| 60 | #define N_TTY		0 | ||
| 61 | #define N_SLIP		1 | ||
| 62 | #define N_MOUSE		2 | ||
| 63 | #define N_PPP		3 | ||
| 64 | #define N_STRIP		4 | ||
| 65 | #define N_AX25		5 | ||
| 66 | #define N_X25		6	/* X.25 async */ | ||
| 67 | #define N_6PACK		7 | ||
| 68 | #define N_MASC		8	/* Mobitex module */ | ||
| 69 | #define N_R3964		9	/* Simatic R3964 module */ | ||
| 70 | #define N_PROFIBUS_FDL	10	/* Profibus */ | ||
| 71 | #define N_IRDA		11	/* Linux IR */ | ||
| 72 | #define N_SMSBLOCK	12	/* SMS block mode */ | ||
| 73 | #define N_HDLC		13	/* synchronous HDLC */ | ||
| 74 | #define N_SYNC_PPP	14	/* synchronous PPP */ | ||
| 75 | #define	N_HCI		15	/* Bluetooth HCI UART */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabi64/bits/ipctypes.h deleted-31| ... | @@ -1,31 +0,0 @@ | ||
| 1 | /* bits/ipctypes.h -- Define some types used by SysV IPC/MSG/SHM. MIPS version | ||
| 2 | Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* | ||
| 20 | * Never include <bits/ipctypes.h> directly. | ||
| 21 | */ | ||
| 22 | |||
| 23 | #ifndef _BITS_IPCTYPES_H | ||
| 24 | #define _BITS_IPCTYPES_H	1 | ||
| 25 | |||
| 26 | #include <bits/types.h> | ||
| 27 | |||
| 28 | typedef __SLONG32_TYPE __ipc_pid_t; | ||
| 29 | |||
| 30 | |||
| 31 | #endif /* bits/ipctypes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabi64/bits/mman.h deleted-44| ... | @@ -1,44 +0,0 @@ | ||
| 1 | /* Definitions for POSIX memory map interface. Linux/MIPS version. | ||
| 2 | Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_MMAN_H | ||
| 20 | # error "Never use <bits/mman.h> directly; include <sys/mman.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* The following definitions basically come from the kernel headers. | ||
| 24 | But the kernel header is not namespace clean. */ | ||
| 25 | |||
| 26 | /* These are Linux-specific. */ | ||
| 27 | #define MAP_NORESERVE	0x0400		/* don't check for reservations */ | ||
| 28 | #define MAP_GROWSDOWN	0x1000		/* stack-like segment */ | ||
| 29 | #define MAP_DENYWRITE	0x2000		/* ETXTBSY */ | ||
| 30 | #define MAP_EXECUTABLE	0x4000		/* mark it as an executable */ | ||
| 31 | #define MAP_LOCKED	0x8000		/* pages are locked */ | ||
| 32 | #define MAP_POPULATE 0x10000 /* populate (prefault) pagetables */ | ||
| 33 | #define MAP_NONBLOCK 0x20000 /* do not block on IO */ | ||
| 34 | #define MAP_STACK	0x40000		/* Allocation is for a stack. */ | ||
| 35 | #define MAP_HUGETLB	0x80000		/* Create huge page mapping. */ | ||
| 36 | #define MAP_FIXED_NOREPLACE 0x100000	/* MAP_FIXED but do not unmap | ||
| 37 | 					 underlying mapping. */ | ||
| 38 | |||
| 39 | #define __MAP_ANONYMOUS 0x0800 | ||
| 40 | |||
| 41 | /* Include generic Linux declarations. */ | ||
| 42 | #include <bits/mman-linux.h> | ||
| 43 | |||
| 44 | #define MAP_RENAME	MAP_ANONYMOUS | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabi64/bits/poll.h deleted-49| ... | @@ -1,49 +0,0 @@ | ||
| 1 | /* Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_POLL_H | ||
| 19 | # error "Never use <bits/poll.h> directly; include <sys/poll.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Event types that can be polled for. These bits may be set in `events' | ||
| 23 | to indicate the interesting event types; they will appear in `revents' | ||
| 24 | to indicate the status of the file descriptor. */ | ||
| 25 | #define POLLIN		0x001		/* There is data to read. */ | ||
| 26 | #define POLLPRI		0x002		/* There is urgent data to read. */ | ||
| 27 | #define POLLOUT		0x004		/* Writing now will not block. */ | ||
| 28 | |||
| 29 | #if defined __USE_XOPEN || defined __USE_XOPEN2K8 | ||
| 30 | /* These values are defined in XPG4.2. */ | ||
| 31 | # define POLLRDNORM	0x040		/* Normal data may be read. */ | ||
| 32 | # define POLLRDBAND	0x080		/* Priority data may be read. */ | ||
| 33 | # define POLLWRNORM	POLLOUT		/* Writing now will not block. */ | ||
| 34 | # define POLLWRBAND	0x100		/* Priority data may be written. */ | ||
| 35 | #endif | ||
| 36 | |||
| 37 | #ifdef __USE_GNU | ||
| 38 | /* These are extensions for Linux. */ | ||
| 39 | # define POLLMSG	0x400 | ||
| 40 | # define POLLREMOVE	0x1000 | ||
| 41 | # define POLLRDHUP	0x2000 | ||
| 42 | #endif | ||
| 43 | |||
| 44 | /* Event types always implicitly polled for. These bits need not be set in | ||
| 45 | `events', but they will appear in `revents' to indicate the status of | ||
| 46 | the file descriptor. */ | ||
| 47 | #define POLLERR		0x008		/* Error condition. */ | ||
| 48 | #define POLLHUP		0x010		/* Hung up. */ | ||
| 49 | #define POLLNVAL	0x020		/* Invalid polling request. */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabi64/bits/pthread_stack_min.h deleted-20| ... | @@ -1,20 +0,0 @@ | ||
| 1 | /* Definition of PTHREAD_STACK_MIN. MIPS Linux version. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public License as | ||
| 7 | published by the Free Software Foundation; either version 2.1 of the | ||
| 8 | License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* Minimum size for a thread. At least two pages with 64k pages. */ | ||
| 20 | #define PTHREAD_STACK_MIN	131072 | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabi64/bits/pthreadtypes-arch.h deleted-44| ... | @@ -1,44 +0,0 @@ | ||
| 1 | /* Machine-specific pthread type layouts. MIPS version. | ||
| 2 | Copyright (C) 2005-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_PTHREADTYPES_ARCH_H | ||
| 20 | #define _BITS_PTHREADTYPES_ARCH_H	1 | ||
| 21 | |||
| 22 | #include <bits/endian.h> | ||
| 23 | |||
| 24 | #if _MIPS_SIM == _ABI64 | ||
| 25 | # define __SIZEOF_PTHREAD_ATTR_T 56 | ||
| 26 | # define __SIZEOF_PTHREAD_MUTEX_T 40 | ||
| 27 | # define __SIZEOF_PTHREAD_RWLOCK_T 56 | ||
| 28 | # define __SIZEOF_PTHREAD_BARRIER_T 32 | ||
| 29 | #else | ||
| 30 | # define __SIZEOF_PTHREAD_ATTR_T 36 | ||
| 31 | # define __SIZEOF_PTHREAD_MUTEX_T 24 | ||
| 32 | # define __SIZEOF_PTHREAD_RWLOCK_T 32 | ||
| 33 | # define __SIZEOF_PTHREAD_BARRIER_T 20 | ||
| 34 | #endif | ||
| 35 | #define __SIZEOF_PTHREAD_MUTEXATTR_T 4 | ||
| 36 | #define __SIZEOF_PTHREAD_COND_T 48 | ||
| 37 | #define __SIZEOF_PTHREAD_CONDATTR_T 4 | ||
| 38 | #define __SIZEOF_PTHREAD_RWLOCKATTR_T 8 | ||
| 39 | #define __SIZEOF_PTHREAD_BARRIERATTR_T 4 | ||
| 40 | |||
| 41 | #define __LOCK_ALIGNMENT | ||
| 42 | #define __ONCE_ALIGNMENT | ||
| 43 | |||
| 44 | #endif	/* bits/pthreadtypes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabi64/bits/resource.h deleted-231| ... | @@ -1,231 +0,0 @@ | ||
| 1 | /* Bit values & structures for resource limits. Linux/MIPS version. | ||
| 2 | Copyright (C) 1994-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_RESOURCE_H | ||
| 20 | # error "Never use <bits/resource.h> directly; include <sys/resource.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <bits/types.h> | ||
| 24 | |||
| 25 | /* Transmute defines to enumerations. The macro re-definitions are | ||
| 26 | necessary because some programs want to test for operating system | ||
| 27 | features with #ifdef RUSAGE_SELF. In ISO C the reflexive | ||
| 28 | definition is a no-op. */ | ||
| 29 | |||
| 30 | /* Kinds of resource limit. */ | ||
| 31 | enum __rlimit_resource | ||
| 32 | { | ||
| 33 | /* Per-process CPU limit, in seconds. */ | ||
| 34 | RLIMIT_CPU = 0, | ||
| 35 | #define RLIMIT_CPU RLIMIT_CPU | ||
| 36 | |||
| 37 | /* Largest file that can be created, in bytes. */ | ||
| 38 | RLIMIT_FSIZE = 1, | ||
| 39 | #define	RLIMIT_FSIZE RLIMIT_FSIZE | ||
| 40 | |||
| 41 | /* Maximum size of data segment, in bytes. */ | ||
| 42 | RLIMIT_DATA = 2, | ||
| 43 | #define	RLIMIT_DATA RLIMIT_DATA | ||
| 44 | |||
| 45 | /* Maximum size of stack segment, in bytes. */ | ||
| 46 | RLIMIT_STACK = 3, | ||
| 47 | #define	RLIMIT_STACK RLIMIT_STACK | ||
| 48 | |||
| 49 | /* Largest core file that can be created, in bytes. */ | ||
| 50 | RLIMIT_CORE = 4, | ||
| 51 | #define	RLIMIT_CORE RLIMIT_CORE | ||
| 52 | |||
| 53 | /* Largest resident set size, in bytes. | ||
| 54 | This affects swapping; processes that are exceeding their | ||
| 55 | resident set size will be more likely to have physical memory | ||
| 56 | taken from them. */ | ||
| 57 | __RLIMIT_RSS = 7, | ||
| 58 | #define	RLIMIT_RSS __RLIMIT_RSS | ||
| 59 | |||
| 60 | /* Number of open files. */ | ||
| 61 | RLIMIT_NOFILE = 5, | ||
| 62 | __RLIMIT_OFILE = RLIMIT_NOFILE, /* BSD name for same. */ | ||
| 63 | #define RLIMIT_NOFILE RLIMIT_NOFILE | ||
| 64 | #define RLIMIT_OFILE __RLIMIT_OFILE | ||
| 65 | |||
| 66 | /* Address space limit (?) */ | ||
| 67 | RLIMIT_AS = 6, | ||
| 68 | #define RLIMIT_AS RLIMIT_AS | ||
| 69 | |||
| 70 | /* Number of processes. */ | ||
| 71 | __RLIMIT_NPROC = 8, | ||
| 72 | #define RLIMIT_NPROC __RLIMIT_NPROC | ||
| 73 | |||
| 74 | /* Locked-in-memory address space. */ | ||
| 75 | __RLIMIT_MEMLOCK = 9, | ||
| 76 | #define RLIMIT_MEMLOCK __RLIMIT_MEMLOCK | ||
| 77 | |||
| 78 | /* Maximum number of file locks. */ | ||
| 79 | __RLIMIT_LOCKS = 10, | ||
| 80 | #define RLIMIT_LOCKS __RLIMIT_LOCKS | ||
| 81 | |||
| 82 | /* Maximum number of pending signals. */ | ||
| 83 | __RLIMIT_SIGPENDING = 11, | ||
| 84 | #define RLIMIT_SIGPENDING __RLIMIT_SIGPENDING | ||
| 85 | |||
| 86 | /* Maximum bytes in POSIX message queues. */ | ||
| 87 | __RLIMIT_MSGQUEUE = 12, | ||
| 88 | #define RLIMIT_MSGQUEUE __RLIMIT_MSGQUEUE | ||
| 89 | |||
| 90 | /* Maximum nice priority allowed to raise to. | ||
| 91 | Nice levels 19 .. -20 correspond to 0 .. 39 | ||
| 92 | values of this resource limit. */ | ||
| 93 | __RLIMIT_NICE = 13, | ||
| 94 | #define RLIMIT_NICE __RLIMIT_NICE | ||
| 95 | |||
| 96 | /* Maximum realtime priority allowed for non-priviledged | ||
| 97 | processes. */ | ||
| 98 | __RLIMIT_RTPRIO = 14, | ||
| 99 | #define RLIMIT_RTPRIO __RLIMIT_RTPRIO | ||
| 100 | |||
| 101 | /* Maximum CPU time in microseconds that a process scheduled under a real-time | ||
| 102 | scheduling policy may consume without making a blocking system | ||
| 103 | call before being forcibly descheduled. */ | ||
| 104 | __RLIMIT_RTTIME = 15, | ||
| 105 | #define RLIMIT_RTTIME __RLIMIT_RTTIME | ||
| 106 | |||
| 107 | __RLIMIT_NLIMITS = 16, | ||
| 108 | __RLIM_NLIMITS = __RLIMIT_NLIMITS | ||
| 109 | #define RLIMIT_NLIMITS __RLIMIT_NLIMITS | ||
| 110 | #define RLIM_NLIMITS __RLIM_NLIMITS | ||
| 111 | }; | ||
| 112 | |||
| 113 | /* Value to indicate that there is no limit. */ | ||
| 114 | #if _MIPS_SIM == _ABI64 | ||
| 115 | /* The N64 syscall uses this value. */ | ||
| 116 | # define RLIM_INFINITY 0xffffffffffffffffUL | ||
| 117 | # ifdef __USE_LARGEFILE64 | ||
| 118 | # define RLIM64_INFINITY 0xffffffffffffffffUL | ||
| 119 | # endif | ||
| 120 | #else | ||
| 121 | /* The O32 and N32 syscalls use 0x7fffffff. */ | ||
| 122 | # ifndef __USE_FILE_OFFSET64 | ||
| 123 | # define RLIM_INFINITY ((long int)(~0UL >> 1)) | ||
| 124 | # else | ||
| 125 | # define RLIM_INFINITY 0xffffffffffffffffULL | ||
| 126 | # endif | ||
| 127 | # ifdef __USE_LARGEFILE64 | ||
| 128 | # define RLIM64_INFINITY 0xffffffffffffffffULL | ||
| 129 | # endif | ||
| 130 | #endif | ||
| 131 | |||
| 132 | /* We can represent all limits. */ | ||
| 133 | #define RLIM_SAVED_MAX	RLIM_INFINITY | ||
| 134 | #define RLIM_SAVED_CUR	RLIM_INFINITY | ||
| 135 | |||
| 136 | |||
| 137 | /* Type for resource quantity measurement. */ | ||
| 138 | #ifndef __USE_FILE_OFFSET64 | ||
| 139 | typedef __rlim_t rlim_t; | ||
| 140 | #else | ||
| 141 | typedef __rlim64_t rlim_t; | ||
| 142 | #endif | ||
| 143 | #ifdef __USE_LARGEFILE64 | ||
| 144 | typedef __rlim64_t rlim64_t; | ||
| 145 | #endif | ||
| 146 | |||
| 147 | struct rlimit | ||
| 148 | { | ||
| 149 | /* The current (soft) limit. */ | ||
| 150 | rlim_t rlim_cur; | ||
| 151 | /* The hard limit. */ | ||
| 152 | rlim_t rlim_max; | ||
| 153 | }; | ||
| 154 | |||
| 155 | #ifdef __USE_LARGEFILE64 | ||
| 156 | struct rlimit64 | ||
| 157 | { | ||
| 158 | /* The current (soft) limit. */ | ||
| 159 | rlim64_t rlim_cur; | ||
| 160 | /* The hard limit. */ | ||
| 161 | rlim64_t rlim_max; | ||
| 162 | }; | ||
| 163 | #endif | ||
| 164 | |||
| 165 | /* Whose usage statistics do you want? */ | ||
| 166 | enum __rusage_who | ||
| 167 | { | ||
| 168 | /* The calling process. */ | ||
| 169 | RUSAGE_SELF = 0, | ||
| 170 | #define RUSAGE_SELF RUSAGE_SELF | ||
| 171 | |||
| 172 | /* All of its terminated child processes. */ | ||
| 173 | RUSAGE_CHILDREN = -1 | ||
| 174 | #define RUSAGE_CHILDREN RUSAGE_CHILDREN | ||
| 175 | |||
| 176 | #ifdef __USE_GNU | ||
| 177 | , | ||
| 178 | /* The calling thread. */ | ||
| 179 | RUSAGE_THREAD = 1 | ||
| 180 | # define RUSAGE_THREAD RUSAGE_THREAD | ||
| 181 | /* Name for the same functionality on Solaris. */ | ||
| 182 | # define RUSAGE_LWP RUSAGE_THREAD | ||
| 183 | #endif | ||
| 184 | }; | ||
| 185 | |||
| 186 | #include <bits/types/struct_timeval.h> | ||
| 187 | #include <bits/types/struct_rusage.h> | ||
| 188 | |||
| 189 | /* Priority limits. */ | ||
| 190 | #define PRIO_MIN	-20	/* Minimum priority a process can have. */ | ||
| 191 | #define PRIO_MAX	20	/* Maximum priority a process can have. */ | ||
| 192 | |||
| 193 | /* The type of the WHICH argument to `getpriority' and `setpriority', | ||
| 194 | indicating what flavor of entity the WHO argument specifies. */ | ||
| 195 | enum __priority_which | ||
| 196 | { | ||
| 197 | PRIO_PROCESS = 0,		/* WHO is a process ID. */ | ||
| 198 | #define PRIO_PROCESS PRIO_PROCESS | ||
| 199 | PRIO_PGRP = 1,		/* WHO is a process group ID. */ | ||
| 200 | #define PRIO_PGRP PRIO_PGRP | ||
| 201 | PRIO_USER = 2			/* WHO is a user ID. */ | ||
| 202 | #define PRIO_USER PRIO_USER | ||
| 203 | }; | ||
| 204 | |||
| 205 | |||
| 206 | __BEGIN_DECLS | ||
| 207 | |||
| 208 | #ifdef __USE_GNU | ||
| 209 | /* Modify and return resource limits of a process atomically. */ | ||
| 210 | # ifndef __USE_FILE_OFFSET64 | ||
| 211 | extern int prlimit (__pid_t __pid, enum __rlimit_resource __resource, | ||
| 212 | 		 const struct rlimit *__new_limit, | ||
| 213 | 		 struct rlimit *__old_limit) __THROW; | ||
| 214 | # else | ||
| 215 | # ifdef __REDIRECT_NTH | ||
| 216 | extern int __REDIRECT_NTH (prlimit, (__pid_t __pid, | ||
| 217 | 				 enum __rlimit_resource __resource, | ||
| 218 | 				 const struct rlimit *__new_limit, | ||
| 219 | 				 struct rlimit *__old_limit), prlimit64); | ||
| 220 | # else | ||
| 221 | # define prlimit prlimit64 | ||
| 222 | # endif | ||
| 223 | # endif | ||
| 224 | # ifdef __USE_LARGEFILE64 | ||
| 225 | extern int prlimit64 (__pid_t __pid, enum __rlimit_resource __resource, | ||
| 226 | 		 const struct rlimit64 *__new_limit, | ||
| 227 | 		 struct rlimit64 *__old_limit) __THROW; | ||
| 228 | # endif | ||
| 229 | #endif | ||
| 230 | |||
| 231 | __END_DECLS | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabi64/bits/semaphore.h deleted-36| ... | @@ -1,36 +0,0 @@ | ||
| 1 | /* Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SEMAPHORE_H | ||
| 19 | # error "Never use <bits/semaphore.h> directly; include <semaphore.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | #if _MIPS_SIM == _ABI64 | ||
| 23 | # define __SIZEOF_SEM_T	32 | ||
| 24 | #else | ||
| 25 | # define __SIZEOF_SEM_T	16 | ||
| 26 | #endif | ||
| 27 | |||
| 28 | /* Value returned if `sem_open' failed. */ | ||
| 29 | #define SEM_FAILED ((sem_t *) 0) | ||
| 30 | |||
| 31 | |||
| 32 | typedef union | ||
| 33 | { | ||
| 34 | char __size[__SIZEOF_SEM_T]; | ||
| 35 | long int __align; | ||
| 36 | } sem_t; | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabi64/bits/shmlba.h deleted-24| ... | @@ -1,24 +0,0 @@ | ||
| 1 | /* Define SHMLBA. MIPS version. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SHM_H | ||
| 20 | # error "Never use <bits/shmlba.h> directly; include <sys/shm.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Segment low boundary address multiple. */ | ||
| 24 | #define SHMLBA		0x40000 | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabi64/bits/sigaction.h deleted-94| ... | @@ -1,94 +0,0 @@ | ||
| 1 | /* The proper definitions for Linux/MIPS's sigaction. | ||
| 2 | Copyright (C) 1993-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_SIGACTION_H | ||
| 20 | #define _BITS_SIGACTION_H 1 | ||
| 21 | |||
| 22 | #ifndef _SIGNAL_H | ||
| 23 | # error "Never include <bits/sigaction.h> directly; use <signal.h> instead." | ||
| 24 | #endif | ||
| 25 | |||
| 26 | /* Structure describing the action to be taken when a signal arrives. */ | ||
| 27 | struct sigaction | ||
| 28 | { | ||
| 29 | /* Special flags. */ | ||
| 30 | int sa_flags; | ||
| 31 | |||
| 32 | /* Signal handler. */ | ||
| 33 | #if defined __USE_POSIX199309 || defined __USE_XOPEN_EXTENDED | ||
| 34 | union | ||
| 35 | { | ||
| 36 | 	/* Used if SA_SIGINFO is not set. */ | ||
| 37 | 	__sighandler_t sa_handler; | ||
| 38 | 	/* Used if SA_SIGINFO is set. */ | ||
| 39 | 	void (*sa_sigaction) (int, siginfo_t *, void *); | ||
| 40 | } | ||
| 41 | __sigaction_handler; | ||
| 42 | # define sa_handler __sigaction_handler.sa_handler | ||
| 43 | # define sa_sigaction __sigaction_handler.sa_sigaction | ||
| 44 | #else | ||
| 45 | __sighandler_t sa_handler; | ||
| 46 | #endif | ||
| 47 | /* Additional set of signals to be blocked. */ | ||
| 48 | __sigset_t sa_mask; | ||
| 49 | |||
| 50 | /* The ABI says here are two unused ints following. */ | ||
| 51 | /* Restore handler. */ | ||
| 52 | void (*sa_restorer) (void); | ||
| 53 | |||
| 54 | #if _MIPS_SZPTR < 64 | ||
| 55 | int sa_resv[1]; | ||
| 56 | #endif | ||
| 57 | }; | ||
| 58 | |||
| 59 | /* Bits in `sa_flags'. */ | ||
| 60 | /* Please note that some Linux kernels versions use different values for these | ||
| 61 | flags which is a bug in those kernel versions. */ | ||
| 62 | #define SA_NOCLDSTOP 0x00000001 /* Don't send SIGCHLD when children stop. */ | ||
| 63 | #define SA_NOCLDWAIT 0x00010000 /* Don't create zombie on child death. */ | ||
| 64 | #define SA_SIGINFO 0x00000008 /* Invoke signal-catching function with | ||
| 65 | 				 three arguments instead of one. */ | ||
| 66 | #if defined __USE_XOPEN_EXTENDED || defined __USE_MISC | ||
| 67 | # define SA_ONSTACK 0x08000000 /* Use signal stack by using `sa_restorer'. */ | ||
| 68 | #endif | ||
| 69 | #if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8 | ||
| 70 | # define SA_RESETHAND 0x80000000 /* Reset to SIG_DFL on entry to handler. */ | ||
| 71 | # define SA_RESTART 0x10000000 /* Restart syscall on signal return. */ | ||
| 72 | # define SA_NODEFER 0x40000000 /* Don't automatically block the signal when | ||
| 73 | 				 its handler is being executed. */ | ||
| 74 | #endif | ||
| 75 | #ifdef __USE_MISC | ||
| 76 | # define SA_INTERRUPT 0x20000000 /* Historical no-op. */ | ||
| 77 | |||
| 78 | /* Some aliases for the SA_ constants. */ | ||
| 79 | # define SA_NOMASK SA_NODEFER | ||
| 80 | # define SA_ONESHOT SA_RESETHAND | ||
| 81 | # define SA_STACK SA_ONSTACK | ||
| 82 | #endif | ||
| 83 | |||
| 84 | /* Values for the HOW argument to `sigprocmask'. */ | ||
| 85 | #define SIG_NOP	 0		/* 0 is unused to catch errors */ | ||
| 86 | #define	SIG_BLOCK 1		/* Block signals. */ | ||
| 87 | #define	SIG_UNBLOCK 2		/* Unblock signals. */ | ||
| 88 | #define	SIG_SETMASK 3		/* Set the set of blocked signals. */ | ||
| 89 | #ifdef __USE_MISC | ||
| 90 | # define SIG_SETMASK32 256	/* Goodie from SGI for BSD compatibility: | ||
| 91 | 				 set only the low 32 bit of the sigset. */ | ||
| 92 | #endif | ||
| 93 | |||
| 94 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabi64/bits/sigcontext.h deleted-82| ... | @@ -1,82 +0,0 @@ | ||
| 1 | /* Copyright (C) 1996-2025 Free Software Foundation, Inc. This file is part of the GNU C Library. | ||
| 2 | |||
| 3 | The GNU C Library is free software; you can redistribute it and/or | ||
| 4 | modify it under the terms of the GNU Lesser General Public | ||
| 5 | License as published by the Free Software Foundation; either | ||
| 6 | version 2.1 of the License, or (at your option) any later version. | ||
| 7 | |||
| 8 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 9 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 10 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 11 | Lesser General Public License for more details. | ||
| 12 | |||
| 13 | You should have received a copy of the GNU Lesser General Public | ||
| 14 | License along with the GNU C Library. If not, see | ||
| 15 | <https://www.gnu.org/licenses/>. */ | ||
| 16 | |||
| 17 | #ifndef _BITS_SIGCONTEXT_H | ||
| 18 | #define _BITS_SIGCONTEXT_H 1 | ||
| 19 | |||
| 20 | #if !defined _SIGNAL_H && !defined _SYS_UCONTEXT_H | ||
| 21 | # error "Never use <bits/sigcontext.h> directly; include <signal.h> instead." | ||
| 22 | #endif | ||
| 23 | |||
| 24 | #include <sgidefs.h> | ||
| 25 | |||
| 26 | #if _MIPS_SIM == _ABIO32 | ||
| 27 | |||
| 28 | /* Certain unused fields were replaced with new ones in 2.6.12-rc4. | ||
| 29 | The changes were as follows: | ||
| 30 | |||
| 31 | sc_cause -> sc_hi1 | ||
| 32 | sc_badvaddr -> sc_lo1 | ||
| 33 | sc_sigset[0] -> sc_hi2 | ||
| 34 | sc_sigset[1] -> sc_lo2 | ||
| 35 | sc_sigset[2] -> sc_hi3 | ||
| 36 | sc_sigset[3] -> sc_lo3 | ||
| 37 | |||
| 38 | sc_regmask, sc_ownedfp and sc_fpc_eir are not used. */ | ||
| 39 | struct sigcontext { | ||
| 40 | unsigned int sc_regmask; | ||
| 41 | unsigned int sc_status; | ||
| 42 | __extension__ unsigned long long sc_pc; | ||
| 43 | __extension__ unsigned long long sc_regs[32]; | ||
| 44 | __extension__ unsigned long long sc_fpregs[32]; | ||
| 45 | unsigned int sc_ownedfp; | ||
| 46 | unsigned int sc_fpc_csr; | ||
| 47 | unsigned int sc_fpc_eir; | ||
| 48 | unsigned int sc_used_math; | ||
| 49 | unsigned int sc_dsp; | ||
| 50 | __extension__ unsigned long long sc_mdhi; | ||
| 51 | __extension__ unsigned long long sc_mdlo; | ||
| 52 | unsigned long sc_hi1; | ||
| 53 | unsigned long sc_lo1; | ||
| 54 | unsigned long sc_hi2; | ||
| 55 | unsigned long sc_lo2; | ||
| 56 | unsigned long sc_hi3; | ||
| 57 | unsigned long sc_lo3; | ||
| 58 | }; | ||
| 59 | |||
| 60 | #else | ||
| 61 | |||
| 62 | /* This structure changed in 2.6.12-rc4 when DSP support was added. */ | ||
| 63 | struct sigcontext { | ||
| 64 | __extension__ unsigned long long sc_regs[32]; | ||
| 65 | __extension__ unsigned long long sc_fpregs[32]; | ||
| 66 | __extension__ unsigned long long sc_mdhi; | ||
| 67 | __extension__ unsigned long long sc_hi1; | ||
| 68 | __extension__ unsigned long long sc_hi2; | ||
| 69 | __extension__ unsigned long long sc_hi3; | ||
| 70 | __extension__ unsigned long long sc_mdlo; | ||
| 71 | __extension__ unsigned long long sc_lo1; | ||
| 72 | __extension__ unsigned long long sc_lo2; | ||
| 73 | __extension__ unsigned long long sc_lo3; | ||
| 74 | __extension__ unsigned long long sc_pc; | ||
| 75 | unsigned int sc_fpc_csr; | ||
| 76 | unsigned int sc_used_math; | ||
| 77 | unsigned int sc_dsp; | ||
| 78 | unsigned int sc_reserved; | ||
| 79 | }; | ||
| 80 | |||
| 81 | #endif /* _MIPS_SIM != _ABIO32 */ | ||
| 82 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabi64/bits/siginfo-arch.h deleted-13| ... | @@ -1,13 +0,0 @@ | ||
| 1 | /* Architecture-specific adjustments to siginfo_t. MIPS version. */ | ||
| 2 | #ifndef _BITS_SIGINFO_ARCH_H | ||
| 3 | #define _BITS_SIGINFO_ARCH_H 1 | ||
| 4 | |||
| 5 | /* MIPS has the si_code and si_errno fields in the opposite order from | ||
| 6 | all other architectures. */ | ||
| 7 | #define __SI_ERRNO_THEN_CODE 0 | ||
| 8 | |||
| 9 | /* MIPS also has different values for SI_ASYNCIO, SI_MESGQ, and SI_TIMER | ||
| 10 | than all other architectures. */ | ||
| 11 | #define __SI_ASYNCIO_AFTER_SIGIO 0 | ||
| 12 | |||
| 13 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabi64/bits/signalfd.h deleted-29| ... | @@ -1,29 +0,0 @@ | ||
| 1 | /* Copyright (C) 2007-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_SYS_SIGNALFD_H | ||
| 19 | # error "Never use <bits/signalfd.h> directly; include <sys/signalfd.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Flags for signalfd. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | SFD_CLOEXEC = 02000000, | ||
| 26 | #define SFD_CLOEXEC SFD_CLOEXEC | ||
| 27 | SFD_NONBLOCK = 00000200 | ||
| 28 | #define SFD_NONBLOCK SFD_NONBLOCK | ||
| 29 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabi64/bits/signum-arch.h deleted-65| ... | @@ -1,65 +0,0 @@ | ||
| 1 | /* Signal number definitions. Linux/MIPS version. | ||
| 2 | Copyright (C) 1995-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_SIGNUM_H | ||
| 20 | #define _BITS_SIGNUM_H 1 | ||
| 21 | |||
| 22 | #ifndef _SIGNAL_H | ||
| 23 | #error "Never include <bits/signum.h> directly; use <signal.h> instead." | ||
| 24 | #endif | ||
| 25 | |||
| 26 | /* Adjustments and additions to the signal number constants for | ||
| 27 | Linux/MIPS. */ | ||
| 28 | |||
| 29 | #define SIGEMT		 7	/* Emulator trap. */ | ||
| 30 | #define SIGPWR		19	/* Power failure imminent. */ | ||
| 31 | |||
| 32 | /* Historical signals specified by POSIX. */ | ||
| 33 | #define SIGBUS 	10	/* Bus error. */ | ||
| 34 | #define SIGSYS		12	/* Bad system call. */ | ||
| 35 | |||
| 36 | /* New(er) POSIX signals (1003.1-2008, 1003.1-2013). */ | ||
| 37 | #define SIGURG		21	/* Urgent data is available at a socket. */ | ||
| 38 | #define SIGSTOP		23	/* Stop, unblockable. */ | ||
| 39 | #define SIGTSTP		24	/* Keyboard stop. */ | ||
| 40 | #define SIGCONT		25	/* Continue. */ | ||
| 41 | #define SIGCHLD		18	/* Child terminated or stopped. */ | ||
| 42 | #define SIGTTIN		26	/* Background read from control terminal. */ | ||
| 43 | #define SIGTTOU		27	/* Background write to control terminal. */ | ||
| 44 | #define SIGPOLL		22	/* Pollable event occurred (System V). */ | ||
| 45 | #define SIGXCPU		30	/* CPU time limit exceeded. */ | ||
| 46 | #define SIGVTALRM	28	/* Virtual timer expired. */ | ||
| 47 | #define SIGPROF		29	/* Profiling timer expired. */ | ||
| 48 | #define SIGXFSZ		31	/* File size limit exceeded. */ | ||
| 49 | #define SIGUSR1		16	/* User-defined signal 1. */ | ||
| 50 | #define SIGUSR2		17	/* User-defined signal 2. */ | ||
| 51 | |||
| 52 | /* Nonstandard signals found in all modern POSIX systems | ||
| 53 | (including both BSD and Linux). */ | ||
| 54 | #define SIGWINCH	20	/* Window size change (4.3 BSD, Sun). */ | ||
| 55 | |||
| 56 | /* Archaic names for compatibility. */ | ||
| 57 | #define SIGIO		SIGPOLL	/* I/O now possible (4.2 BSD). */ | ||
| 58 | #define SIGIOT		SIGABRT	/* IOT instruction, abort() on a PDP-11. */ | ||
| 59 | #define SIGCLD		SIGCHLD /* Old System V name */ | ||
| 60 | |||
| 61 | /* By default no real-time signals are supported. */ | ||
| 62 | #define __SIGRTMIN	32 | ||
| 63 | #define __SIGRTMAX	127 | ||
| 64 | |||
| 65 | #endif	/* <signal.h> included. */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabi64/bits/socket-constants.h deleted-70| ... | @@ -1,70 +0,0 @@ | ||
| 1 | /* Socket constants which vary among Linux architectures. Version for MIPS. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SOCKET_H | ||
| 20 | # error "Never include <bits/socket-constants.h> directly; use <sys/socket.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #define SOL_SOCKET 65535 | ||
| 24 | #define SO_ACCEPTCONN 4105 | ||
| 25 | #define SO_BROADCAST 32 | ||
| 26 | #define SO_DONTROUTE 16 | ||
| 27 | #define SO_ERROR 4103 | ||
| 28 | #define SO_KEEPALIVE 8 | ||
| 29 | #define SO_LINGER 128 | ||
| 30 | #define SO_OOBINLINE 256 | ||
| 31 | #define SO_RCVBUF 4098 | ||
| 32 | #define SO_RCVLOWAT 4100 | ||
| 33 | #define SO_REUSEADDR 4 | ||
| 34 | #define SO_SNDBUF 4097 | ||
| 35 | #define SO_SNDLOWAT 4099 | ||
| 36 | #define SO_TYPE 4104 | ||
| 37 | |||
| 38 | #if __TIMESIZE == 64 | ||
| 39 | # define SO_RCVTIMEO 4102 | ||
| 40 | # define SO_SNDTIMEO 4101 | ||
| 41 | # define SO_TIMESTAMP 29 | ||
| 42 | # define SO_TIMESTAMPNS 35 | ||
| 43 | # define SO_TIMESTAMPING 37 | ||
| 44 | #else | ||
| 45 | # define SO_RCVTIMEO_OLD 4102 | ||
| 46 | # define SO_SNDTIMEO_OLD 4101 | ||
| 47 | # define SO_RCVTIMEO_NEW 66 | ||
| 48 | # define SO_SNDTIMEO_NEW 67 | ||
| 49 | |||
| 50 | # define SO_TIMESTAMP_OLD 29 | ||
| 51 | # define SO_TIMESTAMPNS_OLD 35 | ||
| 52 | # define SO_TIMESTAMPING_OLD 37 | ||
| 53 | # define SO_TIMESTAMP_NEW 63 | ||
| 54 | # define SO_TIMESTAMPNS_NEW 64 | ||
| 55 | # define SO_TIMESTAMPING_NEW 65 | ||
| 56 | |||
| 57 | # ifdef __USE_TIME64_REDIRECTS | ||
| 58 | # define SO_RCVTIMEO SO_RCVTIMEO_NEW | ||
| 59 | # define SO_SNDTIMEO SO_SNDTIMEO_NEW | ||
| 60 | # define SO_TIMESTAMP SO_TIMESTAMP_NEW | ||
| 61 | # define SO_TIMESTAMPNS SO_TIMESTAMPNS_NEW | ||
| 62 | # define SO_TIMESTAMPING SO_TIMESTAMPING_NEW | ||
| 63 | # else | ||
| 64 | # define SO_RCVTIMEO SO_RCVTIMEO_OLD | ||
| 65 | # define SO_SNDTIMEO SO_SNDTIMEO_OLD | ||
| 66 | # define SO_TIMESTAMP SO_TIMESTAMP_OLD | ||
| 67 | # define SO_TIMESTAMPNS SO_TIMESTAMPNS_OLD | ||
| 68 | # define SO_TIMESTAMPING SO_TIMESTAMPING_OLD | ||
| 69 | # endif | ||
| 70 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabi64/bits/socket_type.h deleted-55| ... | @@ -1,55 +0,0 @@ | ||
| 1 | /* Define enum __socket_type for Linux/MIPS. | ||
| 2 | Copyright (C) 1991-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SOCKET_H | ||
| 20 | # error "Never include <bits/socket_type.h> directly; use <sys/socket.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Types of sockets. */ | ||
| 24 | enum __socket_type | ||
| 25 | { | ||
| 26 | SOCK_DGRAM = 1,		/* Connectionless, unreliable datagrams | ||
| 27 | 				 of fixed maximum length. */ | ||
| 28 | #define SOCK_DGRAM SOCK_DGRAM | ||
| 29 | SOCK_STREAM = 2,		/* Sequenced, reliable, connection-based | ||
| 30 | 				 byte streams. */ | ||
| 31 | #define SOCK_STREAM SOCK_STREAM | ||
| 32 | SOCK_RAW = 3,			/* Raw protocol interface. */ | ||
| 33 | #define SOCK_RAW SOCK_RAW | ||
| 34 | SOCK_RDM = 4,			/* Reliably-delivered messages. */ | ||
| 35 | #define SOCK_RDM SOCK_RDM | ||
| 36 | SOCK_SEQPACKET = 5,		/* Sequenced, reliable, connection-based, | ||
| 37 | 				 datagrams of fixed maximum length. */ | ||
| 38 | #define SOCK_SEQPACKET SOCK_SEQPACKET | ||
| 39 | SOCK_DCCP = 6, | ||
| 40 | #define SOCK_DCCP SOCK_DCCP	/* Datagram Congestion Control Protocol. */ | ||
| 41 | SOCK_PACKET = 10,		/* Linux specific way of getting packets | ||
| 42 | 				 at the dev level. For writing rarp and | ||
| 43 | 				 other similar things on the user level. */ | ||
| 44 | #define SOCK_PACKET SOCK_PACKET | ||
| 45 | |||
| 46 | /* Flags to be ORed into the type parameter of socket and socketpair and | ||
| 47 | used for the flags parameter of paccept. */ | ||
| 48 | |||
| 49 | SOCK_CLOEXEC = 02000000,	/* Atomically set close-on-exec flag for the | ||
| 50 | 				 new descriptor(s). */ | ||
| 51 | #define SOCK_CLOEXEC SOCK_CLOEXEC | ||
| 52 | SOCK_NONBLOCK = 00000200	/* Atomically mark descriptor(s) as | ||
| 53 | 				 non-blocking. */ | ||
| 54 | #define SOCK_NONBLOCK SOCK_NONBLOCK | ||
| 55 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabi64/bits/statfs.h deleted-73| ... | @@ -1,73 +0,0 @@ | ||
| 1 | /* Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_STATFS_H | ||
| 19 | # error "Never include <bits/statfs.h> directly; use <sys/statfs.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | #include <bits/types.h> /* for __fsid_t and __fsblkcnt_t*/ | ||
| 23 | |||
| 24 | struct statfs | ||
| 25 | { | ||
| 26 | long int f_type; | ||
| 27 | #define f_fstyp f_type | ||
| 28 | long int f_bsize; | ||
| 29 | long int f_frsize;	/* Fragment size - unsupported */ | ||
| 30 | #ifndef __USE_FILE_OFFSET64 | ||
| 31 | __fsblkcnt_t f_blocks; | ||
| 32 | __fsblkcnt_t f_bfree; | ||
| 33 | __fsblkcnt_t f_files; | ||
| 34 | __fsblkcnt_t f_ffree; | ||
| 35 | __fsblkcnt_t f_bavail; | ||
| 36 | #else | ||
| 37 | __fsblkcnt64_t f_blocks; | ||
| 38 | __fsblkcnt64_t f_bfree; | ||
| 39 | __fsblkcnt64_t f_files; | ||
| 40 | __fsblkcnt64_t f_ffree; | ||
| 41 | __fsblkcnt64_t f_bavail; | ||
| 42 | #endif | ||
| 43 | |||
| 44 | 	/* Linux specials */ | ||
| 45 | __fsid_t f_fsid; | ||
| 46 | long int f_namelen; | ||
| 47 | long int f_flags; | ||
| 48 | long int f_spare[5]; | ||
| 49 | }; | ||
| 50 | |||
| 51 | #ifdef __USE_LARGEFILE64 | ||
| 52 | struct statfs64 | ||
| 53 | { | ||
| 54 | long int f_type; | ||
| 55 | #define f_fstyp f_type | ||
| 56 | long int f_bsize; | ||
| 57 | long int f_frsize;	/* Fragment size - unsupported */ | ||
| 58 | __fsblkcnt64_t f_blocks; | ||
| 59 | __fsblkcnt64_t f_bfree; | ||
| 60 | __fsblkcnt64_t f_files; | ||
| 61 | __fsblkcnt64_t f_ffree; | ||
| 62 | __fsblkcnt64_t f_bavail; | ||
| 63 | |||
| 64 | 	/* Linux specials */ | ||
| 65 | __fsid_t f_fsid; | ||
| 66 | long int f_namelen; | ||
| 67 | long int f_flags; | ||
| 68 | long int f_spare[5]; | ||
| 69 | }; | ||
| 70 | #endif | ||
| 71 | |||
| 72 | /* Tell code we have these members. */ | ||
| 73 | #define _STATFS_F_NAMELEN | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabi64/bits/struct_mutex.h deleted-56| ... | @@ -1,56 +0,0 @@ | ||
| 1 | /* MIPS internal mutex struct definitions. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <http://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _THREAD_MUTEX_INTERNAL_H | ||
| 20 | #define _THREAD_MUTEX_INTERNAL_H 1 | ||
| 21 | |||
| 22 | struct __pthread_mutex_s | ||
| 23 | { | ||
| 24 | int __lock; | ||
| 25 | unsigned int __count; | ||
| 26 | int __owner; | ||
| 27 | #if _MIPS_SIM == _ABI64 | ||
| 28 | unsigned int __nusers; | ||
| 29 | #endif | ||
| 30 | /* KIND must stay at this position in the structure to maintain | ||
| 31 | binary compatibility with static initializers. */ | ||
| 32 | int __kind; | ||
| 33 | #if _MIPS_SIM == _ABI64 | ||
| 34 | int __spins; | ||
| 35 | __pthread_list_t __list; | ||
| 36 | # define __PTHREAD_MUTEX_HAVE_PREV 1 | ||
| 37 | #else | ||
| 38 | unsigned int __nusers; | ||
| 39 | __extension__ union | ||
| 40 | { | ||
| 41 | int __spins; | ||
| 42 | __pthread_slist_t __list; | ||
| 43 | }; | ||
| 44 | # define __PTHREAD_MUTEX_HAVE_PREV 0 | ||
| 45 | #endif | ||
| 46 | }; | ||
| 47 | |||
| 48 | #if _MIPS_SIM == _ABI64 | ||
| 49 | # define __PTHREAD_MUTEX_INITIALIZER(__kind) \ | ||
| 50 | 0, 0, 0, 0, __kind, 0, { 0, 0 } | ||
| 51 | #else | ||
| 52 | # define __PTHREAD_MUTEX_INITIALIZER(__kind) \ | ||
| 53 | 0, 0, 0, __kind, 0, { 0 } | ||
| 54 | #endif | ||
| 55 | |||
| 56 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabi64/bits/struct_rwlock.h deleted-71| ... | @@ -1,71 +0,0 @@ | ||
| 1 | /* MIPS internal rwlock struct definitions. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <http://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _RWLOCK_INTERNAL_H | ||
| 20 | #define _RWLOCK_INTERNAL_H | ||
| 21 | |||
| 22 | struct __pthread_rwlock_arch_t | ||
| 23 | { | ||
| 24 | unsigned int __readers; | ||
| 25 | unsigned int __writers; | ||
| 26 | unsigned int __wrphase_futex; | ||
| 27 | unsigned int __writers_futex; | ||
| 28 | unsigned int __pad3; | ||
| 29 | unsigned int __pad4; | ||
| 30 | #if _MIPS_SIM == _ABI64 | ||
| 31 | int __cur_writer; | ||
| 32 | int __shared; | ||
| 33 | unsigned long int __pad1; | ||
| 34 | unsigned long int __pad2; | ||
| 35 | /* FLAGS must stay at this position in the structure to maintain | ||
| 36 | binary compatibility. */ | ||
| 37 | unsigned int __flags; | ||
| 38 | # else | ||
| 39 | # if __BYTE_ORDER == __BIG_ENDIAN | ||
| 40 | unsigned char __pad1; | ||
| 41 | unsigned char __pad2; | ||
| 42 | unsigned char __shared; | ||
| 43 | /* FLAGS must stay at this position in the structure to maintain | ||
| 44 | binary compatibility. */ | ||
| 45 | unsigned char __flags; | ||
| 46 | # else | ||
| 47 | /* FLAGS must stay at this position in the structure to maintain | ||
| 48 | binary compatibility. */ | ||
| 49 | unsigned char __flags; | ||
| 50 | unsigned char __shared; | ||
| 51 | unsigned char __pad1; | ||
| 52 | unsigned char __pad2; | ||
| 53 | # endif | ||
| 54 | int __cur_writer; | ||
| 55 | #endif | ||
| 56 | }; | ||
| 57 | |||
| 58 | #if _MIPS_SIM == _ABI64 | ||
| 59 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 60 | 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags | ||
| 61 | #else | ||
| 62 | # if __BYTE_ORDER == __BIG_ENDIAN | ||
| 63 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 64 | 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0 | ||
| 65 | # else | ||
| 66 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 67 | 0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0 | ||
| 68 | # endif | ||
| 69 | #endif | ||
| 70 | |||
| 71 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabi64/bits/termios-c_cc.h deleted-43| ... | @@ -1,43 +0,0 @@ | ||
| 1 | /* termios c_cc symbolic constant definitions. Linux/mips version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-c_cc.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* c_cc characters */ | ||
| 24 | #define VINTR		0	/* Interrupt character [ISIG]. */ | ||
| 25 | #define VQUIT		1	/* Quit character [ISIG]. */ | ||
| 26 | #define VERASE		2	/* Erase character [ICANON]. */ | ||
| 27 | #define VKILL		3	/* Kill-line character [ICANON]. */ | ||
| 28 | #define VMIN		4	/* Minimum number of bytes read at once [!ICANON]. */ | ||
| 29 | #define VTIME		5	/* Time-out value (tenths of a second) [!ICANON]. */ | ||
| 30 | #define VEOL2		6	/* Second EOL character [ICANON]. */ | ||
| 31 | #define VSWTC		7 | ||
| 32 | #define VSWTCH		VSWTC | ||
| 33 | #define VSTART		8	/* Start (X-ON) character [IXON, IXOFF]. */ | ||
| 34 | #define VSTOP		9	/* Stop (X-OFF) character [IXON, IXOFF]. */ | ||
| 35 | #define VSUSP		10	/* Suspend character [ISIG]. */ | ||
| 36 | 				/* VDSUSP is not supported on Linux. */ | ||
| 37 | /* #define VDSUSP	11	/ * Delayed suspend character [ISIG]. */ | ||
| 38 | #define VREPRINT	12	/* Reprint-line character [ICANON]. */ | ||
| 39 | #define VDISCARD	13	/* Discard character [IEXTEN]. */ | ||
| 40 | #define VWERASE		14	/* Word-erase character [ICANON]. */ | ||
| 41 | #define VLNEXT		15	/* Literal-next character [IEXTEN]. */ | ||
| 42 | #define VEOF		16	/* End-of-file character [ICANON]. */ | ||
| 43 | #define VEOL		17	/* End-of-line character [ICANON]. */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabi64/bits/termios-c_lflag.h deleted-46| ... | @@ -1,46 +0,0 @@ | ||
| 1 | /* termios local mode definitions. Linux/mips version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-c_lflag.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* c_lflag bits */ | ||
| 24 | #define ISIG	0000001		/* Enable signals. */ | ||
| 25 | #define ICANON	0000002		/* Do erase and kill processing. */ | ||
| 26 | #if defined __USE_MISC || (defined __USE_XOPEN && !defined __USE_XOPEN2K) | ||
| 27 | # define XCASE	0000004 | ||
| 28 | #endif | ||
| 29 | #define ECHO	0000010		/* Enable echo. */ | ||
| 30 | #define ECHOE	0000020		/* Visual erase for ERASE. */ | ||
| 31 | #define ECHOK	0000040		/* Echo NL after KILL. */ | ||
| 32 | #define ECHONL	0000100		/* Echo NL even if ECHO is off. */ | ||
| 33 | #define NOFLSH	0000200		/* Disable flush after interrupt. */ | ||
| 34 | #define IEXTEN	0000400		/* Enable DISCARD and LNEXT. */ | ||
| 35 | #ifdef __USE_MISC | ||
| 36 | # define ECHOCTL 0001000	/* Echo control characters as ^X. */ | ||
| 37 | # define ECHOPRT 0002000	/* Hardcopy visual erase. */ | ||
| 38 | # define ECHOKE	 0004000	/* Visual erase for KILL. */ | ||
| 39 | # define FLUSHO	0020000 | ||
| 40 | # define PENDIN	0040000		/* Retype pending input (state). */ | ||
| 41 | #endif | ||
| 42 | #define TOSTOP	0100000		/* Send SIGTTOU for background output. */ | ||
| 43 | #define ITOSTOP	TOSTOP | ||
| 44 | #ifdef __USE_MISC | ||
| 45 | # define EXTPROC 0200000 | ||
| 46 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabi64/bits/termios-struct.h deleted-34| ... | @@ -1,34 +0,0 @@ | ||
| 1 | /* struct termios definition. Linux/mips version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-struct.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #define NCCS 32 | ||
| 24 | struct termios | ||
| 25 | { | ||
| 26 | tcflag_t c_iflag;		/* input mode flags */ | ||
| 27 | tcflag_t c_oflag;		/* output mode flags */ | ||
| 28 | tcflag_t c_cflag;		/* control mode flags */ | ||
| 29 | tcflag_t c_lflag;		/* local mode flags */ | ||
| 30 | cc_t c_line;		/* line discipline */ | ||
| 31 | cc_t c_cc[NCCS];		/* control characters */ | ||
| 32 | #define _HAVE_STRUCT_TERMIOS_C_ISPEED 0 | ||
| 33 | #define _HAVE_STRUCT_TERMIOS_C_OSPEED 0 | ||
| 34 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabi64/bits/termios-tcflow.h deleted-26| ... | @@ -1,26 +0,0 @@ | ||
| 1 | /* termios local mode definitions. Linux/mips version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-tcflow.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* tcsetattr uses these */ | ||
| 24 | #define	TCSANOW		0x540e	/* Same as TCSETS; change immediately. */ | ||
| 25 | #define	TCSADRAIN	0x540f	/* Same as TCSETSW; change when pending output is written. */ | ||
| 26 | #define	TCSAFLUSH	0x5410	/* Same as TCSETSF; flush pending input before changing. */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabi64/bits/timerfd.h deleted-29| ... | @@ -1,29 +0,0 @@ | ||
| 1 | /* Copyright (C) 2008-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_SYS_TIMERFD_H | ||
| 19 | # error "Never use <bits/timerfd.h> directly; include <sys/timerfd.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Bits to be set in the FLAGS parameter of `timerfd_create'. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | TFD_CLOEXEC = 02000000, | ||
| 26 | #define TFD_CLOEXEC TFD_CLOEXEC | ||
| 27 | TFD_NONBLOCK = 00000200 | ||
| 28 | #define TFD_NONBLOCK TFD_NONBLOCK | ||
| 29 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabi64/bits/types/stack_t.h deleted-33| ... | @@ -1,33 +0,0 @@ | ||
| 1 | /* Define stack_t. MIPS Linux version. | ||
| 2 | Copyright (C) 1998-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef __stack_t_defined | ||
| 20 | #define __stack_t_defined 1 | ||
| 21 | |||
| 22 | #define __need_size_t | ||
| 23 | #include <stddef.h> | ||
| 24 | |||
| 25 | /* Structure describing a signal stack. */ | ||
| 26 | typedef struct | ||
| 27 | { | ||
| 28 | void *ss_sp; | ||
| 29 | size_t ss_size; | ||
| 30 | int ss_flags; | ||
| 31 | } stack_t; | ||
| 32 | |||
| 33 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabi64/bits/types/struct_msqid_ds.h deleted-62| ... | @@ -1,62 +0,0 @@ | ||
| 1 | /* Linux/MIPS implementation of the SysV message struct msqid_ds. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_MSG_H | ||
| 20 | # error "Never use <bits/msq.h> directly; include <sys/msg.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <bits/types/time_t.h> | ||
| 24 | |||
| 25 | /* Structure of record for one message inside the kernel. | ||
| 26 | The type `struct msg' is opaque. */ | ||
| 27 | struct msqid_ds | ||
| 28 | { | ||
| 29 | #ifdef __USE_TIME64_REDIRECTS | ||
| 30 | # include <bits/types/struct_msqid64_ds_helper.h> | ||
| 31 | #else | ||
| 32 | struct ipc_perm msg_perm;	/* structure describing operation permission */ | ||
| 33 | # if __TIMESIZE == 32 | ||
| 34 | # ifdef __MIPSEL__ | ||
| 35 | __time_t msg_stime;		/* time of last msgsnd command */ | ||
| 36 | unsigned long int __msg_stime_high; | ||
| 37 | __time_t msg_rtime;		/* time of last msgsnd command */ | ||
| 38 | unsigned long int __msg_rtime_high; | ||
| 39 | __time_t msg_ctime;		/* time of last change */ | ||
| 40 | unsigned long int __msg_ctime_high; | ||
| 41 | # else | ||
| 42 | unsigned long int __msg_stime_high; | ||
| 43 | __time_t msg_stime;		/* time of last msgsnd command */ | ||
| 44 | unsigned long int __msg_rtime_high; | ||
| 45 | __time_t msg_rtime;		/* time of last msgsnd command */ | ||
| 46 | unsigned long int __msg_ctime_high; | ||
| 47 | __time_t msg_ctime;		/* time of last change */ | ||
| 48 | # endif | ||
| 49 | # else | ||
| 50 | __time_t msg_stime;		/* time of last msgsnd command */ | ||
| 51 | __time_t msg_rtime;		/* time of last msgsnd command */ | ||
| 52 | __time_t msg_ctime;		/* time of last change */ | ||
| 53 | # endif | ||
| 54 | __syscall_ulong_t __msg_cbytes; /* current number of bytes on queue */ | ||
| 55 | msgqnum_t msg_qnum;		/* number of messages currently on queue */ | ||
| 56 | msglen_t msg_qbytes;		/* max number of bytes allowed on queue */ | ||
| 57 | __pid_t msg_lspid;		/* pid of last msgsnd() */ | ||
| 58 | __pid_t msg_lrpid;		/* pid of last msgrcv() */ | ||
| 59 | __syscall_ulong_t __glibc_reserved4; | ||
| 60 | __syscall_ulong_t __glibc_reserved5; | ||
| 61 | #endif | ||
| 62 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabi64/bits/types/struct_semid_ds.h deleted-36| ... | @@ -1,36 +0,0 @@ | ||
| 1 | /* MIPS implementation of the semaphore struct semid_ds | ||
| 2 | Copyright (C) 1995-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SEM_H | ||
| 20 | # error "Never include <bits/types/struct_semid_ds.h> directly; use <sys/sem.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Data structure describing a set of semaphores. */ | ||
| 24 | struct semid_ds | ||
| 25 | { | ||
| 26 | #ifdef __USE_TIME64_REDIRECTS | ||
| 27 | # include <bits/types/struct_semid64_ds_helper.h> | ||
| 28 | #else | ||
| 29 | struct ipc_perm sem_perm;		/* operation permission struct */ | ||
| 30 | __time_t sem_otime;	/* last semop() time */ | ||
| 31 | __time_t sem_ctime;	/* last time changed by semctl() */ | ||
| 32 | __syscall_ulong_t sem_nsems;		/* number of semaphores in set */ | ||
| 33 | __syscall_ulong_t __sem_otime_high; | ||
| 34 | __syscall_ulong_t __sem_ctime_high; | ||
| 35 | #endif | ||
| 36 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabi64/bits/types/struct_shmid_ds.h deleted-53| ... | @@ -1,53 +0,0 @@ | ||
| 1 | /* Linux/MIPS implementation of the shared memory struct shmid_ds. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SHM_H | ||
| 20 | # error "Never include <bits/types/struct_shmid_ds.h> directly; use <sys/shm.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Data structure describing a shared memory segment. */ | ||
| 24 | struct shmid_ds | ||
| 25 | { | ||
| 26 | #ifdef __USE_TIME64_REDIRECTS | ||
| 27 | # include <bits/types/struct_shmid64_ds_helper.h> | ||
| 28 | #else | ||
| 29 | struct ipc_perm shm_perm;		/* operation permission struct */ | ||
| 30 | size_t shm_segsz;			/* size of segment in bytes */ | ||
| 31 | # if __TIMESIZE == 32 | ||
| 32 | __time_t shm_atime;			/* time of last shmat() */ | ||
| 33 | __time_t shm_dtime;			/* time of last shmdt() */ | ||
| 34 | __time_t shm_ctime;			/* time of last change by shmctl() */ | ||
| 35 | # else | ||
| 36 | __time_t shm_atime;			/* time of last shmat() */ | ||
| 37 | __time_t shm_dtime;			/* time of last shmdt() */ | ||
| 38 | __time_t shm_ctime;			/* time of last change by shmctl() */ | ||
| 39 | # endif | ||
| 40 | __pid_t shm_cpid;			/* pid of creator */ | ||
| 41 | __pid_t shm_lpid;			/* pid of last shmop */ | ||
| 42 | shmatt_t shm_nattch;		/* number of current attaches */ | ||
| 43 | # if __TIMESIZE == 32 | ||
| 44 | unsigned short int __shm_atime_high; | ||
| 45 | unsigned short int __shm_dtime_high; | ||
| 46 | unsigned short int __shm_ctime_high; | ||
| 47 | unsigned short int __glibc_reserved4; | ||
| 48 | # else | ||
| 49 | __syscall_ulong_t __glibc_reserved5; | ||
| 50 | __syscall_ulong_t __glibc_reserved6; | ||
| 51 | # endif | ||
| 52 | #endif | ||
| 53 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabi64/bits/typesizes.h deleted-95| ... | @@ -1,95 +0,0 @@ | ||
| 1 | /* bits/typesizes.h -- underlying types for *_t. MIPS version. | ||
| 2 | Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_TYPES_H | ||
| 20 | # error "Never include <bits/typesizes.h> directly; use <sys/types.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef	_BITS_TYPESIZES_H | ||
| 24 | #define	_BITS_TYPESIZES_H	1 | ||
| 25 | |||
| 26 | /* See <bits/types.h> for the meaning of these macros. This file exists so | ||
| 27 | that <bits/types.h> need not vary across different GNU platforms. */ | ||
| 28 | |||
| 29 | #define __DEV_T_TYPE		__UQUAD_TYPE | ||
| 30 | #define __UID_T_TYPE		__U32_TYPE | ||
| 31 | #define __GID_T_TYPE		__U32_TYPE | ||
| 32 | #define __INO_T_TYPE		__ULONGWORD_TYPE | ||
| 33 | #define __INO64_T_TYPE		__UQUAD_TYPE | ||
| 34 | #define __MODE_T_TYPE		__U32_TYPE | ||
| 35 | #define __NLINK_T_TYPE		__UWORD_TYPE | ||
| 36 | #define __OFF_T_TYPE		__SLONGWORD_TYPE | ||
| 37 | #define __OFF64_T_TYPE		__SQUAD_TYPE | ||
| 38 | #define __PID_T_TYPE		__S32_TYPE | ||
| 39 | #define __RLIM_T_TYPE		__ULONGWORD_TYPE | ||
| 40 | #define __RLIM64_T_TYPE		__UQUAD_TYPE | ||
| 41 | #define	__BLKCNT_T_TYPE		__SLONGWORD_TYPE | ||
| 42 | #define	__BLKCNT64_T_TYPE	__SQUAD_TYPE | ||
| 43 | #define	__FSBLKCNT_T_TYPE	__ULONGWORD_TYPE | ||
| 44 | #define	__FSBLKCNT64_T_TYPE	__UQUAD_TYPE | ||
| 45 | #define	__FSFILCNT_T_TYPE	__ULONGWORD_TYPE | ||
| 46 | #define	__FSFILCNT64_T_TYPE	__UQUAD_TYPE | ||
| 47 | #define	__FSWORD_T_TYPE		__SWORD_TYPE | ||
| 48 | #define	__ID_T_TYPE		__U32_TYPE | ||
| 49 | #define __CLOCK_T_TYPE		__SLONGWORD_TYPE | ||
| 50 | #define __TIME_T_TYPE		__SLONGWORD_TYPE | ||
| 51 | #define __USECONDS_T_TYPE	__U32_TYPE | ||
| 52 | #define __SUSECONDS_T_TYPE	__SLONGWORD_TYPE | ||
| 53 | #define __SUSECONDS64_T_TYPE	__SQUAD_TYPE | ||
| 54 | #define __DADDR_T_TYPE		__S32_TYPE | ||
| 55 | #define __KEY_T_TYPE		__S32_TYPE | ||
| 56 | #define __CLOCKID_T_TYPE	__S32_TYPE | ||
| 57 | #define __TIMER_T_TYPE		void * | ||
| 58 | #define __BLKSIZE_T_TYPE	__SLONGWORD_TYPE | ||
| 59 | #define __FSID_T_TYPE		struct { int __val[2]; } | ||
| 60 | #define __SSIZE_T_TYPE		__SWORD_TYPE | ||
| 61 | #define __SYSCALL_SLONG_TYPE	__SLONGWORD_TYPE | ||
| 62 | #define __SYSCALL_ULONG_TYPE	__ULONGWORD_TYPE | ||
| 63 | #define __CPU_MASK_TYPE 	__ULONGWORD_TYPE | ||
| 64 | |||
| 65 | #ifdef __LP64__ | ||
| 66 | /* Tell the libc code that off_t and off64_t are actually the same type | ||
| 67 | for all ABI purposes, even if possibly expressed as different base types | ||
| 68 | for C type-checking purposes. */ | ||
| 69 | # define __OFF_T_MATCHES_OFF64_T	1 | ||
| 70 | |||
| 71 | /* Same for ino_t and ino64_t. */ | ||
| 72 | # define __INO_T_MATCHES_INO64_T	1 | ||
| 73 | |||
| 74 | /* And for rlim_t and rlim64_t. */ | ||
| 75 | # define __RLIM_T_MATCHES_RLIM64_T	1 | ||
| 76 | |||
| 77 | /* And for fsblkcnt_t, fsblkcnt64_t, fsfilcnt_t and fsfilcnt64_t. */ | ||
| 78 | # define __STATFS_MATCHES_STATFS64 1 | ||
| 79 | |||
| 80 | /* And for getitimer, setitimer and rusage */ | ||
| 81 | # define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 1 | ||
| 82 | #else | ||
| 83 | # define __RLIM_T_MATCHES_RLIM64_T	0 | ||
| 84 | |||
| 85 | # define __STATFS_MATCHES_STATFS64 0 | ||
| 86 | |||
| 87 | /* And for getitimer, setitimer and rusage */ | ||
| 88 | # define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 0 | ||
| 89 | #endif | ||
| 90 | |||
| 91 | /* Number of descriptors that can fit in an `fd_set'. */ | ||
| 92 | #define	__FD_SETSIZE		1024 | ||
| 93 | |||
| 94 | |||
| 95 | #endif /* bits/typesizes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabi64/ieee754.h deleted-326| ... | @@ -1,326 +0,0 @@ | ||
| 1 | /* Copyright (C) 1992-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _IEEE754_H | ||
| 19 | #define _IEEE754_H 1 | ||
| 20 | |||
| 21 | #include <features.h> | ||
| 22 | |||
| 23 | #include <bits/endian.h> | ||
| 24 | |||
| 25 | #ifndef __LDBL_MANT_DIG__ | ||
| 26 | # include <float.h> | ||
| 27 | # define __LDBL_MANT_DIG__ LDBL_MANT_DIG | ||
| 28 | #endif | ||
| 29 | |||
| 30 | __BEGIN_DECLS | ||
| 31 | |||
| 32 | union ieee754_float | ||
| 33 | { | ||
| 34 | float f; | ||
| 35 | |||
| 36 | /* This is the IEEE 754 single-precision format. */ | ||
| 37 | struct | ||
| 38 | { | ||
| 39 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 40 | 	unsigned int negative:1; | ||
| 41 | 	unsigned int exponent:8; | ||
| 42 | 	unsigned int mantissa:23; | ||
| 43 | #endif				/* Big endian. */ | ||
| 44 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 45 | 	unsigned int mantissa:23; | ||
| 46 | 	unsigned int exponent:8; | ||
| 47 | 	unsigned int negative:1; | ||
| 48 | #endif				/* Little endian. */ | ||
| 49 | } ieee; | ||
| 50 | |||
| 51 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 52 | struct | ||
| 53 | { | ||
| 54 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 55 | 	unsigned int negative:1; | ||
| 56 | 	unsigned int exponent:8; | ||
| 57 | 	unsigned int quiet_nan:1; | ||
| 58 | 	unsigned int mantissa:22; | ||
| 59 | #endif				/* Big endian. */ | ||
| 60 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 61 | 	unsigned int mantissa:22; | ||
| 62 | 	unsigned int quiet_nan:1; | ||
| 63 | 	unsigned int exponent:8; | ||
| 64 | 	unsigned int negative:1; | ||
| 65 | #endif				/* Little endian. */ | ||
| 66 | } ieee_nan; | ||
| 67 | }; | ||
| 68 | |||
| 69 | #define IEEE754_FLOAT_BIAS	0x7f /* Added to exponent. */ | ||
| 70 | |||
| 71 | |||
| 72 | union ieee754_double | ||
| 73 | { | ||
| 74 | double d; | ||
| 75 | |||
| 76 | /* This is the IEEE 754 double-precision format. */ | ||
| 77 | struct | ||
| 78 | { | ||
| 79 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 80 | 	unsigned int negative:1; | ||
| 81 | 	unsigned int exponent:11; | ||
| 82 | 	/* Together these comprise the mantissa. */ | ||
| 83 | 	unsigned int mantissa0:20; | ||
| 84 | 	unsigned int mantissa1:32; | ||
| 85 | #endif				/* Big endian. */ | ||
| 86 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 87 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 88 | 	unsigned int mantissa0:20; | ||
| 89 | 	unsigned int exponent:11; | ||
| 90 | 	unsigned int negative:1; | ||
| 91 | 	unsigned int mantissa1:32; | ||
| 92 | # else | ||
| 93 | 	/* Together these comprise the mantissa. */ | ||
| 94 | 	unsigned int mantissa1:32; | ||
| 95 | 	unsigned int mantissa0:20; | ||
| 96 | 	unsigned int exponent:11; | ||
| 97 | 	unsigned int negative:1; | ||
| 98 | # endif | ||
| 99 | #endif				/* Little endian. */ | ||
| 100 | } ieee; | ||
| 101 | |||
| 102 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 103 | struct | ||
| 104 | { | ||
| 105 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 106 | 	unsigned int negative:1; | ||
| 107 | 	unsigned int exponent:11; | ||
| 108 | 	unsigned int quiet_nan:1; | ||
| 109 | 	/* Together these comprise the mantissa. */ | ||
| 110 | 	unsigned int mantissa0:19; | ||
| 111 | 	unsigned int mantissa1:32; | ||
| 112 | #else | ||
| 113 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 114 | 	unsigned int mantissa0:19; | ||
| 115 | 	unsigned int quiet_nan:1; | ||
| 116 | 	unsigned int exponent:11; | ||
| 117 | 	unsigned int negative:1; | ||
| 118 | 	unsigned int mantissa1:32; | ||
| 119 | # else | ||
| 120 | 	/* Together these comprise the mantissa. */ | ||
| 121 | 	unsigned int mantissa1:32; | ||
| 122 | 	unsigned int mantissa0:19; | ||
| 123 | 	unsigned int quiet_nan:1; | ||
| 124 | 	unsigned int exponent:11; | ||
| 125 | 	unsigned int negative:1; | ||
| 126 | # endif | ||
| 127 | #endif | ||
| 128 | } ieee_nan; | ||
| 129 | }; | ||
| 130 | |||
| 131 | #define IEEE754_DOUBLE_BIAS	0x3ff /* Added to exponent. */ | ||
| 132 | |||
| 133 | #if __LDBL_MANT_DIG__ == 113 | ||
| 134 | |||
| 135 | union ieee854_long_double | ||
| 136 | { | ||
| 137 | long double d; | ||
| 138 | |||
| 139 | /* This is the IEEE 854 quad-precision format. */ | ||
| 140 | struct | ||
| 141 | { | ||
| 142 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 143 | 	unsigned int negative:1; | ||
| 144 | 	unsigned int exponent:15; | ||
| 145 | 	/* Together these comprise the mantissa. */ | ||
| 146 | 	unsigned int mantissa0:16; | ||
| 147 | 	unsigned int mantissa1:32; | ||
| 148 | 	unsigned int mantissa2:32; | ||
| 149 | 	unsigned int mantissa3:32; | ||
| 150 | #endif				/* Big endian. */ | ||
| 151 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 152 | 	/* Together these comprise the mantissa. */ | ||
| 153 | 	unsigned int mantissa3:32; | ||
| 154 | 	unsigned int mantissa2:32; | ||
| 155 | 	unsigned int mantissa1:32; | ||
| 156 | 	unsigned int mantissa0:16; | ||
| 157 | 	unsigned int exponent:15; | ||
| 158 | 	unsigned int negative:1; | ||
| 159 | #endif				/* Little endian. */ | ||
| 160 | } ieee; | ||
| 161 | |||
| 162 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 163 | struct | ||
| 164 | { | ||
| 165 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 166 | 	unsigned int negative:1; | ||
| 167 | 	unsigned int exponent:15; | ||
| 168 | 	unsigned int quiet_nan:1; | ||
| 169 | 	/* Together these comprise the mantissa. */ | ||
| 170 | 	unsigned int mantissa0:15; | ||
| 171 | 	unsigned int mantissa1:32; | ||
| 172 | 	unsigned int mantissa2:32; | ||
| 173 | 	unsigned int mantissa3:32; | ||
| 174 | #endif				/* Big endian. */ | ||
| 175 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 176 | 	/* Together these comprise the mantissa. */ | ||
| 177 | 	unsigned int mantissa3:32; | ||
| 178 | 	unsigned int mantissa2:32; | ||
| 179 | 	unsigned int mantissa1:32; | ||
| 180 | 	unsigned int mantissa0:15; | ||
| 181 | 	unsigned int quiet_nan:1; | ||
| 182 | 	unsigned int exponent:15; | ||
| 183 | 	unsigned int negative:1; | ||
| 184 | #endif				/* Little endian. */ | ||
| 185 | } ieee_nan; | ||
| 186 | }; | ||
| 187 | |||
| 188 | #define IEEE854_LONG_DOUBLE_BIAS 0x3fff /* Added to exponent. */ | ||
| 189 | |||
| 190 | #elif __LDBL_MANT_DIG__ == 64 | ||
| 191 | |||
| 192 | union ieee854_long_double | ||
| 193 | { | ||
| 194 | long double d; | ||
| 195 | |||
| 196 | /* This is the IEEE 854 double-extended-precision format. */ | ||
| 197 | struct | ||
| 198 | { | ||
| 199 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 200 | 	unsigned int negative:1; | ||
| 201 | 	unsigned int exponent:15; | ||
| 202 | 	unsigned int empty:16; | ||
| 203 | 	unsigned int mantissa0:32; | ||
| 204 | 	unsigned int mantissa1:32; | ||
| 205 | #endif | ||
| 206 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 207 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 208 | 	unsigned int exponent:15; | ||
| 209 | 	unsigned int negative:1; | ||
| 210 | 	unsigned int empty:16; | ||
| 211 | 	unsigned int mantissa0:32; | ||
| 212 | 	unsigned int mantissa1:32; | ||
| 213 | # else | ||
| 214 | 	unsigned int mantissa1:32; | ||
| 215 | 	unsigned int mantissa0:32; | ||
| 216 | 	unsigned int exponent:15; | ||
| 217 | 	unsigned int negative:1; | ||
| 218 | 	unsigned int empty:16; | ||
| 219 | # endif | ||
| 220 | #endif | ||
| 221 | } ieee; | ||
| 222 | |||
| 223 | /* This is for NaNs in the IEEE 854 double-extended-precision format. */ | ||
| 224 | struct | ||
| 225 | { | ||
| 226 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 227 | 	unsigned int negative:1; | ||
| 228 | 	unsigned int exponent:15; | ||
| 229 | 	unsigned int empty:16; | ||
| 230 | 	unsigned int one:1; | ||
| 231 | 	unsigned int quiet_nan:1; | ||
| 232 | 	unsigned int mantissa0:30; | ||
| 233 | 	unsigned int mantissa1:32; | ||
| 234 | #endif | ||
| 235 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 236 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 237 | 	unsigned int exponent:15; | ||
| 238 | 	unsigned int negative:1; | ||
| 239 | 	unsigned int empty:16; | ||
| 240 | 	unsigned int mantissa0:30; | ||
| 241 | 	unsigned int quiet_nan:1; | ||
| 242 | 	unsigned int one:1; | ||
| 243 | 	unsigned int mantissa1:32; | ||
| 244 | # else | ||
| 245 | 	unsigned int mantissa1:32; | ||
| 246 | 	unsigned int mantissa0:30; | ||
| 247 | 	unsigned int quiet_nan:1; | ||
| 248 | 	unsigned int one:1; | ||
| 249 | 	unsigned int exponent:15; | ||
| 250 | 	unsigned int negative:1; | ||
| 251 | 	unsigned int empty:16; | ||
| 252 | # endif | ||
| 253 | #endif | ||
| 254 | } ieee_nan; | ||
| 255 | }; | ||
| 256 | |||
| 257 | #define IEEE854_LONG_DOUBLE_BIAS 0x3fff | ||
| 258 | |||
| 259 | #elif __LDBL_MANT_DIG__ == 53 | ||
| 260 | |||
| 261 | union ieee854_long_double | ||
| 262 | { | ||
| 263 | long double d; | ||
| 264 | |||
| 265 | /* This is the IEEE 754 double-precision format. */ | ||
| 266 | struct | ||
| 267 | { | ||
| 268 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 269 | 	unsigned int negative:1; | ||
| 270 | 	unsigned int exponent:11; | ||
| 271 | 	/* Together these comprise the mantissa. */ | ||
| 272 | 	unsigned int mantissa0:20; | ||
| 273 | 	unsigned int mantissa1:32; | ||
| 274 | #endif				/* Big endian. */ | ||
| 275 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 276 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 277 | 	unsigned int mantissa0:20; | ||
| 278 | 	unsigned int exponent:11; | ||
| 279 | 	unsigned int negative:1; | ||
| 280 | 	unsigned int mantissa1:32; | ||
| 281 | # else | ||
| 282 | 	/* Together these comprise the mantissa. */ | ||
| 283 | 	unsigned int mantissa1:32; | ||
| 284 | 	unsigned int mantissa0:20; | ||
| 285 | 	unsigned int exponent:11; | ||
| 286 | 	unsigned int negative:1; | ||
| 287 | # endif | ||
| 288 | #endif				/* Little endian. */ | ||
| 289 | } ieee; | ||
| 290 | |||
| 291 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 292 | struct | ||
| 293 | { | ||
| 294 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 295 | 	unsigned int negative:1; | ||
| 296 | 	unsigned int exponent:11; | ||
| 297 | 	unsigned int quiet_nan:1; | ||
| 298 | 	/* Together these comprise the mantissa. */ | ||
| 299 | 	unsigned int mantissa0:19; | ||
| 300 | 	unsigned int mantissa1:32; | ||
| 301 | #else | ||
| 302 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 303 | 	unsigned int mantissa0:19; | ||
| 304 | 	unsigned int quiet_nan:1; | ||
| 305 | 	unsigned int exponent:11; | ||
| 306 | 	unsigned int negative:1; | ||
| 307 | 	unsigned int mantissa1:32; | ||
| 308 | # else | ||
| 309 | 	/* Together these comprise the mantissa. */ | ||
| 310 | 	unsigned int mantissa1:32; | ||
| 311 | 	unsigned int mantissa0:19; | ||
| 312 | 	unsigned int quiet_nan:1; | ||
| 313 | 	unsigned int exponent:11; | ||
| 314 | 	unsigned int negative:1; | ||
| 315 | # endif | ||
| 316 | #endif | ||
| 317 | } ieee_nan; | ||
| 318 | }; | ||
| 319 | |||
| 320 | #define IEEE854_LONG_DOUBLE_BIAS	0x3ff /* Added to exponent. */ | ||
| 321 | |||
| 322 | #endif /* __LDBL_MANT_DIG__ == 53 */ | ||
| 323 | |||
| 324 | __END_DECLS | ||
| 325 | |||
| 326 | #endif /* ieee754.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabin32/bits/dlfcn.h deleted-64| ... | @@ -1,64 +0,0 @@ | ||
| 1 | /* System dependent definitions for run-time dynamic loading. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _DLFCN_H | ||
| 20 | # error "Never use <bits/dlfcn.h> directly; include <dlfcn.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* The MODE argument to `dlopen' contains one of the following: */ | ||
| 24 | #define RTLD_LAZY	0x0001	/* Lazy function call binding. */ | ||
| 25 | #define RTLD_NOW	0x0002	/* Immediate function call binding. */ | ||
| 26 | #define RTLD_BINDING_MASK 0x3	/* Mask of binding time value. */ | ||
| 27 | #define RTLD_NOLOAD	0x00008	/* Do not load the object. */ | ||
| 28 | #define RTLD_DEEPBIND	0x00010	/* Use deep binding. */ | ||
| 29 | |||
| 30 | /* If the following bit is set in the MODE argument to `dlopen', | ||
| 31 | the symbols of the loaded object and its dependencies are made | ||
| 32 | visible as if the object were linked directly into the program. */ | ||
| 33 | #define RTLD_GLOBAL	0x0004 | ||
| 34 | |||
| 35 | /* Unix98 demands the following flag which is the inverse to RTLD_GLOBAL. | ||
| 36 | The implementation does this by default and so we can define the | ||
| 37 | value to zero. */ | ||
| 38 | #define RTLD_LOCAL 0 | ||
| 39 | |||
| 40 | /* Do not delete object when closed. */ | ||
| 41 | #define RTLD_NODELETE	0x01000 | ||
| 42 | |||
| 43 | #ifdef __USE_GNU | ||
| 44 | /* To support profiling of shared objects it is a good idea to call | ||
| 45 | the function found using `dlsym' using the following macro since | ||
| 46 | these calls do not use the PLT. But this would mean the dynamic | ||
| 47 | loader has no chance to find out when the function is called. The | ||
| 48 | macro applies the necessary magic so that profiling is possible. | ||
| 49 | Rewrite | ||
| 50 | 	foo = (*fctp) (arg1, arg2); | ||
| 51 | into | ||
| 52 | foo = DL_CALL_FCT (fctp, (arg1, arg2)); | ||
| 53 | */ | ||
| 54 | # define DL_CALL_FCT(fctp, args) \ | ||
| 55 | (_dl_mcount_wrapper_check ((void *) (fctp)), (*(fctp)) args) | ||
| 56 | |||
| 57 | __BEGIN_DECLS | ||
| 58 | |||
| 59 | /* This function calls the profiling functions. */ | ||
| 60 | extern void _dl_mcount_wrapper_check (void *__selfpc) __THROW; | ||
| 61 | |||
| 62 | __END_DECLS | ||
| 63 | |||
| 64 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabin32/bits/errno.h deleted-52| ... | @@ -1,52 +0,0 @@ | ||
| 1 | /* Error constants. MIPS/Linux specific version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_ERRNO_H | ||
| 20 | |||
| 21 | #if !defined _ERRNO_H | ||
| 22 | # error "Never include <bits/errno.h> directly; use <errno.h> instead." | ||
| 23 | #endif | ||
| 24 | |||
| 25 | # include <linux/errno.h> | ||
| 26 | |||
| 27 | /* Older Linux headers do not define these constants. */ | ||
| 28 | # ifndef ENOTSUP | ||
| 29 | # define ENOTSUP		EOPNOTSUPP | ||
| 30 | # endif | ||
| 31 | |||
| 32 | # ifndef ECANCELED | ||
| 33 | # define ECANCELED		158 | ||
| 34 | # endif | ||
| 35 | |||
| 36 | # ifndef EOWNERDEAD | ||
| 37 | # define EOWNERDEAD		165 | ||
| 38 | # endif | ||
| 39 | |||
| 40 | # ifndef ENOTRECOVERABLE | ||
| 41 | # define ENOTRECOVERABLE	166 | ||
| 42 | # endif | ||
| 43 | |||
| 44 | # ifndef ERFKILL | ||
| 45 | # define ERFKILL		167 | ||
| 46 | # endif | ||
| 47 | |||
| 48 | # ifndef EHWPOISON | ||
| 49 | # define EHWPOISON		168 | ||
| 50 | # endif | ||
| 51 | |||
| 52 | #endif /* bits/errno.h. */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabin32/bits/eventfd.h deleted-31| ... | @@ -1,31 +0,0 @@ | ||
| 1 | /* Copyright (C) 2007-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_SYS_EVENTFD_H | ||
| 19 | # error "Never use <bits/eventfd.h> directly; include <sys/eventfd.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Flags for eventfd. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | EFD_SEMAPHORE = 00000001, | ||
| 26 | #define EFD_SEMAPHORE EFD_SEMAPHORE | ||
| 27 | EFD_CLOEXEC = 02000000, | ||
| 28 | #define EFD_CLOEXEC EFD_CLOEXEC | ||
| 29 | EFD_NONBLOCK = 00000200 | ||
| 30 | #define EFD_NONBLOCK EFD_NONBLOCK | ||
| 31 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabin32/bits/floatn.h deleted-97| ... | @@ -1,97 +0,0 @@ | ||
| 1 | /* Macros to control TS 18661-3 glibc features on MIPS platforms. | ||
| 2 | Copyright (C) 2017-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_FLOATN_H | ||
| 20 | #define _BITS_FLOATN_H | ||
| 21 | |||
| 22 | #include <features.h> | ||
| 23 | #include <bits/long-double.h> | ||
| 24 | |||
| 25 | /* Defined to 1 if the current compiler invocation provides a | ||
| 26 | floating-point type with the IEEE 754 binary128 format, and this | ||
| 27 | glibc includes corresponding *f128 interfaces for it. */ | ||
| 28 | #ifndef __NO_LONG_DOUBLE_MATH | ||
| 29 | # define __HAVE_FLOAT128 1 | ||
| 30 | #else | ||
| 31 | /* glibc does not support _Float128 for platforms where long double is | ||
| 32 | normally binary128 when building with long double as binary64. | ||
| 33 | GCC's default for supported scalar modes does not support it either | ||
| 34 | in that case. */ | ||
| 35 | # define __HAVE_FLOAT128 0 | ||
| 36 | #endif | ||
| 37 | |||
| 38 | /* Defined to 1 if __HAVE_FLOAT128 is 1 and the type is ABI-distinct | ||
| 39 | from the default float, double and long double types in this glibc. */ | ||
| 40 | #define __HAVE_DISTINCT_FLOAT128 0 | ||
| 41 | |||
| 42 | /* Defined to 1 if the current compiler invocation provides a | ||
| 43 | floating-point type with the right format for _Float64x, and this | ||
| 44 | glibc includes corresponding *f64x interfaces for it. */ | ||
| 45 | #define __HAVE_FLOAT64X __HAVE_FLOAT128 | ||
| 46 | |||
| 47 | /* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format | ||
| 48 | of long double. Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has | ||
| 49 | the format of _Float128, which must be different from that of long | ||
| 50 | double. */ | ||
| 51 | #define __HAVE_FLOAT64X_LONG_DOUBLE __HAVE_FLOAT128 | ||
| 52 | |||
| 53 | #ifndef __ASSEMBLER__ | ||
| 54 | |||
| 55 | /* Defined to concatenate the literal suffix to be used with _Float128 | ||
| 56 | types, if __HAVE_FLOAT128 is 1. */ | ||
| 57 | # if __HAVE_FLOAT128 | ||
| 58 | # if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) | ||
| 59 | /* The literal suffix f128 exists only since GCC 7.0. */ | ||
| 60 | # define __f128(x) x##l | ||
| 61 | # else | ||
| 62 | # define __f128(x) x##f128 | ||
| 63 | # endif | ||
| 64 | # endif | ||
| 65 | |||
| 66 | /* Defined to a complex binary128 type if __HAVE_FLOAT128 is 1. */ | ||
| 67 | # if __HAVE_FLOAT128 | ||
| 68 | # if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) | ||
| 69 | # define __CFLOAT128 _Complex long double | ||
| 70 | # else | ||
| 71 | # define __CFLOAT128 _Complex _Float128 | ||
| 72 | # endif | ||
| 73 | # endif | ||
| 74 | |||
| 75 | /* The remaining of this file provides support for older compilers. */ | ||
| 76 | # if __HAVE_FLOAT128 | ||
| 77 | |||
| 78 | /* The type _Float128 exists only since GCC 7.0. */ | ||
| 79 | # if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) | ||
| 80 | typedef long double _Float128; | ||
| 81 | # endif | ||
| 82 | |||
| 83 | /* Various built-in functions do not exist before GCC 7.0. */ | ||
| 84 | # if !__GNUC_PREREQ (7, 0) | ||
| 85 | # define __builtin_huge_valf128() (__builtin_huge_vall ()) | ||
| 86 | # define __builtin_inff128() (__builtin_infl ()) | ||
| 87 | # define __builtin_nanf128(x) (__builtin_nanl (x)) | ||
| 88 | # define __builtin_nansf128(x) (__builtin_nansl (x)) | ||
| 89 | # endif | ||
| 90 | |||
| 91 | # endif | ||
| 92 | |||
| 93 | #endif /* !__ASSEMBLER__. */ | ||
| 94 | |||
| 95 | #include <bits/floatn-common.h> | ||
| 96 | |||
| 97 | #endif /* _BITS_FLOATN_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabin32/bits/inotify.h deleted-29| ... | @@ -1,29 +0,0 @@ | ||
| 1 | /* Copyright (C) 2005-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_SYS_INOTIFY_H | ||
| 19 | # error "Never use <bits/inotify.h> directly; include <sys/inotify.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Flags for the parameter of inotify_init1. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | IN_CLOEXEC = 02000000, | ||
| 26 | #define IN_CLOEXEC IN_CLOEXEC | ||
| 27 | IN_NONBLOCK = 00000200 | ||
| 28 | #define IN_NONBLOCK IN_NONBLOCK | ||
| 29 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabin32/bits/ioctl-types.h deleted-75| ... | @@ -1,75 +0,0 @@ | ||
| 1 | /* Structure types for pre-termios terminal ioctls. Linux/MIPS version. | ||
| 2 | Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_IOCTL_H | ||
| 20 | # error "Never use <bits/ioctl-types.h> directly; include <sys/ioctl.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Get definition of constants for use with `ioctl'. */ | ||
| 24 | #include <asm/ioctls.h> | ||
| 25 | |||
| 26 | struct winsize | ||
| 27 | { | ||
| 28 | unsigned short int ws_row; | ||
| 29 | unsigned short int ws_col; | ||
| 30 | unsigned short int ws_xpixel; | ||
| 31 | unsigned short int ws_ypixel; | ||
| 32 | }; | ||
| 33 | |||
| 34 | #define NCC	8 | ||
| 35 | struct termio | ||
| 36 | { | ||
| 37 | unsigned short int c_iflag;		/* input mode flags */ | ||
| 38 | unsigned short int c_oflag;		/* output mode flags */ | ||
| 39 | unsigned short int c_cflag;		/* control mode flags */ | ||
| 40 | unsigned short int c_lflag;		/* local mode flags */ | ||
| 41 | char c_line;			/* line discipline */ | ||
| 42 | /* Yes, this is really NCCS. */ | ||
| 43 | unsigned char c_cc[32 /* NCCS */]; /* control characters */ | ||
| 44 | }; | ||
| 45 | |||
| 46 | /* modem lines */ | ||
| 47 | #define TIOCM_LE	0x001		/* line enable */ | ||
| 48 | #define TIOCM_DTR	0x002		/* data terminal ready */ | ||
| 49 | #define TIOCM_RTS	0x004		/* request to send */ | ||
| 50 | #define TIOCM_ST	0x010		/* secondary transmit */ | ||
| 51 | #define TIOCM_SR	0x020		/* secondary receive */ | ||
| 52 | #define TIOCM_CTS	0x040		/* clear to send */ | ||
| 53 | #define TIOCM_CAR	0x100		/* carrier detect */ | ||
| 54 | #define TIOCM_CD	TIOCM_CAR | ||
| 55 | #define TIOCM_RNG	0x200		/* ring */ | ||
| 56 | #define TIOCM_RI	TIOCM_RNG | ||
| 57 | #define TIOCM_DSR	0x400		/* data set ready */ | ||
| 58 | |||
| 59 | /* line disciplines */ | ||
| 60 | #define N_TTY		0 | ||
| 61 | #define N_SLIP		1 | ||
| 62 | #define N_MOUSE		2 | ||
| 63 | #define N_PPP		3 | ||
| 64 | #define N_STRIP		4 | ||
| 65 | #define N_AX25		5 | ||
| 66 | #define N_X25		6	/* X.25 async */ | ||
| 67 | #define N_6PACK		7 | ||
| 68 | #define N_MASC		8	/* Mobitex module */ | ||
| 69 | #define N_R3964		9	/* Simatic R3964 module */ | ||
| 70 | #define N_PROFIBUS_FDL	10	/* Profibus */ | ||
| 71 | #define N_IRDA		11	/* Linux IR */ | ||
| 72 | #define N_SMSBLOCK	12	/* SMS block mode */ | ||
| 73 | #define N_HDLC		13	/* synchronous HDLC */ | ||
| 74 | #define N_SYNC_PPP	14	/* synchronous PPP */ | ||
| 75 | #define	N_HCI		15	/* Bluetooth HCI UART */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabin32/bits/ipctypes.h deleted-31| ... | @@ -1,31 +0,0 @@ | ||
| 1 | /* bits/ipctypes.h -- Define some types used by SysV IPC/MSG/SHM. MIPS version | ||
| 2 | Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* | ||
| 20 | * Never include <bits/ipctypes.h> directly. | ||
| 21 | */ | ||
| 22 | |||
| 23 | #ifndef _BITS_IPCTYPES_H | ||
| 24 | #define _BITS_IPCTYPES_H	1 | ||
| 25 | |||
| 26 | #include <bits/types.h> | ||
| 27 | |||
| 28 | typedef __SLONG32_TYPE __ipc_pid_t; | ||
| 29 | |||
| 30 | |||
| 31 | #endif /* bits/ipctypes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabin32/bits/mman.h deleted-44| ... | @@ -1,44 +0,0 @@ | ||
| 1 | /* Definitions for POSIX memory map interface. Linux/MIPS version. | ||
| 2 | Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_MMAN_H | ||
| 20 | # error "Never use <bits/mman.h> directly; include <sys/mman.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* The following definitions basically come from the kernel headers. | ||
| 24 | But the kernel header is not namespace clean. */ | ||
| 25 | |||
| 26 | /* These are Linux-specific. */ | ||
| 27 | #define MAP_NORESERVE	0x0400		/* don't check for reservations */ | ||
| 28 | #define MAP_GROWSDOWN	0x1000		/* stack-like segment */ | ||
| 29 | #define MAP_DENYWRITE	0x2000		/* ETXTBSY */ | ||
| 30 | #define MAP_EXECUTABLE	0x4000		/* mark it as an executable */ | ||
| 31 | #define MAP_LOCKED	0x8000		/* pages are locked */ | ||
| 32 | #define MAP_POPULATE 0x10000 /* populate (prefault) pagetables */ | ||
| 33 | #define MAP_NONBLOCK 0x20000 /* do not block on IO */ | ||
| 34 | #define MAP_STACK	0x40000		/* Allocation is for a stack. */ | ||
| 35 | #define MAP_HUGETLB	0x80000		/* Create huge page mapping. */ | ||
| 36 | #define MAP_FIXED_NOREPLACE 0x100000	/* MAP_FIXED but do not unmap | ||
| 37 | 					 underlying mapping. */ | ||
| 38 | |||
| 39 | #define __MAP_ANONYMOUS 0x0800 | ||
| 40 | |||
| 41 | /* Include generic Linux declarations. */ | ||
| 42 | #include <bits/mman-linux.h> | ||
| 43 | |||
| 44 | #define MAP_RENAME	MAP_ANONYMOUS | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabin32/bits/poll.h deleted-49| ... | @@ -1,49 +0,0 @@ | ||
| 1 | /* Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_POLL_H | ||
| 19 | # error "Never use <bits/poll.h> directly; include <sys/poll.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Event types that can be polled for. These bits may be set in `events' | ||
| 23 | to indicate the interesting event types; they will appear in `revents' | ||
| 24 | to indicate the status of the file descriptor. */ | ||
| 25 | #define POLLIN		0x001		/* There is data to read. */ | ||
| 26 | #define POLLPRI		0x002		/* There is urgent data to read. */ | ||
| 27 | #define POLLOUT		0x004		/* Writing now will not block. */ | ||
| 28 | |||
| 29 | #if defined __USE_XOPEN || defined __USE_XOPEN2K8 | ||
| 30 | /* These values are defined in XPG4.2. */ | ||
| 31 | # define POLLRDNORM	0x040		/* Normal data may be read. */ | ||
| 32 | # define POLLRDBAND	0x080		/* Priority data may be read. */ | ||
| 33 | # define POLLWRNORM	POLLOUT		/* Writing now will not block. */ | ||
| 34 | # define POLLWRBAND	0x100		/* Priority data may be written. */ | ||
| 35 | #endif | ||
| 36 | |||
| 37 | #ifdef __USE_GNU | ||
| 38 | /* These are extensions for Linux. */ | ||
| 39 | # define POLLMSG	0x400 | ||
| 40 | # define POLLREMOVE	0x1000 | ||
| 41 | # define POLLRDHUP	0x2000 | ||
| 42 | #endif | ||
| 43 | |||
| 44 | /* Event types always implicitly polled for. These bits need not be set in | ||
| 45 | `events', but they will appear in `revents' to indicate the status of | ||
| 46 | the file descriptor. */ | ||
| 47 | #define POLLERR		0x008		/* Error condition. */ | ||
| 48 | #define POLLHUP		0x010		/* Hung up. */ | ||
| 49 | #define POLLNVAL	0x020		/* Invalid polling request. */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabin32/bits/pthread_stack_min.h deleted-20| ... | @@ -1,20 +0,0 @@ | ||
| 1 | /* Definition of PTHREAD_STACK_MIN. MIPS Linux version. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public License as | ||
| 7 | published by the Free Software Foundation; either version 2.1 of the | ||
| 8 | License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* Minimum size for a thread. At least two pages with 64k pages. */ | ||
| 20 | #define PTHREAD_STACK_MIN	131072 | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabin32/bits/pthreadtypes-arch.h deleted-44| ... | @@ -1,44 +0,0 @@ | ||
| 1 | /* Machine-specific pthread type layouts. MIPS version. | ||
| 2 | Copyright (C) 2005-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_PTHREADTYPES_ARCH_H | ||
| 20 | #define _BITS_PTHREADTYPES_ARCH_H	1 | ||
| 21 | |||
| 22 | #include <bits/endian.h> | ||
| 23 | |||
| 24 | #if _MIPS_SIM == _ABI64 | ||
| 25 | # define __SIZEOF_PTHREAD_ATTR_T 56 | ||
| 26 | # define __SIZEOF_PTHREAD_MUTEX_T 40 | ||
| 27 | # define __SIZEOF_PTHREAD_RWLOCK_T 56 | ||
| 28 | # define __SIZEOF_PTHREAD_BARRIER_T 32 | ||
| 29 | #else | ||
| 30 | # define __SIZEOF_PTHREAD_ATTR_T 36 | ||
| 31 | # define __SIZEOF_PTHREAD_MUTEX_T 24 | ||
| 32 | # define __SIZEOF_PTHREAD_RWLOCK_T 32 | ||
| 33 | # define __SIZEOF_PTHREAD_BARRIER_T 20 | ||
| 34 | #endif | ||
| 35 | #define __SIZEOF_PTHREAD_MUTEXATTR_T 4 | ||
| 36 | #define __SIZEOF_PTHREAD_COND_T 48 | ||
| 37 | #define __SIZEOF_PTHREAD_CONDATTR_T 4 | ||
| 38 | #define __SIZEOF_PTHREAD_RWLOCKATTR_T 8 | ||
| 39 | #define __SIZEOF_PTHREAD_BARRIERATTR_T 4 | ||
| 40 | |||
| 41 | #define __LOCK_ALIGNMENT | ||
| 42 | #define __ONCE_ALIGNMENT | ||
| 43 | |||
| 44 | #endif	/* bits/pthreadtypes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabin32/bits/resource.h deleted-231| ... | @@ -1,231 +0,0 @@ | ||
| 1 | /* Bit values & structures for resource limits. Linux/MIPS version. | ||
| 2 | Copyright (C) 1994-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_RESOURCE_H | ||
| 20 | # error "Never use <bits/resource.h> directly; include <sys/resource.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <bits/types.h> | ||
| 24 | |||
| 25 | /* Transmute defines to enumerations. The macro re-definitions are | ||
| 26 | necessary because some programs want to test for operating system | ||
| 27 | features with #ifdef RUSAGE_SELF. In ISO C the reflexive | ||
| 28 | definition is a no-op. */ | ||
| 29 | |||
| 30 | /* Kinds of resource limit. */ | ||
| 31 | enum __rlimit_resource | ||
| 32 | { | ||
| 33 | /* Per-process CPU limit, in seconds. */ | ||
| 34 | RLIMIT_CPU = 0, | ||
| 35 | #define RLIMIT_CPU RLIMIT_CPU | ||
| 36 | |||
| 37 | /* Largest file that can be created, in bytes. */ | ||
| 38 | RLIMIT_FSIZE = 1, | ||
| 39 | #define	RLIMIT_FSIZE RLIMIT_FSIZE | ||
| 40 | |||
| 41 | /* Maximum size of data segment, in bytes. */ | ||
| 42 | RLIMIT_DATA = 2, | ||
| 43 | #define	RLIMIT_DATA RLIMIT_DATA | ||
| 44 | |||
| 45 | /* Maximum size of stack segment, in bytes. */ | ||
| 46 | RLIMIT_STACK = 3, | ||
| 47 | #define	RLIMIT_STACK RLIMIT_STACK | ||
| 48 | |||
| 49 | /* Largest core file that can be created, in bytes. */ | ||
| 50 | RLIMIT_CORE = 4, | ||
| 51 | #define	RLIMIT_CORE RLIMIT_CORE | ||
| 52 | |||
| 53 | /* Largest resident set size, in bytes. | ||
| 54 | This affects swapping; processes that are exceeding their | ||
| 55 | resident set size will be more likely to have physical memory | ||
| 56 | taken from them. */ | ||
| 57 | __RLIMIT_RSS = 7, | ||
| 58 | #define	RLIMIT_RSS __RLIMIT_RSS | ||
| 59 | |||
| 60 | /* Number of open files. */ | ||
| 61 | RLIMIT_NOFILE = 5, | ||
| 62 | __RLIMIT_OFILE = RLIMIT_NOFILE, /* BSD name for same. */ | ||
| 63 | #define RLIMIT_NOFILE RLIMIT_NOFILE | ||
| 64 | #define RLIMIT_OFILE __RLIMIT_OFILE | ||
| 65 | |||
| 66 | /* Address space limit (?) */ | ||
| 67 | RLIMIT_AS = 6, | ||
| 68 | #define RLIMIT_AS RLIMIT_AS | ||
| 69 | |||
| 70 | /* Number of processes. */ | ||
| 71 | __RLIMIT_NPROC = 8, | ||
| 72 | #define RLIMIT_NPROC __RLIMIT_NPROC | ||
| 73 | |||
| 74 | /* Locked-in-memory address space. */ | ||
| 75 | __RLIMIT_MEMLOCK = 9, | ||
| 76 | #define RLIMIT_MEMLOCK __RLIMIT_MEMLOCK | ||
| 77 | |||
| 78 | /* Maximum number of file locks. */ | ||
| 79 | __RLIMIT_LOCKS = 10, | ||
| 80 | #define RLIMIT_LOCKS __RLIMIT_LOCKS | ||
| 81 | |||
| 82 | /* Maximum number of pending signals. */ | ||
| 83 | __RLIMIT_SIGPENDING = 11, | ||
| 84 | #define RLIMIT_SIGPENDING __RLIMIT_SIGPENDING | ||
| 85 | |||
| 86 | /* Maximum bytes in POSIX message queues. */ | ||
| 87 | __RLIMIT_MSGQUEUE = 12, | ||
| 88 | #define RLIMIT_MSGQUEUE __RLIMIT_MSGQUEUE | ||
| 89 | |||
| 90 | /* Maximum nice priority allowed to raise to. | ||
| 91 | Nice levels 19 .. -20 correspond to 0 .. 39 | ||
| 92 | values of this resource limit. */ | ||
| 93 | __RLIMIT_NICE = 13, | ||
| 94 | #define RLIMIT_NICE __RLIMIT_NICE | ||
| 95 | |||
| 96 | /* Maximum realtime priority allowed for non-priviledged | ||
| 97 | processes. */ | ||
| 98 | __RLIMIT_RTPRIO = 14, | ||
| 99 | #define RLIMIT_RTPRIO __RLIMIT_RTPRIO | ||
| 100 | |||
| 101 | /* Maximum CPU time in microseconds that a process scheduled under a real-time | ||
| 102 | scheduling policy may consume without making a blocking system | ||
| 103 | call before being forcibly descheduled. */ | ||
| 104 | __RLIMIT_RTTIME = 15, | ||
| 105 | #define RLIMIT_RTTIME __RLIMIT_RTTIME | ||
| 106 | |||
| 107 | __RLIMIT_NLIMITS = 16, | ||
| 108 | __RLIM_NLIMITS = __RLIMIT_NLIMITS | ||
| 109 | #define RLIMIT_NLIMITS __RLIMIT_NLIMITS | ||
| 110 | #define RLIM_NLIMITS __RLIM_NLIMITS | ||
| 111 | }; | ||
| 112 | |||
| 113 | /* Value to indicate that there is no limit. */ | ||
| 114 | #if _MIPS_SIM == _ABI64 | ||
| 115 | /* The N64 syscall uses this value. */ | ||
| 116 | # define RLIM_INFINITY 0xffffffffffffffffUL | ||
| 117 | # ifdef __USE_LARGEFILE64 | ||
| 118 | # define RLIM64_INFINITY 0xffffffffffffffffUL | ||
| 119 | # endif | ||
| 120 | #else | ||
| 121 | /* The O32 and N32 syscalls use 0x7fffffff. */ | ||
| 122 | # ifndef __USE_FILE_OFFSET64 | ||
| 123 | # define RLIM_INFINITY ((long int)(~0UL >> 1)) | ||
| 124 | # else | ||
| 125 | # define RLIM_INFINITY 0xffffffffffffffffULL | ||
| 126 | # endif | ||
| 127 | # ifdef __USE_LARGEFILE64 | ||
| 128 | # define RLIM64_INFINITY 0xffffffffffffffffULL | ||
| 129 | # endif | ||
| 130 | #endif | ||
| 131 | |||
| 132 | /* We can represent all limits. */ | ||
| 133 | #define RLIM_SAVED_MAX	RLIM_INFINITY | ||
| 134 | #define RLIM_SAVED_CUR	RLIM_INFINITY | ||
| 135 | |||
| 136 | |||
| 137 | /* Type for resource quantity measurement. */ | ||
| 138 | #ifndef __USE_FILE_OFFSET64 | ||
| 139 | typedef __rlim_t rlim_t; | ||
| 140 | #else | ||
| 141 | typedef __rlim64_t rlim_t; | ||
| 142 | #endif | ||
| 143 | #ifdef __USE_LARGEFILE64 | ||
| 144 | typedef __rlim64_t rlim64_t; | ||
| 145 | #endif | ||
| 146 | |||
| 147 | struct rlimit | ||
| 148 | { | ||
| 149 | /* The current (soft) limit. */ | ||
| 150 | rlim_t rlim_cur; | ||
| 151 | /* The hard limit. */ | ||
| 152 | rlim_t rlim_max; | ||
| 153 | }; | ||
| 154 | |||
| 155 | #ifdef __USE_LARGEFILE64 | ||
| 156 | struct rlimit64 | ||
| 157 | { | ||
| 158 | /* The current (soft) limit. */ | ||
| 159 | rlim64_t rlim_cur; | ||
| 160 | /* The hard limit. */ | ||
| 161 | rlim64_t rlim_max; | ||
| 162 | }; | ||
| 163 | #endif | ||
| 164 | |||
| 165 | /* Whose usage statistics do you want? */ | ||
| 166 | enum __rusage_who | ||
| 167 | { | ||
| 168 | /* The calling process. */ | ||
| 169 | RUSAGE_SELF = 0, | ||
| 170 | #define RUSAGE_SELF RUSAGE_SELF | ||
| 171 | |||
| 172 | /* All of its terminated child processes. */ | ||
| 173 | RUSAGE_CHILDREN = -1 | ||
| 174 | #define RUSAGE_CHILDREN RUSAGE_CHILDREN | ||
| 175 | |||
| 176 | #ifdef __USE_GNU | ||
| 177 | , | ||
| 178 | /* The calling thread. */ | ||
| 179 | RUSAGE_THREAD = 1 | ||
| 180 | # define RUSAGE_THREAD RUSAGE_THREAD | ||
| 181 | /* Name for the same functionality on Solaris. */ | ||
| 182 | # define RUSAGE_LWP RUSAGE_THREAD | ||
| 183 | #endif | ||
| 184 | }; | ||
| 185 | |||
| 186 | #include <bits/types/struct_timeval.h> | ||
| 187 | #include <bits/types/struct_rusage.h> | ||
| 188 | |||
| 189 | /* Priority limits. */ | ||
| 190 | #define PRIO_MIN	-20	/* Minimum priority a process can have. */ | ||
| 191 | #define PRIO_MAX	20	/* Maximum priority a process can have. */ | ||
| 192 | |||
| 193 | /* The type of the WHICH argument to `getpriority' and `setpriority', | ||
| 194 | indicating what flavor of entity the WHO argument specifies. */ | ||
| 195 | enum __priority_which | ||
| 196 | { | ||
| 197 | PRIO_PROCESS = 0,		/* WHO is a process ID. */ | ||
| 198 | #define PRIO_PROCESS PRIO_PROCESS | ||
| 199 | PRIO_PGRP = 1,		/* WHO is a process group ID. */ | ||
| 200 | #define PRIO_PGRP PRIO_PGRP | ||
| 201 | PRIO_USER = 2			/* WHO is a user ID. */ | ||
| 202 | #define PRIO_USER PRIO_USER | ||
| 203 | }; | ||
| 204 | |||
| 205 | |||
| 206 | __BEGIN_DECLS | ||
| 207 | |||
| 208 | #ifdef __USE_GNU | ||
| 209 | /* Modify and return resource limits of a process atomically. */ | ||
| 210 | # ifndef __USE_FILE_OFFSET64 | ||
| 211 | extern int prlimit (__pid_t __pid, enum __rlimit_resource __resource, | ||
| 212 | 		 const struct rlimit *__new_limit, | ||
| 213 | 		 struct rlimit *__old_limit) __THROW; | ||
| 214 | # else | ||
| 215 | # ifdef __REDIRECT_NTH | ||
| 216 | extern int __REDIRECT_NTH (prlimit, (__pid_t __pid, | ||
| 217 | 				 enum __rlimit_resource __resource, | ||
| 218 | 				 const struct rlimit *__new_limit, | ||
| 219 | 				 struct rlimit *__old_limit), prlimit64); | ||
| 220 | # else | ||
| 221 | # define prlimit prlimit64 | ||
| 222 | # endif | ||
| 223 | # endif | ||
| 224 | # ifdef __USE_LARGEFILE64 | ||
| 225 | extern int prlimit64 (__pid_t __pid, enum __rlimit_resource __resource, | ||
| 226 | 		 const struct rlimit64 *__new_limit, | ||
| 227 | 		 struct rlimit64 *__old_limit) __THROW; | ||
| 228 | # endif | ||
| 229 | #endif | ||
| 230 | |||
| 231 | __END_DECLS | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabin32/bits/semaphore.h deleted-36| ... | @@ -1,36 +0,0 @@ | ||
| 1 | /* Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SEMAPHORE_H | ||
| 19 | # error "Never use <bits/semaphore.h> directly; include <semaphore.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | #if _MIPS_SIM == _ABI64 | ||
| 23 | # define __SIZEOF_SEM_T	32 | ||
| 24 | #else | ||
| 25 | # define __SIZEOF_SEM_T	16 | ||
| 26 | #endif | ||
| 27 | |||
| 28 | /* Value returned if `sem_open' failed. */ | ||
| 29 | #define SEM_FAILED ((sem_t *) 0) | ||
| 30 | |||
| 31 | |||
| 32 | typedef union | ||
| 33 | { | ||
| 34 | char __size[__SIZEOF_SEM_T]; | ||
| 35 | long int __align; | ||
| 36 | } sem_t; | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabin32/bits/shmlba.h deleted-24| ... | @@ -1,24 +0,0 @@ | ||
| 1 | /* Define SHMLBA. MIPS version. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SHM_H | ||
| 20 | # error "Never use <bits/shmlba.h> directly; include <sys/shm.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Segment low boundary address multiple. */ | ||
| 24 | #define SHMLBA		0x40000 | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabin32/bits/sigaction.h deleted-94| ... | @@ -1,94 +0,0 @@ | ||
| 1 | /* The proper definitions for Linux/MIPS's sigaction. | ||
| 2 | Copyright (C) 1993-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_SIGACTION_H | ||
| 20 | #define _BITS_SIGACTION_H 1 | ||
| 21 | |||
| 22 | #ifndef _SIGNAL_H | ||
| 23 | # error "Never include <bits/sigaction.h> directly; use <signal.h> instead." | ||
| 24 | #endif | ||
| 25 | |||
| 26 | /* Structure describing the action to be taken when a signal arrives. */ | ||
| 27 | struct sigaction | ||
| 28 | { | ||
| 29 | /* Special flags. */ | ||
| 30 | int sa_flags; | ||
| 31 | |||
| 32 | /* Signal handler. */ | ||
| 33 | #if defined __USE_POSIX199309 || defined __USE_XOPEN_EXTENDED | ||
| 34 | union | ||
| 35 | { | ||
| 36 | 	/* Used if SA_SIGINFO is not set. */ | ||
| 37 | 	__sighandler_t sa_handler; | ||
| 38 | 	/* Used if SA_SIGINFO is set. */ | ||
| 39 | 	void (*sa_sigaction) (int, siginfo_t *, void *); | ||
| 40 | } | ||
| 41 | __sigaction_handler; | ||
| 42 | # define sa_handler __sigaction_handler.sa_handler | ||
| 43 | # define sa_sigaction __sigaction_handler.sa_sigaction | ||
| 44 | #else | ||
| 45 | __sighandler_t sa_handler; | ||
| 46 | #endif | ||
| 47 | /* Additional set of signals to be blocked. */ | ||
| 48 | __sigset_t sa_mask; | ||
| 49 | |||
| 50 | /* The ABI says here are two unused ints following. */ | ||
| 51 | /* Restore handler. */ | ||
| 52 | void (*sa_restorer) (void); | ||
| 53 | |||
| 54 | #if _MIPS_SZPTR < 64 | ||
| 55 | int sa_resv[1]; | ||
| 56 | #endif | ||
| 57 | }; | ||
| 58 | |||
| 59 | /* Bits in `sa_flags'. */ | ||
| 60 | /* Please note that some Linux kernels versions use different values for these | ||
| 61 | flags which is a bug in those kernel versions. */ | ||
| 62 | #define SA_NOCLDSTOP 0x00000001 /* Don't send SIGCHLD when children stop. */ | ||
| 63 | #define SA_NOCLDWAIT 0x00010000 /* Don't create zombie on child death. */ | ||
| 64 | #define SA_SIGINFO 0x00000008 /* Invoke signal-catching function with | ||
| 65 | 				 three arguments instead of one. */ | ||
| 66 | #if defined __USE_XOPEN_EXTENDED || defined __USE_MISC | ||
| 67 | # define SA_ONSTACK 0x08000000 /* Use signal stack by using `sa_restorer'. */ | ||
| 68 | #endif | ||
| 69 | #if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8 | ||
| 70 | # define SA_RESETHAND 0x80000000 /* Reset to SIG_DFL on entry to handler. */ | ||
| 71 | # define SA_RESTART 0x10000000 /* Restart syscall on signal return. */ | ||
| 72 | # define SA_NODEFER 0x40000000 /* Don't automatically block the signal when | ||
| 73 | 				 its handler is being executed. */ | ||
| 74 | #endif | ||
| 75 | #ifdef __USE_MISC | ||
| 76 | # define SA_INTERRUPT 0x20000000 /* Historical no-op. */ | ||
| 77 | |||
| 78 | /* Some aliases for the SA_ constants. */ | ||
| 79 | # define SA_NOMASK SA_NODEFER | ||
| 80 | # define SA_ONESHOT SA_RESETHAND | ||
| 81 | # define SA_STACK SA_ONSTACK | ||
| 82 | #endif | ||
| 83 | |||
| 84 | /* Values for the HOW argument to `sigprocmask'. */ | ||
| 85 | #define SIG_NOP	 0		/* 0 is unused to catch errors */ | ||
| 86 | #define	SIG_BLOCK 1		/* Block signals. */ | ||
| 87 | #define	SIG_UNBLOCK 2		/* Unblock signals. */ | ||
| 88 | #define	SIG_SETMASK 3		/* Set the set of blocked signals. */ | ||
| 89 | #ifdef __USE_MISC | ||
| 90 | # define SIG_SETMASK32 256	/* Goodie from SGI for BSD compatibility: | ||
| 91 | 				 set only the low 32 bit of the sigset. */ | ||
| 92 | #endif | ||
| 93 | |||
| 94 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabin32/bits/sigcontext.h deleted-82| ... | @@ -1,82 +0,0 @@ | ||
| 1 | /* Copyright (C) 1996-2025 Free Software Foundation, Inc. This file is part of the GNU C Library. | ||
| 2 | |||
| 3 | The GNU C Library is free software; you can redistribute it and/or | ||
| 4 | modify it under the terms of the GNU Lesser General Public | ||
| 5 | License as published by the Free Software Foundation; either | ||
| 6 | version 2.1 of the License, or (at your option) any later version. | ||
| 7 | |||
| 8 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 9 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 10 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 11 | Lesser General Public License for more details. | ||
| 12 | |||
| 13 | You should have received a copy of the GNU Lesser General Public | ||
| 14 | License along with the GNU C Library. If not, see | ||
| 15 | <https://www.gnu.org/licenses/>. */ | ||
| 16 | |||
| 17 | #ifndef _BITS_SIGCONTEXT_H | ||
| 18 | #define _BITS_SIGCONTEXT_H 1 | ||
| 19 | |||
| 20 | #if !defined _SIGNAL_H && !defined _SYS_UCONTEXT_H | ||
| 21 | # error "Never use <bits/sigcontext.h> directly; include <signal.h> instead." | ||
| 22 | #endif | ||
| 23 | |||
| 24 | #include <sgidefs.h> | ||
| 25 | |||
| 26 | #if _MIPS_SIM == _ABIO32 | ||
| 27 | |||
| 28 | /* Certain unused fields were replaced with new ones in 2.6.12-rc4. | ||
| 29 | The changes were as follows: | ||
| 30 | |||
| 31 | sc_cause -> sc_hi1 | ||
| 32 | sc_badvaddr -> sc_lo1 | ||
| 33 | sc_sigset[0] -> sc_hi2 | ||
| 34 | sc_sigset[1] -> sc_lo2 | ||
| 35 | sc_sigset[2] -> sc_hi3 | ||
| 36 | sc_sigset[3] -> sc_lo3 | ||
| 37 | |||
| 38 | sc_regmask, sc_ownedfp and sc_fpc_eir are not used. */ | ||
| 39 | struct sigcontext { | ||
| 40 | unsigned int sc_regmask; | ||
| 41 | unsigned int sc_status; | ||
| 42 | __extension__ unsigned long long sc_pc; | ||
| 43 | __extension__ unsigned long long sc_regs[32]; | ||
| 44 | __extension__ unsigned long long sc_fpregs[32]; | ||
| 45 | unsigned int sc_ownedfp; | ||
| 46 | unsigned int sc_fpc_csr; | ||
| 47 | unsigned int sc_fpc_eir; | ||
| 48 | unsigned int sc_used_math; | ||
| 49 | unsigned int sc_dsp; | ||
| 50 | __extension__ unsigned long long sc_mdhi; | ||
| 51 | __extension__ unsigned long long sc_mdlo; | ||
| 52 | unsigned long sc_hi1; | ||
| 53 | unsigned long sc_lo1; | ||
| 54 | unsigned long sc_hi2; | ||
| 55 | unsigned long sc_lo2; | ||
| 56 | unsigned long sc_hi3; | ||
| 57 | unsigned long sc_lo3; | ||
| 58 | }; | ||
| 59 | |||
| 60 | #else | ||
| 61 | |||
| 62 | /* This structure changed in 2.6.12-rc4 when DSP support was added. */ | ||
| 63 | struct sigcontext { | ||
| 64 | __extension__ unsigned long long sc_regs[32]; | ||
| 65 | __extension__ unsigned long long sc_fpregs[32]; | ||
| 66 | __extension__ unsigned long long sc_mdhi; | ||
| 67 | __extension__ unsigned long long sc_hi1; | ||
| 68 | __extension__ unsigned long long sc_hi2; | ||
| 69 | __extension__ unsigned long long sc_hi3; | ||
| 70 | __extension__ unsigned long long sc_mdlo; | ||
| 71 | __extension__ unsigned long long sc_lo1; | ||
| 72 | __extension__ unsigned long long sc_lo2; | ||
| 73 | __extension__ unsigned long long sc_lo3; | ||
| 74 | __extension__ unsigned long long sc_pc; | ||
| 75 | unsigned int sc_fpc_csr; | ||
| 76 | unsigned int sc_used_math; | ||
| 77 | unsigned int sc_dsp; | ||
| 78 | unsigned int sc_reserved; | ||
| 79 | }; | ||
| 80 | |||
| 81 | #endif /* _MIPS_SIM != _ABIO32 */ | ||
| 82 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabin32/bits/siginfo-arch.h deleted-13| ... | @@ -1,13 +0,0 @@ | ||
| 1 | /* Architecture-specific adjustments to siginfo_t. MIPS version. */ | ||
| 2 | #ifndef _BITS_SIGINFO_ARCH_H | ||
| 3 | #define _BITS_SIGINFO_ARCH_H 1 | ||
| 4 | |||
| 5 | /* MIPS has the si_code and si_errno fields in the opposite order from | ||
| 6 | all other architectures. */ | ||
| 7 | #define __SI_ERRNO_THEN_CODE 0 | ||
| 8 | |||
| 9 | /* MIPS also has different values for SI_ASYNCIO, SI_MESGQ, and SI_TIMER | ||
| 10 | than all other architectures. */ | ||
| 11 | #define __SI_ASYNCIO_AFTER_SIGIO 0 | ||
| 12 | |||
| 13 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabin32/bits/signalfd.h deleted-29| ... | @@ -1,29 +0,0 @@ | ||
| 1 | /* Copyright (C) 2007-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_SYS_SIGNALFD_H | ||
| 19 | # error "Never use <bits/signalfd.h> directly; include <sys/signalfd.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Flags for signalfd. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | SFD_CLOEXEC = 02000000, | ||
| 26 | #define SFD_CLOEXEC SFD_CLOEXEC | ||
| 27 | SFD_NONBLOCK = 00000200 | ||
| 28 | #define SFD_NONBLOCK SFD_NONBLOCK | ||
| 29 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabin32/bits/signum-arch.h deleted-65| ... | @@ -1,65 +0,0 @@ | ||
| 1 | /* Signal number definitions. Linux/MIPS version. | ||
| 2 | Copyright (C) 1995-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_SIGNUM_H | ||
| 20 | #define _BITS_SIGNUM_H 1 | ||
| 21 | |||
| 22 | #ifndef _SIGNAL_H | ||
| 23 | #error "Never include <bits/signum.h> directly; use <signal.h> instead." | ||
| 24 | #endif | ||
| 25 | |||
| 26 | /* Adjustments and additions to the signal number constants for | ||
| 27 | Linux/MIPS. */ | ||
| 28 | |||
| 29 | #define SIGEMT		 7	/* Emulator trap. */ | ||
| 30 | #define SIGPWR		19	/* Power failure imminent. */ | ||
| 31 | |||
| 32 | /* Historical signals specified by POSIX. */ | ||
| 33 | #define SIGBUS 	10	/* Bus error. */ | ||
| 34 | #define SIGSYS		12	/* Bad system call. */ | ||
| 35 | |||
| 36 | /* New(er) POSIX signals (1003.1-2008, 1003.1-2013). */ | ||
| 37 | #define SIGURG		21	/* Urgent data is available at a socket. */ | ||
| 38 | #define SIGSTOP		23	/* Stop, unblockable. */ | ||
| 39 | #define SIGTSTP		24	/* Keyboard stop. */ | ||
| 40 | #define SIGCONT		25	/* Continue. */ | ||
| 41 | #define SIGCHLD		18	/* Child terminated or stopped. */ | ||
| 42 | #define SIGTTIN		26	/* Background read from control terminal. */ | ||
| 43 | #define SIGTTOU		27	/* Background write to control terminal. */ | ||
| 44 | #define SIGPOLL		22	/* Pollable event occurred (System V). */ | ||
| 45 | #define SIGXCPU		30	/* CPU time limit exceeded. */ | ||
| 46 | #define SIGVTALRM	28	/* Virtual timer expired. */ | ||
| 47 | #define SIGPROF		29	/* Profiling timer expired. */ | ||
| 48 | #define SIGXFSZ		31	/* File size limit exceeded. */ | ||
| 49 | #define SIGUSR1		16	/* User-defined signal 1. */ | ||
| 50 | #define SIGUSR2		17	/* User-defined signal 2. */ | ||
| 51 | |||
| 52 | /* Nonstandard signals found in all modern POSIX systems | ||
| 53 | (including both BSD and Linux). */ | ||
| 54 | #define SIGWINCH	20	/* Window size change (4.3 BSD, Sun). */ | ||
| 55 | |||
| 56 | /* Archaic names for compatibility. */ | ||
| 57 | #define SIGIO		SIGPOLL	/* I/O now possible (4.2 BSD). */ | ||
| 58 | #define SIGIOT		SIGABRT	/* IOT instruction, abort() on a PDP-11. */ | ||
| 59 | #define SIGCLD		SIGCHLD /* Old System V name */ | ||
| 60 | |||
| 61 | /* By default no real-time signals are supported. */ | ||
| 62 | #define __SIGRTMIN	32 | ||
| 63 | #define __SIGRTMAX	127 | ||
| 64 | |||
| 65 | #endif	/* <signal.h> included. */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabin32/bits/socket-constants.h deleted-70| ... | @@ -1,70 +0,0 @@ | ||
| 1 | /* Socket constants which vary among Linux architectures. Version for MIPS. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SOCKET_H | ||
| 20 | # error "Never include <bits/socket-constants.h> directly; use <sys/socket.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #define SOL_SOCKET 65535 | ||
| 24 | #define SO_ACCEPTCONN 4105 | ||
| 25 | #define SO_BROADCAST 32 | ||
| 26 | #define SO_DONTROUTE 16 | ||
| 27 | #define SO_ERROR 4103 | ||
| 28 | #define SO_KEEPALIVE 8 | ||
| 29 | #define SO_LINGER 128 | ||
| 30 | #define SO_OOBINLINE 256 | ||
| 31 | #define SO_RCVBUF 4098 | ||
| 32 | #define SO_RCVLOWAT 4100 | ||
| 33 | #define SO_REUSEADDR 4 | ||
| 34 | #define SO_SNDBUF 4097 | ||
| 35 | #define SO_SNDLOWAT 4099 | ||
| 36 | #define SO_TYPE 4104 | ||
| 37 | |||
| 38 | #if __TIMESIZE == 64 | ||
| 39 | # define SO_RCVTIMEO 4102 | ||
| 40 | # define SO_SNDTIMEO 4101 | ||
| 41 | # define SO_TIMESTAMP 29 | ||
| 42 | # define SO_TIMESTAMPNS 35 | ||
| 43 | # define SO_TIMESTAMPING 37 | ||
| 44 | #else | ||
| 45 | # define SO_RCVTIMEO_OLD 4102 | ||
| 46 | # define SO_SNDTIMEO_OLD 4101 | ||
| 47 | # define SO_RCVTIMEO_NEW 66 | ||
| 48 | # define SO_SNDTIMEO_NEW 67 | ||
| 49 | |||
| 50 | # define SO_TIMESTAMP_OLD 29 | ||
| 51 | # define SO_TIMESTAMPNS_OLD 35 | ||
| 52 | # define SO_TIMESTAMPING_OLD 37 | ||
| 53 | # define SO_TIMESTAMP_NEW 63 | ||
| 54 | # define SO_TIMESTAMPNS_NEW 64 | ||
| 55 | # define SO_TIMESTAMPING_NEW 65 | ||
| 56 | |||
| 57 | # ifdef __USE_TIME64_REDIRECTS | ||
| 58 | # define SO_RCVTIMEO SO_RCVTIMEO_NEW | ||
| 59 | # define SO_SNDTIMEO SO_SNDTIMEO_NEW | ||
| 60 | # define SO_TIMESTAMP SO_TIMESTAMP_NEW | ||
| 61 | # define SO_TIMESTAMPNS SO_TIMESTAMPNS_NEW | ||
| 62 | # define SO_TIMESTAMPING SO_TIMESTAMPING_NEW | ||
| 63 | # else | ||
| 64 | # define SO_RCVTIMEO SO_RCVTIMEO_OLD | ||
| 65 | # define SO_SNDTIMEO SO_SNDTIMEO_OLD | ||
| 66 | # define SO_TIMESTAMP SO_TIMESTAMP_OLD | ||
| 67 | # define SO_TIMESTAMPNS SO_TIMESTAMPNS_OLD | ||
| 68 | # define SO_TIMESTAMPING SO_TIMESTAMPING_OLD | ||
| 69 | # endif | ||
| 70 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabin32/bits/socket_type.h deleted-55| ... | @@ -1,55 +0,0 @@ | ||
| 1 | /* Define enum __socket_type for Linux/MIPS. | ||
| 2 | Copyright (C) 1991-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SOCKET_H | ||
| 20 | # error "Never include <bits/socket_type.h> directly; use <sys/socket.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Types of sockets. */ | ||
| 24 | enum __socket_type | ||
| 25 | { | ||
| 26 | SOCK_DGRAM = 1,		/* Connectionless, unreliable datagrams | ||
| 27 | 				 of fixed maximum length. */ | ||
| 28 | #define SOCK_DGRAM SOCK_DGRAM | ||
| 29 | SOCK_STREAM = 2,		/* Sequenced, reliable, connection-based | ||
| 30 | 				 byte streams. */ | ||
| 31 | #define SOCK_STREAM SOCK_STREAM | ||
| 32 | SOCK_RAW = 3,			/* Raw protocol interface. */ | ||
| 33 | #define SOCK_RAW SOCK_RAW | ||
| 34 | SOCK_RDM = 4,			/* Reliably-delivered messages. */ | ||
| 35 | #define SOCK_RDM SOCK_RDM | ||
| 36 | SOCK_SEQPACKET = 5,		/* Sequenced, reliable, connection-based, | ||
| 37 | 				 datagrams of fixed maximum length. */ | ||
| 38 | #define SOCK_SEQPACKET SOCK_SEQPACKET | ||
| 39 | SOCK_DCCP = 6, | ||
| 40 | #define SOCK_DCCP SOCK_DCCP	/* Datagram Congestion Control Protocol. */ | ||
| 41 | SOCK_PACKET = 10,		/* Linux specific way of getting packets | ||
| 42 | 				 at the dev level. For writing rarp and | ||
| 43 | 				 other similar things on the user level. */ | ||
| 44 | #define SOCK_PACKET SOCK_PACKET | ||
| 45 | |||
| 46 | /* Flags to be ORed into the type parameter of socket and socketpair and | ||
| 47 | used for the flags parameter of paccept. */ | ||
| 48 | |||
| 49 | SOCK_CLOEXEC = 02000000,	/* Atomically set close-on-exec flag for the | ||
| 50 | 				 new descriptor(s). */ | ||
| 51 | #define SOCK_CLOEXEC SOCK_CLOEXEC | ||
| 52 | SOCK_NONBLOCK = 00000200	/* Atomically mark descriptor(s) as | ||
| 53 | 				 non-blocking. */ | ||
| 54 | #define SOCK_NONBLOCK SOCK_NONBLOCK | ||
| 55 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabin32/bits/statfs.h deleted-73| ... | @@ -1,73 +0,0 @@ | ||
| 1 | /* Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_STATFS_H | ||
| 19 | # error "Never include <bits/statfs.h> directly; use <sys/statfs.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | #include <bits/types.h> /* for __fsid_t and __fsblkcnt_t*/ | ||
| 23 | |||
| 24 | struct statfs | ||
| 25 | { | ||
| 26 | long int f_type; | ||
| 27 | #define f_fstyp f_type | ||
| 28 | long int f_bsize; | ||
| 29 | long int f_frsize;	/* Fragment size - unsupported */ | ||
| 30 | #ifndef __USE_FILE_OFFSET64 | ||
| 31 | __fsblkcnt_t f_blocks; | ||
| 32 | __fsblkcnt_t f_bfree; | ||
| 33 | __fsblkcnt_t f_files; | ||
| 34 | __fsblkcnt_t f_ffree; | ||
| 35 | __fsblkcnt_t f_bavail; | ||
| 36 | #else | ||
| 37 | __fsblkcnt64_t f_blocks; | ||
| 38 | __fsblkcnt64_t f_bfree; | ||
| 39 | __fsblkcnt64_t f_files; | ||
| 40 | __fsblkcnt64_t f_ffree; | ||
| 41 | __fsblkcnt64_t f_bavail; | ||
| 42 | #endif | ||
| 43 | |||
| 44 | 	/* Linux specials */ | ||
| 45 | __fsid_t f_fsid; | ||
| 46 | long int f_namelen; | ||
| 47 | long int f_flags; | ||
| 48 | long int f_spare[5]; | ||
| 49 | }; | ||
| 50 | |||
| 51 | #ifdef __USE_LARGEFILE64 | ||
| 52 | struct statfs64 | ||
| 53 | { | ||
| 54 | long int f_type; | ||
| 55 | #define f_fstyp f_type | ||
| 56 | long int f_bsize; | ||
| 57 | long int f_frsize;	/* Fragment size - unsupported */ | ||
| 58 | __fsblkcnt64_t f_blocks; | ||
| 59 | __fsblkcnt64_t f_bfree; | ||
| 60 | __fsblkcnt64_t f_files; | ||
| 61 | __fsblkcnt64_t f_ffree; | ||
| 62 | __fsblkcnt64_t f_bavail; | ||
| 63 | |||
| 64 | 	/* Linux specials */ | ||
| 65 | __fsid_t f_fsid; | ||
| 66 | long int f_namelen; | ||
| 67 | long int f_flags; | ||
| 68 | long int f_spare[5]; | ||
| 69 | }; | ||
| 70 | #endif | ||
| 71 | |||
| 72 | /* Tell code we have these members. */ | ||
| 73 | #define _STATFS_F_NAMELEN | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabin32/bits/struct_mutex.h deleted-56| ... | @@ -1,56 +0,0 @@ | ||
| 1 | /* MIPS internal mutex struct definitions. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <http://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _THREAD_MUTEX_INTERNAL_H | ||
| 20 | #define _THREAD_MUTEX_INTERNAL_H 1 | ||
| 21 | |||
| 22 | struct __pthread_mutex_s | ||
| 23 | { | ||
| 24 | int __lock; | ||
| 25 | unsigned int __count; | ||
| 26 | int __owner; | ||
| 27 | #if _MIPS_SIM == _ABI64 | ||
| 28 | unsigned int __nusers; | ||
| 29 | #endif | ||
| 30 | /* KIND must stay at this position in the structure to maintain | ||
| 31 | binary compatibility with static initializers. */ | ||
| 32 | int __kind; | ||
| 33 | #if _MIPS_SIM == _ABI64 | ||
| 34 | int __spins; | ||
| 35 | __pthread_list_t __list; | ||
| 36 | # define __PTHREAD_MUTEX_HAVE_PREV 1 | ||
| 37 | #else | ||
| 38 | unsigned int __nusers; | ||
| 39 | __extension__ union | ||
| 40 | { | ||
| 41 | int __spins; | ||
| 42 | __pthread_slist_t __list; | ||
| 43 | }; | ||
| 44 | # define __PTHREAD_MUTEX_HAVE_PREV 0 | ||
| 45 | #endif | ||
| 46 | }; | ||
| 47 | |||
| 48 | #if _MIPS_SIM == _ABI64 | ||
| 49 | # define __PTHREAD_MUTEX_INITIALIZER(__kind) \ | ||
| 50 | 0, 0, 0, 0, __kind, 0, { 0, 0 } | ||
| 51 | #else | ||
| 52 | # define __PTHREAD_MUTEX_INITIALIZER(__kind) \ | ||
| 53 | 0, 0, 0, __kind, 0, { 0 } | ||
| 54 | #endif | ||
| 55 | |||
| 56 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabin32/bits/struct_rwlock.h deleted-71| ... | @@ -1,71 +0,0 @@ | ||
| 1 | /* MIPS internal rwlock struct definitions. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <http://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _RWLOCK_INTERNAL_H | ||
| 20 | #define _RWLOCK_INTERNAL_H | ||
| 21 | |||
| 22 | struct __pthread_rwlock_arch_t | ||
| 23 | { | ||
| 24 | unsigned int __readers; | ||
| 25 | unsigned int __writers; | ||
| 26 | unsigned int __wrphase_futex; | ||
| 27 | unsigned int __writers_futex; | ||
| 28 | unsigned int __pad3; | ||
| 29 | unsigned int __pad4; | ||
| 30 | #if _MIPS_SIM == _ABI64 | ||
| 31 | int __cur_writer; | ||
| 32 | int __shared; | ||
| 33 | unsigned long int __pad1; | ||
| 34 | unsigned long int __pad2; | ||
| 35 | /* FLAGS must stay at this position in the structure to maintain | ||
| 36 | binary compatibility. */ | ||
| 37 | unsigned int __flags; | ||
| 38 | # else | ||
| 39 | # if __BYTE_ORDER == __BIG_ENDIAN | ||
| 40 | unsigned char __pad1; | ||
| 41 | unsigned char __pad2; | ||
| 42 | unsigned char __shared; | ||
| 43 | /* FLAGS must stay at this position in the structure to maintain | ||
| 44 | binary compatibility. */ | ||
| 45 | unsigned char __flags; | ||
| 46 | # else | ||
| 47 | /* FLAGS must stay at this position in the structure to maintain | ||
| 48 | binary compatibility. */ | ||
| 49 | unsigned char __flags; | ||
| 50 | unsigned char __shared; | ||
| 51 | unsigned char __pad1; | ||
| 52 | unsigned char __pad2; | ||
| 53 | # endif | ||
| 54 | int __cur_writer; | ||
| 55 | #endif | ||
| 56 | }; | ||
| 57 | |||
| 58 | #if _MIPS_SIM == _ABI64 | ||
| 59 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 60 | 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags | ||
| 61 | #else | ||
| 62 | # if __BYTE_ORDER == __BIG_ENDIAN | ||
| 63 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 64 | 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0 | ||
| 65 | # else | ||
| 66 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 67 | 0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0 | ||
| 68 | # endif | ||
| 69 | #endif | ||
| 70 | |||
| 71 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabin32/bits/termios-c_cc.h deleted-43| ... | @@ -1,43 +0,0 @@ | ||
| 1 | /* termios c_cc symbolic constant definitions. Linux/mips version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-c_cc.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* c_cc characters */ | ||
| 24 | #define VINTR		0	/* Interrupt character [ISIG]. */ | ||
| 25 | #define VQUIT		1	/* Quit character [ISIG]. */ | ||
| 26 | #define VERASE		2	/* Erase character [ICANON]. */ | ||
| 27 | #define VKILL		3	/* Kill-line character [ICANON]. */ | ||
| 28 | #define VMIN		4	/* Minimum number of bytes read at once [!ICANON]. */ | ||
| 29 | #define VTIME		5	/* Time-out value (tenths of a second) [!ICANON]. */ | ||
| 30 | #define VEOL2		6	/* Second EOL character [ICANON]. */ | ||
| 31 | #define VSWTC		7 | ||
| 32 | #define VSWTCH		VSWTC | ||
| 33 | #define VSTART		8	/* Start (X-ON) character [IXON, IXOFF]. */ | ||
| 34 | #define VSTOP		9	/* Stop (X-OFF) character [IXON, IXOFF]. */ | ||
| 35 | #define VSUSP		10	/* Suspend character [ISIG]. */ | ||
| 36 | 				/* VDSUSP is not supported on Linux. */ | ||
| 37 | /* #define VDSUSP	11	/ * Delayed suspend character [ISIG]. */ | ||
| 38 | #define VREPRINT	12	/* Reprint-line character [ICANON]. */ | ||
| 39 | #define VDISCARD	13	/* Discard character [IEXTEN]. */ | ||
| 40 | #define VWERASE		14	/* Word-erase character [ICANON]. */ | ||
| 41 | #define VLNEXT		15	/* Literal-next character [IEXTEN]. */ | ||
| 42 | #define VEOF		16	/* End-of-file character [ICANON]. */ | ||
| 43 | #define VEOL		17	/* End-of-line character [ICANON]. */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabin32/bits/termios-c_lflag.h deleted-46| ... | @@ -1,46 +0,0 @@ | ||
| 1 | /* termios local mode definitions. Linux/mips version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-c_lflag.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* c_lflag bits */ | ||
| 24 | #define ISIG	0000001		/* Enable signals. */ | ||
| 25 | #define ICANON	0000002		/* Do erase and kill processing. */ | ||
| 26 | #if defined __USE_MISC || (defined __USE_XOPEN && !defined __USE_XOPEN2K) | ||
| 27 | # define XCASE	0000004 | ||
| 28 | #endif | ||
| 29 | #define ECHO	0000010		/* Enable echo. */ | ||
| 30 | #define ECHOE	0000020		/* Visual erase for ERASE. */ | ||
| 31 | #define ECHOK	0000040		/* Echo NL after KILL. */ | ||
| 32 | #define ECHONL	0000100		/* Echo NL even if ECHO is off. */ | ||
| 33 | #define NOFLSH	0000200		/* Disable flush after interrupt. */ | ||
| 34 | #define IEXTEN	0000400		/* Enable DISCARD and LNEXT. */ | ||
| 35 | #ifdef __USE_MISC | ||
| 36 | # define ECHOCTL 0001000	/* Echo control characters as ^X. */ | ||
| 37 | # define ECHOPRT 0002000	/* Hardcopy visual erase. */ | ||
| 38 | # define ECHOKE	 0004000	/* Visual erase for KILL. */ | ||
| 39 | # define FLUSHO	0020000 | ||
| 40 | # define PENDIN	0040000		/* Retype pending input (state). */ | ||
| 41 | #endif | ||
| 42 | #define TOSTOP	0100000		/* Send SIGTTOU for background output. */ | ||
| 43 | #define ITOSTOP	TOSTOP | ||
| 44 | #ifdef __USE_MISC | ||
| 45 | # define EXTPROC 0200000 | ||
| 46 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabin32/bits/termios-struct.h deleted-34| ... | @@ -1,34 +0,0 @@ | ||
| 1 | /* struct termios definition. Linux/mips version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-struct.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #define NCCS 32 | ||
| 24 | struct termios | ||
| 25 | { | ||
| 26 | tcflag_t c_iflag;		/* input mode flags */ | ||
| 27 | tcflag_t c_oflag;		/* output mode flags */ | ||
| 28 | tcflag_t c_cflag;		/* control mode flags */ | ||
| 29 | tcflag_t c_lflag;		/* local mode flags */ | ||
| 30 | cc_t c_line;		/* line discipline */ | ||
| 31 | cc_t c_cc[NCCS];		/* control characters */ | ||
| 32 | #define _HAVE_STRUCT_TERMIOS_C_ISPEED 0 | ||
| 33 | #define _HAVE_STRUCT_TERMIOS_C_OSPEED 0 | ||
| 34 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabin32/bits/termios-tcflow.h deleted-26| ... | @@ -1,26 +0,0 @@ | ||
| 1 | /* termios local mode definitions. Linux/mips version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-tcflow.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* tcsetattr uses these */ | ||
| 24 | #define	TCSANOW		0x540e	/* Same as TCSETS; change immediately. */ | ||
| 25 | #define	TCSADRAIN	0x540f	/* Same as TCSETSW; change when pending output is written. */ | ||
| 26 | #define	TCSAFLUSH	0x5410	/* Same as TCSETSF; flush pending input before changing. */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabin32/bits/timerfd.h deleted-29| ... | @@ -1,29 +0,0 @@ | ||
| 1 | /* Copyright (C) 2008-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_SYS_TIMERFD_H | ||
| 19 | # error "Never use <bits/timerfd.h> directly; include <sys/timerfd.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Bits to be set in the FLAGS parameter of `timerfd_create'. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | TFD_CLOEXEC = 02000000, | ||
| 26 | #define TFD_CLOEXEC TFD_CLOEXEC | ||
| 27 | TFD_NONBLOCK = 00000200 | ||
| 28 | #define TFD_NONBLOCK TFD_NONBLOCK | ||
| 29 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabin32/bits/types/stack_t.h deleted-33| ... | @@ -1,33 +0,0 @@ | ||
| 1 | /* Define stack_t. MIPS Linux version. | ||
| 2 | Copyright (C) 1998-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef __stack_t_defined | ||
| 20 | #define __stack_t_defined 1 | ||
| 21 | |||
| 22 | #define __need_size_t | ||
| 23 | #include <stddef.h> | ||
| 24 | |||
| 25 | /* Structure describing a signal stack. */ | ||
| 26 | typedef struct | ||
| 27 | { | ||
| 28 | void *ss_sp; | ||
| 29 | size_t ss_size; | ||
| 30 | int ss_flags; | ||
| 31 | } stack_t; | ||
| 32 | |||
| 33 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabin32/bits/types/struct_msqid_ds.h deleted-62| ... | @@ -1,62 +0,0 @@ | ||
| 1 | /* Linux/MIPS implementation of the SysV message struct msqid_ds. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_MSG_H | ||
| 20 | # error "Never use <bits/msq.h> directly; include <sys/msg.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <bits/types/time_t.h> | ||
| 24 | |||
| 25 | /* Structure of record for one message inside the kernel. | ||
| 26 | The type `struct msg' is opaque. */ | ||
| 27 | struct msqid_ds | ||
| 28 | { | ||
| 29 | #ifdef __USE_TIME64_REDIRECTS | ||
| 30 | # include <bits/types/struct_msqid64_ds_helper.h> | ||
| 31 | #else | ||
| 32 | struct ipc_perm msg_perm;	/* structure describing operation permission */ | ||
| 33 | # if __TIMESIZE == 32 | ||
| 34 | # ifdef __MIPSEL__ | ||
| 35 | __time_t msg_stime;		/* time of last msgsnd command */ | ||
| 36 | unsigned long int __msg_stime_high; | ||
| 37 | __time_t msg_rtime;		/* time of last msgsnd command */ | ||
| 38 | unsigned long int __msg_rtime_high; | ||
| 39 | __time_t msg_ctime;		/* time of last change */ | ||
| 40 | unsigned long int __msg_ctime_high; | ||
| 41 | # else | ||
| 42 | unsigned long int __msg_stime_high; | ||
| 43 | __time_t msg_stime;		/* time of last msgsnd command */ | ||
| 44 | unsigned long int __msg_rtime_high; | ||
| 45 | __time_t msg_rtime;		/* time of last msgsnd command */ | ||
| 46 | unsigned long int __msg_ctime_high; | ||
| 47 | __time_t msg_ctime;		/* time of last change */ | ||
| 48 | # endif | ||
| 49 | # else | ||
| 50 | __time_t msg_stime;		/* time of last msgsnd command */ | ||
| 51 | __time_t msg_rtime;		/* time of last msgsnd command */ | ||
| 52 | __time_t msg_ctime;		/* time of last change */ | ||
| 53 | # endif | ||
| 54 | __syscall_ulong_t __msg_cbytes; /* current number of bytes on queue */ | ||
| 55 | msgqnum_t msg_qnum;		/* number of messages currently on queue */ | ||
| 56 | msglen_t msg_qbytes;		/* max number of bytes allowed on queue */ | ||
| 57 | __pid_t msg_lspid;		/* pid of last msgsnd() */ | ||
| 58 | __pid_t msg_lrpid;		/* pid of last msgrcv() */ | ||
| 59 | __syscall_ulong_t __glibc_reserved4; | ||
| 60 | __syscall_ulong_t __glibc_reserved5; | ||
| 61 | #endif | ||
| 62 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabin32/bits/types/struct_semid_ds.h deleted-36| ... | @@ -1,36 +0,0 @@ | ||
| 1 | /* MIPS implementation of the semaphore struct semid_ds | ||
| 2 | Copyright (C) 1995-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SEM_H | ||
| 20 | # error "Never include <bits/types/struct_semid_ds.h> directly; use <sys/sem.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Data structure describing a set of semaphores. */ | ||
| 24 | struct semid_ds | ||
| 25 | { | ||
| 26 | #ifdef __USE_TIME64_REDIRECTS | ||
| 27 | # include <bits/types/struct_semid64_ds_helper.h> | ||
| 28 | #else | ||
| 29 | struct ipc_perm sem_perm;		/* operation permission struct */ | ||
| 30 | __time_t sem_otime;	/* last semop() time */ | ||
| 31 | __time_t sem_ctime;	/* last time changed by semctl() */ | ||
| 32 | __syscall_ulong_t sem_nsems;		/* number of semaphores in set */ | ||
| 33 | __syscall_ulong_t __sem_otime_high; | ||
| 34 | __syscall_ulong_t __sem_ctime_high; | ||
| 35 | #endif | ||
| 36 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabin32/bits/types/struct_shmid_ds.h deleted-53| ... | @@ -1,53 +0,0 @@ | ||
| 1 | /* Linux/MIPS implementation of the shared memory struct shmid_ds. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SHM_H | ||
| 20 | # error "Never include <bits/types/struct_shmid_ds.h> directly; use <sys/shm.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Data structure describing a shared memory segment. */ | ||
| 24 | struct shmid_ds | ||
| 25 | { | ||
| 26 | #ifdef __USE_TIME64_REDIRECTS | ||
| 27 | # include <bits/types/struct_shmid64_ds_helper.h> | ||
| 28 | #else | ||
| 29 | struct ipc_perm shm_perm;		/* operation permission struct */ | ||
| 30 | size_t shm_segsz;			/* size of segment in bytes */ | ||
| 31 | # if __TIMESIZE == 32 | ||
| 32 | __time_t shm_atime;			/* time of last shmat() */ | ||
| 33 | __time_t shm_dtime;			/* time of last shmdt() */ | ||
| 34 | __time_t shm_ctime;			/* time of last change by shmctl() */ | ||
| 35 | # else | ||
| 36 | __time_t shm_atime;			/* time of last shmat() */ | ||
| 37 | __time_t shm_dtime;			/* time of last shmdt() */ | ||
| 38 | __time_t shm_ctime;			/* time of last change by shmctl() */ | ||
| 39 | # endif | ||
| 40 | __pid_t shm_cpid;			/* pid of creator */ | ||
| 41 | __pid_t shm_lpid;			/* pid of last shmop */ | ||
| 42 | shmatt_t shm_nattch;		/* number of current attaches */ | ||
| 43 | # if __TIMESIZE == 32 | ||
| 44 | unsigned short int __shm_atime_high; | ||
| 45 | unsigned short int __shm_dtime_high; | ||
| 46 | unsigned short int __shm_ctime_high; | ||
| 47 | unsigned short int __glibc_reserved4; | ||
| 48 | # else | ||
| 49 | __syscall_ulong_t __glibc_reserved5; | ||
| 50 | __syscall_ulong_t __glibc_reserved6; | ||
| 51 | # endif | ||
| 52 | #endif | ||
| 53 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabin32/bits/typesizes.h deleted-95| ... | @@ -1,95 +0,0 @@ | ||
| 1 | /* bits/typesizes.h -- underlying types for *_t. MIPS version. | ||
| 2 | Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_TYPES_H | ||
| 20 | # error "Never include <bits/typesizes.h> directly; use <sys/types.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef	_BITS_TYPESIZES_H | ||
| 24 | #define	_BITS_TYPESIZES_H	1 | ||
| 25 | |||
| 26 | /* See <bits/types.h> for the meaning of these macros. This file exists so | ||
| 27 | that <bits/types.h> need not vary across different GNU platforms. */ | ||
| 28 | |||
| 29 | #define __DEV_T_TYPE		__UQUAD_TYPE | ||
| 30 | #define __UID_T_TYPE		__U32_TYPE | ||
| 31 | #define __GID_T_TYPE		__U32_TYPE | ||
| 32 | #define __INO_T_TYPE		__ULONGWORD_TYPE | ||
| 33 | #define __INO64_T_TYPE		__UQUAD_TYPE | ||
| 34 | #define __MODE_T_TYPE		__U32_TYPE | ||
| 35 | #define __NLINK_T_TYPE		__UWORD_TYPE | ||
| 36 | #define __OFF_T_TYPE		__SLONGWORD_TYPE | ||
| 37 | #define __OFF64_T_TYPE		__SQUAD_TYPE | ||
| 38 | #define __PID_T_TYPE		__S32_TYPE | ||
| 39 | #define __RLIM_T_TYPE		__ULONGWORD_TYPE | ||
| 40 | #define __RLIM64_T_TYPE		__UQUAD_TYPE | ||
| 41 | #define	__BLKCNT_T_TYPE		__SLONGWORD_TYPE | ||
| 42 | #define	__BLKCNT64_T_TYPE	__SQUAD_TYPE | ||
| 43 | #define	__FSBLKCNT_T_TYPE	__ULONGWORD_TYPE | ||
| 44 | #define	__FSBLKCNT64_T_TYPE	__UQUAD_TYPE | ||
| 45 | #define	__FSFILCNT_T_TYPE	__ULONGWORD_TYPE | ||
| 46 | #define	__FSFILCNT64_T_TYPE	__UQUAD_TYPE | ||
| 47 | #define	__FSWORD_T_TYPE		__SWORD_TYPE | ||
| 48 | #define	__ID_T_TYPE		__U32_TYPE | ||
| 49 | #define __CLOCK_T_TYPE		__SLONGWORD_TYPE | ||
| 50 | #define __TIME_T_TYPE		__SLONGWORD_TYPE | ||
| 51 | #define __USECONDS_T_TYPE	__U32_TYPE | ||
| 52 | #define __SUSECONDS_T_TYPE	__SLONGWORD_TYPE | ||
| 53 | #define __SUSECONDS64_T_TYPE	__SQUAD_TYPE | ||
| 54 | #define __DADDR_T_TYPE		__S32_TYPE | ||
| 55 | #define __KEY_T_TYPE		__S32_TYPE | ||
| 56 | #define __CLOCKID_T_TYPE	__S32_TYPE | ||
| 57 | #define __TIMER_T_TYPE		void * | ||
| 58 | #define __BLKSIZE_T_TYPE	__SLONGWORD_TYPE | ||
| 59 | #define __FSID_T_TYPE		struct { int __val[2]; } | ||
| 60 | #define __SSIZE_T_TYPE		__SWORD_TYPE | ||
| 61 | #define __SYSCALL_SLONG_TYPE	__SLONGWORD_TYPE | ||
| 62 | #define __SYSCALL_ULONG_TYPE	__ULONGWORD_TYPE | ||
| 63 | #define __CPU_MASK_TYPE 	__ULONGWORD_TYPE | ||
| 64 | |||
| 65 | #ifdef __LP64__ | ||
| 66 | /* Tell the libc code that off_t and off64_t are actually the same type | ||
| 67 | for all ABI purposes, even if possibly expressed as different base types | ||
| 68 | for C type-checking purposes. */ | ||
| 69 | # define __OFF_T_MATCHES_OFF64_T	1 | ||
| 70 | |||
| 71 | /* Same for ino_t and ino64_t. */ | ||
| 72 | # define __INO_T_MATCHES_INO64_T	1 | ||
| 73 | |||
| 74 | /* And for rlim_t and rlim64_t. */ | ||
| 75 | # define __RLIM_T_MATCHES_RLIM64_T	1 | ||
| 76 | |||
| 77 | /* And for fsblkcnt_t, fsblkcnt64_t, fsfilcnt_t and fsfilcnt64_t. */ | ||
| 78 | # define __STATFS_MATCHES_STATFS64 1 | ||
| 79 | |||
| 80 | /* And for getitimer, setitimer and rusage */ | ||
| 81 | # define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 1 | ||
| 82 | #else | ||
| 83 | # define __RLIM_T_MATCHES_RLIM64_T	0 | ||
| 84 | |||
| 85 | # define __STATFS_MATCHES_STATFS64 0 | ||
| 86 | |||
| 87 | /* And for getitimer, setitimer and rusage */ | ||
| 88 | # define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 0 | ||
| 89 | #endif | ||
| 90 | |||
| 91 | /* Number of descriptors that can fit in an `fd_set'. */ | ||
| 92 | #define	__FD_SETSIZE		1024 | ||
| 93 | |||
| 94 | |||
| 95 | #endif /* bits/typesizes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips64-linux-gnuabin32/ieee754.h deleted-326| ... | @@ -1,326 +0,0 @@ | ||
| 1 | /* Copyright (C) 1992-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _IEEE754_H | ||
| 19 | #define _IEEE754_H 1 | ||
| 20 | |||
| 21 | #include <features.h> | ||
| 22 | |||
| 23 | #include <bits/endian.h> | ||
| 24 | |||
| 25 | #ifndef __LDBL_MANT_DIG__ | ||
| 26 | # include <float.h> | ||
| 27 | # define __LDBL_MANT_DIG__ LDBL_MANT_DIG | ||
| 28 | #endif | ||
| 29 | |||
| 30 | __BEGIN_DECLS | ||
| 31 | |||
| 32 | union ieee754_float | ||
| 33 | { | ||
| 34 | float f; | ||
| 35 | |||
| 36 | /* This is the IEEE 754 single-precision format. */ | ||
| 37 | struct | ||
| 38 | { | ||
| 39 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 40 | 	unsigned int negative:1; | ||
| 41 | 	unsigned int exponent:8; | ||
| 42 | 	unsigned int mantissa:23; | ||
| 43 | #endif				/* Big endian. */ | ||
| 44 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 45 | 	unsigned int mantissa:23; | ||
| 46 | 	unsigned int exponent:8; | ||
| 47 | 	unsigned int negative:1; | ||
| 48 | #endif				/* Little endian. */ | ||
| 49 | } ieee; | ||
| 50 | |||
| 51 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 52 | struct | ||
| 53 | { | ||
| 54 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 55 | 	unsigned int negative:1; | ||
| 56 | 	unsigned int exponent:8; | ||
| 57 | 	unsigned int quiet_nan:1; | ||
| 58 | 	unsigned int mantissa:22; | ||
| 59 | #endif				/* Big endian. */ | ||
| 60 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 61 | 	unsigned int mantissa:22; | ||
| 62 | 	unsigned int quiet_nan:1; | ||
| 63 | 	unsigned int exponent:8; | ||
| 64 | 	unsigned int negative:1; | ||
| 65 | #endif				/* Little endian. */ | ||
| 66 | } ieee_nan; | ||
| 67 | }; | ||
| 68 | |||
| 69 | #define IEEE754_FLOAT_BIAS	0x7f /* Added to exponent. */ | ||
| 70 | |||
| 71 | |||
| 72 | union ieee754_double | ||
| 73 | { | ||
| 74 | double d; | ||
| 75 | |||
| 76 | /* This is the IEEE 754 double-precision format. */ | ||
| 77 | struct | ||
| 78 | { | ||
| 79 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 80 | 	unsigned int negative:1; | ||
| 81 | 	unsigned int exponent:11; | ||
| 82 | 	/* Together these comprise the mantissa. */ | ||
| 83 | 	unsigned int mantissa0:20; | ||
| 84 | 	unsigned int mantissa1:32; | ||
| 85 | #endif				/* Big endian. */ | ||
| 86 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 87 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 88 | 	unsigned int mantissa0:20; | ||
| 89 | 	unsigned int exponent:11; | ||
| 90 | 	unsigned int negative:1; | ||
| 91 | 	unsigned int mantissa1:32; | ||
| 92 | # else | ||
| 93 | 	/* Together these comprise the mantissa. */ | ||
| 94 | 	unsigned int mantissa1:32; | ||
| 95 | 	unsigned int mantissa0:20; | ||
| 96 | 	unsigned int exponent:11; | ||
| 97 | 	unsigned int negative:1; | ||
| 98 | # endif | ||
| 99 | #endif				/* Little endian. */ | ||
| 100 | } ieee; | ||
| 101 | |||
| 102 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 103 | struct | ||
| 104 | { | ||
| 105 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 106 | 	unsigned int negative:1; | ||
| 107 | 	unsigned int exponent:11; | ||
| 108 | 	unsigned int quiet_nan:1; | ||
| 109 | 	/* Together these comprise the mantissa. */ | ||
| 110 | 	unsigned int mantissa0:19; | ||
| 111 | 	unsigned int mantissa1:32; | ||
| 112 | #else | ||
| 113 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 114 | 	unsigned int mantissa0:19; | ||
| 115 | 	unsigned int quiet_nan:1; | ||
| 116 | 	unsigned int exponent:11; | ||
| 117 | 	unsigned int negative:1; | ||
| 118 | 	unsigned int mantissa1:32; | ||
| 119 | # else | ||
| 120 | 	/* Together these comprise the mantissa. */ | ||
| 121 | 	unsigned int mantissa1:32; | ||
| 122 | 	unsigned int mantissa0:19; | ||
| 123 | 	unsigned int quiet_nan:1; | ||
| 124 | 	unsigned int exponent:11; | ||
| 125 | 	unsigned int negative:1; | ||
| 126 | # endif | ||
| 127 | #endif | ||
| 128 | } ieee_nan; | ||
| 129 | }; | ||
| 130 | |||
| 131 | #define IEEE754_DOUBLE_BIAS	0x3ff /* Added to exponent. */ | ||
| 132 | |||
| 133 | #if __LDBL_MANT_DIG__ == 113 | ||
| 134 | |||
| 135 | union ieee854_long_double | ||
| 136 | { | ||
| 137 | long double d; | ||
| 138 | |||
| 139 | /* This is the IEEE 854 quad-precision format. */ | ||
| 140 | struct | ||
| 141 | { | ||
| 142 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 143 | 	unsigned int negative:1; | ||
| 144 | 	unsigned int exponent:15; | ||
| 145 | 	/* Together these comprise the mantissa. */ | ||
| 146 | 	unsigned int mantissa0:16; | ||
| 147 | 	unsigned int mantissa1:32; | ||
| 148 | 	unsigned int mantissa2:32; | ||
| 149 | 	unsigned int mantissa3:32; | ||
| 150 | #endif				/* Big endian. */ | ||
| 151 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 152 | 	/* Together these comprise the mantissa. */ | ||
| 153 | 	unsigned int mantissa3:32; | ||
| 154 | 	unsigned int mantissa2:32; | ||
| 155 | 	unsigned int mantissa1:32; | ||
| 156 | 	unsigned int mantissa0:16; | ||
| 157 | 	unsigned int exponent:15; | ||
| 158 | 	unsigned int negative:1; | ||
| 159 | #endif				/* Little endian. */ | ||
| 160 | } ieee; | ||
| 161 | |||
| 162 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 163 | struct | ||
| 164 | { | ||
| 165 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 166 | 	unsigned int negative:1; | ||
| 167 | 	unsigned int exponent:15; | ||
| 168 | 	unsigned int quiet_nan:1; | ||
| 169 | 	/* Together these comprise the mantissa. */ | ||
| 170 | 	unsigned int mantissa0:15; | ||
| 171 | 	unsigned int mantissa1:32; | ||
| 172 | 	unsigned int mantissa2:32; | ||
| 173 | 	unsigned int mantissa3:32; | ||
| 174 | #endif				/* Big endian. */ | ||
| 175 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 176 | 	/* Together these comprise the mantissa. */ | ||
| 177 | 	unsigned int mantissa3:32; | ||
| 178 | 	unsigned int mantissa2:32; | ||
| 179 | 	unsigned int mantissa1:32; | ||
| 180 | 	unsigned int mantissa0:15; | ||
| 181 | 	unsigned int quiet_nan:1; | ||
| 182 | 	unsigned int exponent:15; | ||
| 183 | 	unsigned int negative:1; | ||
| 184 | #endif				/* Little endian. */ | ||
| 185 | } ieee_nan; | ||
| 186 | }; | ||
| 187 | |||
| 188 | #define IEEE854_LONG_DOUBLE_BIAS 0x3fff /* Added to exponent. */ | ||
| 189 | |||
| 190 | #elif __LDBL_MANT_DIG__ == 64 | ||
| 191 | |||
| 192 | union ieee854_long_double | ||
| 193 | { | ||
| 194 | long double d; | ||
| 195 | |||
| 196 | /* This is the IEEE 854 double-extended-precision format. */ | ||
| 197 | struct | ||
| 198 | { | ||
| 199 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 200 | 	unsigned int negative:1; | ||
| 201 | 	unsigned int exponent:15; | ||
| 202 | 	unsigned int empty:16; | ||
| 203 | 	unsigned int mantissa0:32; | ||
| 204 | 	unsigned int mantissa1:32; | ||
| 205 | #endif | ||
| 206 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 207 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 208 | 	unsigned int exponent:15; | ||
| 209 | 	unsigned int negative:1; | ||
| 210 | 	unsigned int empty:16; | ||
| 211 | 	unsigned int mantissa0:32; | ||
| 212 | 	unsigned int mantissa1:32; | ||
| 213 | # else | ||
| 214 | 	unsigned int mantissa1:32; | ||
| 215 | 	unsigned int mantissa0:32; | ||
| 216 | 	unsigned int exponent:15; | ||
| 217 | 	unsigned int negative:1; | ||
| 218 | 	unsigned int empty:16; | ||
| 219 | # endif | ||
| 220 | #endif | ||
| 221 | } ieee; | ||
| 222 | |||
| 223 | /* This is for NaNs in the IEEE 854 double-extended-precision format. */ | ||
| 224 | struct | ||
| 225 | { | ||
| 226 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 227 | 	unsigned int negative:1; | ||
| 228 | 	unsigned int exponent:15; | ||
| 229 | 	unsigned int empty:16; | ||
| 230 | 	unsigned int one:1; | ||
| 231 | 	unsigned int quiet_nan:1; | ||
| 232 | 	unsigned int mantissa0:30; | ||
| 233 | 	unsigned int mantissa1:32; | ||
| 234 | #endif | ||
| 235 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 236 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 237 | 	unsigned int exponent:15; | ||
| 238 | 	unsigned int negative:1; | ||
| 239 | 	unsigned int empty:16; | ||
| 240 | 	unsigned int mantissa0:30; | ||
| 241 | 	unsigned int quiet_nan:1; | ||
| 242 | 	unsigned int one:1; | ||
| 243 | 	unsigned int mantissa1:32; | ||
| 244 | # else | ||
| 245 | 	unsigned int mantissa1:32; | ||
| 246 | 	unsigned int mantissa0:30; | ||
| 247 | 	unsigned int quiet_nan:1; | ||
| 248 | 	unsigned int one:1; | ||
| 249 | 	unsigned int exponent:15; | ||
| 250 | 	unsigned int negative:1; | ||
| 251 | 	unsigned int empty:16; | ||
| 252 | # endif | ||
| 253 | #endif | ||
| 254 | } ieee_nan; | ||
| 255 | }; | ||
| 256 | |||
| 257 | #define IEEE854_LONG_DOUBLE_BIAS 0x3fff | ||
| 258 | |||
| 259 | #elif __LDBL_MANT_DIG__ == 53 | ||
| 260 | |||
| 261 | union ieee854_long_double | ||
| 262 | { | ||
| 263 | long double d; | ||
| 264 | |||
| 265 | /* This is the IEEE 754 double-precision format. */ | ||
| 266 | struct | ||
| 267 | { | ||
| 268 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 269 | 	unsigned int negative:1; | ||
| 270 | 	unsigned int exponent:11; | ||
| 271 | 	/* Together these comprise the mantissa. */ | ||
| 272 | 	unsigned int mantissa0:20; | ||
| 273 | 	unsigned int mantissa1:32; | ||
| 274 | #endif				/* Big endian. */ | ||
| 275 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 276 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 277 | 	unsigned int mantissa0:20; | ||
| 278 | 	unsigned int exponent:11; | ||
| 279 | 	unsigned int negative:1; | ||
| 280 | 	unsigned int mantissa1:32; | ||
| 281 | # else | ||
| 282 | 	/* Together these comprise the mantissa. */ | ||
| 283 | 	unsigned int mantissa1:32; | ||
| 284 | 	unsigned int mantissa0:20; | ||
| 285 | 	unsigned int exponent:11; | ||
| 286 | 	unsigned int negative:1; | ||
| 287 | # endif | ||
| 288 | #endif				/* Little endian. */ | ||
| 289 | } ieee; | ||
| 290 | |||
| 291 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 292 | struct | ||
| 293 | { | ||
| 294 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 295 | 	unsigned int negative:1; | ||
| 296 | 	unsigned int exponent:11; | ||
| 297 | 	unsigned int quiet_nan:1; | ||
| 298 | 	/* Together these comprise the mantissa. */ | ||
| 299 | 	unsigned int mantissa0:19; | ||
| 300 | 	unsigned int mantissa1:32; | ||
| 301 | #else | ||
| 302 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 303 | 	unsigned int mantissa0:19; | ||
| 304 | 	unsigned int quiet_nan:1; | ||
| 305 | 	unsigned int exponent:11; | ||
| 306 | 	unsigned int negative:1; | ||
| 307 | 	unsigned int mantissa1:32; | ||
| 308 | # else | ||
| 309 | 	/* Together these comprise the mantissa. */ | ||
| 310 | 	unsigned int mantissa1:32; | ||
| 311 | 	unsigned int mantissa0:19; | ||
| 312 | 	unsigned int quiet_nan:1; | ||
| 313 | 	unsigned int exponent:11; | ||
| 314 | 	unsigned int negative:1; | ||
| 315 | # endif | ||
| 316 | #endif | ||
| 317 | } ieee_nan; | ||
| 318 | }; | ||
| 319 | |||
| 320 | #define IEEE854_LONG_DOUBLE_BIAS	0x3ff /* Added to exponent. */ | ||
| 321 | |||
| 322 | #endif /* __LDBL_MANT_DIG__ == 53 */ | ||
| 323 | |||
| 324 | __END_DECLS | ||
| 325 | |||
| 326 | #endif /* ieee754.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabi64/bits/dlfcn.h deleted-64| ... | @@ -1,64 +0,0 @@ | ||
| 1 | /* System dependent definitions for run-time dynamic loading. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _DLFCN_H | ||
| 20 | # error "Never use <bits/dlfcn.h> directly; include <dlfcn.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* The MODE argument to `dlopen' contains one of the following: */ | ||
| 24 | #define RTLD_LAZY	0x0001	/* Lazy function call binding. */ | ||
| 25 | #define RTLD_NOW	0x0002	/* Immediate function call binding. */ | ||
| 26 | #define RTLD_BINDING_MASK 0x3	/* Mask of binding time value. */ | ||
| 27 | #define RTLD_NOLOAD	0x00008	/* Do not load the object. */ | ||
| 28 | #define RTLD_DEEPBIND	0x00010	/* Use deep binding. */ | ||
| 29 | |||
| 30 | /* If the following bit is set in the MODE argument to `dlopen', | ||
| 31 | the symbols of the loaded object and its dependencies are made | ||
| 32 | visible as if the object were linked directly into the program. */ | ||
| 33 | #define RTLD_GLOBAL	0x0004 | ||
| 34 | |||
| 35 | /* Unix98 demands the following flag which is the inverse to RTLD_GLOBAL. | ||
| 36 | The implementation does this by default and so we can define the | ||
| 37 | value to zero. */ | ||
| 38 | #define RTLD_LOCAL 0 | ||
| 39 | |||
| 40 | /* Do not delete object when closed. */ | ||
| 41 | #define RTLD_NODELETE	0x01000 | ||
| 42 | |||
| 43 | #ifdef __USE_GNU | ||
| 44 | /* To support profiling of shared objects it is a good idea to call | ||
| 45 | the function found using `dlsym' using the following macro since | ||
| 46 | these calls do not use the PLT. But this would mean the dynamic | ||
| 47 | loader has no chance to find out when the function is called. The | ||
| 48 | macro applies the necessary magic so that profiling is possible. | ||
| 49 | Rewrite | ||
| 50 | 	foo = (*fctp) (arg1, arg2); | ||
| 51 | into | ||
| 52 | foo = DL_CALL_FCT (fctp, (arg1, arg2)); | ||
| 53 | */ | ||
| 54 | # define DL_CALL_FCT(fctp, args) \ | ||
| 55 | (_dl_mcount_wrapper_check ((void *) (fctp)), (*(fctp)) args) | ||
| 56 | |||
| 57 | __BEGIN_DECLS | ||
| 58 | |||
| 59 | /* This function calls the profiling functions. */ | ||
| 60 | extern void _dl_mcount_wrapper_check (void *__selfpc) __THROW; | ||
| 61 | |||
| 62 | __END_DECLS | ||
| 63 | |||
| 64 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabi64/bits/errno.h deleted-52| ... | @@ -1,52 +0,0 @@ | ||
| 1 | /* Error constants. MIPS/Linux specific version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_ERRNO_H | ||
| 20 | |||
| 21 | #if !defined _ERRNO_H | ||
| 22 | # error "Never include <bits/errno.h> directly; use <errno.h> instead." | ||
| 23 | #endif | ||
| 24 | |||
| 25 | # include <linux/errno.h> | ||
| 26 | |||
| 27 | /* Older Linux headers do not define these constants. */ | ||
| 28 | # ifndef ENOTSUP | ||
| 29 | # define ENOTSUP		EOPNOTSUPP | ||
| 30 | # endif | ||
| 31 | |||
| 32 | # ifndef ECANCELED | ||
| 33 | # define ECANCELED		158 | ||
| 34 | # endif | ||
| 35 | |||
| 36 | # ifndef EOWNERDEAD | ||
| 37 | # define EOWNERDEAD		165 | ||
| 38 | # endif | ||
| 39 | |||
| 40 | # ifndef ENOTRECOVERABLE | ||
| 41 | # define ENOTRECOVERABLE	166 | ||
| 42 | # endif | ||
| 43 | |||
| 44 | # ifndef ERFKILL | ||
| 45 | # define ERFKILL		167 | ||
| 46 | # endif | ||
| 47 | |||
| 48 | # ifndef EHWPOISON | ||
| 49 | # define EHWPOISON		168 | ||
| 50 | # endif | ||
| 51 | |||
| 52 | #endif /* bits/errno.h. */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabi64/bits/eventfd.h deleted-31| ... | @@ -1,31 +0,0 @@ | ||
| 1 | /* Copyright (C) 2007-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_SYS_EVENTFD_H | ||
| 19 | # error "Never use <bits/eventfd.h> directly; include <sys/eventfd.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Flags for eventfd. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | EFD_SEMAPHORE = 00000001, | ||
| 26 | #define EFD_SEMAPHORE EFD_SEMAPHORE | ||
| 27 | EFD_CLOEXEC = 02000000, | ||
| 28 | #define EFD_CLOEXEC EFD_CLOEXEC | ||
| 29 | EFD_NONBLOCK = 00000200 | ||
| 30 | #define EFD_NONBLOCK EFD_NONBLOCK | ||
| 31 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabi64/bits/floatn.h deleted-97| ... | @@ -1,97 +0,0 @@ | ||
| 1 | /* Macros to control TS 18661-3 glibc features on MIPS platforms. | ||
| 2 | Copyright (C) 2017-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_FLOATN_H | ||
| 20 | #define _BITS_FLOATN_H | ||
| 21 | |||
| 22 | #include <features.h> | ||
| 23 | #include <bits/long-double.h> | ||
| 24 | |||
| 25 | /* Defined to 1 if the current compiler invocation provides a | ||
| 26 | floating-point type with the IEEE 754 binary128 format, and this | ||
| 27 | glibc includes corresponding *f128 interfaces for it. */ | ||
| 28 | #ifndef __NO_LONG_DOUBLE_MATH | ||
| 29 | # define __HAVE_FLOAT128 1 | ||
| 30 | #else | ||
| 31 | /* glibc does not support _Float128 for platforms where long double is | ||
| 32 | normally binary128 when building with long double as binary64. | ||
| 33 | GCC's default for supported scalar modes does not support it either | ||
| 34 | in that case. */ | ||
| 35 | # define __HAVE_FLOAT128 0 | ||
| 36 | #endif | ||
| 37 | |||
| 38 | /* Defined to 1 if __HAVE_FLOAT128 is 1 and the type is ABI-distinct | ||
| 39 | from the default float, double and long double types in this glibc. */ | ||
| 40 | #define __HAVE_DISTINCT_FLOAT128 0 | ||
| 41 | |||
| 42 | /* Defined to 1 if the current compiler invocation provides a | ||
| 43 | floating-point type with the right format for _Float64x, and this | ||
| 44 | glibc includes corresponding *f64x interfaces for it. */ | ||
| 45 | #define __HAVE_FLOAT64X __HAVE_FLOAT128 | ||
| 46 | |||
| 47 | /* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format | ||
| 48 | of long double. Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has | ||
| 49 | the format of _Float128, which must be different from that of long | ||
| 50 | double. */ | ||
| 51 | #define __HAVE_FLOAT64X_LONG_DOUBLE __HAVE_FLOAT128 | ||
| 52 | |||
| 53 | #ifndef __ASSEMBLER__ | ||
| 54 | |||
| 55 | /* Defined to concatenate the literal suffix to be used with _Float128 | ||
| 56 | types, if __HAVE_FLOAT128 is 1. */ | ||
| 57 | # if __HAVE_FLOAT128 | ||
| 58 | # if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) | ||
| 59 | /* The literal suffix f128 exists only since GCC 7.0. */ | ||
| 60 | # define __f128(x) x##l | ||
| 61 | # else | ||
| 62 | # define __f128(x) x##f128 | ||
| 63 | # endif | ||
| 64 | # endif | ||
| 65 | |||
| 66 | /* Defined to a complex binary128 type if __HAVE_FLOAT128 is 1. */ | ||
| 67 | # if __HAVE_FLOAT128 | ||
| 68 | # if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) | ||
| 69 | # define __CFLOAT128 _Complex long double | ||
| 70 | # else | ||
| 71 | # define __CFLOAT128 _Complex _Float128 | ||
| 72 | # endif | ||
| 73 | # endif | ||
| 74 | |||
| 75 | /* The remaining of this file provides support for older compilers. */ | ||
| 76 | # if __HAVE_FLOAT128 | ||
| 77 | |||
| 78 | /* The type _Float128 exists only since GCC 7.0. */ | ||
| 79 | # if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) | ||
| 80 | typedef long double _Float128; | ||
| 81 | # endif | ||
| 82 | |||
| 83 | /* Various built-in functions do not exist before GCC 7.0. */ | ||
| 84 | # if !__GNUC_PREREQ (7, 0) | ||
| 85 | # define __builtin_huge_valf128() (__builtin_huge_vall ()) | ||
| 86 | # define __builtin_inff128() (__builtin_infl ()) | ||
| 87 | # define __builtin_nanf128(x) (__builtin_nanl (x)) | ||
| 88 | # define __builtin_nansf128(x) (__builtin_nansl (x)) | ||
| 89 | # endif | ||
| 90 | |||
| 91 | # endif | ||
| 92 | |||
| 93 | #endif /* !__ASSEMBLER__. */ | ||
| 94 | |||
| 95 | #include <bits/floatn-common.h> | ||
| 96 | |||
| 97 | #endif /* _BITS_FLOATN_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabi64/bits/inotify.h deleted-29| ... | @@ -1,29 +0,0 @@ | ||
| 1 | /* Copyright (C) 2005-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_SYS_INOTIFY_H | ||
| 19 | # error "Never use <bits/inotify.h> directly; include <sys/inotify.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Flags for the parameter of inotify_init1. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | IN_CLOEXEC = 02000000, | ||
| 26 | #define IN_CLOEXEC IN_CLOEXEC | ||
| 27 | IN_NONBLOCK = 00000200 | ||
| 28 | #define IN_NONBLOCK IN_NONBLOCK | ||
| 29 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabi64/bits/ioctl-types.h deleted-75| ... | @@ -1,75 +0,0 @@ | ||
| 1 | /* Structure types for pre-termios terminal ioctls. Linux/MIPS version. | ||
| 2 | Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_IOCTL_H | ||
| 20 | # error "Never use <bits/ioctl-types.h> directly; include <sys/ioctl.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Get definition of constants for use with `ioctl'. */ | ||
| 24 | #include <asm/ioctls.h> | ||
| 25 | |||
| 26 | struct winsize | ||
| 27 | { | ||
| 28 | unsigned short int ws_row; | ||
| 29 | unsigned short int ws_col; | ||
| 30 | unsigned short int ws_xpixel; | ||
| 31 | unsigned short int ws_ypixel; | ||
| 32 | }; | ||
| 33 | |||
| 34 | #define NCC	8 | ||
| 35 | struct termio | ||
| 36 | { | ||
| 37 | unsigned short int c_iflag;		/* input mode flags */ | ||
| 38 | unsigned short int c_oflag;		/* output mode flags */ | ||
| 39 | unsigned short int c_cflag;		/* control mode flags */ | ||
| 40 | unsigned short int c_lflag;		/* local mode flags */ | ||
| 41 | char c_line;			/* line discipline */ | ||
| 42 | /* Yes, this is really NCCS. */ | ||
| 43 | unsigned char c_cc[32 /* NCCS */]; /* control characters */ | ||
| 44 | }; | ||
| 45 | |||
| 46 | /* modem lines */ | ||
| 47 | #define TIOCM_LE	0x001		/* line enable */ | ||
| 48 | #define TIOCM_DTR	0x002		/* data terminal ready */ | ||
| 49 | #define TIOCM_RTS	0x004		/* request to send */ | ||
| 50 | #define TIOCM_ST	0x010		/* secondary transmit */ | ||
| 51 | #define TIOCM_SR	0x020		/* secondary receive */ | ||
| 52 | #define TIOCM_CTS	0x040		/* clear to send */ | ||
| 53 | #define TIOCM_CAR	0x100		/* carrier detect */ | ||
| 54 | #define TIOCM_CD	TIOCM_CAR | ||
| 55 | #define TIOCM_RNG	0x200		/* ring */ | ||
| 56 | #define TIOCM_RI	TIOCM_RNG | ||
| 57 | #define TIOCM_DSR	0x400		/* data set ready */ | ||
| 58 | |||
| 59 | /* line disciplines */ | ||
| 60 | #define N_TTY		0 | ||
| 61 | #define N_SLIP		1 | ||
| 62 | #define N_MOUSE		2 | ||
| 63 | #define N_PPP		3 | ||
| 64 | #define N_STRIP		4 | ||
| 65 | #define N_AX25		5 | ||
| 66 | #define N_X25		6	/* X.25 async */ | ||
| 67 | #define N_6PACK		7 | ||
| 68 | #define N_MASC		8	/* Mobitex module */ | ||
| 69 | #define N_R3964		9	/* Simatic R3964 module */ | ||
| 70 | #define N_PROFIBUS_FDL	10	/* Profibus */ | ||
| 71 | #define N_IRDA		11	/* Linux IR */ | ||
| 72 | #define N_SMSBLOCK	12	/* SMS block mode */ | ||
| 73 | #define N_HDLC		13	/* synchronous HDLC */ | ||
| 74 | #define N_SYNC_PPP	14	/* synchronous PPP */ | ||
| 75 | #define	N_HCI		15	/* Bluetooth HCI UART */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabi64/bits/ipctypes.h deleted-31| ... | @@ -1,31 +0,0 @@ | ||
| 1 | /* bits/ipctypes.h -- Define some types used by SysV IPC/MSG/SHM. MIPS version | ||
| 2 | Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* | ||
| 20 | * Never include <bits/ipctypes.h> directly. | ||
| 21 | */ | ||
| 22 | |||
| 23 | #ifndef _BITS_IPCTYPES_H | ||
| 24 | #define _BITS_IPCTYPES_H	1 | ||
| 25 | |||
| 26 | #include <bits/types.h> | ||
| 27 | |||
| 28 | typedef __SLONG32_TYPE __ipc_pid_t; | ||
| 29 | |||
| 30 | |||
| 31 | #endif /* bits/ipctypes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabi64/bits/mman.h deleted-44| ... | @@ -1,44 +0,0 @@ | ||
| 1 | /* Definitions for POSIX memory map interface. Linux/MIPS version. | ||
| 2 | Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_MMAN_H | ||
| 20 | # error "Never use <bits/mman.h> directly; include <sys/mman.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* The following definitions basically come from the kernel headers. | ||
| 24 | But the kernel header is not namespace clean. */ | ||
| 25 | |||
| 26 | /* These are Linux-specific. */ | ||
| 27 | #define MAP_NORESERVE	0x0400		/* don't check for reservations */ | ||
| 28 | #define MAP_GROWSDOWN	0x1000		/* stack-like segment */ | ||
| 29 | #define MAP_DENYWRITE	0x2000		/* ETXTBSY */ | ||
| 30 | #define MAP_EXECUTABLE	0x4000		/* mark it as an executable */ | ||
| 31 | #define MAP_LOCKED	0x8000		/* pages are locked */ | ||
| 32 | #define MAP_POPULATE 0x10000 /* populate (prefault) pagetables */ | ||
| 33 | #define MAP_NONBLOCK 0x20000 /* do not block on IO */ | ||
| 34 | #define MAP_STACK	0x40000		/* Allocation is for a stack. */ | ||
| 35 | #define MAP_HUGETLB	0x80000		/* Create huge page mapping. */ | ||
| 36 | #define MAP_FIXED_NOREPLACE 0x100000	/* MAP_FIXED but do not unmap | ||
| 37 | 					 underlying mapping. */ | ||
| 38 | |||
| 39 | #define __MAP_ANONYMOUS 0x0800 | ||
| 40 | |||
| 41 | /* Include generic Linux declarations. */ | ||
| 42 | #include <bits/mman-linux.h> | ||
| 43 | |||
| 44 | #define MAP_RENAME	MAP_ANONYMOUS | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabi64/bits/poll.h deleted-49| ... | @@ -1,49 +0,0 @@ | ||
| 1 | /* Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_POLL_H | ||
| 19 | # error "Never use <bits/poll.h> directly; include <sys/poll.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Event types that can be polled for. These bits may be set in `events' | ||
| 23 | to indicate the interesting event types; they will appear in `revents' | ||
| 24 | to indicate the status of the file descriptor. */ | ||
| 25 | #define POLLIN		0x001		/* There is data to read. */ | ||
| 26 | #define POLLPRI		0x002		/* There is urgent data to read. */ | ||
| 27 | #define POLLOUT		0x004		/* Writing now will not block. */ | ||
| 28 | |||
| 29 | #if defined __USE_XOPEN || defined __USE_XOPEN2K8 | ||
| 30 | /* These values are defined in XPG4.2. */ | ||
| 31 | # define POLLRDNORM	0x040		/* Normal data may be read. */ | ||
| 32 | # define POLLRDBAND	0x080		/* Priority data may be read. */ | ||
| 33 | # define POLLWRNORM	POLLOUT		/* Writing now will not block. */ | ||
| 34 | # define POLLWRBAND	0x100		/* Priority data may be written. */ | ||
| 35 | #endif | ||
| 36 | |||
| 37 | #ifdef __USE_GNU | ||
| 38 | /* These are extensions for Linux. */ | ||
| 39 | # define POLLMSG	0x400 | ||
| 40 | # define POLLREMOVE	0x1000 | ||
| 41 | # define POLLRDHUP	0x2000 | ||
| 42 | #endif | ||
| 43 | |||
| 44 | /* Event types always implicitly polled for. These bits need not be set in | ||
| 45 | `events', but they will appear in `revents' to indicate the status of | ||
| 46 | the file descriptor. */ | ||
| 47 | #define POLLERR		0x008		/* Error condition. */ | ||
| 48 | #define POLLHUP		0x010		/* Hung up. */ | ||
| 49 | #define POLLNVAL	0x020		/* Invalid polling request. */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabi64/bits/pthread_stack_min.h deleted-20| ... | @@ -1,20 +0,0 @@ | ||
| 1 | /* Definition of PTHREAD_STACK_MIN. MIPS Linux version. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public License as | ||
| 7 | published by the Free Software Foundation; either version 2.1 of the | ||
| 8 | License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* Minimum size for a thread. At least two pages with 64k pages. */ | ||
| 20 | #define PTHREAD_STACK_MIN	131072 | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabi64/bits/pthreadtypes-arch.h deleted-44| ... | @@ -1,44 +0,0 @@ | ||
| 1 | /* Machine-specific pthread type layouts. MIPS version. | ||
| 2 | Copyright (C) 2005-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_PTHREADTYPES_ARCH_H | ||
| 20 | #define _BITS_PTHREADTYPES_ARCH_H	1 | ||
| 21 | |||
| 22 | #include <bits/endian.h> | ||
| 23 | |||
| 24 | #if _MIPS_SIM == _ABI64 | ||
| 25 | # define __SIZEOF_PTHREAD_ATTR_T 56 | ||
| 26 | # define __SIZEOF_PTHREAD_MUTEX_T 40 | ||
| 27 | # define __SIZEOF_PTHREAD_RWLOCK_T 56 | ||
| 28 | # define __SIZEOF_PTHREAD_BARRIER_T 32 | ||
| 29 | #else | ||
| 30 | # define __SIZEOF_PTHREAD_ATTR_T 36 | ||
| 31 | # define __SIZEOF_PTHREAD_MUTEX_T 24 | ||
| 32 | # define __SIZEOF_PTHREAD_RWLOCK_T 32 | ||
| 33 | # define __SIZEOF_PTHREAD_BARRIER_T 20 | ||
| 34 | #endif | ||
| 35 | #define __SIZEOF_PTHREAD_MUTEXATTR_T 4 | ||
| 36 | #define __SIZEOF_PTHREAD_COND_T 48 | ||
| 37 | #define __SIZEOF_PTHREAD_CONDATTR_T 4 | ||
| 38 | #define __SIZEOF_PTHREAD_RWLOCKATTR_T 8 | ||
| 39 | #define __SIZEOF_PTHREAD_BARRIERATTR_T 4 | ||
| 40 | |||
| 41 | #define __LOCK_ALIGNMENT | ||
| 42 | #define __ONCE_ALIGNMENT | ||
| 43 | |||
| 44 | #endif	/* bits/pthreadtypes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabi64/bits/resource.h deleted-231| ... | @@ -1,231 +0,0 @@ | ||
| 1 | /* Bit values & structures for resource limits. Linux/MIPS version. | ||
| 2 | Copyright (C) 1994-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_RESOURCE_H | ||
| 20 | # error "Never use <bits/resource.h> directly; include <sys/resource.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <bits/types.h> | ||
| 24 | |||
| 25 | /* Transmute defines to enumerations. The macro re-definitions are | ||
| 26 | necessary because some programs want to test for operating system | ||
| 27 | features with #ifdef RUSAGE_SELF. In ISO C the reflexive | ||
| 28 | definition is a no-op. */ | ||
| 29 | |||
| 30 | /* Kinds of resource limit. */ | ||
| 31 | enum __rlimit_resource | ||
| 32 | { | ||
| 33 | /* Per-process CPU limit, in seconds. */ | ||
| 34 | RLIMIT_CPU = 0, | ||
| 35 | #define RLIMIT_CPU RLIMIT_CPU | ||
| 36 | |||
| 37 | /* Largest file that can be created, in bytes. */ | ||
| 38 | RLIMIT_FSIZE = 1, | ||
| 39 | #define	RLIMIT_FSIZE RLIMIT_FSIZE | ||
| 40 | |||
| 41 | /* Maximum size of data segment, in bytes. */ | ||
| 42 | RLIMIT_DATA = 2, | ||
| 43 | #define	RLIMIT_DATA RLIMIT_DATA | ||
| 44 | |||
| 45 | /* Maximum size of stack segment, in bytes. */ | ||
| 46 | RLIMIT_STACK = 3, | ||
| 47 | #define	RLIMIT_STACK RLIMIT_STACK | ||
| 48 | |||
| 49 | /* Largest core file that can be created, in bytes. */ | ||
| 50 | RLIMIT_CORE = 4, | ||
| 51 | #define	RLIMIT_CORE RLIMIT_CORE | ||
| 52 | |||
| 53 | /* Largest resident set size, in bytes. | ||
| 54 | This affects swapping; processes that are exceeding their | ||
| 55 | resident set size will be more likely to have physical memory | ||
| 56 | taken from them. */ | ||
| 57 | __RLIMIT_RSS = 7, | ||
| 58 | #define	RLIMIT_RSS __RLIMIT_RSS | ||
| 59 | |||
| 60 | /* Number of open files. */ | ||
| 61 | RLIMIT_NOFILE = 5, | ||
| 62 | __RLIMIT_OFILE = RLIMIT_NOFILE, /* BSD name for same. */ | ||
| 63 | #define RLIMIT_NOFILE RLIMIT_NOFILE | ||
| 64 | #define RLIMIT_OFILE __RLIMIT_OFILE | ||
| 65 | |||
| 66 | /* Address space limit (?) */ | ||
| 67 | RLIMIT_AS = 6, | ||
| 68 | #define RLIMIT_AS RLIMIT_AS | ||
| 69 | |||
| 70 | /* Number of processes. */ | ||
| 71 | __RLIMIT_NPROC = 8, | ||
| 72 | #define RLIMIT_NPROC __RLIMIT_NPROC | ||
| 73 | |||
| 74 | /* Locked-in-memory address space. */ | ||
| 75 | __RLIMIT_MEMLOCK = 9, | ||
| 76 | #define RLIMIT_MEMLOCK __RLIMIT_MEMLOCK | ||
| 77 | |||
| 78 | /* Maximum number of file locks. */ | ||
| 79 | __RLIMIT_LOCKS = 10, | ||
| 80 | #define RLIMIT_LOCKS __RLIMIT_LOCKS | ||
| 81 | |||
| 82 | /* Maximum number of pending signals. */ | ||
| 83 | __RLIMIT_SIGPENDING = 11, | ||
| 84 | #define RLIMIT_SIGPENDING __RLIMIT_SIGPENDING | ||
| 85 | |||
| 86 | /* Maximum bytes in POSIX message queues. */ | ||
| 87 | __RLIMIT_MSGQUEUE = 12, | ||
| 88 | #define RLIMIT_MSGQUEUE __RLIMIT_MSGQUEUE | ||
| 89 | |||
| 90 | /* Maximum nice priority allowed to raise to. | ||
| 91 | Nice levels 19 .. -20 correspond to 0 .. 39 | ||
| 92 | values of this resource limit. */ | ||
| 93 | __RLIMIT_NICE = 13, | ||
| 94 | #define RLIMIT_NICE __RLIMIT_NICE | ||
| 95 | |||
| 96 | /* Maximum realtime priority allowed for non-priviledged | ||
| 97 | processes. */ | ||
| 98 | __RLIMIT_RTPRIO = 14, | ||
| 99 | #define RLIMIT_RTPRIO __RLIMIT_RTPRIO | ||
| 100 | |||
| 101 | /* Maximum CPU time in microseconds that a process scheduled under a real-time | ||
| 102 | scheduling policy may consume without making a blocking system | ||
| 103 | call before being forcibly descheduled. */ | ||
| 104 | __RLIMIT_RTTIME = 15, | ||
| 105 | #define RLIMIT_RTTIME __RLIMIT_RTTIME | ||
| 106 | |||
| 107 | __RLIMIT_NLIMITS = 16, | ||
| 108 | __RLIM_NLIMITS = __RLIMIT_NLIMITS | ||
| 109 | #define RLIMIT_NLIMITS __RLIMIT_NLIMITS | ||
| 110 | #define RLIM_NLIMITS __RLIM_NLIMITS | ||
| 111 | }; | ||
| 112 | |||
| 113 | /* Value to indicate that there is no limit. */ | ||
| 114 | #if _MIPS_SIM == _ABI64 | ||
| 115 | /* The N64 syscall uses this value. */ | ||
| 116 | # define RLIM_INFINITY 0xffffffffffffffffUL | ||
| 117 | # ifdef __USE_LARGEFILE64 | ||
| 118 | # define RLIM64_INFINITY 0xffffffffffffffffUL | ||
| 119 | # endif | ||
| 120 | #else | ||
| 121 | /* The O32 and N32 syscalls use 0x7fffffff. */ | ||
| 122 | # ifndef __USE_FILE_OFFSET64 | ||
| 123 | # define RLIM_INFINITY ((long int)(~0UL >> 1)) | ||
| 124 | # else | ||
| 125 | # define RLIM_INFINITY 0xffffffffffffffffULL | ||
| 126 | # endif | ||
| 127 | # ifdef __USE_LARGEFILE64 | ||
| 128 | # define RLIM64_INFINITY 0xffffffffffffffffULL | ||
| 129 | # endif | ||
| 130 | #endif | ||
| 131 | |||
| 132 | /* We can represent all limits. */ | ||
| 133 | #define RLIM_SAVED_MAX	RLIM_INFINITY | ||
| 134 | #define RLIM_SAVED_CUR	RLIM_INFINITY | ||
| 135 | |||
| 136 | |||
| 137 | /* Type for resource quantity measurement. */ | ||
| 138 | #ifndef __USE_FILE_OFFSET64 | ||
| 139 | typedef __rlim_t rlim_t; | ||
| 140 | #else | ||
| 141 | typedef __rlim64_t rlim_t; | ||
| 142 | #endif | ||
| 143 | #ifdef __USE_LARGEFILE64 | ||
| 144 | typedef __rlim64_t rlim64_t; | ||
| 145 | #endif | ||
| 146 | |||
| 147 | struct rlimit | ||
| 148 | { | ||
| 149 | /* The current (soft) limit. */ | ||
| 150 | rlim_t rlim_cur; | ||
| 151 | /* The hard limit. */ | ||
| 152 | rlim_t rlim_max; | ||
| 153 | }; | ||
| 154 | |||
| 155 | #ifdef __USE_LARGEFILE64 | ||
| 156 | struct rlimit64 | ||
| 157 | { | ||
| 158 | /* The current (soft) limit. */ | ||
| 159 | rlim64_t rlim_cur; | ||
| 160 | /* The hard limit. */ | ||
| 161 | rlim64_t rlim_max; | ||
| 162 | }; | ||
| 163 | #endif | ||
| 164 | |||
| 165 | /* Whose usage statistics do you want? */ | ||
| 166 | enum __rusage_who | ||
| 167 | { | ||
| 168 | /* The calling process. */ | ||
| 169 | RUSAGE_SELF = 0, | ||
| 170 | #define RUSAGE_SELF RUSAGE_SELF | ||
| 171 | |||
| 172 | /* All of its terminated child processes. */ | ||
| 173 | RUSAGE_CHILDREN = -1 | ||
| 174 | #define RUSAGE_CHILDREN RUSAGE_CHILDREN | ||
| 175 | |||
| 176 | #ifdef __USE_GNU | ||
| 177 | , | ||
| 178 | /* The calling thread. */ | ||
| 179 | RUSAGE_THREAD = 1 | ||
| 180 | # define RUSAGE_THREAD RUSAGE_THREAD | ||
| 181 | /* Name for the same functionality on Solaris. */ | ||
| 182 | # define RUSAGE_LWP RUSAGE_THREAD | ||
| 183 | #endif | ||
| 184 | }; | ||
| 185 | |||
| 186 | #include <bits/types/struct_timeval.h> | ||
| 187 | #include <bits/types/struct_rusage.h> | ||
| 188 | |||
| 189 | /* Priority limits. */ | ||
| 190 | #define PRIO_MIN	-20	/* Minimum priority a process can have. */ | ||
| 191 | #define PRIO_MAX	20	/* Maximum priority a process can have. */ | ||
| 192 | |||
| 193 | /* The type of the WHICH argument to `getpriority' and `setpriority', | ||
| 194 | indicating what flavor of entity the WHO argument specifies. */ | ||
| 195 | enum __priority_which | ||
| 196 | { | ||
| 197 | PRIO_PROCESS = 0,		/* WHO is a process ID. */ | ||
| 198 | #define PRIO_PROCESS PRIO_PROCESS | ||
| 199 | PRIO_PGRP = 1,		/* WHO is a process group ID. */ | ||
| 200 | #define PRIO_PGRP PRIO_PGRP | ||
| 201 | PRIO_USER = 2			/* WHO is a user ID. */ | ||
| 202 | #define PRIO_USER PRIO_USER | ||
| 203 | }; | ||
| 204 | |||
| 205 | |||
| 206 | __BEGIN_DECLS | ||
| 207 | |||
| 208 | #ifdef __USE_GNU | ||
| 209 | /* Modify and return resource limits of a process atomically. */ | ||
| 210 | # ifndef __USE_FILE_OFFSET64 | ||
| 211 | extern int prlimit (__pid_t __pid, enum __rlimit_resource __resource, | ||
| 212 | 		 const struct rlimit *__new_limit, | ||
| 213 | 		 struct rlimit *__old_limit) __THROW; | ||
| 214 | # else | ||
| 215 | # ifdef __REDIRECT_NTH | ||
| 216 | extern int __REDIRECT_NTH (prlimit, (__pid_t __pid, | ||
| 217 | 				 enum __rlimit_resource __resource, | ||
| 218 | 				 const struct rlimit *__new_limit, | ||
| 219 | 				 struct rlimit *__old_limit), prlimit64); | ||
| 220 | # else | ||
| 221 | # define prlimit prlimit64 | ||
| 222 | # endif | ||
| 223 | # endif | ||
| 224 | # ifdef __USE_LARGEFILE64 | ||
| 225 | extern int prlimit64 (__pid_t __pid, enum __rlimit_resource __resource, | ||
| 226 | 		 const struct rlimit64 *__new_limit, | ||
| 227 | 		 struct rlimit64 *__old_limit) __THROW; | ||
| 228 | # endif | ||
| 229 | #endif | ||
| 230 | |||
| 231 | __END_DECLS | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabi64/bits/semaphore.h deleted-36| ... | @@ -1,36 +0,0 @@ | ||
| 1 | /* Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SEMAPHORE_H | ||
| 19 | # error "Never use <bits/semaphore.h> directly; include <semaphore.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | #if _MIPS_SIM == _ABI64 | ||
| 23 | # define __SIZEOF_SEM_T	32 | ||
| 24 | #else | ||
| 25 | # define __SIZEOF_SEM_T	16 | ||
| 26 | #endif | ||
| 27 | |||
| 28 | /* Value returned if `sem_open' failed. */ | ||
| 29 | #define SEM_FAILED ((sem_t *) 0) | ||
| 30 | |||
| 31 | |||
| 32 | typedef union | ||
| 33 | { | ||
| 34 | char __size[__SIZEOF_SEM_T]; | ||
| 35 | long int __align; | ||
| 36 | } sem_t; | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabi64/bits/shmlba.h deleted-24| ... | @@ -1,24 +0,0 @@ | ||
| 1 | /* Define SHMLBA. MIPS version. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SHM_H | ||
| 20 | # error "Never use <bits/shmlba.h> directly; include <sys/shm.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Segment low boundary address multiple. */ | ||
| 24 | #define SHMLBA		0x40000 | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabi64/bits/sigaction.h deleted-94| ... | @@ -1,94 +0,0 @@ | ||
| 1 | /* The proper definitions for Linux/MIPS's sigaction. | ||
| 2 | Copyright (C) 1993-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_SIGACTION_H | ||
| 20 | #define _BITS_SIGACTION_H 1 | ||
| 21 | |||
| 22 | #ifndef _SIGNAL_H | ||
| 23 | # error "Never include <bits/sigaction.h> directly; use <signal.h> instead." | ||
| 24 | #endif | ||
| 25 | |||
| 26 | /* Structure describing the action to be taken when a signal arrives. */ | ||
| 27 | struct sigaction | ||
| 28 | { | ||
| 29 | /* Special flags. */ | ||
| 30 | int sa_flags; | ||
| 31 | |||
| 32 | /* Signal handler. */ | ||
| 33 | #if defined __USE_POSIX199309 || defined __USE_XOPEN_EXTENDED | ||
| 34 | union | ||
| 35 | { | ||
| 36 | 	/* Used if SA_SIGINFO is not set. */ | ||
| 37 | 	__sighandler_t sa_handler; | ||
| 38 | 	/* Used if SA_SIGINFO is set. */ | ||
| 39 | 	void (*sa_sigaction) (int, siginfo_t *, void *); | ||
| 40 | } | ||
| 41 | __sigaction_handler; | ||
| 42 | # define sa_handler __sigaction_handler.sa_handler | ||
| 43 | # define sa_sigaction __sigaction_handler.sa_sigaction | ||
| 44 | #else | ||
| 45 | __sighandler_t sa_handler; | ||
| 46 | #endif | ||
| 47 | /* Additional set of signals to be blocked. */ | ||
| 48 | __sigset_t sa_mask; | ||
| 49 | |||
| 50 | /* The ABI says here are two unused ints following. */ | ||
| 51 | /* Restore handler. */ | ||
| 52 | void (*sa_restorer) (void); | ||
| 53 | |||
| 54 | #if _MIPS_SZPTR < 64 | ||
| 55 | int sa_resv[1]; | ||
| 56 | #endif | ||
| 57 | }; | ||
| 58 | |||
| 59 | /* Bits in `sa_flags'. */ | ||
| 60 | /* Please note that some Linux kernels versions use different values for these | ||
| 61 | flags which is a bug in those kernel versions. */ | ||
| 62 | #define SA_NOCLDSTOP 0x00000001 /* Don't send SIGCHLD when children stop. */ | ||
| 63 | #define SA_NOCLDWAIT 0x00010000 /* Don't create zombie on child death. */ | ||
| 64 | #define SA_SIGINFO 0x00000008 /* Invoke signal-catching function with | ||
| 65 | 				 three arguments instead of one. */ | ||
| 66 | #if defined __USE_XOPEN_EXTENDED || defined __USE_MISC | ||
| 67 | # define SA_ONSTACK 0x08000000 /* Use signal stack by using `sa_restorer'. */ | ||
| 68 | #endif | ||
| 69 | #if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8 | ||
| 70 | # define SA_RESETHAND 0x80000000 /* Reset to SIG_DFL on entry to handler. */ | ||
| 71 | # define SA_RESTART 0x10000000 /* Restart syscall on signal return. */ | ||
| 72 | # define SA_NODEFER 0x40000000 /* Don't automatically block the signal when | ||
| 73 | 				 its handler is being executed. */ | ||
| 74 | #endif | ||
| 75 | #ifdef __USE_MISC | ||
| 76 | # define SA_INTERRUPT 0x20000000 /* Historical no-op. */ | ||
| 77 | |||
| 78 | /* Some aliases for the SA_ constants. */ | ||
| 79 | # define SA_NOMASK SA_NODEFER | ||
| 80 | # define SA_ONESHOT SA_RESETHAND | ||
| 81 | # define SA_STACK SA_ONSTACK | ||
| 82 | #endif | ||
| 83 | |||
| 84 | /* Values for the HOW argument to `sigprocmask'. */ | ||
| 85 | #define SIG_NOP	 0		/* 0 is unused to catch errors */ | ||
| 86 | #define	SIG_BLOCK 1		/* Block signals. */ | ||
| 87 | #define	SIG_UNBLOCK 2		/* Unblock signals. */ | ||
| 88 | #define	SIG_SETMASK 3		/* Set the set of blocked signals. */ | ||
| 89 | #ifdef __USE_MISC | ||
| 90 | # define SIG_SETMASK32 256	/* Goodie from SGI for BSD compatibility: | ||
| 91 | 				 set only the low 32 bit of the sigset. */ | ||
| 92 | #endif | ||
| 93 | |||
| 94 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabi64/bits/sigcontext.h deleted-82| ... | @@ -1,82 +0,0 @@ | ||
| 1 | /* Copyright (C) 1996-2025 Free Software Foundation, Inc. This file is part of the GNU C Library. | ||
| 2 | |||
| 3 | The GNU C Library is free software; you can redistribute it and/or | ||
| 4 | modify it under the terms of the GNU Lesser General Public | ||
| 5 | License as published by the Free Software Foundation; either | ||
| 6 | version 2.1 of the License, or (at your option) any later version. | ||
| 7 | |||
| 8 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 9 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 10 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 11 | Lesser General Public License for more details. | ||
| 12 | |||
| 13 | You should have received a copy of the GNU Lesser General Public | ||
| 14 | License along with the GNU C Library. If not, see | ||
| 15 | <https://www.gnu.org/licenses/>. */ | ||
| 16 | |||
| 17 | #ifndef _BITS_SIGCONTEXT_H | ||
| 18 | #define _BITS_SIGCONTEXT_H 1 | ||
| 19 | |||
| 20 | #if !defined _SIGNAL_H && !defined _SYS_UCONTEXT_H | ||
| 21 | # error "Never use <bits/sigcontext.h> directly; include <signal.h> instead." | ||
| 22 | #endif | ||
| 23 | |||
| 24 | #include <sgidefs.h> | ||
| 25 | |||
| 26 | #if _MIPS_SIM == _ABIO32 | ||
| 27 | |||
| 28 | /* Certain unused fields were replaced with new ones in 2.6.12-rc4. | ||
| 29 | The changes were as follows: | ||
| 30 | |||
| 31 | sc_cause -> sc_hi1 | ||
| 32 | sc_badvaddr -> sc_lo1 | ||
| 33 | sc_sigset[0] -> sc_hi2 | ||
| 34 | sc_sigset[1] -> sc_lo2 | ||
| 35 | sc_sigset[2] -> sc_hi3 | ||
| 36 | sc_sigset[3] -> sc_lo3 | ||
| 37 | |||
| 38 | sc_regmask, sc_ownedfp and sc_fpc_eir are not used. */ | ||
| 39 | struct sigcontext { | ||
| 40 | unsigned int sc_regmask; | ||
| 41 | unsigned int sc_status; | ||
| 42 | __extension__ unsigned long long sc_pc; | ||
| 43 | __extension__ unsigned long long sc_regs[32]; | ||
| 44 | __extension__ unsigned long long sc_fpregs[32]; | ||
| 45 | unsigned int sc_ownedfp; | ||
| 46 | unsigned int sc_fpc_csr; | ||
| 47 | unsigned int sc_fpc_eir; | ||
| 48 | unsigned int sc_used_math; | ||
| 49 | unsigned int sc_dsp; | ||
| 50 | __extension__ unsigned long long sc_mdhi; | ||
| 51 | __extension__ unsigned long long sc_mdlo; | ||
| 52 | unsigned long sc_hi1; | ||
| 53 | unsigned long sc_lo1; | ||
| 54 | unsigned long sc_hi2; | ||
| 55 | unsigned long sc_lo2; | ||
| 56 | unsigned long sc_hi3; | ||
| 57 | unsigned long sc_lo3; | ||
| 58 | }; | ||
| 59 | |||
| 60 | #else | ||
| 61 | |||
| 62 | /* This structure changed in 2.6.12-rc4 when DSP support was added. */ | ||
| 63 | struct sigcontext { | ||
| 64 | __extension__ unsigned long long sc_regs[32]; | ||
| 65 | __extension__ unsigned long long sc_fpregs[32]; | ||
| 66 | __extension__ unsigned long long sc_mdhi; | ||
| 67 | __extension__ unsigned long long sc_hi1; | ||
| 68 | __extension__ unsigned long long sc_hi2; | ||
| 69 | __extension__ unsigned long long sc_hi3; | ||
| 70 | __extension__ unsigned long long sc_mdlo; | ||
| 71 | __extension__ unsigned long long sc_lo1; | ||
| 72 | __extension__ unsigned long long sc_lo2; | ||
| 73 | __extension__ unsigned long long sc_lo3; | ||
| 74 | __extension__ unsigned long long sc_pc; | ||
| 75 | unsigned int sc_fpc_csr; | ||
| 76 | unsigned int sc_used_math; | ||
| 77 | unsigned int sc_dsp; | ||
| 78 | unsigned int sc_reserved; | ||
| 79 | }; | ||
| 80 | |||
| 81 | #endif /* _MIPS_SIM != _ABIO32 */ | ||
| 82 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabi64/bits/siginfo-arch.h deleted-13| ... | @@ -1,13 +0,0 @@ | ||
| 1 | /* Architecture-specific adjustments to siginfo_t. MIPS version. */ | ||
| 2 | #ifndef _BITS_SIGINFO_ARCH_H | ||
| 3 | #define _BITS_SIGINFO_ARCH_H 1 | ||
| 4 | |||
| 5 | /* MIPS has the si_code and si_errno fields in the opposite order from | ||
| 6 | all other architectures. */ | ||
| 7 | #define __SI_ERRNO_THEN_CODE 0 | ||
| 8 | |||
| 9 | /* MIPS also has different values for SI_ASYNCIO, SI_MESGQ, and SI_TIMER | ||
| 10 | than all other architectures. */ | ||
| 11 | #define __SI_ASYNCIO_AFTER_SIGIO 0 | ||
| 12 | |||
| 13 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabi64/bits/signalfd.h deleted-29| ... | @@ -1,29 +0,0 @@ | ||
| 1 | /* Copyright (C) 2007-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_SYS_SIGNALFD_H | ||
| 19 | # error "Never use <bits/signalfd.h> directly; include <sys/signalfd.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Flags for signalfd. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | SFD_CLOEXEC = 02000000, | ||
| 26 | #define SFD_CLOEXEC SFD_CLOEXEC | ||
| 27 | SFD_NONBLOCK = 00000200 | ||
| 28 | #define SFD_NONBLOCK SFD_NONBLOCK | ||
| 29 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabi64/bits/signum-arch.h deleted-65| ... | @@ -1,65 +0,0 @@ | ||
| 1 | /* Signal number definitions. Linux/MIPS version. | ||
| 2 | Copyright (C) 1995-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_SIGNUM_H | ||
| 20 | #define _BITS_SIGNUM_H 1 | ||
| 21 | |||
| 22 | #ifndef _SIGNAL_H | ||
| 23 | #error "Never include <bits/signum.h> directly; use <signal.h> instead." | ||
| 24 | #endif | ||
| 25 | |||
| 26 | /* Adjustments and additions to the signal number constants for | ||
| 27 | Linux/MIPS. */ | ||
| 28 | |||
| 29 | #define SIGEMT		 7	/* Emulator trap. */ | ||
| 30 | #define SIGPWR		19	/* Power failure imminent. */ | ||
| 31 | |||
| 32 | /* Historical signals specified by POSIX. */ | ||
| 33 | #define SIGBUS 	10	/* Bus error. */ | ||
| 34 | #define SIGSYS		12	/* Bad system call. */ | ||
| 35 | |||
| 36 | /* New(er) POSIX signals (1003.1-2008, 1003.1-2013). */ | ||
| 37 | #define SIGURG		21	/* Urgent data is available at a socket. */ | ||
| 38 | #define SIGSTOP		23	/* Stop, unblockable. */ | ||
| 39 | #define SIGTSTP		24	/* Keyboard stop. */ | ||
| 40 | #define SIGCONT		25	/* Continue. */ | ||
| 41 | #define SIGCHLD		18	/* Child terminated or stopped. */ | ||
| 42 | #define SIGTTIN		26	/* Background read from control terminal. */ | ||
| 43 | #define SIGTTOU		27	/* Background write to control terminal. */ | ||
| 44 | #define SIGPOLL		22	/* Pollable event occurred (System V). */ | ||
| 45 | #define SIGXCPU		30	/* CPU time limit exceeded. */ | ||
| 46 | #define SIGVTALRM	28	/* Virtual timer expired. */ | ||
| 47 | #define SIGPROF		29	/* Profiling timer expired. */ | ||
| 48 | #define SIGXFSZ		31	/* File size limit exceeded. */ | ||
| 49 | #define SIGUSR1		16	/* User-defined signal 1. */ | ||
| 50 | #define SIGUSR2		17	/* User-defined signal 2. */ | ||
| 51 | |||
| 52 | /* Nonstandard signals found in all modern POSIX systems | ||
| 53 | (including both BSD and Linux). */ | ||
| 54 | #define SIGWINCH	20	/* Window size change (4.3 BSD, Sun). */ | ||
| 55 | |||
| 56 | /* Archaic names for compatibility. */ | ||
| 57 | #define SIGIO		SIGPOLL	/* I/O now possible (4.2 BSD). */ | ||
| 58 | #define SIGIOT		SIGABRT	/* IOT instruction, abort() on a PDP-11. */ | ||
| 59 | #define SIGCLD		SIGCHLD /* Old System V name */ | ||
| 60 | |||
| 61 | /* By default no real-time signals are supported. */ | ||
| 62 | #define __SIGRTMIN	32 | ||
| 63 | #define __SIGRTMAX	127 | ||
| 64 | |||
| 65 | #endif	/* <signal.h> included. */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabi64/bits/socket-constants.h deleted-70| ... | @@ -1,70 +0,0 @@ | ||
| 1 | /* Socket constants which vary among Linux architectures. Version for MIPS. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SOCKET_H | ||
| 20 | # error "Never include <bits/socket-constants.h> directly; use <sys/socket.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #define SOL_SOCKET 65535 | ||
| 24 | #define SO_ACCEPTCONN 4105 | ||
| 25 | #define SO_BROADCAST 32 | ||
| 26 | #define SO_DONTROUTE 16 | ||
| 27 | #define SO_ERROR 4103 | ||
| 28 | #define SO_KEEPALIVE 8 | ||
| 29 | #define SO_LINGER 128 | ||
| 30 | #define SO_OOBINLINE 256 | ||
| 31 | #define SO_RCVBUF 4098 | ||
| 32 | #define SO_RCVLOWAT 4100 | ||
| 33 | #define SO_REUSEADDR 4 | ||
| 34 | #define SO_SNDBUF 4097 | ||
| 35 | #define SO_SNDLOWAT 4099 | ||
| 36 | #define SO_TYPE 4104 | ||
| 37 | |||
| 38 | #if __TIMESIZE == 64 | ||
| 39 | # define SO_RCVTIMEO 4102 | ||
| 40 | # define SO_SNDTIMEO 4101 | ||
| 41 | # define SO_TIMESTAMP 29 | ||
| 42 | # define SO_TIMESTAMPNS 35 | ||
| 43 | # define SO_TIMESTAMPING 37 | ||
| 44 | #else | ||
| 45 | # define SO_RCVTIMEO_OLD 4102 | ||
| 46 | # define SO_SNDTIMEO_OLD 4101 | ||
| 47 | # define SO_RCVTIMEO_NEW 66 | ||
| 48 | # define SO_SNDTIMEO_NEW 67 | ||
| 49 | |||
| 50 | # define SO_TIMESTAMP_OLD 29 | ||
| 51 | # define SO_TIMESTAMPNS_OLD 35 | ||
| 52 | # define SO_TIMESTAMPING_OLD 37 | ||
| 53 | # define SO_TIMESTAMP_NEW 63 | ||
| 54 | # define SO_TIMESTAMPNS_NEW 64 | ||
| 55 | # define SO_TIMESTAMPING_NEW 65 | ||
| 56 | |||
| 57 | # ifdef __USE_TIME64_REDIRECTS | ||
| 58 | # define SO_RCVTIMEO SO_RCVTIMEO_NEW | ||
| 59 | # define SO_SNDTIMEO SO_SNDTIMEO_NEW | ||
| 60 | # define SO_TIMESTAMP SO_TIMESTAMP_NEW | ||
| 61 | # define SO_TIMESTAMPNS SO_TIMESTAMPNS_NEW | ||
| 62 | # define SO_TIMESTAMPING SO_TIMESTAMPING_NEW | ||
| 63 | # else | ||
| 64 | # define SO_RCVTIMEO SO_RCVTIMEO_OLD | ||
| 65 | # define SO_SNDTIMEO SO_SNDTIMEO_OLD | ||
| 66 | # define SO_TIMESTAMP SO_TIMESTAMP_OLD | ||
| 67 | # define SO_TIMESTAMPNS SO_TIMESTAMPNS_OLD | ||
| 68 | # define SO_TIMESTAMPING SO_TIMESTAMPING_OLD | ||
| 69 | # endif | ||
| 70 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabi64/bits/socket_type.h deleted-55| ... | @@ -1,55 +0,0 @@ | ||
| 1 | /* Define enum __socket_type for Linux/MIPS. | ||
| 2 | Copyright (C) 1991-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SOCKET_H | ||
| 20 | # error "Never include <bits/socket_type.h> directly; use <sys/socket.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Types of sockets. */ | ||
| 24 | enum __socket_type | ||
| 25 | { | ||
| 26 | SOCK_DGRAM = 1,		/* Connectionless, unreliable datagrams | ||
| 27 | 				 of fixed maximum length. */ | ||
| 28 | #define SOCK_DGRAM SOCK_DGRAM | ||
| 29 | SOCK_STREAM = 2,		/* Sequenced, reliable, connection-based | ||
| 30 | 				 byte streams. */ | ||
| 31 | #define SOCK_STREAM SOCK_STREAM | ||
| 32 | SOCK_RAW = 3,			/* Raw protocol interface. */ | ||
| 33 | #define SOCK_RAW SOCK_RAW | ||
| 34 | SOCK_RDM = 4,			/* Reliably-delivered messages. */ | ||
| 35 | #define SOCK_RDM SOCK_RDM | ||
| 36 | SOCK_SEQPACKET = 5,		/* Sequenced, reliable, connection-based, | ||
| 37 | 				 datagrams of fixed maximum length. */ | ||
| 38 | #define SOCK_SEQPACKET SOCK_SEQPACKET | ||
| 39 | SOCK_DCCP = 6, | ||
| 40 | #define SOCK_DCCP SOCK_DCCP	/* Datagram Congestion Control Protocol. */ | ||
| 41 | SOCK_PACKET = 10,		/* Linux specific way of getting packets | ||
| 42 | 				 at the dev level. For writing rarp and | ||
| 43 | 				 other similar things on the user level. */ | ||
| 44 | #define SOCK_PACKET SOCK_PACKET | ||
| 45 | |||
| 46 | /* Flags to be ORed into the type parameter of socket and socketpair and | ||
| 47 | used for the flags parameter of paccept. */ | ||
| 48 | |||
| 49 | SOCK_CLOEXEC = 02000000,	/* Atomically set close-on-exec flag for the | ||
| 50 | 				 new descriptor(s). */ | ||
| 51 | #define SOCK_CLOEXEC SOCK_CLOEXEC | ||
| 52 | SOCK_NONBLOCK = 00000200	/* Atomically mark descriptor(s) as | ||
| 53 | 				 non-blocking. */ | ||
| 54 | #define SOCK_NONBLOCK SOCK_NONBLOCK | ||
| 55 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabi64/bits/statfs.h deleted-73| ... | @@ -1,73 +0,0 @@ | ||
| 1 | /* Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_STATFS_H | ||
| 19 | # error "Never include <bits/statfs.h> directly; use <sys/statfs.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | #include <bits/types.h> /* for __fsid_t and __fsblkcnt_t*/ | ||
| 23 | |||
| 24 | struct statfs | ||
| 25 | { | ||
| 26 | long int f_type; | ||
| 27 | #define f_fstyp f_type | ||
| 28 | long int f_bsize; | ||
| 29 | long int f_frsize;	/* Fragment size - unsupported */ | ||
| 30 | #ifndef __USE_FILE_OFFSET64 | ||
| 31 | __fsblkcnt_t f_blocks; | ||
| 32 | __fsblkcnt_t f_bfree; | ||
| 33 | __fsblkcnt_t f_files; | ||
| 34 | __fsblkcnt_t f_ffree; | ||
| 35 | __fsblkcnt_t f_bavail; | ||
| 36 | #else | ||
| 37 | __fsblkcnt64_t f_blocks; | ||
| 38 | __fsblkcnt64_t f_bfree; | ||
| 39 | __fsblkcnt64_t f_files; | ||
| 40 | __fsblkcnt64_t f_ffree; | ||
| 41 | __fsblkcnt64_t f_bavail; | ||
| 42 | #endif | ||
| 43 | |||
| 44 | 	/* Linux specials */ | ||
| 45 | __fsid_t f_fsid; | ||
| 46 | long int f_namelen; | ||
| 47 | long int f_flags; | ||
| 48 | long int f_spare[5]; | ||
| 49 | }; | ||
| 50 | |||
| 51 | #ifdef __USE_LARGEFILE64 | ||
| 52 | struct statfs64 | ||
| 53 | { | ||
| 54 | long int f_type; | ||
| 55 | #define f_fstyp f_type | ||
| 56 | long int f_bsize; | ||
| 57 | long int f_frsize;	/* Fragment size - unsupported */ | ||
| 58 | __fsblkcnt64_t f_blocks; | ||
| 59 | __fsblkcnt64_t f_bfree; | ||
| 60 | __fsblkcnt64_t f_files; | ||
| 61 | __fsblkcnt64_t f_ffree; | ||
| 62 | __fsblkcnt64_t f_bavail; | ||
| 63 | |||
| 64 | 	/* Linux specials */ | ||
| 65 | __fsid_t f_fsid; | ||
| 66 | long int f_namelen; | ||
| 67 | long int f_flags; | ||
| 68 | long int f_spare[5]; | ||
| 69 | }; | ||
| 70 | #endif | ||
| 71 | |||
| 72 | /* Tell code we have these members. */ | ||
| 73 | #define _STATFS_F_NAMELEN | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabi64/bits/struct_mutex.h deleted-56| ... | @@ -1,56 +0,0 @@ | ||
| 1 | /* MIPS internal mutex struct definitions. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <http://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _THREAD_MUTEX_INTERNAL_H | ||
| 20 | #define _THREAD_MUTEX_INTERNAL_H 1 | ||
| 21 | |||
| 22 | struct __pthread_mutex_s | ||
| 23 | { | ||
| 24 | int __lock; | ||
| 25 | unsigned int __count; | ||
| 26 | int __owner; | ||
| 27 | #if _MIPS_SIM == _ABI64 | ||
| 28 | unsigned int __nusers; | ||
| 29 | #endif | ||
| 30 | /* KIND must stay at this position in the structure to maintain | ||
| 31 | binary compatibility with static initializers. */ | ||
| 32 | int __kind; | ||
| 33 | #if _MIPS_SIM == _ABI64 | ||
| 34 | int __spins; | ||
| 35 | __pthread_list_t __list; | ||
| 36 | # define __PTHREAD_MUTEX_HAVE_PREV 1 | ||
| 37 | #else | ||
| 38 | unsigned int __nusers; | ||
| 39 | __extension__ union | ||
| 40 | { | ||
| 41 | int __spins; | ||
| 42 | __pthread_slist_t __list; | ||
| 43 | }; | ||
| 44 | # define __PTHREAD_MUTEX_HAVE_PREV 0 | ||
| 45 | #endif | ||
| 46 | }; | ||
| 47 | |||
| 48 | #if _MIPS_SIM == _ABI64 | ||
| 49 | # define __PTHREAD_MUTEX_INITIALIZER(__kind) \ | ||
| 50 | 0, 0, 0, 0, __kind, 0, { 0, 0 } | ||
| 51 | #else | ||
| 52 | # define __PTHREAD_MUTEX_INITIALIZER(__kind) \ | ||
| 53 | 0, 0, 0, __kind, 0, { 0 } | ||
| 54 | #endif | ||
| 55 | |||
| 56 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabi64/bits/struct_rwlock.h deleted-71| ... | @@ -1,71 +0,0 @@ | ||
| 1 | /* MIPS internal rwlock struct definitions. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <http://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _RWLOCK_INTERNAL_H | ||
| 20 | #define _RWLOCK_INTERNAL_H | ||
| 21 | |||
| 22 | struct __pthread_rwlock_arch_t | ||
| 23 | { | ||
| 24 | unsigned int __readers; | ||
| 25 | unsigned int __writers; | ||
| 26 | unsigned int __wrphase_futex; | ||
| 27 | unsigned int __writers_futex; | ||
| 28 | unsigned int __pad3; | ||
| 29 | unsigned int __pad4; | ||
| 30 | #if _MIPS_SIM == _ABI64 | ||
| 31 | int __cur_writer; | ||
| 32 | int __shared; | ||
| 33 | unsigned long int __pad1; | ||
| 34 | unsigned long int __pad2; | ||
| 35 | /* FLAGS must stay at this position in the structure to maintain | ||
| 36 | binary compatibility. */ | ||
| 37 | unsigned int __flags; | ||
| 38 | # else | ||
| 39 | # if __BYTE_ORDER == __BIG_ENDIAN | ||
| 40 | unsigned char __pad1; | ||
| 41 | unsigned char __pad2; | ||
| 42 | unsigned char __shared; | ||
| 43 | /* FLAGS must stay at this position in the structure to maintain | ||
| 44 | binary compatibility. */ | ||
| 45 | unsigned char __flags; | ||
| 46 | # else | ||
| 47 | /* FLAGS must stay at this position in the structure to maintain | ||
| 48 | binary compatibility. */ | ||
| 49 | unsigned char __flags; | ||
| 50 | unsigned char __shared; | ||
| 51 | unsigned char __pad1; | ||
| 52 | unsigned char __pad2; | ||
| 53 | # endif | ||
| 54 | int __cur_writer; | ||
| 55 | #endif | ||
| 56 | }; | ||
| 57 | |||
| 58 | #if _MIPS_SIM == _ABI64 | ||
| 59 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 60 | 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags | ||
| 61 | #else | ||
| 62 | # if __BYTE_ORDER == __BIG_ENDIAN | ||
| 63 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 64 | 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0 | ||
| 65 | # else | ||
| 66 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 67 | 0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0 | ||
| 68 | # endif | ||
| 69 | #endif | ||
| 70 | |||
| 71 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabi64/bits/termios-c_cc.h deleted-43| ... | @@ -1,43 +0,0 @@ | ||
| 1 | /* termios c_cc symbolic constant definitions. Linux/mips version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-c_cc.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* c_cc characters */ | ||
| 24 | #define VINTR		0	/* Interrupt character [ISIG]. */ | ||
| 25 | #define VQUIT		1	/* Quit character [ISIG]. */ | ||
| 26 | #define VERASE		2	/* Erase character [ICANON]. */ | ||
| 27 | #define VKILL		3	/* Kill-line character [ICANON]. */ | ||
| 28 | #define VMIN		4	/* Minimum number of bytes read at once [!ICANON]. */ | ||
| 29 | #define VTIME		5	/* Time-out value (tenths of a second) [!ICANON]. */ | ||
| 30 | #define VEOL2		6	/* Second EOL character [ICANON]. */ | ||
| 31 | #define VSWTC		7 | ||
| 32 | #define VSWTCH		VSWTC | ||
| 33 | #define VSTART		8	/* Start (X-ON) character [IXON, IXOFF]. */ | ||
| 34 | #define VSTOP		9	/* Stop (X-OFF) character [IXON, IXOFF]. */ | ||
| 35 | #define VSUSP		10	/* Suspend character [ISIG]. */ | ||
| 36 | 				/* VDSUSP is not supported on Linux. */ | ||
| 37 | /* #define VDSUSP	11	/ * Delayed suspend character [ISIG]. */ | ||
| 38 | #define VREPRINT	12	/* Reprint-line character [ICANON]. */ | ||
| 39 | #define VDISCARD	13	/* Discard character [IEXTEN]. */ | ||
| 40 | #define VWERASE		14	/* Word-erase character [ICANON]. */ | ||
| 41 | #define VLNEXT		15	/* Literal-next character [IEXTEN]. */ | ||
| 42 | #define VEOF		16	/* End-of-file character [ICANON]. */ | ||
| 43 | #define VEOL		17	/* End-of-line character [ICANON]. */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabi64/bits/termios-c_lflag.h deleted-46| ... | @@ -1,46 +0,0 @@ | ||
| 1 | /* termios local mode definitions. Linux/mips version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-c_lflag.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* c_lflag bits */ | ||
| 24 | #define ISIG	0000001		/* Enable signals. */ | ||
| 25 | #define ICANON	0000002		/* Do erase and kill processing. */ | ||
| 26 | #if defined __USE_MISC || (defined __USE_XOPEN && !defined __USE_XOPEN2K) | ||
| 27 | # define XCASE	0000004 | ||
| 28 | #endif | ||
| 29 | #define ECHO	0000010		/* Enable echo. */ | ||
| 30 | #define ECHOE	0000020		/* Visual erase for ERASE. */ | ||
| 31 | #define ECHOK	0000040		/* Echo NL after KILL. */ | ||
| 32 | #define ECHONL	0000100		/* Echo NL even if ECHO is off. */ | ||
| 33 | #define NOFLSH	0000200		/* Disable flush after interrupt. */ | ||
| 34 | #define IEXTEN	0000400		/* Enable DISCARD and LNEXT. */ | ||
| 35 | #ifdef __USE_MISC | ||
| 36 | # define ECHOCTL 0001000	/* Echo control characters as ^X. */ | ||
| 37 | # define ECHOPRT 0002000	/* Hardcopy visual erase. */ | ||
| 38 | # define ECHOKE	 0004000	/* Visual erase for KILL. */ | ||
| 39 | # define FLUSHO	0020000 | ||
| 40 | # define PENDIN	0040000		/* Retype pending input (state). */ | ||
| 41 | #endif | ||
| 42 | #define TOSTOP	0100000		/* Send SIGTTOU for background output. */ | ||
| 43 | #define ITOSTOP	TOSTOP | ||
| 44 | #ifdef __USE_MISC | ||
| 45 | # define EXTPROC 0200000 | ||
| 46 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabi64/bits/termios-struct.h deleted-34| ... | @@ -1,34 +0,0 @@ | ||
| 1 | /* struct termios definition. Linux/mips version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-struct.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #define NCCS 32 | ||
| 24 | struct termios | ||
| 25 | { | ||
| 26 | tcflag_t c_iflag;		/* input mode flags */ | ||
| 27 | tcflag_t c_oflag;		/* output mode flags */ | ||
| 28 | tcflag_t c_cflag;		/* control mode flags */ | ||
| 29 | tcflag_t c_lflag;		/* local mode flags */ | ||
| 30 | cc_t c_line;		/* line discipline */ | ||
| 31 | cc_t c_cc[NCCS];		/* control characters */ | ||
| 32 | #define _HAVE_STRUCT_TERMIOS_C_ISPEED 0 | ||
| 33 | #define _HAVE_STRUCT_TERMIOS_C_OSPEED 0 | ||
| 34 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabi64/bits/termios-tcflow.h deleted-26| ... | @@ -1,26 +0,0 @@ | ||
| 1 | /* termios local mode definitions. Linux/mips version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-tcflow.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* tcsetattr uses these */ | ||
| 24 | #define	TCSANOW		0x540e	/* Same as TCSETS; change immediately. */ | ||
| 25 | #define	TCSADRAIN	0x540f	/* Same as TCSETSW; change when pending output is written. */ | ||
| 26 | #define	TCSAFLUSH	0x5410	/* Same as TCSETSF; flush pending input before changing. */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabi64/bits/timerfd.h deleted-29| ... | @@ -1,29 +0,0 @@ | ||
| 1 | /* Copyright (C) 2008-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_SYS_TIMERFD_H | ||
| 19 | # error "Never use <bits/timerfd.h> directly; include <sys/timerfd.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Bits to be set in the FLAGS parameter of `timerfd_create'. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | TFD_CLOEXEC = 02000000, | ||
| 26 | #define TFD_CLOEXEC TFD_CLOEXEC | ||
| 27 | TFD_NONBLOCK = 00000200 | ||
| 28 | #define TFD_NONBLOCK TFD_NONBLOCK | ||
| 29 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabi64/bits/types/stack_t.h deleted-33| ... | @@ -1,33 +0,0 @@ | ||
| 1 | /* Define stack_t. MIPS Linux version. | ||
| 2 | Copyright (C) 1998-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef __stack_t_defined | ||
| 20 | #define __stack_t_defined 1 | ||
| 21 | |||
| 22 | #define __need_size_t | ||
| 23 | #include <stddef.h> | ||
| 24 | |||
| 25 | /* Structure describing a signal stack. */ | ||
| 26 | typedef struct | ||
| 27 | { | ||
| 28 | void *ss_sp; | ||
| 29 | size_t ss_size; | ||
| 30 | int ss_flags; | ||
| 31 | } stack_t; | ||
| 32 | |||
| 33 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabi64/bits/types/struct_msqid_ds.h deleted-62| ... | @@ -1,62 +0,0 @@ | ||
| 1 | /* Linux/MIPS implementation of the SysV message struct msqid_ds. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_MSG_H | ||
| 20 | # error "Never use <bits/msq.h> directly; include <sys/msg.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <bits/types/time_t.h> | ||
| 24 | |||
| 25 | /* Structure of record for one message inside the kernel. | ||
| 26 | The type `struct msg' is opaque. */ | ||
| 27 | struct msqid_ds | ||
| 28 | { | ||
| 29 | #ifdef __USE_TIME64_REDIRECTS | ||
| 30 | # include <bits/types/struct_msqid64_ds_helper.h> | ||
| 31 | #else | ||
| 32 | struct ipc_perm msg_perm;	/* structure describing operation permission */ | ||
| 33 | # if __TIMESIZE == 32 | ||
| 34 | # ifdef __MIPSEL__ | ||
| 35 | __time_t msg_stime;		/* time of last msgsnd command */ | ||
| 36 | unsigned long int __msg_stime_high; | ||
| 37 | __time_t msg_rtime;		/* time of last msgsnd command */ | ||
| 38 | unsigned long int __msg_rtime_high; | ||
| 39 | __time_t msg_ctime;		/* time of last change */ | ||
| 40 | unsigned long int __msg_ctime_high; | ||
| 41 | # else | ||
| 42 | unsigned long int __msg_stime_high; | ||
| 43 | __time_t msg_stime;		/* time of last msgsnd command */ | ||
| 44 | unsigned long int __msg_rtime_high; | ||
| 45 | __time_t msg_rtime;		/* time of last msgsnd command */ | ||
| 46 | unsigned long int __msg_ctime_high; | ||
| 47 | __time_t msg_ctime;		/* time of last change */ | ||
| 48 | # endif | ||
| 49 | # else | ||
| 50 | __time_t msg_stime;		/* time of last msgsnd command */ | ||
| 51 | __time_t msg_rtime;		/* time of last msgsnd command */ | ||
| 52 | __time_t msg_ctime;		/* time of last change */ | ||
| 53 | # endif | ||
| 54 | __syscall_ulong_t __msg_cbytes; /* current number of bytes on queue */ | ||
| 55 | msgqnum_t msg_qnum;		/* number of messages currently on queue */ | ||
| 56 | msglen_t msg_qbytes;		/* max number of bytes allowed on queue */ | ||
| 57 | __pid_t msg_lspid;		/* pid of last msgsnd() */ | ||
| 58 | __pid_t msg_lrpid;		/* pid of last msgrcv() */ | ||
| 59 | __syscall_ulong_t __glibc_reserved4; | ||
| 60 | __syscall_ulong_t __glibc_reserved5; | ||
| 61 | #endif | ||
| 62 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabi64/bits/types/struct_semid_ds.h deleted-36| ... | @@ -1,36 +0,0 @@ | ||
| 1 | /* MIPS implementation of the semaphore struct semid_ds | ||
| 2 | Copyright (C) 1995-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SEM_H | ||
| 20 | # error "Never include <bits/types/struct_semid_ds.h> directly; use <sys/sem.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Data structure describing a set of semaphores. */ | ||
| 24 | struct semid_ds | ||
| 25 | { | ||
| 26 | #ifdef __USE_TIME64_REDIRECTS | ||
| 27 | # include <bits/types/struct_semid64_ds_helper.h> | ||
| 28 | #else | ||
| 29 | struct ipc_perm sem_perm;		/* operation permission struct */ | ||
| 30 | __time_t sem_otime;	/* last semop() time */ | ||
| 31 | __time_t sem_ctime;	/* last time changed by semctl() */ | ||
| 32 | __syscall_ulong_t sem_nsems;		/* number of semaphores in set */ | ||
| 33 | __syscall_ulong_t __sem_otime_high; | ||
| 34 | __syscall_ulong_t __sem_ctime_high; | ||
| 35 | #endif | ||
| 36 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabi64/bits/types/struct_shmid_ds.h deleted-53| ... | @@ -1,53 +0,0 @@ | ||
| 1 | /* Linux/MIPS implementation of the shared memory struct shmid_ds. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SHM_H | ||
| 20 | # error "Never include <bits/types/struct_shmid_ds.h> directly; use <sys/shm.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Data structure describing a shared memory segment. */ | ||
| 24 | struct shmid_ds | ||
| 25 | { | ||
| 26 | #ifdef __USE_TIME64_REDIRECTS | ||
| 27 | # include <bits/types/struct_shmid64_ds_helper.h> | ||
| 28 | #else | ||
| 29 | struct ipc_perm shm_perm;		/* operation permission struct */ | ||
| 30 | size_t shm_segsz;			/* size of segment in bytes */ | ||
| 31 | # if __TIMESIZE == 32 | ||
| 32 | __time_t shm_atime;			/* time of last shmat() */ | ||
| 33 | __time_t shm_dtime;			/* time of last shmdt() */ | ||
| 34 | __time_t shm_ctime;			/* time of last change by shmctl() */ | ||
| 35 | # else | ||
| 36 | __time_t shm_atime;			/* time of last shmat() */ | ||
| 37 | __time_t shm_dtime;			/* time of last shmdt() */ | ||
| 38 | __time_t shm_ctime;			/* time of last change by shmctl() */ | ||
| 39 | # endif | ||
| 40 | __pid_t shm_cpid;			/* pid of creator */ | ||
| 41 | __pid_t shm_lpid;			/* pid of last shmop */ | ||
| 42 | shmatt_t shm_nattch;		/* number of current attaches */ | ||
| 43 | # if __TIMESIZE == 32 | ||
| 44 | unsigned short int __shm_atime_high; | ||
| 45 | unsigned short int __shm_dtime_high; | ||
| 46 | unsigned short int __shm_ctime_high; | ||
| 47 | unsigned short int __glibc_reserved4; | ||
| 48 | # else | ||
| 49 | __syscall_ulong_t __glibc_reserved5; | ||
| 50 | __syscall_ulong_t __glibc_reserved6; | ||
| 51 | # endif | ||
| 52 | #endif | ||
| 53 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabi64/bits/typesizes.h deleted-95| ... | @@ -1,95 +0,0 @@ | ||
| 1 | /* bits/typesizes.h -- underlying types for *_t. MIPS version. | ||
| 2 | Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_TYPES_H | ||
| 20 | # error "Never include <bits/typesizes.h> directly; use <sys/types.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef	_BITS_TYPESIZES_H | ||
| 24 | #define	_BITS_TYPESIZES_H	1 | ||
| 25 | |||
| 26 | /* See <bits/types.h> for the meaning of these macros. This file exists so | ||
| 27 | that <bits/types.h> need not vary across different GNU platforms. */ | ||
| 28 | |||
| 29 | #define __DEV_T_TYPE		__UQUAD_TYPE | ||
| 30 | #define __UID_T_TYPE		__U32_TYPE | ||
| 31 | #define __GID_T_TYPE		__U32_TYPE | ||
| 32 | #define __INO_T_TYPE		__ULONGWORD_TYPE | ||
| 33 | #define __INO64_T_TYPE		__UQUAD_TYPE | ||
| 34 | #define __MODE_T_TYPE		__U32_TYPE | ||
| 35 | #define __NLINK_T_TYPE		__UWORD_TYPE | ||
| 36 | #define __OFF_T_TYPE		__SLONGWORD_TYPE | ||
| 37 | #define __OFF64_T_TYPE		__SQUAD_TYPE | ||
| 38 | #define __PID_T_TYPE		__S32_TYPE | ||
| 39 | #define __RLIM_T_TYPE		__ULONGWORD_TYPE | ||
| 40 | #define __RLIM64_T_TYPE		__UQUAD_TYPE | ||
| 41 | #define	__BLKCNT_T_TYPE		__SLONGWORD_TYPE | ||
| 42 | #define	__BLKCNT64_T_TYPE	__SQUAD_TYPE | ||
| 43 | #define	__FSBLKCNT_T_TYPE	__ULONGWORD_TYPE | ||
| 44 | #define	__FSBLKCNT64_T_TYPE	__UQUAD_TYPE | ||
| 45 | #define	__FSFILCNT_T_TYPE	__ULONGWORD_TYPE | ||
| 46 | #define	__FSFILCNT64_T_TYPE	__UQUAD_TYPE | ||
| 47 | #define	__FSWORD_T_TYPE		__SWORD_TYPE | ||
| 48 | #define	__ID_T_TYPE		__U32_TYPE | ||
| 49 | #define __CLOCK_T_TYPE		__SLONGWORD_TYPE | ||
| 50 | #define __TIME_T_TYPE		__SLONGWORD_TYPE | ||
| 51 | #define __USECONDS_T_TYPE	__U32_TYPE | ||
| 52 | #define __SUSECONDS_T_TYPE	__SLONGWORD_TYPE | ||
| 53 | #define __SUSECONDS64_T_TYPE	__SQUAD_TYPE | ||
| 54 | #define __DADDR_T_TYPE		__S32_TYPE | ||
| 55 | #define __KEY_T_TYPE		__S32_TYPE | ||
| 56 | #define __CLOCKID_T_TYPE	__S32_TYPE | ||
| 57 | #define __TIMER_T_TYPE		void * | ||
| 58 | #define __BLKSIZE_T_TYPE	__SLONGWORD_TYPE | ||
| 59 | #define __FSID_T_TYPE		struct { int __val[2]; } | ||
| 60 | #define __SSIZE_T_TYPE		__SWORD_TYPE | ||
| 61 | #define __SYSCALL_SLONG_TYPE	__SLONGWORD_TYPE | ||
| 62 | #define __SYSCALL_ULONG_TYPE	__ULONGWORD_TYPE | ||
| 63 | #define __CPU_MASK_TYPE 	__ULONGWORD_TYPE | ||
| 64 | |||
| 65 | #ifdef __LP64__ | ||
| 66 | /* Tell the libc code that off_t and off64_t are actually the same type | ||
| 67 | for all ABI purposes, even if possibly expressed as different base types | ||
| 68 | for C type-checking purposes. */ | ||
| 69 | # define __OFF_T_MATCHES_OFF64_T	1 | ||
| 70 | |||
| 71 | /* Same for ino_t and ino64_t. */ | ||
| 72 | # define __INO_T_MATCHES_INO64_T	1 | ||
| 73 | |||
| 74 | /* And for rlim_t and rlim64_t. */ | ||
| 75 | # define __RLIM_T_MATCHES_RLIM64_T	1 | ||
| 76 | |||
| 77 | /* And for fsblkcnt_t, fsblkcnt64_t, fsfilcnt_t and fsfilcnt64_t. */ | ||
| 78 | # define __STATFS_MATCHES_STATFS64 1 | ||
| 79 | |||
| 80 | /* And for getitimer, setitimer and rusage */ | ||
| 81 | # define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 1 | ||
| 82 | #else | ||
| 83 | # define __RLIM_T_MATCHES_RLIM64_T	0 | ||
| 84 | |||
| 85 | # define __STATFS_MATCHES_STATFS64 0 | ||
| 86 | |||
| 87 | /* And for getitimer, setitimer and rusage */ | ||
| 88 | # define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 0 | ||
| 89 | #endif | ||
| 90 | |||
| 91 | /* Number of descriptors that can fit in an `fd_set'. */ | ||
| 92 | #define	__FD_SETSIZE		1024 | ||
| 93 | |||
| 94 | |||
| 95 | #endif /* bits/typesizes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabi64/ieee754.h deleted-326| ... | @@ -1,326 +0,0 @@ | ||
| 1 | /* Copyright (C) 1992-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _IEEE754_H | ||
| 19 | #define _IEEE754_H 1 | ||
| 20 | |||
| 21 | #include <features.h> | ||
| 22 | |||
| 23 | #include <bits/endian.h> | ||
| 24 | |||
| 25 | #ifndef __LDBL_MANT_DIG__ | ||
| 26 | # include <float.h> | ||
| 27 | # define __LDBL_MANT_DIG__ LDBL_MANT_DIG | ||
| 28 | #endif | ||
| 29 | |||
| 30 | __BEGIN_DECLS | ||
| 31 | |||
| 32 | union ieee754_float | ||
| 33 | { | ||
| 34 | float f; | ||
| 35 | |||
| 36 | /* This is the IEEE 754 single-precision format. */ | ||
| 37 | struct | ||
| 38 | { | ||
| 39 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 40 | 	unsigned int negative:1; | ||
| 41 | 	unsigned int exponent:8; | ||
| 42 | 	unsigned int mantissa:23; | ||
| 43 | #endif				/* Big endian. */ | ||
| 44 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 45 | 	unsigned int mantissa:23; | ||
| 46 | 	unsigned int exponent:8; | ||
| 47 | 	unsigned int negative:1; | ||
| 48 | #endif				/* Little endian. */ | ||
| 49 | } ieee; | ||
| 50 | |||
| 51 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 52 | struct | ||
| 53 | { | ||
| 54 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 55 | 	unsigned int negative:1; | ||
| 56 | 	unsigned int exponent:8; | ||
| 57 | 	unsigned int quiet_nan:1; | ||
| 58 | 	unsigned int mantissa:22; | ||
| 59 | #endif				/* Big endian. */ | ||
| 60 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 61 | 	unsigned int mantissa:22; | ||
| 62 | 	unsigned int quiet_nan:1; | ||
| 63 | 	unsigned int exponent:8; | ||
| 64 | 	unsigned int negative:1; | ||
| 65 | #endif				/* Little endian. */ | ||
| 66 | } ieee_nan; | ||
| 67 | }; | ||
| 68 | |||
| 69 | #define IEEE754_FLOAT_BIAS	0x7f /* Added to exponent. */ | ||
| 70 | |||
| 71 | |||
| 72 | union ieee754_double | ||
| 73 | { | ||
| 74 | double d; | ||
| 75 | |||
| 76 | /* This is the IEEE 754 double-precision format. */ | ||
| 77 | struct | ||
| 78 | { | ||
| 79 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 80 | 	unsigned int negative:1; | ||
| 81 | 	unsigned int exponent:11; | ||
| 82 | 	/* Together these comprise the mantissa. */ | ||
| 83 | 	unsigned int mantissa0:20; | ||
| 84 | 	unsigned int mantissa1:32; | ||
| 85 | #endif				/* Big endian. */ | ||
| 86 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 87 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 88 | 	unsigned int mantissa0:20; | ||
| 89 | 	unsigned int exponent:11; | ||
| 90 | 	unsigned int negative:1; | ||
| 91 | 	unsigned int mantissa1:32; | ||
| 92 | # else | ||
| 93 | 	/* Together these comprise the mantissa. */ | ||
| 94 | 	unsigned int mantissa1:32; | ||
| 95 | 	unsigned int mantissa0:20; | ||
| 96 | 	unsigned int exponent:11; | ||
| 97 | 	unsigned int negative:1; | ||
| 98 | # endif | ||
| 99 | #endif				/* Little endian. */ | ||
| 100 | } ieee; | ||
| 101 | |||
| 102 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 103 | struct | ||
| 104 | { | ||
| 105 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 106 | 	unsigned int negative:1; | ||
| 107 | 	unsigned int exponent:11; | ||
| 108 | 	unsigned int quiet_nan:1; | ||
| 109 | 	/* Together these comprise the mantissa. */ | ||
| 110 | 	unsigned int mantissa0:19; | ||
| 111 | 	unsigned int mantissa1:32; | ||
| 112 | #else | ||
| 113 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 114 | 	unsigned int mantissa0:19; | ||
| 115 | 	unsigned int quiet_nan:1; | ||
| 116 | 	unsigned int exponent:11; | ||
| 117 | 	unsigned int negative:1; | ||
| 118 | 	unsigned int mantissa1:32; | ||
| 119 | # else | ||
| 120 | 	/* Together these comprise the mantissa. */ | ||
| 121 | 	unsigned int mantissa1:32; | ||
| 122 | 	unsigned int mantissa0:19; | ||
| 123 | 	unsigned int quiet_nan:1; | ||
| 124 | 	unsigned int exponent:11; | ||
| 125 | 	unsigned int negative:1; | ||
| 126 | # endif | ||
| 127 | #endif | ||
| 128 | } ieee_nan; | ||
| 129 | }; | ||
| 130 | |||
| 131 | #define IEEE754_DOUBLE_BIAS	0x3ff /* Added to exponent. */ | ||
| 132 | |||
| 133 | #if __LDBL_MANT_DIG__ == 113 | ||
| 134 | |||
| 135 | union ieee854_long_double | ||
| 136 | { | ||
| 137 | long double d; | ||
| 138 | |||
| 139 | /* This is the IEEE 854 quad-precision format. */ | ||
| 140 | struct | ||
| 141 | { | ||
| 142 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 143 | 	unsigned int negative:1; | ||
| 144 | 	unsigned int exponent:15; | ||
| 145 | 	/* Together these comprise the mantissa. */ | ||
| 146 | 	unsigned int mantissa0:16; | ||
| 147 | 	unsigned int mantissa1:32; | ||
| 148 | 	unsigned int mantissa2:32; | ||
| 149 | 	unsigned int mantissa3:32; | ||
| 150 | #endif				/* Big endian. */ | ||
| 151 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 152 | 	/* Together these comprise the mantissa. */ | ||
| 153 | 	unsigned int mantissa3:32; | ||
| 154 | 	unsigned int mantissa2:32; | ||
| 155 | 	unsigned int mantissa1:32; | ||
| 156 | 	unsigned int mantissa0:16; | ||
| 157 | 	unsigned int exponent:15; | ||
| 158 | 	unsigned int negative:1; | ||
| 159 | #endif				/* Little endian. */ | ||
| 160 | } ieee; | ||
| 161 | |||
| 162 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 163 | struct | ||
| 164 | { | ||
| 165 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 166 | 	unsigned int negative:1; | ||
| 167 | 	unsigned int exponent:15; | ||
| 168 | 	unsigned int quiet_nan:1; | ||
| 169 | 	/* Together these comprise the mantissa. */ | ||
| 170 | 	unsigned int mantissa0:15; | ||
| 171 | 	unsigned int mantissa1:32; | ||
| 172 | 	unsigned int mantissa2:32; | ||
| 173 | 	unsigned int mantissa3:32; | ||
| 174 | #endif				/* Big endian. */ | ||
| 175 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 176 | 	/* Together these comprise the mantissa. */ | ||
| 177 | 	unsigned int mantissa3:32; | ||
| 178 | 	unsigned int mantissa2:32; | ||
| 179 | 	unsigned int mantissa1:32; | ||
| 180 | 	unsigned int mantissa0:15; | ||
| 181 | 	unsigned int quiet_nan:1; | ||
| 182 | 	unsigned int exponent:15; | ||
| 183 | 	unsigned int negative:1; | ||
| 184 | #endif				/* Little endian. */ | ||
| 185 | } ieee_nan; | ||
| 186 | }; | ||
| 187 | |||
| 188 | #define IEEE854_LONG_DOUBLE_BIAS 0x3fff /* Added to exponent. */ | ||
| 189 | |||
| 190 | #elif __LDBL_MANT_DIG__ == 64 | ||
| 191 | |||
| 192 | union ieee854_long_double | ||
| 193 | { | ||
| 194 | long double d; | ||
| 195 | |||
| 196 | /* This is the IEEE 854 double-extended-precision format. */ | ||
| 197 | struct | ||
| 198 | { | ||
| 199 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 200 | 	unsigned int negative:1; | ||
| 201 | 	unsigned int exponent:15; | ||
| 202 | 	unsigned int empty:16; | ||
| 203 | 	unsigned int mantissa0:32; | ||
| 204 | 	unsigned int mantissa1:32; | ||
| 205 | #endif | ||
| 206 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 207 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 208 | 	unsigned int exponent:15; | ||
| 209 | 	unsigned int negative:1; | ||
| 210 | 	unsigned int empty:16; | ||
| 211 | 	unsigned int mantissa0:32; | ||
| 212 | 	unsigned int mantissa1:32; | ||
| 213 | # else | ||
| 214 | 	unsigned int mantissa1:32; | ||
| 215 | 	unsigned int mantissa0:32; | ||
| 216 | 	unsigned int exponent:15; | ||
| 217 | 	unsigned int negative:1; | ||
| 218 | 	unsigned int empty:16; | ||
| 219 | # endif | ||
| 220 | #endif | ||
| 221 | } ieee; | ||
| 222 | |||
| 223 | /* This is for NaNs in the IEEE 854 double-extended-precision format. */ | ||
| 224 | struct | ||
| 225 | { | ||
| 226 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 227 | 	unsigned int negative:1; | ||
| 228 | 	unsigned int exponent:15; | ||
| 229 | 	unsigned int empty:16; | ||
| 230 | 	unsigned int one:1; | ||
| 231 | 	unsigned int quiet_nan:1; | ||
| 232 | 	unsigned int mantissa0:30; | ||
| 233 | 	unsigned int mantissa1:32; | ||
| 234 | #endif | ||
| 235 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 236 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 237 | 	unsigned int exponent:15; | ||
| 238 | 	unsigned int negative:1; | ||
| 239 | 	unsigned int empty:16; | ||
| 240 | 	unsigned int mantissa0:30; | ||
| 241 | 	unsigned int quiet_nan:1; | ||
| 242 | 	unsigned int one:1; | ||
| 243 | 	unsigned int mantissa1:32; | ||
| 244 | # else | ||
| 245 | 	unsigned int mantissa1:32; | ||
| 246 | 	unsigned int mantissa0:30; | ||
| 247 | 	unsigned int quiet_nan:1; | ||
| 248 | 	unsigned int one:1; | ||
| 249 | 	unsigned int exponent:15; | ||
| 250 | 	unsigned int negative:1; | ||
| 251 | 	unsigned int empty:16; | ||
| 252 | # endif | ||
| 253 | #endif | ||
| 254 | } ieee_nan; | ||
| 255 | }; | ||
| 256 | |||
| 257 | #define IEEE854_LONG_DOUBLE_BIAS 0x3fff | ||
| 258 | |||
| 259 | #elif __LDBL_MANT_DIG__ == 53 | ||
| 260 | |||
| 261 | union ieee854_long_double | ||
| 262 | { | ||
| 263 | long double d; | ||
| 264 | |||
| 265 | /* This is the IEEE 754 double-precision format. */ | ||
| 266 | struct | ||
| 267 | { | ||
| 268 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 269 | 	unsigned int negative:1; | ||
| 270 | 	unsigned int exponent:11; | ||
| 271 | 	/* Together these comprise the mantissa. */ | ||
| 272 | 	unsigned int mantissa0:20; | ||
| 273 | 	unsigned int mantissa1:32; | ||
| 274 | #endif				/* Big endian. */ | ||
| 275 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 276 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 277 | 	unsigned int mantissa0:20; | ||
| 278 | 	unsigned int exponent:11; | ||
| 279 | 	unsigned int negative:1; | ||
| 280 | 	unsigned int mantissa1:32; | ||
| 281 | # else | ||
| 282 | 	/* Together these comprise the mantissa. */ | ||
| 283 | 	unsigned int mantissa1:32; | ||
| 284 | 	unsigned int mantissa0:20; | ||
| 285 | 	unsigned int exponent:11; | ||
| 286 | 	unsigned int negative:1; | ||
| 287 | # endif | ||
| 288 | #endif				/* Little endian. */ | ||
| 289 | } ieee; | ||
| 290 | |||
| 291 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 292 | struct | ||
| 293 | { | ||
| 294 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 295 | 	unsigned int negative:1; | ||
| 296 | 	unsigned int exponent:11; | ||
| 297 | 	unsigned int quiet_nan:1; | ||
| 298 | 	/* Together these comprise the mantissa. */ | ||
| 299 | 	unsigned int mantissa0:19; | ||
| 300 | 	unsigned int mantissa1:32; | ||
| 301 | #else | ||
| 302 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 303 | 	unsigned int mantissa0:19; | ||
| 304 | 	unsigned int quiet_nan:1; | ||
| 305 | 	unsigned int exponent:11; | ||
| 306 | 	unsigned int negative:1; | ||
| 307 | 	unsigned int mantissa1:32; | ||
| 308 | # else | ||
| 309 | 	/* Together these comprise the mantissa. */ | ||
| 310 | 	unsigned int mantissa1:32; | ||
| 311 | 	unsigned int mantissa0:19; | ||
| 312 | 	unsigned int quiet_nan:1; | ||
| 313 | 	unsigned int exponent:11; | ||
| 314 | 	unsigned int negative:1; | ||
| 315 | # endif | ||
| 316 | #endif | ||
| 317 | } ieee_nan; | ||
| 318 | }; | ||
| 319 | |||
| 320 | #define IEEE854_LONG_DOUBLE_BIAS	0x3ff /* Added to exponent. */ | ||
| 321 | |||
| 322 | #endif /* __LDBL_MANT_DIG__ == 53 */ | ||
| 323 | |||
| 324 | __END_DECLS | ||
| 325 | |||
| 326 | #endif /* ieee754.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabin32/bits/dlfcn.h deleted-64| ... | @@ -1,64 +0,0 @@ | ||
| 1 | /* System dependent definitions for run-time dynamic loading. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _DLFCN_H | ||
| 20 | # error "Never use <bits/dlfcn.h> directly; include <dlfcn.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* The MODE argument to `dlopen' contains one of the following: */ | ||
| 24 | #define RTLD_LAZY	0x0001	/* Lazy function call binding. */ | ||
| 25 | #define RTLD_NOW	0x0002	/* Immediate function call binding. */ | ||
| 26 | #define RTLD_BINDING_MASK 0x3	/* Mask of binding time value. */ | ||
| 27 | #define RTLD_NOLOAD	0x00008	/* Do not load the object. */ | ||
| 28 | #define RTLD_DEEPBIND	0x00010	/* Use deep binding. */ | ||
| 29 | |||
| 30 | /* If the following bit is set in the MODE argument to `dlopen', | ||
| 31 | the symbols of the loaded object and its dependencies are made | ||
| 32 | visible as if the object were linked directly into the program. */ | ||
| 33 | #define RTLD_GLOBAL	0x0004 | ||
| 34 | |||
| 35 | /* Unix98 demands the following flag which is the inverse to RTLD_GLOBAL. | ||
| 36 | The implementation does this by default and so we can define the | ||
| 37 | value to zero. */ | ||
| 38 | #define RTLD_LOCAL 0 | ||
| 39 | |||
| 40 | /* Do not delete object when closed. */ | ||
| 41 | #define RTLD_NODELETE	0x01000 | ||
| 42 | |||
| 43 | #ifdef __USE_GNU | ||
| 44 | /* To support profiling of shared objects it is a good idea to call | ||
| 45 | the function found using `dlsym' using the following macro since | ||
| 46 | these calls do not use the PLT. But this would mean the dynamic | ||
| 47 | loader has no chance to find out when the function is called. The | ||
| 48 | macro applies the necessary magic so that profiling is possible. | ||
| 49 | Rewrite | ||
| 50 | 	foo = (*fctp) (arg1, arg2); | ||
| 51 | into | ||
| 52 | foo = DL_CALL_FCT (fctp, (arg1, arg2)); | ||
| 53 | */ | ||
| 54 | # define DL_CALL_FCT(fctp, args) \ | ||
| 55 | (_dl_mcount_wrapper_check ((void *) (fctp)), (*(fctp)) args) | ||
| 56 | |||
| 57 | __BEGIN_DECLS | ||
| 58 | |||
| 59 | /* This function calls the profiling functions. */ | ||
| 60 | extern void _dl_mcount_wrapper_check (void *__selfpc) __THROW; | ||
| 61 | |||
| 62 | __END_DECLS | ||
| 63 | |||
| 64 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabin32/bits/errno.h deleted-52| ... | @@ -1,52 +0,0 @@ | ||
| 1 | /* Error constants. MIPS/Linux specific version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_ERRNO_H | ||
| 20 | |||
| 21 | #if !defined _ERRNO_H | ||
| 22 | # error "Never include <bits/errno.h> directly; use <errno.h> instead." | ||
| 23 | #endif | ||
| 24 | |||
| 25 | # include <linux/errno.h> | ||
| 26 | |||
| 27 | /* Older Linux headers do not define these constants. */ | ||
| 28 | # ifndef ENOTSUP | ||
| 29 | # define ENOTSUP		EOPNOTSUPP | ||
| 30 | # endif | ||
| 31 | |||
| 32 | # ifndef ECANCELED | ||
| 33 | # define ECANCELED		158 | ||
| 34 | # endif | ||
| 35 | |||
| 36 | # ifndef EOWNERDEAD | ||
| 37 | # define EOWNERDEAD		165 | ||
| 38 | # endif | ||
| 39 | |||
| 40 | # ifndef ENOTRECOVERABLE | ||
| 41 | # define ENOTRECOVERABLE	166 | ||
| 42 | # endif | ||
| 43 | |||
| 44 | # ifndef ERFKILL | ||
| 45 | # define ERFKILL		167 | ||
| 46 | # endif | ||
| 47 | |||
| 48 | # ifndef EHWPOISON | ||
| 49 | # define EHWPOISON		168 | ||
| 50 | # endif | ||
| 51 | |||
| 52 | #endif /* bits/errno.h. */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabin32/bits/eventfd.h deleted-31| ... | @@ -1,31 +0,0 @@ | ||
| 1 | /* Copyright (C) 2007-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_SYS_EVENTFD_H | ||
| 19 | # error "Never use <bits/eventfd.h> directly; include <sys/eventfd.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Flags for eventfd. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | EFD_SEMAPHORE = 00000001, | ||
| 26 | #define EFD_SEMAPHORE EFD_SEMAPHORE | ||
| 27 | EFD_CLOEXEC = 02000000, | ||
| 28 | #define EFD_CLOEXEC EFD_CLOEXEC | ||
| 29 | EFD_NONBLOCK = 00000200 | ||
| 30 | #define EFD_NONBLOCK EFD_NONBLOCK | ||
| 31 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabin32/bits/floatn.h deleted-97| ... | @@ -1,97 +0,0 @@ | ||
| 1 | /* Macros to control TS 18661-3 glibc features on MIPS platforms. | ||
| 2 | Copyright (C) 2017-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_FLOATN_H | ||
| 20 | #define _BITS_FLOATN_H | ||
| 21 | |||
| 22 | #include <features.h> | ||
| 23 | #include <bits/long-double.h> | ||
| 24 | |||
| 25 | /* Defined to 1 if the current compiler invocation provides a | ||
| 26 | floating-point type with the IEEE 754 binary128 format, and this | ||
| 27 | glibc includes corresponding *f128 interfaces for it. */ | ||
| 28 | #ifndef __NO_LONG_DOUBLE_MATH | ||
| 29 | # define __HAVE_FLOAT128 1 | ||
| 30 | #else | ||
| 31 | /* glibc does not support _Float128 for platforms where long double is | ||
| 32 | normally binary128 when building with long double as binary64. | ||
| 33 | GCC's default for supported scalar modes does not support it either | ||
| 34 | in that case. */ | ||
| 35 | # define __HAVE_FLOAT128 0 | ||
| 36 | #endif | ||
| 37 | |||
| 38 | /* Defined to 1 if __HAVE_FLOAT128 is 1 and the type is ABI-distinct | ||
| 39 | from the default float, double and long double types in this glibc. */ | ||
| 40 | #define __HAVE_DISTINCT_FLOAT128 0 | ||
| 41 | |||
| 42 | /* Defined to 1 if the current compiler invocation provides a | ||
| 43 | floating-point type with the right format for _Float64x, and this | ||
| 44 | glibc includes corresponding *f64x interfaces for it. */ | ||
| 45 | #define __HAVE_FLOAT64X __HAVE_FLOAT128 | ||
| 46 | |||
| 47 | /* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format | ||
| 48 | of long double. Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has | ||
| 49 | the format of _Float128, which must be different from that of long | ||
| 50 | double. */ | ||
| 51 | #define __HAVE_FLOAT64X_LONG_DOUBLE __HAVE_FLOAT128 | ||
| 52 | |||
| 53 | #ifndef __ASSEMBLER__ | ||
| 54 | |||
| 55 | /* Defined to concatenate the literal suffix to be used with _Float128 | ||
| 56 | types, if __HAVE_FLOAT128 is 1. */ | ||
| 57 | # if __HAVE_FLOAT128 | ||
| 58 | # if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) | ||
| 59 | /* The literal suffix f128 exists only since GCC 7.0. */ | ||
| 60 | # define __f128(x) x##l | ||
| 61 | # else | ||
| 62 | # define __f128(x) x##f128 | ||
| 63 | # endif | ||
| 64 | # endif | ||
| 65 | |||
| 66 | /* Defined to a complex binary128 type if __HAVE_FLOAT128 is 1. */ | ||
| 67 | # if __HAVE_FLOAT128 | ||
| 68 | # if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) | ||
| 69 | # define __CFLOAT128 _Complex long double | ||
| 70 | # else | ||
| 71 | # define __CFLOAT128 _Complex _Float128 | ||
| 72 | # endif | ||
| 73 | # endif | ||
| 74 | |||
| 75 | /* The remaining of this file provides support for older compilers. */ | ||
| 76 | # if __HAVE_FLOAT128 | ||
| 77 | |||
| 78 | /* The type _Float128 exists only since GCC 7.0. */ | ||
| 79 | # if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) | ||
| 80 | typedef long double _Float128; | ||
| 81 | # endif | ||
| 82 | |||
| 83 | /* Various built-in functions do not exist before GCC 7.0. */ | ||
| 84 | # if !__GNUC_PREREQ (7, 0) | ||
| 85 | # define __builtin_huge_valf128() (__builtin_huge_vall ()) | ||
| 86 | # define __builtin_inff128() (__builtin_infl ()) | ||
| 87 | # define __builtin_nanf128(x) (__builtin_nanl (x)) | ||
| 88 | # define __builtin_nansf128(x) (__builtin_nansl (x)) | ||
| 89 | # endif | ||
| 90 | |||
| 91 | # endif | ||
| 92 | |||
| 93 | #endif /* !__ASSEMBLER__. */ | ||
| 94 | |||
| 95 | #include <bits/floatn-common.h> | ||
| 96 | |||
| 97 | #endif /* _BITS_FLOATN_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabin32/bits/inotify.h deleted-29| ... | @@ -1,29 +0,0 @@ | ||
| 1 | /* Copyright (C) 2005-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_SYS_INOTIFY_H | ||
| 19 | # error "Never use <bits/inotify.h> directly; include <sys/inotify.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Flags for the parameter of inotify_init1. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | IN_CLOEXEC = 02000000, | ||
| 26 | #define IN_CLOEXEC IN_CLOEXEC | ||
| 27 | IN_NONBLOCK = 00000200 | ||
| 28 | #define IN_NONBLOCK IN_NONBLOCK | ||
| 29 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabin32/bits/ioctl-types.h deleted-75| ... | @@ -1,75 +0,0 @@ | ||
| 1 | /* Structure types for pre-termios terminal ioctls. Linux/MIPS version. | ||
| 2 | Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_IOCTL_H | ||
| 20 | # error "Never use <bits/ioctl-types.h> directly; include <sys/ioctl.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Get definition of constants for use with `ioctl'. */ | ||
| 24 | #include <asm/ioctls.h> | ||
| 25 | |||
| 26 | struct winsize | ||
| 27 | { | ||
| 28 | unsigned short int ws_row; | ||
| 29 | unsigned short int ws_col; | ||
| 30 | unsigned short int ws_xpixel; | ||
| 31 | unsigned short int ws_ypixel; | ||
| 32 | }; | ||
| 33 | |||
| 34 | #define NCC	8 | ||
| 35 | struct termio | ||
| 36 | { | ||
| 37 | unsigned short int c_iflag;		/* input mode flags */ | ||
| 38 | unsigned short int c_oflag;		/* output mode flags */ | ||
| 39 | unsigned short int c_cflag;		/* control mode flags */ | ||
| 40 | unsigned short int c_lflag;		/* local mode flags */ | ||
| 41 | char c_line;			/* line discipline */ | ||
| 42 | /* Yes, this is really NCCS. */ | ||
| 43 | unsigned char c_cc[32 /* NCCS */]; /* control characters */ | ||
| 44 | }; | ||
| 45 | |||
| 46 | /* modem lines */ | ||
| 47 | #define TIOCM_LE	0x001		/* line enable */ | ||
| 48 | #define TIOCM_DTR	0x002		/* data terminal ready */ | ||
| 49 | #define TIOCM_RTS	0x004		/* request to send */ | ||
| 50 | #define TIOCM_ST	0x010		/* secondary transmit */ | ||
| 51 | #define TIOCM_SR	0x020		/* secondary receive */ | ||
| 52 | #define TIOCM_CTS	0x040		/* clear to send */ | ||
| 53 | #define TIOCM_CAR	0x100		/* carrier detect */ | ||
| 54 | #define TIOCM_CD	TIOCM_CAR | ||
| 55 | #define TIOCM_RNG	0x200		/* ring */ | ||
| 56 | #define TIOCM_RI	TIOCM_RNG | ||
| 57 | #define TIOCM_DSR	0x400		/* data set ready */ | ||
| 58 | |||
| 59 | /* line disciplines */ | ||
| 60 | #define N_TTY		0 | ||
| 61 | #define N_SLIP		1 | ||
| 62 | #define N_MOUSE		2 | ||
| 63 | #define N_PPP		3 | ||
| 64 | #define N_STRIP		4 | ||
| 65 | #define N_AX25		5 | ||
| 66 | #define N_X25		6	/* X.25 async */ | ||
| 67 | #define N_6PACK		7 | ||
| 68 | #define N_MASC		8	/* Mobitex module */ | ||
| 69 | #define N_R3964		9	/* Simatic R3964 module */ | ||
| 70 | #define N_PROFIBUS_FDL	10	/* Profibus */ | ||
| 71 | #define N_IRDA		11	/* Linux IR */ | ||
| 72 | #define N_SMSBLOCK	12	/* SMS block mode */ | ||
| 73 | #define N_HDLC		13	/* synchronous HDLC */ | ||
| 74 | #define N_SYNC_PPP	14	/* synchronous PPP */ | ||
| 75 | #define	N_HCI		15	/* Bluetooth HCI UART */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabin32/bits/ipctypes.h deleted-31| ... | @@ -1,31 +0,0 @@ | ||
| 1 | /* bits/ipctypes.h -- Define some types used by SysV IPC/MSG/SHM. MIPS version | ||
| 2 | Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* | ||
| 20 | * Never include <bits/ipctypes.h> directly. | ||
| 21 | */ | ||
| 22 | |||
| 23 | #ifndef _BITS_IPCTYPES_H | ||
| 24 | #define _BITS_IPCTYPES_H	1 | ||
| 25 | |||
| 26 | #include <bits/types.h> | ||
| 27 | |||
| 28 | typedef __SLONG32_TYPE __ipc_pid_t; | ||
| 29 | |||
| 30 | |||
| 31 | #endif /* bits/ipctypes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabin32/bits/mman.h deleted-44| ... | @@ -1,44 +0,0 @@ | ||
| 1 | /* Definitions for POSIX memory map interface. Linux/MIPS version. | ||
| 2 | Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_MMAN_H | ||
| 20 | # error "Never use <bits/mman.h> directly; include <sys/mman.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* The following definitions basically come from the kernel headers. | ||
| 24 | But the kernel header is not namespace clean. */ | ||
| 25 | |||
| 26 | /* These are Linux-specific. */ | ||
| 27 | #define MAP_NORESERVE	0x0400		/* don't check for reservations */ | ||
| 28 | #define MAP_GROWSDOWN	0x1000		/* stack-like segment */ | ||
| 29 | #define MAP_DENYWRITE	0x2000		/* ETXTBSY */ | ||
| 30 | #define MAP_EXECUTABLE	0x4000		/* mark it as an executable */ | ||
| 31 | #define MAP_LOCKED	0x8000		/* pages are locked */ | ||
| 32 | #define MAP_POPULATE 0x10000 /* populate (prefault) pagetables */ | ||
| 33 | #define MAP_NONBLOCK 0x20000 /* do not block on IO */ | ||
| 34 | #define MAP_STACK	0x40000		/* Allocation is for a stack. */ | ||
| 35 | #define MAP_HUGETLB	0x80000		/* Create huge page mapping. */ | ||
| 36 | #define MAP_FIXED_NOREPLACE 0x100000	/* MAP_FIXED but do not unmap | ||
| 37 | 					 underlying mapping. */ | ||
| 38 | |||
| 39 | #define __MAP_ANONYMOUS 0x0800 | ||
| 40 | |||
| 41 | /* Include generic Linux declarations. */ | ||
| 42 | #include <bits/mman-linux.h> | ||
| 43 | |||
| 44 | #define MAP_RENAME	MAP_ANONYMOUS | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabin32/bits/poll.h deleted-49| ... | @@ -1,49 +0,0 @@ | ||
| 1 | /* Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_POLL_H | ||
| 19 | # error "Never use <bits/poll.h> directly; include <sys/poll.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Event types that can be polled for. These bits may be set in `events' | ||
| 23 | to indicate the interesting event types; they will appear in `revents' | ||
| 24 | to indicate the status of the file descriptor. */ | ||
| 25 | #define POLLIN		0x001		/* There is data to read. */ | ||
| 26 | #define POLLPRI		0x002		/* There is urgent data to read. */ | ||
| 27 | #define POLLOUT		0x004		/* Writing now will not block. */ | ||
| 28 | |||
| 29 | #if defined __USE_XOPEN || defined __USE_XOPEN2K8 | ||
| 30 | /* These values are defined in XPG4.2. */ | ||
| 31 | # define POLLRDNORM	0x040		/* Normal data may be read. */ | ||
| 32 | # define POLLRDBAND	0x080		/* Priority data may be read. */ | ||
| 33 | # define POLLWRNORM	POLLOUT		/* Writing now will not block. */ | ||
| 34 | # define POLLWRBAND	0x100		/* Priority data may be written. */ | ||
| 35 | #endif | ||
| 36 | |||
| 37 | #ifdef __USE_GNU | ||
| 38 | /* These are extensions for Linux. */ | ||
| 39 | # define POLLMSG	0x400 | ||
| 40 | # define POLLREMOVE	0x1000 | ||
| 41 | # define POLLRDHUP	0x2000 | ||
| 42 | #endif | ||
| 43 | |||
| 44 | /* Event types always implicitly polled for. These bits need not be set in | ||
| 45 | `events', but they will appear in `revents' to indicate the status of | ||
| 46 | the file descriptor. */ | ||
| 47 | #define POLLERR		0x008		/* Error condition. */ | ||
| 48 | #define POLLHUP		0x010		/* Hung up. */ | ||
| 49 | #define POLLNVAL	0x020		/* Invalid polling request. */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabin32/bits/pthread_stack_min.h deleted-20| ... | @@ -1,20 +0,0 @@ | ||
| 1 | /* Definition of PTHREAD_STACK_MIN. MIPS Linux version. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public License as | ||
| 7 | published by the Free Software Foundation; either version 2.1 of the | ||
| 8 | License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* Minimum size for a thread. At least two pages with 64k pages. */ | ||
| 20 | #define PTHREAD_STACK_MIN	131072 | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabin32/bits/pthreadtypes-arch.h deleted-44| ... | @@ -1,44 +0,0 @@ | ||
| 1 | /* Machine-specific pthread type layouts. MIPS version. | ||
| 2 | Copyright (C) 2005-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_PTHREADTYPES_ARCH_H | ||
| 20 | #define _BITS_PTHREADTYPES_ARCH_H	1 | ||
| 21 | |||
| 22 | #include <bits/endian.h> | ||
| 23 | |||
| 24 | #if _MIPS_SIM == _ABI64 | ||
| 25 | # define __SIZEOF_PTHREAD_ATTR_T 56 | ||
| 26 | # define __SIZEOF_PTHREAD_MUTEX_T 40 | ||
| 27 | # define __SIZEOF_PTHREAD_RWLOCK_T 56 | ||
| 28 | # define __SIZEOF_PTHREAD_BARRIER_T 32 | ||
| 29 | #else | ||
| 30 | # define __SIZEOF_PTHREAD_ATTR_T 36 | ||
| 31 | # define __SIZEOF_PTHREAD_MUTEX_T 24 | ||
| 32 | # define __SIZEOF_PTHREAD_RWLOCK_T 32 | ||
| 33 | # define __SIZEOF_PTHREAD_BARRIER_T 20 | ||
| 34 | #endif | ||
| 35 | #define __SIZEOF_PTHREAD_MUTEXATTR_T 4 | ||
| 36 | #define __SIZEOF_PTHREAD_COND_T 48 | ||
| 37 | #define __SIZEOF_PTHREAD_CONDATTR_T 4 | ||
| 38 | #define __SIZEOF_PTHREAD_RWLOCKATTR_T 8 | ||
| 39 | #define __SIZEOF_PTHREAD_BARRIERATTR_T 4 | ||
| 40 | |||
| 41 | #define __LOCK_ALIGNMENT | ||
| 42 | #define __ONCE_ALIGNMENT | ||
| 43 | |||
| 44 | #endif	/* bits/pthreadtypes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabin32/bits/resource.h deleted-231| ... | @@ -1,231 +0,0 @@ | ||
| 1 | /* Bit values & structures for resource limits. Linux/MIPS version. | ||
| 2 | Copyright (C) 1994-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_RESOURCE_H | ||
| 20 | # error "Never use <bits/resource.h> directly; include <sys/resource.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <bits/types.h> | ||
| 24 | |||
| 25 | /* Transmute defines to enumerations. The macro re-definitions are | ||
| 26 | necessary because some programs want to test for operating system | ||
| 27 | features with #ifdef RUSAGE_SELF. In ISO C the reflexive | ||
| 28 | definition is a no-op. */ | ||
| 29 | |||
| 30 | /* Kinds of resource limit. */ | ||
| 31 | enum __rlimit_resource | ||
| 32 | { | ||
| 33 | /* Per-process CPU limit, in seconds. */ | ||
| 34 | RLIMIT_CPU = 0, | ||
| 35 | #define RLIMIT_CPU RLIMIT_CPU | ||
| 36 | |||
| 37 | /* Largest file that can be created, in bytes. */ | ||
| 38 | RLIMIT_FSIZE = 1, | ||
| 39 | #define	RLIMIT_FSIZE RLIMIT_FSIZE | ||
| 40 | |||
| 41 | /* Maximum size of data segment, in bytes. */ | ||
| 42 | RLIMIT_DATA = 2, | ||
| 43 | #define	RLIMIT_DATA RLIMIT_DATA | ||
| 44 | |||
| 45 | /* Maximum size of stack segment, in bytes. */ | ||
| 46 | RLIMIT_STACK = 3, | ||
| 47 | #define	RLIMIT_STACK RLIMIT_STACK | ||
| 48 | |||
| 49 | /* Largest core file that can be created, in bytes. */ | ||
| 50 | RLIMIT_CORE = 4, | ||
| 51 | #define	RLIMIT_CORE RLIMIT_CORE | ||
| 52 | |||
| 53 | /* Largest resident set size, in bytes. | ||
| 54 | This affects swapping; processes that are exceeding their | ||
| 55 | resident set size will be more likely to have physical memory | ||
| 56 | taken from them. */ | ||
| 57 | __RLIMIT_RSS = 7, | ||
| 58 | #define	RLIMIT_RSS __RLIMIT_RSS | ||
| 59 | |||
| 60 | /* Number of open files. */ | ||
| 61 | RLIMIT_NOFILE = 5, | ||
| 62 | __RLIMIT_OFILE = RLIMIT_NOFILE, /* BSD name for same. */ | ||
| 63 | #define RLIMIT_NOFILE RLIMIT_NOFILE | ||
| 64 | #define RLIMIT_OFILE __RLIMIT_OFILE | ||
| 65 | |||
| 66 | /* Address space limit (?) */ | ||
| 67 | RLIMIT_AS = 6, | ||
| 68 | #define RLIMIT_AS RLIMIT_AS | ||
| 69 | |||
| 70 | /* Number of processes. */ | ||
| 71 | __RLIMIT_NPROC = 8, | ||
| 72 | #define RLIMIT_NPROC __RLIMIT_NPROC | ||
| 73 | |||
| 74 | /* Locked-in-memory address space. */ | ||
| 75 | __RLIMIT_MEMLOCK = 9, | ||
| 76 | #define RLIMIT_MEMLOCK __RLIMIT_MEMLOCK | ||
| 77 | |||
| 78 | /* Maximum number of file locks. */ | ||
| 79 | __RLIMIT_LOCKS = 10, | ||
| 80 | #define RLIMIT_LOCKS __RLIMIT_LOCKS | ||
| 81 | |||
| 82 | /* Maximum number of pending signals. */ | ||
| 83 | __RLIMIT_SIGPENDING = 11, | ||
| 84 | #define RLIMIT_SIGPENDING __RLIMIT_SIGPENDING | ||
| 85 | |||
| 86 | /* Maximum bytes in POSIX message queues. */ | ||
| 87 | __RLIMIT_MSGQUEUE = 12, | ||
| 88 | #define RLIMIT_MSGQUEUE __RLIMIT_MSGQUEUE | ||
| 89 | |||
| 90 | /* Maximum nice priority allowed to raise to. | ||
| 91 | Nice levels 19 .. -20 correspond to 0 .. 39 | ||
| 92 | values of this resource limit. */ | ||
| 93 | __RLIMIT_NICE = 13, | ||
| 94 | #define RLIMIT_NICE __RLIMIT_NICE | ||
| 95 | |||
| 96 | /* Maximum realtime priority allowed for non-priviledged | ||
| 97 | processes. */ | ||
| 98 | __RLIMIT_RTPRIO = 14, | ||
| 99 | #define RLIMIT_RTPRIO __RLIMIT_RTPRIO | ||
| 100 | |||
| 101 | /* Maximum CPU time in microseconds that a process scheduled under a real-time | ||
| 102 | scheduling policy may consume without making a blocking system | ||
| 103 | call before being forcibly descheduled. */ | ||
| 104 | __RLIMIT_RTTIME = 15, | ||
| 105 | #define RLIMIT_RTTIME __RLIMIT_RTTIME | ||
| 106 | |||
| 107 | __RLIMIT_NLIMITS = 16, | ||
| 108 | __RLIM_NLIMITS = __RLIMIT_NLIMITS | ||
| 109 | #define RLIMIT_NLIMITS __RLIMIT_NLIMITS | ||
| 110 | #define RLIM_NLIMITS __RLIM_NLIMITS | ||
| 111 | }; | ||
| 112 | |||
| 113 | /* Value to indicate that there is no limit. */ | ||
| 114 | #if _MIPS_SIM == _ABI64 | ||
| 115 | /* The N64 syscall uses this value. */ | ||
| 116 | # define RLIM_INFINITY 0xffffffffffffffffUL | ||
| 117 | # ifdef __USE_LARGEFILE64 | ||
| 118 | # define RLIM64_INFINITY 0xffffffffffffffffUL | ||
| 119 | # endif | ||
| 120 | #else | ||
| 121 | /* The O32 and N32 syscalls use 0x7fffffff. */ | ||
| 122 | # ifndef __USE_FILE_OFFSET64 | ||
| 123 | # define RLIM_INFINITY ((long int)(~0UL >> 1)) | ||
| 124 | # else | ||
| 125 | # define RLIM_INFINITY 0xffffffffffffffffULL | ||
| 126 | # endif | ||
| 127 | # ifdef __USE_LARGEFILE64 | ||
| 128 | # define RLIM64_INFINITY 0xffffffffffffffffULL | ||
| 129 | # endif | ||
| 130 | #endif | ||
| 131 | |||
| 132 | /* We can represent all limits. */ | ||
| 133 | #define RLIM_SAVED_MAX	RLIM_INFINITY | ||
| 134 | #define RLIM_SAVED_CUR	RLIM_INFINITY | ||
| 135 | |||
| 136 | |||
| 137 | /* Type for resource quantity measurement. */ | ||
| 138 | #ifndef __USE_FILE_OFFSET64 | ||
| 139 | typedef __rlim_t rlim_t; | ||
| 140 | #else | ||
| 141 | typedef __rlim64_t rlim_t; | ||
| 142 | #endif | ||
| 143 | #ifdef __USE_LARGEFILE64 | ||
| 144 | typedef __rlim64_t rlim64_t; | ||
| 145 | #endif | ||
| 146 | |||
| 147 | struct rlimit | ||
| 148 | { | ||
| 149 | /* The current (soft) limit. */ | ||
| 150 | rlim_t rlim_cur; | ||
| 151 | /* The hard limit. */ | ||
| 152 | rlim_t rlim_max; | ||
| 153 | }; | ||
| 154 | |||
| 155 | #ifdef __USE_LARGEFILE64 | ||
| 156 | struct rlimit64 | ||
| 157 | { | ||
| 158 | /* The current (soft) limit. */ | ||
| 159 | rlim64_t rlim_cur; | ||
| 160 | /* The hard limit. */ | ||
| 161 | rlim64_t rlim_max; | ||
| 162 | }; | ||
| 163 | #endif | ||
| 164 | |||
| 165 | /* Whose usage statistics do you want? */ | ||
| 166 | enum __rusage_who | ||
| 167 | { | ||
| 168 | /* The calling process. */ | ||
| 169 | RUSAGE_SELF = 0, | ||
| 170 | #define RUSAGE_SELF RUSAGE_SELF | ||
| 171 | |||
| 172 | /* All of its terminated child processes. */ | ||
| 173 | RUSAGE_CHILDREN = -1 | ||
| 174 | #define RUSAGE_CHILDREN RUSAGE_CHILDREN | ||
| 175 | |||
| 176 | #ifdef __USE_GNU | ||
| 177 | , | ||
| 178 | /* The calling thread. */ | ||
| 179 | RUSAGE_THREAD = 1 | ||
| 180 | # define RUSAGE_THREAD RUSAGE_THREAD | ||
| 181 | /* Name for the same functionality on Solaris. */ | ||
| 182 | # define RUSAGE_LWP RUSAGE_THREAD | ||
| 183 | #endif | ||
| 184 | }; | ||
| 185 | |||
| 186 | #include <bits/types/struct_timeval.h> | ||
| 187 | #include <bits/types/struct_rusage.h> | ||
| 188 | |||
| 189 | /* Priority limits. */ | ||
| 190 | #define PRIO_MIN	-20	/* Minimum priority a process can have. */ | ||
| 191 | #define PRIO_MAX	20	/* Maximum priority a process can have. */ | ||
| 192 | |||
| 193 | /* The type of the WHICH argument to `getpriority' and `setpriority', | ||
| 194 | indicating what flavor of entity the WHO argument specifies. */ | ||
| 195 | enum __priority_which | ||
| 196 | { | ||
| 197 | PRIO_PROCESS = 0,		/* WHO is a process ID. */ | ||
| 198 | #define PRIO_PROCESS PRIO_PROCESS | ||
| 199 | PRIO_PGRP = 1,		/* WHO is a process group ID. */ | ||
| 200 | #define PRIO_PGRP PRIO_PGRP | ||
| 201 | PRIO_USER = 2			/* WHO is a user ID. */ | ||
| 202 | #define PRIO_USER PRIO_USER | ||
| 203 | }; | ||
| 204 | |||
| 205 | |||
| 206 | __BEGIN_DECLS | ||
| 207 | |||
| 208 | #ifdef __USE_GNU | ||
| 209 | /* Modify and return resource limits of a process atomically. */ | ||
| 210 | # ifndef __USE_FILE_OFFSET64 | ||
| 211 | extern int prlimit (__pid_t __pid, enum __rlimit_resource __resource, | ||
| 212 | 		 const struct rlimit *__new_limit, | ||
| 213 | 		 struct rlimit *__old_limit) __THROW; | ||
| 214 | # else | ||
| 215 | # ifdef __REDIRECT_NTH | ||
| 216 | extern int __REDIRECT_NTH (prlimit, (__pid_t __pid, | ||
| 217 | 				 enum __rlimit_resource __resource, | ||
| 218 | 				 const struct rlimit *__new_limit, | ||
| 219 | 				 struct rlimit *__old_limit), prlimit64); | ||
| 220 | # else | ||
| 221 | # define prlimit prlimit64 | ||
| 222 | # endif | ||
| 223 | # endif | ||
| 224 | # ifdef __USE_LARGEFILE64 | ||
| 225 | extern int prlimit64 (__pid_t __pid, enum __rlimit_resource __resource, | ||
| 226 | 		 const struct rlimit64 *__new_limit, | ||
| 227 | 		 struct rlimit64 *__old_limit) __THROW; | ||
| 228 | # endif | ||
| 229 | #endif | ||
| 230 | |||
| 231 | __END_DECLS | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabin32/bits/semaphore.h deleted-36| ... | @@ -1,36 +0,0 @@ | ||
| 1 | /* Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SEMAPHORE_H | ||
| 19 | # error "Never use <bits/semaphore.h> directly; include <semaphore.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | #if _MIPS_SIM == _ABI64 | ||
| 23 | # define __SIZEOF_SEM_T	32 | ||
| 24 | #else | ||
| 25 | # define __SIZEOF_SEM_T	16 | ||
| 26 | #endif | ||
| 27 | |||
| 28 | /* Value returned if `sem_open' failed. */ | ||
| 29 | #define SEM_FAILED ((sem_t *) 0) | ||
| 30 | |||
| 31 | |||
| 32 | typedef union | ||
| 33 | { | ||
| 34 | char __size[__SIZEOF_SEM_T]; | ||
| 35 | long int __align; | ||
| 36 | } sem_t; | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabin32/bits/shmlba.h deleted-24| ... | @@ -1,24 +0,0 @@ | ||
| 1 | /* Define SHMLBA. MIPS version. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SHM_H | ||
| 20 | # error "Never use <bits/shmlba.h> directly; include <sys/shm.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Segment low boundary address multiple. */ | ||
| 24 | #define SHMLBA		0x40000 | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabin32/bits/sigaction.h deleted-94| ... | @@ -1,94 +0,0 @@ | ||
| 1 | /* The proper definitions for Linux/MIPS's sigaction. | ||
| 2 | Copyright (C) 1993-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_SIGACTION_H | ||
| 20 | #define _BITS_SIGACTION_H 1 | ||
| 21 | |||
| 22 | #ifndef _SIGNAL_H | ||
| 23 | # error "Never include <bits/sigaction.h> directly; use <signal.h> instead." | ||
| 24 | #endif | ||
| 25 | |||
| 26 | /* Structure describing the action to be taken when a signal arrives. */ | ||
| 27 | struct sigaction | ||
| 28 | { | ||
| 29 | /* Special flags. */ | ||
| 30 | int sa_flags; | ||
| 31 | |||
| 32 | /* Signal handler. */ | ||
| 33 | #if defined __USE_POSIX199309 || defined __USE_XOPEN_EXTENDED | ||
| 34 | union | ||
| 35 | { | ||
| 36 | 	/* Used if SA_SIGINFO is not set. */ | ||
| 37 | 	__sighandler_t sa_handler; | ||
| 38 | 	/* Used if SA_SIGINFO is set. */ | ||
| 39 | 	void (*sa_sigaction) (int, siginfo_t *, void *); | ||
| 40 | } | ||
| 41 | __sigaction_handler; | ||
| 42 | # define sa_handler __sigaction_handler.sa_handler | ||
| 43 | # define sa_sigaction __sigaction_handler.sa_sigaction | ||
| 44 | #else | ||
| 45 | __sighandler_t sa_handler; | ||
| 46 | #endif | ||
| 47 | /* Additional set of signals to be blocked. */ | ||
| 48 | __sigset_t sa_mask; | ||
| 49 | |||
| 50 | /* The ABI says here are two unused ints following. */ | ||
| 51 | /* Restore handler. */ | ||
| 52 | void (*sa_restorer) (void); | ||
| 53 | |||
| 54 | #if _MIPS_SZPTR < 64 | ||
| 55 | int sa_resv[1]; | ||
| 56 | #endif | ||
| 57 | }; | ||
| 58 | |||
| 59 | /* Bits in `sa_flags'. */ | ||
| 60 | /* Please note that some Linux kernels versions use different values for these | ||
| 61 | flags which is a bug in those kernel versions. */ | ||
| 62 | #define SA_NOCLDSTOP 0x00000001 /* Don't send SIGCHLD when children stop. */ | ||
| 63 | #define SA_NOCLDWAIT 0x00010000 /* Don't create zombie on child death. */ | ||
| 64 | #define SA_SIGINFO 0x00000008 /* Invoke signal-catching function with | ||
| 65 | 				 three arguments instead of one. */ | ||
| 66 | #if defined __USE_XOPEN_EXTENDED || defined __USE_MISC | ||
| 67 | # define SA_ONSTACK 0x08000000 /* Use signal stack by using `sa_restorer'. */ | ||
| 68 | #endif | ||
| 69 | #if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8 | ||
| 70 | # define SA_RESETHAND 0x80000000 /* Reset to SIG_DFL on entry to handler. */ | ||
| 71 | # define SA_RESTART 0x10000000 /* Restart syscall on signal return. */ | ||
| 72 | # define SA_NODEFER 0x40000000 /* Don't automatically block the signal when | ||
| 73 | 				 its handler is being executed. */ | ||
| 74 | #endif | ||
| 75 | #ifdef __USE_MISC | ||
| 76 | # define SA_INTERRUPT 0x20000000 /* Historical no-op. */ | ||
| 77 | |||
| 78 | /* Some aliases for the SA_ constants. */ | ||
| 79 | # define SA_NOMASK SA_NODEFER | ||
| 80 | # define SA_ONESHOT SA_RESETHAND | ||
| 81 | # define SA_STACK SA_ONSTACK | ||
| 82 | #endif | ||
| 83 | |||
| 84 | /* Values for the HOW argument to `sigprocmask'. */ | ||
| 85 | #define SIG_NOP	 0		/* 0 is unused to catch errors */ | ||
| 86 | #define	SIG_BLOCK 1		/* Block signals. */ | ||
| 87 | #define	SIG_UNBLOCK 2		/* Unblock signals. */ | ||
| 88 | #define	SIG_SETMASK 3		/* Set the set of blocked signals. */ | ||
| 89 | #ifdef __USE_MISC | ||
| 90 | # define SIG_SETMASK32 256	/* Goodie from SGI for BSD compatibility: | ||
| 91 | 				 set only the low 32 bit of the sigset. */ | ||
| 92 | #endif | ||
| 93 | |||
| 94 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabin32/bits/sigcontext.h deleted-82| ... | @@ -1,82 +0,0 @@ | ||
| 1 | /* Copyright (C) 1996-2025 Free Software Foundation, Inc. This file is part of the GNU C Library. | ||
| 2 | |||
| 3 | The GNU C Library is free software; you can redistribute it and/or | ||
| 4 | modify it under the terms of the GNU Lesser General Public | ||
| 5 | License as published by the Free Software Foundation; either | ||
| 6 | version 2.1 of the License, or (at your option) any later version. | ||
| 7 | |||
| 8 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 9 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 10 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 11 | Lesser General Public License for more details. | ||
| 12 | |||
| 13 | You should have received a copy of the GNU Lesser General Public | ||
| 14 | License along with the GNU C Library. If not, see | ||
| 15 | <https://www.gnu.org/licenses/>. */ | ||
| 16 | |||
| 17 | #ifndef _BITS_SIGCONTEXT_H | ||
| 18 | #define _BITS_SIGCONTEXT_H 1 | ||
| 19 | |||
| 20 | #if !defined _SIGNAL_H && !defined _SYS_UCONTEXT_H | ||
| 21 | # error "Never use <bits/sigcontext.h> directly; include <signal.h> instead." | ||
| 22 | #endif | ||
| 23 | |||
| 24 | #include <sgidefs.h> | ||
| 25 | |||
| 26 | #if _MIPS_SIM == _ABIO32 | ||
| 27 | |||
| 28 | /* Certain unused fields were replaced with new ones in 2.6.12-rc4. | ||
| 29 | The changes were as follows: | ||
| 30 | |||
| 31 | sc_cause -> sc_hi1 | ||
| 32 | sc_badvaddr -> sc_lo1 | ||
| 33 | sc_sigset[0] -> sc_hi2 | ||
| 34 | sc_sigset[1] -> sc_lo2 | ||
| 35 | sc_sigset[2] -> sc_hi3 | ||
| 36 | sc_sigset[3] -> sc_lo3 | ||
| 37 | |||
| 38 | sc_regmask, sc_ownedfp and sc_fpc_eir are not used. */ | ||
| 39 | struct sigcontext { | ||
| 40 | unsigned int sc_regmask; | ||
| 41 | unsigned int sc_status; | ||
| 42 | __extension__ unsigned long long sc_pc; | ||
| 43 | __extension__ unsigned long long sc_regs[32]; | ||
| 44 | __extension__ unsigned long long sc_fpregs[32]; | ||
| 45 | unsigned int sc_ownedfp; | ||
| 46 | unsigned int sc_fpc_csr; | ||
| 47 | unsigned int sc_fpc_eir; | ||
| 48 | unsigned int sc_used_math; | ||
| 49 | unsigned int sc_dsp; | ||
| 50 | __extension__ unsigned long long sc_mdhi; | ||
| 51 | __extension__ unsigned long long sc_mdlo; | ||
| 52 | unsigned long sc_hi1; | ||
| 53 | unsigned long sc_lo1; | ||
| 54 | unsigned long sc_hi2; | ||
| 55 | unsigned long sc_lo2; | ||
| 56 | unsigned long sc_hi3; | ||
| 57 | unsigned long sc_lo3; | ||
| 58 | }; | ||
| 59 | |||
| 60 | #else | ||
| 61 | |||
| 62 | /* This structure changed in 2.6.12-rc4 when DSP support was added. */ | ||
| 63 | struct sigcontext { | ||
| 64 | __extension__ unsigned long long sc_regs[32]; | ||
| 65 | __extension__ unsigned long long sc_fpregs[32]; | ||
| 66 | __extension__ unsigned long long sc_mdhi; | ||
| 67 | __extension__ unsigned long long sc_hi1; | ||
| 68 | __extension__ unsigned long long sc_hi2; | ||
| 69 | __extension__ unsigned long long sc_hi3; | ||
| 70 | __extension__ unsigned long long sc_mdlo; | ||
| 71 | __extension__ unsigned long long sc_lo1; | ||
| 72 | __extension__ unsigned long long sc_lo2; | ||
| 73 | __extension__ unsigned long long sc_lo3; | ||
| 74 | __extension__ unsigned long long sc_pc; | ||
| 75 | unsigned int sc_fpc_csr; | ||
| 76 | unsigned int sc_used_math; | ||
| 77 | unsigned int sc_dsp; | ||
| 78 | unsigned int sc_reserved; | ||
| 79 | }; | ||
| 80 | |||
| 81 | #endif /* _MIPS_SIM != _ABIO32 */ | ||
| 82 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabin32/bits/siginfo-arch.h deleted-13| ... | @@ -1,13 +0,0 @@ | ||
| 1 | /* Architecture-specific adjustments to siginfo_t. MIPS version. */ | ||
| 2 | #ifndef _BITS_SIGINFO_ARCH_H | ||
| 3 | #define _BITS_SIGINFO_ARCH_H 1 | ||
| 4 | |||
| 5 | /* MIPS has the si_code and si_errno fields in the opposite order from | ||
| 6 | all other architectures. */ | ||
| 7 | #define __SI_ERRNO_THEN_CODE 0 | ||
| 8 | |||
| 9 | /* MIPS also has different values for SI_ASYNCIO, SI_MESGQ, and SI_TIMER | ||
| 10 | than all other architectures. */ | ||
| 11 | #define __SI_ASYNCIO_AFTER_SIGIO 0 | ||
| 12 | |||
| 13 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabin32/bits/signalfd.h deleted-29| ... | @@ -1,29 +0,0 @@ | ||
| 1 | /* Copyright (C) 2007-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_SYS_SIGNALFD_H | ||
| 19 | # error "Never use <bits/signalfd.h> directly; include <sys/signalfd.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Flags for signalfd. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | SFD_CLOEXEC = 02000000, | ||
| 26 | #define SFD_CLOEXEC SFD_CLOEXEC | ||
| 27 | SFD_NONBLOCK = 00000200 | ||
| 28 | #define SFD_NONBLOCK SFD_NONBLOCK | ||
| 29 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabin32/bits/signum-arch.h deleted-65| ... | @@ -1,65 +0,0 @@ | ||
| 1 | /* Signal number definitions. Linux/MIPS version. | ||
| 2 | Copyright (C) 1995-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_SIGNUM_H | ||
| 20 | #define _BITS_SIGNUM_H 1 | ||
| 21 | |||
| 22 | #ifndef _SIGNAL_H | ||
| 23 | #error "Never include <bits/signum.h> directly; use <signal.h> instead." | ||
| 24 | #endif | ||
| 25 | |||
| 26 | /* Adjustments and additions to the signal number constants for | ||
| 27 | Linux/MIPS. */ | ||
| 28 | |||
| 29 | #define SIGEMT		 7	/* Emulator trap. */ | ||
| 30 | #define SIGPWR		19	/* Power failure imminent. */ | ||
| 31 | |||
| 32 | /* Historical signals specified by POSIX. */ | ||
| 33 | #define SIGBUS 	10	/* Bus error. */ | ||
| 34 | #define SIGSYS		12	/* Bad system call. */ | ||
| 35 | |||
| 36 | /* New(er) POSIX signals (1003.1-2008, 1003.1-2013). */ | ||
| 37 | #define SIGURG		21	/* Urgent data is available at a socket. */ | ||
| 38 | #define SIGSTOP		23	/* Stop, unblockable. */ | ||
| 39 | #define SIGTSTP		24	/* Keyboard stop. */ | ||
| 40 | #define SIGCONT		25	/* Continue. */ | ||
| 41 | #define SIGCHLD		18	/* Child terminated or stopped. */ | ||
| 42 | #define SIGTTIN		26	/* Background read from control terminal. */ | ||
| 43 | #define SIGTTOU		27	/* Background write to control terminal. */ | ||
| 44 | #define SIGPOLL		22	/* Pollable event occurred (System V). */ | ||
| 45 | #define SIGXCPU		30	/* CPU time limit exceeded. */ | ||
| 46 | #define SIGVTALRM	28	/* Virtual timer expired. */ | ||
| 47 | #define SIGPROF		29	/* Profiling timer expired. */ | ||
| 48 | #define SIGXFSZ		31	/* File size limit exceeded. */ | ||
| 49 | #define SIGUSR1		16	/* User-defined signal 1. */ | ||
| 50 | #define SIGUSR2		17	/* User-defined signal 2. */ | ||
| 51 | |||
| 52 | /* Nonstandard signals found in all modern POSIX systems | ||
| 53 | (including both BSD and Linux). */ | ||
| 54 | #define SIGWINCH	20	/* Window size change (4.3 BSD, Sun). */ | ||
| 55 | |||
| 56 | /* Archaic names for compatibility. */ | ||
| 57 | #define SIGIO		SIGPOLL	/* I/O now possible (4.2 BSD). */ | ||
| 58 | #define SIGIOT		SIGABRT	/* IOT instruction, abort() on a PDP-11. */ | ||
| 59 | #define SIGCLD		SIGCHLD /* Old System V name */ | ||
| 60 | |||
| 61 | /* By default no real-time signals are supported. */ | ||
| 62 | #define __SIGRTMIN	32 | ||
| 63 | #define __SIGRTMAX	127 | ||
| 64 | |||
| 65 | #endif	/* <signal.h> included. */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabin32/bits/socket-constants.h deleted-70| ... | @@ -1,70 +0,0 @@ | ||
| 1 | /* Socket constants which vary among Linux architectures. Version for MIPS. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SOCKET_H | ||
| 20 | # error "Never include <bits/socket-constants.h> directly; use <sys/socket.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #define SOL_SOCKET 65535 | ||
| 24 | #define SO_ACCEPTCONN 4105 | ||
| 25 | #define SO_BROADCAST 32 | ||
| 26 | #define SO_DONTROUTE 16 | ||
| 27 | #define SO_ERROR 4103 | ||
| 28 | #define SO_KEEPALIVE 8 | ||
| 29 | #define SO_LINGER 128 | ||
| 30 | #define SO_OOBINLINE 256 | ||
| 31 | #define SO_RCVBUF 4098 | ||
| 32 | #define SO_RCVLOWAT 4100 | ||
| 33 | #define SO_REUSEADDR 4 | ||
| 34 | #define SO_SNDBUF 4097 | ||
| 35 | #define SO_SNDLOWAT 4099 | ||
| 36 | #define SO_TYPE 4104 | ||
| 37 | |||
| 38 | #if __TIMESIZE == 64 | ||
| 39 | # define SO_RCVTIMEO 4102 | ||
| 40 | # define SO_SNDTIMEO 4101 | ||
| 41 | # define SO_TIMESTAMP 29 | ||
| 42 | # define SO_TIMESTAMPNS 35 | ||
| 43 | # define SO_TIMESTAMPING 37 | ||
| 44 | #else | ||
| 45 | # define SO_RCVTIMEO_OLD 4102 | ||
| 46 | # define SO_SNDTIMEO_OLD 4101 | ||
| 47 | # define SO_RCVTIMEO_NEW 66 | ||
| 48 | # define SO_SNDTIMEO_NEW 67 | ||
| 49 | |||
| 50 | # define SO_TIMESTAMP_OLD 29 | ||
| 51 | # define SO_TIMESTAMPNS_OLD 35 | ||
| 52 | # define SO_TIMESTAMPING_OLD 37 | ||
| 53 | # define SO_TIMESTAMP_NEW 63 | ||
| 54 | # define SO_TIMESTAMPNS_NEW 64 | ||
| 55 | # define SO_TIMESTAMPING_NEW 65 | ||
| 56 | |||
| 57 | # ifdef __USE_TIME64_REDIRECTS | ||
| 58 | # define SO_RCVTIMEO SO_RCVTIMEO_NEW | ||
| 59 | # define SO_SNDTIMEO SO_SNDTIMEO_NEW | ||
| 60 | # define SO_TIMESTAMP SO_TIMESTAMP_NEW | ||
| 61 | # define SO_TIMESTAMPNS SO_TIMESTAMPNS_NEW | ||
| 62 | # define SO_TIMESTAMPING SO_TIMESTAMPING_NEW | ||
| 63 | # else | ||
| 64 | # define SO_RCVTIMEO SO_RCVTIMEO_OLD | ||
| 65 | # define SO_SNDTIMEO SO_SNDTIMEO_OLD | ||
| 66 | # define SO_TIMESTAMP SO_TIMESTAMP_OLD | ||
| 67 | # define SO_TIMESTAMPNS SO_TIMESTAMPNS_OLD | ||
| 68 | # define SO_TIMESTAMPING SO_TIMESTAMPING_OLD | ||
| 69 | # endif | ||
| 70 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabin32/bits/socket_type.h deleted-55| ... | @@ -1,55 +0,0 @@ | ||
| 1 | /* Define enum __socket_type for Linux/MIPS. | ||
| 2 | Copyright (C) 1991-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SOCKET_H | ||
| 20 | # error "Never include <bits/socket_type.h> directly; use <sys/socket.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Types of sockets. */ | ||
| 24 | enum __socket_type | ||
| 25 | { | ||
| 26 | SOCK_DGRAM = 1,		/* Connectionless, unreliable datagrams | ||
| 27 | 				 of fixed maximum length. */ | ||
| 28 | #define SOCK_DGRAM SOCK_DGRAM | ||
| 29 | SOCK_STREAM = 2,		/* Sequenced, reliable, connection-based | ||
| 30 | 				 byte streams. */ | ||
| 31 | #define SOCK_STREAM SOCK_STREAM | ||
| 32 | SOCK_RAW = 3,			/* Raw protocol interface. */ | ||
| 33 | #define SOCK_RAW SOCK_RAW | ||
| 34 | SOCK_RDM = 4,			/* Reliably-delivered messages. */ | ||
| 35 | #define SOCK_RDM SOCK_RDM | ||
| 36 | SOCK_SEQPACKET = 5,		/* Sequenced, reliable, connection-based, | ||
| 37 | 				 datagrams of fixed maximum length. */ | ||
| 38 | #define SOCK_SEQPACKET SOCK_SEQPACKET | ||
| 39 | SOCK_DCCP = 6, | ||
| 40 | #define SOCK_DCCP SOCK_DCCP	/* Datagram Congestion Control Protocol. */ | ||
| 41 | SOCK_PACKET = 10,		/* Linux specific way of getting packets | ||
| 42 | 				 at the dev level. For writing rarp and | ||
| 43 | 				 other similar things on the user level. */ | ||
| 44 | #define SOCK_PACKET SOCK_PACKET | ||
| 45 | |||
| 46 | /* Flags to be ORed into the type parameter of socket and socketpair and | ||
| 47 | used for the flags parameter of paccept. */ | ||
| 48 | |||
| 49 | SOCK_CLOEXEC = 02000000,	/* Atomically set close-on-exec flag for the | ||
| 50 | 				 new descriptor(s). */ | ||
| 51 | #define SOCK_CLOEXEC SOCK_CLOEXEC | ||
| 52 | SOCK_NONBLOCK = 00000200	/* Atomically mark descriptor(s) as | ||
| 53 | 				 non-blocking. */ | ||
| 54 | #define SOCK_NONBLOCK SOCK_NONBLOCK | ||
| 55 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabin32/bits/statfs.h deleted-73| ... | @@ -1,73 +0,0 @@ | ||
| 1 | /* Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_STATFS_H | ||
| 19 | # error "Never include <bits/statfs.h> directly; use <sys/statfs.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | #include <bits/types.h> /* for __fsid_t and __fsblkcnt_t*/ | ||
| 23 | |||
| 24 | struct statfs | ||
| 25 | { | ||
| 26 | long int f_type; | ||
| 27 | #define f_fstyp f_type | ||
| 28 | long int f_bsize; | ||
| 29 | long int f_frsize;	/* Fragment size - unsupported */ | ||
| 30 | #ifndef __USE_FILE_OFFSET64 | ||
| 31 | __fsblkcnt_t f_blocks; | ||
| 32 | __fsblkcnt_t f_bfree; | ||
| 33 | __fsblkcnt_t f_files; | ||
| 34 | __fsblkcnt_t f_ffree; | ||
| 35 | __fsblkcnt_t f_bavail; | ||
| 36 | #else | ||
| 37 | __fsblkcnt64_t f_blocks; | ||
| 38 | __fsblkcnt64_t f_bfree; | ||
| 39 | __fsblkcnt64_t f_files; | ||
| 40 | __fsblkcnt64_t f_ffree; | ||
| 41 | __fsblkcnt64_t f_bavail; | ||
| 42 | #endif | ||
| 43 | |||
| 44 | 	/* Linux specials */ | ||
| 45 | __fsid_t f_fsid; | ||
| 46 | long int f_namelen; | ||
| 47 | long int f_flags; | ||
| 48 | long int f_spare[5]; | ||
| 49 | }; | ||
| 50 | |||
| 51 | #ifdef __USE_LARGEFILE64 | ||
| 52 | struct statfs64 | ||
| 53 | { | ||
| 54 | long int f_type; | ||
| 55 | #define f_fstyp f_type | ||
| 56 | long int f_bsize; | ||
| 57 | long int f_frsize;	/* Fragment size - unsupported */ | ||
| 58 | __fsblkcnt64_t f_blocks; | ||
| 59 | __fsblkcnt64_t f_bfree; | ||
| 60 | __fsblkcnt64_t f_files; | ||
| 61 | __fsblkcnt64_t f_ffree; | ||
| 62 | __fsblkcnt64_t f_bavail; | ||
| 63 | |||
| 64 | 	/* Linux specials */ | ||
| 65 | __fsid_t f_fsid; | ||
| 66 | long int f_namelen; | ||
| 67 | long int f_flags; | ||
| 68 | long int f_spare[5]; | ||
| 69 | }; | ||
| 70 | #endif | ||
| 71 | |||
| 72 | /* Tell code we have these members. */ | ||
| 73 | #define _STATFS_F_NAMELEN | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabin32/bits/struct_mutex.h deleted-56| ... | @@ -1,56 +0,0 @@ | ||
| 1 | /* MIPS internal mutex struct definitions. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <http://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _THREAD_MUTEX_INTERNAL_H | ||
| 20 | #define _THREAD_MUTEX_INTERNAL_H 1 | ||
| 21 | |||
| 22 | struct __pthread_mutex_s | ||
| 23 | { | ||
| 24 | int __lock; | ||
| 25 | unsigned int __count; | ||
| 26 | int __owner; | ||
| 27 | #if _MIPS_SIM == _ABI64 | ||
| 28 | unsigned int __nusers; | ||
| 29 | #endif | ||
| 30 | /* KIND must stay at this position in the structure to maintain | ||
| 31 | binary compatibility with static initializers. */ | ||
| 32 | int __kind; | ||
| 33 | #if _MIPS_SIM == _ABI64 | ||
| 34 | int __spins; | ||
| 35 | __pthread_list_t __list; | ||
| 36 | # define __PTHREAD_MUTEX_HAVE_PREV 1 | ||
| 37 | #else | ||
| 38 | unsigned int __nusers; | ||
| 39 | __extension__ union | ||
| 40 | { | ||
| 41 | int __spins; | ||
| 42 | __pthread_slist_t __list; | ||
| 43 | }; | ||
| 44 | # define __PTHREAD_MUTEX_HAVE_PREV 0 | ||
| 45 | #endif | ||
| 46 | }; | ||
| 47 | |||
| 48 | #if _MIPS_SIM == _ABI64 | ||
| 49 | # define __PTHREAD_MUTEX_INITIALIZER(__kind) \ | ||
| 50 | 0, 0, 0, 0, __kind, 0, { 0, 0 } | ||
| 51 | #else | ||
| 52 | # define __PTHREAD_MUTEX_INITIALIZER(__kind) \ | ||
| 53 | 0, 0, 0, __kind, 0, { 0 } | ||
| 54 | #endif | ||
| 55 | |||
| 56 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabin32/bits/struct_rwlock.h deleted-71| ... | @@ -1,71 +0,0 @@ | ||
| 1 | /* MIPS internal rwlock struct definitions. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <http://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _RWLOCK_INTERNAL_H | ||
| 20 | #define _RWLOCK_INTERNAL_H | ||
| 21 | |||
| 22 | struct __pthread_rwlock_arch_t | ||
| 23 | { | ||
| 24 | unsigned int __readers; | ||
| 25 | unsigned int __writers; | ||
| 26 | unsigned int __wrphase_futex; | ||
| 27 | unsigned int __writers_futex; | ||
| 28 | unsigned int __pad3; | ||
| 29 | unsigned int __pad4; | ||
| 30 | #if _MIPS_SIM == _ABI64 | ||
| 31 | int __cur_writer; | ||
| 32 | int __shared; | ||
| 33 | unsigned long int __pad1; | ||
| 34 | unsigned long int __pad2; | ||
| 35 | /* FLAGS must stay at this position in the structure to maintain | ||
| 36 | binary compatibility. */ | ||
| 37 | unsigned int __flags; | ||
| 38 | # else | ||
| 39 | # if __BYTE_ORDER == __BIG_ENDIAN | ||
| 40 | unsigned char __pad1; | ||
| 41 | unsigned char __pad2; | ||
| 42 | unsigned char __shared; | ||
| 43 | /* FLAGS must stay at this position in the structure to maintain | ||
| 44 | binary compatibility. */ | ||
| 45 | unsigned char __flags; | ||
| 46 | # else | ||
| 47 | /* FLAGS must stay at this position in the structure to maintain | ||
| 48 | binary compatibility. */ | ||
| 49 | unsigned char __flags; | ||
| 50 | unsigned char __shared; | ||
| 51 | unsigned char __pad1; | ||
| 52 | unsigned char __pad2; | ||
| 53 | # endif | ||
| 54 | int __cur_writer; | ||
| 55 | #endif | ||
| 56 | }; | ||
| 57 | |||
| 58 | #if _MIPS_SIM == _ABI64 | ||
| 59 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 60 | 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags | ||
| 61 | #else | ||
| 62 | # if __BYTE_ORDER == __BIG_ENDIAN | ||
| 63 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 64 | 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0 | ||
| 65 | # else | ||
| 66 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 67 | 0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0 | ||
| 68 | # endif | ||
| 69 | #endif | ||
| 70 | |||
| 71 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabin32/bits/termios-c_cc.h deleted-43| ... | @@ -1,43 +0,0 @@ | ||
| 1 | /* termios c_cc symbolic constant definitions. Linux/mips version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-c_cc.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* c_cc characters */ | ||
| 24 | #define VINTR		0	/* Interrupt character [ISIG]. */ | ||
| 25 | #define VQUIT		1	/* Quit character [ISIG]. */ | ||
| 26 | #define VERASE		2	/* Erase character [ICANON]. */ | ||
| 27 | #define VKILL		3	/* Kill-line character [ICANON]. */ | ||
| 28 | #define VMIN		4	/* Minimum number of bytes read at once [!ICANON]. */ | ||
| 29 | #define VTIME		5	/* Time-out value (tenths of a second) [!ICANON]. */ | ||
| 30 | #define VEOL2		6	/* Second EOL character [ICANON]. */ | ||
| 31 | #define VSWTC		7 | ||
| 32 | #define VSWTCH		VSWTC | ||
| 33 | #define VSTART		8	/* Start (X-ON) character [IXON, IXOFF]. */ | ||
| 34 | #define VSTOP		9	/* Stop (X-OFF) character [IXON, IXOFF]. */ | ||
| 35 | #define VSUSP		10	/* Suspend character [ISIG]. */ | ||
| 36 | 				/* VDSUSP is not supported on Linux. */ | ||
| 37 | /* #define VDSUSP	11	/ * Delayed suspend character [ISIG]. */ | ||
| 38 | #define VREPRINT	12	/* Reprint-line character [ICANON]. */ | ||
| 39 | #define VDISCARD	13	/* Discard character [IEXTEN]. */ | ||
| 40 | #define VWERASE		14	/* Word-erase character [ICANON]. */ | ||
| 41 | #define VLNEXT		15	/* Literal-next character [IEXTEN]. */ | ||
| 42 | #define VEOF		16	/* End-of-file character [ICANON]. */ | ||
| 43 | #define VEOL		17	/* End-of-line character [ICANON]. */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabin32/bits/termios-c_lflag.h deleted-46| ... | @@ -1,46 +0,0 @@ | ||
| 1 | /* termios local mode definitions. Linux/mips version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-c_lflag.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* c_lflag bits */ | ||
| 24 | #define ISIG	0000001		/* Enable signals. */ | ||
| 25 | #define ICANON	0000002		/* Do erase and kill processing. */ | ||
| 26 | #if defined __USE_MISC || (defined __USE_XOPEN && !defined __USE_XOPEN2K) | ||
| 27 | # define XCASE	0000004 | ||
| 28 | #endif | ||
| 29 | #define ECHO	0000010		/* Enable echo. */ | ||
| 30 | #define ECHOE	0000020		/* Visual erase for ERASE. */ | ||
| 31 | #define ECHOK	0000040		/* Echo NL after KILL. */ | ||
| 32 | #define ECHONL	0000100		/* Echo NL even if ECHO is off. */ | ||
| 33 | #define NOFLSH	0000200		/* Disable flush after interrupt. */ | ||
| 34 | #define IEXTEN	0000400		/* Enable DISCARD and LNEXT. */ | ||
| 35 | #ifdef __USE_MISC | ||
| 36 | # define ECHOCTL 0001000	/* Echo control characters as ^X. */ | ||
| 37 | # define ECHOPRT 0002000	/* Hardcopy visual erase. */ | ||
| 38 | # define ECHOKE	 0004000	/* Visual erase for KILL. */ | ||
| 39 | # define FLUSHO	0020000 | ||
| 40 | # define PENDIN	0040000		/* Retype pending input (state). */ | ||
| 41 | #endif | ||
| 42 | #define TOSTOP	0100000		/* Send SIGTTOU for background output. */ | ||
| 43 | #define ITOSTOP	TOSTOP | ||
| 44 | #ifdef __USE_MISC | ||
| 45 | # define EXTPROC 0200000 | ||
| 46 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabin32/bits/termios-struct.h deleted-34| ... | @@ -1,34 +0,0 @@ | ||
| 1 | /* struct termios definition. Linux/mips version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-struct.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #define NCCS 32 | ||
| 24 | struct termios | ||
| 25 | { | ||
| 26 | tcflag_t c_iflag;		/* input mode flags */ | ||
| 27 | tcflag_t c_oflag;		/* output mode flags */ | ||
| 28 | tcflag_t c_cflag;		/* control mode flags */ | ||
| 29 | tcflag_t c_lflag;		/* local mode flags */ | ||
| 30 | cc_t c_line;		/* line discipline */ | ||
| 31 | cc_t c_cc[NCCS];		/* control characters */ | ||
| 32 | #define _HAVE_STRUCT_TERMIOS_C_ISPEED 0 | ||
| 33 | #define _HAVE_STRUCT_TERMIOS_C_OSPEED 0 | ||
| 34 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabin32/bits/termios-tcflow.h deleted-26| ... | @@ -1,26 +0,0 @@ | ||
| 1 | /* termios local mode definitions. Linux/mips version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-tcflow.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* tcsetattr uses these */ | ||
| 24 | #define	TCSANOW		0x540e	/* Same as TCSETS; change immediately. */ | ||
| 25 | #define	TCSADRAIN	0x540f	/* Same as TCSETSW; change when pending output is written. */ | ||
| 26 | #define	TCSAFLUSH	0x5410	/* Same as TCSETSF; flush pending input before changing. */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabin32/bits/timerfd.h deleted-29| ... | @@ -1,29 +0,0 @@ | ||
| 1 | /* Copyright (C) 2008-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_SYS_TIMERFD_H | ||
| 19 | # error "Never use <bits/timerfd.h> directly; include <sys/timerfd.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Bits to be set in the FLAGS parameter of `timerfd_create'. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | TFD_CLOEXEC = 02000000, | ||
| 26 | #define TFD_CLOEXEC TFD_CLOEXEC | ||
| 27 | TFD_NONBLOCK = 00000200 | ||
| 28 | #define TFD_NONBLOCK TFD_NONBLOCK | ||
| 29 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabin32/bits/types/stack_t.h deleted-33| ... | @@ -1,33 +0,0 @@ | ||
| 1 | /* Define stack_t. MIPS Linux version. | ||
| 2 | Copyright (C) 1998-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef __stack_t_defined | ||
| 20 | #define __stack_t_defined 1 | ||
| 21 | |||
| 22 | #define __need_size_t | ||
| 23 | #include <stddef.h> | ||
| 24 | |||
| 25 | /* Structure describing a signal stack. */ | ||
| 26 | typedef struct | ||
| 27 | { | ||
| 28 | void *ss_sp; | ||
| 29 | size_t ss_size; | ||
| 30 | int ss_flags; | ||
| 31 | } stack_t; | ||
| 32 | |||
| 33 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabin32/bits/types/struct_msqid_ds.h deleted-62| ... | @@ -1,62 +0,0 @@ | ||
| 1 | /* Linux/MIPS implementation of the SysV message struct msqid_ds. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_MSG_H | ||
| 20 | # error "Never use <bits/msq.h> directly; include <sys/msg.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <bits/types/time_t.h> | ||
| 24 | |||
| 25 | /* Structure of record for one message inside the kernel. | ||
| 26 | The type `struct msg' is opaque. */ | ||
| 27 | struct msqid_ds | ||
| 28 | { | ||
| 29 | #ifdef __USE_TIME64_REDIRECTS | ||
| 30 | # include <bits/types/struct_msqid64_ds_helper.h> | ||
| 31 | #else | ||
| 32 | struct ipc_perm msg_perm;	/* structure describing operation permission */ | ||
| 33 | # if __TIMESIZE == 32 | ||
| 34 | # ifdef __MIPSEL__ | ||
| 35 | __time_t msg_stime;		/* time of last msgsnd command */ | ||
| 36 | unsigned long int __msg_stime_high; | ||
| 37 | __time_t msg_rtime;		/* time of last msgsnd command */ | ||
| 38 | unsigned long int __msg_rtime_high; | ||
| 39 | __time_t msg_ctime;		/* time of last change */ | ||
| 40 | unsigned long int __msg_ctime_high; | ||
| 41 | # else | ||
| 42 | unsigned long int __msg_stime_high; | ||
| 43 | __time_t msg_stime;		/* time of last msgsnd command */ | ||
| 44 | unsigned long int __msg_rtime_high; | ||
| 45 | __time_t msg_rtime;		/* time of last msgsnd command */ | ||
| 46 | unsigned long int __msg_ctime_high; | ||
| 47 | __time_t msg_ctime;		/* time of last change */ | ||
| 48 | # endif | ||
| 49 | # else | ||
| 50 | __time_t msg_stime;		/* time of last msgsnd command */ | ||
| 51 | __time_t msg_rtime;		/* time of last msgsnd command */ | ||
| 52 | __time_t msg_ctime;		/* time of last change */ | ||
| 53 | # endif | ||
| 54 | __syscall_ulong_t __msg_cbytes; /* current number of bytes on queue */ | ||
| 55 | msgqnum_t msg_qnum;		/* number of messages currently on queue */ | ||
| 56 | msglen_t msg_qbytes;		/* max number of bytes allowed on queue */ | ||
| 57 | __pid_t msg_lspid;		/* pid of last msgsnd() */ | ||
| 58 | __pid_t msg_lrpid;		/* pid of last msgrcv() */ | ||
| 59 | __syscall_ulong_t __glibc_reserved4; | ||
| 60 | __syscall_ulong_t __glibc_reserved5; | ||
| 61 | #endif | ||
| 62 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabin32/bits/types/struct_semid_ds.h deleted-36| ... | @@ -1,36 +0,0 @@ | ||
| 1 | /* MIPS implementation of the semaphore struct semid_ds | ||
| 2 | Copyright (C) 1995-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SEM_H | ||
| 20 | # error "Never include <bits/types/struct_semid_ds.h> directly; use <sys/sem.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Data structure describing a set of semaphores. */ | ||
| 24 | struct semid_ds | ||
| 25 | { | ||
| 26 | #ifdef __USE_TIME64_REDIRECTS | ||
| 27 | # include <bits/types/struct_semid64_ds_helper.h> | ||
| 28 | #else | ||
| 29 | struct ipc_perm sem_perm;		/* operation permission struct */ | ||
| 30 | __time_t sem_otime;	/* last semop() time */ | ||
| 31 | __time_t sem_ctime;	/* last time changed by semctl() */ | ||
| 32 | __syscall_ulong_t sem_nsems;		/* number of semaphores in set */ | ||
| 33 | __syscall_ulong_t __sem_otime_high; | ||
| 34 | __syscall_ulong_t __sem_ctime_high; | ||
| 35 | #endif | ||
| 36 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabin32/bits/types/struct_shmid_ds.h deleted-53| ... | @@ -1,53 +0,0 @@ | ||
| 1 | /* Linux/MIPS implementation of the shared memory struct shmid_ds. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SHM_H | ||
| 20 | # error "Never include <bits/types/struct_shmid_ds.h> directly; use <sys/shm.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Data structure describing a shared memory segment. */ | ||
| 24 | struct shmid_ds | ||
| 25 | { | ||
| 26 | #ifdef __USE_TIME64_REDIRECTS | ||
| 27 | # include <bits/types/struct_shmid64_ds_helper.h> | ||
| 28 | #else | ||
| 29 | struct ipc_perm shm_perm;		/* operation permission struct */ | ||
| 30 | size_t shm_segsz;			/* size of segment in bytes */ | ||
| 31 | # if __TIMESIZE == 32 | ||
| 32 | __time_t shm_atime;			/* time of last shmat() */ | ||
| 33 | __time_t shm_dtime;			/* time of last shmdt() */ | ||
| 34 | __time_t shm_ctime;			/* time of last change by shmctl() */ | ||
| 35 | # else | ||
| 36 | __time_t shm_atime;			/* time of last shmat() */ | ||
| 37 | __time_t shm_dtime;			/* time of last shmdt() */ | ||
| 38 | __time_t shm_ctime;			/* time of last change by shmctl() */ | ||
| 39 | # endif | ||
| 40 | __pid_t shm_cpid;			/* pid of creator */ | ||
| 41 | __pid_t shm_lpid;			/* pid of last shmop */ | ||
| 42 | shmatt_t shm_nattch;		/* number of current attaches */ | ||
| 43 | # if __TIMESIZE == 32 | ||
| 44 | unsigned short int __shm_atime_high; | ||
| 45 | unsigned short int __shm_dtime_high; | ||
| 46 | unsigned short int __shm_ctime_high; | ||
| 47 | unsigned short int __glibc_reserved4; | ||
| 48 | # else | ||
| 49 | __syscall_ulong_t __glibc_reserved5; | ||
| 50 | __syscall_ulong_t __glibc_reserved6; | ||
| 51 | # endif | ||
| 52 | #endif | ||
| 53 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabin32/bits/typesizes.h deleted-95| ... | @@ -1,95 +0,0 @@ | ||
| 1 | /* bits/typesizes.h -- underlying types for *_t. MIPS version. | ||
| 2 | Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_TYPES_H | ||
| 20 | # error "Never include <bits/typesizes.h> directly; use <sys/types.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef	_BITS_TYPESIZES_H | ||
| 24 | #define	_BITS_TYPESIZES_H	1 | ||
| 25 | |||
| 26 | /* See <bits/types.h> for the meaning of these macros. This file exists so | ||
| 27 | that <bits/types.h> need not vary across different GNU platforms. */ | ||
| 28 | |||
| 29 | #define __DEV_T_TYPE		__UQUAD_TYPE | ||
| 30 | #define __UID_T_TYPE		__U32_TYPE | ||
| 31 | #define __GID_T_TYPE		__U32_TYPE | ||
| 32 | #define __INO_T_TYPE		__ULONGWORD_TYPE | ||
| 33 | #define __INO64_T_TYPE		__UQUAD_TYPE | ||
| 34 | #define __MODE_T_TYPE		__U32_TYPE | ||
| 35 | #define __NLINK_T_TYPE		__UWORD_TYPE | ||
| 36 | #define __OFF_T_TYPE		__SLONGWORD_TYPE | ||
| 37 | #define __OFF64_T_TYPE		__SQUAD_TYPE | ||
| 38 | #define __PID_T_TYPE		__S32_TYPE | ||
| 39 | #define __RLIM_T_TYPE		__ULONGWORD_TYPE | ||
| 40 | #define __RLIM64_T_TYPE		__UQUAD_TYPE | ||
| 41 | #define	__BLKCNT_T_TYPE		__SLONGWORD_TYPE | ||
| 42 | #define	__BLKCNT64_T_TYPE	__SQUAD_TYPE | ||
| 43 | #define	__FSBLKCNT_T_TYPE	__ULONGWORD_TYPE | ||
| 44 | #define	__FSBLKCNT64_T_TYPE	__UQUAD_TYPE | ||
| 45 | #define	__FSFILCNT_T_TYPE	__ULONGWORD_TYPE | ||
| 46 | #define	__FSFILCNT64_T_TYPE	__UQUAD_TYPE | ||
| 47 | #define	__FSWORD_T_TYPE		__SWORD_TYPE | ||
| 48 | #define	__ID_T_TYPE		__U32_TYPE | ||
| 49 | #define __CLOCK_T_TYPE		__SLONGWORD_TYPE | ||
| 50 | #define __TIME_T_TYPE		__SLONGWORD_TYPE | ||
| 51 | #define __USECONDS_T_TYPE	__U32_TYPE | ||
| 52 | #define __SUSECONDS_T_TYPE	__SLONGWORD_TYPE | ||
| 53 | #define __SUSECONDS64_T_TYPE	__SQUAD_TYPE | ||
| 54 | #define __DADDR_T_TYPE		__S32_TYPE | ||
| 55 | #define __KEY_T_TYPE		__S32_TYPE | ||
| 56 | #define __CLOCKID_T_TYPE	__S32_TYPE | ||
| 57 | #define __TIMER_T_TYPE		void * | ||
| 58 | #define __BLKSIZE_T_TYPE	__SLONGWORD_TYPE | ||
| 59 | #define __FSID_T_TYPE		struct { int __val[2]; } | ||
| 60 | #define __SSIZE_T_TYPE		__SWORD_TYPE | ||
| 61 | #define __SYSCALL_SLONG_TYPE	__SLONGWORD_TYPE | ||
| 62 | #define __SYSCALL_ULONG_TYPE	__ULONGWORD_TYPE | ||
| 63 | #define __CPU_MASK_TYPE 	__ULONGWORD_TYPE | ||
| 64 | |||
| 65 | #ifdef __LP64__ | ||
| 66 | /* Tell the libc code that off_t and off64_t are actually the same type | ||
| 67 | for all ABI purposes, even if possibly expressed as different base types | ||
| 68 | for C type-checking purposes. */ | ||
| 69 | # define __OFF_T_MATCHES_OFF64_T	1 | ||
| 70 | |||
| 71 | /* Same for ino_t and ino64_t. */ | ||
| 72 | # define __INO_T_MATCHES_INO64_T	1 | ||
| 73 | |||
| 74 | /* And for rlim_t and rlim64_t. */ | ||
| 75 | # define __RLIM_T_MATCHES_RLIM64_T	1 | ||
| 76 | |||
| 77 | /* And for fsblkcnt_t, fsblkcnt64_t, fsfilcnt_t and fsfilcnt64_t. */ | ||
| 78 | # define __STATFS_MATCHES_STATFS64 1 | ||
| 79 | |||
| 80 | /* And for getitimer, setitimer and rusage */ | ||
| 81 | # define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 1 | ||
| 82 | #else | ||
| 83 | # define __RLIM_T_MATCHES_RLIM64_T	0 | ||
| 84 | |||
| 85 | # define __STATFS_MATCHES_STATFS64 0 | ||
| 86 | |||
| 87 | /* And for getitimer, setitimer and rusage */ | ||
| 88 | # define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 0 | ||
| 89 | #endif | ||
| 90 | |||
| 91 | /* Number of descriptors that can fit in an `fd_set'. */ | ||
| 92 | #define	__FD_SETSIZE		1024 | ||
| 93 | |||
| 94 | |||
| 95 | #endif /* bits/typesizes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/mips64el-linux-gnuabin32/ieee754.h deleted-326| ... | @@ -1,326 +0,0 @@ | ||
| 1 | /* Copyright (C) 1992-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _IEEE754_H | ||
| 19 | #define _IEEE754_H 1 | ||
| 20 | |||
| 21 | #include <features.h> | ||
| 22 | |||
| 23 | #include <bits/endian.h> | ||
| 24 | |||
| 25 | #ifndef __LDBL_MANT_DIG__ | ||
| 26 | # include <float.h> | ||
| 27 | # define __LDBL_MANT_DIG__ LDBL_MANT_DIG | ||
| 28 | #endif | ||
| 29 | |||
| 30 | __BEGIN_DECLS | ||
| 31 | |||
| 32 | union ieee754_float | ||
| 33 | { | ||
| 34 | float f; | ||
| 35 | |||
| 36 | /* This is the IEEE 754 single-precision format. */ | ||
| 37 | struct | ||
| 38 | { | ||
| 39 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 40 | 	unsigned int negative:1; | ||
| 41 | 	unsigned int exponent:8; | ||
| 42 | 	unsigned int mantissa:23; | ||
| 43 | #endif				/* Big endian. */ | ||
| 44 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 45 | 	unsigned int mantissa:23; | ||
| 46 | 	unsigned int exponent:8; | ||
| 47 | 	unsigned int negative:1; | ||
| 48 | #endif				/* Little endian. */ | ||
| 49 | } ieee; | ||
| 50 | |||
| 51 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 52 | struct | ||
| 53 | { | ||
| 54 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 55 | 	unsigned int negative:1; | ||
| 56 | 	unsigned int exponent:8; | ||
| 57 | 	unsigned int quiet_nan:1; | ||
| 58 | 	unsigned int mantissa:22; | ||
| 59 | #endif				/* Big endian. */ | ||
| 60 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 61 | 	unsigned int mantissa:22; | ||
| 62 | 	unsigned int quiet_nan:1; | ||
| 63 | 	unsigned int exponent:8; | ||
| 64 | 	unsigned int negative:1; | ||
| 65 | #endif				/* Little endian. */ | ||
| 66 | } ieee_nan; | ||
| 67 | }; | ||
| 68 | |||
| 69 | #define IEEE754_FLOAT_BIAS	0x7f /* Added to exponent. */ | ||
| 70 | |||
| 71 | |||
| 72 | union ieee754_double | ||
| 73 | { | ||
| 74 | double d; | ||
| 75 | |||
| 76 | /* This is the IEEE 754 double-precision format. */ | ||
| 77 | struct | ||
| 78 | { | ||
| 79 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 80 | 	unsigned int negative:1; | ||
| 81 | 	unsigned int exponent:11; | ||
| 82 | 	/* Together these comprise the mantissa. */ | ||
| 83 | 	unsigned int mantissa0:20; | ||
| 84 | 	unsigned int mantissa1:32; | ||
| 85 | #endif				/* Big endian. */ | ||
| 86 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 87 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 88 | 	unsigned int mantissa0:20; | ||
| 89 | 	unsigned int exponent:11; | ||
| 90 | 	unsigned int negative:1; | ||
| 91 | 	unsigned int mantissa1:32; | ||
| 92 | # else | ||
| 93 | 	/* Together these comprise the mantissa. */ | ||
| 94 | 	unsigned int mantissa1:32; | ||
| 95 | 	unsigned int mantissa0:20; | ||
| 96 | 	unsigned int exponent:11; | ||
| 97 | 	unsigned int negative:1; | ||
| 98 | # endif | ||
| 99 | #endif				/* Little endian. */ | ||
| 100 | } ieee; | ||
| 101 | |||
| 102 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 103 | struct | ||
| 104 | { | ||
| 105 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 106 | 	unsigned int negative:1; | ||
| 107 | 	unsigned int exponent:11; | ||
| 108 | 	unsigned int quiet_nan:1; | ||
| 109 | 	/* Together these comprise the mantissa. */ | ||
| 110 | 	unsigned int mantissa0:19; | ||
| 111 | 	unsigned int mantissa1:32; | ||
| 112 | #else | ||
| 113 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 114 | 	unsigned int mantissa0:19; | ||
| 115 | 	unsigned int quiet_nan:1; | ||
| 116 | 	unsigned int exponent:11; | ||
| 117 | 	unsigned int negative:1; | ||
| 118 | 	unsigned int mantissa1:32; | ||
| 119 | # else | ||
| 120 | 	/* Together these comprise the mantissa. */ | ||
| 121 | 	unsigned int mantissa1:32; | ||
| 122 | 	unsigned int mantissa0:19; | ||
| 123 | 	unsigned int quiet_nan:1; | ||
| 124 | 	unsigned int exponent:11; | ||
| 125 | 	unsigned int negative:1; | ||
| 126 | # endif | ||
| 127 | #endif | ||
| 128 | } ieee_nan; | ||
| 129 | }; | ||
| 130 | |||
| 131 | #define IEEE754_DOUBLE_BIAS	0x3ff /* Added to exponent. */ | ||
| 132 | |||
| 133 | #if __LDBL_MANT_DIG__ == 113 | ||
| 134 | |||
| 135 | union ieee854_long_double | ||
| 136 | { | ||
| 137 | long double d; | ||
| 138 | |||
| 139 | /* This is the IEEE 854 quad-precision format. */ | ||
| 140 | struct | ||
| 141 | { | ||
| 142 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 143 | 	unsigned int negative:1; | ||
| 144 | 	unsigned int exponent:15; | ||
| 145 | 	/* Together these comprise the mantissa. */ | ||
| 146 | 	unsigned int mantissa0:16; | ||
| 147 | 	unsigned int mantissa1:32; | ||
| 148 | 	unsigned int mantissa2:32; | ||
| 149 | 	unsigned int mantissa3:32; | ||
| 150 | #endif				/* Big endian. */ | ||
| 151 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 152 | 	/* Together these comprise the mantissa. */ | ||
| 153 | 	unsigned int mantissa3:32; | ||
| 154 | 	unsigned int mantissa2:32; | ||
| 155 | 	unsigned int mantissa1:32; | ||
| 156 | 	unsigned int mantissa0:16; | ||
| 157 | 	unsigned int exponent:15; | ||
| 158 | 	unsigned int negative:1; | ||
| 159 | #endif				/* Little endian. */ | ||
| 160 | } ieee; | ||
| 161 | |||
| 162 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 163 | struct | ||
| 164 | { | ||
| 165 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 166 | 	unsigned int negative:1; | ||
| 167 | 	unsigned int exponent:15; | ||
| 168 | 	unsigned int quiet_nan:1; | ||
| 169 | 	/* Together these comprise the mantissa. */ | ||
| 170 | 	unsigned int mantissa0:15; | ||
| 171 | 	unsigned int mantissa1:32; | ||
| 172 | 	unsigned int mantissa2:32; | ||
| 173 | 	unsigned int mantissa3:32; | ||
| 174 | #endif				/* Big endian. */ | ||
| 175 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 176 | 	/* Together these comprise the mantissa. */ | ||
| 177 | 	unsigned int mantissa3:32; | ||
| 178 | 	unsigned int mantissa2:32; | ||
| 179 | 	unsigned int mantissa1:32; | ||
| 180 | 	unsigned int mantissa0:15; | ||
| 181 | 	unsigned int quiet_nan:1; | ||
| 182 | 	unsigned int exponent:15; | ||
| 183 | 	unsigned int negative:1; | ||
| 184 | #endif				/* Little endian. */ | ||
| 185 | } ieee_nan; | ||
| 186 | }; | ||
| 187 | |||
| 188 | #define IEEE854_LONG_DOUBLE_BIAS 0x3fff /* Added to exponent. */ | ||
| 189 | |||
| 190 | #elif __LDBL_MANT_DIG__ == 64 | ||
| 191 | |||
| 192 | union ieee854_long_double | ||
| 193 | { | ||
| 194 | long double d; | ||
| 195 | |||
| 196 | /* This is the IEEE 854 double-extended-precision format. */ | ||
| 197 | struct | ||
| 198 | { | ||
| 199 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 200 | 	unsigned int negative:1; | ||
| 201 | 	unsigned int exponent:15; | ||
| 202 | 	unsigned int empty:16; | ||
| 203 | 	unsigned int mantissa0:32; | ||
| 204 | 	unsigned int mantissa1:32; | ||
| 205 | #endif | ||
| 206 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 207 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 208 | 	unsigned int exponent:15; | ||
| 209 | 	unsigned int negative:1; | ||
| 210 | 	unsigned int empty:16; | ||
| 211 | 	unsigned int mantissa0:32; | ||
| 212 | 	unsigned int mantissa1:32; | ||
| 213 | # else | ||
| 214 | 	unsigned int mantissa1:32; | ||
| 215 | 	unsigned int mantissa0:32; | ||
| 216 | 	unsigned int exponent:15; | ||
| 217 | 	unsigned int negative:1; | ||
| 218 | 	unsigned int empty:16; | ||
| 219 | # endif | ||
| 220 | #endif | ||
| 221 | } ieee; | ||
| 222 | |||
| 223 | /* This is for NaNs in the IEEE 854 double-extended-precision format. */ | ||
| 224 | struct | ||
| 225 | { | ||
| 226 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 227 | 	unsigned int negative:1; | ||
| 228 | 	unsigned int exponent:15; | ||
| 229 | 	unsigned int empty:16; | ||
| 230 | 	unsigned int one:1; | ||
| 231 | 	unsigned int quiet_nan:1; | ||
| 232 | 	unsigned int mantissa0:30; | ||
| 233 | 	unsigned int mantissa1:32; | ||
| 234 | #endif | ||
| 235 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 236 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 237 | 	unsigned int exponent:15; | ||
| 238 | 	unsigned int negative:1; | ||
| 239 | 	unsigned int empty:16; | ||
| 240 | 	unsigned int mantissa0:30; | ||
| 241 | 	unsigned int quiet_nan:1; | ||
| 242 | 	unsigned int one:1; | ||
| 243 | 	unsigned int mantissa1:32; | ||
| 244 | # else | ||
| 245 | 	unsigned int mantissa1:32; | ||
| 246 | 	unsigned int mantissa0:30; | ||
| 247 | 	unsigned int quiet_nan:1; | ||
| 248 | 	unsigned int one:1; | ||
| 249 | 	unsigned int exponent:15; | ||
| 250 | 	unsigned int negative:1; | ||
| 251 | 	unsigned int empty:16; | ||
| 252 | # endif | ||
| 253 | #endif | ||
| 254 | } ieee_nan; | ||
| 255 | }; | ||
| 256 | |||
| 257 | #define IEEE854_LONG_DOUBLE_BIAS 0x3fff | ||
| 258 | |||
| 259 | #elif __LDBL_MANT_DIG__ == 53 | ||
| 260 | |||
| 261 | union ieee854_long_double | ||
| 262 | { | ||
| 263 | long double d; | ||
| 264 | |||
| 265 | /* This is the IEEE 754 double-precision format. */ | ||
| 266 | struct | ||
| 267 | { | ||
| 268 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 269 | 	unsigned int negative:1; | ||
| 270 | 	unsigned int exponent:11; | ||
| 271 | 	/* Together these comprise the mantissa. */ | ||
| 272 | 	unsigned int mantissa0:20; | ||
| 273 | 	unsigned int mantissa1:32; | ||
| 274 | #endif				/* Big endian. */ | ||
| 275 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 276 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 277 | 	unsigned int mantissa0:20; | ||
| 278 | 	unsigned int exponent:11; | ||
| 279 | 	unsigned int negative:1; | ||
| 280 | 	unsigned int mantissa1:32; | ||
| 281 | # else | ||
| 282 | 	/* Together these comprise the mantissa. */ | ||
| 283 | 	unsigned int mantissa1:32; | ||
| 284 | 	unsigned int mantissa0:20; | ||
| 285 | 	unsigned int exponent:11; | ||
| 286 | 	unsigned int negative:1; | ||
| 287 | # endif | ||
| 288 | #endif				/* Little endian. */ | ||
| 289 | } ieee; | ||
| 290 | |||
| 291 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 292 | struct | ||
| 293 | { | ||
| 294 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 295 | 	unsigned int negative:1; | ||
| 296 | 	unsigned int exponent:11; | ||
| 297 | 	unsigned int quiet_nan:1; | ||
| 298 | 	/* Together these comprise the mantissa. */ | ||
| 299 | 	unsigned int mantissa0:19; | ||
| 300 | 	unsigned int mantissa1:32; | ||
| 301 | #else | ||
| 302 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 303 | 	unsigned int mantissa0:19; | ||
| 304 | 	unsigned int quiet_nan:1; | ||
| 305 | 	unsigned int exponent:11; | ||
| 306 | 	unsigned int negative:1; | ||
| 307 | 	unsigned int mantissa1:32; | ||
| 308 | # else | ||
| 309 | 	/* Together these comprise the mantissa. */ | ||
| 310 | 	unsigned int mantissa1:32; | ||
| 311 | 	unsigned int mantissa0:19; | ||
| 312 | 	unsigned int quiet_nan:1; | ||
| 313 | 	unsigned int exponent:11; | ||
| 314 | 	unsigned int negative:1; | ||
| 315 | # endif | ||
| 316 | #endif | ||
| 317 | } ieee_nan; | ||
| 318 | }; | ||
| 319 | |||
| 320 | #define IEEE854_LONG_DOUBLE_BIAS	0x3ff /* Added to exponent. */ | ||
| 321 | |||
| 322 | #endif /* __LDBL_MANT_DIG__ == 53 */ | ||
| 323 | |||
| 324 | __END_DECLS | ||
| 325 | |||
| 326 | #endif /* ieee754.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabi/bits/dlfcn.h deleted-64| ... | @@ -1,64 +0,0 @@ | ||
| 1 | /* System dependent definitions for run-time dynamic loading. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _DLFCN_H | ||
| 20 | # error "Never use <bits/dlfcn.h> directly; include <dlfcn.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* The MODE argument to `dlopen' contains one of the following: */ | ||
| 24 | #define RTLD_LAZY	0x0001	/* Lazy function call binding. */ | ||
| 25 | #define RTLD_NOW	0x0002	/* Immediate function call binding. */ | ||
| 26 | #define RTLD_BINDING_MASK 0x3	/* Mask of binding time value. */ | ||
| 27 | #define RTLD_NOLOAD	0x00008	/* Do not load the object. */ | ||
| 28 | #define RTLD_DEEPBIND	0x00010	/* Use deep binding. */ | ||
| 29 | |||
| 30 | /* If the following bit is set in the MODE argument to `dlopen', | ||
| 31 | the symbols of the loaded object and its dependencies are made | ||
| 32 | visible as if the object were linked directly into the program. */ | ||
| 33 | #define RTLD_GLOBAL	0x0004 | ||
| 34 | |||
| 35 | /* Unix98 demands the following flag which is the inverse to RTLD_GLOBAL. | ||
| 36 | The implementation does this by default and so we can define the | ||
| 37 | value to zero. */ | ||
| 38 | #define RTLD_LOCAL 0 | ||
| 39 | |||
| 40 | /* Do not delete object when closed. */ | ||
| 41 | #define RTLD_NODELETE	0x01000 | ||
| 42 | |||
| 43 | #ifdef __USE_GNU | ||
| 44 | /* To support profiling of shared objects it is a good idea to call | ||
| 45 | the function found using `dlsym' using the following macro since | ||
| 46 | these calls do not use the PLT. But this would mean the dynamic | ||
| 47 | loader has no chance to find out when the function is called. The | ||
| 48 | macro applies the necessary magic so that profiling is possible. | ||
| 49 | Rewrite | ||
| 50 | 	foo = (*fctp) (arg1, arg2); | ||
| 51 | into | ||
| 52 | foo = DL_CALL_FCT (fctp, (arg1, arg2)); | ||
| 53 | */ | ||
| 54 | # define DL_CALL_FCT(fctp, args) \ | ||
| 55 | (_dl_mcount_wrapper_check ((void *) (fctp)), (*(fctp)) args) | ||
| 56 | |||
| 57 | __BEGIN_DECLS | ||
| 58 | |||
| 59 | /* This function calls the profiling functions. */ | ||
| 60 | extern void _dl_mcount_wrapper_check (void *__selfpc) __THROW; | ||
| 61 | |||
| 62 | __END_DECLS | ||
| 63 | |||
| 64 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabi/bits/errno.h deleted-52| ... | @@ -1,52 +0,0 @@ | ||
| 1 | /* Error constants. MIPS/Linux specific version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_ERRNO_H | ||
| 20 | |||
| 21 | #if !defined _ERRNO_H | ||
| 22 | # error "Never include <bits/errno.h> directly; use <errno.h> instead." | ||
| 23 | #endif | ||
| 24 | |||
| 25 | # include <linux/errno.h> | ||
| 26 | |||
| 27 | /* Older Linux headers do not define these constants. */ | ||
| 28 | # ifndef ENOTSUP | ||
| 29 | # define ENOTSUP		EOPNOTSUPP | ||
| 30 | # endif | ||
| 31 | |||
| 32 | # ifndef ECANCELED | ||
| 33 | # define ECANCELED		158 | ||
| 34 | # endif | ||
| 35 | |||
| 36 | # ifndef EOWNERDEAD | ||
| 37 | # define EOWNERDEAD		165 | ||
| 38 | # endif | ||
| 39 | |||
| 40 | # ifndef ENOTRECOVERABLE | ||
| 41 | # define ENOTRECOVERABLE	166 | ||
| 42 | # endif | ||
| 43 | |||
| 44 | # ifndef ERFKILL | ||
| 45 | # define ERFKILL		167 | ||
| 46 | # endif | ||
| 47 | |||
| 48 | # ifndef EHWPOISON | ||
| 49 | # define EHWPOISON		168 | ||
| 50 | # endif | ||
| 51 | |||
| 52 | #endif /* bits/errno.h. */ | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabi/bits/eventfd.h deleted-31| ... | @@ -1,31 +0,0 @@ | ||
| 1 | /* Copyright (C) 2007-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_SYS_EVENTFD_H | ||
| 19 | # error "Never use <bits/eventfd.h> directly; include <sys/eventfd.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Flags for eventfd. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | EFD_SEMAPHORE = 00000001, | ||
| 26 | #define EFD_SEMAPHORE EFD_SEMAPHORE | ||
| 27 | EFD_CLOEXEC = 02000000, | ||
| 28 | #define EFD_CLOEXEC EFD_CLOEXEC | ||
| 29 | EFD_NONBLOCK = 00000200 | ||
| 30 | #define EFD_NONBLOCK EFD_NONBLOCK | ||
| 31 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabi/bits/floatn.h deleted-97| ... | @@ -1,97 +0,0 @@ | ||
| 1 | /* Macros to control TS 18661-3 glibc features on MIPS platforms. | ||
| 2 | Copyright (C) 2017-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_FLOATN_H | ||
| 20 | #define _BITS_FLOATN_H | ||
| 21 | |||
| 22 | #include <features.h> | ||
| 23 | #include <bits/long-double.h> | ||
| 24 | |||
| 25 | /* Defined to 1 if the current compiler invocation provides a | ||
| 26 | floating-point type with the IEEE 754 binary128 format, and this | ||
| 27 | glibc includes corresponding *f128 interfaces for it. */ | ||
| 28 | #ifndef __NO_LONG_DOUBLE_MATH | ||
| 29 | # define __HAVE_FLOAT128 1 | ||
| 30 | #else | ||
| 31 | /* glibc does not support _Float128 for platforms where long double is | ||
| 32 | normally binary128 when building with long double as binary64. | ||
| 33 | GCC's default for supported scalar modes does not support it either | ||
| 34 | in that case. */ | ||
| 35 | # define __HAVE_FLOAT128 0 | ||
| 36 | #endif | ||
| 37 | |||
| 38 | /* Defined to 1 if __HAVE_FLOAT128 is 1 and the type is ABI-distinct | ||
| 39 | from the default float, double and long double types in this glibc. */ | ||
| 40 | #define __HAVE_DISTINCT_FLOAT128 0 | ||
| 41 | |||
| 42 | /* Defined to 1 if the current compiler invocation provides a | ||
| 43 | floating-point type with the right format for _Float64x, and this | ||
| 44 | glibc includes corresponding *f64x interfaces for it. */ | ||
| 45 | #define __HAVE_FLOAT64X __HAVE_FLOAT128 | ||
| 46 | |||
| 47 | /* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format | ||
| 48 | of long double. Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has | ||
| 49 | the format of _Float128, which must be different from that of long | ||
| 50 | double. */ | ||
| 51 | #define __HAVE_FLOAT64X_LONG_DOUBLE __HAVE_FLOAT128 | ||
| 52 | |||
| 53 | #ifndef __ASSEMBLER__ | ||
| 54 | |||
| 55 | /* Defined to concatenate the literal suffix to be used with _Float128 | ||
| 56 | types, if __HAVE_FLOAT128 is 1. */ | ||
| 57 | # if __HAVE_FLOAT128 | ||
| 58 | # if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) | ||
| 59 | /* The literal suffix f128 exists only since GCC 7.0. */ | ||
| 60 | # define __f128(x) x##l | ||
| 61 | # else | ||
| 62 | # define __f128(x) x##f128 | ||
| 63 | # endif | ||
| 64 | # endif | ||
| 65 | |||
| 66 | /* Defined to a complex binary128 type if __HAVE_FLOAT128 is 1. */ | ||
| 67 | # if __HAVE_FLOAT128 | ||
| 68 | # if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) | ||
| 69 | # define __CFLOAT128 _Complex long double | ||
| 70 | # else | ||
| 71 | # define __CFLOAT128 _Complex _Float128 | ||
| 72 | # endif | ||
| 73 | # endif | ||
| 74 | |||
| 75 | /* The remaining of this file provides support for older compilers. */ | ||
| 76 | # if __HAVE_FLOAT128 | ||
| 77 | |||
| 78 | /* The type _Float128 exists only since GCC 7.0. */ | ||
| 79 | # if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) | ||
| 80 | typedef long double _Float128; | ||
| 81 | # endif | ||
| 82 | |||
| 83 | /* Various built-in functions do not exist before GCC 7.0. */ | ||
| 84 | # if !__GNUC_PREREQ (7, 0) | ||
| 85 | # define __builtin_huge_valf128() (__builtin_huge_vall ()) | ||
| 86 | # define __builtin_inff128() (__builtin_infl ()) | ||
| 87 | # define __builtin_nanf128(x) (__builtin_nanl (x)) | ||
| 88 | # define __builtin_nansf128(x) (__builtin_nansl (x)) | ||
| 89 | # endif | ||
| 90 | |||
| 91 | # endif | ||
| 92 | |||
| 93 | #endif /* !__ASSEMBLER__. */ | ||
| 94 | |||
| 95 | #include <bits/floatn-common.h> | ||
| 96 | |||
| 97 | #endif /* _BITS_FLOATN_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabi/bits/inotify.h deleted-29| ... | @@ -1,29 +0,0 @@ | ||
| 1 | /* Copyright (C) 2005-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_SYS_INOTIFY_H | ||
| 19 | # error "Never use <bits/inotify.h> directly; include <sys/inotify.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Flags for the parameter of inotify_init1. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | IN_CLOEXEC = 02000000, | ||
| 26 | #define IN_CLOEXEC IN_CLOEXEC | ||
| 27 | IN_NONBLOCK = 00000200 | ||
| 28 | #define IN_NONBLOCK IN_NONBLOCK | ||
| 29 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabi/bits/ioctl-types.h deleted-75| ... | @@ -1,75 +0,0 @@ | ||
| 1 | /* Structure types for pre-termios terminal ioctls. Linux/MIPS version. | ||
| 2 | Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_IOCTL_H | ||
| 20 | # error "Never use <bits/ioctl-types.h> directly; include <sys/ioctl.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Get definition of constants for use with `ioctl'. */ | ||
| 24 | #include <asm/ioctls.h> | ||
| 25 | |||
| 26 | struct winsize | ||
| 27 | { | ||
| 28 | unsigned short int ws_row; | ||
| 29 | unsigned short int ws_col; | ||
| 30 | unsigned short int ws_xpixel; | ||
| 31 | unsigned short int ws_ypixel; | ||
| 32 | }; | ||
| 33 | |||
| 34 | #define NCC	8 | ||
| 35 | struct termio | ||
| 36 | { | ||
| 37 | unsigned short int c_iflag;		/* input mode flags */ | ||
| 38 | unsigned short int c_oflag;		/* output mode flags */ | ||
| 39 | unsigned short int c_cflag;		/* control mode flags */ | ||
| 40 | unsigned short int c_lflag;		/* local mode flags */ | ||
| 41 | char c_line;			/* line discipline */ | ||
| 42 | /* Yes, this is really NCCS. */ | ||
| 43 | unsigned char c_cc[32 /* NCCS */]; /* control characters */ | ||
| 44 | }; | ||
| 45 | |||
| 46 | /* modem lines */ | ||
| 47 | #define TIOCM_LE	0x001		/* line enable */ | ||
| 48 | #define TIOCM_DTR	0x002		/* data terminal ready */ | ||
| 49 | #define TIOCM_RTS	0x004		/* request to send */ | ||
| 50 | #define TIOCM_ST	0x010		/* secondary transmit */ | ||
| 51 | #define TIOCM_SR	0x020		/* secondary receive */ | ||
| 52 | #define TIOCM_CTS	0x040		/* clear to send */ | ||
| 53 | #define TIOCM_CAR	0x100		/* carrier detect */ | ||
| 54 | #define TIOCM_CD	TIOCM_CAR | ||
| 55 | #define TIOCM_RNG	0x200		/* ring */ | ||
| 56 | #define TIOCM_RI	TIOCM_RNG | ||
| 57 | #define TIOCM_DSR	0x400		/* data set ready */ | ||
| 58 | |||
| 59 | /* line disciplines */ | ||
| 60 | #define N_TTY		0 | ||
| 61 | #define N_SLIP		1 | ||
| 62 | #define N_MOUSE		2 | ||
| 63 | #define N_PPP		3 | ||
| 64 | #define N_STRIP		4 | ||
| 65 | #define N_AX25		5 | ||
| 66 | #define N_X25		6	/* X.25 async */ | ||
| 67 | #define N_6PACK		7 | ||
| 68 | #define N_MASC		8	/* Mobitex module */ | ||
| 69 | #define N_R3964		9	/* Simatic R3964 module */ | ||
| 70 | #define N_PROFIBUS_FDL	10	/* Profibus */ | ||
| 71 | #define N_IRDA		11	/* Linux IR */ | ||
| 72 | #define N_SMSBLOCK	12	/* SMS block mode */ | ||
| 73 | #define N_HDLC		13	/* synchronous HDLC */ | ||
| 74 | #define N_SYNC_PPP	14	/* synchronous PPP */ | ||
| 75 | #define	N_HCI		15	/* Bluetooth HCI UART */ | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabi/bits/ipctypes.h deleted-31| ... | @@ -1,31 +0,0 @@ | ||
| 1 | /* bits/ipctypes.h -- Define some types used by SysV IPC/MSG/SHM. MIPS version | ||
| 2 | Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* | ||
| 20 | * Never include <bits/ipctypes.h> directly. | ||
| 21 | */ | ||
| 22 | |||
| 23 | #ifndef _BITS_IPCTYPES_H | ||
| 24 | #define _BITS_IPCTYPES_H	1 | ||
| 25 | |||
| 26 | #include <bits/types.h> | ||
| 27 | |||
| 28 | typedef __SLONG32_TYPE __ipc_pid_t; | ||
| 29 | |||
| 30 | |||
| 31 | #endif /* bits/ipctypes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabi/bits/mman.h deleted-44| ... | @@ -1,44 +0,0 @@ | ||
| 1 | /* Definitions for POSIX memory map interface. Linux/MIPS version. | ||
| 2 | Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_MMAN_H | ||
| 20 | # error "Never use <bits/mman.h> directly; include <sys/mman.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* The following definitions basically come from the kernel headers. | ||
| 24 | But the kernel header is not namespace clean. */ | ||
| 25 | |||
| 26 | /* These are Linux-specific. */ | ||
| 27 | #define MAP_NORESERVE	0x0400		/* don't check for reservations */ | ||
| 28 | #define MAP_GROWSDOWN	0x1000		/* stack-like segment */ | ||
| 29 | #define MAP_DENYWRITE	0x2000		/* ETXTBSY */ | ||
| 30 | #define MAP_EXECUTABLE	0x4000		/* mark it as an executable */ | ||
| 31 | #define MAP_LOCKED	0x8000		/* pages are locked */ | ||
| 32 | #define MAP_POPULATE 0x10000 /* populate (prefault) pagetables */ | ||
| 33 | #define MAP_NONBLOCK 0x20000 /* do not block on IO */ | ||
| 34 | #define MAP_STACK	0x40000		/* Allocation is for a stack. */ | ||
| 35 | #define MAP_HUGETLB	0x80000		/* Create huge page mapping. */ | ||
| 36 | #define MAP_FIXED_NOREPLACE 0x100000	/* MAP_FIXED but do not unmap | ||
| 37 | 					 underlying mapping. */ | ||
| 38 | |||
| 39 | #define __MAP_ANONYMOUS 0x0800 | ||
| 40 | |||
| 41 | /* Include generic Linux declarations. */ | ||
| 42 | #include <bits/mman-linux.h> | ||
| 43 | |||
| 44 | #define MAP_RENAME	MAP_ANONYMOUS | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabi/bits/poll.h deleted-49| ... | @@ -1,49 +0,0 @@ | ||
| 1 | /* Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_POLL_H | ||
| 19 | # error "Never use <bits/poll.h> directly; include <sys/poll.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Event types that can be polled for. These bits may be set in `events' | ||
| 23 | to indicate the interesting event types; they will appear in `revents' | ||
| 24 | to indicate the status of the file descriptor. */ | ||
| 25 | #define POLLIN		0x001		/* There is data to read. */ | ||
| 26 | #define POLLPRI		0x002		/* There is urgent data to read. */ | ||
| 27 | #define POLLOUT		0x004		/* Writing now will not block. */ | ||
| 28 | |||
| 29 | #if defined __USE_XOPEN || defined __USE_XOPEN2K8 | ||
| 30 | /* These values are defined in XPG4.2. */ | ||
| 31 | # define POLLRDNORM	0x040		/* Normal data may be read. */ | ||
| 32 | # define POLLRDBAND	0x080		/* Priority data may be read. */ | ||
| 33 | # define POLLWRNORM	POLLOUT		/* Writing now will not block. */ | ||
| 34 | # define POLLWRBAND	0x100		/* Priority data may be written. */ | ||
| 35 | #endif | ||
| 36 | |||
| 37 | #ifdef __USE_GNU | ||
| 38 | /* These are extensions for Linux. */ | ||
| 39 | # define POLLMSG	0x400 | ||
| 40 | # define POLLREMOVE	0x1000 | ||
| 41 | # define POLLRDHUP	0x2000 | ||
| 42 | #endif | ||
| 43 | |||
| 44 | /* Event types always implicitly polled for. These bits need not be set in | ||
| 45 | `events', but they will appear in `revents' to indicate the status of | ||
| 46 | the file descriptor. */ | ||
| 47 | #define POLLERR		0x008		/* Error condition. */ | ||
| 48 | #define POLLHUP		0x010		/* Hung up. */ | ||
| 49 | #define POLLNVAL	0x020		/* Invalid polling request. */ | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabi/bits/pthread_stack_min.h deleted-20| ... | @@ -1,20 +0,0 @@ | ||
| 1 | /* Definition of PTHREAD_STACK_MIN. MIPS Linux version. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public License as | ||
| 7 | published by the Free Software Foundation; either version 2.1 of the | ||
| 8 | License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* Minimum size for a thread. At least two pages with 64k pages. */ | ||
| 20 | #define PTHREAD_STACK_MIN	131072 | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabi/bits/pthreadtypes-arch.h deleted-44| ... | @@ -1,44 +0,0 @@ | ||
| 1 | /* Machine-specific pthread type layouts. MIPS version. | ||
| 2 | Copyright (C) 2005-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_PTHREADTYPES_ARCH_H | ||
| 20 | #define _BITS_PTHREADTYPES_ARCH_H	1 | ||
| 21 | |||
| 22 | #include <bits/endian.h> | ||
| 23 | |||
| 24 | #if _MIPS_SIM == _ABI64 | ||
| 25 | # define __SIZEOF_PTHREAD_ATTR_T 56 | ||
| 26 | # define __SIZEOF_PTHREAD_MUTEX_T 40 | ||
| 27 | # define __SIZEOF_PTHREAD_RWLOCK_T 56 | ||
| 28 | # define __SIZEOF_PTHREAD_BARRIER_T 32 | ||
| 29 | #else | ||
| 30 | # define __SIZEOF_PTHREAD_ATTR_T 36 | ||
| 31 | # define __SIZEOF_PTHREAD_MUTEX_T 24 | ||
| 32 | # define __SIZEOF_PTHREAD_RWLOCK_T 32 | ||
| 33 | # define __SIZEOF_PTHREAD_BARRIER_T 20 | ||
| 34 | #endif | ||
| 35 | #define __SIZEOF_PTHREAD_MUTEXATTR_T 4 | ||
| 36 | #define __SIZEOF_PTHREAD_COND_T 48 | ||
| 37 | #define __SIZEOF_PTHREAD_CONDATTR_T 4 | ||
| 38 | #define __SIZEOF_PTHREAD_RWLOCKATTR_T 8 | ||
| 39 | #define __SIZEOF_PTHREAD_BARRIERATTR_T 4 | ||
| 40 | |||
| 41 | #define __LOCK_ALIGNMENT | ||
| 42 | #define __ONCE_ALIGNMENT | ||
| 43 | |||
| 44 | #endif	/* bits/pthreadtypes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabi/bits/resource.h deleted-231| ... | @@ -1,231 +0,0 @@ | ||
| 1 | /* Bit values & structures for resource limits. Linux/MIPS version. | ||
| 2 | Copyright (C) 1994-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_RESOURCE_H | ||
| 20 | # error "Never use <bits/resource.h> directly; include <sys/resource.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <bits/types.h> | ||
| 24 | |||
| 25 | /* Transmute defines to enumerations. The macro re-definitions are | ||
| 26 | necessary because some programs want to test for operating system | ||
| 27 | features with #ifdef RUSAGE_SELF. In ISO C the reflexive | ||
| 28 | definition is a no-op. */ | ||
| 29 | |||
| 30 | /* Kinds of resource limit. */ | ||
| 31 | enum __rlimit_resource | ||
| 32 | { | ||
| 33 | /* Per-process CPU limit, in seconds. */ | ||
| 34 | RLIMIT_CPU = 0, | ||
| 35 | #define RLIMIT_CPU RLIMIT_CPU | ||
| 36 | |||
| 37 | /* Largest file that can be created, in bytes. */ | ||
| 38 | RLIMIT_FSIZE = 1, | ||
| 39 | #define	RLIMIT_FSIZE RLIMIT_FSIZE | ||
| 40 | |||
| 41 | /* Maximum size of data segment, in bytes. */ | ||
| 42 | RLIMIT_DATA = 2, | ||
| 43 | #define	RLIMIT_DATA RLIMIT_DATA | ||
| 44 | |||
| 45 | /* Maximum size of stack segment, in bytes. */ | ||
| 46 | RLIMIT_STACK = 3, | ||
| 47 | #define	RLIMIT_STACK RLIMIT_STACK | ||
| 48 | |||
| 49 | /* Largest core file that can be created, in bytes. */ | ||
| 50 | RLIMIT_CORE = 4, | ||
| 51 | #define	RLIMIT_CORE RLIMIT_CORE | ||
| 52 | |||
| 53 | /* Largest resident set size, in bytes. | ||
| 54 | This affects swapping; processes that are exceeding their | ||
| 55 | resident set size will be more likely to have physical memory | ||
| 56 | taken from them. */ | ||
| 57 | __RLIMIT_RSS = 7, | ||
| 58 | #define	RLIMIT_RSS __RLIMIT_RSS | ||
| 59 | |||
| 60 | /* Number of open files. */ | ||
| 61 | RLIMIT_NOFILE = 5, | ||
| 62 | __RLIMIT_OFILE = RLIMIT_NOFILE, /* BSD name for same. */ | ||
| 63 | #define RLIMIT_NOFILE RLIMIT_NOFILE | ||
| 64 | #define RLIMIT_OFILE __RLIMIT_OFILE | ||
| 65 | |||
| 66 | /* Address space limit (?) */ | ||
| 67 | RLIMIT_AS = 6, | ||
| 68 | #define RLIMIT_AS RLIMIT_AS | ||
| 69 | |||
| 70 | /* Number of processes. */ | ||
| 71 | __RLIMIT_NPROC = 8, | ||
| 72 | #define RLIMIT_NPROC __RLIMIT_NPROC | ||
| 73 | |||
| 74 | /* Locked-in-memory address space. */ | ||
| 75 | __RLIMIT_MEMLOCK = 9, | ||
| 76 | #define RLIMIT_MEMLOCK __RLIMIT_MEMLOCK | ||
| 77 | |||
| 78 | /* Maximum number of file locks. */ | ||
| 79 | __RLIMIT_LOCKS = 10, | ||
| 80 | #define RLIMIT_LOCKS __RLIMIT_LOCKS | ||
| 81 | |||
| 82 | /* Maximum number of pending signals. */ | ||
| 83 | __RLIMIT_SIGPENDING = 11, | ||
| 84 | #define RLIMIT_SIGPENDING __RLIMIT_SIGPENDING | ||
| 85 | |||
| 86 | /* Maximum bytes in POSIX message queues. */ | ||
| 87 | __RLIMIT_MSGQUEUE = 12, | ||
| 88 | #define RLIMIT_MSGQUEUE __RLIMIT_MSGQUEUE | ||
| 89 | |||
| 90 | /* Maximum nice priority allowed to raise to. | ||
| 91 | Nice levels 19 .. -20 correspond to 0 .. 39 | ||
| 92 | values of this resource limit. */ | ||
| 93 | __RLIMIT_NICE = 13, | ||
| 94 | #define RLIMIT_NICE __RLIMIT_NICE | ||
| 95 | |||
| 96 | /* Maximum realtime priority allowed for non-priviledged | ||
| 97 | processes. */ | ||
| 98 | __RLIMIT_RTPRIO = 14, | ||
| 99 | #define RLIMIT_RTPRIO __RLIMIT_RTPRIO | ||
| 100 | |||
| 101 | /* Maximum CPU time in microseconds that a process scheduled under a real-time | ||
| 102 | scheduling policy may consume without making a blocking system | ||
| 103 | call before being forcibly descheduled. */ | ||
| 104 | __RLIMIT_RTTIME = 15, | ||
| 105 | #define RLIMIT_RTTIME __RLIMIT_RTTIME | ||
| 106 | |||
| 107 | __RLIMIT_NLIMITS = 16, | ||
| 108 | __RLIM_NLIMITS = __RLIMIT_NLIMITS | ||
| 109 | #define RLIMIT_NLIMITS __RLIMIT_NLIMITS | ||
| 110 | #define RLIM_NLIMITS __RLIM_NLIMITS | ||
| 111 | }; | ||
| 112 | |||
| 113 | /* Value to indicate that there is no limit. */ | ||
| 114 | #if _MIPS_SIM == _ABI64 | ||
| 115 | /* The N64 syscall uses this value. */ | ||
| 116 | # define RLIM_INFINITY 0xffffffffffffffffUL | ||
| 117 | # ifdef __USE_LARGEFILE64 | ||
| 118 | # define RLIM64_INFINITY 0xffffffffffffffffUL | ||
| 119 | # endif | ||
| 120 | #else | ||
| 121 | /* The O32 and N32 syscalls use 0x7fffffff. */ | ||
| 122 | # ifndef __USE_FILE_OFFSET64 | ||
| 123 | # define RLIM_INFINITY ((long int)(~0UL >> 1)) | ||
| 124 | # else | ||
| 125 | # define RLIM_INFINITY 0xffffffffffffffffULL | ||
| 126 | # endif | ||
| 127 | # ifdef __USE_LARGEFILE64 | ||
| 128 | # define RLIM64_INFINITY 0xffffffffffffffffULL | ||
| 129 | # endif | ||
| 130 | #endif | ||
| 131 | |||
| 132 | /* We can represent all limits. */ | ||
| 133 | #define RLIM_SAVED_MAX	RLIM_INFINITY | ||
| 134 | #define RLIM_SAVED_CUR	RLIM_INFINITY | ||
| 135 | |||
| 136 | |||
| 137 | /* Type for resource quantity measurement. */ | ||
| 138 | #ifndef __USE_FILE_OFFSET64 | ||
| 139 | typedef __rlim_t rlim_t; | ||
| 140 | #else | ||
| 141 | typedef __rlim64_t rlim_t; | ||
| 142 | #endif | ||
| 143 | #ifdef __USE_LARGEFILE64 | ||
| 144 | typedef __rlim64_t rlim64_t; | ||
| 145 | #endif | ||
| 146 | |||
| 147 | struct rlimit | ||
| 148 | { | ||
| 149 | /* The current (soft) limit. */ | ||
| 150 | rlim_t rlim_cur; | ||
| 151 | /* The hard limit. */ | ||
| 152 | rlim_t rlim_max; | ||
| 153 | }; | ||
| 154 | |||
| 155 | #ifdef __USE_LARGEFILE64 | ||
| 156 | struct rlimit64 | ||
| 157 | { | ||
| 158 | /* The current (soft) limit. */ | ||
| 159 | rlim64_t rlim_cur; | ||
| 160 | /* The hard limit. */ | ||
| 161 | rlim64_t rlim_max; | ||
| 162 | }; | ||
| 163 | #endif | ||
| 164 | |||
| 165 | /* Whose usage statistics do you want? */ | ||
| 166 | enum __rusage_who | ||
| 167 | { | ||
| 168 | /* The calling process. */ | ||
| 169 | RUSAGE_SELF = 0, | ||
| 170 | #define RUSAGE_SELF RUSAGE_SELF | ||
| 171 | |||
| 172 | /* All of its terminated child processes. */ | ||
| 173 | RUSAGE_CHILDREN = -1 | ||
| 174 | #define RUSAGE_CHILDREN RUSAGE_CHILDREN | ||
| 175 | |||
| 176 | #ifdef __USE_GNU | ||
| 177 | , | ||
| 178 | /* The calling thread. */ | ||
| 179 | RUSAGE_THREAD = 1 | ||
| 180 | # define RUSAGE_THREAD RUSAGE_THREAD | ||
| 181 | /* Name for the same functionality on Solaris. */ | ||
| 182 | # define RUSAGE_LWP RUSAGE_THREAD | ||
| 183 | #endif | ||
| 184 | }; | ||
| 185 | |||
| 186 | #include <bits/types/struct_timeval.h> | ||
| 187 | #include <bits/types/struct_rusage.h> | ||
| 188 | |||
| 189 | /* Priority limits. */ | ||
| 190 | #define PRIO_MIN	-20	/* Minimum priority a process can have. */ | ||
| 191 | #define PRIO_MAX	20	/* Maximum priority a process can have. */ | ||
| 192 | |||
| 193 | /* The type of the WHICH argument to `getpriority' and `setpriority', | ||
| 194 | indicating what flavor of entity the WHO argument specifies. */ | ||
| 195 | enum __priority_which | ||
| 196 | { | ||
| 197 | PRIO_PROCESS = 0,		/* WHO is a process ID. */ | ||
| 198 | #define PRIO_PROCESS PRIO_PROCESS | ||
| 199 | PRIO_PGRP = 1,		/* WHO is a process group ID. */ | ||
| 200 | #define PRIO_PGRP PRIO_PGRP | ||
| 201 | PRIO_USER = 2			/* WHO is a user ID. */ | ||
| 202 | #define PRIO_USER PRIO_USER | ||
| 203 | }; | ||
| 204 | |||
| 205 | |||
| 206 | __BEGIN_DECLS | ||
| 207 | |||
| 208 | #ifdef __USE_GNU | ||
| 209 | /* Modify and return resource limits of a process atomically. */ | ||
| 210 | # ifndef __USE_FILE_OFFSET64 | ||
| 211 | extern int prlimit (__pid_t __pid, enum __rlimit_resource __resource, | ||
| 212 | 		 const struct rlimit *__new_limit, | ||
| 213 | 		 struct rlimit *__old_limit) __THROW; | ||
| 214 | # else | ||
| 215 | # ifdef __REDIRECT_NTH | ||
| 216 | extern int __REDIRECT_NTH (prlimit, (__pid_t __pid, | ||
| 217 | 				 enum __rlimit_resource __resource, | ||
| 218 | 				 const struct rlimit *__new_limit, | ||
| 219 | 				 struct rlimit *__old_limit), prlimit64); | ||
| 220 | # else | ||
| 221 | # define prlimit prlimit64 | ||
| 222 | # endif | ||
| 223 | # endif | ||
| 224 | # ifdef __USE_LARGEFILE64 | ||
| 225 | extern int prlimit64 (__pid_t __pid, enum __rlimit_resource __resource, | ||
| 226 | 		 const struct rlimit64 *__new_limit, | ||
| 227 | 		 struct rlimit64 *__old_limit) __THROW; | ||
| 228 | # endif | ||
| 229 | #endif | ||
| 230 | |||
| 231 | __END_DECLS | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabi/bits/semaphore.h deleted-36| ... | @@ -1,36 +0,0 @@ | ||
| 1 | /* Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SEMAPHORE_H | ||
| 19 | # error "Never use <bits/semaphore.h> directly; include <semaphore.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | #if _MIPS_SIM == _ABI64 | ||
| 23 | # define __SIZEOF_SEM_T	32 | ||
| 24 | #else | ||
| 25 | # define __SIZEOF_SEM_T	16 | ||
| 26 | #endif | ||
| 27 | |||
| 28 | /* Value returned if `sem_open' failed. */ | ||
| 29 | #define SEM_FAILED ((sem_t *) 0) | ||
| 30 | |||
| 31 | |||
| 32 | typedef union | ||
| 33 | { | ||
| 34 | char __size[__SIZEOF_SEM_T]; | ||
| 35 | long int __align; | ||
| 36 | } sem_t; | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabi/bits/shmlba.h deleted-24| ... | @@ -1,24 +0,0 @@ | ||
| 1 | /* Define SHMLBA. MIPS version. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SHM_H | ||
| 20 | # error "Never use <bits/shmlba.h> directly; include <sys/shm.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Segment low boundary address multiple. */ | ||
| 24 | #define SHMLBA		0x40000 | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabi/bits/sigaction.h deleted-94| ... | @@ -1,94 +0,0 @@ | ||
| 1 | /* The proper definitions for Linux/MIPS's sigaction. | ||
| 2 | Copyright (C) 1993-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_SIGACTION_H | ||
| 20 | #define _BITS_SIGACTION_H 1 | ||
| 21 | |||
| 22 | #ifndef _SIGNAL_H | ||
| 23 | # error "Never include <bits/sigaction.h> directly; use <signal.h> instead." | ||
| 24 | #endif | ||
| 25 | |||
| 26 | /* Structure describing the action to be taken when a signal arrives. */ | ||
| 27 | struct sigaction | ||
| 28 | { | ||
| 29 | /* Special flags. */ | ||
| 30 | int sa_flags; | ||
| 31 | |||
| 32 | /* Signal handler. */ | ||
| 33 | #if defined __USE_POSIX199309 || defined __USE_XOPEN_EXTENDED | ||
| 34 | union | ||
| 35 | { | ||
| 36 | 	/* Used if SA_SIGINFO is not set. */ | ||
| 37 | 	__sighandler_t sa_handler; | ||
| 38 | 	/* Used if SA_SIGINFO is set. */ | ||
| 39 | 	void (*sa_sigaction) (int, siginfo_t *, void *); | ||
| 40 | } | ||
| 41 | __sigaction_handler; | ||
| 42 | # define sa_handler __sigaction_handler.sa_handler | ||
| 43 | # define sa_sigaction __sigaction_handler.sa_sigaction | ||
| 44 | #else | ||
| 45 | __sighandler_t sa_handler; | ||
| 46 | #endif | ||
| 47 | /* Additional set of signals to be blocked. */ | ||
| 48 | __sigset_t sa_mask; | ||
| 49 | |||
| 50 | /* The ABI says here are two unused ints following. */ | ||
| 51 | /* Restore handler. */ | ||
| 52 | void (*sa_restorer) (void); | ||
| 53 | |||
| 54 | #if _MIPS_SZPTR < 64 | ||
| 55 | int sa_resv[1]; | ||
| 56 | #endif | ||
| 57 | }; | ||
| 58 | |||
| 59 | /* Bits in `sa_flags'. */ | ||
| 60 | /* Please note that some Linux kernels versions use different values for these | ||
| 61 | flags which is a bug in those kernel versions. */ | ||
| 62 | #define SA_NOCLDSTOP 0x00000001 /* Don't send SIGCHLD when children stop. */ | ||
| 63 | #define SA_NOCLDWAIT 0x00010000 /* Don't create zombie on child death. */ | ||
| 64 | #define SA_SIGINFO 0x00000008 /* Invoke signal-catching function with | ||
| 65 | 				 three arguments instead of one. */ | ||
| 66 | #if defined __USE_XOPEN_EXTENDED || defined __USE_MISC | ||
| 67 | # define SA_ONSTACK 0x08000000 /* Use signal stack by using `sa_restorer'. */ | ||
| 68 | #endif | ||
| 69 | #if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8 | ||
| 70 | # define SA_RESETHAND 0x80000000 /* Reset to SIG_DFL on entry to handler. */ | ||
| 71 | # define SA_RESTART 0x10000000 /* Restart syscall on signal return. */ | ||
| 72 | # define SA_NODEFER 0x40000000 /* Don't automatically block the signal when | ||
| 73 | 				 its handler is being executed. */ | ||
| 74 | #endif | ||
| 75 | #ifdef __USE_MISC | ||
| 76 | # define SA_INTERRUPT 0x20000000 /* Historical no-op. */ | ||
| 77 | |||
| 78 | /* Some aliases for the SA_ constants. */ | ||
| 79 | # define SA_NOMASK SA_NODEFER | ||
| 80 | # define SA_ONESHOT SA_RESETHAND | ||
| 81 | # define SA_STACK SA_ONSTACK | ||
| 82 | #endif | ||
| 83 | |||
| 84 | /* Values for the HOW argument to `sigprocmask'. */ | ||
| 85 | #define SIG_NOP	 0		/* 0 is unused to catch errors */ | ||
| 86 | #define	SIG_BLOCK 1		/* Block signals. */ | ||
| 87 | #define	SIG_UNBLOCK 2		/* Unblock signals. */ | ||
| 88 | #define	SIG_SETMASK 3		/* Set the set of blocked signals. */ | ||
| 89 | #ifdef __USE_MISC | ||
| 90 | # define SIG_SETMASK32 256	/* Goodie from SGI for BSD compatibility: | ||
| 91 | 				 set only the low 32 bit of the sigset. */ | ||
| 92 | #endif | ||
| 93 | |||
| 94 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabi/bits/sigcontext.h deleted-82| ... | @@ -1,82 +0,0 @@ | ||
| 1 | /* Copyright (C) 1996-2025 Free Software Foundation, Inc. This file is part of the GNU C Library. | ||
| 2 | |||
| 3 | The GNU C Library is free software; you can redistribute it and/or | ||
| 4 | modify it under the terms of the GNU Lesser General Public | ||
| 5 | License as published by the Free Software Foundation; either | ||
| 6 | version 2.1 of the License, or (at your option) any later version. | ||
| 7 | |||
| 8 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 9 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 10 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 11 | Lesser General Public License for more details. | ||
| 12 | |||
| 13 | You should have received a copy of the GNU Lesser General Public | ||
| 14 | License along with the GNU C Library. If not, see | ||
| 15 | <https://www.gnu.org/licenses/>. */ | ||
| 16 | |||
| 17 | #ifndef _BITS_SIGCONTEXT_H | ||
| 18 | #define _BITS_SIGCONTEXT_H 1 | ||
| 19 | |||
| 20 | #if !defined _SIGNAL_H && !defined _SYS_UCONTEXT_H | ||
| 21 | # error "Never use <bits/sigcontext.h> directly; include <signal.h> instead." | ||
| 22 | #endif | ||
| 23 | |||
| 24 | #include <sgidefs.h> | ||
| 25 | |||
| 26 | #if _MIPS_SIM == _ABIO32 | ||
| 27 | |||
| 28 | /* Certain unused fields were replaced with new ones in 2.6.12-rc4. | ||
| 29 | The changes were as follows: | ||
| 30 | |||
| 31 | sc_cause -> sc_hi1 | ||
| 32 | sc_badvaddr -> sc_lo1 | ||
| 33 | sc_sigset[0] -> sc_hi2 | ||
| 34 | sc_sigset[1] -> sc_lo2 | ||
| 35 | sc_sigset[2] -> sc_hi3 | ||
| 36 | sc_sigset[3] -> sc_lo3 | ||
| 37 | |||
| 38 | sc_regmask, sc_ownedfp and sc_fpc_eir are not used. */ | ||
| 39 | struct sigcontext { | ||
| 40 | unsigned int sc_regmask; | ||
| 41 | unsigned int sc_status; | ||
| 42 | __extension__ unsigned long long sc_pc; | ||
| 43 | __extension__ unsigned long long sc_regs[32]; | ||
| 44 | __extension__ unsigned long long sc_fpregs[32]; | ||
| 45 | unsigned int sc_ownedfp; | ||
| 46 | unsigned int sc_fpc_csr; | ||
| 47 | unsigned int sc_fpc_eir; | ||
| 48 | unsigned int sc_used_math; | ||
| 49 | unsigned int sc_dsp; | ||
| 50 | __extension__ unsigned long long sc_mdhi; | ||
| 51 | __extension__ unsigned long long sc_mdlo; | ||
| 52 | unsigned long sc_hi1; | ||
| 53 | unsigned long sc_lo1; | ||
| 54 | unsigned long sc_hi2; | ||
| 55 | unsigned long sc_lo2; | ||
| 56 | unsigned long sc_hi3; | ||
| 57 | unsigned long sc_lo3; | ||
| 58 | }; | ||
| 59 | |||
| 60 | #else | ||
| 61 | |||
| 62 | /* This structure changed in 2.6.12-rc4 when DSP support was added. */ | ||
| 63 | struct sigcontext { | ||
| 64 | __extension__ unsigned long long sc_regs[32]; | ||
| 65 | __extension__ unsigned long long sc_fpregs[32]; | ||
| 66 | __extension__ unsigned long long sc_mdhi; | ||
| 67 | __extension__ unsigned long long sc_hi1; | ||
| 68 | __extension__ unsigned long long sc_hi2; | ||
| 69 | __extension__ unsigned long long sc_hi3; | ||
| 70 | __extension__ unsigned long long sc_mdlo; | ||
| 71 | __extension__ unsigned long long sc_lo1; | ||
| 72 | __extension__ unsigned long long sc_lo2; | ||
| 73 | __extension__ unsigned long long sc_lo3; | ||
| 74 | __extension__ unsigned long long sc_pc; | ||
| 75 | unsigned int sc_fpc_csr; | ||
| 76 | unsigned int sc_used_math; | ||
| 77 | unsigned int sc_dsp; | ||
| 78 | unsigned int sc_reserved; | ||
| 79 | }; | ||
| 80 | |||
| 81 | #endif /* _MIPS_SIM != _ABIO32 */ | ||
| 82 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabi/bits/siginfo-arch.h deleted-13| ... | @@ -1,13 +0,0 @@ | ||
| 1 | /* Architecture-specific adjustments to siginfo_t. MIPS version. */ | ||
| 2 | #ifndef _BITS_SIGINFO_ARCH_H | ||
| 3 | #define _BITS_SIGINFO_ARCH_H 1 | ||
| 4 | |||
| 5 | /* MIPS has the si_code and si_errno fields in the opposite order from | ||
| 6 | all other architectures. */ | ||
| 7 | #define __SI_ERRNO_THEN_CODE 0 | ||
| 8 | |||
| 9 | /* MIPS also has different values for SI_ASYNCIO, SI_MESGQ, and SI_TIMER | ||
| 10 | than all other architectures. */ | ||
| 11 | #define __SI_ASYNCIO_AFTER_SIGIO 0 | ||
| 12 | |||
| 13 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabi/bits/signalfd.h deleted-29| ... | @@ -1,29 +0,0 @@ | ||
| 1 | /* Copyright (C) 2007-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_SYS_SIGNALFD_H | ||
| 19 | # error "Never use <bits/signalfd.h> directly; include <sys/signalfd.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Flags for signalfd. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | SFD_CLOEXEC = 02000000, | ||
| 26 | #define SFD_CLOEXEC SFD_CLOEXEC | ||
| 27 | SFD_NONBLOCK = 00000200 | ||
| 28 | #define SFD_NONBLOCK SFD_NONBLOCK | ||
| 29 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabi/bits/signum-arch.h deleted-65| ... | @@ -1,65 +0,0 @@ | ||
| 1 | /* Signal number definitions. Linux/MIPS version. | ||
| 2 | Copyright (C) 1995-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_SIGNUM_H | ||
| 20 | #define _BITS_SIGNUM_H 1 | ||
| 21 | |||
| 22 | #ifndef _SIGNAL_H | ||
| 23 | #error "Never include <bits/signum.h> directly; use <signal.h> instead." | ||
| 24 | #endif | ||
| 25 | |||
| 26 | /* Adjustments and additions to the signal number constants for | ||
| 27 | Linux/MIPS. */ | ||
| 28 | |||
| 29 | #define SIGEMT		 7	/* Emulator trap. */ | ||
| 30 | #define SIGPWR		19	/* Power failure imminent. */ | ||
| 31 | |||
| 32 | /* Historical signals specified by POSIX. */ | ||
| 33 | #define SIGBUS 	10	/* Bus error. */ | ||
| 34 | #define SIGSYS		12	/* Bad system call. */ | ||
| 35 | |||
| 36 | /* New(er) POSIX signals (1003.1-2008, 1003.1-2013). */ | ||
| 37 | #define SIGURG		21	/* Urgent data is available at a socket. */ | ||
| 38 | #define SIGSTOP		23	/* Stop, unblockable. */ | ||
| 39 | #define SIGTSTP		24	/* Keyboard stop. */ | ||
| 40 | #define SIGCONT		25	/* Continue. */ | ||
| 41 | #define SIGCHLD		18	/* Child terminated or stopped. */ | ||
| 42 | #define SIGTTIN		26	/* Background read from control terminal. */ | ||
| 43 | #define SIGTTOU		27	/* Background write to control terminal. */ | ||
| 44 | #define SIGPOLL		22	/* Pollable event occurred (System V). */ | ||
| 45 | #define SIGXCPU		30	/* CPU time limit exceeded. */ | ||
| 46 | #define SIGVTALRM	28	/* Virtual timer expired. */ | ||
| 47 | #define SIGPROF		29	/* Profiling timer expired. */ | ||
| 48 | #define SIGXFSZ		31	/* File size limit exceeded. */ | ||
| 49 | #define SIGUSR1		16	/* User-defined signal 1. */ | ||
| 50 | #define SIGUSR2		17	/* User-defined signal 2. */ | ||
| 51 | |||
| 52 | /* Nonstandard signals found in all modern POSIX systems | ||
| 53 | (including both BSD and Linux). */ | ||
| 54 | #define SIGWINCH	20	/* Window size change (4.3 BSD, Sun). */ | ||
| 55 | |||
| 56 | /* Archaic names for compatibility. */ | ||
| 57 | #define SIGIO		SIGPOLL	/* I/O now possible (4.2 BSD). */ | ||
| 58 | #define SIGIOT		SIGABRT	/* IOT instruction, abort() on a PDP-11. */ | ||
| 59 | #define SIGCLD		SIGCHLD /* Old System V name */ | ||
| 60 | |||
| 61 | /* By default no real-time signals are supported. */ | ||
| 62 | #define __SIGRTMIN	32 | ||
| 63 | #define __SIGRTMAX	127 | ||
| 64 | |||
| 65 | #endif	/* <signal.h> included. */ | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabi/bits/socket-constants.h deleted-70| ... | @@ -1,70 +0,0 @@ | ||
| 1 | /* Socket constants which vary among Linux architectures. Version for MIPS. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SOCKET_H | ||
| 20 | # error "Never include <bits/socket-constants.h> directly; use <sys/socket.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #define SOL_SOCKET 65535 | ||
| 24 | #define SO_ACCEPTCONN 4105 | ||
| 25 | #define SO_BROADCAST 32 | ||
| 26 | #define SO_DONTROUTE 16 | ||
| 27 | #define SO_ERROR 4103 | ||
| 28 | #define SO_KEEPALIVE 8 | ||
| 29 | #define SO_LINGER 128 | ||
| 30 | #define SO_OOBINLINE 256 | ||
| 31 | #define SO_RCVBUF 4098 | ||
| 32 | #define SO_RCVLOWAT 4100 | ||
| 33 | #define SO_REUSEADDR 4 | ||
| 34 | #define SO_SNDBUF 4097 | ||
| 35 | #define SO_SNDLOWAT 4099 | ||
| 36 | #define SO_TYPE 4104 | ||
| 37 | |||
| 38 | #if __TIMESIZE == 64 | ||
| 39 | # define SO_RCVTIMEO 4102 | ||
| 40 | # define SO_SNDTIMEO 4101 | ||
| 41 | # define SO_TIMESTAMP 29 | ||
| 42 | # define SO_TIMESTAMPNS 35 | ||
| 43 | # define SO_TIMESTAMPING 37 | ||
| 44 | #else | ||
| 45 | # define SO_RCVTIMEO_OLD 4102 | ||
| 46 | # define SO_SNDTIMEO_OLD 4101 | ||
| 47 | # define SO_RCVTIMEO_NEW 66 | ||
| 48 | # define SO_SNDTIMEO_NEW 67 | ||
| 49 | |||
| 50 | # define SO_TIMESTAMP_OLD 29 | ||
| 51 | # define SO_TIMESTAMPNS_OLD 35 | ||
| 52 | # define SO_TIMESTAMPING_OLD 37 | ||
| 53 | # define SO_TIMESTAMP_NEW 63 | ||
| 54 | # define SO_TIMESTAMPNS_NEW 64 | ||
| 55 | # define SO_TIMESTAMPING_NEW 65 | ||
| 56 | |||
| 57 | # ifdef __USE_TIME64_REDIRECTS | ||
| 58 | # define SO_RCVTIMEO SO_RCVTIMEO_NEW | ||
| 59 | # define SO_SNDTIMEO SO_SNDTIMEO_NEW | ||
| 60 | # define SO_TIMESTAMP SO_TIMESTAMP_NEW | ||
| 61 | # define SO_TIMESTAMPNS SO_TIMESTAMPNS_NEW | ||
| 62 | # define SO_TIMESTAMPING SO_TIMESTAMPING_NEW | ||
| 63 | # else | ||
| 64 | # define SO_RCVTIMEO SO_RCVTIMEO_OLD | ||
| 65 | # define SO_SNDTIMEO SO_SNDTIMEO_OLD | ||
| 66 | # define SO_TIMESTAMP SO_TIMESTAMP_OLD | ||
| 67 | # define SO_TIMESTAMPNS SO_TIMESTAMPNS_OLD | ||
| 68 | # define SO_TIMESTAMPING SO_TIMESTAMPING_OLD | ||
| 69 | # endif | ||
| 70 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabi/bits/socket_type.h deleted-55| ... | @@ -1,55 +0,0 @@ | ||
| 1 | /* Define enum __socket_type for Linux/MIPS. | ||
| 2 | Copyright (C) 1991-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SOCKET_H | ||
| 20 | # error "Never include <bits/socket_type.h> directly; use <sys/socket.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Types of sockets. */ | ||
| 24 | enum __socket_type | ||
| 25 | { | ||
| 26 | SOCK_DGRAM = 1,		/* Connectionless, unreliable datagrams | ||
| 27 | 				 of fixed maximum length. */ | ||
| 28 | #define SOCK_DGRAM SOCK_DGRAM | ||
| 29 | SOCK_STREAM = 2,		/* Sequenced, reliable, connection-based | ||
| 30 | 				 byte streams. */ | ||
| 31 | #define SOCK_STREAM SOCK_STREAM | ||
| 32 | SOCK_RAW = 3,			/* Raw protocol interface. */ | ||
| 33 | #define SOCK_RAW SOCK_RAW | ||
| 34 | SOCK_RDM = 4,			/* Reliably-delivered messages. */ | ||
| 35 | #define SOCK_RDM SOCK_RDM | ||
| 36 | SOCK_SEQPACKET = 5,		/* Sequenced, reliable, connection-based, | ||
| 37 | 				 datagrams of fixed maximum length. */ | ||
| 38 | #define SOCK_SEQPACKET SOCK_SEQPACKET | ||
| 39 | SOCK_DCCP = 6, | ||
| 40 | #define SOCK_DCCP SOCK_DCCP	/* Datagram Congestion Control Protocol. */ | ||
| 41 | SOCK_PACKET = 10,		/* Linux specific way of getting packets | ||
| 42 | 				 at the dev level. For writing rarp and | ||
| 43 | 				 other similar things on the user level. */ | ||
| 44 | #define SOCK_PACKET SOCK_PACKET | ||
| 45 | |||
| 46 | /* Flags to be ORed into the type parameter of socket and socketpair and | ||
| 47 | used for the flags parameter of paccept. */ | ||
| 48 | |||
| 49 | SOCK_CLOEXEC = 02000000,	/* Atomically set close-on-exec flag for the | ||
| 50 | 				 new descriptor(s). */ | ||
| 51 | #define SOCK_CLOEXEC SOCK_CLOEXEC | ||
| 52 | SOCK_NONBLOCK = 00000200	/* Atomically mark descriptor(s) as | ||
| 53 | 				 non-blocking. */ | ||
| 54 | #define SOCK_NONBLOCK SOCK_NONBLOCK | ||
| 55 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabi/bits/statfs.h deleted-73| ... | @@ -1,73 +0,0 @@ | ||
| 1 | /* Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_STATFS_H | ||
| 19 | # error "Never include <bits/statfs.h> directly; use <sys/statfs.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | #include <bits/types.h> /* for __fsid_t and __fsblkcnt_t*/ | ||
| 23 | |||
| 24 | struct statfs | ||
| 25 | { | ||
| 26 | long int f_type; | ||
| 27 | #define f_fstyp f_type | ||
| 28 | long int f_bsize; | ||
| 29 | long int f_frsize;	/* Fragment size - unsupported */ | ||
| 30 | #ifndef __USE_FILE_OFFSET64 | ||
| 31 | __fsblkcnt_t f_blocks; | ||
| 32 | __fsblkcnt_t f_bfree; | ||
| 33 | __fsblkcnt_t f_files; | ||
| 34 | __fsblkcnt_t f_ffree; | ||
| 35 | __fsblkcnt_t f_bavail; | ||
| 36 | #else | ||
| 37 | __fsblkcnt64_t f_blocks; | ||
| 38 | __fsblkcnt64_t f_bfree; | ||
| 39 | __fsblkcnt64_t f_files; | ||
| 40 | __fsblkcnt64_t f_ffree; | ||
| 41 | __fsblkcnt64_t f_bavail; | ||
| 42 | #endif | ||
| 43 | |||
| 44 | 	/* Linux specials */ | ||
| 45 | __fsid_t f_fsid; | ||
| 46 | long int f_namelen; | ||
| 47 | long int f_flags; | ||
| 48 | long int f_spare[5]; | ||
| 49 | }; | ||
| 50 | |||
| 51 | #ifdef __USE_LARGEFILE64 | ||
| 52 | struct statfs64 | ||
| 53 | { | ||
| 54 | long int f_type; | ||
| 55 | #define f_fstyp f_type | ||
| 56 | long int f_bsize; | ||
| 57 | long int f_frsize;	/* Fragment size - unsupported */ | ||
| 58 | __fsblkcnt64_t f_blocks; | ||
| 59 | __fsblkcnt64_t f_bfree; | ||
| 60 | __fsblkcnt64_t f_files; | ||
| 61 | __fsblkcnt64_t f_ffree; | ||
| 62 | __fsblkcnt64_t f_bavail; | ||
| 63 | |||
| 64 | 	/* Linux specials */ | ||
| 65 | __fsid_t f_fsid; | ||
| 66 | long int f_namelen; | ||
| 67 | long int f_flags; | ||
| 68 | long int f_spare[5]; | ||
| 69 | }; | ||
| 70 | #endif | ||
| 71 | |||
| 72 | /* Tell code we have these members. */ | ||
| 73 | #define _STATFS_F_NAMELEN | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabi/bits/struct_mutex.h deleted-56| ... | @@ -1,56 +0,0 @@ | ||
| 1 | /* MIPS internal mutex struct definitions. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <http://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _THREAD_MUTEX_INTERNAL_H | ||
| 20 | #define _THREAD_MUTEX_INTERNAL_H 1 | ||
| 21 | |||
| 22 | struct __pthread_mutex_s | ||
| 23 | { | ||
| 24 | int __lock; | ||
| 25 | unsigned int __count; | ||
| 26 | int __owner; | ||
| 27 | #if _MIPS_SIM == _ABI64 | ||
| 28 | unsigned int __nusers; | ||
| 29 | #endif | ||
| 30 | /* KIND must stay at this position in the structure to maintain | ||
| 31 | binary compatibility with static initializers. */ | ||
| 32 | int __kind; | ||
| 33 | #if _MIPS_SIM == _ABI64 | ||
| 34 | int __spins; | ||
| 35 | __pthread_list_t __list; | ||
| 36 | # define __PTHREAD_MUTEX_HAVE_PREV 1 | ||
| 37 | #else | ||
| 38 | unsigned int __nusers; | ||
| 39 | __extension__ union | ||
| 40 | { | ||
| 41 | int __spins; | ||
| 42 | __pthread_slist_t __list; | ||
| 43 | }; | ||
| 44 | # define __PTHREAD_MUTEX_HAVE_PREV 0 | ||
| 45 | #endif | ||
| 46 | }; | ||
| 47 | |||
| 48 | #if _MIPS_SIM == _ABI64 | ||
| 49 | # define __PTHREAD_MUTEX_INITIALIZER(__kind) \ | ||
| 50 | 0, 0, 0, 0, __kind, 0, { 0, 0 } | ||
| 51 | #else | ||
| 52 | # define __PTHREAD_MUTEX_INITIALIZER(__kind) \ | ||
| 53 | 0, 0, 0, __kind, 0, { 0 } | ||
| 54 | #endif | ||
| 55 | |||
| 56 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabi/bits/struct_rwlock.h deleted-71| ... | @@ -1,71 +0,0 @@ | ||
| 1 | /* MIPS internal rwlock struct definitions. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <http://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _RWLOCK_INTERNAL_H | ||
| 20 | #define _RWLOCK_INTERNAL_H | ||
| 21 | |||
| 22 | struct __pthread_rwlock_arch_t | ||
| 23 | { | ||
| 24 | unsigned int __readers; | ||
| 25 | unsigned int __writers; | ||
| 26 | unsigned int __wrphase_futex; | ||
| 27 | unsigned int __writers_futex; | ||
| 28 | unsigned int __pad3; | ||
| 29 | unsigned int __pad4; | ||
| 30 | #if _MIPS_SIM == _ABI64 | ||
| 31 | int __cur_writer; | ||
| 32 | int __shared; | ||
| 33 | unsigned long int __pad1; | ||
| 34 | unsigned long int __pad2; | ||
| 35 | /* FLAGS must stay at this position in the structure to maintain | ||
| 36 | binary compatibility. */ | ||
| 37 | unsigned int __flags; | ||
| 38 | # else | ||
| 39 | # if __BYTE_ORDER == __BIG_ENDIAN | ||
| 40 | unsigned char __pad1; | ||
| 41 | unsigned char __pad2; | ||
| 42 | unsigned char __shared; | ||
| 43 | /* FLAGS must stay at this position in the structure to maintain | ||
| 44 | binary compatibility. */ | ||
| 45 | unsigned char __flags; | ||
| 46 | # else | ||
| 47 | /* FLAGS must stay at this position in the structure to maintain | ||
| 48 | binary compatibility. */ | ||
| 49 | unsigned char __flags; | ||
| 50 | unsigned char __shared; | ||
| 51 | unsigned char __pad1; | ||
| 52 | unsigned char __pad2; | ||
| 53 | # endif | ||
| 54 | int __cur_writer; | ||
| 55 | #endif | ||
| 56 | }; | ||
| 57 | |||
| 58 | #if _MIPS_SIM == _ABI64 | ||
| 59 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 60 | 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags | ||
| 61 | #else | ||
| 62 | # if __BYTE_ORDER == __BIG_ENDIAN | ||
| 63 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 64 | 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0 | ||
| 65 | # else | ||
| 66 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 67 | 0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0 | ||
| 68 | # endif | ||
| 69 | #endif | ||
| 70 | |||
| 71 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabi/bits/termios-c_cc.h deleted-43| ... | @@ -1,43 +0,0 @@ | ||
| 1 | /* termios c_cc symbolic constant definitions. Linux/mips version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-c_cc.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* c_cc characters */ | ||
| 24 | #define VINTR		0	/* Interrupt character [ISIG]. */ | ||
| 25 | #define VQUIT		1	/* Quit character [ISIG]. */ | ||
| 26 | #define VERASE		2	/* Erase character [ICANON]. */ | ||
| 27 | #define VKILL		3	/* Kill-line character [ICANON]. */ | ||
| 28 | #define VMIN		4	/* Minimum number of bytes read at once [!ICANON]. */ | ||
| 29 | #define VTIME		5	/* Time-out value (tenths of a second) [!ICANON]. */ | ||
| 30 | #define VEOL2		6	/* Second EOL character [ICANON]. */ | ||
| 31 | #define VSWTC		7 | ||
| 32 | #define VSWTCH		VSWTC | ||
| 33 | #define VSTART		8	/* Start (X-ON) character [IXON, IXOFF]. */ | ||
| 34 | #define VSTOP		9	/* Stop (X-OFF) character [IXON, IXOFF]. */ | ||
| 35 | #define VSUSP		10	/* Suspend character [ISIG]. */ | ||
| 36 | 				/* VDSUSP is not supported on Linux. */ | ||
| 37 | /* #define VDSUSP	11	/ * Delayed suspend character [ISIG]. */ | ||
| 38 | #define VREPRINT	12	/* Reprint-line character [ICANON]. */ | ||
| 39 | #define VDISCARD	13	/* Discard character [IEXTEN]. */ | ||
| 40 | #define VWERASE		14	/* Word-erase character [ICANON]. */ | ||
| 41 | #define VLNEXT		15	/* Literal-next character [IEXTEN]. */ | ||
| 42 | #define VEOF		16	/* End-of-file character [ICANON]. */ | ||
| 43 | #define VEOL		17	/* End-of-line character [ICANON]. */ | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabi/bits/termios-c_lflag.h deleted-46| ... | @@ -1,46 +0,0 @@ | ||
| 1 | /* termios local mode definitions. Linux/mips version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-c_lflag.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* c_lflag bits */ | ||
| 24 | #define ISIG	0000001		/* Enable signals. */ | ||
| 25 | #define ICANON	0000002		/* Do erase and kill processing. */ | ||
| 26 | #if defined __USE_MISC || (defined __USE_XOPEN && !defined __USE_XOPEN2K) | ||
| 27 | # define XCASE	0000004 | ||
| 28 | #endif | ||
| 29 | #define ECHO	0000010		/* Enable echo. */ | ||
| 30 | #define ECHOE	0000020		/* Visual erase for ERASE. */ | ||
| 31 | #define ECHOK	0000040		/* Echo NL after KILL. */ | ||
| 32 | #define ECHONL	0000100		/* Echo NL even if ECHO is off. */ | ||
| 33 | #define NOFLSH	0000200		/* Disable flush after interrupt. */ | ||
| 34 | #define IEXTEN	0000400		/* Enable DISCARD and LNEXT. */ | ||
| 35 | #ifdef __USE_MISC | ||
| 36 | # define ECHOCTL 0001000	/* Echo control characters as ^X. */ | ||
| 37 | # define ECHOPRT 0002000	/* Hardcopy visual erase. */ | ||
| 38 | # define ECHOKE	 0004000	/* Visual erase for KILL. */ | ||
| 39 | # define FLUSHO	0020000 | ||
| 40 | # define PENDIN	0040000		/* Retype pending input (state). */ | ||
| 41 | #endif | ||
| 42 | #define TOSTOP	0100000		/* Send SIGTTOU for background output. */ | ||
| 43 | #define ITOSTOP	TOSTOP | ||
| 44 | #ifdef __USE_MISC | ||
| 45 | # define EXTPROC 0200000 | ||
| 46 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabi/bits/termios-struct.h deleted-34| ... | @@ -1,34 +0,0 @@ | ||
| 1 | /* struct termios definition. Linux/mips version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-struct.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #define NCCS 32 | ||
| 24 | struct termios | ||
| 25 | { | ||
| 26 | tcflag_t c_iflag;		/* input mode flags */ | ||
| 27 | tcflag_t c_oflag;		/* output mode flags */ | ||
| 28 | tcflag_t c_cflag;		/* control mode flags */ | ||
| 29 | tcflag_t c_lflag;		/* local mode flags */ | ||
| 30 | cc_t c_line;		/* line discipline */ | ||
| 31 | cc_t c_cc[NCCS];		/* control characters */ | ||
| 32 | #define _HAVE_STRUCT_TERMIOS_C_ISPEED 0 | ||
| 33 | #define _HAVE_STRUCT_TERMIOS_C_OSPEED 0 | ||
| 34 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabi/bits/termios-tcflow.h deleted-26| ... | @@ -1,26 +0,0 @@ | ||
| 1 | /* termios local mode definitions. Linux/mips version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-tcflow.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* tcsetattr uses these */ | ||
| 24 | #define	TCSANOW		0x540e	/* Same as TCSETS; change immediately. */ | ||
| 25 | #define	TCSADRAIN	0x540f	/* Same as TCSETSW; change when pending output is written. */ | ||
| 26 | #define	TCSAFLUSH	0x5410	/* Same as TCSETSF; flush pending input before changing. */ | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabi/bits/timerfd.h deleted-29| ... | @@ -1,29 +0,0 @@ | ||
| 1 | /* Copyright (C) 2008-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_SYS_TIMERFD_H | ||
| 19 | # error "Never use <bits/timerfd.h> directly; include <sys/timerfd.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Bits to be set in the FLAGS parameter of `timerfd_create'. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | TFD_CLOEXEC = 02000000, | ||
| 26 | #define TFD_CLOEXEC TFD_CLOEXEC | ||
| 27 | TFD_NONBLOCK = 00000200 | ||
| 28 | #define TFD_NONBLOCK TFD_NONBLOCK | ||
| 29 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabi/bits/types/stack_t.h deleted-33| ... | @@ -1,33 +0,0 @@ | ||
| 1 | /* Define stack_t. MIPS Linux version. | ||
| 2 | Copyright (C) 1998-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef __stack_t_defined | ||
| 20 | #define __stack_t_defined 1 | ||
| 21 | |||
| 22 | #define __need_size_t | ||
| 23 | #include <stddef.h> | ||
| 24 | |||
| 25 | /* Structure describing a signal stack. */ | ||
| 26 | typedef struct | ||
| 27 | { | ||
| 28 | void *ss_sp; | ||
| 29 | size_t ss_size; | ||
| 30 | int ss_flags; | ||
| 31 | } stack_t; | ||
| 32 | |||
| 33 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabi/bits/types/struct_msqid_ds.h deleted-62| ... | @@ -1,62 +0,0 @@ | ||
| 1 | /* Linux/MIPS implementation of the SysV message struct msqid_ds. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_MSG_H | ||
| 20 | # error "Never use <bits/msq.h> directly; include <sys/msg.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <bits/types/time_t.h> | ||
| 24 | |||
| 25 | /* Structure of record for one message inside the kernel. | ||
| 26 | The type `struct msg' is opaque. */ | ||
| 27 | struct msqid_ds | ||
| 28 | { | ||
| 29 | #ifdef __USE_TIME64_REDIRECTS | ||
| 30 | # include <bits/types/struct_msqid64_ds_helper.h> | ||
| 31 | #else | ||
| 32 | struct ipc_perm msg_perm;	/* structure describing operation permission */ | ||
| 33 | # if __TIMESIZE == 32 | ||
| 34 | # ifdef __MIPSEL__ | ||
| 35 | __time_t msg_stime;		/* time of last msgsnd command */ | ||
| 36 | unsigned long int __msg_stime_high; | ||
| 37 | __time_t msg_rtime;		/* time of last msgsnd command */ | ||
| 38 | unsigned long int __msg_rtime_high; | ||
| 39 | __time_t msg_ctime;		/* time of last change */ | ||
| 40 | unsigned long int __msg_ctime_high; | ||
| 41 | # else | ||
| 42 | unsigned long int __msg_stime_high; | ||
| 43 | __time_t msg_stime;		/* time of last msgsnd command */ | ||
| 44 | unsigned long int __msg_rtime_high; | ||
| 45 | __time_t msg_rtime;		/* time of last msgsnd command */ | ||
| 46 | unsigned long int __msg_ctime_high; | ||
| 47 | __time_t msg_ctime;		/* time of last change */ | ||
| 48 | # endif | ||
| 49 | # else | ||
| 50 | __time_t msg_stime;		/* time of last msgsnd command */ | ||
| 51 | __time_t msg_rtime;		/* time of last msgsnd command */ | ||
| 52 | __time_t msg_ctime;		/* time of last change */ | ||
| 53 | # endif | ||
| 54 | __syscall_ulong_t __msg_cbytes; /* current number of bytes on queue */ | ||
| 55 | msgqnum_t msg_qnum;		/* number of messages currently on queue */ | ||
| 56 | msglen_t msg_qbytes;		/* max number of bytes allowed on queue */ | ||
| 57 | __pid_t msg_lspid;		/* pid of last msgsnd() */ | ||
| 58 | __pid_t msg_lrpid;		/* pid of last msgrcv() */ | ||
| 59 | __syscall_ulong_t __glibc_reserved4; | ||
| 60 | __syscall_ulong_t __glibc_reserved5; | ||
| 61 | #endif | ||
| 62 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabi/bits/types/struct_semid_ds.h deleted-36| ... | @@ -1,36 +0,0 @@ | ||
| 1 | /* MIPS implementation of the semaphore struct semid_ds | ||
| 2 | Copyright (C) 1995-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SEM_H | ||
| 20 | # error "Never include <bits/types/struct_semid_ds.h> directly; use <sys/sem.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Data structure describing a set of semaphores. */ | ||
| 24 | struct semid_ds | ||
| 25 | { | ||
| 26 | #ifdef __USE_TIME64_REDIRECTS | ||
| 27 | # include <bits/types/struct_semid64_ds_helper.h> | ||
| 28 | #else | ||
| 29 | struct ipc_perm sem_perm;		/* operation permission struct */ | ||
| 30 | __time_t sem_otime;	/* last semop() time */ | ||
| 31 | __time_t sem_ctime;	/* last time changed by semctl() */ | ||
| 32 | __syscall_ulong_t sem_nsems;		/* number of semaphores in set */ | ||
| 33 | __syscall_ulong_t __sem_otime_high; | ||
| 34 | __syscall_ulong_t __sem_ctime_high; | ||
| 35 | #endif | ||
| 36 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabi/bits/types/struct_shmid_ds.h deleted-53| ... | @@ -1,53 +0,0 @@ | ||
| 1 | /* Linux/MIPS implementation of the shared memory struct shmid_ds. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SHM_H | ||
| 20 | # error "Never include <bits/types/struct_shmid_ds.h> directly; use <sys/shm.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Data structure describing a shared memory segment. */ | ||
| 24 | struct shmid_ds | ||
| 25 | { | ||
| 26 | #ifdef __USE_TIME64_REDIRECTS | ||
| 27 | # include <bits/types/struct_shmid64_ds_helper.h> | ||
| 28 | #else | ||
| 29 | struct ipc_perm shm_perm;		/* operation permission struct */ | ||
| 30 | size_t shm_segsz;			/* size of segment in bytes */ | ||
| 31 | # if __TIMESIZE == 32 | ||
| 32 | __time_t shm_atime;			/* time of last shmat() */ | ||
| 33 | __time_t shm_dtime;			/* time of last shmdt() */ | ||
| 34 | __time_t shm_ctime;			/* time of last change by shmctl() */ | ||
| 35 | # else | ||
| 36 | __time_t shm_atime;			/* time of last shmat() */ | ||
| 37 | __time_t shm_dtime;			/* time of last shmdt() */ | ||
| 38 | __time_t shm_ctime;			/* time of last change by shmctl() */ | ||
| 39 | # endif | ||
| 40 | __pid_t shm_cpid;			/* pid of creator */ | ||
| 41 | __pid_t shm_lpid;			/* pid of last shmop */ | ||
| 42 | shmatt_t shm_nattch;		/* number of current attaches */ | ||
| 43 | # if __TIMESIZE == 32 | ||
| 44 | unsigned short int __shm_atime_high; | ||
| 45 | unsigned short int __shm_dtime_high; | ||
| 46 | unsigned short int __shm_ctime_high; | ||
| 47 | unsigned short int __glibc_reserved4; | ||
| 48 | # else | ||
| 49 | __syscall_ulong_t __glibc_reserved5; | ||
| 50 | __syscall_ulong_t __glibc_reserved6; | ||
| 51 | # endif | ||
| 52 | #endif | ||
| 53 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabi/bits/typesizes.h deleted-95| ... | @@ -1,95 +0,0 @@ | ||
| 1 | /* bits/typesizes.h -- underlying types for *_t. MIPS version. | ||
| 2 | Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_TYPES_H | ||
| 20 | # error "Never include <bits/typesizes.h> directly; use <sys/types.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef	_BITS_TYPESIZES_H | ||
| 24 | #define	_BITS_TYPESIZES_H	1 | ||
| 25 | |||
| 26 | /* See <bits/types.h> for the meaning of these macros. This file exists so | ||
| 27 | that <bits/types.h> need not vary across different GNU platforms. */ | ||
| 28 | |||
| 29 | #define __DEV_T_TYPE		__UQUAD_TYPE | ||
| 30 | #define __UID_T_TYPE		__U32_TYPE | ||
| 31 | #define __GID_T_TYPE		__U32_TYPE | ||
| 32 | #define __INO_T_TYPE		__ULONGWORD_TYPE | ||
| 33 | #define __INO64_T_TYPE		__UQUAD_TYPE | ||
| 34 | #define __MODE_T_TYPE		__U32_TYPE | ||
| 35 | #define __NLINK_T_TYPE		__UWORD_TYPE | ||
| 36 | #define __OFF_T_TYPE		__SLONGWORD_TYPE | ||
| 37 | #define __OFF64_T_TYPE		__SQUAD_TYPE | ||
| 38 | #define __PID_T_TYPE		__S32_TYPE | ||
| 39 | #define __RLIM_T_TYPE		__ULONGWORD_TYPE | ||
| 40 | #define __RLIM64_T_TYPE		__UQUAD_TYPE | ||
| 41 | #define	__BLKCNT_T_TYPE		__SLONGWORD_TYPE | ||
| 42 | #define	__BLKCNT64_T_TYPE	__SQUAD_TYPE | ||
| 43 | #define	__FSBLKCNT_T_TYPE	__ULONGWORD_TYPE | ||
| 44 | #define	__FSBLKCNT64_T_TYPE	__UQUAD_TYPE | ||
| 45 | #define	__FSFILCNT_T_TYPE	__ULONGWORD_TYPE | ||
| 46 | #define	__FSFILCNT64_T_TYPE	__UQUAD_TYPE | ||
| 47 | #define	__FSWORD_T_TYPE		__SWORD_TYPE | ||
| 48 | #define	__ID_T_TYPE		__U32_TYPE | ||
| 49 | #define __CLOCK_T_TYPE		__SLONGWORD_TYPE | ||
| 50 | #define __TIME_T_TYPE		__SLONGWORD_TYPE | ||
| 51 | #define __USECONDS_T_TYPE	__U32_TYPE | ||
| 52 | #define __SUSECONDS_T_TYPE	__SLONGWORD_TYPE | ||
| 53 | #define __SUSECONDS64_T_TYPE	__SQUAD_TYPE | ||
| 54 | #define __DADDR_T_TYPE		__S32_TYPE | ||
| 55 | #define __KEY_T_TYPE		__S32_TYPE | ||
| 56 | #define __CLOCKID_T_TYPE	__S32_TYPE | ||
| 57 | #define __TIMER_T_TYPE		void * | ||
| 58 | #define __BLKSIZE_T_TYPE	__SLONGWORD_TYPE | ||
| 59 | #define __FSID_T_TYPE		struct { int __val[2]; } | ||
| 60 | #define __SSIZE_T_TYPE		__SWORD_TYPE | ||
| 61 | #define __SYSCALL_SLONG_TYPE	__SLONGWORD_TYPE | ||
| 62 | #define __SYSCALL_ULONG_TYPE	__ULONGWORD_TYPE | ||
| 63 | #define __CPU_MASK_TYPE 	__ULONGWORD_TYPE | ||
| 64 | |||
| 65 | #ifdef __LP64__ | ||
| 66 | /* Tell the libc code that off_t and off64_t are actually the same type | ||
| 67 | for all ABI purposes, even if possibly expressed as different base types | ||
| 68 | for C type-checking purposes. */ | ||
| 69 | # define __OFF_T_MATCHES_OFF64_T	1 | ||
| 70 | |||
| 71 | /* Same for ino_t and ino64_t. */ | ||
| 72 | # define __INO_T_MATCHES_INO64_T	1 | ||
| 73 | |||
| 74 | /* And for rlim_t and rlim64_t. */ | ||
| 75 | # define __RLIM_T_MATCHES_RLIM64_T	1 | ||
| 76 | |||
| 77 | /* And for fsblkcnt_t, fsblkcnt64_t, fsfilcnt_t and fsfilcnt64_t. */ | ||
| 78 | # define __STATFS_MATCHES_STATFS64 1 | ||
| 79 | |||
| 80 | /* And for getitimer, setitimer and rusage */ | ||
| 81 | # define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 1 | ||
| 82 | #else | ||
| 83 | # define __RLIM_T_MATCHES_RLIM64_T	0 | ||
| 84 | |||
| 85 | # define __STATFS_MATCHES_STATFS64 0 | ||
| 86 | |||
| 87 | /* And for getitimer, setitimer and rusage */ | ||
| 88 | # define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 0 | ||
| 89 | #endif | ||
| 90 | |||
| 91 | /* Number of descriptors that can fit in an `fd_set'. */ | ||
| 92 | #define	__FD_SETSIZE		1024 | ||
| 93 | |||
| 94 | |||
| 95 | #endif /* bits/typesizes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabi/ieee754.h deleted-326| ... | @@ -1,326 +0,0 @@ | ||
| 1 | /* Copyright (C) 1992-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _IEEE754_H | ||
| 19 | #define _IEEE754_H 1 | ||
| 20 | |||
| 21 | #include <features.h> | ||
| 22 | |||
| 23 | #include <bits/endian.h> | ||
| 24 | |||
| 25 | #ifndef __LDBL_MANT_DIG__ | ||
| 26 | # include <float.h> | ||
| 27 | # define __LDBL_MANT_DIG__ LDBL_MANT_DIG | ||
| 28 | #endif | ||
| 29 | |||
| 30 | __BEGIN_DECLS | ||
| 31 | |||
| 32 | union ieee754_float | ||
| 33 | { | ||
| 34 | float f; | ||
| 35 | |||
| 36 | /* This is the IEEE 754 single-precision format. */ | ||
| 37 | struct | ||
| 38 | { | ||
| 39 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 40 | 	unsigned int negative:1; | ||
| 41 | 	unsigned int exponent:8; | ||
| 42 | 	unsigned int mantissa:23; | ||
| 43 | #endif				/* Big endian. */ | ||
| 44 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 45 | 	unsigned int mantissa:23; | ||
| 46 | 	unsigned int exponent:8; | ||
| 47 | 	unsigned int negative:1; | ||
| 48 | #endif				/* Little endian. */ | ||
| 49 | } ieee; | ||
| 50 | |||
| 51 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 52 | struct | ||
| 53 | { | ||
| 54 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 55 | 	unsigned int negative:1; | ||
| 56 | 	unsigned int exponent:8; | ||
| 57 | 	unsigned int quiet_nan:1; | ||
| 58 | 	unsigned int mantissa:22; | ||
| 59 | #endif				/* Big endian. */ | ||
| 60 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 61 | 	unsigned int mantissa:22; | ||
| 62 | 	unsigned int quiet_nan:1; | ||
| 63 | 	unsigned int exponent:8; | ||
| 64 | 	unsigned int negative:1; | ||
| 65 | #endif				/* Little endian. */ | ||
| 66 | } ieee_nan; | ||
| 67 | }; | ||
| 68 | |||
| 69 | #define IEEE754_FLOAT_BIAS	0x7f /* Added to exponent. */ | ||
| 70 | |||
| 71 | |||
| 72 | union ieee754_double | ||
| 73 | { | ||
| 74 | double d; | ||
| 75 | |||
| 76 | /* This is the IEEE 754 double-precision format. */ | ||
| 77 | struct | ||
| 78 | { | ||
| 79 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 80 | 	unsigned int negative:1; | ||
| 81 | 	unsigned int exponent:11; | ||
| 82 | 	/* Together these comprise the mantissa. */ | ||
| 83 | 	unsigned int mantissa0:20; | ||
| 84 | 	unsigned int mantissa1:32; | ||
| 85 | #endif				/* Big endian. */ | ||
| 86 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 87 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 88 | 	unsigned int mantissa0:20; | ||
| 89 | 	unsigned int exponent:11; | ||
| 90 | 	unsigned int negative:1; | ||
| 91 | 	unsigned int mantissa1:32; | ||
| 92 | # else | ||
| 93 | 	/* Together these comprise the mantissa. */ | ||
| 94 | 	unsigned int mantissa1:32; | ||
| 95 | 	unsigned int mantissa0:20; | ||
| 96 | 	unsigned int exponent:11; | ||
| 97 | 	unsigned int negative:1; | ||
| 98 | # endif | ||
| 99 | #endif				/* Little endian. */ | ||
| 100 | } ieee; | ||
| 101 | |||
| 102 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 103 | struct | ||
| 104 | { | ||
| 105 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 106 | 	unsigned int negative:1; | ||
| 107 | 	unsigned int exponent:11; | ||
| 108 | 	unsigned int quiet_nan:1; | ||
| 109 | 	/* Together these comprise the mantissa. */ | ||
| 110 | 	unsigned int mantissa0:19; | ||
| 111 | 	unsigned int mantissa1:32; | ||
| 112 | #else | ||
| 113 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 114 | 	unsigned int mantissa0:19; | ||
| 115 | 	unsigned int quiet_nan:1; | ||
| 116 | 	unsigned int exponent:11; | ||
| 117 | 	unsigned int negative:1; | ||
| 118 | 	unsigned int mantissa1:32; | ||
| 119 | # else | ||
| 120 | 	/* Together these comprise the mantissa. */ | ||
| 121 | 	unsigned int mantissa1:32; | ||
| 122 | 	unsigned int mantissa0:19; | ||
| 123 | 	unsigned int quiet_nan:1; | ||
| 124 | 	unsigned int exponent:11; | ||
| 125 | 	unsigned int negative:1; | ||
| 126 | # endif | ||
| 127 | #endif | ||
| 128 | } ieee_nan; | ||
| 129 | }; | ||
| 130 | |||
| 131 | #define IEEE754_DOUBLE_BIAS	0x3ff /* Added to exponent. */ | ||
| 132 | |||
| 133 | #if __LDBL_MANT_DIG__ == 113 | ||
| 134 | |||
| 135 | union ieee854_long_double | ||
| 136 | { | ||
| 137 | long double d; | ||
| 138 | |||
| 139 | /* This is the IEEE 854 quad-precision format. */ | ||
| 140 | struct | ||
| 141 | { | ||
| 142 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 143 | 	unsigned int negative:1; | ||
| 144 | 	unsigned int exponent:15; | ||
| 145 | 	/* Together these comprise the mantissa. */ | ||
| 146 | 	unsigned int mantissa0:16; | ||
| 147 | 	unsigned int mantissa1:32; | ||
| 148 | 	unsigned int mantissa2:32; | ||
| 149 | 	unsigned int mantissa3:32; | ||
| 150 | #endif				/* Big endian. */ | ||
| 151 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 152 | 	/* Together these comprise the mantissa. */ | ||
| 153 | 	unsigned int mantissa3:32; | ||
| 154 | 	unsigned int mantissa2:32; | ||
| 155 | 	unsigned int mantissa1:32; | ||
| 156 | 	unsigned int mantissa0:16; | ||
| 157 | 	unsigned int exponent:15; | ||
| 158 | 	unsigned int negative:1; | ||
| 159 | #endif				/* Little endian. */ | ||
| 160 | } ieee; | ||
| 161 | |||
| 162 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 163 | struct | ||
| 164 | { | ||
| 165 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 166 | 	unsigned int negative:1; | ||
| 167 | 	unsigned int exponent:15; | ||
| 168 | 	unsigned int quiet_nan:1; | ||
| 169 | 	/* Together these comprise the mantissa. */ | ||
| 170 | 	unsigned int mantissa0:15; | ||
| 171 | 	unsigned int mantissa1:32; | ||
| 172 | 	unsigned int mantissa2:32; | ||
| 173 | 	unsigned int mantissa3:32; | ||
| 174 | #endif				/* Big endian. */ | ||
| 175 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 176 | 	/* Together these comprise the mantissa. */ | ||
| 177 | 	unsigned int mantissa3:32; | ||
| 178 | 	unsigned int mantissa2:32; | ||
| 179 | 	unsigned int mantissa1:32; | ||
| 180 | 	unsigned int mantissa0:15; | ||
| 181 | 	unsigned int quiet_nan:1; | ||
| 182 | 	unsigned int exponent:15; | ||
| 183 | 	unsigned int negative:1; | ||
| 184 | #endif				/* Little endian. */ | ||
| 185 | } ieee_nan; | ||
| 186 | }; | ||
| 187 | |||
| 188 | #define IEEE854_LONG_DOUBLE_BIAS 0x3fff /* Added to exponent. */ | ||
| 189 | |||
| 190 | #elif __LDBL_MANT_DIG__ == 64 | ||
| 191 | |||
| 192 | union ieee854_long_double | ||
| 193 | { | ||
| 194 | long double d; | ||
| 195 | |||
| 196 | /* This is the IEEE 854 double-extended-precision format. */ | ||
| 197 | struct | ||
| 198 | { | ||
| 199 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 200 | 	unsigned int negative:1; | ||
| 201 | 	unsigned int exponent:15; | ||
| 202 | 	unsigned int empty:16; | ||
| 203 | 	unsigned int mantissa0:32; | ||
| 204 | 	unsigned int mantissa1:32; | ||
| 205 | #endif | ||
| 206 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 207 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 208 | 	unsigned int exponent:15; | ||
| 209 | 	unsigned int negative:1; | ||
| 210 | 	unsigned int empty:16; | ||
| 211 | 	unsigned int mantissa0:32; | ||
| 212 | 	unsigned int mantissa1:32; | ||
| 213 | # else | ||
| 214 | 	unsigned int mantissa1:32; | ||
| 215 | 	unsigned int mantissa0:32; | ||
| 216 | 	unsigned int exponent:15; | ||
| 217 | 	unsigned int negative:1; | ||
| 218 | 	unsigned int empty:16; | ||
| 219 | # endif | ||
| 220 | #endif | ||
| 221 | } ieee; | ||
| 222 | |||
| 223 | /* This is for NaNs in the IEEE 854 double-extended-precision format. */ | ||
| 224 | struct | ||
| 225 | { | ||
| 226 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 227 | 	unsigned int negative:1; | ||
| 228 | 	unsigned int exponent:15; | ||
| 229 | 	unsigned int empty:16; | ||
| 230 | 	unsigned int one:1; | ||
| 231 | 	unsigned int quiet_nan:1; | ||
| 232 | 	unsigned int mantissa0:30; | ||
| 233 | 	unsigned int mantissa1:32; | ||
| 234 | #endif | ||
| 235 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 236 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 237 | 	unsigned int exponent:15; | ||
| 238 | 	unsigned int negative:1; | ||
| 239 | 	unsigned int empty:16; | ||
| 240 | 	unsigned int mantissa0:30; | ||
| 241 | 	unsigned int quiet_nan:1; | ||
| 242 | 	unsigned int one:1; | ||
| 243 | 	unsigned int mantissa1:32; | ||
| 244 | # else | ||
| 245 | 	unsigned int mantissa1:32; | ||
| 246 | 	unsigned int mantissa0:30; | ||
| 247 | 	unsigned int quiet_nan:1; | ||
| 248 | 	unsigned int one:1; | ||
| 249 | 	unsigned int exponent:15; | ||
| 250 | 	unsigned int negative:1; | ||
| 251 | 	unsigned int empty:16; | ||
| 252 | # endif | ||
| 253 | #endif | ||
| 254 | } ieee_nan; | ||
| 255 | }; | ||
| 256 | |||
| 257 | #define IEEE854_LONG_DOUBLE_BIAS 0x3fff | ||
| 258 | |||
| 259 | #elif __LDBL_MANT_DIG__ == 53 | ||
| 260 | |||
| 261 | union ieee854_long_double | ||
| 262 | { | ||
| 263 | long double d; | ||
| 264 | |||
| 265 | /* This is the IEEE 754 double-precision format. */ | ||
| 266 | struct | ||
| 267 | { | ||
| 268 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 269 | 	unsigned int negative:1; | ||
| 270 | 	unsigned int exponent:11; | ||
| 271 | 	/* Together these comprise the mantissa. */ | ||
| 272 | 	unsigned int mantissa0:20; | ||
| 273 | 	unsigned int mantissa1:32; | ||
| 274 | #endif				/* Big endian. */ | ||
| 275 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 276 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 277 | 	unsigned int mantissa0:20; | ||
| 278 | 	unsigned int exponent:11; | ||
| 279 | 	unsigned int negative:1; | ||
| 280 | 	unsigned int mantissa1:32; | ||
| 281 | # else | ||
| 282 | 	/* Together these comprise the mantissa. */ | ||
| 283 | 	unsigned int mantissa1:32; | ||
| 284 | 	unsigned int mantissa0:20; | ||
| 285 | 	unsigned int exponent:11; | ||
| 286 | 	unsigned int negative:1; | ||
| 287 | # endif | ||
| 288 | #endif				/* Little endian. */ | ||
| 289 | } ieee; | ||
| 290 | |||
| 291 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 292 | struct | ||
| 293 | { | ||
| 294 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 295 | 	unsigned int negative:1; | ||
| 296 | 	unsigned int exponent:11; | ||
| 297 | 	unsigned int quiet_nan:1; | ||
| 298 | 	/* Together these comprise the mantissa. */ | ||
| 299 | 	unsigned int mantissa0:19; | ||
| 300 | 	unsigned int mantissa1:32; | ||
| 301 | #else | ||
| 302 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 303 | 	unsigned int mantissa0:19; | ||
| 304 | 	unsigned int quiet_nan:1; | ||
| 305 | 	unsigned int exponent:11; | ||
| 306 | 	unsigned int negative:1; | ||
| 307 | 	unsigned int mantissa1:32; | ||
| 308 | # else | ||
| 309 | 	/* Together these comprise the mantissa. */ | ||
| 310 | 	unsigned int mantissa1:32; | ||
| 311 | 	unsigned int mantissa0:19; | ||
| 312 | 	unsigned int quiet_nan:1; | ||
| 313 | 	unsigned int exponent:11; | ||
| 314 | 	unsigned int negative:1; | ||
| 315 | # endif | ||
| 316 | #endif | ||
| 317 | } ieee_nan; | ||
| 318 | }; | ||
| 319 | |||
| 320 | #define IEEE854_LONG_DOUBLE_BIAS	0x3ff /* Added to exponent. */ | ||
| 321 | |||
| 322 | #endif /* __LDBL_MANT_DIG__ == 53 */ | ||
| 323 | |||
| 324 | __END_DECLS | ||
| 325 | |||
| 326 | #endif /* ieee754.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabihf/bits/dlfcn.h deleted-64| ... | @@ -1,64 +0,0 @@ | ||
| 1 | /* System dependent definitions for run-time dynamic loading. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _DLFCN_H | ||
| 20 | # error "Never use <bits/dlfcn.h> directly; include <dlfcn.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* The MODE argument to `dlopen' contains one of the following: */ | ||
| 24 | #define RTLD_LAZY	0x0001	/* Lazy function call binding. */ | ||
| 25 | #define RTLD_NOW	0x0002	/* Immediate function call binding. */ | ||
| 26 | #define RTLD_BINDING_MASK 0x3	/* Mask of binding time value. */ | ||
| 27 | #define RTLD_NOLOAD	0x00008	/* Do not load the object. */ | ||
| 28 | #define RTLD_DEEPBIND	0x00010	/* Use deep binding. */ | ||
| 29 | |||
| 30 | /* If the following bit is set in the MODE argument to `dlopen', | ||
| 31 | the symbols of the loaded object and its dependencies are made | ||
| 32 | visible as if the object were linked directly into the program. */ | ||
| 33 | #define RTLD_GLOBAL	0x0004 | ||
| 34 | |||
| 35 | /* Unix98 demands the following flag which is the inverse to RTLD_GLOBAL. | ||
| 36 | The implementation does this by default and so we can define the | ||
| 37 | value to zero. */ | ||
| 38 | #define RTLD_LOCAL 0 | ||
| 39 | |||
| 40 | /* Do not delete object when closed. */ | ||
| 41 | #define RTLD_NODELETE	0x01000 | ||
| 42 | |||
| 43 | #ifdef __USE_GNU | ||
| 44 | /* To support profiling of shared objects it is a good idea to call | ||
| 45 | the function found using `dlsym' using the following macro since | ||
| 46 | these calls do not use the PLT. But this would mean the dynamic | ||
| 47 | loader has no chance to find out when the function is called. The | ||
| 48 | macro applies the necessary magic so that profiling is possible. | ||
| 49 | Rewrite | ||
| 50 | 	foo = (*fctp) (arg1, arg2); | ||
| 51 | into | ||
| 52 | foo = DL_CALL_FCT (fctp, (arg1, arg2)); | ||
| 53 | */ | ||
| 54 | # define DL_CALL_FCT(fctp, args) \ | ||
| 55 | (_dl_mcount_wrapper_check ((void *) (fctp)), (*(fctp)) args) | ||
| 56 | |||
| 57 | __BEGIN_DECLS | ||
| 58 | |||
| 59 | /* This function calls the profiling functions. */ | ||
| 60 | extern void _dl_mcount_wrapper_check (void *__selfpc) __THROW; | ||
| 61 | |||
| 62 | __END_DECLS | ||
| 63 | |||
| 64 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabihf/bits/errno.h deleted-52| ... | @@ -1,52 +0,0 @@ | ||
| 1 | /* Error constants. MIPS/Linux specific version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_ERRNO_H | ||
| 20 | |||
| 21 | #if !defined _ERRNO_H | ||
| 22 | # error "Never include <bits/errno.h> directly; use <errno.h> instead." | ||
| 23 | #endif | ||
| 24 | |||
| 25 | # include <linux/errno.h> | ||
| 26 | |||
| 27 | /* Older Linux headers do not define these constants. */ | ||
| 28 | # ifndef ENOTSUP | ||
| 29 | # define ENOTSUP		EOPNOTSUPP | ||
| 30 | # endif | ||
| 31 | |||
| 32 | # ifndef ECANCELED | ||
| 33 | # define ECANCELED		158 | ||
| 34 | # endif | ||
| 35 | |||
| 36 | # ifndef EOWNERDEAD | ||
| 37 | # define EOWNERDEAD		165 | ||
| 38 | # endif | ||
| 39 | |||
| 40 | # ifndef ENOTRECOVERABLE | ||
| 41 | # define ENOTRECOVERABLE	166 | ||
| 42 | # endif | ||
| 43 | |||
| 44 | # ifndef ERFKILL | ||
| 45 | # define ERFKILL		167 | ||
| 46 | # endif | ||
| 47 | |||
| 48 | # ifndef EHWPOISON | ||
| 49 | # define EHWPOISON		168 | ||
| 50 | # endif | ||
| 51 | |||
| 52 | #endif /* bits/errno.h. */ | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabihf/bits/eventfd.h deleted-31| ... | @@ -1,31 +0,0 @@ | ||
| 1 | /* Copyright (C) 2007-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_SYS_EVENTFD_H | ||
| 19 | # error "Never use <bits/eventfd.h> directly; include <sys/eventfd.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Flags for eventfd. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | EFD_SEMAPHORE = 00000001, | ||
| 26 | #define EFD_SEMAPHORE EFD_SEMAPHORE | ||
| 27 | EFD_CLOEXEC = 02000000, | ||
| 28 | #define EFD_CLOEXEC EFD_CLOEXEC | ||
| 29 | EFD_NONBLOCK = 00000200 | ||
| 30 | #define EFD_NONBLOCK EFD_NONBLOCK | ||
| 31 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabihf/bits/floatn.h deleted-97| ... | @@ -1,97 +0,0 @@ | ||
| 1 | /* Macros to control TS 18661-3 glibc features on MIPS platforms. | ||
| 2 | Copyright (C) 2017-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_FLOATN_H | ||
| 20 | #define _BITS_FLOATN_H | ||
| 21 | |||
| 22 | #include <features.h> | ||
| 23 | #include <bits/long-double.h> | ||
| 24 | |||
| 25 | /* Defined to 1 if the current compiler invocation provides a | ||
| 26 | floating-point type with the IEEE 754 binary128 format, and this | ||
| 27 | glibc includes corresponding *f128 interfaces for it. */ | ||
| 28 | #ifndef __NO_LONG_DOUBLE_MATH | ||
| 29 | # define __HAVE_FLOAT128 1 | ||
| 30 | #else | ||
| 31 | /* glibc does not support _Float128 for platforms where long double is | ||
| 32 | normally binary128 when building with long double as binary64. | ||
| 33 | GCC's default for supported scalar modes does not support it either | ||
| 34 | in that case. */ | ||
| 35 | # define __HAVE_FLOAT128 0 | ||
| 36 | #endif | ||
| 37 | |||
| 38 | /* Defined to 1 if __HAVE_FLOAT128 is 1 and the type is ABI-distinct | ||
| 39 | from the default float, double and long double types in this glibc. */ | ||
| 40 | #define __HAVE_DISTINCT_FLOAT128 0 | ||
| 41 | |||
| 42 | /* Defined to 1 if the current compiler invocation provides a | ||
| 43 | floating-point type with the right format for _Float64x, and this | ||
| 44 | glibc includes corresponding *f64x interfaces for it. */ | ||
| 45 | #define __HAVE_FLOAT64X __HAVE_FLOAT128 | ||
| 46 | |||
| 47 | /* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format | ||
| 48 | of long double. Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has | ||
| 49 | the format of _Float128, which must be different from that of long | ||
| 50 | double. */ | ||
| 51 | #define __HAVE_FLOAT64X_LONG_DOUBLE __HAVE_FLOAT128 | ||
| 52 | |||
| 53 | #ifndef __ASSEMBLER__ | ||
| 54 | |||
| 55 | /* Defined to concatenate the literal suffix to be used with _Float128 | ||
| 56 | types, if __HAVE_FLOAT128 is 1. */ | ||
| 57 | # if __HAVE_FLOAT128 | ||
| 58 | # if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) | ||
| 59 | /* The literal suffix f128 exists only since GCC 7.0. */ | ||
| 60 | # define __f128(x) x##l | ||
| 61 | # else | ||
| 62 | # define __f128(x) x##f128 | ||
| 63 | # endif | ||
| 64 | # endif | ||
| 65 | |||
| 66 | /* Defined to a complex binary128 type if __HAVE_FLOAT128 is 1. */ | ||
| 67 | # if __HAVE_FLOAT128 | ||
| 68 | # if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) | ||
| 69 | # define __CFLOAT128 _Complex long double | ||
| 70 | # else | ||
| 71 | # define __CFLOAT128 _Complex _Float128 | ||
| 72 | # endif | ||
| 73 | # endif | ||
| 74 | |||
| 75 | /* The remaining of this file provides support for older compilers. */ | ||
| 76 | # if __HAVE_FLOAT128 | ||
| 77 | |||
| 78 | /* The type _Float128 exists only since GCC 7.0. */ | ||
| 79 | # if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) | ||
| 80 | typedef long double _Float128; | ||
| 81 | # endif | ||
| 82 | |||
| 83 | /* Various built-in functions do not exist before GCC 7.0. */ | ||
| 84 | # if !__GNUC_PREREQ (7, 0) | ||
| 85 | # define __builtin_huge_valf128() (__builtin_huge_vall ()) | ||
| 86 | # define __builtin_inff128() (__builtin_infl ()) | ||
| 87 | # define __builtin_nanf128(x) (__builtin_nanl (x)) | ||
| 88 | # define __builtin_nansf128(x) (__builtin_nansl (x)) | ||
| 89 | # endif | ||
| 90 | |||
| 91 | # endif | ||
| 92 | |||
| 93 | #endif /* !__ASSEMBLER__. */ | ||
| 94 | |||
| 95 | #include <bits/floatn-common.h> | ||
| 96 | |||
| 97 | #endif /* _BITS_FLOATN_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabihf/bits/inotify.h deleted-29| ... | @@ -1,29 +0,0 @@ | ||
| 1 | /* Copyright (C) 2005-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_SYS_INOTIFY_H | ||
| 19 | # error "Never use <bits/inotify.h> directly; include <sys/inotify.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Flags for the parameter of inotify_init1. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | IN_CLOEXEC = 02000000, | ||
| 26 | #define IN_CLOEXEC IN_CLOEXEC | ||
| 27 | IN_NONBLOCK = 00000200 | ||
| 28 | #define IN_NONBLOCK IN_NONBLOCK | ||
| 29 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabihf/bits/ioctl-types.h deleted-75| ... | @@ -1,75 +0,0 @@ | ||
| 1 | /* Structure types for pre-termios terminal ioctls. Linux/MIPS version. | ||
| 2 | Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_IOCTL_H | ||
| 20 | # error "Never use <bits/ioctl-types.h> directly; include <sys/ioctl.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Get definition of constants for use with `ioctl'. */ | ||
| 24 | #include <asm/ioctls.h> | ||
| 25 | |||
| 26 | struct winsize | ||
| 27 | { | ||
| 28 | unsigned short int ws_row; | ||
| 29 | unsigned short int ws_col; | ||
| 30 | unsigned short int ws_xpixel; | ||
| 31 | unsigned short int ws_ypixel; | ||
| 32 | }; | ||
| 33 | |||
| 34 | #define NCC	8 | ||
| 35 | struct termio | ||
| 36 | { | ||
| 37 | unsigned short int c_iflag;		/* input mode flags */ | ||
| 38 | unsigned short int c_oflag;		/* output mode flags */ | ||
| 39 | unsigned short int c_cflag;		/* control mode flags */ | ||
| 40 | unsigned short int c_lflag;		/* local mode flags */ | ||
| 41 | char c_line;			/* line discipline */ | ||
| 42 | /* Yes, this is really NCCS. */ | ||
| 43 | unsigned char c_cc[32 /* NCCS */]; /* control characters */ | ||
| 44 | }; | ||
| 45 | |||
| 46 | /* modem lines */ | ||
| 47 | #define TIOCM_LE	0x001		/* line enable */ | ||
| 48 | #define TIOCM_DTR	0x002		/* data terminal ready */ | ||
| 49 | #define TIOCM_RTS	0x004		/* request to send */ | ||
| 50 | #define TIOCM_ST	0x010		/* secondary transmit */ | ||
| 51 | #define TIOCM_SR	0x020		/* secondary receive */ | ||
| 52 | #define TIOCM_CTS	0x040		/* clear to send */ | ||
| 53 | #define TIOCM_CAR	0x100		/* carrier detect */ | ||
| 54 | #define TIOCM_CD	TIOCM_CAR | ||
| 55 | #define TIOCM_RNG	0x200		/* ring */ | ||
| 56 | #define TIOCM_RI	TIOCM_RNG | ||
| 57 | #define TIOCM_DSR	0x400		/* data set ready */ | ||
| 58 | |||
| 59 | /* line disciplines */ | ||
| 60 | #define N_TTY		0 | ||
| 61 | #define N_SLIP		1 | ||
| 62 | #define N_MOUSE		2 | ||
| 63 | #define N_PPP		3 | ||
| 64 | #define N_STRIP		4 | ||
| 65 | #define N_AX25		5 | ||
| 66 | #define N_X25		6	/* X.25 async */ | ||
| 67 | #define N_6PACK		7 | ||
| 68 | #define N_MASC		8	/* Mobitex module */ | ||
| 69 | #define N_R3964		9	/* Simatic R3964 module */ | ||
| 70 | #define N_PROFIBUS_FDL	10	/* Profibus */ | ||
| 71 | #define N_IRDA		11	/* Linux IR */ | ||
| 72 | #define N_SMSBLOCK	12	/* SMS block mode */ | ||
| 73 | #define N_HDLC		13	/* synchronous HDLC */ | ||
| 74 | #define N_SYNC_PPP	14	/* synchronous PPP */ | ||
| 75 | #define	N_HCI		15	/* Bluetooth HCI UART */ | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabihf/bits/ipctypes.h deleted-31| ... | @@ -1,31 +0,0 @@ | ||
| 1 | /* bits/ipctypes.h -- Define some types used by SysV IPC/MSG/SHM. MIPS version | ||
| 2 | Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* | ||
| 20 | * Never include <bits/ipctypes.h> directly. | ||
| 21 | */ | ||
| 22 | |||
| 23 | #ifndef _BITS_IPCTYPES_H | ||
| 24 | #define _BITS_IPCTYPES_H	1 | ||
| 25 | |||
| 26 | #include <bits/types.h> | ||
| 27 | |||
| 28 | typedef __SLONG32_TYPE __ipc_pid_t; | ||
| 29 | |||
| 30 | |||
| 31 | #endif /* bits/ipctypes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabihf/bits/mman.h deleted-44| ... | @@ -1,44 +0,0 @@ | ||
| 1 | /* Definitions for POSIX memory map interface. Linux/MIPS version. | ||
| 2 | Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_MMAN_H | ||
| 20 | # error "Never use <bits/mman.h> directly; include <sys/mman.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* The following definitions basically come from the kernel headers. | ||
| 24 | But the kernel header is not namespace clean. */ | ||
| 25 | |||
| 26 | /* These are Linux-specific. */ | ||
| 27 | #define MAP_NORESERVE	0x0400		/* don't check for reservations */ | ||
| 28 | #define MAP_GROWSDOWN	0x1000		/* stack-like segment */ | ||
| 29 | #define MAP_DENYWRITE	0x2000		/* ETXTBSY */ | ||
| 30 | #define MAP_EXECUTABLE	0x4000		/* mark it as an executable */ | ||
| 31 | #define MAP_LOCKED	0x8000		/* pages are locked */ | ||
| 32 | #define MAP_POPULATE 0x10000 /* populate (prefault) pagetables */ | ||
| 33 | #define MAP_NONBLOCK 0x20000 /* do not block on IO */ | ||
| 34 | #define MAP_STACK	0x40000		/* Allocation is for a stack. */ | ||
| 35 | #define MAP_HUGETLB	0x80000		/* Create huge page mapping. */ | ||
| 36 | #define MAP_FIXED_NOREPLACE 0x100000	/* MAP_FIXED but do not unmap | ||
| 37 | 					 underlying mapping. */ | ||
| 38 | |||
| 39 | #define __MAP_ANONYMOUS 0x0800 | ||
| 40 | |||
| 41 | /* Include generic Linux declarations. */ | ||
| 42 | #include <bits/mman-linux.h> | ||
| 43 | |||
| 44 | #define MAP_RENAME	MAP_ANONYMOUS | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabihf/bits/poll.h deleted-49| ... | @@ -1,49 +0,0 @@ | ||
| 1 | /* Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_POLL_H | ||
| 19 | # error "Never use <bits/poll.h> directly; include <sys/poll.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Event types that can be polled for. These bits may be set in `events' | ||
| 23 | to indicate the interesting event types; they will appear in `revents' | ||
| 24 | to indicate the status of the file descriptor. */ | ||
| 25 | #define POLLIN		0x001		/* There is data to read. */ | ||
| 26 | #define POLLPRI		0x002		/* There is urgent data to read. */ | ||
| 27 | #define POLLOUT		0x004		/* Writing now will not block. */ | ||
| 28 | |||
| 29 | #if defined __USE_XOPEN || defined __USE_XOPEN2K8 | ||
| 30 | /* These values are defined in XPG4.2. */ | ||
| 31 | # define POLLRDNORM	0x040		/* Normal data may be read. */ | ||
| 32 | # define POLLRDBAND	0x080		/* Priority data may be read. */ | ||
| 33 | # define POLLWRNORM	POLLOUT		/* Writing now will not block. */ | ||
| 34 | # define POLLWRBAND	0x100		/* Priority data may be written. */ | ||
| 35 | #endif | ||
| 36 | |||
| 37 | #ifdef __USE_GNU | ||
| 38 | /* These are extensions for Linux. */ | ||
| 39 | # define POLLMSG	0x400 | ||
| 40 | # define POLLREMOVE	0x1000 | ||
| 41 | # define POLLRDHUP	0x2000 | ||
| 42 | #endif | ||
| 43 | |||
| 44 | /* Event types always implicitly polled for. These bits need not be set in | ||
| 45 | `events', but they will appear in `revents' to indicate the status of | ||
| 46 | the file descriptor. */ | ||
| 47 | #define POLLERR		0x008		/* Error condition. */ | ||
| 48 | #define POLLHUP		0x010		/* Hung up. */ | ||
| 49 | #define POLLNVAL	0x020		/* Invalid polling request. */ | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabihf/bits/pthread_stack_min.h deleted-20| ... | @@ -1,20 +0,0 @@ | ||
| 1 | /* Definition of PTHREAD_STACK_MIN. MIPS Linux version. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public License as | ||
| 7 | published by the Free Software Foundation; either version 2.1 of the | ||
| 8 | License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* Minimum size for a thread. At least two pages with 64k pages. */ | ||
| 20 | #define PTHREAD_STACK_MIN	131072 | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabihf/bits/pthreadtypes-arch.h deleted-44| ... | @@ -1,44 +0,0 @@ | ||
| 1 | /* Machine-specific pthread type layouts. MIPS version. | ||
| 2 | Copyright (C) 2005-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_PTHREADTYPES_ARCH_H | ||
| 20 | #define _BITS_PTHREADTYPES_ARCH_H	1 | ||
| 21 | |||
| 22 | #include <bits/endian.h> | ||
| 23 | |||
| 24 | #if _MIPS_SIM == _ABI64 | ||
| 25 | # define __SIZEOF_PTHREAD_ATTR_T 56 | ||
| 26 | # define __SIZEOF_PTHREAD_MUTEX_T 40 | ||
| 27 | # define __SIZEOF_PTHREAD_RWLOCK_T 56 | ||
| 28 | # define __SIZEOF_PTHREAD_BARRIER_T 32 | ||
| 29 | #else | ||
| 30 | # define __SIZEOF_PTHREAD_ATTR_T 36 | ||
| 31 | # define __SIZEOF_PTHREAD_MUTEX_T 24 | ||
| 32 | # define __SIZEOF_PTHREAD_RWLOCK_T 32 | ||
| 33 | # define __SIZEOF_PTHREAD_BARRIER_T 20 | ||
| 34 | #endif | ||
| 35 | #define __SIZEOF_PTHREAD_MUTEXATTR_T 4 | ||
| 36 | #define __SIZEOF_PTHREAD_COND_T 48 | ||
| 37 | #define __SIZEOF_PTHREAD_CONDATTR_T 4 | ||
| 38 | #define __SIZEOF_PTHREAD_RWLOCKATTR_T 8 | ||
| 39 | #define __SIZEOF_PTHREAD_BARRIERATTR_T 4 | ||
| 40 | |||
| 41 | #define __LOCK_ALIGNMENT | ||
| 42 | #define __ONCE_ALIGNMENT | ||
| 43 | |||
| 44 | #endif	/* bits/pthreadtypes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabihf/bits/resource.h deleted-231| ... | @@ -1,231 +0,0 @@ | ||
| 1 | /* Bit values & structures for resource limits. Linux/MIPS version. | ||
| 2 | Copyright (C) 1994-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_RESOURCE_H | ||
| 20 | # error "Never use <bits/resource.h> directly; include <sys/resource.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <bits/types.h> | ||
| 24 | |||
| 25 | /* Transmute defines to enumerations. The macro re-definitions are | ||
| 26 | necessary because some programs want to test for operating system | ||
| 27 | features with #ifdef RUSAGE_SELF. In ISO C the reflexive | ||
| 28 | definition is a no-op. */ | ||
| 29 | |||
| 30 | /* Kinds of resource limit. */ | ||
| 31 | enum __rlimit_resource | ||
| 32 | { | ||
| 33 | /* Per-process CPU limit, in seconds. */ | ||
| 34 | RLIMIT_CPU = 0, | ||
| 35 | #define RLIMIT_CPU RLIMIT_CPU | ||
| 36 | |||
| 37 | /* Largest file that can be created, in bytes. */ | ||
| 38 | RLIMIT_FSIZE = 1, | ||
| 39 | #define	RLIMIT_FSIZE RLIMIT_FSIZE | ||
| 40 | |||
| 41 | /* Maximum size of data segment, in bytes. */ | ||
| 42 | RLIMIT_DATA = 2, | ||
| 43 | #define	RLIMIT_DATA RLIMIT_DATA | ||
| 44 | |||
| 45 | /* Maximum size of stack segment, in bytes. */ | ||
| 46 | RLIMIT_STACK = 3, | ||
| 47 | #define	RLIMIT_STACK RLIMIT_STACK | ||
| 48 | |||
| 49 | /* Largest core file that can be created, in bytes. */ | ||
| 50 | RLIMIT_CORE = 4, | ||
| 51 | #define	RLIMIT_CORE RLIMIT_CORE | ||
| 52 | |||
| 53 | /* Largest resident set size, in bytes. | ||
| 54 | This affects swapping; processes that are exceeding their | ||
| 55 | resident set size will be more likely to have physical memory | ||
| 56 | taken from them. */ | ||
| 57 | __RLIMIT_RSS = 7, | ||
| 58 | #define	RLIMIT_RSS __RLIMIT_RSS | ||
| 59 | |||
| 60 | /* Number of open files. */ | ||
| 61 | RLIMIT_NOFILE = 5, | ||
| 62 | __RLIMIT_OFILE = RLIMIT_NOFILE, /* BSD name for same. */ | ||
| 63 | #define RLIMIT_NOFILE RLIMIT_NOFILE | ||
| 64 | #define RLIMIT_OFILE __RLIMIT_OFILE | ||
| 65 | |||
| 66 | /* Address space limit (?) */ | ||
| 67 | RLIMIT_AS = 6, | ||
| 68 | #define RLIMIT_AS RLIMIT_AS | ||
| 69 | |||
| 70 | /* Number of processes. */ | ||
| 71 | __RLIMIT_NPROC = 8, | ||
| 72 | #define RLIMIT_NPROC __RLIMIT_NPROC | ||
| 73 | |||
| 74 | /* Locked-in-memory address space. */ | ||
| 75 | __RLIMIT_MEMLOCK = 9, | ||
| 76 | #define RLIMIT_MEMLOCK __RLIMIT_MEMLOCK | ||
| 77 | |||
| 78 | /* Maximum number of file locks. */ | ||
| 79 | __RLIMIT_LOCKS = 10, | ||
| 80 | #define RLIMIT_LOCKS __RLIMIT_LOCKS | ||
| 81 | |||
| 82 | /* Maximum number of pending signals. */ | ||
| 83 | __RLIMIT_SIGPENDING = 11, | ||
| 84 | #define RLIMIT_SIGPENDING __RLIMIT_SIGPENDING | ||
| 85 | |||
| 86 | /* Maximum bytes in POSIX message queues. */ | ||
| 87 | __RLIMIT_MSGQUEUE = 12, | ||
| 88 | #define RLIMIT_MSGQUEUE __RLIMIT_MSGQUEUE | ||
| 89 | |||
| 90 | /* Maximum nice priority allowed to raise to. | ||
| 91 | Nice levels 19 .. -20 correspond to 0 .. 39 | ||
| 92 | values of this resource limit. */ | ||
| 93 | __RLIMIT_NICE = 13, | ||
| 94 | #define RLIMIT_NICE __RLIMIT_NICE | ||
| 95 | |||
| 96 | /* Maximum realtime priority allowed for non-priviledged | ||
| 97 | processes. */ | ||
| 98 | __RLIMIT_RTPRIO = 14, | ||
| 99 | #define RLIMIT_RTPRIO __RLIMIT_RTPRIO | ||
| 100 | |||
| 101 | /* Maximum CPU time in microseconds that a process scheduled under a real-time | ||
| 102 | scheduling policy may consume without making a blocking system | ||
| 103 | call before being forcibly descheduled. */ | ||
| 104 | __RLIMIT_RTTIME = 15, | ||
| 105 | #define RLIMIT_RTTIME __RLIMIT_RTTIME | ||
| 106 | |||
| 107 | __RLIMIT_NLIMITS = 16, | ||
| 108 | __RLIM_NLIMITS = __RLIMIT_NLIMITS | ||
| 109 | #define RLIMIT_NLIMITS __RLIMIT_NLIMITS | ||
| 110 | #define RLIM_NLIMITS __RLIM_NLIMITS | ||
| 111 | }; | ||
| 112 | |||
| 113 | /* Value to indicate that there is no limit. */ | ||
| 114 | #if _MIPS_SIM == _ABI64 | ||
| 115 | /* The N64 syscall uses this value. */ | ||
| 116 | # define RLIM_INFINITY 0xffffffffffffffffUL | ||
| 117 | # ifdef __USE_LARGEFILE64 | ||
| 118 | # define RLIM64_INFINITY 0xffffffffffffffffUL | ||
| 119 | # endif | ||
| 120 | #else | ||
| 121 | /* The O32 and N32 syscalls use 0x7fffffff. */ | ||
| 122 | # ifndef __USE_FILE_OFFSET64 | ||
| 123 | # define RLIM_INFINITY ((long int)(~0UL >> 1)) | ||
| 124 | # else | ||
| 125 | # define RLIM_INFINITY 0xffffffffffffffffULL | ||
| 126 | # endif | ||
| 127 | # ifdef __USE_LARGEFILE64 | ||
| 128 | # define RLIM64_INFINITY 0xffffffffffffffffULL | ||
| 129 | # endif | ||
| 130 | #endif | ||
| 131 | |||
| 132 | /* We can represent all limits. */ | ||
| 133 | #define RLIM_SAVED_MAX	RLIM_INFINITY | ||
| 134 | #define RLIM_SAVED_CUR	RLIM_INFINITY | ||
| 135 | |||
| 136 | |||
| 137 | /* Type for resource quantity measurement. */ | ||
| 138 | #ifndef __USE_FILE_OFFSET64 | ||
| 139 | typedef __rlim_t rlim_t; | ||
| 140 | #else | ||
| 141 | typedef __rlim64_t rlim_t; | ||
| 142 | #endif | ||
| 143 | #ifdef __USE_LARGEFILE64 | ||
| 144 | typedef __rlim64_t rlim64_t; | ||
| 145 | #endif | ||
| 146 | |||
| 147 | struct rlimit | ||
| 148 | { | ||
| 149 | /* The current (soft) limit. */ | ||
| 150 | rlim_t rlim_cur; | ||
| 151 | /* The hard limit. */ | ||
| 152 | rlim_t rlim_max; | ||
| 153 | }; | ||
| 154 | |||
| 155 | #ifdef __USE_LARGEFILE64 | ||
| 156 | struct rlimit64 | ||
| 157 | { | ||
| 158 | /* The current (soft) limit. */ | ||
| 159 | rlim64_t rlim_cur; | ||
| 160 | /* The hard limit. */ | ||
| 161 | rlim64_t rlim_max; | ||
| 162 | }; | ||
| 163 | #endif | ||
| 164 | |||
| 165 | /* Whose usage statistics do you want? */ | ||
| 166 | enum __rusage_who | ||
| 167 | { | ||
| 168 | /* The calling process. */ | ||
| 169 | RUSAGE_SELF = 0, | ||
| 170 | #define RUSAGE_SELF RUSAGE_SELF | ||
| 171 | |||
| 172 | /* All of its terminated child processes. */ | ||
| 173 | RUSAGE_CHILDREN = -1 | ||
| 174 | #define RUSAGE_CHILDREN RUSAGE_CHILDREN | ||
| 175 | |||
| 176 | #ifdef __USE_GNU | ||
| 177 | , | ||
| 178 | /* The calling thread. */ | ||
| 179 | RUSAGE_THREAD = 1 | ||
| 180 | # define RUSAGE_THREAD RUSAGE_THREAD | ||
| 181 | /* Name for the same functionality on Solaris. */ | ||
| 182 | # define RUSAGE_LWP RUSAGE_THREAD | ||
| 183 | #endif | ||
| 184 | }; | ||
| 185 | |||
| 186 | #include <bits/types/struct_timeval.h> | ||
| 187 | #include <bits/types/struct_rusage.h> | ||
| 188 | |||
| 189 | /* Priority limits. */ | ||
| 190 | #define PRIO_MIN	-20	/* Minimum priority a process can have. */ | ||
| 191 | #define PRIO_MAX	20	/* Maximum priority a process can have. */ | ||
| 192 | |||
| 193 | /* The type of the WHICH argument to `getpriority' and `setpriority', | ||
| 194 | indicating what flavor of entity the WHO argument specifies. */ | ||
| 195 | enum __priority_which | ||
| 196 | { | ||
| 197 | PRIO_PROCESS = 0,		/* WHO is a process ID. */ | ||
| 198 | #define PRIO_PROCESS PRIO_PROCESS | ||
| 199 | PRIO_PGRP = 1,		/* WHO is a process group ID. */ | ||
| 200 | #define PRIO_PGRP PRIO_PGRP | ||
| 201 | PRIO_USER = 2			/* WHO is a user ID. */ | ||
| 202 | #define PRIO_USER PRIO_USER | ||
| 203 | }; | ||
| 204 | |||
| 205 | |||
| 206 | __BEGIN_DECLS | ||
| 207 | |||
| 208 | #ifdef __USE_GNU | ||
| 209 | /* Modify and return resource limits of a process atomically. */ | ||
| 210 | # ifndef __USE_FILE_OFFSET64 | ||
| 211 | extern int prlimit (__pid_t __pid, enum __rlimit_resource __resource, | ||
| 212 | 		 const struct rlimit *__new_limit, | ||
| 213 | 		 struct rlimit *__old_limit) __THROW; | ||
| 214 | # else | ||
| 215 | # ifdef __REDIRECT_NTH | ||
| 216 | extern int __REDIRECT_NTH (prlimit, (__pid_t __pid, | ||
| 217 | 				 enum __rlimit_resource __resource, | ||
| 218 | 				 const struct rlimit *__new_limit, | ||
| 219 | 				 struct rlimit *__old_limit), prlimit64); | ||
| 220 | # else | ||
| 221 | # define prlimit prlimit64 | ||
| 222 | # endif | ||
| 223 | # endif | ||
| 224 | # ifdef __USE_LARGEFILE64 | ||
| 225 | extern int prlimit64 (__pid_t __pid, enum __rlimit_resource __resource, | ||
| 226 | 		 const struct rlimit64 *__new_limit, | ||
| 227 | 		 struct rlimit64 *__old_limit) __THROW; | ||
| 228 | # endif | ||
| 229 | #endif | ||
| 230 | |||
| 231 | __END_DECLS | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabihf/bits/semaphore.h deleted-36| ... | @@ -1,36 +0,0 @@ | ||
| 1 | /* Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SEMAPHORE_H | ||
| 19 | # error "Never use <bits/semaphore.h> directly; include <semaphore.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | #if _MIPS_SIM == _ABI64 | ||
| 23 | # define __SIZEOF_SEM_T	32 | ||
| 24 | #else | ||
| 25 | # define __SIZEOF_SEM_T	16 | ||
| 26 | #endif | ||
| 27 | |||
| 28 | /* Value returned if `sem_open' failed. */ | ||
| 29 | #define SEM_FAILED ((sem_t *) 0) | ||
| 30 | |||
| 31 | |||
| 32 | typedef union | ||
| 33 | { | ||
| 34 | char __size[__SIZEOF_SEM_T]; | ||
| 35 | long int __align; | ||
| 36 | } sem_t; | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabihf/bits/shmlba.h deleted-24| ... | @@ -1,24 +0,0 @@ | ||
| 1 | /* Define SHMLBA. MIPS version. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SHM_H | ||
| 20 | # error "Never use <bits/shmlba.h> directly; include <sys/shm.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Segment low boundary address multiple. */ | ||
| 24 | #define SHMLBA		0x40000 | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabihf/bits/sigaction.h deleted-94| ... | @@ -1,94 +0,0 @@ | ||
| 1 | /* The proper definitions for Linux/MIPS's sigaction. | ||
| 2 | Copyright (C) 1993-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_SIGACTION_H | ||
| 20 | #define _BITS_SIGACTION_H 1 | ||
| 21 | |||
| 22 | #ifndef _SIGNAL_H | ||
| 23 | # error "Never include <bits/sigaction.h> directly; use <signal.h> instead." | ||
| 24 | #endif | ||
| 25 | |||
| 26 | /* Structure describing the action to be taken when a signal arrives. */ | ||
| 27 | struct sigaction | ||
| 28 | { | ||
| 29 | /* Special flags. */ | ||
| 30 | int sa_flags; | ||
| 31 | |||
| 32 | /* Signal handler. */ | ||
| 33 | #if defined __USE_POSIX199309 || defined __USE_XOPEN_EXTENDED | ||
| 34 | union | ||
| 35 | { | ||
| 36 | 	/* Used if SA_SIGINFO is not set. */ | ||
| 37 | 	__sighandler_t sa_handler; | ||
| 38 | 	/* Used if SA_SIGINFO is set. */ | ||
| 39 | 	void (*sa_sigaction) (int, siginfo_t *, void *); | ||
| 40 | } | ||
| 41 | __sigaction_handler; | ||
| 42 | # define sa_handler __sigaction_handler.sa_handler | ||
| 43 | # define sa_sigaction __sigaction_handler.sa_sigaction | ||
| 44 | #else | ||
| 45 | __sighandler_t sa_handler; | ||
| 46 | #endif | ||
| 47 | /* Additional set of signals to be blocked. */ | ||
| 48 | __sigset_t sa_mask; | ||
| 49 | |||
| 50 | /* The ABI says here are two unused ints following. */ | ||
| 51 | /* Restore handler. */ | ||
| 52 | void (*sa_restorer) (void); | ||
| 53 | |||
| 54 | #if _MIPS_SZPTR < 64 | ||
| 55 | int sa_resv[1]; | ||
| 56 | #endif | ||
| 57 | }; | ||
| 58 | |||
| 59 | /* Bits in `sa_flags'. */ | ||
| 60 | /* Please note that some Linux kernels versions use different values for these | ||
| 61 | flags which is a bug in those kernel versions. */ | ||
| 62 | #define SA_NOCLDSTOP 0x00000001 /* Don't send SIGCHLD when children stop. */ | ||
| 63 | #define SA_NOCLDWAIT 0x00010000 /* Don't create zombie on child death. */ | ||
| 64 | #define SA_SIGINFO 0x00000008 /* Invoke signal-catching function with | ||
| 65 | 				 three arguments instead of one. */ | ||
| 66 | #if defined __USE_XOPEN_EXTENDED || defined __USE_MISC | ||
| 67 | # define SA_ONSTACK 0x08000000 /* Use signal stack by using `sa_restorer'. */ | ||
| 68 | #endif | ||
| 69 | #if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8 | ||
| 70 | # define SA_RESETHAND 0x80000000 /* Reset to SIG_DFL on entry to handler. */ | ||
| 71 | # define SA_RESTART 0x10000000 /* Restart syscall on signal return. */ | ||
| 72 | # define SA_NODEFER 0x40000000 /* Don't automatically block the signal when | ||
| 73 | 				 its handler is being executed. */ | ||
| 74 | #endif | ||
| 75 | #ifdef __USE_MISC | ||
| 76 | # define SA_INTERRUPT 0x20000000 /* Historical no-op. */ | ||
| 77 | |||
| 78 | /* Some aliases for the SA_ constants. */ | ||
| 79 | # define SA_NOMASK SA_NODEFER | ||
| 80 | # define SA_ONESHOT SA_RESETHAND | ||
| 81 | # define SA_STACK SA_ONSTACK | ||
| 82 | #endif | ||
| 83 | |||
| 84 | /* Values for the HOW argument to `sigprocmask'. */ | ||
| 85 | #define SIG_NOP	 0		/* 0 is unused to catch errors */ | ||
| 86 | #define	SIG_BLOCK 1		/* Block signals. */ | ||
| 87 | #define	SIG_UNBLOCK 2		/* Unblock signals. */ | ||
| 88 | #define	SIG_SETMASK 3		/* Set the set of blocked signals. */ | ||
| 89 | #ifdef __USE_MISC | ||
| 90 | # define SIG_SETMASK32 256	/* Goodie from SGI for BSD compatibility: | ||
| 91 | 				 set only the low 32 bit of the sigset. */ | ||
| 92 | #endif | ||
| 93 | |||
| 94 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabihf/bits/sigcontext.h deleted-82| ... | @@ -1,82 +0,0 @@ | ||
| 1 | /* Copyright (C) 1996-2025 Free Software Foundation, Inc. This file is part of the GNU C Library. | ||
| 2 | |||
| 3 | The GNU C Library is free software; you can redistribute it and/or | ||
| 4 | modify it under the terms of the GNU Lesser General Public | ||
| 5 | License as published by the Free Software Foundation; either | ||
| 6 | version 2.1 of the License, or (at your option) any later version. | ||
| 7 | |||
| 8 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 9 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 10 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 11 | Lesser General Public License for more details. | ||
| 12 | |||
| 13 | You should have received a copy of the GNU Lesser General Public | ||
| 14 | License along with the GNU C Library. If not, see | ||
| 15 | <https://www.gnu.org/licenses/>. */ | ||
| 16 | |||
| 17 | #ifndef _BITS_SIGCONTEXT_H | ||
| 18 | #define _BITS_SIGCONTEXT_H 1 | ||
| 19 | |||
| 20 | #if !defined _SIGNAL_H && !defined _SYS_UCONTEXT_H | ||
| 21 | # error "Never use <bits/sigcontext.h> directly; include <signal.h> instead." | ||
| 22 | #endif | ||
| 23 | |||
| 24 | #include <sgidefs.h> | ||
| 25 | |||
| 26 | #if _MIPS_SIM == _ABIO32 | ||
| 27 | |||
| 28 | /* Certain unused fields were replaced with new ones in 2.6.12-rc4. | ||
| 29 | The changes were as follows: | ||
| 30 | |||
| 31 | sc_cause -> sc_hi1 | ||
| 32 | sc_badvaddr -> sc_lo1 | ||
| 33 | sc_sigset[0] -> sc_hi2 | ||
| 34 | sc_sigset[1] -> sc_lo2 | ||
| 35 | sc_sigset[2] -> sc_hi3 | ||
| 36 | sc_sigset[3] -> sc_lo3 | ||
| 37 | |||
| 38 | sc_regmask, sc_ownedfp and sc_fpc_eir are not used. */ | ||
| 39 | struct sigcontext { | ||
| 40 | unsigned int sc_regmask; | ||
| 41 | unsigned int sc_status; | ||
| 42 | __extension__ unsigned long long sc_pc; | ||
| 43 | __extension__ unsigned long long sc_regs[32]; | ||
| 44 | __extension__ unsigned long long sc_fpregs[32]; | ||
| 45 | unsigned int sc_ownedfp; | ||
| 46 | unsigned int sc_fpc_csr; | ||
| 47 | unsigned int sc_fpc_eir; | ||
| 48 | unsigned int sc_used_math; | ||
| 49 | unsigned int sc_dsp; | ||
| 50 | __extension__ unsigned long long sc_mdhi; | ||
| 51 | __extension__ unsigned long long sc_mdlo; | ||
| 52 | unsigned long sc_hi1; | ||
| 53 | unsigned long sc_lo1; | ||
| 54 | unsigned long sc_hi2; | ||
| 55 | unsigned long sc_lo2; | ||
| 56 | unsigned long sc_hi3; | ||
| 57 | unsigned long sc_lo3; | ||
| 58 | }; | ||
| 59 | |||
| 60 | #else | ||
| 61 | |||
| 62 | /* This structure changed in 2.6.12-rc4 when DSP support was added. */ | ||
| 63 | struct sigcontext { | ||
| 64 | __extension__ unsigned long long sc_regs[32]; | ||
| 65 | __extension__ unsigned long long sc_fpregs[32]; | ||
| 66 | __extension__ unsigned long long sc_mdhi; | ||
| 67 | __extension__ unsigned long long sc_hi1; | ||
| 68 | __extension__ unsigned long long sc_hi2; | ||
| 69 | __extension__ unsigned long long sc_hi3; | ||
| 70 | __extension__ unsigned long long sc_mdlo; | ||
| 71 | __extension__ unsigned long long sc_lo1; | ||
| 72 | __extension__ unsigned long long sc_lo2; | ||
| 73 | __extension__ unsigned long long sc_lo3; | ||
| 74 | __extension__ unsigned long long sc_pc; | ||
| 75 | unsigned int sc_fpc_csr; | ||
| 76 | unsigned int sc_used_math; | ||
| 77 | unsigned int sc_dsp; | ||
| 78 | unsigned int sc_reserved; | ||
| 79 | }; | ||
| 80 | |||
| 81 | #endif /* _MIPS_SIM != _ABIO32 */ | ||
| 82 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabihf/bits/siginfo-arch.h deleted-13| ... | @@ -1,13 +0,0 @@ | ||
| 1 | /* Architecture-specific adjustments to siginfo_t. MIPS version. */ | ||
| 2 | #ifndef _BITS_SIGINFO_ARCH_H | ||
| 3 | #define _BITS_SIGINFO_ARCH_H 1 | ||
| 4 | |||
| 5 | /* MIPS has the si_code and si_errno fields in the opposite order from | ||
| 6 | all other architectures. */ | ||
| 7 | #define __SI_ERRNO_THEN_CODE 0 | ||
| 8 | |||
| 9 | /* MIPS also has different values for SI_ASYNCIO, SI_MESGQ, and SI_TIMER | ||
| 10 | than all other architectures. */ | ||
| 11 | #define __SI_ASYNCIO_AFTER_SIGIO 0 | ||
| 12 | |||
| 13 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabihf/bits/signalfd.h deleted-29| ... | @@ -1,29 +0,0 @@ | ||
| 1 | /* Copyright (C) 2007-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_SYS_SIGNALFD_H | ||
| 19 | # error "Never use <bits/signalfd.h> directly; include <sys/signalfd.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Flags for signalfd. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | SFD_CLOEXEC = 02000000, | ||
| 26 | #define SFD_CLOEXEC SFD_CLOEXEC | ||
| 27 | SFD_NONBLOCK = 00000200 | ||
| 28 | #define SFD_NONBLOCK SFD_NONBLOCK | ||
| 29 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabihf/bits/signum-arch.h deleted-65| ... | @@ -1,65 +0,0 @@ | ||
| 1 | /* Signal number definitions. Linux/MIPS version. | ||
| 2 | Copyright (C) 1995-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_SIGNUM_H | ||
| 20 | #define _BITS_SIGNUM_H 1 | ||
| 21 | |||
| 22 | #ifndef _SIGNAL_H | ||
| 23 | #error "Never include <bits/signum.h> directly; use <signal.h> instead." | ||
| 24 | #endif | ||
| 25 | |||
| 26 | /* Adjustments and additions to the signal number constants for | ||
| 27 | Linux/MIPS. */ | ||
| 28 | |||
| 29 | #define SIGEMT		 7	/* Emulator trap. */ | ||
| 30 | #define SIGPWR		19	/* Power failure imminent. */ | ||
| 31 | |||
| 32 | /* Historical signals specified by POSIX. */ | ||
| 33 | #define SIGBUS 	10	/* Bus error. */ | ||
| 34 | #define SIGSYS		12	/* Bad system call. */ | ||
| 35 | |||
| 36 | /* New(er) POSIX signals (1003.1-2008, 1003.1-2013). */ | ||
| 37 | #define SIGURG		21	/* Urgent data is available at a socket. */ | ||
| 38 | #define SIGSTOP		23	/* Stop, unblockable. */ | ||
| 39 | #define SIGTSTP		24	/* Keyboard stop. */ | ||
| 40 | #define SIGCONT		25	/* Continue. */ | ||
| 41 | #define SIGCHLD		18	/* Child terminated or stopped. */ | ||
| 42 | #define SIGTTIN		26	/* Background read from control terminal. */ | ||
| 43 | #define SIGTTOU		27	/* Background write to control terminal. */ | ||
| 44 | #define SIGPOLL		22	/* Pollable event occurred (System V). */ | ||
| 45 | #define SIGXCPU		30	/* CPU time limit exceeded. */ | ||
| 46 | #define SIGVTALRM	28	/* Virtual timer expired. */ | ||
| 47 | #define SIGPROF		29	/* Profiling timer expired. */ | ||
| 48 | #define SIGXFSZ		31	/* File size limit exceeded. */ | ||
| 49 | #define SIGUSR1		16	/* User-defined signal 1. */ | ||
| 50 | #define SIGUSR2		17	/* User-defined signal 2. */ | ||
| 51 | |||
| 52 | /* Nonstandard signals found in all modern POSIX systems | ||
| 53 | (including both BSD and Linux). */ | ||
| 54 | #define SIGWINCH	20	/* Window size change (4.3 BSD, Sun). */ | ||
| 55 | |||
| 56 | /* Archaic names for compatibility. */ | ||
| 57 | #define SIGIO		SIGPOLL	/* I/O now possible (4.2 BSD). */ | ||
| 58 | #define SIGIOT		SIGABRT	/* IOT instruction, abort() on a PDP-11. */ | ||
| 59 | #define SIGCLD		SIGCHLD /* Old System V name */ | ||
| 60 | |||
| 61 | /* By default no real-time signals are supported. */ | ||
| 62 | #define __SIGRTMIN	32 | ||
| 63 | #define __SIGRTMAX	127 | ||
| 64 | |||
| 65 | #endif	/* <signal.h> included. */ | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabihf/bits/socket-constants.h deleted-70| ... | @@ -1,70 +0,0 @@ | ||
| 1 | /* Socket constants which vary among Linux architectures. Version for MIPS. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SOCKET_H | ||
| 20 | # error "Never include <bits/socket-constants.h> directly; use <sys/socket.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #define SOL_SOCKET 65535 | ||
| 24 | #define SO_ACCEPTCONN 4105 | ||
| 25 | #define SO_BROADCAST 32 | ||
| 26 | #define SO_DONTROUTE 16 | ||
| 27 | #define SO_ERROR 4103 | ||
| 28 | #define SO_KEEPALIVE 8 | ||
| 29 | #define SO_LINGER 128 | ||
| 30 | #define SO_OOBINLINE 256 | ||
| 31 | #define SO_RCVBUF 4098 | ||
| 32 | #define SO_RCVLOWAT 4100 | ||
| 33 | #define SO_REUSEADDR 4 | ||
| 34 | #define SO_SNDBUF 4097 | ||
| 35 | #define SO_SNDLOWAT 4099 | ||
| 36 | #define SO_TYPE 4104 | ||
| 37 | |||
| 38 | #if __TIMESIZE == 64 | ||
| 39 | # define SO_RCVTIMEO 4102 | ||
| 40 | # define SO_SNDTIMEO 4101 | ||
| 41 | # define SO_TIMESTAMP 29 | ||
| 42 | # define SO_TIMESTAMPNS 35 | ||
| 43 | # define SO_TIMESTAMPING 37 | ||
| 44 | #else | ||
| 45 | # define SO_RCVTIMEO_OLD 4102 | ||
| 46 | # define SO_SNDTIMEO_OLD 4101 | ||
| 47 | # define SO_RCVTIMEO_NEW 66 | ||
| 48 | # define SO_SNDTIMEO_NEW 67 | ||
| 49 | |||
| 50 | # define SO_TIMESTAMP_OLD 29 | ||
| 51 | # define SO_TIMESTAMPNS_OLD 35 | ||
| 52 | # define SO_TIMESTAMPING_OLD 37 | ||
| 53 | # define SO_TIMESTAMP_NEW 63 | ||
| 54 | # define SO_TIMESTAMPNS_NEW 64 | ||
| 55 | # define SO_TIMESTAMPING_NEW 65 | ||
| 56 | |||
| 57 | # ifdef __USE_TIME64_REDIRECTS | ||
| 58 | # define SO_RCVTIMEO SO_RCVTIMEO_NEW | ||
| 59 | # define SO_SNDTIMEO SO_SNDTIMEO_NEW | ||
| 60 | # define SO_TIMESTAMP SO_TIMESTAMP_NEW | ||
| 61 | # define SO_TIMESTAMPNS SO_TIMESTAMPNS_NEW | ||
| 62 | # define SO_TIMESTAMPING SO_TIMESTAMPING_NEW | ||
| 63 | # else | ||
| 64 | # define SO_RCVTIMEO SO_RCVTIMEO_OLD | ||
| 65 | # define SO_SNDTIMEO SO_SNDTIMEO_OLD | ||
| 66 | # define SO_TIMESTAMP SO_TIMESTAMP_OLD | ||
| 67 | # define SO_TIMESTAMPNS SO_TIMESTAMPNS_OLD | ||
| 68 | # define SO_TIMESTAMPING SO_TIMESTAMPING_OLD | ||
| 69 | # endif | ||
| 70 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabihf/bits/socket_type.h deleted-55| ... | @@ -1,55 +0,0 @@ | ||
| 1 | /* Define enum __socket_type for Linux/MIPS. | ||
| 2 | Copyright (C) 1991-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SOCKET_H | ||
| 20 | # error "Never include <bits/socket_type.h> directly; use <sys/socket.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Types of sockets. */ | ||
| 24 | enum __socket_type | ||
| 25 | { | ||
| 26 | SOCK_DGRAM = 1,		/* Connectionless, unreliable datagrams | ||
| 27 | 				 of fixed maximum length. */ | ||
| 28 | #define SOCK_DGRAM SOCK_DGRAM | ||
| 29 | SOCK_STREAM = 2,		/* Sequenced, reliable, connection-based | ||
| 30 | 				 byte streams. */ | ||
| 31 | #define SOCK_STREAM SOCK_STREAM | ||
| 32 | SOCK_RAW = 3,			/* Raw protocol interface. */ | ||
| 33 | #define SOCK_RAW SOCK_RAW | ||
| 34 | SOCK_RDM = 4,			/* Reliably-delivered messages. */ | ||
| 35 | #define SOCK_RDM SOCK_RDM | ||
| 36 | SOCK_SEQPACKET = 5,		/* Sequenced, reliable, connection-based, | ||
| 37 | 				 datagrams of fixed maximum length. */ | ||
| 38 | #define SOCK_SEQPACKET SOCK_SEQPACKET | ||
| 39 | SOCK_DCCP = 6, | ||
| 40 | #define SOCK_DCCP SOCK_DCCP	/* Datagram Congestion Control Protocol. */ | ||
| 41 | SOCK_PACKET = 10,		/* Linux specific way of getting packets | ||
| 42 | 				 at the dev level. For writing rarp and | ||
| 43 | 				 other similar things on the user level. */ | ||
| 44 | #define SOCK_PACKET SOCK_PACKET | ||
| 45 | |||
| 46 | /* Flags to be ORed into the type parameter of socket and socketpair and | ||
| 47 | used for the flags parameter of paccept. */ | ||
| 48 | |||
| 49 | SOCK_CLOEXEC = 02000000,	/* Atomically set close-on-exec flag for the | ||
| 50 | 				 new descriptor(s). */ | ||
| 51 | #define SOCK_CLOEXEC SOCK_CLOEXEC | ||
| 52 | SOCK_NONBLOCK = 00000200	/* Atomically mark descriptor(s) as | ||
| 53 | 				 non-blocking. */ | ||
| 54 | #define SOCK_NONBLOCK SOCK_NONBLOCK | ||
| 55 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabihf/bits/statfs.h deleted-73| ... | @@ -1,73 +0,0 @@ | ||
| 1 | /* Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_STATFS_H | ||
| 19 | # error "Never include <bits/statfs.h> directly; use <sys/statfs.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | #include <bits/types.h> /* for __fsid_t and __fsblkcnt_t*/ | ||
| 23 | |||
| 24 | struct statfs | ||
| 25 | { | ||
| 26 | long int f_type; | ||
| 27 | #define f_fstyp f_type | ||
| 28 | long int f_bsize; | ||
| 29 | long int f_frsize;	/* Fragment size - unsupported */ | ||
| 30 | #ifndef __USE_FILE_OFFSET64 | ||
| 31 | __fsblkcnt_t f_blocks; | ||
| 32 | __fsblkcnt_t f_bfree; | ||
| 33 | __fsblkcnt_t f_files; | ||
| 34 | __fsblkcnt_t f_ffree; | ||
| 35 | __fsblkcnt_t f_bavail; | ||
| 36 | #else | ||
| 37 | __fsblkcnt64_t f_blocks; | ||
| 38 | __fsblkcnt64_t f_bfree; | ||
| 39 | __fsblkcnt64_t f_files; | ||
| 40 | __fsblkcnt64_t f_ffree; | ||
| 41 | __fsblkcnt64_t f_bavail; | ||
| 42 | #endif | ||
| 43 | |||
| 44 | 	/* Linux specials */ | ||
| 45 | __fsid_t f_fsid; | ||
| 46 | long int f_namelen; | ||
| 47 | long int f_flags; | ||
| 48 | long int f_spare[5]; | ||
| 49 | }; | ||
| 50 | |||
| 51 | #ifdef __USE_LARGEFILE64 | ||
| 52 | struct statfs64 | ||
| 53 | { | ||
| 54 | long int f_type; | ||
| 55 | #define f_fstyp f_type | ||
| 56 | long int f_bsize; | ||
| 57 | long int f_frsize;	/* Fragment size - unsupported */ | ||
| 58 | __fsblkcnt64_t f_blocks; | ||
| 59 | __fsblkcnt64_t f_bfree; | ||
| 60 | __fsblkcnt64_t f_files; | ||
| 61 | __fsblkcnt64_t f_ffree; | ||
| 62 | __fsblkcnt64_t f_bavail; | ||
| 63 | |||
| 64 | 	/* Linux specials */ | ||
| 65 | __fsid_t f_fsid; | ||
| 66 | long int f_namelen; | ||
| 67 | long int f_flags; | ||
| 68 | long int f_spare[5]; | ||
| 69 | }; | ||
| 70 | #endif | ||
| 71 | |||
| 72 | /* Tell code we have these members. */ | ||
| 73 | #define _STATFS_F_NAMELEN | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabihf/bits/struct_mutex.h deleted-56| ... | @@ -1,56 +0,0 @@ | ||
| 1 | /* MIPS internal mutex struct definitions. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <http://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _THREAD_MUTEX_INTERNAL_H | ||
| 20 | #define _THREAD_MUTEX_INTERNAL_H 1 | ||
| 21 | |||
| 22 | struct __pthread_mutex_s | ||
| 23 | { | ||
| 24 | int __lock; | ||
| 25 | unsigned int __count; | ||
| 26 | int __owner; | ||
| 27 | #if _MIPS_SIM == _ABI64 | ||
| 28 | unsigned int __nusers; | ||
| 29 | #endif | ||
| 30 | /* KIND must stay at this position in the structure to maintain | ||
| 31 | binary compatibility with static initializers. */ | ||
| 32 | int __kind; | ||
| 33 | #if _MIPS_SIM == _ABI64 | ||
| 34 | int __spins; | ||
| 35 | __pthread_list_t __list; | ||
| 36 | # define __PTHREAD_MUTEX_HAVE_PREV 1 | ||
| 37 | #else | ||
| 38 | unsigned int __nusers; | ||
| 39 | __extension__ union | ||
| 40 | { | ||
| 41 | int __spins; | ||
| 42 | __pthread_slist_t __list; | ||
| 43 | }; | ||
| 44 | # define __PTHREAD_MUTEX_HAVE_PREV 0 | ||
| 45 | #endif | ||
| 46 | }; | ||
| 47 | |||
| 48 | #if _MIPS_SIM == _ABI64 | ||
| 49 | # define __PTHREAD_MUTEX_INITIALIZER(__kind) \ | ||
| 50 | 0, 0, 0, 0, __kind, 0, { 0, 0 } | ||
| 51 | #else | ||
| 52 | # define __PTHREAD_MUTEX_INITIALIZER(__kind) \ | ||
| 53 | 0, 0, 0, __kind, 0, { 0 } | ||
| 54 | #endif | ||
| 55 | |||
| 56 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabihf/bits/struct_rwlock.h deleted-71| ... | @@ -1,71 +0,0 @@ | ||
| 1 | /* MIPS internal rwlock struct definitions. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <http://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _RWLOCK_INTERNAL_H | ||
| 20 | #define _RWLOCK_INTERNAL_H | ||
| 21 | |||
| 22 | struct __pthread_rwlock_arch_t | ||
| 23 | { | ||
| 24 | unsigned int __readers; | ||
| 25 | unsigned int __writers; | ||
| 26 | unsigned int __wrphase_futex; | ||
| 27 | unsigned int __writers_futex; | ||
| 28 | unsigned int __pad3; | ||
| 29 | unsigned int __pad4; | ||
| 30 | #if _MIPS_SIM == _ABI64 | ||
| 31 | int __cur_writer; | ||
| 32 | int __shared; | ||
| 33 | unsigned long int __pad1; | ||
| 34 | unsigned long int __pad2; | ||
| 35 | /* FLAGS must stay at this position in the structure to maintain | ||
| 36 | binary compatibility. */ | ||
| 37 | unsigned int __flags; | ||
| 38 | # else | ||
| 39 | # if __BYTE_ORDER == __BIG_ENDIAN | ||
| 40 | unsigned char __pad1; | ||
| 41 | unsigned char __pad2; | ||
| 42 | unsigned char __shared; | ||
| 43 | /* FLAGS must stay at this position in the structure to maintain | ||
| 44 | binary compatibility. */ | ||
| 45 | unsigned char __flags; | ||
| 46 | # else | ||
| 47 | /* FLAGS must stay at this position in the structure to maintain | ||
| 48 | binary compatibility. */ | ||
| 49 | unsigned char __flags; | ||
| 50 | unsigned char __shared; | ||
| 51 | unsigned char __pad1; | ||
| 52 | unsigned char __pad2; | ||
| 53 | # endif | ||
| 54 | int __cur_writer; | ||
| 55 | #endif | ||
| 56 | }; | ||
| 57 | |||
| 58 | #if _MIPS_SIM == _ABI64 | ||
| 59 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 60 | 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags | ||
| 61 | #else | ||
| 62 | # if __BYTE_ORDER == __BIG_ENDIAN | ||
| 63 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 64 | 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0 | ||
| 65 | # else | ||
| 66 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 67 | 0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0 | ||
| 68 | # endif | ||
| 69 | #endif | ||
| 70 | |||
| 71 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabihf/bits/termios-c_cc.h deleted-43| ... | @@ -1,43 +0,0 @@ | ||
| 1 | /* termios c_cc symbolic constant definitions. Linux/mips version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-c_cc.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* c_cc characters */ | ||
| 24 | #define VINTR		0	/* Interrupt character [ISIG]. */ | ||
| 25 | #define VQUIT		1	/* Quit character [ISIG]. */ | ||
| 26 | #define VERASE		2	/* Erase character [ICANON]. */ | ||
| 27 | #define VKILL		3	/* Kill-line character [ICANON]. */ | ||
| 28 | #define VMIN		4	/* Minimum number of bytes read at once [!ICANON]. */ | ||
| 29 | #define VTIME		5	/* Time-out value (tenths of a second) [!ICANON]. */ | ||
| 30 | #define VEOL2		6	/* Second EOL character [ICANON]. */ | ||
| 31 | #define VSWTC		7 | ||
| 32 | #define VSWTCH		VSWTC | ||
| 33 | #define VSTART		8	/* Start (X-ON) character [IXON, IXOFF]. */ | ||
| 34 | #define VSTOP		9	/* Stop (X-OFF) character [IXON, IXOFF]. */ | ||
| 35 | #define VSUSP		10	/* Suspend character [ISIG]. */ | ||
| 36 | 				/* VDSUSP is not supported on Linux. */ | ||
| 37 | /* #define VDSUSP	11	/ * Delayed suspend character [ISIG]. */ | ||
| 38 | #define VREPRINT	12	/* Reprint-line character [ICANON]. */ | ||
| 39 | #define VDISCARD	13	/* Discard character [IEXTEN]. */ | ||
| 40 | #define VWERASE		14	/* Word-erase character [ICANON]. */ | ||
| 41 | #define VLNEXT		15	/* Literal-next character [IEXTEN]. */ | ||
| 42 | #define VEOF		16	/* End-of-file character [ICANON]. */ | ||
| 43 | #define VEOL		17	/* End-of-line character [ICANON]. */ | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabihf/bits/termios-c_lflag.h deleted-46| ... | @@ -1,46 +0,0 @@ | ||
| 1 | /* termios local mode definitions. Linux/mips version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-c_lflag.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* c_lflag bits */ | ||
| 24 | #define ISIG	0000001		/* Enable signals. */ | ||
| 25 | #define ICANON	0000002		/* Do erase and kill processing. */ | ||
| 26 | #if defined __USE_MISC || (defined __USE_XOPEN && !defined __USE_XOPEN2K) | ||
| 27 | # define XCASE	0000004 | ||
| 28 | #endif | ||
| 29 | #define ECHO	0000010		/* Enable echo. */ | ||
| 30 | #define ECHOE	0000020		/* Visual erase for ERASE. */ | ||
| 31 | #define ECHOK	0000040		/* Echo NL after KILL. */ | ||
| 32 | #define ECHONL	0000100		/* Echo NL even if ECHO is off. */ | ||
| 33 | #define NOFLSH	0000200		/* Disable flush after interrupt. */ | ||
| 34 | #define IEXTEN	0000400		/* Enable DISCARD and LNEXT. */ | ||
| 35 | #ifdef __USE_MISC | ||
| 36 | # define ECHOCTL 0001000	/* Echo control characters as ^X. */ | ||
| 37 | # define ECHOPRT 0002000	/* Hardcopy visual erase. */ | ||
| 38 | # define ECHOKE	 0004000	/* Visual erase for KILL. */ | ||
| 39 | # define FLUSHO	0020000 | ||
| 40 | # define PENDIN	0040000		/* Retype pending input (state). */ | ||
| 41 | #endif | ||
| 42 | #define TOSTOP	0100000		/* Send SIGTTOU for background output. */ | ||
| 43 | #define ITOSTOP	TOSTOP | ||
| 44 | #ifdef __USE_MISC | ||
| 45 | # define EXTPROC 0200000 | ||
| 46 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabihf/bits/termios-struct.h deleted-34| ... | @@ -1,34 +0,0 @@ | ||
| 1 | /* struct termios definition. Linux/mips version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-struct.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #define NCCS 32 | ||
| 24 | struct termios | ||
| 25 | { | ||
| 26 | tcflag_t c_iflag;		/* input mode flags */ | ||
| 27 | tcflag_t c_oflag;		/* output mode flags */ | ||
| 28 | tcflag_t c_cflag;		/* control mode flags */ | ||
| 29 | tcflag_t c_lflag;		/* local mode flags */ | ||
| 30 | cc_t c_line;		/* line discipline */ | ||
| 31 | cc_t c_cc[NCCS];		/* control characters */ | ||
| 32 | #define _HAVE_STRUCT_TERMIOS_C_ISPEED 0 | ||
| 33 | #define _HAVE_STRUCT_TERMIOS_C_OSPEED 0 | ||
| 34 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabihf/bits/termios-tcflow.h deleted-26| ... | @@ -1,26 +0,0 @@ | ||
| 1 | /* termios local mode definitions. Linux/mips version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-tcflow.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* tcsetattr uses these */ | ||
| 24 | #define	TCSANOW		0x540e	/* Same as TCSETS; change immediately. */ | ||
| 25 | #define	TCSADRAIN	0x540f	/* Same as TCSETSW; change when pending output is written. */ | ||
| 26 | #define	TCSAFLUSH	0x5410	/* Same as TCSETSF; flush pending input before changing. */ | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabihf/bits/timerfd.h deleted-29| ... | @@ -1,29 +0,0 @@ | ||
| 1 | /* Copyright (C) 2008-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_SYS_TIMERFD_H | ||
| 19 | # error "Never use <bits/timerfd.h> directly; include <sys/timerfd.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Bits to be set in the FLAGS parameter of `timerfd_create'. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | TFD_CLOEXEC = 02000000, | ||
| 26 | #define TFD_CLOEXEC TFD_CLOEXEC | ||
| 27 | TFD_NONBLOCK = 00000200 | ||
| 28 | #define TFD_NONBLOCK TFD_NONBLOCK | ||
| 29 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabihf/bits/types/stack_t.h deleted-33| ... | @@ -1,33 +0,0 @@ | ||
| 1 | /* Define stack_t. MIPS Linux version. | ||
| 2 | Copyright (C) 1998-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef __stack_t_defined | ||
| 20 | #define __stack_t_defined 1 | ||
| 21 | |||
| 22 | #define __need_size_t | ||
| 23 | #include <stddef.h> | ||
| 24 | |||
| 25 | /* Structure describing a signal stack. */ | ||
| 26 | typedef struct | ||
| 27 | { | ||
| 28 | void *ss_sp; | ||
| 29 | size_t ss_size; | ||
| 30 | int ss_flags; | ||
| 31 | } stack_t; | ||
| 32 | |||
| 33 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabihf/bits/types/struct_msqid_ds.h deleted-62| ... | @@ -1,62 +0,0 @@ | ||
| 1 | /* Linux/MIPS implementation of the SysV message struct msqid_ds. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_MSG_H | ||
| 20 | # error "Never use <bits/msq.h> directly; include <sys/msg.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <bits/types/time_t.h> | ||
| 24 | |||
| 25 | /* Structure of record for one message inside the kernel. | ||
| 26 | The type `struct msg' is opaque. */ | ||
| 27 | struct msqid_ds | ||
| 28 | { | ||
| 29 | #ifdef __USE_TIME64_REDIRECTS | ||
| 30 | # include <bits/types/struct_msqid64_ds_helper.h> | ||
| 31 | #else | ||
| 32 | struct ipc_perm msg_perm;	/* structure describing operation permission */ | ||
| 33 | # if __TIMESIZE == 32 | ||
| 34 | # ifdef __MIPSEL__ | ||
| 35 | __time_t msg_stime;		/* time of last msgsnd command */ | ||
| 36 | unsigned long int __msg_stime_high; | ||
| 37 | __time_t msg_rtime;		/* time of last msgsnd command */ | ||
| 38 | unsigned long int __msg_rtime_high; | ||
| 39 | __time_t msg_ctime;		/* time of last change */ | ||
| 40 | unsigned long int __msg_ctime_high; | ||
| 41 | # else | ||
| 42 | unsigned long int __msg_stime_high; | ||
| 43 | __time_t msg_stime;		/* time of last msgsnd command */ | ||
| 44 | unsigned long int __msg_rtime_high; | ||
| 45 | __time_t msg_rtime;		/* time of last msgsnd command */ | ||
| 46 | unsigned long int __msg_ctime_high; | ||
| 47 | __time_t msg_ctime;		/* time of last change */ | ||
| 48 | # endif | ||
| 49 | # else | ||
| 50 | __time_t msg_stime;		/* time of last msgsnd command */ | ||
| 51 | __time_t msg_rtime;		/* time of last msgsnd command */ | ||
| 52 | __time_t msg_ctime;		/* time of last change */ | ||
| 53 | # endif | ||
| 54 | __syscall_ulong_t __msg_cbytes; /* current number of bytes on queue */ | ||
| 55 | msgqnum_t msg_qnum;		/* number of messages currently on queue */ | ||
| 56 | msglen_t msg_qbytes;		/* max number of bytes allowed on queue */ | ||
| 57 | __pid_t msg_lspid;		/* pid of last msgsnd() */ | ||
| 58 | __pid_t msg_lrpid;		/* pid of last msgrcv() */ | ||
| 59 | __syscall_ulong_t __glibc_reserved4; | ||
| 60 | __syscall_ulong_t __glibc_reserved5; | ||
| 61 | #endif | ||
| 62 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabihf/bits/types/struct_semid_ds.h deleted-36| ... | @@ -1,36 +0,0 @@ | ||
| 1 | /* MIPS implementation of the semaphore struct semid_ds | ||
| 2 | Copyright (C) 1995-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SEM_H | ||
| 20 | # error "Never include <bits/types/struct_semid_ds.h> directly; use <sys/sem.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Data structure describing a set of semaphores. */ | ||
| 24 | struct semid_ds | ||
| 25 | { | ||
| 26 | #ifdef __USE_TIME64_REDIRECTS | ||
| 27 | # include <bits/types/struct_semid64_ds_helper.h> | ||
| 28 | #else | ||
| 29 | struct ipc_perm sem_perm;		/* operation permission struct */ | ||
| 30 | __time_t sem_otime;	/* last semop() time */ | ||
| 31 | __time_t sem_ctime;	/* last time changed by semctl() */ | ||
| 32 | __syscall_ulong_t sem_nsems;		/* number of semaphores in set */ | ||
| 33 | __syscall_ulong_t __sem_otime_high; | ||
| 34 | __syscall_ulong_t __sem_ctime_high; | ||
| 35 | #endif | ||
| 36 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabihf/bits/types/struct_shmid_ds.h deleted-53| ... | @@ -1,53 +0,0 @@ | ||
| 1 | /* Linux/MIPS implementation of the shared memory struct shmid_ds. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SHM_H | ||
| 20 | # error "Never include <bits/types/struct_shmid_ds.h> directly; use <sys/shm.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Data structure describing a shared memory segment. */ | ||
| 24 | struct shmid_ds | ||
| 25 | { | ||
| 26 | #ifdef __USE_TIME64_REDIRECTS | ||
| 27 | # include <bits/types/struct_shmid64_ds_helper.h> | ||
| 28 | #else | ||
| 29 | struct ipc_perm shm_perm;		/* operation permission struct */ | ||
| 30 | size_t shm_segsz;			/* size of segment in bytes */ | ||
| 31 | # if __TIMESIZE == 32 | ||
| 32 | __time_t shm_atime;			/* time of last shmat() */ | ||
| 33 | __time_t shm_dtime;			/* time of last shmdt() */ | ||
| 34 | __time_t shm_ctime;			/* time of last change by shmctl() */ | ||
| 35 | # else | ||
| 36 | __time_t shm_atime;			/* time of last shmat() */ | ||
| 37 | __time_t shm_dtime;			/* time of last shmdt() */ | ||
| 38 | __time_t shm_ctime;			/* time of last change by shmctl() */ | ||
| 39 | # endif | ||
| 40 | __pid_t shm_cpid;			/* pid of creator */ | ||
| 41 | __pid_t shm_lpid;			/* pid of last shmop */ | ||
| 42 | shmatt_t shm_nattch;		/* number of current attaches */ | ||
| 43 | # if __TIMESIZE == 32 | ||
| 44 | unsigned short int __shm_atime_high; | ||
| 45 | unsigned short int __shm_dtime_high; | ||
| 46 | unsigned short int __shm_ctime_high; | ||
| 47 | unsigned short int __glibc_reserved4; | ||
| 48 | # else | ||
| 49 | __syscall_ulong_t __glibc_reserved5; | ||
| 50 | __syscall_ulong_t __glibc_reserved6; | ||
| 51 | # endif | ||
| 52 | #endif | ||
| 53 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabihf/bits/typesizes.h deleted-95| ... | @@ -1,95 +0,0 @@ | ||
| 1 | /* bits/typesizes.h -- underlying types for *_t. MIPS version. | ||
| 2 | Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_TYPES_H | ||
| 20 | # error "Never include <bits/typesizes.h> directly; use <sys/types.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef	_BITS_TYPESIZES_H | ||
| 24 | #define	_BITS_TYPESIZES_H	1 | ||
| 25 | |||
| 26 | /* See <bits/types.h> for the meaning of these macros. This file exists so | ||
| 27 | that <bits/types.h> need not vary across different GNU platforms. */ | ||
| 28 | |||
| 29 | #define __DEV_T_TYPE		__UQUAD_TYPE | ||
| 30 | #define __UID_T_TYPE		__U32_TYPE | ||
| 31 | #define __GID_T_TYPE		__U32_TYPE | ||
| 32 | #define __INO_T_TYPE		__ULONGWORD_TYPE | ||
| 33 | #define __INO64_T_TYPE		__UQUAD_TYPE | ||
| 34 | #define __MODE_T_TYPE		__U32_TYPE | ||
| 35 | #define __NLINK_T_TYPE		__UWORD_TYPE | ||
| 36 | #define __OFF_T_TYPE		__SLONGWORD_TYPE | ||
| 37 | #define __OFF64_T_TYPE		__SQUAD_TYPE | ||
| 38 | #define __PID_T_TYPE		__S32_TYPE | ||
| 39 | #define __RLIM_T_TYPE		__ULONGWORD_TYPE | ||
| 40 | #define __RLIM64_T_TYPE		__UQUAD_TYPE | ||
| 41 | #define	__BLKCNT_T_TYPE		__SLONGWORD_TYPE | ||
| 42 | #define	__BLKCNT64_T_TYPE	__SQUAD_TYPE | ||
| 43 | #define	__FSBLKCNT_T_TYPE	__ULONGWORD_TYPE | ||
| 44 | #define	__FSBLKCNT64_T_TYPE	__UQUAD_TYPE | ||
| 45 | #define	__FSFILCNT_T_TYPE	__ULONGWORD_TYPE | ||
| 46 | #define	__FSFILCNT64_T_TYPE	__UQUAD_TYPE | ||
| 47 | #define	__FSWORD_T_TYPE		__SWORD_TYPE | ||
| 48 | #define	__ID_T_TYPE		__U32_TYPE | ||
| 49 | #define __CLOCK_T_TYPE		__SLONGWORD_TYPE | ||
| 50 | #define __TIME_T_TYPE		__SLONGWORD_TYPE | ||
| 51 | #define __USECONDS_T_TYPE	__U32_TYPE | ||
| 52 | #define __SUSECONDS_T_TYPE	__SLONGWORD_TYPE | ||
| 53 | #define __SUSECONDS64_T_TYPE	__SQUAD_TYPE | ||
| 54 | #define __DADDR_T_TYPE		__S32_TYPE | ||
| 55 | #define __KEY_T_TYPE		__S32_TYPE | ||
| 56 | #define __CLOCKID_T_TYPE	__S32_TYPE | ||
| 57 | #define __TIMER_T_TYPE		void * | ||
| 58 | #define __BLKSIZE_T_TYPE	__SLONGWORD_TYPE | ||
| 59 | #define __FSID_T_TYPE		struct { int __val[2]; } | ||
| 60 | #define __SSIZE_T_TYPE		__SWORD_TYPE | ||
| 61 | #define __SYSCALL_SLONG_TYPE	__SLONGWORD_TYPE | ||
| 62 | #define __SYSCALL_ULONG_TYPE	__ULONGWORD_TYPE | ||
| 63 | #define __CPU_MASK_TYPE 	__ULONGWORD_TYPE | ||
| 64 | |||
| 65 | #ifdef __LP64__ | ||
| 66 | /* Tell the libc code that off_t and off64_t are actually the same type | ||
| 67 | for all ABI purposes, even if possibly expressed as different base types | ||
| 68 | for C type-checking purposes. */ | ||
| 69 | # define __OFF_T_MATCHES_OFF64_T	1 | ||
| 70 | |||
| 71 | /* Same for ino_t and ino64_t. */ | ||
| 72 | # define __INO_T_MATCHES_INO64_T	1 | ||
| 73 | |||
| 74 | /* And for rlim_t and rlim64_t. */ | ||
| 75 | # define __RLIM_T_MATCHES_RLIM64_T	1 | ||
| 76 | |||
| 77 | /* And for fsblkcnt_t, fsblkcnt64_t, fsfilcnt_t and fsfilcnt64_t. */ | ||
| 78 | # define __STATFS_MATCHES_STATFS64 1 | ||
| 79 | |||
| 80 | /* And for getitimer, setitimer and rusage */ | ||
| 81 | # define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 1 | ||
| 82 | #else | ||
| 83 | # define __RLIM_T_MATCHES_RLIM64_T	0 | ||
| 84 | |||
| 85 | # define __STATFS_MATCHES_STATFS64 0 | ||
| 86 | |||
| 87 | /* And for getitimer, setitimer and rusage */ | ||
| 88 | # define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 0 | ||
| 89 | #endif | ||
| 90 | |||
| 91 | /* Number of descriptors that can fit in an `fd_set'. */ | ||
| 92 | #define	__FD_SETSIZE		1024 | ||
| 93 | |||
| 94 | |||
| 95 | #endif /* bits/typesizes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/mipsel-linux-gnueabihf/ieee754.h deleted-326| ... | @@ -1,326 +0,0 @@ | ||
| 1 | /* Copyright (C) 1992-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _IEEE754_H | ||
| 19 | #define _IEEE754_H 1 | ||
| 20 | |||
| 21 | #include <features.h> | ||
| 22 | |||
| 23 | #include <bits/endian.h> | ||
| 24 | |||
| 25 | #ifndef __LDBL_MANT_DIG__ | ||
| 26 | # include <float.h> | ||
| 27 | # define __LDBL_MANT_DIG__ LDBL_MANT_DIG | ||
| 28 | #endif | ||
| 29 | |||
| 30 | __BEGIN_DECLS | ||
| 31 | |||
| 32 | union ieee754_float | ||
| 33 | { | ||
| 34 | float f; | ||
| 35 | |||
| 36 | /* This is the IEEE 754 single-precision format. */ | ||
| 37 | struct | ||
| 38 | { | ||
| 39 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 40 | 	unsigned int negative:1; | ||
| 41 | 	unsigned int exponent:8; | ||
| 42 | 	unsigned int mantissa:23; | ||
| 43 | #endif				/* Big endian. */ | ||
| 44 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 45 | 	unsigned int mantissa:23; | ||
| 46 | 	unsigned int exponent:8; | ||
| 47 | 	unsigned int negative:1; | ||
| 48 | #endif				/* Little endian. */ | ||
| 49 | } ieee; | ||
| 50 | |||
| 51 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 52 | struct | ||
| 53 | { | ||
| 54 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 55 | 	unsigned int negative:1; | ||
| 56 | 	unsigned int exponent:8; | ||
| 57 | 	unsigned int quiet_nan:1; | ||
| 58 | 	unsigned int mantissa:22; | ||
| 59 | #endif				/* Big endian. */ | ||
| 60 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 61 | 	unsigned int mantissa:22; | ||
| 62 | 	unsigned int quiet_nan:1; | ||
| 63 | 	unsigned int exponent:8; | ||
| 64 | 	unsigned int negative:1; | ||
| 65 | #endif				/* Little endian. */ | ||
| 66 | } ieee_nan; | ||
| 67 | }; | ||
| 68 | |||
| 69 | #define IEEE754_FLOAT_BIAS	0x7f /* Added to exponent. */ | ||
| 70 | |||
| 71 | |||
| 72 | union ieee754_double | ||
| 73 | { | ||
| 74 | double d; | ||
| 75 | |||
| 76 | /* This is the IEEE 754 double-precision format. */ | ||
| 77 | struct | ||
| 78 | { | ||
| 79 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 80 | 	unsigned int negative:1; | ||
| 81 | 	unsigned int exponent:11; | ||
| 82 | 	/* Together these comprise the mantissa. */ | ||
| 83 | 	unsigned int mantissa0:20; | ||
| 84 | 	unsigned int mantissa1:32; | ||
| 85 | #endif				/* Big endian. */ | ||
| 86 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 87 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 88 | 	unsigned int mantissa0:20; | ||
| 89 | 	unsigned int exponent:11; | ||
| 90 | 	unsigned int negative:1; | ||
| 91 | 	unsigned int mantissa1:32; | ||
| 92 | # else | ||
| 93 | 	/* Together these comprise the mantissa. */ | ||
| 94 | 	unsigned int mantissa1:32; | ||
| 95 | 	unsigned int mantissa0:20; | ||
| 96 | 	unsigned int exponent:11; | ||
| 97 | 	unsigned int negative:1; | ||
| 98 | # endif | ||
| 99 | #endif				/* Little endian. */ | ||
| 100 | } ieee; | ||
| 101 | |||
| 102 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 103 | struct | ||
| 104 | { | ||
| 105 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 106 | 	unsigned int negative:1; | ||
| 107 | 	unsigned int exponent:11; | ||
| 108 | 	unsigned int quiet_nan:1; | ||
| 109 | 	/* Together these comprise the mantissa. */ | ||
| 110 | 	unsigned int mantissa0:19; | ||
| 111 | 	unsigned int mantissa1:32; | ||
| 112 | #else | ||
| 113 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 114 | 	unsigned int mantissa0:19; | ||
| 115 | 	unsigned int quiet_nan:1; | ||
| 116 | 	unsigned int exponent:11; | ||
| 117 | 	unsigned int negative:1; | ||
| 118 | 	unsigned int mantissa1:32; | ||
| 119 | # else | ||
| 120 | 	/* Together these comprise the mantissa. */ | ||
| 121 | 	unsigned int mantissa1:32; | ||
| 122 | 	unsigned int mantissa0:19; | ||
| 123 | 	unsigned int quiet_nan:1; | ||
| 124 | 	unsigned int exponent:11; | ||
| 125 | 	unsigned int negative:1; | ||
| 126 | # endif | ||
| 127 | #endif | ||
| 128 | } ieee_nan; | ||
| 129 | }; | ||
| 130 | |||
| 131 | #define IEEE754_DOUBLE_BIAS	0x3ff /* Added to exponent. */ | ||
| 132 | |||
| 133 | #if __LDBL_MANT_DIG__ == 113 | ||
| 134 | |||
| 135 | union ieee854_long_double | ||
| 136 | { | ||
| 137 | long double d; | ||
| 138 | |||
| 139 | /* This is the IEEE 854 quad-precision format. */ | ||
| 140 | struct | ||
| 141 | { | ||
| 142 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 143 | 	unsigned int negative:1; | ||
| 144 | 	unsigned int exponent:15; | ||
| 145 | 	/* Together these comprise the mantissa. */ | ||
| 146 | 	unsigned int mantissa0:16; | ||
| 147 | 	unsigned int mantissa1:32; | ||
| 148 | 	unsigned int mantissa2:32; | ||
| 149 | 	unsigned int mantissa3:32; | ||
| 150 | #endif				/* Big endian. */ | ||
| 151 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 152 | 	/* Together these comprise the mantissa. */ | ||
| 153 | 	unsigned int mantissa3:32; | ||
| 154 | 	unsigned int mantissa2:32; | ||
| 155 | 	unsigned int mantissa1:32; | ||
| 156 | 	unsigned int mantissa0:16; | ||
| 157 | 	unsigned int exponent:15; | ||
| 158 | 	unsigned int negative:1; | ||
| 159 | #endif				/* Little endian. */ | ||
| 160 | } ieee; | ||
| 161 | |||
| 162 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 163 | struct | ||
| 164 | { | ||
| 165 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 166 | 	unsigned int negative:1; | ||
| 167 | 	unsigned int exponent:15; | ||
| 168 | 	unsigned int quiet_nan:1; | ||
| 169 | 	/* Together these comprise the mantissa. */ | ||
| 170 | 	unsigned int mantissa0:15; | ||
| 171 | 	unsigned int mantissa1:32; | ||
| 172 | 	unsigned int mantissa2:32; | ||
| 173 | 	unsigned int mantissa3:32; | ||
| 174 | #endif				/* Big endian. */ | ||
| 175 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 176 | 	/* Together these comprise the mantissa. */ | ||
| 177 | 	unsigned int mantissa3:32; | ||
| 178 | 	unsigned int mantissa2:32; | ||
| 179 | 	unsigned int mantissa1:32; | ||
| 180 | 	unsigned int mantissa0:15; | ||
| 181 | 	unsigned int quiet_nan:1; | ||
| 182 | 	unsigned int exponent:15; | ||
| 183 | 	unsigned int negative:1; | ||
| 184 | #endif				/* Little endian. */ | ||
| 185 | } ieee_nan; | ||
| 186 | }; | ||
| 187 | |||
| 188 | #define IEEE854_LONG_DOUBLE_BIAS 0x3fff /* Added to exponent. */ | ||
| 189 | |||
| 190 | #elif __LDBL_MANT_DIG__ == 64 | ||
| 191 | |||
| 192 | union ieee854_long_double | ||
| 193 | { | ||
| 194 | long double d; | ||
| 195 | |||
| 196 | /* This is the IEEE 854 double-extended-precision format. */ | ||
| 197 | struct | ||
| 198 | { | ||
| 199 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 200 | 	unsigned int negative:1; | ||
| 201 | 	unsigned int exponent:15; | ||
| 202 | 	unsigned int empty:16; | ||
| 203 | 	unsigned int mantissa0:32; | ||
| 204 | 	unsigned int mantissa1:32; | ||
| 205 | #endif | ||
| 206 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 207 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 208 | 	unsigned int exponent:15; | ||
| 209 | 	unsigned int negative:1; | ||
| 210 | 	unsigned int empty:16; | ||
| 211 | 	unsigned int mantissa0:32; | ||
| 212 | 	unsigned int mantissa1:32; | ||
| 213 | # else | ||
| 214 | 	unsigned int mantissa1:32; | ||
| 215 | 	unsigned int mantissa0:32; | ||
| 216 | 	unsigned int exponent:15; | ||
| 217 | 	unsigned int negative:1; | ||
| 218 | 	unsigned int empty:16; | ||
| 219 | # endif | ||
| 220 | #endif | ||
| 221 | } ieee; | ||
| 222 | |||
| 223 | /* This is for NaNs in the IEEE 854 double-extended-precision format. */ | ||
| 224 | struct | ||
| 225 | { | ||
| 226 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 227 | 	unsigned int negative:1; | ||
| 228 | 	unsigned int exponent:15; | ||
| 229 | 	unsigned int empty:16; | ||
| 230 | 	unsigned int one:1; | ||
| 231 | 	unsigned int quiet_nan:1; | ||
| 232 | 	unsigned int mantissa0:30; | ||
| 233 | 	unsigned int mantissa1:32; | ||
| 234 | #endif | ||
| 235 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 236 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 237 | 	unsigned int exponent:15; | ||
| 238 | 	unsigned int negative:1; | ||
| 239 | 	unsigned int empty:16; | ||
| 240 | 	unsigned int mantissa0:30; | ||
| 241 | 	unsigned int quiet_nan:1; | ||
| 242 | 	unsigned int one:1; | ||
| 243 | 	unsigned int mantissa1:32; | ||
| 244 | # else | ||
| 245 | 	unsigned int mantissa1:32; | ||
| 246 | 	unsigned int mantissa0:30; | ||
| 247 | 	unsigned int quiet_nan:1; | ||
| 248 | 	unsigned int one:1; | ||
| 249 | 	unsigned int exponent:15; | ||
| 250 | 	unsigned int negative:1; | ||
| 251 | 	unsigned int empty:16; | ||
| 252 | # endif | ||
| 253 | #endif | ||
| 254 | } ieee_nan; | ||
| 255 | }; | ||
| 256 | |||
| 257 | #define IEEE854_LONG_DOUBLE_BIAS 0x3fff | ||
| 258 | |||
| 259 | #elif __LDBL_MANT_DIG__ == 53 | ||
| 260 | |||
| 261 | union ieee854_long_double | ||
| 262 | { | ||
| 263 | long double d; | ||
| 264 | |||
| 265 | /* This is the IEEE 754 double-precision format. */ | ||
| 266 | struct | ||
| 267 | { | ||
| 268 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 269 | 	unsigned int negative:1; | ||
| 270 | 	unsigned int exponent:11; | ||
| 271 | 	/* Together these comprise the mantissa. */ | ||
| 272 | 	unsigned int mantissa0:20; | ||
| 273 | 	unsigned int mantissa1:32; | ||
| 274 | #endif				/* Big endian. */ | ||
| 275 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 276 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 277 | 	unsigned int mantissa0:20; | ||
| 278 | 	unsigned int exponent:11; | ||
| 279 | 	unsigned int negative:1; | ||
| 280 | 	unsigned int mantissa1:32; | ||
| 281 | # else | ||
| 282 | 	/* Together these comprise the mantissa. */ | ||
| 283 | 	unsigned int mantissa1:32; | ||
| 284 | 	unsigned int mantissa0:20; | ||
| 285 | 	unsigned int exponent:11; | ||
| 286 | 	unsigned int negative:1; | ||
| 287 | # endif | ||
| 288 | #endif				/* Little endian. */ | ||
| 289 | } ieee; | ||
| 290 | |||
| 291 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 292 | struct | ||
| 293 | { | ||
| 294 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 295 | 	unsigned int negative:1; | ||
| 296 | 	unsigned int exponent:11; | ||
| 297 | 	unsigned int quiet_nan:1; | ||
| 298 | 	/* Together these comprise the mantissa. */ | ||
| 299 | 	unsigned int mantissa0:19; | ||
| 300 | 	unsigned int mantissa1:32; | ||
| 301 | #else | ||
| 302 | # if	__FLOAT_WORD_ORDER == __BIG_ENDIAN | ||
| 303 | 	unsigned int mantissa0:19; | ||
| 304 | 	unsigned int quiet_nan:1; | ||
| 305 | 	unsigned int exponent:11; | ||
| 306 | 	unsigned int negative:1; | ||
| 307 | 	unsigned int mantissa1:32; | ||
| 308 | # else | ||
| 309 | 	/* Together these comprise the mantissa. */ | ||
| 310 | 	unsigned int mantissa1:32; | ||
| 311 | 	unsigned int mantissa0:19; | ||
| 312 | 	unsigned int quiet_nan:1; | ||
| 313 | 	unsigned int exponent:11; | ||
| 314 | 	unsigned int negative:1; | ||
| 315 | # endif | ||
| 316 | #endif | ||
| 317 | } ieee_nan; | ||
| 318 | }; | ||
| 319 | |||
| 320 | #define IEEE854_LONG_DOUBLE_BIAS	0x3ff /* Added to exponent. */ | ||
| 321 | |||
| 322 | #endif /* __LDBL_MANT_DIG__ == 53 */ | ||
| 323 | |||
| 324 | __END_DECLS | ||
| 325 | |||
| 326 | #endif /* ieee754.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnu/bits/endianness.h created+16| ... | @@ -0,0 +1,16 @@ | ||
| 1 | #ifndef _BITS_ENDIANNESS_H | ||
| 2 | #define _BITS_ENDIANNESS_H 1 | ||
| 3 | |||
| 4 | #ifndef _BITS_ENDIAN_H | ||
| 5 | # error "Never use <bits/endianness.h> directly; include <endian.h> instead." | ||
| 6 | #endif | ||
| 7 | |||
| 8 | /* PowerPC has selectable endianness. */ | ||
| 9 | #if defined __BIG_ENDIAN__ || defined _BIG_ENDIAN | ||
| 10 | # define __BYTE_ORDER __BIG_ENDIAN | ||
| 11 | #endif | ||
| 12 | #if defined __LITTLE_ENDIAN__ || defined _LITTLE_ENDIAN | ||
| 13 | # define __BYTE_ORDER __LITTLE_ENDIAN | ||
| 14 | #endif | ||
| 15 | |||
| 16 | #endif /* bits/endianness.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnu/bits/environments.h created+96| ... | @@ -0,0 +1,96 @@ | ||
| 1 | /* Copyright (C) 1999-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _UNISTD_H | ||
| 19 | # error "Never include this file directly. Use <unistd.h> instead" | ||
| 20 | #endif | ||
| 21 | |||
| 22 | #include <bits/wordsize.h> | ||
| 23 | |||
| 24 | /* This header should define the following symbols under the described | ||
| 25 | situations. A value `1' means that the model is always supported, | ||
| 26 | `-1' means it is never supported. Undefined means it cannot be | ||
| 27 | statically decided. | ||
| 28 | |||
| 29 | _POSIX_V7_ILP32_OFF32 32bit int, long, pointers, and off_t type | ||
| 30 | _POSIX_V7_ILP32_OFFBIG 32bit int, long, and pointers and larger off_t type | ||
| 31 | |||
| 32 | _POSIX_V7_LP64_OFF32	 64bit long and pointers and 32bit off_t type | ||
| 33 | _POSIX_V7_LPBIG_OFFBIG 64bit long and pointers and large off_t type | ||
| 34 | |||
| 35 | The macros _POSIX_V6_ILP32_OFF32, _POSIX_V6_ILP32_OFFBIG, | ||
| 36 | _POSIX_V6_LP64_OFF32, _POSIX_V6_LPBIG_OFFBIG, _XBS5_ILP32_OFF32, | ||
| 37 | _XBS5_ILP32_OFFBIG, _XBS5_LP64_OFF32, and _XBS5_LPBIG_OFFBIG were | ||
| 38 | used in previous versions of the Unix standard and are available | ||
| 39 | only for compatibility. | ||
| 40 | */ | ||
| 41 | |||
| 42 | #if __WORDSIZE == 64 | ||
| 43 | |||
| 44 | /* Environments with 32-bit wide pointers are optionally provided. | ||
| 45 | Therefore following macros aren't defined: | ||
| 46 | # undef _POSIX_V7_ILP32_OFF32 | ||
| 47 | # undef _POSIX_V7_ILP32_OFFBIG | ||
| 48 | # undef _POSIX_V6_ILP32_OFF32 | ||
| 49 | # undef _POSIX_V6_ILP32_OFFBIG | ||
| 50 | # undef _XBS5_ILP32_OFF32 | ||
| 51 | # undef _XBS5_ILP32_OFFBIG | ||
| 52 | and users need to check at runtime. */ | ||
| 53 | |||
| 54 | /* We also have no use (for now) for an environment with bigger pointers | ||
| 55 | and offsets. */ | ||
| 56 | # define _POSIX_V7_LPBIG_OFFBIG	-1 | ||
| 57 | # define _POSIX_V6_LPBIG_OFFBIG	-1 | ||
| 58 | # define _XBS5_LPBIG_OFFBIG	-1 | ||
| 59 | |||
| 60 | /* By default we have 64-bit wide `long int', pointers and `off_t'. */ | ||
| 61 | # define _POSIX_V7_LP64_OFF64	1 | ||
| 62 | # define _POSIX_V6_LP64_OFF64	1 | ||
| 63 | # define _XBS5_LP64_OFF64	1 | ||
| 64 | |||
| 65 | #else /* __WORDSIZE == 32 */ | ||
| 66 | |||
| 67 | /* By default we have 32-bit wide `int', `long int', pointers and `off_t' | ||
| 68 | and all platforms support LFS. */ | ||
| 69 | # define _POSIX_V7_ILP32_OFF32	1 | ||
| 70 | # define _POSIX_V7_ILP32_OFFBIG	1 | ||
| 71 | # define _POSIX_V6_ILP32_OFF32	1 | ||
| 72 | # define _POSIX_V6_ILP32_OFFBIG	1 | ||
| 73 | # define _XBS5_ILP32_OFF32	1 | ||
| 74 | # define _XBS5_ILP32_OFFBIG	1 | ||
| 75 | |||
| 76 | /* We optionally provide an environment with the above size but an 64-bit | ||
| 77 | side `off_t'. Therefore we don't define _POSIX_V7_ILP32_OFFBIG. */ | ||
| 78 | |||
| 79 | /* Environments with 64-bit wide pointers can be provided, | ||
| 80 | so these macros aren't defined: | ||
| 81 | # undef _POSIX_V7_LP64_OFF64 | ||
| 82 | # undef _POSIX_V7_LPBIG_OFFBIG | ||
| 83 | # undef _POSIX_V6_LP64_OFF64 | ||
| 84 | # undef _POSIX_V6_LPBIG_OFFBIG | ||
| 85 | # undef _XBS5_LP64_OFF64 | ||
| 86 | # undef _XBS5_LPBIG_OFFBIG | ||
| 87 | and sysconf tests for it at runtime. */ | ||
| 88 | |||
| 89 | #endif /* __WORDSIZE == 32 */ | ||
| 90 | |||
| 91 | #define __ILP32_OFF32_CFLAGS	"-m32" | ||
| 92 | #define __ILP32_OFFBIG_CFLAGS	"-m32 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" | ||
| 93 | #define __ILP32_OFF32_LDFLAGS	"-m32" | ||
| 94 | #define __ILP32_OFFBIG_LDFLAGS	"-m32" | ||
| 95 | #define __LP64_OFF64_CFLAGS	"-m64" | ||
| 96 | #define __LP64_OFF64_LDFLAGS	"-m64" | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnu/bits/fcntl.h created+68| ... | @@ -0,0 +1,68 @@ | ||
| 1 | /* O_*, F_*, FD_* bit values for Linux/PowerPC. | ||
| 2 | Copyright (C) 1995-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef	_FCNTL_H | ||
| 20 | # error "Never use <bits/fcntl.h> directly; include <fcntl.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <bits/wordsize.h> | ||
| 24 | |||
| 25 | #define __O_DIRECTORY	 040000	/* Must be a directory.	 */ | ||
| 26 | #define __O_NOFOLLOW	0100000	/* Do not follow links.	 */ | ||
| 27 | #define __O_DIRECT	0400000	/* Direct disk access.	*/ | ||
| 28 | |||
| 29 | #if __WORDSIZE == 64 | ||
| 30 | /* Not necessary, files are always with 64bit off_t. */ | ||
| 31 | # define __O_LARGEFILE 0 | ||
| 32 | #else | ||
| 33 | # define __O_LARGEFILE	0200000 | ||
| 34 | #endif | ||
| 35 | |||
| 36 | #if __WORDSIZE == 64 && !defined __USE_FILE_OFFSET64 | ||
| 37 | # define F_GETLK	5 | ||
| 38 | # define F_SETLK	6 | ||
| 39 | # define F_SETLKW	7 | ||
| 40 | #endif | ||
| 41 | |||
| 42 | struct flock | ||
| 43 | { | ||
| 44 | short int l_type;	/* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK.	*/ | ||
| 45 | short int l_whence;	/* Where `l_start' is relative to (like `lseek'). */ | ||
| 46 | #ifndef __USE_FILE_OFFSET64 | ||
| 47 | __off_t l_start;	/* Offset where the lock begins. */ | ||
| 48 | __off_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 49 | #else | ||
| 50 | __off64_t l_start;	/* Offset where the lock begins. */ | ||
| 51 | __off64_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 52 | #endif | ||
| 53 | __pid_t l_pid;	/* Process holding the lock. */ | ||
| 54 | }; | ||
| 55 | |||
| 56 | #ifdef __USE_LARGEFILE64 | ||
| 57 | struct flock64 | ||
| 58 | { | ||
| 59 | short int l_type;	/* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK.	*/ | ||
| 60 | short int l_whence;	/* Where `l_start' is relative to (like `lseek'). */ | ||
| 61 | __off64_t l_start;	/* Offset where the lock begins. */ | ||
| 62 | __off64_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 63 | __pid_t l_pid;	/* Process holding the lock. */ | ||
| 64 | }; | ||
| 65 | #endif | ||
| 66 | |||
| 67 | /* Include generic Linux declarations. */ | ||
| 68 | #include <bits/fcntl-linux.h> | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnu/bits/fenv.h created+180| ... | @@ -0,0 +1,180 @@ | ||
| 1 | /* Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _FENV_H | ||
| 19 | # error "Never use <bits/fenv.h> directly; include <fenv.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | |||
| 23 | /* Define bits representing the exception. We use the bit positions of | ||
| 24 | the appropriate bits in the FPSCR... */ | ||
| 25 | enum | ||
| 26 | { | ||
| 27 | FE_INEXACT = | ||
| 28 | #define FE_INEXACT	(1 << (31 - 6)) | ||
| 29 | FE_INEXACT, | ||
| 30 | FE_DIVBYZERO = | ||
| 31 | #define FE_DIVBYZERO	(1 << (31 - 5)) | ||
| 32 | FE_DIVBYZERO, | ||
| 33 | FE_UNDERFLOW = | ||
| 34 | #define FE_UNDERFLOW	(1 << (31 - 4)) | ||
| 35 | FE_UNDERFLOW, | ||
| 36 | FE_OVERFLOW = | ||
| 37 | #define FE_OVERFLOW	(1 << (31 - 3)) | ||
| 38 | FE_OVERFLOW, | ||
| 39 | |||
| 40 | /* ... except for FE_INVALID, for which we use bit 31. FE_INVALID | ||
| 41 | actually corresponds to bits 7 through 12 and 21 through 23 | ||
| 42 | in the FPSCR, but we can't use that because the current draft | ||
| 43 | says that it must be a power of 2. Instead we use bit 2 which | ||
| 44 | is the summary bit for all the FE_INVALID exceptions, which | ||
| 45 | kind of makes sense. */ | ||
| 46 | FE_INVALID = | ||
| 47 | #define FE_INVALID	(1 << (31 - 2)) | ||
| 48 | FE_INVALID, | ||
| 49 | |||
| 50 | #ifdef __USE_GNU | ||
| 51 | /* Breakdown of the FE_INVALID bits. Setting FE_INVALID on an | ||
| 52 | input to a routine is equivalent to setting all of these bits; | ||
| 53 | FE_INVALID will be set on output from a routine iff one of | ||
| 54 | these bits is set. Note, though, that you can't disable or | ||
| 55 | enable these exceptions individually. */ | ||
| 56 | |||
| 57 | /* Operation with a sNaN. */ | ||
| 58 | FE_INVALID_SNAN = | ||
| 59 | # define FE_INVALID_SNAN	(1 << (31 - 7)) | ||
| 60 | FE_INVALID_SNAN, | ||
| 61 | |||
| 62 | /* Inf - Inf */ | ||
| 63 | FE_INVALID_ISI = | ||
| 64 | # define FE_INVALID_ISI	(1 << (31 - 8)) | ||
| 65 | FE_INVALID_ISI, | ||
| 66 | |||
| 67 | /* Inf / Inf */ | ||
| 68 | FE_INVALID_IDI = | ||
| 69 | # define FE_INVALID_IDI	(1 << (31 - 9)) | ||
| 70 | FE_INVALID_IDI, | ||
| 71 | |||
| 72 | /* 0 / 0 */ | ||
| 73 | FE_INVALID_ZDZ = | ||
| 74 | # define FE_INVALID_ZDZ	(1 << (31 - 10)) | ||
| 75 | FE_INVALID_ZDZ, | ||
| 76 | |||
| 77 | /* Inf * 0 */ | ||
| 78 | FE_INVALID_IMZ = | ||
| 79 | # define FE_INVALID_IMZ	(1 << (31 - 11)) | ||
| 80 | FE_INVALID_IMZ, | ||
| 81 | |||
| 82 | /* Comparison with a NaN. */ | ||
| 83 | FE_INVALID_COMPARE = | ||
| 84 | # define FE_INVALID_COMPARE	(1 << (31 - 12)) | ||
| 85 | FE_INVALID_COMPARE, | ||
| 86 | |||
| 87 | /* Invalid operation flag for software (not set by hardware). */ | ||
| 88 | /* Note that some chips don't have this implemented, presumably | ||
| 89 | because no-one expected anyone to write software for them %-). */ | ||
| 90 | FE_INVALID_SOFTWARE = | ||
| 91 | # define FE_INVALID_SOFTWARE	(1 << (31 - 21)) | ||
| 92 | FE_INVALID_SOFTWARE, | ||
| 93 | |||
| 94 | /* Square root of negative number (including -Inf). */ | ||
| 95 | /* Note that some chips don't have this implemented. */ | ||
| 96 | FE_INVALID_SQRT = | ||
| 97 | # define FE_INVALID_SQRT	(1 << (31 - 22)) | ||
| 98 | FE_INVALID_SQRT, | ||
| 99 | |||
| 100 | /* Conversion-to-integer of a NaN or a number too large or too small. */ | ||
| 101 | FE_INVALID_INTEGER_CONVERSION = | ||
| 102 | # define FE_INVALID_INTEGER_CONVERSION	(1 << (31 - 23)) | ||
| 103 | FE_INVALID_INTEGER_CONVERSION | ||
| 104 | |||
| 105 | # define FE_ALL_INVALID \ | ||
| 106 | (FE_INVALID_SNAN | FE_INVALID_ISI | FE_INVALID_IDI | FE_INVALID_ZDZ \ | ||
| 107 | 	 | FE_INVALID_IMZ | FE_INVALID_COMPARE | FE_INVALID_SOFTWARE \ | ||
| 108 | 	 | FE_INVALID_SQRT | FE_INVALID_INTEGER_CONVERSION) | ||
| 109 | #endif | ||
| 110 | }; | ||
| 111 | |||
| 112 | #define FE_ALL_EXCEPT \ | ||
| 113 | 	(FE_INEXACT | FE_DIVBYZERO | FE_UNDERFLOW | FE_OVERFLOW | FE_INVALID) | ||
| 114 | |||
| 115 | /* PowerPC chips support all of the four defined rounding modes. We | ||
| 116 | use the bit pattern in the FPSCR as the values for the | ||
| 117 | appropriate macros. */ | ||
| 118 | enum | ||
| 119 | { | ||
| 120 | FE_TONEAREST = | ||
| 121 | #define FE_TONEAREST	0 | ||
| 122 | FE_TONEAREST, | ||
| 123 | FE_TOWARDZERO = | ||
| 124 | #define FE_TOWARDZERO	1 | ||
| 125 | FE_TOWARDZERO, | ||
| 126 | FE_UPWARD = | ||
| 127 | #define FE_UPWARD	2 | ||
| 128 | FE_UPWARD, | ||
| 129 | FE_DOWNWARD = | ||
| 130 | #define FE_DOWNWARD	3 | ||
| 131 | FE_DOWNWARD | ||
| 132 | }; | ||
| 133 | |||
| 134 | /* Type representing exception flags. */ | ||
| 135 | typedef unsigned int fexcept_t; | ||
| 136 | |||
| 137 | /* Type representing floating-point environment. We leave it as 'double' | ||
| 138 | for efficiency reasons (rather than writing it to a 32-bit integer). */ | ||
| 139 | typedef double fenv_t; | ||
| 140 | |||
| 141 | /* If the default argument is used we use this value. */ | ||
| 142 | extern const fenv_t __fe_dfl_env; | ||
| 143 | #define FE_DFL_ENV	(&__fe_dfl_env) | ||
| 144 | |||
| 145 | #ifdef __USE_GNU | ||
| 146 | /* Floating-point environment where all exceptions are enabled. Note that | ||
| 147 | this is not sufficient to give you SIGFPE. */ | ||
| 148 | extern const fenv_t __fe_enabled_env; | ||
| 149 | # define FE_ENABLED_ENV	(&__fe_enabled_env) | ||
| 150 | |||
| 151 | /* Floating-point environment with (processor-dependent) non-IEEE floating | ||
| 152 | point. */ | ||
| 153 | extern const fenv_t __fe_nonieee_env; | ||
| 154 | # define FE_NONIEEE_ENV	(&__fe_nonieee_env) | ||
| 155 | |||
| 156 | /* Floating-point environment with all exceptions enabled. Note that | ||
| 157 | just evaluating this value does not change the processor exception mode. | ||
| 158 | Passing this mask to fesetenv will result in a prctl syscall to change | ||
| 159 | the MSR FE0/FE1 bits to "Precise Mode". On some processors this will | ||
| 160 | result in slower floating point execution. This will last until an | ||
| 161 | fenv or exception mask is installed that disables all FP exceptions. */ | ||
| 162 | # define FE_NOMASK_ENV	FE_ENABLED_ENV | ||
| 163 | |||
| 164 | /* Floating-point environment with all exceptions disabled. Note that | ||
| 165 | just evaluating this value does not change the processor exception mode. | ||
| 166 | Passing this mask to fesetenv will result in a prctl syscall to change | ||
| 167 | the MSR FE0/FE1 bits to "Ignore Exceptions Mode". On most processors | ||
| 168 | this allows the fastest possible floating point execution.*/ | ||
| 169 | # define FE_MASK_ENV	FE_DFL_ENV | ||
| 170 | |||
| 171 | #endif | ||
| 172 | |||
| 173 | #if __GLIBC_USE (IEC_60559_BFP_EXT_C23) | ||
| 174 | /* Type representing floating-point control modes. */ | ||
| 175 | typedef double femode_t; | ||
| 176 | |||
| 177 | /* Default floating-point control modes. */ | ||
| 178 | extern const femode_t __fe_dfl_mode; | ||
| 179 | # define FE_DFL_MODE	(&__fe_dfl_mode) | ||
| 180 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnu/bits/floatn.h created+122| ... | @@ -0,0 +1,122 @@ | ||
| 1 | /* Macros to control TS 18661-3 glibc features on powerpc. | ||
| 2 | Copyright (C) 2017-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_FLOATN_H | ||
| 20 | #define _BITS_FLOATN_H | ||
| 21 | |||
| 22 | #include <features.h> | ||
| 23 | #include <bits/long-double.h> | ||
| 24 | |||
| 25 | /* Defined to 1 if the current compiler invocation provides a | ||
| 26 | floating-point type with the IEEE 754 binary128 format, and this glibc | ||
| 27 | includes corresponding *f128 interfaces for it. */ | ||
| 28 | #if defined _ARCH_PWR8 && defined __LITTLE_ENDIAN__ && (_CALL_ELF == 2) \ | ||
| 29 | && defined __FLOAT128__ && !defined __NO_LONG_DOUBLE_MATH | ||
| 30 | # define __HAVE_FLOAT128 1 | ||
| 31 | #else | ||
| 32 | # define __HAVE_FLOAT128 0 | ||
| 33 | #endif | ||
| 34 | |||
| 35 | /* Defined to 1 if __HAVE_FLOAT128 is 1 and the type is ABI-distinct | ||
| 36 | from the default float, double and long double types in this glibc, i.e. | ||
| 37 | calls to the binary128 functions go to *f128 symbols instead of *l. */ | ||
| 38 | #if __HAVE_FLOAT128 | ||
| 39 | # define __HAVE_DISTINCT_FLOAT128 1 | ||
| 40 | #else | ||
| 41 | # define __HAVE_DISTINCT_FLOAT128 0 | ||
| 42 | #endif | ||
| 43 | |||
| 44 | /* Defined to 1 if the current compiler invocation provides a | ||
| 45 | floating-point type with the right format for _Float64x, and this | ||
| 46 | glibc includes corresponding *f64x interfaces for it. */ | ||
| 47 | #define __HAVE_FLOAT64X __HAVE_FLOAT128 | ||
| 48 | |||
| 49 | /* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format | ||
| 50 | of long double. Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has | ||
| 51 | the format of _Float128, which must be different from that of long | ||
| 52 | double. */ | ||
| 53 | #define __HAVE_FLOAT64X_LONG_DOUBLE 0 | ||
| 54 | |||
| 55 | #ifndef __ASSEMBLER__ | ||
| 56 | |||
| 57 | /* Defined to concatenate the literal suffix to be used with _Float128 | ||
| 58 | types, if __HAVE_FLOAT128 is 1. */ | ||
| 59 | # if __HAVE_FLOAT128 | ||
| 60 | # if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) | ||
| 61 | /* The literal suffix (f128) exist for powerpc only since GCC 7.0. */ | ||
| 62 | # if __LDBL_MANT_DIG__ == 113 | ||
| 63 | # define __f128(x) x##l | ||
| 64 | # else | ||
| 65 | # define __f128(x) x##q | ||
| 66 | # endif | ||
| 67 | # else | ||
| 68 | # define __f128(x) x##f128 | ||
| 69 | # endif | ||
| 70 | # endif | ||
| 71 | |||
| 72 | /* Defined to a complex binary128 type if __HAVE_FLOAT128 is 1. */ | ||
| 73 | # if __HAVE_FLOAT128 | ||
| 74 | # if __LDBL_MANT_DIG__ == 113 && defined __cplusplus && !__GNUC_PREREQ (13, 0) | ||
| 75 | typedef long double _Float128; | ||
| 76 | # define __CFLOAT128 _Complex long double | ||
| 77 | # elif !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) | ||
| 78 | /* The type _Float128 exist for powerpc only since GCC 7.0. */ | ||
| 79 | typedef __float128 _Float128; | ||
| 80 | /* Add a typedef for older GCC and C++ compilers which don't natively support | ||
| 81 | _Complex _Float128. */ | ||
| 82 | typedef _Complex float __cfloat128 __attribute__ ((__mode__ (__KC__))); | ||
| 83 | # define __CFLOAT128 __cfloat128 | ||
| 84 | # else | ||
| 85 | # define __CFLOAT128 _Complex _Float128 | ||
| 86 | # endif | ||
| 87 | # endif | ||
| 88 | |||
| 89 | /* The remaining of this file provides support for older compilers. */ | ||
| 90 | # if __HAVE_FLOAT128 | ||
| 91 | /* Builtin __builtin_huge_valf128 doesn't exist before GCC 7.0. */ | ||
| 92 | # if !__GNUC_PREREQ (7, 0) | ||
| 93 | # define __builtin_huge_valf128() ((_Float128) __builtin_huge_val ()) | ||
| 94 | # endif | ||
| 95 | |||
| 96 | /* The following builtins (suffixed with 'q') are available in GCC >= 6.2, | ||
| 97 | which is the minimum version required for float128 support on powerpc64le. | ||
| 98 | Since GCC 7.0 the builtins suffixed with f128 are also available, then | ||
| 99 | there is no need to redefined them. */ | ||
| 100 | # if !__GNUC_PREREQ (7, 0) | ||
| 101 | # define __builtin_copysignf128 __builtin_copysignq | ||
| 102 | # define __builtin_fabsf128 __builtin_fabsq | ||
| 103 | # define __builtin_inff128 __builtin_infq | ||
| 104 | # define __builtin_nanf128 __builtin_nanq | ||
| 105 | # define __builtin_nansf128 __builtin_nansq | ||
| 106 | # endif | ||
| 107 | |||
| 108 | /* In math/math.h, __MATH_TG will expand signbit to __builtin_signbit*, | ||
| 109 | e.g.: __builtin_signbitf128, before GCC 6. However, there has never | ||
| 110 | been a __builtin_signbitf128 in GCC and the type-generic builtin is | ||
| 111 | only available since GCC 6. */ | ||
| 112 | # if !__GNUC_PREREQ (6, 0) | ||
| 113 | # define __builtin_signbitf128 __signbitf128 | ||
| 114 | # endif | ||
| 115 | |||
| 116 | # endif | ||
| 117 | |||
| 118 | #endif /* !__ASSEMBLER__. */ | ||
| 119 | |||
| 120 | #include <bits/floatn-common.h> | ||
| 121 | |||
| 122 | #endif /* _BITS_FLOATN_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnu/bits/fp-fast.h created+39| ... | @@ -0,0 +1,39 @@ | ||
| 1 | /* Define FP_FAST_* macros. PowerPC version. | ||
| 2 | Copyright (C) 2016-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _MATH_H | ||
| 20 | # error "Never use <bits/fp-fast.h> directly; include <math.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifdef __USE_ISOC99 | ||
| 24 | |||
| 25 | /* The GCC 4.6 compiler will define __FP_FAST_FMA{,F,L} if the fma{,f,l} | ||
| 26 | builtins are supported. */ | ||
| 27 | # if (!defined _SOFT_FLOAT && !defined __NO_FPRS__) || defined __FP_FAST_FMA | ||
| 28 | # define FP_FAST_FMA 1 | ||
| 29 | # endif | ||
| 30 | |||
| 31 | # if (!defined _SOFT_FLOAT && !defined __NO_FPRS__) || defined __FP_FAST_FMAF | ||
| 32 | # define FP_FAST_FMAF 1 | ||
| 33 | # endif | ||
| 34 | |||
| 35 | # ifdef __FP_FAST_FMAL | ||
| 36 | # define FP_FAST_FMAL 1 | ||
| 37 | # endif | ||
| 38 | |||
| 39 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnu/bits/hwcap.h created+78| ... | @@ -0,0 +1,78 @@ | ||
| 1 | /* Defines for bits in AT_HWCAP and AT_HWCAP2. | ||
| 2 | Copyright (C) 2012-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #if !defined(_SYS_AUXV_H) && !defined(_SYSDEPS_SYSDEP_H) | ||
| 20 | # error "Never include <bits/hwcap.h> directly; use <sys/auxv.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* The bit numbers must match those in the kernel's asm/cputable.h. */ | ||
| 24 | |||
| 25 | /* Feature definitions in AT_HWCAP. */ | ||
| 26 | #define PPC_FEATURE_32		 0x80000000 /* 32-bit mode. */ | ||
| 27 | #define PPC_FEATURE_64		 0x40000000 /* 64-bit mode. */ | ||
| 28 | #define PPC_FEATURE_601_INSTR	 0x20000000 /* 601 chip, Old POWER ISA. */ | ||
| 29 | #define PPC_FEATURE_HAS_ALTIVEC	 0x10000000 /* SIMD/Vector Unit. */ | ||
| 30 | #define PPC_FEATURE_HAS_FPU	 0x08000000 /* Floating Point Unit. */ | ||
| 31 | #define PPC_FEATURE_HAS_MMU	 0x04000000 /* Memory Management Unit. */ | ||
| 32 | #define PPC_FEATURE_HAS_4xxMAC	 0x02000000 /* 4xx Multiply Accumulator. */ | ||
| 33 | #define PPC_FEATURE_UNIFIED_CACHE 0x01000000 /* Unified I/D cache. */ | ||
| 34 | #define PPC_FEATURE_HAS_SPE	 0x00800000 /* Signal Processing ext. */ | ||
| 35 | #define PPC_FEATURE_HAS_EFP_SINGLE 0x00400000 /* SPE Float. */ | ||
| 36 | #define PPC_FEATURE_HAS_EFP_DOUBLE 0x00200000 /* SPE Double. */ | ||
| 37 | #define PPC_FEATURE_NO_TB	 0x00100000 /* 601/403gx have no timebase */ | ||
| 38 | #define PPC_FEATURE_POWER4	 0x00080000 /* POWER4 ISA 2.00 */ | ||
| 39 | #define PPC_FEATURE_POWER5	 0x00040000 /* POWER5 ISA 2.02 */ | ||
| 40 | #define PPC_FEATURE_POWER5_PLUS	 0x00020000 /* POWER5+ ISA 2.03 */ | ||
| 41 | #define PPC_FEATURE_CELL_BE	 0x00010000 /* CELL Broadband Engine */ | ||
| 42 | #define PPC_FEATURE_BOOKE	 0x00008000 /* ISA Category Embedded */ | ||
| 43 | #define PPC_FEATURE_SMT		 0x00004000 /* Simultaneous | ||
| 44 | 						 Multi-Threading */ | ||
| 45 | #define PPC_FEATURE_ICACHE_SNOOP 0x00002000 | ||
| 46 | #define PPC_FEATURE_ARCH_2_05	 0x00001000 /* ISA 2.05 */ | ||
| 47 | #define PPC_FEATURE_PA6T	 0x00000800 /* PA Semi 6T Core */ | ||
| 48 | #define PPC_FEATURE_HAS_DFP	 0x00000400 /* Decimal FP Unit */ | ||
| 49 | #define PPC_FEATURE_POWER6_EXT	 0x00000200 /* P6 + mffgpr/mftgpr */ | ||
| 50 | #define PPC_FEATURE_ARCH_2_06	 0x00000100 /* ISA 2.06 */ | ||
| 51 | #define PPC_FEATURE_HAS_VSX	 0x00000080 /* P7 Vector Extension. */ | ||
| 52 | #define PPC_FEATURE_PSERIES_PERFMON_COMPAT 0x00000040 | ||
| 53 | /* Reserved by the kernel.	 0x00000004 Do not use. */ | ||
| 54 | #define PPC_FEATURE_TRUE_LE	 0x00000002 | ||
| 55 | #define PPC_FEATURE_PPC_LE	 0x00000001 | ||
| 56 | |||
| 57 | /* Feature definitions in AT_HWCAP2. */ | ||
| 58 | #define PPC_FEATURE2_ARCH_2_07 0x80000000 /* ISA 2.07 */ | ||
| 59 | #define PPC_FEATURE2_HAS_HTM 0x40000000 /* Hardware Transactional | ||
| 60 | 						 Memory */ | ||
| 61 | #define PPC_FEATURE2_HAS_DSCR 0x20000000 /* Data Stream Control | ||
| 62 | 						 Register */ | ||
| 63 | #define PPC_FEATURE2_HAS_EBB 0x10000000 /* Event Base Branching */ | ||
| 64 | #define PPC_FEATURE2_HAS_ISEL 0x08000000 /* Integer Select */ | ||
| 65 | #define PPC_FEATURE2_HAS_TAR 0x04000000 /* Target Address Register */ | ||
| 66 | #define PPC_FEATURE2_HAS_VEC_CRYPTO 0x02000000 /* Target supports vector | ||
| 67 | 						 instruction. */ | ||
| 68 | #define PPC_FEATURE2_HTM_NOSC	 0x01000000 /* Kernel aborts transaction | ||
| 69 | 						 when a syscall is made. */ | ||
| 70 | #define PPC_FEATURE2_ARCH_3_00	 0x00800000 /* ISA 3.0 */ | ||
| 71 | #define PPC_FEATURE2_HAS_IEEE128 0x00400000 /* VSX IEEE Binary Float | ||
| 72 | 						 128-bit */ | ||
| 73 | #define PPC_FEATURE2_DARN	 0x00200000 /* darn instruction. */ | ||
| 74 | #define PPC_FEATURE2_SCV	 0x00100000 /* scv syscall. */ | ||
| 75 | #define PPC_FEATURE2_HTM_NO_SUSPEND 0x00080000 /* TM without suspended | ||
| 76 | 						 state. */ | ||
| 77 | #define PPC_FEATURE2_ARCH_3_1	 0x00040000 /* ISA 3.1. */ | ||
| 78 | #define PPC_FEATURE2_MMA	 0x00020000 /* Matrix-Multiply Assist. */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnu/bits/ioctl-types.h created+77| ... | @@ -0,0 +1,77 @@ | ||
| 1 | /* Structure types for pre-termios terminal ioctls. Linux/powerpc version. | ||
| 2 | Copyright (C) 2014-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_IOCTL_H | ||
| 20 | # error "Never use <bits/ioctl-types.h> directly; include <sys/ioctl.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Get definition of constants for use with `ioctl'. */ | ||
| 24 | #include <asm/ioctls.h> | ||
| 25 | |||
| 26 | |||
| 27 | struct winsize | ||
| 28 | { | ||
| 29 | unsigned short int ws_row; | ||
| 30 | unsigned short int ws_col; | ||
| 31 | unsigned short int ws_xpixel; | ||
| 32 | unsigned short int ws_ypixel; | ||
| 33 | }; | ||
| 34 | |||
| 35 | #define NCC 10 | ||
| 36 | struct termio | ||
| 37 | { | ||
| 38 | unsigned short int c_iflag;		/* input mode flags */ | ||
| 39 | unsigned short int c_oflag;		/* output mode flags */ | ||
| 40 | unsigned short int c_cflag;		/* control mode flags */ | ||
| 41 | unsigned short int c_lflag;		/* local mode flags */ | ||
| 42 | unsigned char c_line;		/* line discipline */ | ||
| 43 | unsigned char c_cc[NCC];		/* control characters */ | ||
| 44 | }; | ||
| 45 | |||
| 46 | /* modem lines */ | ||
| 47 | #define TIOCM_LE	0x001 | ||
| 48 | #define TIOCM_DTR	0x002 | ||
| 49 | #define TIOCM_RTS	0x004 | ||
| 50 | #define TIOCM_ST	0x008 | ||
| 51 | #define TIOCM_SR	0x010 | ||
| 52 | #define TIOCM_CTS	0x020 | ||
| 53 | #define TIOCM_CAR	0x040 | ||
| 54 | #define TIOCM_RNG	0x080 | ||
| 55 | #define TIOCM_DSR	0x100 | ||
| 56 | #define TIOCM_CD	TIOCM_CAR | ||
| 57 | #define TIOCM_RI	TIOCM_RNG | ||
| 58 | |||
| 59 | /* ioctl (fd, TIOCSERGETLSR, &result) where result may be as below */ | ||
| 60 | |||
| 61 | /* line disciplines */ | ||
| 62 | #define N_TTY		0 | ||
| 63 | #define N_SLIP		1 | ||
| 64 | #define N_MOUSE		2 | ||
| 65 | #define N_PPP		3 | ||
| 66 | #define N_STRIP		4 | ||
| 67 | #define N_AX25		5 | ||
| 68 | #define N_X25		6	/* X.25 async */ | ||
| 69 | #define N_6PACK		7 | ||
| 70 | #define N_MASC		8	/* Mobitex module */ | ||
| 71 | #define N_R3964		9	/* Simatic R3964 module */ | ||
| 72 | #define N_PROFIBUS_FDL	10	/* Profibus */ | ||
| 73 | #define N_IRDA		11	/* Linux IR */ | ||
| 74 | #define N_SMSBLOCK	12	/* SMS block mode */ | ||
| 75 | #define N_HDLC		13	/* synchronous HDLC */ | ||
| 76 | #define N_SYNC_PPP	14	/* synchronous PPP */ | ||
| 77 | #define	N_HCI		15	/* Bluetooth HCI UART */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnu/bits/ipc-perm.h created+36| ... | @@ -0,0 +1,36 @@ | ||
| 1 | /* struct ipc_perm definition. Linux/powerpc version. | ||
| 2 | Copyright (C) 1995-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_IPC_H | ||
| 20 | # error "Never use <bits/ipc-perm.h> directly; include <sys/ipc.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Data structure used to pass permission information to IPC operations. */ | ||
| 24 | struct ipc_perm | ||
| 25 | { | ||
| 26 | __key_t __key;		/* Key. */ | ||
| 27 | __uid_t uid;		/* Owner's user ID. */ | ||
| 28 | __gid_t gid;		/* Owner's group ID. */ | ||
| 29 | __uid_t cuid;		/* Creator's user ID. */ | ||
| 30 | __gid_t cgid;		/* Creator's group ID. */ | ||
| 31 | __mode_t mode;		/* Read/write permission. */ | ||
| 32 | __uint32_t __seq;		/* Sequence number. */ | ||
| 33 | __uint32_t __pad1; | ||
| 34 | __uint64_t __glibc_reserved1; | ||
| 35 | __uint64_t __glibc_reserved2; | ||
| 36 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnu/bits/iscanonical.h created+58| ... | @@ -0,0 +1,58 @@ | ||
| 1 | /* Define iscanonical macro. ldbl-128ibm version. | ||
| 2 | Copyright (C) 2016-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _MATH_H | ||
| 20 | # error "Never use <bits/iscanonical.h> directly; include <math.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #if defined (__NO_LONG_DOUBLE_MATH) || __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 1 | ||
| 24 | # define iscanonical(x) ((void) (__typeof (x)) (x), 1) | ||
| 25 | #else | ||
| 26 | extern int __iscanonicall (long double __x) | ||
| 27 | __THROW __attribute__ ((__const__)); | ||
| 28 | # define __iscanonicalf(x) ((void) (__typeof (x)) (x), 1) | ||
| 29 | # define __iscanonical(x) ((void) (__typeof (x)) (x), 1) | ||
| 30 | # if __HAVE_DISTINCT_FLOAT128 | ||
| 31 | # define __iscanonicalf128(x) ((void) (__typeof (x)) (x), 1) | ||
| 32 | # endif | ||
| 33 | |||
| 34 | /* Return nonzero value if X is canonical. In IEEE interchange binary | ||
| 35 | formats, all values are canonical, but the argument must still be | ||
| 36 | converted to its semantic type for any exceptions arising from the | ||
| 37 | conversion, before being discarded; in IBM long double, there are | ||
| 38 | encodings that are not consistently handled as corresponding to any | ||
| 39 | particular value of the type, and we return 0 for those. */ | ||
| 40 | # ifndef __cplusplus | ||
| 41 | # define iscanonical(x) __MATH_TG ((x), __iscanonical, (x)) | ||
| 42 | # else | ||
| 43 | /* In C++ mode, __MATH_TG cannot be used, because it relies on | ||
| 44 | __builtin_types_compatible_p, which is a C-only builtin. On the | ||
| 45 | other hand, overloading provides the means to distinguish between | ||
| 46 | the floating-point types. The overloading resolution will match | ||
| 47 | the correct parameter (regardless of type qualifiers (i.e.: const | ||
| 48 | and volatile)). */ | ||
| 49 | extern "C++" { | ||
| 50 | inline int iscanonical (float __val) { return __iscanonicalf (__val); } | ||
| 51 | inline int iscanonical (double __val) { return __iscanonical (__val); } | ||
| 52 | inline int iscanonical (long double __val) { return __iscanonicall (__val); } | ||
| 53 | # if __HAVE_DISTINCT_FLOAT128 | ||
| 54 | inline int iscanonical (_Float128 __val) { return __iscanonicalf128 (__val); } | ||
| 55 | # endif | ||
| 56 | } | ||
| 57 | # endif /* __cplusplus */ | ||
| 58 | #endif /* __NO_LONG_DOUBLE_MATH */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnu/bits/link.h created+156| ... | @@ -0,0 +1,156 @@ | ||
| 1 | /* Machine-specific declarations for dynamic linker interface. PowerPC version | ||
| 2 | Copyright (C) 2004-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef	_LINK_H | ||
| 20 | # error "Never include <bits/link.h> directly; use <link.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | |||
| 24 | #if __ELF_NATIVE_CLASS == 32 | ||
| 25 | |||
| 26 | /* Registers for entry into PLT on PPC32. */ | ||
| 27 | typedef struct La_ppc32_regs | ||
| 28 | { | ||
| 29 | uint32_t lr_reg[8]; | ||
| 30 | double lr_fp[8]; | ||
| 31 | uint32_t lr_vreg[12][4]; | ||
| 32 | uint32_t lr_r1; | ||
| 33 | uint32_t lr_lr; | ||
| 34 | } La_ppc32_regs; | ||
| 35 | |||
| 36 | /* Return values for calls from PLT on PPC32. */ | ||
| 37 | typedef struct La_ppc32_retval | ||
| 38 | { | ||
| 39 | uint32_t lrv_r3; | ||
| 40 | uint32_t lrv_r4; | ||
| 41 | double lrv_fp[8]; | ||
| 42 | uint32_t lrv_v2[4]; | ||
| 43 | } La_ppc32_retval; | ||
| 44 | |||
| 45 | |||
| 46 | __BEGIN_DECLS | ||
| 47 | |||
| 48 | extern Elf32_Addr la_ppc32_gnu_pltenter (Elf32_Sym *__sym, | ||
| 49 | 					 unsigned int __ndx, | ||
| 50 | 					 uintptr_t *__refcook, | ||
| 51 | 					 uintptr_t *__defcook, | ||
| 52 | 					 La_ppc32_regs *__regs, | ||
| 53 | 					 unsigned int *__flags, | ||
| 54 | 					 const char *__symname, | ||
| 55 | 					 long int *__framesizep); | ||
| 56 | extern unsigned int la_ppc32_gnu_pltexit (Elf32_Sym *__sym, | ||
| 57 | 					 unsigned int __ndx, | ||
| 58 | 					 uintptr_t *__refcook, | ||
| 59 | 					 uintptr_t *__defcook, | ||
| 60 | 					 const La_ppc32_regs *__inregs, | ||
| 61 | 					 La_ppc32_retval *__outregs, | ||
| 62 | 					 const char *__symname); | ||
| 63 | |||
| 64 | __END_DECLS | ||
| 65 | |||
| 66 | #elif __ELF_NATIVE_CLASS == 64 | ||
| 67 | # if _CALL_ELF != 2 | ||
| 68 | |||
| 69 | /* Registers for entry into PLT on PPC64. */ | ||
| 70 | typedef struct La_ppc64_regs | ||
| 71 | { | ||
| 72 | uint64_t lr_reg[8]; | ||
| 73 | double lr_fp[13]; | ||
| 74 | uint32_t __padding; | ||
| 75 | uint32_t lr_vrsave; | ||
| 76 | uint32_t lr_vreg[12][4]; | ||
| 77 | uint64_t lr_r1; | ||
| 78 | uint64_t lr_lr; | ||
| 79 | } La_ppc64_regs; | ||
| 80 | |||
| 81 | /* Return values for calls from PLT on PPC64. */ | ||
| 82 | typedef struct La_ppc64_retval | ||
| 83 | { | ||
| 84 | uint64_t lrv_r3; | ||
| 85 | uint64_t lrv_r4; | ||
| 86 | double lrv_fp[4];	/* f1-f4, float - complex long double. */ | ||
| 87 | uint32_t lrv_v2[4];	/* v2. */ | ||
| 88 | } La_ppc64_retval; | ||
| 89 | |||
| 90 | |||
| 91 | __BEGIN_DECLS | ||
| 92 | |||
| 93 | extern Elf64_Addr la_ppc64_gnu_pltenter (Elf64_Sym *__sym, | ||
| 94 | 					 unsigned int __ndx, | ||
| 95 | 					 uintptr_t *__refcook, | ||
| 96 | 					 uintptr_t *__defcook, | ||
| 97 | 					 La_ppc64_regs *__regs, | ||
| 98 | 					 unsigned int *__flags, | ||
| 99 | 					 const char *__symname, | ||
| 100 | 					 long int *__framesizep); | ||
| 101 | extern unsigned int la_ppc64_gnu_pltexit (Elf64_Sym *__sym, | ||
| 102 | 					 unsigned int __ndx, | ||
| 103 | 					 uintptr_t *__refcook, | ||
| 104 | 					 uintptr_t *__defcook, | ||
| 105 | 					 const La_ppc64_regs *__inregs, | ||
| 106 | 					 La_ppc64_retval *__outregs, | ||
| 107 | 					 const char *__symname); | ||
| 108 | |||
| 109 | __END_DECLS | ||
| 110 | |||
| 111 | # else | ||
| 112 | |||
| 113 | /* Registers for entry into PLT on PPC64 in the ELFv2 ABI. */ | ||
| 114 | typedef struct La_ppc64v2_regs | ||
| 115 | { | ||
| 116 | uint64_t lr_reg[8]; | ||
| 117 | double lr_fp[13]; | ||
| 118 | uint32_t __padding; | ||
| 119 | uint32_t lr_vrsave; | ||
| 120 | uint32_t lr_vreg[12][4] __attribute__ ((aligned (16))); | ||
| 121 | uint64_t lr_r1; | ||
| 122 | uint64_t lr_lr; | ||
| 123 | } La_ppc64v2_regs; | ||
| 124 | |||
| 125 | /* Return values for calls from PLT on PPC64 in the ELFv2 ABI. */ | ||
| 126 | typedef struct La_ppc64v2_retval | ||
| 127 | { | ||
| 128 | uint64_t lrv_r3; | ||
| 129 | uint64_t lrv_r4; | ||
| 130 | double lrv_fp[10]; | ||
| 131 | uint32_t lrv_vreg[8][4] __attribute__ ((aligned (16))); | ||
| 132 | } La_ppc64v2_retval; | ||
| 133 | |||
| 134 | |||
| 135 | __BEGIN_DECLS | ||
| 136 | |||
| 137 | extern Elf64_Addr la_ppc64v2_gnu_pltenter (Elf64_Sym *__sym, | ||
| 138 | 					 unsigned int __ndx, | ||
| 139 | 					 uintptr_t *__refcook, | ||
| 140 | 					 uintptr_t *__defcook, | ||
| 141 | 					 La_ppc64v2_regs *__regs, | ||
| 142 | 					 unsigned int *__flags, | ||
| 143 | 					 const char *__symname, | ||
| 144 | 					 long int *__framesizep); | ||
| 145 | extern unsigned int la_ppc64v2_gnu_pltexit (Elf64_Sym *__sym, | ||
| 146 | 					 unsigned int __ndx, | ||
| 147 | 					 uintptr_t *__refcook, | ||
| 148 | 					 uintptr_t *__defcook, | ||
| 149 | 					 const La_ppc64v2_regs *__inregs, | ||
| 150 | 					 La_ppc64v2_retval *__outregs, | ||
| 151 | 					 const char *__symname); | ||
| 152 | |||
| 153 | __END_DECLS | ||
| 154 | |||
| 155 | # endif | ||
| 156 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnu/bits/long-double.h created+31| ... | @@ -0,0 +1,31 @@ | ||
| 1 | /* Properties of long double type. ldbl-opt version. | ||
| 2 | Copyright (C) 2016-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef __NO_LONG_DOUBLE_MATH | ||
| 20 | # define __LONG_DOUBLE_MATH_OPTIONAL	1 | ||
| 21 | # ifndef __LONG_DOUBLE_128__ | ||
| 22 | # define __NO_LONG_DOUBLE_MATH		1 | ||
| 23 | # endif | ||
| 24 | #endif | ||
| 25 | |||
| 26 | // zig patch: handle both be and le in the same header | ||
| 27 | #ifdef __LITTLE_ENDIAN__ | ||
| 28 | #define __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI (__LDBL_MANT_DIG__ == 113) | ||
| 29 | #else | ||
| 30 | #define __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI 0 | ||
| 31 | #endif | ||
lib/libc/include/powerpc-linux-gnu/bits/mman.h created+51| ... | @@ -0,0 +1,51 @@ | ||
| 1 | /* Definitions for POSIX memory map interface. Linux/PowerPC version. | ||
| 2 | Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_MMAN_H | ||
| 20 | # error "Never use <bits/mman.h> directly; include <sys/mman.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* The following definitions basically come from the kernel headers. | ||
| 24 | But the kernel header is not namespace clean. */ | ||
| 25 | |||
| 26 | #define PROT_SAO	0x10		/* Strong Access Ordering. */ | ||
| 27 | |||
| 28 | /* These are Linux-specific. */ | ||
| 29 | #define MAP_GROWSDOWN	0x00100		/* Stack-like segment. */ | ||
| 30 | #define MAP_DENYWRITE	0x00800		/* ETXTBSY */ | ||
| 31 | #define MAP_EXECUTABLE	0x01000		/* Mark it as an executable. */ | ||
| 32 | #define MAP_LOCKED	0x00080		/* Lock the mapping. */ | ||
| 33 | #define MAP_NORESERVE	0x00040		/* Don't check for reservations. */ | ||
| 34 | #define MAP_POPULATE	0x08000		/* Populate (prefault) pagetables. */ | ||
| 35 | #define MAP_NONBLOCK	0x10000		/* Do not block on IO. */ | ||
| 36 | #define MAP_STACK	0x20000		/* Allocation is for a stack. */ | ||
| 37 | #define MAP_HUGETLB	0x40000		/* Create huge page mapping. */ | ||
| 38 | #define MAP_SYNC	0x80000		/* Perform synchronous page | ||
| 39 | 					 faults for the mapping. */ | ||
| 40 | #define MAP_FIXED_NOREPLACE 0x100000	/* MAP_FIXED but do not unmap | ||
| 41 | 					 underlying mapping. */ | ||
| 42 | |||
| 43 | /* Flags for `mlockall'. */ | ||
| 44 | #define MCL_CURRENT	0x2000		/* Lock all currently mapped pages. */ | ||
| 45 | #define MCL_FUTURE	0x4000		/* Lock all additions to address | ||
| 46 | 					 space. */ | ||
| 47 | #define MCL_ONFAULT	0x8000		/* Lock all pages that are | ||
| 48 | 					 faulted in. */ | ||
| 49 | |||
| 50 | /* Include generic Linux declarations. */ | ||
| 51 | #include <bits/mman-linux.h> | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnu/bits/procfs.h created+49| ... | @@ -0,0 +1,49 @@ | ||
| 1 | /* Types for registers for sys/procfs.h. PowerPC version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_PROCFS_H | ||
| 20 | # error "Never include <bits/procfs.h> directly; use <sys/procfs.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <signal.h> | ||
| 24 | #include <sys/ucontext.h> | ||
| 25 | |||
| 26 | /* These definitions are normally provided by ucontext.h via | ||
| 27 | asm/sigcontext.h, asm/ptrace.h, and asm/elf.h. Otherwise we define | ||
| 28 | them here. */ | ||
| 29 | #if !defined __PPC64_ELF_H && !defined _ASM_POWERPC_ELF_H | ||
| 30 | #define ELF_NGREG 48 /* includes nip, msr, lr, etc. */ | ||
| 31 | #define ELF_NFPREG 33 /* includes fpscr */ | ||
| 32 | #if __WORDSIZE == 32 | ||
| 33 | # define ELF_NVRREG 33 /* includes vscr */ | ||
| 34 | #else | ||
| 35 | # define ELF_NVRREG 34 /* includes vscr */ | ||
| 36 | #endif | ||
| 37 | |||
| 38 | typedef unsigned long elf_greg_t; | ||
| 39 | typedef elf_greg_t elf_gregset_t[ELF_NGREG]; | ||
| 40 | |||
| 41 | typedef double elf_fpreg_t; | ||
| 42 | typedef elf_fpreg_t elf_fpregset_t[ELF_NFPREG]; | ||
| 43 | |||
| 44 | /* Altivec registers */ | ||
| 45 | typedef struct { | ||
| 46 | unsigned int u[4]; | ||
| 47 | } __attribute__ ((__aligned__ (16))) elf_vrreg_t; | ||
| 48 | typedef elf_vrreg_t elf_vrregset_t[ELF_NVRREG]; | ||
| 49 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnu/bits/pthread_stack_min.h created+21| ... | @@ -0,0 +1,21 @@ | ||
| 1 | /* Definition of PTHREAD_STACK_MIN. Linux/PPC version. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public License as | ||
| 7 | published by the Free Software Foundation; either version 2.1 of the | ||
| 8 | License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; see the file COPYING.LIB. If | ||
| 17 | not, see <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* Minimum size for a thread. At least two pages for systems with 64k | ||
| 20 | pages. */ | ||
| 21 | #define PTHREAD_STACK_MIN	131072 | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnu/bits/rseq.h created+37| ... | @@ -0,0 +1,37 @@ | ||
| 1 | /* Restartable Sequences Linux powerpc architecture header. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_RSEQ_H | ||
| 19 | # error "Never use <bits/rseq.h> directly; include <sys/rseq.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* RSEQ_SIG is a signature required before each abort handler code. | ||
| 23 | |||
| 24 | It is a 32-bit value that maps to actual architecture code compiled | ||
| 25 | into applications and libraries. It needs to be defined for each | ||
| 26 | architecture. When choosing this value, it needs to be taken into | ||
| 27 | account that generating invalid instructions may have ill effects on | ||
| 28 | tools like objdump, and may also have impact on the CPU speculative | ||
| 29 | execution efficiency in some cases. | ||
| 30 | |||
| 31 | RSEQ_SIG uses the following trap instruction: | ||
| 32 | |||
| 33 | powerpc-be: 0f e5 00 0b twui r5,11 | ||
| 34 | powerpc64-le: 0b 00 e5 0f twui r5,11 | ||
| 35 | powerpc64-be: 0f e5 00 0b twui r5,11 */ | ||
| 36 | |||
| 37 | #define RSEQ_SIG 0x0fe5000b | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnu/bits/setjmp.h created+50| ... | @@ -0,0 +1,50 @@ | ||
| 1 | /* Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | /* Define the machine-dependent type `jmp_buf'. PowerPC version. */ | ||
| 19 | #ifndef _BITS_SETJMP_H | ||
| 20 | #define _BITS_SETJMP_H 1 | ||
| 21 | |||
| 22 | #if !defined _SETJMP_H && !defined _PTHREAD_H | ||
| 23 | # error "Never include <bits/setjmp.h> directly; use <setjmp.h> instead." | ||
| 24 | #endif | ||
| 25 | |||
| 26 | /* The previous bits/setjmp.h had __jmp_buf defined as a structure. | ||
| 27 | We use an array of 'long int' instead, to make writing the | ||
| 28 | assembler easier. Naturally, user code should not depend on | ||
| 29 | either representation. */ | ||
| 30 | |||
| 31 | #include <bits/wordsize.h> | ||
| 32 | |||
| 33 | /* The current powerpc 32-bit Altivec ABI specifies for SVR4 ABI and EABI | ||
| 34 | the vrsave must be at byte 248 & v20 at byte 256. So we must pad this | ||
| 35 | correctly on 32 bit. It also insists that vecregs are only guaranteed | ||
| 36 | 4 byte alignment so we need to use vperm in the setjmp/longjmp routines. | ||
| 37 | We have to version the code because members like int __mask_was_saved | ||
| 38 | in the jmp_buf will move as jmp_buf is now larger than 248 bytes. We | ||
| 39 | cannot keep the altivec jmp_buf backward compatible with the jmp_buf. */ | ||
| 40 | #ifndef	_ASM | ||
| 41 | # if __WORDSIZE == 64 | ||
| 42 | typedef long int __jmp_buf[64] __attribute__ ((__aligned__ (16))); | ||
| 43 | # else | ||
| 44 | /* The alignment is not essential, i.e.the buffer can be copied to a 4 byte | ||
| 45 | aligned buffer as per the ABI it is just added for performance reasons. */ | ||
| 46 | typedef long int __jmp_buf[64 + (12 * 4)] __attribute__ ((__aligned__ (16))); | ||
| 47 | # endif | ||
| 48 | #endif | ||
| 49 | |||
| 50 | #endif /* bits/setjmp.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnu/bits/sigstack.h created+37| ... | @@ -0,0 +1,37 @@ | ||
| 1 | /* sigstack, sigaltstack definitions. | ||
| 2 | Copyright (C) 1998-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_SIGSTACK_H | ||
| 20 | #define _BITS_SIGSTACK_H 1 | ||
| 21 | |||
| 22 | #if !defined _SIGNAL_H && !defined _SYS_UCONTEXT_H | ||
| 23 | # error "Never include this file directly. Use <signal.h> instead" | ||
| 24 | #endif | ||
| 25 | |||
| 26 | #ifdef __powerpc64__ | ||
| 27 | #define MINSIGSTKSZ	8192 | ||
| 28 | #define SIGSTKSZ	32768 | ||
| 29 | #else | ||
| 30 | /* Minimum stack size for a signal handler. */ | ||
| 31 | #define MINSIGSTKSZ	4096 | ||
| 32 | |||
| 33 | /* System default stack size. */ | ||
| 34 | #define SIGSTKSZ	16384 | ||
| 35 | #endif | ||
| 36 | |||
| 37 | #endif /* bits/sigstack.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnu/bits/socket-constants.h created+70| ... | @@ -0,0 +1,70 @@ | ||
| 1 | /* Socket constants which vary among Linux architectures. Version for POWER. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SOCKET_H | ||
| 20 | # error "Never include <bits/socket-constants.h> directly; use <sys/socket.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #define SOL_SOCKET 1 | ||
| 24 | #define SO_ACCEPTCONN 30 | ||
| 25 | #define SO_BROADCAST 6 | ||
| 26 | #define SO_DONTROUTE 5 | ||
| 27 | #define SO_ERROR 4 | ||
| 28 | #define SO_KEEPALIVE 9 | ||
| 29 | #define SO_LINGER 13 | ||
| 30 | #define SO_OOBINLINE 10 | ||
| 31 | #define SO_RCVBUF 8 | ||
| 32 | #define SO_RCVLOWAT 16 | ||
| 33 | #define SO_REUSEADDR 2 | ||
| 34 | #define SO_SNDBUF 7 | ||
| 35 | #define SO_SNDLOWAT 17 | ||
| 36 | #define SO_TYPE 3 | ||
| 37 | |||
| 38 | #if __TIMESIZE == 64 | ||
| 39 | # define SO_RCVTIMEO 18 | ||
| 40 | # define SO_SNDTIMEO 19 | ||
| 41 | # define SO_TIMESTAMP 29 | ||
| 42 | # define SO_TIMESTAMPNS 35 | ||
| 43 | # define SO_TIMESTAMPING 37 | ||
| 44 | #else | ||
| 45 | # define SO_RCVTIMEO_OLD 18 | ||
| 46 | # define SO_SNDTIMEO_OLD 19 | ||
| 47 | # define SO_RCVTIMEO_NEW 66 | ||
| 48 | # define SO_SNDTIMEO_NEW 67 | ||
| 49 | |||
| 50 | # define SO_TIMESTAMP_OLD 29 | ||
| 51 | # define SO_TIMESTAMPNS_OLD 35 | ||
| 52 | # define SO_TIMESTAMPING_OLD 37 | ||
| 53 | # define SO_TIMESTAMP_NEW 63 | ||
| 54 | # define SO_TIMESTAMPNS_NEW 64 | ||
| 55 | # define SO_TIMESTAMPING_NEW 65 | ||
| 56 | |||
| 57 | # ifdef __USE_TIME64_REDIRECTS | ||
| 58 | # define SO_RCVTIMEO SO_RCVTIMEO_NEW | ||
| 59 | # define SO_SNDTIMEO SO_SNDTIMEO_NEW | ||
| 60 | # define SO_TIMESTAMP SO_TIMESTAMP_NEW | ||
| 61 | # define SO_TIMESTAMPNS SO_TIMESTAMPNS_NEW | ||
| 62 | # define SO_TIMESTAMPING SO_TIMESTAMPING_NEW | ||
| 63 | # else | ||
| 64 | # define SO_RCVTIMEO SO_RCVTIMEO_OLD | ||
| 65 | # define SO_SNDTIMEO SO_SNDTIMEO_OLD | ||
| 66 | # define SO_TIMESTAMP SO_TIMESTAMP_OLD | ||
| 67 | # define SO_TIMESTAMPNS SO_TIMESTAMPNS_OLD | ||
| 68 | # define SO_TIMESTAMPING SO_TIMESTAMPING_OLD | ||
| 69 | # endif | ||
| 70 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnu/bits/struct_mutex.h created+63| ... | @@ -0,0 +1,63 @@ | ||
| 1 | /* PowerPC internal mutex struct definitions. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <http://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _THREAD_MUTEX_INTERNAL_H | ||
| 20 | #define _THREAD_MUTEX_INTERNAL_H 1 | ||
| 21 | |||
| 22 | struct __pthread_mutex_s | ||
| 23 | { | ||
| 24 | int __lock; | ||
| 25 | unsigned int __count; | ||
| 26 | int __owner; | ||
| 27 | #if __WORDSIZE == 64 | ||
| 28 | unsigned int __nusers; | ||
| 29 | #endif | ||
| 30 | /* KIND must stay at this position in the structure to maintain | ||
| 31 | binary compatibility with static initializers. */ | ||
| 32 | int __kind; | ||
| 33 | #if __WORDSIZE == 64 | ||
| 34 | short __spins; | ||
| 35 | short __elision; | ||
| 36 | __pthread_list_t __list; | ||
| 37 | # define __PTHREAD_MUTEX_HAVE_PREV 1 | ||
| 38 | #else | ||
| 39 | unsigned int __nusers; | ||
| 40 | __extension__ union | ||
| 41 | { | ||
| 42 | struct | ||
| 43 | { | ||
| 44 | short __espins; | ||
| 45 | short __elision; | ||
| 46 | # define __spins __elision_data.__espins | ||
| 47 | # define __elision __elision_data.__elision | ||
| 48 | } __elision_data; | ||
| 49 | __pthread_slist_t __list; | ||
| 50 | }; | ||
| 51 | # define __PTHREAD_MUTEX_HAVE_PREV 0 | ||
| 52 | #endif | ||
| 53 | }; | ||
| 54 | |||
| 55 | #if __WORDSIZE == 64 | ||
| 56 | # define __PTHREAD_MUTEX_INITIALIZER(__kind) \ | ||
| 57 | 0, 0, 0, 0, __kind, 0, 0, { 0, 0 } | ||
| 58 | #else | ||
| 59 | # define __PTHREAD_MUTEX_INITIALIZER(__kind) \ | ||
| 60 | 0, 0, 0, __kind, 0, { { 0, 0 } } | ||
| 61 | #endif | ||
| 62 | |||
| 63 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnu/bits/struct_rwlock.h created+61| ... | @@ -0,0 +1,61 @@ | ||
| 1 | /* PowerPC internal rwlock struct definitions. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library; if not, see | ||
| 18 | <http://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifndef _RWLOCK_INTERNAL_H | ||
| 21 | #define _RWLOCK_INTERNAL_H | ||
| 22 | |||
| 23 | struct __pthread_rwlock_arch_t | ||
| 24 | { | ||
| 25 | unsigned int __readers; | ||
| 26 | unsigned int __writers; | ||
| 27 | unsigned int __wrphase_futex; | ||
| 28 | unsigned int __writers_futex; | ||
| 29 | unsigned int __pad3; | ||
| 30 | unsigned int __pad4; | ||
| 31 | #if __WORDSIZE == 64 | ||
| 32 | int __cur_writer; | ||
| 33 | int __shared; | ||
| 34 | unsigned char __rwelision; | ||
| 35 | unsigned char __pad1[7]; | ||
| 36 | unsigned long int __pad2; | ||
| 37 | /* FLAGS must stay at this position in the structure to maintain | ||
| 38 | binary compatibility. */ | ||
| 39 | unsigned int __flags; | ||
| 40 | # define __PTHREAD_RWLOCK_ELISION_EXTRA 0, {0, 0, 0, 0, 0, 0, 0 } | ||
| 41 | #else | ||
| 42 | unsigned char __rwelision; | ||
| 43 | unsigned char __pad2; | ||
| 44 | unsigned char __shared; | ||
| 45 | /* FLAGS must stay at this position in the structure to maintain | ||
| 46 | binary compatibility. */ | ||
| 47 | unsigned char __flags; | ||
| 48 | int __cur_writer; | ||
| 49 | # define __PTHREAD_RWLOCK_ELISION_EXTRA 0 | ||
| 50 | #endif | ||
| 51 | }; | ||
| 52 | |||
| 53 | #if __WORDSIZE == 64 | ||
| 54 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 55 | 0, 0, 0, 0, 0, 0, 0, 0, __PTHREAD_RWLOCK_ELISION_EXTRA, 0, __flags | ||
| 56 | #else | ||
| 57 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 58 | 0, 0, 0, 0, 0, 0, __PTHREAD_RWLOCK_ELISION_EXTRA, 0, 0, __flags, 0 | ||
| 59 | #endif | ||
| 60 | |||
| 61 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnu/bits/struct_stat.h created+231| ... | @@ -0,0 +1,231 @@ | ||
| 1 | /* Definition for struct stat. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #if !defined _SYS_STAT_H && !defined _FCNTL_H | ||
| 20 | # error "Never include <bits/struct_stat.h> directly; use <sys/stat.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef _BITS_STRUCT_STAT_H | ||
| 24 | #define _BITS_STRUCT_STAT_H	1 | ||
| 25 | |||
| 26 | #include <bits/wordsize.h> | ||
| 27 | |||
| 28 | #if __WORDSIZE == 32 | ||
| 29 | struct stat | ||
| 30 | { | ||
| 31 | # ifdef __USE_TIME64_REDIRECTS | ||
| 32 | # include <bits/struct_stat_time64_helper.h> | ||
| 33 | # else | ||
| 34 | __dev_t st_dev;			/* Device. */ | ||
| 35 | # ifndef __USE_FILE_OFFSET64 | ||
| 36 | unsigned short int __pad1; | ||
| 37 | __ino_t st_ino;			/* File serial number.	*/ | ||
| 38 | # else | ||
| 39 | __ino64_t st_ino;			/* File serial number.	*/ | ||
| 40 | # endif | ||
| 41 | __mode_t st_mode;			/* File mode. */ | ||
| 42 | __nlink_t st_nlink;			/* Link count. */ | ||
| 43 | __uid_t st_uid;			/* User ID of the file's owner.	*/ | ||
| 44 | __gid_t st_gid;			/* Group ID of the file's group.*/ | ||
| 45 | __dev_t st_rdev;			/* Device number, if device. */ | ||
| 46 | unsigned short int __pad2; | ||
| 47 | # ifndef __USE_FILE_OFFSET64 | ||
| 48 | __off_t st_size;			/* Size of file, in bytes. */ | ||
| 49 | # else | ||
| 50 | __off64_t st_size;			/* Size of file, in bytes. */ | ||
| 51 | # endif | ||
| 52 | __blksize_t st_blksize;		/* Optimal block size for I/O. */ | ||
| 53 | |||
| 54 | # ifndef __USE_FILE_OFFSET64 | ||
| 55 | __blkcnt_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 56 | # else | ||
| 57 | __blkcnt64_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 58 | # endif | ||
| 59 | # ifdef __USE_XOPEN2K8 | ||
| 60 | /* Nanosecond resolution timestamps are stored in a format | ||
| 61 | equivalent to 'struct timespec'. This is the type used | ||
| 62 | whenever possible but the Unix namespace rules do not allow the | ||
| 63 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 64 | Therefore we have to handle the use of this header in strictly | ||
| 65 | standard-compliant sources special. */ | ||
| 66 | struct timespec st_atim;		/* Time of last access. */ | ||
| 67 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 68 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 69 | # define st_atime st_atim.tv_sec	/* Backward compatibility. */ | ||
| 70 | # define st_mtime st_mtim.tv_sec | ||
| 71 | # define st_ctime st_ctim.tv_sec | ||
| 72 | # else | ||
| 73 | __time_t st_atime;			/* Time of last access. */ | ||
| 74 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 75 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 76 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 77 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 78 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 79 | # endif | ||
| 80 | unsigned long int __glibc_reserved4; | ||
| 81 | unsigned long int __glibc_reserved5; | ||
| 82 | # endif /* __USE_TIME64_REDIRECTS */ | ||
| 83 | }; | ||
| 84 | |||
| 85 | # ifdef __USE_LARGEFILE64 | ||
| 86 | struct stat64 | ||
| 87 | { | ||
| 88 | # ifdef __USE_TIME64_REDIRECTS | ||
| 89 | # include <bits/struct_stat_time64_helper.h> | ||
| 90 | # else | ||
| 91 | __dev_t st_dev;			/* Device. */ | ||
| 92 | __ino64_t st_ino;			/* File serial number.	*/ | ||
| 93 | __mode_t st_mode;			/* File mode. */ | ||
| 94 | __nlink_t st_nlink;			/* Link count. */ | ||
| 95 | __uid_t st_uid;			/* User ID of the file's owner.	*/ | ||
| 96 | __gid_t st_gid;			/* Group ID of the file's group.*/ | ||
| 97 | __dev_t st_rdev;			/* Device number, if device. */ | ||
| 98 | unsigned short int __pad2; | ||
| 99 | __off64_t st_size;			/* Size of file, in bytes. */ | ||
| 100 | __blksize_t st_blksize;		/* Optimal block size for I/O. */ | ||
| 101 | __blkcnt64_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 102 | # ifdef __USE_XOPEN2K8 | ||
| 103 | /* Nanosecond resolution timestamps are stored in a format | ||
| 104 | equivalent to 'struct timespec'. This is the type used | ||
| 105 | whenever possible but the Unix namespace rules do not allow the | ||
| 106 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 107 | Therefore we have to handle the use of this header in strictly | ||
| 108 | standard-compliant sources special. */ | ||
| 109 | struct timespec st_atim;		/* Time of last access. */ | ||
| 110 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 111 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 112 | # define st_atime st_atim.tv_sec	/* Backward compatibility. */ | ||
| 113 | # define st_mtime st_mtim.tv_sec | ||
| 114 | # define st_ctime st_ctim.tv_sec | ||
| 115 | # else | ||
| 116 | __time_t st_atime;			/* Time of last access. */ | ||
| 117 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 118 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 119 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 120 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 121 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 122 | # endif | ||
| 123 | unsigned long int __glibc_reserved4; | ||
| 124 | unsigned long int __glibc_reserved5; | ||
| 125 | # endif /* __USE_TIME64_REDIRECTS */ | ||
| 126 | }; | ||
| 127 | # endif /* __USE_LARGEFILE64 */ | ||
| 128 | |||
| 129 | #else /* __WORDSIZE == 32 */ | ||
| 130 | |||
| 131 | struct stat | ||
| 132 | { | ||
| 133 | __dev_t st_dev;			/* Device. */ | ||
| 134 | # ifndef __USE_FILE_OFFSET64 | ||
| 135 | __ino_t st_ino;			/* File serial number.	*/ | ||
| 136 | # else | ||
| 137 | __ino64_t st_ino;			/* File serial number.	*/ | ||
| 138 | # endif | ||
| 139 | __nlink_t st_nlink;			/* Link count. */ | ||
| 140 | __mode_t st_mode;			/* File mode. */ | ||
| 141 | __uid_t st_uid;			/* User ID of the file's owner.	*/ | ||
| 142 | __gid_t st_gid;			/* Group ID of the file's group.*/ | ||
| 143 | int __pad2; | ||
| 144 | __dev_t st_rdev;			/* Device number, if device. */ | ||
| 145 | # ifndef __USE_FILE_OFFSET64 | ||
| 146 | __off_t st_size;			/* Size of file, in bytes. */ | ||
| 147 | # else | ||
| 148 | __off64_t st_size;			/* Size of file, in bytes. */ | ||
| 149 | # endif | ||
| 150 | __blksize_t st_blksize;		/* Optimal block size for I/O. */ | ||
| 151 | |||
| 152 | # ifndef __USE_FILE_OFFSET64 | ||
| 153 | __blkcnt_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 154 | # else | ||
| 155 | __blkcnt64_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 156 | # endif | ||
| 157 | # ifdef __USE_XOPEN2K8 | ||
| 158 | /* Nanosecond resolution timestamps are stored in a format | ||
| 159 | equivalent to 'struct timespec'. This is the type used | ||
| 160 | whenever possible but the Unix namespace rules do not allow the | ||
| 161 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 162 | Therefore we have to handle the use of this header in strictly | ||
| 163 | standard-compliant sources special. */ | ||
| 164 | struct timespec st_atim;		/* Time of last access. */ | ||
| 165 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 166 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 167 | # define st_atime st_atim.tv_sec	/* Backward compatibility. */ | ||
| 168 | # define st_mtime st_mtim.tv_sec | ||
| 169 | # define st_ctime st_ctim.tv_sec | ||
| 170 | # else | ||
| 171 | __time_t st_atime;			/* Time of last access. */ | ||
| 172 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 173 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 174 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 175 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 176 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 177 | # endif | ||
| 178 | unsigned long int __glibc_reserved4; | ||
| 179 | unsigned long int __glibc_reserved5; | ||
| 180 | unsigned long int __glibc_reserved6; | ||
| 181 | }; | ||
| 182 | |||
| 183 | # ifdef __USE_LARGEFILE64 | ||
| 184 | struct stat64 | ||
| 185 | { | ||
| 186 | __dev_t st_dev;			/* Device. */ | ||
| 187 | __ino64_t st_ino;			/* File serial number.	*/ | ||
| 188 | __nlink_t st_nlink;			/* Link count. */ | ||
| 189 | __mode_t st_mode;			/* File mode. */ | ||
| 190 | __uid_t st_uid;			/* User ID of the file's owner.	*/ | ||
| 191 | __gid_t st_gid;			/* Group ID of the file's group.*/ | ||
| 192 | int __pad2; | ||
| 193 | __dev_t st_rdev;			/* Device number, if device. */ | ||
| 194 | __off64_t st_size;			/* Size of file, in bytes. */ | ||
| 195 | __blksize_t st_blksize;		/* Optimal block size for I/O. */ | ||
| 196 | __blkcnt64_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 197 | # ifdef __USE_XOPEN2K8 | ||
| 198 | /* Nanosecond resolution timestamps are stored in a format | ||
| 199 | equivalent to 'struct timespec'. This is the type used | ||
| 200 | whenever possible but the Unix namespace rules do not allow the | ||
| 201 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 202 | Therefore we have to handle the use of this header in strictly | ||
| 203 | standard-compliant sources special. */ | ||
| 204 | struct timespec st_atim;		/* Time of last access. */ | ||
| 205 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 206 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 207 | # define st_atime st_atim.tv_sec	/* Backward compatibility. */ | ||
| 208 | # define st_mtime st_mtim.tv_sec | ||
| 209 | # define st_ctime st_ctim.tv_sec | ||
| 210 | # else | ||
| 211 | __time_t st_atime;			/* Time of last access. */ | ||
| 212 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 213 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 214 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 215 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 216 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 217 | # endif | ||
| 218 | unsigned long int __glibc_reserved4; | ||
| 219 | unsigned long int __glibc_reserved5; | ||
| 220 | unsigned long int __glibc_reserved6; | ||
| 221 | }; | ||
| 222 | # endif /* __USE_LARGEFILE64 */ | ||
| 223 | #endif | ||
| 224 | |||
| 225 | /* Tell code we have these members. */ | ||
| 226 | #define	_STATBUF_ST_BLKSIZE | ||
| 227 | #define _STATBUF_ST_RDEV | ||
| 228 | /* Nanosecond resolution time values are supported. */ | ||
| 229 | #define _STATBUF_ST_NSEC | ||
| 230 | |||
| 231 | #endif /* _BITS_STRUCT_STAT_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnu/bits/termios-baud.h created+45| ... | @@ -0,0 +1,45 @@ | ||
| 1 | /* termios baud rate selection definitions. Linux/powerpc version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-baud.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifdef __USE_MISC | ||
| 24 | # define CBAUD	0000377 | ||
| 25 | # define CBAUDEX 0000020 | ||
| 26 | # define CMSPAR 010000000000		/* mark or space (stick) parity */ | ||
| 27 | # define CRTSCTS 020000000000		/* flow control */ | ||
| 28 | #endif | ||
| 29 | |||
| 30 | #define B57600 00020 | ||
| 31 | #define B115200 00021 | ||
| 32 | #define B230400 00022 | ||
| 33 | #define B460800 00023 | ||
| 34 | #define B500000 00024 | ||
| 35 | #define B576000 00025 | ||
| 36 | #define B921600 00026 | ||
| 37 | #define B1000000 00027 | ||
| 38 | #define B1152000 00030 | ||
| 39 | #define B1500000 00031 | ||
| 40 | #define B2000000 00032 | ||
| 41 | #define B2500000 00033 | ||
| 42 | #define B3000000 00034 | ||
| 43 | #define B3500000 00035 | ||
| 44 | #define B4000000 00036 | ||
| 45 | #define __MAX_BAUD B4000000 | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnu/bits/termios-c_cc.h created+41| ... | @@ -0,0 +1,41 @@ | ||
| 1 | /* termios c_cc symbolic constant definitions. Linux/powerpc version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-c_cc.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* c_cc characters */ | ||
| 24 | #define VINTR	0 | ||
| 25 | #define VQUIT	1 | ||
| 26 | #define VERASE	2 | ||
| 27 | #define VKILL	3 | ||
| 28 | #define VEOF	4 | ||
| 29 | #define VMIN	5 | ||
| 30 | #define VEOL	6 | ||
| 31 | #define VTIME	7 | ||
| 32 | #define VEOL2	8 | ||
| 33 | #define VSWTC	9 | ||
| 34 | |||
| 35 | #define VWERASE	10 | ||
| 36 | #define VREPRINT	11 | ||
| 37 | #define VSUSP		12 | ||
| 38 | #define VSTART		13 | ||
| 39 | #define VSTOP		14 | ||
| 40 | #define VLNEXT		15 | ||
| 41 | #define VDISCARD	16 | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnu/bits/termios-c_cflag.h created+39| ... | @@ -0,0 +1,39 @@ | ||
| 1 | /* termios control mode definitions. Linux/powerpc version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-c_cflag.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #define CSIZE	00001400 | ||
| 24 | #define CS5	00000000 | ||
| 25 | #define CS6	00000400 | ||
| 26 | #define CS7	00001000 | ||
| 27 | #define CS8	00001400 | ||
| 28 | |||
| 29 | #define CSTOPB	00002000 | ||
| 30 | #define CREAD	00004000 | ||
| 31 | #define PARENB	00010000 | ||
| 32 | #define PARODD	00020000 | ||
| 33 | #define HUPCL	00040000 | ||
| 34 | |||
| 35 | #define CLOCAL	00100000 | ||
| 36 | |||
| 37 | #ifdef __USE_MISC | ||
| 38 | # define ADDRB 04000000000 | ||
| 39 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnu/bits/termios-c_iflag.h created+38| ... | @@ -0,0 +1,38 @@ | ||
| 1 | /* termios input mode definitions. Linux/powerpc version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-c_iflags.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* c_iflag bits */ | ||
| 24 | #define IGNBRK	0000001 | ||
| 25 | #define BRKINT	0000002 | ||
| 26 | #define IGNPAR	0000004 | ||
| 27 | #define PARMRK	0000010 | ||
| 28 | #define INPCK	0000020 | ||
| 29 | #define ISTRIP	0000040 | ||
| 30 | #define INLCR	0000100 | ||
| 31 | #define IGNCR	0000200 | ||
| 32 | #define ICRNL	0000400 | ||
| 33 | #define IXON	0001000 | ||
| 34 | #define IXOFF	0002000 | ||
| 35 | #define IXANY	0004000 | ||
| 36 | #define IUCLC	0010000 | ||
| 37 | #define IMAXBEL	0020000 | ||
| 38 | #define IUTF8	0040000 | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnu/bits/termios-c_lflag.h created+45| ... | @@ -0,0 +1,45 @@ | ||
| 1 | /* termios local mode definitions. Linux/powerpc version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-c_lflag.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* c_lflag bits */ | ||
| 24 | #define ISIG	0x00000080 | ||
| 25 | #define ICANON	0x00000100 | ||
| 26 | #if defined __USE_MISC || (defined __USE_XOPEN && !defined __USE_XOPEN2K) | ||
| 27 | # define XCASE	0x00004000 | ||
| 28 | #endif | ||
| 29 | #define ECHO	0x00000008 | ||
| 30 | #define ECHOE	0x00000002 | ||
| 31 | #define ECHOK	0x00000004 | ||
| 32 | #define ECHONL	0x00000010 | ||
| 33 | #define NOFLSH	0x80000000 | ||
| 34 | #define TOSTOP	0x00400000 | ||
| 35 | #ifdef __USE_MISC | ||
| 36 | # define ECHOCTL	0x00000040 | ||
| 37 | # define ECHOPRT	0x00000020 | ||
| 38 | # define ECHOKE	0x00000001 | ||
| 39 | # define FLUSHO	0x00800000 | ||
| 40 | # define PENDIN	0x20000000 | ||
| 41 | #endif | ||
| 42 | #define IEXTEN	0x00000400 | ||
| 43 | #ifdef __USE_MISC | ||
| 44 | # define EXTPROC 0x10000000 | ||
| 45 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnu/bits/termios-c_oflag.h created+65| ... | @@ -0,0 +1,65 @@ | ||
| 1 | /* termios output mode definitions. Linux/powerpc version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-c_oflag.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* c_oflag bits */ | ||
| 24 | #define OPOST	0000001 | ||
| 25 | #define ONLCR	0000002 | ||
| 26 | #define OLCUC	0000004 | ||
| 27 | |||
| 28 | #define OCRNL	0000010 | ||
| 29 | #define ONOCR	0000020 | ||
| 30 | #define ONLRET	0000040 | ||
| 31 | |||
| 32 | #define OFILL	00000100 | ||
| 33 | #define OFDEL	00000200 | ||
| 34 | #if defined __USE_MISC || defined __USE_XOPEN | ||
| 35 | # define NLDLY	00001400 | ||
| 36 | # define NL0	00000000 | ||
| 37 | # define NL1	00000400 | ||
| 38 | # if defined __USE_MISC | ||
| 39 | # define NL2	00001000 | ||
| 40 | # define NL3	00001400 | ||
| 41 | # endif | ||
| 42 | # define TABDLY	00006000 | ||
| 43 | # define TAB0	00000000 | ||
| 44 | # define TAB1	00002000 | ||
| 45 | # define TAB2	00004000 | ||
| 46 | # define TAB3	00006000 | ||
| 47 | # define CRDLY	00030000 | ||
| 48 | # define CR0	00000000 | ||
| 49 | # define CR1	00010000 | ||
| 50 | # define CR2	00020000 | ||
| 51 | # define CR3	00030000 | ||
| 52 | # define FFDLY	00040000 | ||
| 53 | # define FF0	00000000 | ||
| 54 | # define FF1	00040000 | ||
| 55 | # define BSDLY	00100000 | ||
| 56 | # define BS0	00000000 | ||
| 57 | # define BS1	00100000 | ||
| 58 | #endif | ||
| 59 | #define VTDLY	00200000 | ||
| 60 | #define VT0	00000000 | ||
| 61 | #define VT1	00200000 | ||
| 62 | |||
| 63 | #ifdef __USE_MISC | ||
| 64 | # define XTABS	00006000 | ||
| 65 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnu/bits/termios-misc.h created+72| ... | @@ -0,0 +1,72 @@ | ||
| 1 | /* termios baud platform specific definitions. Linux/powerpc version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-misc.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifdef __USE_MISC | ||
| 24 | |||
| 25 | struct sgttyb { | ||
| 26 | 	char	sg_ispeed; | ||
| 27 | 	char	sg_ospeed; | ||
| 28 | 	char	sg_erase; | ||
| 29 | 	char	sg_kill; | ||
| 30 | 	short	sg_flags; | ||
| 31 | }; | ||
| 32 | |||
| 33 | struct tchars { | ||
| 34 | 	char	t_intrc; | ||
| 35 | 	char	t_quitc; | ||
| 36 | 	char	t_startc; | ||
| 37 | 	char	t_stopc; | ||
| 38 | 	char	t_eofc; | ||
| 39 | 	char	t_brkc; | ||
| 40 | }; | ||
| 41 | |||
| 42 | struct ltchars { | ||
| 43 | 	char	t_suspc; | ||
| 44 | 	char	t_dsuspc; | ||
| 45 | 	char	t_rprntc; | ||
| 46 | 	char	t_flushc; | ||
| 47 | 	char	t_werasc; | ||
| 48 | 	char	t_lnextc; | ||
| 49 | }; | ||
| 50 | |||
| 51 | /* Used for packet mode */ | ||
| 52 | #define TIOCPKT_DATA		 0 | ||
| 53 | #define TIOCPKT_FLUSHREAD	 1 | ||
| 54 | #define TIOCPKT_FLUSHWRITE	 2 | ||
| 55 | #define TIOCPKT_STOP		 4 | ||
| 56 | #define TIOCPKT_START		 8 | ||
| 57 | #define TIOCPKT_NOSTOP		16 | ||
| 58 | #define TIOCPKT_DOSTOP		32 | ||
| 59 | |||
| 60 | /* c_cc characters */ | ||
| 61 | #define _VINTR	0 | ||
| 62 | #define _VQUIT	1 | ||
| 63 | #define _VERASE	2 | ||
| 64 | #define _VKILL	3 | ||
| 65 | #define _VEOF	4 | ||
| 66 | #define _VMIN	5 | ||
| 67 | #define _VEOL	6 | ||
| 68 | #define _VTIME	7 | ||
| 69 | #define _VEOL2	8 | ||
| 70 | #define _VSWTC	9 | ||
| 71 | |||
| 72 | #endif /* __USE_MISC */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnu/bits/timesize.h created+22| ... | @@ -0,0 +1,22 @@ | ||
| 1 | /* Bit size of the time_t type at glibc build time, Linux/PowerPC. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #include <bits/wordsize.h> | ||
| 20 | |||
| 21 | /* Size in bits of the 'time_t' type of the default ABI. */ | ||
| 22 | #define __TIMESIZE	__WORDSIZE | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnu/bits/types/struct_msqid_ds.h created+53| ... | @@ -0,0 +1,53 @@ | ||
| 1 | /* Linux/PowerPC implementation of the SysV message struct msqid_ds. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_MSG_H | ||
| 20 | # error "Never use <bits/msq.h> directly; include <sys/msg.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <bits/types/time_t.h> | ||
| 24 | |||
| 25 | /* Structure of record for one message inside the kernel. | ||
| 26 | The type `struct msg' is opaque. */ | ||
| 27 | struct msqid_ds | ||
| 28 | { | ||
| 29 | #ifdef __USE_TIME64_REDIRECTS | ||
| 30 | # include <bits/types/struct_msqid64_ds_helper.h> | ||
| 31 | #else | ||
| 32 | struct ipc_perm msg_perm;	/* structure describing operation permission */ | ||
| 33 | # if __TIMESIZE == 32 | ||
| 34 | unsigned long int __msg_stime_high; | ||
| 35 | __time_t msg_stime;		/* time of last msgsnd command */ | ||
| 36 | unsigned long int __msg_rtime_high; | ||
| 37 | __time_t msg_rtime;		/* time of last msgsnd command */ | ||
| 38 | unsigned long int __msg_ctime_high; | ||
| 39 | __time_t msg_ctime;		/* time of last change */ | ||
| 40 | # else | ||
| 41 | __time_t msg_stime;		/* time of last msgsnd command */ | ||
| 42 | __time_t msg_rtime;		/* time of last msgsnd command */ | ||
| 43 | __time_t msg_ctime;		/* time of last change */ | ||
| 44 | # endif | ||
| 45 | __syscall_ulong_t __msg_cbytes; /* current number of bytes on queue */ | ||
| 46 | msgqnum_t msg_qnum;		/* number of messages currently on queue */ | ||
| 47 | msglen_t msg_qbytes;		/* max number of bytes allowed on queue */ | ||
| 48 | __pid_t msg_lspid;		/* pid of last msgsnd() */ | ||
| 49 | __pid_t msg_lrpid;		/* pid of last msgrcv() */ | ||
| 50 | __syscall_ulong_t __glibc_reserved4; | ||
| 51 | __syscall_ulong_t __glibc_reserved5; | ||
| 52 | #endif | ||
| 53 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnu/bits/types/struct_semid_ds.h created+43| ... | @@ -0,0 +1,43 @@ | ||
| 1 | /* PowerPC implementation of the semaphore struct semid_ds. | ||
| 2 | Copyright (C) 1995-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SEM_H | ||
| 20 | # error "Never include <bits/types/struct_semid_ds.h> directly; use <sys/sem.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Data structure describing a set of semaphores. */ | ||
| 24 | struct semid_ds | ||
| 25 | { | ||
| 26 | #ifdef __USE_TIME64_REDIRECTS | ||
| 27 | # include <bits/types/struct_semid64_ds_helper.h> | ||
| 28 | #else | ||
| 29 | struct ipc_perm sem_perm; /* operation permission struct */ | ||
| 30 | # if __TIMESIZE == 32 | ||
| 31 | __syscall_ulong_t __sem_otime_high; | ||
| 32 | __time_t sem_otime; /* last semop() time */ | ||
| 33 | __syscall_ulong_t __sem_ctime_high; | ||
| 34 | __time_t sem_ctime; /* last time changed by semctl() */ | ||
| 35 | # else | ||
| 36 | __time_t sem_otime; /* last semop() time */ | ||
| 37 | __time_t sem_ctime; /* last time changed by semctl() */ | ||
| 38 | # endif | ||
| 39 | __syscall_ulong_t sem_nsems; /* number of semaphores in set */ | ||
| 40 | __syscall_ulong_t __glibc_reserved3; | ||
| 41 | __syscall_ulong_t __glibc_reserved4; | ||
| 42 | #endif | ||
| 43 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnu/bits/types/struct_shmid_ds.h created+50| ... | @@ -0,0 +1,50 @@ | ||
| 1 | /* Linux/PowerPC implementation of the shared memory struct shmid_ds. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SHM_H | ||
| 20 | # error "Never include <bits/types/struct_shmid_ds.h> directly; use <sys/shm.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Data structure describing a shared memory segment. */ | ||
| 24 | struct shmid_ds | ||
| 25 | { | ||
| 26 | #ifdef __USE_TIME64_REDIRECTS | ||
| 27 | # include <bits/types/struct_shmid64_ds_helper.h> | ||
| 28 | #else | ||
| 29 | struct ipc_perm shm_perm;		/* operation permission struct */ | ||
| 30 | # if __TIMESIZE == 32 | ||
| 31 | unsigned long int __shm_atime_high; | ||
| 32 | __time_t shm_atime;			/* time of last shmat() */ | ||
| 33 | unsigned long int __shm_dtime_high; | ||
| 34 | __time_t shm_dtime;			/* time of last shmdt() */ | ||
| 35 | unsigned long int __shm_ctime_high; | ||
| 36 | __time_t shm_ctime;			/* time of last change by shmctl() */ | ||
| 37 | unsigned long int __glibc_reserved4; | ||
| 38 | # else | ||
| 39 | __time_t shm_atime;			/* time of last shmat() */ | ||
| 40 | __time_t shm_dtime;			/* time of last shmdt() */ | ||
| 41 | __time_t shm_ctime;			/* time of last change by shmctl() */ | ||
| 42 | # endif | ||
| 43 | size_t shm_segsz;			/* size of segment in bytes */ | ||
| 44 | __pid_t shm_cpid;			/* pid of creator */ | ||
| 45 | __pid_t shm_lpid;			/* pid of last shmop */ | ||
| 46 | shmatt_t shm_nattch;		/* number of current attaches */ | ||
| 47 | __syscall_ulong_t __glibc_reserved5; | ||
| 48 | __syscall_ulong_t __glibc_reserved6; | ||
| 49 | #endif | ||
| 50 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnu/bits/typesizes.h created+95| ... | @@ -0,0 +1,95 @@ | ||
| 1 | /* bits/typesizes.h -- underlying types for *_t. PowerPC version. | ||
| 2 | Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_TYPES_H | ||
| 20 | # error "Never include <bits/typesizes.h> directly; use <sys/types.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef	_BITS_TYPESIZES_H | ||
| 24 | #define	_BITS_TYPESIZES_H	1 | ||
| 25 | |||
| 26 | /* See <bits/types.h> for the meaning of these macros. This file exists so | ||
| 27 | that <bits/types.h> need not vary across different GNU platforms. */ | ||
| 28 | |||
| 29 | #define __DEV_T_TYPE		__UQUAD_TYPE | ||
| 30 | #define __UID_T_TYPE		__U32_TYPE | ||
| 31 | #define __GID_T_TYPE		__U32_TYPE | ||
| 32 | #define __INO_T_TYPE		__ULONGWORD_TYPE | ||
| 33 | #define __INO64_T_TYPE		__UQUAD_TYPE | ||
| 34 | #define __MODE_T_TYPE		__U32_TYPE | ||
| 35 | #define __NLINK_T_TYPE		__UWORD_TYPE | ||
| 36 | #define __OFF_T_TYPE		__SLONGWORD_TYPE | ||
| 37 | #define __OFF64_T_TYPE		__SQUAD_TYPE | ||
| 38 | #define __PID_T_TYPE		__S32_TYPE | ||
| 39 | #define __RLIM_T_TYPE		__ULONGWORD_TYPE | ||
| 40 | #define __RLIM64_T_TYPE		__UQUAD_TYPE | ||
| 41 | #define	__BLKCNT_T_TYPE		__SLONGWORD_TYPE | ||
| 42 | #define	__BLKCNT64_T_TYPE	__SQUAD_TYPE | ||
| 43 | #define	__FSBLKCNT_T_TYPE	__ULONGWORD_TYPE | ||
| 44 | #define	__FSBLKCNT64_T_TYPE	__UQUAD_TYPE | ||
| 45 | #define	__FSFILCNT_T_TYPE	__ULONGWORD_TYPE | ||
| 46 | #define	__FSFILCNT64_T_TYPE	__UQUAD_TYPE | ||
| 47 | #define	__FSWORD_T_TYPE		__SWORD_TYPE | ||
| 48 | #define	__ID_T_TYPE		__U32_TYPE | ||
| 49 | #define __CLOCK_T_TYPE		__SLONGWORD_TYPE | ||
| 50 | #define __TIME_T_TYPE		__SLONGWORD_TYPE | ||
| 51 | #define __USECONDS_T_TYPE	__U32_TYPE | ||
| 52 | #define __SUSECONDS_T_TYPE	__SLONGWORD_TYPE | ||
| 53 | #define __SUSECONDS64_T_TYPE	__SQUAD_TYPE | ||
| 54 | #define __DADDR_T_TYPE		__S32_TYPE | ||
| 55 | #define __KEY_T_TYPE		__S32_TYPE | ||
| 56 | #define __CLOCKID_T_TYPE	__S32_TYPE | ||
| 57 | #define __TIMER_T_TYPE		void * | ||
| 58 | #define __BLKSIZE_T_TYPE	__SLONGWORD_TYPE | ||
| 59 | #define __FSID_T_TYPE		struct { int __val[2]; } | ||
| 60 | #define __SSIZE_T_TYPE		__SWORD_TYPE | ||
| 61 | #define __SYSCALL_SLONG_TYPE	__SLONGWORD_TYPE | ||
| 62 | #define __SYSCALL_ULONG_TYPE	__ULONGWORD_TYPE | ||
| 63 | #define __CPU_MASK_TYPE 	__ULONGWORD_TYPE | ||
| 64 | |||
| 65 | #ifdef __LP64__ | ||
| 66 | /* Tell the libc code that off_t and off64_t are actually the same type | ||
| 67 | for all ABI purposes, even if possibly expressed as different base types | ||
| 68 | for C type-checking purposes. */ | ||
| 69 | # define __OFF_T_MATCHES_OFF64_T	1 | ||
| 70 | |||
| 71 | /* Same for ino_t and ino64_t. */ | ||
| 72 | # define __INO_T_MATCHES_INO64_T	1 | ||
| 73 | |||
| 74 | /* And for rlim_t and rlim64_t. */ | ||
| 75 | # define __RLIM_T_MATCHES_RLIM64_T	1 | ||
| 76 | |||
| 77 | /* And for fsblkcnt_t, fsblkcnt64_t, fsfilcnt_t and fsfilcnt64_t. */ | ||
| 78 | # define __STATFS_MATCHES_STATFS64 1 | ||
| 79 | |||
| 80 | /* And for getitimer, setitimer and rusage */ | ||
| 81 | # define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 1 | ||
| 82 | #else | ||
| 83 | # define __RLIM_T_MATCHES_RLIM64_T	0 | ||
| 84 | |||
| 85 | # define __STATFS_MATCHES_STATFS64 0 | ||
| 86 | |||
| 87 | /* And for getitimer, setitimer and rusage */ | ||
| 88 | # define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 0 | ||
| 89 | #endif | ||
| 90 | |||
| 91 | /* Number of descriptors that can fit in an `fd_set'. */ | ||
| 92 | #define	__FD_SETSIZE		1024 | ||
| 93 | |||
| 94 | |||
| 95 | #endif /* bits/typesizes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnu/bits/wordsize.h created+10| ... | @@ -0,0 +1,10 @@ | ||
| 1 | /* Determine the wordsize from the preprocessor defines. */ | ||
| 2 | |||
| 3 | #if defined __powerpc64__ | ||
| 4 | # define __WORDSIZE	64 | ||
| 5 | #else | ||
| 6 | # define __WORDSIZE	32 | ||
| 7 | # define __WORDSIZE32_SIZE_ULONG	0 | ||
| 8 | # define __WORDSIZE32_PTRDIFF_LONG	0 | ||
| 9 | #endif | ||
| 10 | #define __WORDSIZE_TIME64_COMPAT32	1 | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnu/fpu_control.h created+114| ... | @@ -0,0 +1,114 @@ | ||
| 1 | /* FPU control word definitions. PowerPC version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _FPU_CONTROL_H | ||
| 20 | #define _FPU_CONTROL_H | ||
| 21 | |||
| 22 | #if defined __SPE__ || (defined __NO_FPRS__ && !defined _SOFT_FLOAT) | ||
| 23 | # error "SPE/e500 is no longer supported" | ||
| 24 | #endif | ||
| 25 | |||
| 26 | #ifdef _SOFT_FLOAT | ||
| 27 | |||
| 28 | # define _FPU_RESERVED 0xffffffff | ||
| 29 | # define _FPU_DEFAULT 0x00000000 /* Default value. */ | ||
| 30 | typedef unsigned int fpu_control_t; | ||
| 31 | # define _FPU_GETCW(cw) (cw) = 0 | ||
| 32 | # define _FPU_SETCW(cw) (void) (cw) | ||
| 33 | extern fpu_control_t __fpu_control; | ||
| 34 | |||
| 35 | #else /* PowerPC 6xx floating-point. */ | ||
| 36 | |||
| 37 | /* rounding control */ | ||
| 38 | # define _FPU_RC_NEAREST 0x00 /* RECOMMENDED */ | ||
| 39 | # define _FPU_RC_DOWN 0x03 | ||
| 40 | # define _FPU_RC_UP 0x02 | ||
| 41 | # define _FPU_RC_ZERO 0x01 | ||
| 42 | |||
| 43 | # define _FPU_MASK_RC (_FPU_RC_NEAREST|_FPU_RC_DOWN|_FPU_RC_UP|_FPU_RC_ZERO) | ||
| 44 | |||
| 45 | # define _FPU_MASK_NI 0x04 /* non-ieee mode */ | ||
| 46 | |||
| 47 | /* masking of interrupts */ | ||
| 48 | # define _FPU_MASK_ZM 0x10 /* zero divide */ | ||
| 49 | # define _FPU_MASK_OM 0x40 /* overflow */ | ||
| 50 | # define _FPU_MASK_UM 0x20 /* underflow */ | ||
| 51 | # define _FPU_MASK_XM 0x08 /* inexact */ | ||
| 52 | # define _FPU_MASK_IM 0x80 /* invalid operation */ | ||
| 53 | |||
| 54 | # define _FPU_RESERVED 0xffffff00 /* These bits are reserved are not changed. */ | ||
| 55 | |||
| 56 | /* The fdlibm code requires no interrupts for exceptions. */ | ||
| 57 | # define _FPU_DEFAULT 0x00000000 /* Default value. */ | ||
| 58 | |||
| 59 | /* IEEE: same as above, but (some) exceptions; | ||
| 60 | we leave the 'inexact' exception off. | ||
| 61 | */ | ||
| 62 | # define _FPU_IEEE 0x000000f0 | ||
| 63 | |||
| 64 | /* Type of the control word. */ | ||
| 65 | typedef unsigned int fpu_control_t; | ||
| 66 | |||
| 67 | /* Macros for accessing the hardware control word. */ | ||
| 68 | # define _FPU_GETCW(cw)						\ | ||
| 69 | ({union { double __d; unsigned long long __ll; } __u;		\ | ||
| 70 | __asm__ __volatile__("mffs %0" : "=f" (__u.__d));		\ | ||
| 71 | (cw) = (fpu_control_t) __u.__ll;				\ | ||
| 72 | (fpu_control_t) __u.__ll;					\ | ||
| 73 | }) | ||
| 74 | |||
| 75 | # define _FPU_GET_RC_ISA300()						\ | ||
| 76 | ({union { double __d; unsigned long long __ll; } __u;			\ | ||
| 77 | __asm__ __volatile__(						\ | ||
| 78 | ".machine push; .machine \"power9\"; mffsl %0; .machine pop" 	\ | ||
| 79 | : "=f" (__u.__d));						\ | ||
| 80 | (fpu_control_t) (__u.__ll & _FPU_MASK_RC);				\ | ||
| 81 | }) | ||
| 82 | |||
| 83 | # ifdef _ARCH_PWR9 | ||
| 84 | # define _FPU_GET_RC() _FPU_GET_RC_ISA300() | ||
| 85 | # elif defined __BUILTIN_CPU_SUPPORTS__ | ||
| 86 | # define _FPU_GET_RC()							\ | ||
| 87 | ({fpu_control_t __rc;							\ | ||
| 88 | __rc = __glibc_likely (__builtin_cpu_supports ("arch_3_00"))	\ | ||
| 89 | ? _FPU_GET_RC_ISA300 ()						\ | ||
| 90 | : _FPU_GETCW (__rc) & _FPU_MASK_RC;				\ | ||
| 91 | __rc;								\ | ||
| 92 | }) | ||
| 93 | # else | ||
| 94 | # define _FPU_GET_RC()						\ | ||
| 95 | ({fpu_control_t __rc = _FPU_GETCW (__rc) & _FPU_MASK_RC;	\ | ||
| 96 | __rc;							\ | ||
| 97 | }) | ||
| 98 | # endif | ||
| 99 | |||
| 100 | # define _FPU_SETCW(cw)						\ | ||
| 101 | { union { double __d; unsigned long long __ll; } __u;		\ | ||
| 102 | register double __fr;					\ | ||
| 103 | __u.__ll = 0xfff80000LL << 32; /* This is a QNaN. */	\ | ||
| 104 | __u.__ll |= (cw) & 0xffffffffLL;				\ | ||
| 105 | __fr = __u.__d;						\ | ||
| 106 | __asm__ __volatile__("mtfsf 255,%0" : : "f" (__fr));	\ | ||
| 107 | } | ||
| 108 | |||
| 109 | /* Default control word set at startup. */ | ||
| 110 | extern fpu_control_t __fpu_control; | ||
| 111 | |||
| 112 | #endif /* PowerPC 6xx floating-point. */ | ||
| 113 | |||
| 114 | #endif /* _FPU_CONTROL_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnu/gnu/lib-names-32.h created+26| ... | @@ -0,0 +1,26 @@ | ||
| 1 | /* This file is automatically generated. */ | ||
| 2 | #ifndef __GNU_LIB_NAMES_H | ||
| 3 | # error "Never use <gnu/lib-names-32.h> directly; include <gnu/lib-names.h> instead." | ||
| 4 | #endif | ||
| 5 | |||
| 6 | #define LD_SO "ld.so.1" | ||
| 7 | #define LIBANL_SO "libanl.so.1" | ||
| 8 | #define LIBBROKENLOCALE_SO "libBrokenLocale.so.1" | ||
| 9 | #define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0" | ||
| 10 | #define LIBC_SO "libc.so.6" | ||
| 11 | #define LIBDL_SO "libdl.so.2" | ||
| 12 | #define LIBGCC_S_SO "libgcc_s.so.1" | ||
| 13 | #define LIBMVEC_SO "libmvec.so.1" | ||
| 14 | #define LIBM_SO "libm.so.6" | ||
| 15 | #define LIBNSL_SO "libnsl.so.1" | ||
| 16 | #define LIBNSS_COMPAT_SO "libnss_compat.so.2" | ||
| 17 | #define LIBNSS_DB_SO "libnss_db.so.2" | ||
| 18 | #define LIBNSS_DNS_SO "libnss_dns.so.2" | ||
| 19 | #define LIBNSS_FILES_SO "libnss_files.so.2" | ||
| 20 | #define LIBNSS_HESIOD_SO "libnss_hesiod.so.2" | ||
| 21 | #define LIBNSS_LDAP_SO "libnss_ldap.so.2" | ||
| 22 | #define LIBPTHREAD_SO "libpthread.so.0" | ||
| 23 | #define LIBRESOLV_SO "libresolv.so.2" | ||
| 24 | #define LIBRT_SO "librt.so.1" | ||
| 25 | #define LIBTHREAD_DB_SO "libthread_db.so.1" | ||
| 26 | #define LIBUTIL_SO "libutil.so.1" | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnu/gnu/lib-names-64-v1.h created+27| ... | @@ -0,0 +1,27 @@ | ||
| 1 | /* This file is automatically generated. */ | ||
| 2 | #ifndef __GNU_LIB_NAMES_H | ||
| 3 | # error "Never use <gnu/lib-names-64-v1.h> directly; include <gnu/lib-names.h> instead." | ||
| 4 | #endif | ||
| 5 | |||
| 6 | #define LD64_SO "ld64.so.1" | ||
| 7 | #define LD_SO "ld64.so.1" | ||
| 8 | #define LIBANL_SO "libanl.so.1" | ||
| 9 | #define LIBBROKENLOCALE_SO "libBrokenLocale.so.1" | ||
| 10 | #define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0" | ||
| 11 | #define LIBC_SO "libc.so.6" | ||
| 12 | #define LIBDL_SO "libdl.so.2" | ||
| 13 | #define LIBGCC_S_SO "libgcc_s.so.1" | ||
| 14 | #define LIBMVEC_SO "libmvec.so.1" | ||
| 15 | #define LIBM_SO "libm.so.6" | ||
| 16 | #define LIBNSL_SO "libnsl.so.1" | ||
| 17 | #define LIBNSS_COMPAT_SO "libnss_compat.so.2" | ||
| 18 | #define LIBNSS_DB_SO "libnss_db.so.2" | ||
| 19 | #define LIBNSS_DNS_SO "libnss_dns.so.2" | ||
| 20 | #define LIBNSS_FILES_SO "libnss_files.so.2" | ||
| 21 | #define LIBNSS_HESIOD_SO "libnss_hesiod.so.2" | ||
| 22 | #define LIBNSS_LDAP_SO "libnss_ldap.so.2" | ||
| 23 | #define LIBPTHREAD_SO "libpthread.so.0" | ||
| 24 | #define LIBRESOLV_SO "libresolv.so.2" | ||
| 25 | #define LIBRT_SO "librt.so.1" | ||
| 26 | #define LIBTHREAD_DB_SO "libthread_db.so.1" | ||
| 27 | #define LIBUTIL_SO "libutil.so.1" | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnu/gnu/lib-names-64-v2.h created+27| ... | @@ -0,0 +1,27 @@ | ||
| 1 | /* This file is automatically generated. */ | ||
| 2 | #ifndef __GNU_LIB_NAMES_H | ||
| 3 | # error "Never use <gnu/lib-names-64-v2.h> directly; include <gnu/lib-names.h> instead." | ||
| 4 | #endif | ||
| 5 | |||
| 6 | #define LD64_SO "ld64.so.2" | ||
| 7 | #define LD_SO "ld64.so.2" | ||
| 8 | #define LIBANL_SO "libanl.so.1" | ||
| 9 | #define LIBBROKENLOCALE_SO "libBrokenLocale.so.1" | ||
| 10 | #define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0" | ||
| 11 | #define LIBC_SO "libc.so.6" | ||
| 12 | #define LIBDL_SO "libdl.so.2" | ||
| 13 | #define LIBGCC_S_SO "libgcc_s.so.1" | ||
| 14 | #define LIBMVEC_SO "libmvec.so.1" | ||
| 15 | #define LIBM_SO "libm.so.6" | ||
| 16 | #define LIBNSL_SO "libnsl.so.1" | ||
| 17 | #define LIBNSS_COMPAT_SO "libnss_compat.so.2" | ||
| 18 | #define LIBNSS_DB_SO "libnss_db.so.2" | ||
| 19 | #define LIBNSS_DNS_SO "libnss_dns.so.2" | ||
| 20 | #define LIBNSS_FILES_SO "libnss_files.so.2" | ||
| 21 | #define LIBNSS_HESIOD_SO "libnss_hesiod.so.2" | ||
| 22 | #define LIBNSS_LDAP_SO "libnss_ldap.so.2" | ||
| 23 | #define LIBPTHREAD_SO "libpthread.so.0" | ||
| 24 | #define LIBRESOLV_SO "libresolv.so.2" | ||
| 25 | #define LIBRT_SO "librt.so.1" | ||
| 26 | #define LIBTHREAD_DB_SO "libthread_db.so.1" | ||
| 27 | #define LIBUTIL_SO "libutil.so.1" | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnu/gnu/lib-names.h created+19| ... | @@ -0,0 +1,19 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | It defines macros to allow user program to find the shared | ||
| 3 | library files which come as part of GNU libc. */ | ||
| 4 | #ifndef __GNU_LIB_NAMES_H | ||
| 5 | #define __GNU_LIB_NAMES_H	1 | ||
| 6 | |||
| 7 | #include <bits/wordsize.h> | ||
| 8 | |||
| 9 | #if __WORDSIZE == 32 | ||
| 10 | # include <gnu/lib-names-32.h> | ||
| 11 | #endif | ||
| 12 | #if __WORDSIZE == 64 && _CALL_ELF != 2 | ||
| 13 | # include <gnu/lib-names-64-v1.h> | ||
| 14 | #endif | ||
| 15 | #if __WORDSIZE == 64 && _CALL_ELF == 2 | ||
| 16 | # include <gnu/lib-names-64-v2.h> | ||
| 17 | #endif | ||
| 18 | |||
| 19 | #endif	/* gnu/lib-names.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnu/gnu/stubs-64-v1.h created+16| ... | @@ -0,0 +1,16 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | It defines a symbol `__stub_FUNCTION' for each function | ||
| 3 | in the C library which is a stub, meaning it will fail | ||
| 4 | every time called, usually setting errno to ENOSYS. */ | ||
| 5 | |||
| 6 | #ifdef _LIBC | ||
| 7 | #error Applications may not define the macro _LIBC | ||
| 8 | #endif | ||
| 9 | |||
| 10 | #define __stub_chflags | ||
| 11 | #define __stub_fchflags | ||
| 12 | #define __stub_gtty | ||
| 13 | #define __stub_revoke | ||
| 14 | #define __stub_setlogin | ||
| 15 | #define __stub_sigreturn | ||
| 16 | #define __stub_stty | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnu/gnu/stubs-64-v2.h created+16| ... | @@ -0,0 +1,16 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | It defines a symbol `__stub_FUNCTION' for each function | ||
| 3 | in the C library which is a stub, meaning it will fail | ||
| 4 | every time called, usually setting errno to ENOSYS. */ | ||
| 5 | |||
| 6 | #ifdef _LIBC | ||
| 7 | #error Applications may not define the macro _LIBC | ||
| 8 | #endif | ||
| 9 | |||
| 10 | #define __stub_chflags | ||
| 11 | #define __stub_fchflags | ||
| 12 | #define __stub_gtty | ||
| 13 | #define __stub_revoke | ||
| 14 | #define __stub_setlogin | ||
| 15 | #define __stub_sigreturn | ||
| 16 | #define __stub_stty | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnu/gnu/stubs.h created+15| ... | @@ -0,0 +1,15 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | This file selects the right generated file of `__stub_FUNCTION' macros | ||
| 3 | based on the architecture being compiled for. */ | ||
| 4 | |||
| 5 | #include <bits/wordsize.h> | ||
| 6 | |||
| 7 | #if __WORDSIZE == 32 | ||
| 8 | # include <gnu/stubs-32.h> | ||
| 9 | #endif | ||
| 10 | #if __WORDSIZE == 64 && _CALL_ELF != 2 | ||
| 11 | # include <gnu/stubs-64-v1.h> | ||
| 12 | #endif | ||
| 13 | #if __WORDSIZE == 64 && _CALL_ELF == 2 | ||
| 14 | # include <gnu/stubs-64-v2.h> | ||
| 15 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnu/ieee754.h created+197| ... | @@ -0,0 +1,197 @@ | ||
| 1 | /* Copyright (C) 1992-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _IEEE754_H | ||
| 19 | #define _IEEE754_H 1 | ||
| 20 | |||
| 21 | #include <features.h> | ||
| 22 | |||
| 23 | #include <bits/endian.h> | ||
| 24 | #include <bits/floatn.h> | ||
| 25 | |||
| 26 | __BEGIN_DECLS | ||
| 27 | |||
| 28 | union ieee754_float | ||
| 29 | { | ||
| 30 | float f; | ||
| 31 | |||
| 32 | /* This is the IEEE 754 single-precision format. */ | ||
| 33 | struct | ||
| 34 | { | ||
| 35 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 36 | 	unsigned int negative:1; | ||
| 37 | 	unsigned int exponent:8; | ||
| 38 | 	unsigned int mantissa:23; | ||
| 39 | #endif				/* Big endian. */ | ||
| 40 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 41 | 	unsigned int mantissa:23; | ||
| 42 | 	unsigned int exponent:8; | ||
| 43 | 	unsigned int negative:1; | ||
| 44 | #endif				/* Little endian. */ | ||
| 45 | } ieee; | ||
| 46 | |||
| 47 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 48 | struct | ||
| 49 | { | ||
| 50 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 51 | 	unsigned int negative:1; | ||
| 52 | 	unsigned int exponent:8; | ||
| 53 | 	unsigned int quiet_nan:1; | ||
| 54 | 	unsigned int mantissa:22; | ||
| 55 | #endif				/* Big endian. */ | ||
| 56 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 57 | 	unsigned int mantissa:22; | ||
| 58 | 	unsigned int quiet_nan:1; | ||
| 59 | 	unsigned int exponent:8; | ||
| 60 | 	unsigned int negative:1; | ||
| 61 | #endif				/* Little endian. */ | ||
| 62 | } ieee_nan; | ||
| 63 | }; | ||
| 64 | |||
| 65 | #define IEEE754_FLOAT_BIAS	0x7f /* Added to exponent. */ | ||
| 66 | |||
| 67 | |||
| 68 | union ieee754_double | ||
| 69 | { | ||
| 70 | double d; | ||
| 71 | |||
| 72 | /* This is the IEEE 754 double-precision format. */ | ||
| 73 | struct | ||
| 74 | { | ||
| 75 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 76 | 	unsigned int negative:1; | ||
| 77 | 	unsigned int exponent:11; | ||
| 78 | 	/* Together these comprise the mantissa. */ | ||
| 79 | 	unsigned int mantissa0:20; | ||
| 80 | 	unsigned int mantissa1:32; | ||
| 81 | #endif				/* Big endian. */ | ||
| 82 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 83 | 	/* Together these comprise the mantissa. */ | ||
| 84 | 	unsigned int mantissa1:32; | ||
| 85 | 	unsigned int mantissa0:20; | ||
| 86 | 	unsigned int exponent:11; | ||
| 87 | 	unsigned int negative:1; | ||
| 88 | #endif				/* Little endian. */ | ||
| 89 | } ieee; | ||
| 90 | |||
| 91 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 92 | struct | ||
| 93 | { | ||
| 94 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 95 | 	unsigned int negative:1; | ||
| 96 | 	unsigned int exponent:11; | ||
| 97 | 	unsigned int quiet_nan:1; | ||
| 98 | 	/* Together these comprise the mantissa. */ | ||
| 99 | 	unsigned int mantissa0:19; | ||
| 100 | 	unsigned int mantissa1:32; | ||
| 101 | #else | ||
| 102 | 	/* Together these comprise the mantissa. */ | ||
| 103 | 	unsigned int mantissa1:32; | ||
| 104 | 	unsigned int mantissa0:19; | ||
| 105 | 	unsigned int quiet_nan:1; | ||
| 106 | 	unsigned int exponent:11; | ||
| 107 | 	unsigned int negative:1; | ||
| 108 | #endif | ||
| 109 | } ieee_nan; | ||
| 110 | }; | ||
| 111 | |||
| 112 | #define IEEE754_DOUBLE_BIAS	0x3ff /* Added to exponent. */ | ||
| 113 | |||
| 114 | |||
| 115 | #if __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 1 | ||
| 116 | /* long double is IEEE 128 bit */ | ||
| 117 | union ieee854_long_double | ||
| 118 | { | ||
| 119 | long double d; | ||
| 120 | |||
| 121 | /* This is the IEEE 854 quad-precision format. */ | ||
| 122 | struct | ||
| 123 | { | ||
| 124 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 125 | 	unsigned int negative:1; | ||
| 126 | 	unsigned int exponent:15; | ||
| 127 | 	/* Together these comprise the mantissa. */ | ||
| 128 | 	unsigned int mantissa0:16; | ||
| 129 | 	unsigned int mantissa1:32; | ||
| 130 | 	unsigned int mantissa2:32; | ||
| 131 | 	unsigned int mantissa3:32; | ||
| 132 | #endif				/* Big endian. */ | ||
| 133 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 134 | 	/* Together these comprise the mantissa. */ | ||
| 135 | 	unsigned int mantissa3:32; | ||
| 136 | 	unsigned int mantissa2:32; | ||
| 137 | 	unsigned int mantissa1:32; | ||
| 138 | 	unsigned int mantissa0:16; | ||
| 139 | 	unsigned int exponent:15; | ||
| 140 | 	unsigned int negative:1; | ||
| 141 | #endif				/* Little endian. */ | ||
| 142 | } ieee; | ||
| 143 | |||
| 144 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 145 | struct | ||
| 146 | { | ||
| 147 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 148 | 	unsigned int negative:1; | ||
| 149 | 	unsigned int exponent:15; | ||
| 150 | 	unsigned int quiet_nan:1; | ||
| 151 | 	/* Together these comprise the mantissa. */ | ||
| 152 | 	unsigned int mantissa0:15; | ||
| 153 | 	unsigned int mantissa1:32; | ||
| 154 | 	unsigned int mantissa2:32; | ||
| 155 | 	unsigned int mantissa3:32; | ||
| 156 | #else | ||
| 157 | 	/* Together these comprise the mantissa. */ | ||
| 158 | 	unsigned int mantissa3:32; | ||
| 159 | 	unsigned int mantissa2:32; | ||
| 160 | 	unsigned int mantissa1:32; | ||
| 161 | 	unsigned int mantissa0:15; | ||
| 162 | 	unsigned int quiet_nan:1; | ||
| 163 | 	unsigned int exponent:15; | ||
| 164 | 	unsigned int negative:1; | ||
| 165 | #endif | ||
| 166 | } ieee_nan; | ||
| 167 | }; | ||
| 168 | |||
| 169 | #define IEEE854_LONG_DOUBLE_BIAS 0x3fff /* Added to exponent. */ | ||
| 170 | #endif | ||
| 171 | |||
| 172 | |||
| 173 | #if __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 0 || __GNUC_PREREQ (7, 0) | ||
| 174 | /* IBM extended format for long double. | ||
| 175 | |||
| 176 | Each long double is made up of two IEEE doubles. The value of the | ||
| 177 | long double is the sum of the values of the two parts. The most | ||
| 178 | significant part is required to be the value of the long double | ||
| 179 | rounded to the nearest double, as specified by IEEE. For Inf | ||
| 180 | values, the least significant part is required to be one of +0.0 or | ||
| 181 | -0.0. No other requirements are made; so, for example, 1.0 may be | ||
| 182 | represented as (1.0, +0.0) or (1.0, -0.0), and the low part of a | ||
| 183 | NaN is don't-care. */ | ||
| 184 | union ibm_extended_long_double | ||
| 185 | { | ||
| 186 | # if __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 1 && __GNUC_PREREQ (7, 0) | ||
| 187 | __ibm128 ld; | ||
| 188 | # else | ||
| 189 | long double ld; | ||
| 190 | # endif | ||
| 191 | union ieee754_double d[2]; | ||
| 192 | }; | ||
| 193 | #endif | ||
| 194 | |||
| 195 | __END_DECLS | ||
| 196 | |||
| 197 | #endif /* ieee754.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnu/sys/ptrace.h created+289| ... | @@ -0,0 +1,289 @@ | ||
| 1 | /* `ptrace' debugger support interface. Linux/PowerPC version. | ||
| 2 | Copyright (C) 2001-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_PTRACE_H | ||
| 20 | #define _SYS_PTRACE_H	1 | ||
| 21 | |||
| 22 | #include <features.h> | ||
| 23 | #include <bits/types.h> | ||
| 24 | |||
| 25 | __BEGIN_DECLS | ||
| 26 | |||
| 27 | #if defined _LINUX_PTRACE_H || defined _ASM_POWERPC_PTRACE_H | ||
| 28 | /* Do not let Linux headers macros interfere with enum __ptrace_request. */ | ||
| 29 | # undef PTRACE_ATTACH | ||
| 30 | # undef PTRACE_CONT | ||
| 31 | # undef PTRACE_DETACH | ||
| 32 | # undef PTRACE_GET_DEBUGREG | ||
| 33 | # undef PTRACE_GETEVENTMSG | ||
| 34 | # undef PTRACE_GETEVRREGS | ||
| 35 | # undef PTRACE_GETFPREGS | ||
| 36 | # undef PTRACE_GETREGS | ||
| 37 | # undef PTRACE_GETREGS64 | ||
| 38 | # undef PTRACE_GETREGSET | ||
| 39 | # undef PTRACE_GET_RSEQ_CONFIGURATION | ||
| 40 | # undef PTRACE_GETSIGINFO | ||
| 41 | # undef PTRACE_GETSIGMASK | ||
| 42 | # undef PTRACE_GET_SYSCALL_INFO | ||
| 43 | # undef PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG | ||
| 44 | # undef PTRACE_GETVRREGS | ||
| 45 | # undef PTRACE_GETVSRREGS | ||
| 46 | # undef PTRACE_INTERRUPT | ||
| 47 | # undef PTRACE_KILL | ||
| 48 | # undef PTRACE_LISTEN | ||
| 49 | # undef PTRACE_PEEKDATA | ||
| 50 | # undef PTRACE_PEEKSIGINFO | ||
| 51 | # undef PTRACE_PEEKTEXT | ||
| 52 | # undef PTRACE_POKEDATA | ||
| 53 | # undef PTRACE_POKETEXT | ||
| 54 | # undef PTRACE_SECCOMP_GET_FILTER | ||
| 55 | # undef PTRACE_SECCOMP_GET_METADATA | ||
| 56 | # undef PTRACE_SEIZE | ||
| 57 | # undef PTRACE_SET_DEBUGREG | ||
| 58 | # undef PTRACE_SETEVRREGS | ||
| 59 | # undef PTRACE_SETFPREGS | ||
| 60 | # undef PTRACE_SETOPTIONS | ||
| 61 | # undef PTRACE_SETREGS | ||
| 62 | # undef PTRACE_SETREGS64 | ||
| 63 | # undef PTRACE_SETREGSET | ||
| 64 | # undef PTRACE_SETSIGINFO | ||
| 65 | # undef PTRACE_SETSIGMASK | ||
| 66 | # undef PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG | ||
| 67 | # undef PTRACE_SETVRREGS | ||
| 68 | # undef PTRACE_SETVSRREGS | ||
| 69 | # undef PTRACE_SINGLEBLOCK | ||
| 70 | # undef PTRACE_SINGLESTEP | ||
| 71 | # undef PTRACE_SYSCALL | ||
| 72 | # undef PTRACE_SYSCALL_INFO_NONE | ||
| 73 | # undef PTRACE_SYSCALL_INFO_ENTRY | ||
| 74 | # undef PTRACE_SYSCALL_INFO_EXIT | ||
| 75 | # undef PTRACE_SYSCALL_INFO_SECCOMP | ||
| 76 | # undef PTRACE_SYSEMU | ||
| 77 | # undef PTRACE_SYSEMU_SINGLESTEP | ||
| 78 | # undef PTRACE_TRACEME | ||
| 79 | #endif | ||
| 80 | |||
| 81 | /* Type of the REQUEST argument to `ptrace.' */ | ||
| 82 | enum __ptrace_request | ||
| 83 | { | ||
| 84 | /* Indicate that the process making this request should be traced. | ||
| 85 | All signals received by this process can be intercepted by its | ||
| 86 | parent, and its parent can use the other `ptrace' requests. */ | ||
| 87 | PTRACE_TRACEME = 0, | ||
| 88 | #define PT_TRACE_ME PTRACE_TRACEME | ||
| 89 | |||
| 90 | /* Return the word in the process's text space at address ADDR. */ | ||
| 91 | PTRACE_PEEKTEXT = 1, | ||
| 92 | #define PT_READ_I PTRACE_PEEKTEXT | ||
| 93 | |||
| 94 | /* Return the word in the process's data space at address ADDR. */ | ||
| 95 | PTRACE_PEEKDATA = 2, | ||
| 96 | #define PT_READ_D PTRACE_PEEKDATA | ||
| 97 | |||
| 98 | /* Return the word in the process's user area at offset ADDR. */ | ||
| 99 | PTRACE_PEEKUSER = 3, | ||
| 100 | #define PT_READ_U PTRACE_PEEKUSER | ||
| 101 | |||
| 102 | /* Write the word DATA into the process's text space at address ADDR. */ | ||
| 103 | PTRACE_POKETEXT = 4, | ||
| 104 | #define PT_WRITE_I PTRACE_POKETEXT | ||
| 105 | |||
| 106 | /* Write the word DATA into the process's data space at address ADDR. */ | ||
| 107 | PTRACE_POKEDATA = 5, | ||
| 108 | #define PT_WRITE_D PTRACE_POKEDATA | ||
| 109 | |||
| 110 | /* Write the word DATA into the process's user area at offset ADDR. */ | ||
| 111 | PTRACE_POKEUSER = 6, | ||
| 112 | #define PT_WRITE_U PTRACE_POKEUSER | ||
| 113 | |||
| 114 | /* Continue the process. */ | ||
| 115 | PTRACE_CONT = 7, | ||
| 116 | #define PT_CONTINUE PTRACE_CONT | ||
| 117 | |||
| 118 | /* Kill the process. */ | ||
| 119 | PTRACE_KILL = 8, | ||
| 120 | #define PT_KILL PTRACE_KILL | ||
| 121 | |||
| 122 | /* Single step the process. */ | ||
| 123 | PTRACE_SINGLESTEP = 9, | ||
| 124 | #define PT_STEP PTRACE_SINGLESTEP | ||
| 125 | |||
| 126 | /* Get all general purpose registers used by a process. */ | ||
| 127 | PTRACE_GETREGS = 12, | ||
| 128 | #define PT_GETREGS PTRACE_GETREGS | ||
| 129 | |||
| 130 | /* Set all general purpose registers used by a process. */ | ||
| 131 | PTRACE_SETREGS = 13, | ||
| 132 | #define PT_SETREGS PTRACE_SETREGS | ||
| 133 | |||
| 134 | /* Get all floating point registers used by a process. */ | ||
| 135 | PTRACE_GETFPREGS = 14, | ||
| 136 | #define PT_GETFPREGS PTRACE_GETFPREGS | ||
| 137 | |||
| 138 | /* Set all floating point registers used by a process. */ | ||
| 139 | PTRACE_SETFPREGS = 15, | ||
| 140 | #define PT_SETFPREGS PTRACE_SETFPREGS | ||
| 141 | |||
| 142 | /* Attach to a process that is already running. */ | ||
| 143 | PTRACE_ATTACH = 16, | ||
| 144 | #define PT_ATTACH PTRACE_ATTACH | ||
| 145 | |||
| 146 | /* Detach from a process attached to with PTRACE_ATTACH. */ | ||
| 147 | PTRACE_DETACH = 17, | ||
| 148 | #define PT_DETACH PTRACE_DETACH | ||
| 149 | |||
| 150 | /* Get all altivec registers used by a process. */ | ||
| 151 | PTRACE_GETVRREGS = 18, | ||
| 152 | #define PT_GETVRREGS PTRACE_GETVRREGS | ||
| 153 | |||
| 154 | /* Set all altivec registers used by a process. */ | ||
| 155 | PTRACE_SETVRREGS = 19, | ||
| 156 | #define PT_SETVRREGS PTRACE_SETVRREGS | ||
| 157 | |||
| 158 | /* Get all SPE registers used by a process. */ | ||
| 159 | PTRACE_GETEVRREGS = 20, | ||
| 160 | #define PT_GETEVRREGS PTRACE_GETEVRREGS | ||
| 161 | |||
| 162 | /* Set all SPE registers used by a process. */ | ||
| 163 | PTRACE_SETEVRREGS = 21, | ||
| 164 | #define PT_SETEVRREGS PTRACE_SETEVRREGS | ||
| 165 | |||
| 166 | /* Same as PTRACE_GETREGS except a 32-bit process will obtain | ||
| 167 | the full 64-bit registers. Implemented by 64-bit kernels only. */ | ||
| 168 | PTRACE_GETREGS64 = 22, | ||
| 169 | #define PT_GETREGS64 PTRACE_GETREGS64 | ||
| 170 | |||
| 171 | /* Same as PTRACE_SETREGS except a 32-bit process will set | ||
| 172 | the full 64-bit registers. Implemented by 64-bit kernels only. */ | ||
| 173 | PTRACE_SETREGS64 = 23, | ||
| 174 | #define PT_SETREGS64 PTRACE_SETREGS64 | ||
| 175 | |||
| 176 | /* Continue and stop at the next entry to or return from syscall. */ | ||
| 177 | PTRACE_SYSCALL = 24, | ||
| 178 | #define PT_SYSCALL PTRACE_SYSCALL | ||
| 179 | |||
| 180 | /* Get a debug register of a process. */ | ||
| 181 | PTRACE_GET_DEBUGREG = 25, | ||
| 182 | #define PT_GET_DEBUGREG PTRACE_GET_DEBUGREG | ||
| 183 | |||
| 184 | /* Set a debug register of a process. */ | ||
| 185 | PTRACE_SET_DEBUGREG = 26, | ||
| 186 | #define PT_SET_DEBUGREG PTRACE_SET_DEBUGREG | ||
| 187 | |||
| 188 | /* Get the first 32 VSX registers of a process. */ | ||
| 189 | PTRACE_GETVSRREGS = 27, | ||
| 190 | #define PT_GETVSRREGS PTRACE_GETVSRREGS | ||
| 191 | |||
| 192 | /* Set the first 32 VSX registers of a process. */ | ||
| 193 | PTRACE_SETVSRREGS = 28, | ||
| 194 | #define PT_SETVSRREGS PTRACE_SETVSRREGS | ||
| 195 | |||
| 196 | /* Continue and stop at the next syscall, it will not be executed. */ | ||
| 197 | PTRACE_SYSEMU = 29, | ||
| 198 | #define PT_SYSEMU PTRACE_SYSEMU | ||
| 199 | |||
| 200 | /* Single step the process, the next syscall will not be executed. */ | ||
| 201 | PTRACE_SYSEMU_SINGLESTEP = 30, | ||
| 202 | #define PT_SYSEMU_SINGLESTEP PTRACE_SYSEMU_SINGLESTEP | ||
| 203 | |||
| 204 | /* Execute process until next taken branch. */ | ||
| 205 | PTRACE_SINGLEBLOCK = 256, | ||
| 206 | #define PT_STEPBLOCK PTRACE_SINGLEBLOCK | ||
| 207 | |||
| 208 | /* Set ptrace filter options. */ | ||
| 209 | PTRACE_SETOPTIONS = 0x4200, | ||
| 210 | #define PT_SETOPTIONS PTRACE_SETOPTIONS | ||
| 211 | |||
| 212 | /* Get last ptrace message. */ | ||
| 213 | PTRACE_GETEVENTMSG = 0x4201, | ||
| 214 | #define PT_GETEVENTMSG PTRACE_GETEVENTMSG | ||
| 215 | |||
| 216 | /* Get siginfo for process. */ | ||
| 217 | PTRACE_GETSIGINFO = 0x4202, | ||
| 218 | #define PT_GETSIGINFO PTRACE_GETSIGINFO | ||
| 219 | |||
| 220 | /* Set new siginfo for process. */ | ||
| 221 | PTRACE_SETSIGINFO = 0x4203, | ||
| 222 | #define PT_SETSIGINFO PTRACE_SETSIGINFO | ||
| 223 | |||
| 224 | /* Get register content. */ | ||
| 225 | PTRACE_GETREGSET = 0x4204, | ||
| 226 | #define PTRACE_GETREGSET PTRACE_GETREGSET | ||
| 227 | |||
| 228 | /* Set register content. */ | ||
| 229 | PTRACE_SETREGSET = 0x4205, | ||
| 230 | #define PTRACE_SETREGSET PTRACE_SETREGSET | ||
| 231 | |||
| 232 | /* Like PTRACE_ATTACH, but do not force tracee to trap and do not affect | ||
| 233 | signal or group stop state. */ | ||
| 234 | PTRACE_SEIZE = 0x4206, | ||
| 235 | #define PTRACE_SEIZE PTRACE_SEIZE | ||
| 236 | |||
| 237 | /* Trap seized tracee. */ | ||
| 238 | PTRACE_INTERRUPT = 0x4207, | ||
| 239 | #define PTRACE_INTERRUPT PTRACE_INTERRUPT | ||
| 240 | |||
| 241 | /* Wait for next group event. */ | ||
| 242 | PTRACE_LISTEN = 0x4208, | ||
| 243 | #define PTRACE_LISTEN PTRACE_LISTEN | ||
| 244 | |||
| 245 | /* Retrieve siginfo_t structures without removing signals from a queue. */ | ||
| 246 | PTRACE_PEEKSIGINFO = 0x4209, | ||
| 247 | #define PTRACE_PEEKSIGINFO PTRACE_PEEKSIGINFO | ||
| 248 | |||
| 249 | /* Get the mask of blocked signals. */ | ||
| 250 | PTRACE_GETSIGMASK = 0x420a, | ||
| 251 | #define PTRACE_GETSIGMASK PTRACE_GETSIGMASK | ||
| 252 | |||
| 253 | /* Change the mask of blocked signals. */ | ||
| 254 | PTRACE_SETSIGMASK = 0x420b, | ||
| 255 | #define PTRACE_SETSIGMASK PTRACE_SETSIGMASK | ||
| 256 | |||
| 257 | /* Get seccomp BPF filters. */ | ||
| 258 | PTRACE_SECCOMP_GET_FILTER = 0x420c, | ||
| 259 | #define PTRACE_SECCOMP_GET_FILTER PTRACE_SECCOMP_GET_FILTER | ||
| 260 | |||
| 261 | /* Get seccomp BPF filter metadata. */ | ||
| 262 | PTRACE_SECCOMP_GET_METADATA = 0x420d, | ||
| 263 | #define PTRACE_SECCOMP_GET_METADATA PTRACE_SECCOMP_GET_METADATA | ||
| 264 | |||
| 265 | /* Get information about system call. */ | ||
| 266 | PTRACE_GET_SYSCALL_INFO = 0x420e, | ||
| 267 | #define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO | ||
| 268 | |||
| 269 | /* Get rseq configuration information. */ | ||
| 270 | PTRACE_GET_RSEQ_CONFIGURATION = 0x420f, | ||
| 271 | #define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION | ||
| 272 | |||
| 273 | /* Set configuration for syscall user dispatch. */ | ||
| 274 | PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG = 0x4210, | ||
| 275 | #define PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG \ | ||
| 276 | PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG | ||
| 277 | |||
| 278 | /* Get configuration for syscall user dispatch. */ | ||
| 279 | PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG = 0x4211 | ||
| 280 | #define PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG \ | ||
| 281 | PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG | ||
| 282 | }; | ||
| 283 | |||
| 284 | |||
| 285 | #include <bits/ptrace-shared.h> | ||
| 286 | |||
| 287 | __END_DECLS | ||
| 288 | |||
| 289 | #endif /* _SYS_PTRACE_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnu/sys/ucontext.h created+200| ... | @@ -0,0 +1,200 @@ | ||
| 1 | /* Copyright (C) 1998-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_UCONTEXT_H | ||
| 19 | #define _SYS_UCONTEXT_H	1 | ||
| 20 | |||
| 21 | #include <features.h> | ||
| 22 | |||
| 23 | #include <bits/types/sigset_t.h> | ||
| 24 | #include <bits/types/stack_t.h> | ||
| 25 | |||
| 26 | |||
| 27 | #ifdef __USE_MISC | ||
| 28 | # define __ctx(fld) fld | ||
| 29 | #else | ||
| 30 | # define __ctx(fld) __ ## fld | ||
| 31 | #endif | ||
| 32 | |||
| 33 | struct __ctx(pt_regs); | ||
| 34 | |||
| 35 | #if __WORDSIZE == 32 | ||
| 36 | |||
| 37 | /* Number of general registers. */ | ||
| 38 | # define __NGREG	48 | ||
| 39 | # ifdef __USE_MISC | ||
| 40 | # define NGREG	__NGREG | ||
| 41 | # endif | ||
| 42 | |||
| 43 | /* Container for all general registers. */ | ||
| 44 | typedef unsigned long gregset_t[__NGREG]; | ||
| 45 | |||
| 46 | /* Container for floating-point registers and status */ | ||
| 47 | typedef struct _libc_fpstate | ||
| 48 | { | ||
| 49 | 	double __ctx(fpregs)[32]; | ||
| 50 | 	double __ctx(fpscr); | ||
| 51 | 	unsigned int _pad[2]; | ||
| 52 | } fpregset_t; | ||
| 53 | |||
| 54 | /* Container for Altivec/VMX registers and status. | ||
| 55 | Needs to be aligned on a 16-byte boundary. */ | ||
| 56 | typedef struct _libc_vrstate | ||
| 57 | { | ||
| 58 | 	unsigned int __ctx(vrregs)[32][4]; | ||
| 59 | 	unsigned int __ctx(vrsave); | ||
| 60 | 	unsigned int _pad[2]; | ||
| 61 | 	unsigned int __ctx(vscr); | ||
| 62 | } vrregset_t; | ||
| 63 | |||
| 64 | /* Context to describe whole processor state. */ | ||
| 65 | typedef struct | ||
| 66 | { | ||
| 67 | 	gregset_t __ctx(gregs); | ||
| 68 | 	fpregset_t __ctx(fpregs); | ||
| 69 | 	vrregset_t __ctx(vrregs) __attribute__((__aligned__(16))); | ||
| 70 | } mcontext_t; | ||
| 71 | |||
| 72 | #else | ||
| 73 | |||
| 74 | /* For 64-bit kernels with Altivec support, a machine context is exactly | ||
| 75 | * a sigcontext. For older kernel (without Altivec) the sigcontext matches | ||
| 76 | * the mcontext upto but not including the v_regs field. For kernels that | ||
| 77 | * don't set AT_HWCAP or return AT_HWCAP without PPC_FEATURE_HAS_ALTIVEC the | ||
| 78 | * v_regs field may not exist and should not be referenced. The v_regs field | ||
| 79 | * can be referenced safely only after verifying that PPC_FEATURE_HAS_ALTIVEC | ||
| 80 | * is set in AT_HWCAP. */ | ||
| 81 | |||
| 82 | /* Number of general registers. */ | ||
| 83 | # define __NGREG	48	/* includes r0-r31, nip, msr, lr, etc. */ | ||
| 84 | # define __NFPREG	33	/* includes fp0-fp31 &fpscr. */ | ||
| 85 | # define __NVRREG	34	/* includes v0-v31, vscr, & vrsave in | ||
| 86 | 				 split vectors */ | ||
| 87 | # ifdef __USE_MISC | ||
| 88 | # define NGREG	__NGREG | ||
| 89 | # define NFPREG	__NFPREG | ||
| 90 | # define NVRREG	__NVRREG | ||
| 91 | # endif | ||
| 92 | |||
| 93 | typedef unsigned long gregset_t[__NGREG]; | ||
| 94 | typedef double fpregset_t[__NFPREG]; | ||
| 95 | |||
| 96 | /* Container for Altivec/VMX Vector Status and Control Register. Only 32-bits | ||
| 97 | but can only be copied to/from a 128-bit vector register. So we allocated | ||
| 98 | a whole quadword speedup save/restore. */ | ||
| 99 | typedef struct _libc_vscr | ||
| 100 | { | ||
| 101 | #if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__ | ||
| 102 | 	unsigned int __pad[3]; | ||
| 103 | 	unsigned int __ctx(vscr_word); | ||
| 104 | #else | ||
| 105 | 	unsigned int __ctx(vscr_word); | ||
| 106 | 	unsigned int __pad[3]; | ||
| 107 | #endif | ||
| 108 | } vscr_t; | ||
| 109 | |||
| 110 | /* Container for Altivec/VMX registers and status. | ||
| 111 | Must to be aligned on a 16-byte boundary. */ | ||
| 112 | typedef struct _libc_vrstate | ||
| 113 | { | ||
| 114 | 	unsigned int	__ctx(vrregs)[32][4]; | ||
| 115 | 	vscr_t		__ctx(vscr); | ||
| 116 | 	unsigned int	__ctx(vrsave); | ||
| 117 | 	unsigned int	__pad[3]; | ||
| 118 | } vrregset_t __attribute__((__aligned__(16))); | ||
| 119 | |||
| 120 | typedef struct { | ||
| 121 | 	unsigned long	__glibc_reserved[4]; | ||
| 122 | 	int		__ctx(signal); | ||
| 123 | 	int		__pad0; | ||
| 124 | 	unsigned long	__ctx(handler); | ||
| 125 | 	unsigned long	__ctx(oldmask); | ||
| 126 | 	struct __ctx(pt_regs)	*__ctx(regs); | ||
| 127 | 	gregset_t	__ctx(gp_regs); | ||
| 128 | 	fpregset_t	__ctx(fp_regs); | ||
| 129 | /* | ||
| 130 | * To maintain compatibility with current implementations the sigcontext is | ||
| 131 | * extended by appending a pointer (v_regs) to a quadword type (elf_vrreg_t) | ||
| 132 | * followed by an unstructured (vmx_reserve) field of 69 doublewords. This | ||
| 133 | * allows the array of vector registers to be quadword aligned independent of | ||
| 134 | * the alignment of the containing sigcontext or ucontext. It is the | ||
| 135 | * responsibility of the code setting the sigcontext to set this pointer to | ||
| 136 | * either NULL (if this processor does not support the VMX feature) or the | ||
| 137 | * address of the first quadword within the allocated (vmx_reserve) area. | ||
| 138 | * | ||
| 139 | * The pointer (v_regs) of vector type (elf_vrreg_t) is essentially | ||
| 140 | * an array of 34 quadword entries. The entries with | ||
| 141 | * indexes 0-31 contain the corresponding vector registers. The entry with | ||
| 142 | * index 32 contains the vscr as the last word (offset 12) within the | ||
| 143 | * quadword. This allows the vscr to be stored as either a quadword (since | ||
| 144 | * it must be copied via a vector register to/from storage) or as a word. | ||
| 145 | * The entry with index 33 contains the vrsave as the first word (offset 0) | ||
| 146 | * within the quadword. | ||
| 147 | */ | ||
| 148 | 	vrregset_t	*__ctx(v_regs); | ||
| 149 | 	long		__ctx(vmx_reserve)[__NVRREG+__NVRREG+1]; | ||
| 150 | } mcontext_t; | ||
| 151 | |||
| 152 | #endif | ||
| 153 | |||
| 154 | /* Userlevel context. */ | ||
| 155 | typedef struct ucontext_t | ||
| 156 | { | ||
| 157 | unsigned long int __ctx(uc_flags); | ||
| 158 | struct ucontext_t *uc_link; | ||
| 159 | stack_t uc_stack; | ||
| 160 | #if __WORDSIZE == 32 | ||
| 161 | /* | ||
| 162 | * These fields are set up this way to maximize source and | ||
| 163 | * binary compatibility with code written for the old | ||
| 164 | * ucontext_t definition, which didn't include space for the | ||
| 165 | * registers. | ||
| 166 | * | ||
| 167 | * Different versions of the kernel have stored the registers on | ||
| 168 | * signal delivery at different offsets from the ucontext struct. | ||
| 169 | * Programs should thus use the uc_mcontext.uc_regs pointer to | ||
| 170 | * find where the registers are actually stored. The registers | ||
| 171 | * will be stored within the ucontext_t struct but not necessarily | ||
| 172 | * at a fixed address. As a side-effect, this lets us achieve | ||
| 173 | * 16-byte alignment for the register storage space if the | ||
| 174 | * Altivec registers are to be saved, without requiring 16-byte | ||
| 175 | * alignment on the whole ucontext_t. | ||
| 176 | * | ||
| 177 | * The uc_mcontext.regs field is included for source compatibility | ||
| 178 | * with programs written against the older ucontext_t definition, | ||
| 179 | * and its name should therefore not change. The uc_pad field | ||
| 180 | * is for binary compatibility with programs compiled against the | ||
| 181 | * old ucontext_t; it ensures that uc_mcontext.regs and uc_sigmask | ||
| 182 | * are at the same offset as previously. | ||
| 183 | */ | ||
| 184 | int __glibc_reserved1[7]; | ||
| 185 | union __ctx(uc_regs_ptr) { | ||
| 186 | struct __ctx(pt_regs) *__ctx(regs); | ||
| 187 | mcontext_t *__ctx(uc_regs); | ||
| 188 | } uc_mcontext; | ||
| 189 | sigset_t uc_sigmask; | ||
| 190 | /* last for extensibility */ | ||
| 191 | char __ctx(uc_reg_space)[sizeof (mcontext_t) + 12]; | ||
| 192 | #else /* 64-bit */ | ||
| 193 | sigset_t uc_sigmask; | ||
| 194 | mcontext_t uc_mcontext; /* last for extensibility */ | ||
| 195 | #endif | ||
| 196 | } ucontext_t; | ||
| 197 | |||
| 198 | #undef __ctx | ||
| 199 | |||
| 200 | #endif /* sys/ucontext.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnu/sys/user.h created+40| ... | @@ -0,0 +1,40 @@ | ||
| 1 | /* Copyright (C) 1998-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_USER_H | ||
| 19 | |||
| 20 | #define _SYS_USER_H	1 | ||
| 21 | #include <stddef.h> | ||
| 22 | #include <features.h> | ||
| 23 | |||
| 24 | #include <asm/ptrace.h> | ||
| 25 | |||
| 26 | struct user { | ||
| 27 | 	struct pt_regs	regs;			/* entire machine state */ | ||
| 28 | 	size_t		u_tsize;		/* text size (pages) */ | ||
| 29 | 	size_t		u_dsize;		/* data size (pages) */ | ||
| 30 | 	size_t		u_ssize;		/* stack size (pages) */ | ||
| 31 | 	unsigned long	start_code;		/* text starting address */ | ||
| 32 | 	unsigned long	start_data;		/* data starting address */ | ||
| 33 | 	unsigned long	start_stack;		/* stack starting address */ | ||
| 34 | 	long int	signal;			/* signal causing core dump */ | ||
| 35 | 	struct regs *	u_ar0;			/* help gdb find registers */ | ||
| 36 | 	unsigned long	magic;			/* identifies a core file */ | ||
| 37 | 	char		u_comm[32];		/* user command name */ | ||
| 38 | }; | ||
| 39 | |||
| 40 | #endif /* sys/user.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabi/bits/endianness.h deleted-16| ... | @@ -1,16 +0,0 @@ | ||
| 1 | #ifndef _BITS_ENDIANNESS_H | ||
| 2 | #define _BITS_ENDIANNESS_H 1 | ||
| 3 | |||
| 4 | #ifndef _BITS_ENDIAN_H | ||
| 5 | # error "Never use <bits/endianness.h> directly; include <endian.h> instead." | ||
| 6 | #endif | ||
| 7 | |||
| 8 | /* PowerPC has selectable endianness. */ | ||
| 9 | #if defined __BIG_ENDIAN__ || defined _BIG_ENDIAN | ||
| 10 | # define __BYTE_ORDER __BIG_ENDIAN | ||
| 11 | #endif | ||
| 12 | #if defined __LITTLE_ENDIAN__ || defined _LITTLE_ENDIAN | ||
| 13 | # define __BYTE_ORDER __LITTLE_ENDIAN | ||
| 14 | #endif | ||
| 15 | |||
| 16 | #endif /* bits/endianness.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabi/bits/environments.h deleted-96| ... | @@ -1,96 +0,0 @@ | ||
| 1 | /* Copyright (C) 1999-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _UNISTD_H | ||
| 19 | # error "Never include this file directly. Use <unistd.h> instead" | ||
| 20 | #endif | ||
| 21 | |||
| 22 | #include <bits/wordsize.h> | ||
| 23 | |||
| 24 | /* This header should define the following symbols under the described | ||
| 25 | situations. A value `1' means that the model is always supported, | ||
| 26 | `-1' means it is never supported. Undefined means it cannot be | ||
| 27 | statically decided. | ||
| 28 | |||
| 29 | _POSIX_V7_ILP32_OFF32 32bit int, long, pointers, and off_t type | ||
| 30 | _POSIX_V7_ILP32_OFFBIG 32bit int, long, and pointers and larger off_t type | ||
| 31 | |||
| 32 | _POSIX_V7_LP64_OFF32	 64bit long and pointers and 32bit off_t type | ||
| 33 | _POSIX_V7_LPBIG_OFFBIG 64bit long and pointers and large off_t type | ||
| 34 | |||
| 35 | The macros _POSIX_V6_ILP32_OFF32, _POSIX_V6_ILP32_OFFBIG, | ||
| 36 | _POSIX_V6_LP64_OFF32, _POSIX_V6_LPBIG_OFFBIG, _XBS5_ILP32_OFF32, | ||
| 37 | _XBS5_ILP32_OFFBIG, _XBS5_LP64_OFF32, and _XBS5_LPBIG_OFFBIG were | ||
| 38 | used in previous versions of the Unix standard and are available | ||
| 39 | only for compatibility. | ||
| 40 | */ | ||
| 41 | |||
| 42 | #if __WORDSIZE == 64 | ||
| 43 | |||
| 44 | /* Environments with 32-bit wide pointers are optionally provided. | ||
| 45 | Therefore following macros aren't defined: | ||
| 46 | # undef _POSIX_V7_ILP32_OFF32 | ||
| 47 | # undef _POSIX_V7_ILP32_OFFBIG | ||
| 48 | # undef _POSIX_V6_ILP32_OFF32 | ||
| 49 | # undef _POSIX_V6_ILP32_OFFBIG | ||
| 50 | # undef _XBS5_ILP32_OFF32 | ||
| 51 | # undef _XBS5_ILP32_OFFBIG | ||
| 52 | and users need to check at runtime. */ | ||
| 53 | |||
| 54 | /* We also have no use (for now) for an environment with bigger pointers | ||
| 55 | and offsets. */ | ||
| 56 | # define _POSIX_V7_LPBIG_OFFBIG	-1 | ||
| 57 | # define _POSIX_V6_LPBIG_OFFBIG	-1 | ||
| 58 | # define _XBS5_LPBIG_OFFBIG	-1 | ||
| 59 | |||
| 60 | /* By default we have 64-bit wide `long int', pointers and `off_t'. */ | ||
| 61 | # define _POSIX_V7_LP64_OFF64	1 | ||
| 62 | # define _POSIX_V6_LP64_OFF64	1 | ||
| 63 | # define _XBS5_LP64_OFF64	1 | ||
| 64 | |||
| 65 | #else /* __WORDSIZE == 32 */ | ||
| 66 | |||
| 67 | /* By default we have 32-bit wide `int', `long int', pointers and `off_t' | ||
| 68 | and all platforms support LFS. */ | ||
| 69 | # define _POSIX_V7_ILP32_OFF32	1 | ||
| 70 | # define _POSIX_V7_ILP32_OFFBIG	1 | ||
| 71 | # define _POSIX_V6_ILP32_OFF32	1 | ||
| 72 | # define _POSIX_V6_ILP32_OFFBIG	1 | ||
| 73 | # define _XBS5_ILP32_OFF32	1 | ||
| 74 | # define _XBS5_ILP32_OFFBIG	1 | ||
| 75 | |||
| 76 | /* We optionally provide an environment with the above size but an 64-bit | ||
| 77 | side `off_t'. Therefore we don't define _POSIX_V7_ILP32_OFFBIG. */ | ||
| 78 | |||
| 79 | /* Environments with 64-bit wide pointers can be provided, | ||
| 80 | so these macros aren't defined: | ||
| 81 | # undef _POSIX_V7_LP64_OFF64 | ||
| 82 | # undef _POSIX_V7_LPBIG_OFFBIG | ||
| 83 | # undef _POSIX_V6_LP64_OFF64 | ||
| 84 | # undef _POSIX_V6_LPBIG_OFFBIG | ||
| 85 | # undef _XBS5_LP64_OFF64 | ||
| 86 | # undef _XBS5_LPBIG_OFFBIG | ||
| 87 | and sysconf tests for it at runtime. */ | ||
| 88 | |||
| 89 | #endif /* __WORDSIZE == 32 */ | ||
| 90 | |||
| 91 | #define __ILP32_OFF32_CFLAGS	"-m32" | ||
| 92 | #define __ILP32_OFFBIG_CFLAGS	"-m32 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" | ||
| 93 | #define __ILP32_OFF32_LDFLAGS	"-m32" | ||
| 94 | #define __ILP32_OFFBIG_LDFLAGS	"-m32" | ||
| 95 | #define __LP64_OFF64_CFLAGS	"-m64" | ||
| 96 | #define __LP64_OFF64_LDFLAGS	"-m64" | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabi/bits/fcntl.h deleted-68| ... | @@ -1,68 +0,0 @@ | ||
| 1 | /* O_*, F_*, FD_* bit values for Linux/PowerPC. | ||
| 2 | Copyright (C) 1995-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef	_FCNTL_H | ||
| 20 | # error "Never use <bits/fcntl.h> directly; include <fcntl.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <bits/wordsize.h> | ||
| 24 | |||
| 25 | #define __O_DIRECTORY	 040000	/* Must be a directory.	 */ | ||
| 26 | #define __O_NOFOLLOW	0100000	/* Do not follow links.	 */ | ||
| 27 | #define __O_DIRECT	0400000	/* Direct disk access.	*/ | ||
| 28 | |||
| 29 | #if __WORDSIZE == 64 | ||
| 30 | /* Not necessary, files are always with 64bit off_t. */ | ||
| 31 | # define __O_LARGEFILE 0 | ||
| 32 | #else | ||
| 33 | # define __O_LARGEFILE	0200000 | ||
| 34 | #endif | ||
| 35 | |||
| 36 | #if __WORDSIZE == 64 && !defined __USE_FILE_OFFSET64 | ||
| 37 | # define F_GETLK	5 | ||
| 38 | # define F_SETLK	6 | ||
| 39 | # define F_SETLKW	7 | ||
| 40 | #endif | ||
| 41 | |||
| 42 | struct flock | ||
| 43 | { | ||
| 44 | short int l_type;	/* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK.	*/ | ||
| 45 | short int l_whence;	/* Where `l_start' is relative to (like `lseek'). */ | ||
| 46 | #ifndef __USE_FILE_OFFSET64 | ||
| 47 | __off_t l_start;	/* Offset where the lock begins. */ | ||
| 48 | __off_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 49 | #else | ||
| 50 | __off64_t l_start;	/* Offset where the lock begins. */ | ||
| 51 | __off64_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 52 | #endif | ||
| 53 | __pid_t l_pid;	/* Process holding the lock. */ | ||
| 54 | }; | ||
| 55 | |||
| 56 | #ifdef __USE_LARGEFILE64 | ||
| 57 | struct flock64 | ||
| 58 | { | ||
| 59 | short int l_type;	/* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK.	*/ | ||
| 60 | short int l_whence;	/* Where `l_start' is relative to (like `lseek'). */ | ||
| 61 | __off64_t l_start;	/* Offset where the lock begins. */ | ||
| 62 | __off64_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 63 | __pid_t l_pid;	/* Process holding the lock. */ | ||
| 64 | }; | ||
| 65 | #endif | ||
| 66 | |||
| 67 | /* Include generic Linux declarations. */ | ||
| 68 | #include <bits/fcntl-linux.h> | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabi/bits/fenv.h deleted-180| ... | @@ -1,180 +0,0 @@ | ||
| 1 | /* Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _FENV_H | ||
| 19 | # error "Never use <bits/fenv.h> directly; include <fenv.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | |||
| 23 | /* Define bits representing the exception. We use the bit positions of | ||
| 24 | the appropriate bits in the FPSCR... */ | ||
| 25 | enum | ||
| 26 | { | ||
| 27 | FE_INEXACT = | ||
| 28 | #define FE_INEXACT	(1 << (31 - 6)) | ||
| 29 | FE_INEXACT, | ||
| 30 | FE_DIVBYZERO = | ||
| 31 | #define FE_DIVBYZERO	(1 << (31 - 5)) | ||
| 32 | FE_DIVBYZERO, | ||
| 33 | FE_UNDERFLOW = | ||
| 34 | #define FE_UNDERFLOW	(1 << (31 - 4)) | ||
| 35 | FE_UNDERFLOW, | ||
| 36 | FE_OVERFLOW = | ||
| 37 | #define FE_OVERFLOW	(1 << (31 - 3)) | ||
| 38 | FE_OVERFLOW, | ||
| 39 | |||
| 40 | /* ... except for FE_INVALID, for which we use bit 31. FE_INVALID | ||
| 41 | actually corresponds to bits 7 through 12 and 21 through 23 | ||
| 42 | in the FPSCR, but we can't use that because the current draft | ||
| 43 | says that it must be a power of 2. Instead we use bit 2 which | ||
| 44 | is the summary bit for all the FE_INVALID exceptions, which | ||
| 45 | kind of makes sense. */ | ||
| 46 | FE_INVALID = | ||
| 47 | #define FE_INVALID	(1 << (31 - 2)) | ||
| 48 | FE_INVALID, | ||
| 49 | |||
| 50 | #ifdef __USE_GNU | ||
| 51 | /* Breakdown of the FE_INVALID bits. Setting FE_INVALID on an | ||
| 52 | input to a routine is equivalent to setting all of these bits; | ||
| 53 | FE_INVALID will be set on output from a routine iff one of | ||
| 54 | these bits is set. Note, though, that you can't disable or | ||
| 55 | enable these exceptions individually. */ | ||
| 56 | |||
| 57 | /* Operation with a sNaN. */ | ||
| 58 | FE_INVALID_SNAN = | ||
| 59 | # define FE_INVALID_SNAN	(1 << (31 - 7)) | ||
| 60 | FE_INVALID_SNAN, | ||
| 61 | |||
| 62 | /* Inf - Inf */ | ||
| 63 | FE_INVALID_ISI = | ||
| 64 | # define FE_INVALID_ISI	(1 << (31 - 8)) | ||
| 65 | FE_INVALID_ISI, | ||
| 66 | |||
| 67 | /* Inf / Inf */ | ||
| 68 | FE_INVALID_IDI = | ||
| 69 | # define FE_INVALID_IDI	(1 << (31 - 9)) | ||
| 70 | FE_INVALID_IDI, | ||
| 71 | |||
| 72 | /* 0 / 0 */ | ||
| 73 | FE_INVALID_ZDZ = | ||
| 74 | # define FE_INVALID_ZDZ	(1 << (31 - 10)) | ||
| 75 | FE_INVALID_ZDZ, | ||
| 76 | |||
| 77 | /* Inf * 0 */ | ||
| 78 | FE_INVALID_IMZ = | ||
| 79 | # define FE_INVALID_IMZ	(1 << (31 - 11)) | ||
| 80 | FE_INVALID_IMZ, | ||
| 81 | |||
| 82 | /* Comparison with a NaN. */ | ||
| 83 | FE_INVALID_COMPARE = | ||
| 84 | # define FE_INVALID_COMPARE	(1 << (31 - 12)) | ||
| 85 | FE_INVALID_COMPARE, | ||
| 86 | |||
| 87 | /* Invalid operation flag for software (not set by hardware). */ | ||
| 88 | /* Note that some chips don't have this implemented, presumably | ||
| 89 | because no-one expected anyone to write software for them %-). */ | ||
| 90 | FE_INVALID_SOFTWARE = | ||
| 91 | # define FE_INVALID_SOFTWARE	(1 << (31 - 21)) | ||
| 92 | FE_INVALID_SOFTWARE, | ||
| 93 | |||
| 94 | /* Square root of negative number (including -Inf). */ | ||
| 95 | /* Note that some chips don't have this implemented. */ | ||
| 96 | FE_INVALID_SQRT = | ||
| 97 | # define FE_INVALID_SQRT	(1 << (31 - 22)) | ||
| 98 | FE_INVALID_SQRT, | ||
| 99 | |||
| 100 | /* Conversion-to-integer of a NaN or a number too large or too small. */ | ||
| 101 | FE_INVALID_INTEGER_CONVERSION = | ||
| 102 | # define FE_INVALID_INTEGER_CONVERSION	(1 << (31 - 23)) | ||
| 103 | FE_INVALID_INTEGER_CONVERSION | ||
| 104 | |||
| 105 | # define FE_ALL_INVALID \ | ||
| 106 | (FE_INVALID_SNAN | FE_INVALID_ISI | FE_INVALID_IDI | FE_INVALID_ZDZ \ | ||
| 107 | 	 | FE_INVALID_IMZ | FE_INVALID_COMPARE | FE_INVALID_SOFTWARE \ | ||
| 108 | 	 | FE_INVALID_SQRT | FE_INVALID_INTEGER_CONVERSION) | ||
| 109 | #endif | ||
| 110 | }; | ||
| 111 | |||
| 112 | #define FE_ALL_EXCEPT \ | ||
| 113 | 	(FE_INEXACT | FE_DIVBYZERO | FE_UNDERFLOW | FE_OVERFLOW | FE_INVALID) | ||
| 114 | |||
| 115 | /* PowerPC chips support all of the four defined rounding modes. We | ||
| 116 | use the bit pattern in the FPSCR as the values for the | ||
| 117 | appropriate macros. */ | ||
| 118 | enum | ||
| 119 | { | ||
| 120 | FE_TONEAREST = | ||
| 121 | #define FE_TONEAREST	0 | ||
| 122 | FE_TONEAREST, | ||
| 123 | FE_TOWARDZERO = | ||
| 124 | #define FE_TOWARDZERO	1 | ||
| 125 | FE_TOWARDZERO, | ||
| 126 | FE_UPWARD = | ||
| 127 | #define FE_UPWARD	2 | ||
| 128 | FE_UPWARD, | ||
| 129 | FE_DOWNWARD = | ||
| 130 | #define FE_DOWNWARD	3 | ||
| 131 | FE_DOWNWARD | ||
| 132 | }; | ||
| 133 | |||
| 134 | /* Type representing exception flags. */ | ||
| 135 | typedef unsigned int fexcept_t; | ||
| 136 | |||
| 137 | /* Type representing floating-point environment. We leave it as 'double' | ||
| 138 | for efficiency reasons (rather than writing it to a 32-bit integer). */ | ||
| 139 | typedef double fenv_t; | ||
| 140 | |||
| 141 | /* If the default argument is used we use this value. */ | ||
| 142 | extern const fenv_t __fe_dfl_env; | ||
| 143 | #define FE_DFL_ENV	(&__fe_dfl_env) | ||
| 144 | |||
| 145 | #ifdef __USE_GNU | ||
| 146 | /* Floating-point environment where all exceptions are enabled. Note that | ||
| 147 | this is not sufficient to give you SIGFPE. */ | ||
| 148 | extern const fenv_t __fe_enabled_env; | ||
| 149 | # define FE_ENABLED_ENV	(&__fe_enabled_env) | ||
| 150 | |||
| 151 | /* Floating-point environment with (processor-dependent) non-IEEE floating | ||
| 152 | point. */ | ||
| 153 | extern const fenv_t __fe_nonieee_env; | ||
| 154 | # define FE_NONIEEE_ENV	(&__fe_nonieee_env) | ||
| 155 | |||
| 156 | /* Floating-point environment with all exceptions enabled. Note that | ||
| 157 | just evaluating this value does not change the processor exception mode. | ||
| 158 | Passing this mask to fesetenv will result in a prctl syscall to change | ||
| 159 | the MSR FE0/FE1 bits to "Precise Mode". On some processors this will | ||
| 160 | result in slower floating point execution. This will last until an | ||
| 161 | fenv or exception mask is installed that disables all FP exceptions. */ | ||
| 162 | # define FE_NOMASK_ENV	FE_ENABLED_ENV | ||
| 163 | |||
| 164 | /* Floating-point environment with all exceptions disabled. Note that | ||
| 165 | just evaluating this value does not change the processor exception mode. | ||
| 166 | Passing this mask to fesetenv will result in a prctl syscall to change | ||
| 167 | the MSR FE0/FE1 bits to "Ignore Exceptions Mode". On most processors | ||
| 168 | this allows the fastest possible floating point execution.*/ | ||
| 169 | # define FE_MASK_ENV	FE_DFL_ENV | ||
| 170 | |||
| 171 | #endif | ||
| 172 | |||
| 173 | #if __GLIBC_USE (IEC_60559_BFP_EXT_C23) | ||
| 174 | /* Type representing floating-point control modes. */ | ||
| 175 | typedef double femode_t; | ||
| 176 | |||
| 177 | /* Default floating-point control modes. */ | ||
| 178 | extern const femode_t __fe_dfl_mode; | ||
| 179 | # define FE_DFL_MODE	(&__fe_dfl_mode) | ||
| 180 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabi/bits/floatn.h deleted-122| ... | @@ -1,122 +0,0 @@ | ||
| 1 | /* Macros to control TS 18661-3 glibc features on powerpc. | ||
| 2 | Copyright (C) 2017-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_FLOATN_H | ||
| 20 | #define _BITS_FLOATN_H | ||
| 21 | |||
| 22 | #include <features.h> | ||
| 23 | #include <bits/long-double.h> | ||
| 24 | |||
| 25 | /* Defined to 1 if the current compiler invocation provides a | ||
| 26 | floating-point type with the IEEE 754 binary128 format, and this glibc | ||
| 27 | includes corresponding *f128 interfaces for it. */ | ||
| 28 | #if defined _ARCH_PWR8 && defined __LITTLE_ENDIAN__ && (_CALL_ELF == 2) \ | ||
| 29 | && defined __FLOAT128__ && !defined __NO_LONG_DOUBLE_MATH | ||
| 30 | # define __HAVE_FLOAT128 1 | ||
| 31 | #else | ||
| 32 | # define __HAVE_FLOAT128 0 | ||
| 33 | #endif | ||
| 34 | |||
| 35 | /* Defined to 1 if __HAVE_FLOAT128 is 1 and the type is ABI-distinct | ||
| 36 | from the default float, double and long double types in this glibc, i.e. | ||
| 37 | calls to the binary128 functions go to *f128 symbols instead of *l. */ | ||
| 38 | #if __HAVE_FLOAT128 | ||
| 39 | # define __HAVE_DISTINCT_FLOAT128 1 | ||
| 40 | #else | ||
| 41 | # define __HAVE_DISTINCT_FLOAT128 0 | ||
| 42 | #endif | ||
| 43 | |||
| 44 | /* Defined to 1 if the current compiler invocation provides a | ||
| 45 | floating-point type with the right format for _Float64x, and this | ||
| 46 | glibc includes corresponding *f64x interfaces for it. */ | ||
| 47 | #define __HAVE_FLOAT64X __HAVE_FLOAT128 | ||
| 48 | |||
| 49 | /* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format | ||
| 50 | of long double. Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has | ||
| 51 | the format of _Float128, which must be different from that of long | ||
| 52 | double. */ | ||
| 53 | #define __HAVE_FLOAT64X_LONG_DOUBLE 0 | ||
| 54 | |||
| 55 | #ifndef __ASSEMBLER__ | ||
| 56 | |||
| 57 | /* Defined to concatenate the literal suffix to be used with _Float128 | ||
| 58 | types, if __HAVE_FLOAT128 is 1. */ | ||
| 59 | # if __HAVE_FLOAT128 | ||
| 60 | # if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) | ||
| 61 | /* The literal suffix (f128) exist for powerpc only since GCC 7.0. */ | ||
| 62 | # if __LDBL_MANT_DIG__ == 113 | ||
| 63 | # define __f128(x) x##l | ||
| 64 | # else | ||
| 65 | # define __f128(x) x##q | ||
| 66 | # endif | ||
| 67 | # else | ||
| 68 | # define __f128(x) x##f128 | ||
| 69 | # endif | ||
| 70 | # endif | ||
| 71 | |||
| 72 | /* Defined to a complex binary128 type if __HAVE_FLOAT128 is 1. */ | ||
| 73 | # if __HAVE_FLOAT128 | ||
| 74 | # if __LDBL_MANT_DIG__ == 113 && defined __cplusplus && !__GNUC_PREREQ (13, 0) | ||
| 75 | typedef long double _Float128; | ||
| 76 | # define __CFLOAT128 _Complex long double | ||
| 77 | # elif !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) | ||
| 78 | /* The type _Float128 exist for powerpc only since GCC 7.0. */ | ||
| 79 | typedef __float128 _Float128; | ||
| 80 | /* Add a typedef for older GCC and C++ compilers which don't natively support | ||
| 81 | _Complex _Float128. */ | ||
| 82 | typedef _Complex float __cfloat128 __attribute__ ((__mode__ (__KC__))); | ||
| 83 | # define __CFLOAT128 __cfloat128 | ||
| 84 | # else | ||
| 85 | # define __CFLOAT128 _Complex _Float128 | ||
| 86 | # endif | ||
| 87 | # endif | ||
| 88 | |||
| 89 | /* The remaining of this file provides support for older compilers. */ | ||
| 90 | # if __HAVE_FLOAT128 | ||
| 91 | /* Builtin __builtin_huge_valf128 doesn't exist before GCC 7.0. */ | ||
| 92 | # if !__GNUC_PREREQ (7, 0) | ||
| 93 | # define __builtin_huge_valf128() ((_Float128) __builtin_huge_val ()) | ||
| 94 | # endif | ||
| 95 | |||
| 96 | /* The following builtins (suffixed with 'q') are available in GCC >= 6.2, | ||
| 97 | which is the minimum version required for float128 support on powerpc64le. | ||
| 98 | Since GCC 7.0 the builtins suffixed with f128 are also available, then | ||
| 99 | there is no need to redefined them. */ | ||
| 100 | # if !__GNUC_PREREQ (7, 0) | ||
| 101 | # define __builtin_copysignf128 __builtin_copysignq | ||
| 102 | # define __builtin_fabsf128 __builtin_fabsq | ||
| 103 | # define __builtin_inff128 __builtin_infq | ||
| 104 | # define __builtin_nanf128 __builtin_nanq | ||
| 105 | # define __builtin_nansf128 __builtin_nansq | ||
| 106 | # endif | ||
| 107 | |||
| 108 | /* In math/math.h, __MATH_TG will expand signbit to __builtin_signbit*, | ||
| 109 | e.g.: __builtin_signbitf128, before GCC 6. However, there has never | ||
| 110 | been a __builtin_signbitf128 in GCC and the type-generic builtin is | ||
| 111 | only available since GCC 6. */ | ||
| 112 | # if !__GNUC_PREREQ (6, 0) | ||
| 113 | # define __builtin_signbitf128 __signbitf128 | ||
| 114 | # endif | ||
| 115 | |||
| 116 | # endif | ||
| 117 | |||
| 118 | #endif /* !__ASSEMBLER__. */ | ||
| 119 | |||
| 120 | #include <bits/floatn-common.h> | ||
| 121 | |||
| 122 | #endif /* _BITS_FLOATN_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabi/bits/fp-fast.h deleted-39| ... | @@ -1,39 +0,0 @@ | ||
| 1 | /* Define FP_FAST_* macros. PowerPC version. | ||
| 2 | Copyright (C) 2016-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _MATH_H | ||
| 20 | # error "Never use <bits/fp-fast.h> directly; include <math.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifdef __USE_ISOC99 | ||
| 24 | |||
| 25 | /* The GCC 4.6 compiler will define __FP_FAST_FMA{,F,L} if the fma{,f,l} | ||
| 26 | builtins are supported. */ | ||
| 27 | # if (!defined _SOFT_FLOAT && !defined __NO_FPRS__) || defined __FP_FAST_FMA | ||
| 28 | # define FP_FAST_FMA 1 | ||
| 29 | # endif | ||
| 30 | |||
| 31 | # if (!defined _SOFT_FLOAT && !defined __NO_FPRS__) || defined __FP_FAST_FMAF | ||
| 32 | # define FP_FAST_FMAF 1 | ||
| 33 | # endif | ||
| 34 | |||
| 35 | # ifdef __FP_FAST_FMAL | ||
| 36 | # define FP_FAST_FMAL 1 | ||
| 37 | # endif | ||
| 38 | |||
| 39 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabi/bits/hwcap.h deleted-78| ... | @@ -1,78 +0,0 @@ | ||
| 1 | /* Defines for bits in AT_HWCAP and AT_HWCAP2. | ||
| 2 | Copyright (C) 2012-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #if !defined(_SYS_AUXV_H) && !defined(_SYSDEPS_SYSDEP_H) | ||
| 20 | # error "Never include <bits/hwcap.h> directly; use <sys/auxv.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* The bit numbers must match those in the kernel's asm/cputable.h. */ | ||
| 24 | |||
| 25 | /* Feature definitions in AT_HWCAP. */ | ||
| 26 | #define PPC_FEATURE_32		 0x80000000 /* 32-bit mode. */ | ||
| 27 | #define PPC_FEATURE_64		 0x40000000 /* 64-bit mode. */ | ||
| 28 | #define PPC_FEATURE_601_INSTR	 0x20000000 /* 601 chip, Old POWER ISA. */ | ||
| 29 | #define PPC_FEATURE_HAS_ALTIVEC	 0x10000000 /* SIMD/Vector Unit. */ | ||
| 30 | #define PPC_FEATURE_HAS_FPU	 0x08000000 /* Floating Point Unit. */ | ||
| 31 | #define PPC_FEATURE_HAS_MMU	 0x04000000 /* Memory Management Unit. */ | ||
| 32 | #define PPC_FEATURE_HAS_4xxMAC	 0x02000000 /* 4xx Multiply Accumulator. */ | ||
| 33 | #define PPC_FEATURE_UNIFIED_CACHE 0x01000000 /* Unified I/D cache. */ | ||
| 34 | #define PPC_FEATURE_HAS_SPE	 0x00800000 /* Signal Processing ext. */ | ||
| 35 | #define PPC_FEATURE_HAS_EFP_SINGLE 0x00400000 /* SPE Float. */ | ||
| 36 | #define PPC_FEATURE_HAS_EFP_DOUBLE 0x00200000 /* SPE Double. */ | ||
| 37 | #define PPC_FEATURE_NO_TB	 0x00100000 /* 601/403gx have no timebase */ | ||
| 38 | #define PPC_FEATURE_POWER4	 0x00080000 /* POWER4 ISA 2.00 */ | ||
| 39 | #define PPC_FEATURE_POWER5	 0x00040000 /* POWER5 ISA 2.02 */ | ||
| 40 | #define PPC_FEATURE_POWER5_PLUS	 0x00020000 /* POWER5+ ISA 2.03 */ | ||
| 41 | #define PPC_FEATURE_CELL_BE	 0x00010000 /* CELL Broadband Engine */ | ||
| 42 | #define PPC_FEATURE_BOOKE	 0x00008000 /* ISA Category Embedded */ | ||
| 43 | #define PPC_FEATURE_SMT		 0x00004000 /* Simultaneous | ||
| 44 | 						 Multi-Threading */ | ||
| 45 | #define PPC_FEATURE_ICACHE_SNOOP 0x00002000 | ||
| 46 | #define PPC_FEATURE_ARCH_2_05	 0x00001000 /* ISA 2.05 */ | ||
| 47 | #define PPC_FEATURE_PA6T	 0x00000800 /* PA Semi 6T Core */ | ||
| 48 | #define PPC_FEATURE_HAS_DFP	 0x00000400 /* Decimal FP Unit */ | ||
| 49 | #define PPC_FEATURE_POWER6_EXT	 0x00000200 /* P6 + mffgpr/mftgpr */ | ||
| 50 | #define PPC_FEATURE_ARCH_2_06	 0x00000100 /* ISA 2.06 */ | ||
| 51 | #define PPC_FEATURE_HAS_VSX	 0x00000080 /* P7 Vector Extension. */ | ||
| 52 | #define PPC_FEATURE_PSERIES_PERFMON_COMPAT 0x00000040 | ||
| 53 | /* Reserved by the kernel.	 0x00000004 Do not use. */ | ||
| 54 | #define PPC_FEATURE_TRUE_LE	 0x00000002 | ||
| 55 | #define PPC_FEATURE_PPC_LE	 0x00000001 | ||
| 56 | |||
| 57 | /* Feature definitions in AT_HWCAP2. */ | ||
| 58 | #define PPC_FEATURE2_ARCH_2_07 0x80000000 /* ISA 2.07 */ | ||
| 59 | #define PPC_FEATURE2_HAS_HTM 0x40000000 /* Hardware Transactional | ||
| 60 | 						 Memory */ | ||
| 61 | #define PPC_FEATURE2_HAS_DSCR 0x20000000 /* Data Stream Control | ||
| 62 | 						 Register */ | ||
| 63 | #define PPC_FEATURE2_HAS_EBB 0x10000000 /* Event Base Branching */ | ||
| 64 | #define PPC_FEATURE2_HAS_ISEL 0x08000000 /* Integer Select */ | ||
| 65 | #define PPC_FEATURE2_HAS_TAR 0x04000000 /* Target Address Register */ | ||
| 66 | #define PPC_FEATURE2_HAS_VEC_CRYPTO 0x02000000 /* Target supports vector | ||
| 67 | 						 instruction. */ | ||
| 68 | #define PPC_FEATURE2_HTM_NOSC	 0x01000000 /* Kernel aborts transaction | ||
| 69 | 						 when a syscall is made. */ | ||
| 70 | #define PPC_FEATURE2_ARCH_3_00	 0x00800000 /* ISA 3.0 */ | ||
| 71 | #define PPC_FEATURE2_HAS_IEEE128 0x00400000 /* VSX IEEE Binary Float | ||
| 72 | 						 128-bit */ | ||
| 73 | #define PPC_FEATURE2_DARN	 0x00200000 /* darn instruction. */ | ||
| 74 | #define PPC_FEATURE2_SCV	 0x00100000 /* scv syscall. */ | ||
| 75 | #define PPC_FEATURE2_HTM_NO_SUSPEND 0x00080000 /* TM without suspended | ||
| 76 | 						 state. */ | ||
| 77 | #define PPC_FEATURE2_ARCH_3_1	 0x00040000 /* ISA 3.1. */ | ||
| 78 | #define PPC_FEATURE2_MMA	 0x00020000 /* Matrix-Multiply Assist. */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabi/bits/ioctl-types.h deleted-77| ... | @@ -1,77 +0,0 @@ | ||
| 1 | /* Structure types for pre-termios terminal ioctls. Linux/powerpc version. | ||
| 2 | Copyright (C) 2014-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_IOCTL_H | ||
| 20 | # error "Never use <bits/ioctl-types.h> directly; include <sys/ioctl.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Get definition of constants for use with `ioctl'. */ | ||
| 24 | #include <asm/ioctls.h> | ||
| 25 | |||
| 26 | |||
| 27 | struct winsize | ||
| 28 | { | ||
| 29 | unsigned short int ws_row; | ||
| 30 | unsigned short int ws_col; | ||
| 31 | unsigned short int ws_xpixel; | ||
| 32 | unsigned short int ws_ypixel; | ||
| 33 | }; | ||
| 34 | |||
| 35 | #define NCC 10 | ||
| 36 | struct termio | ||
| 37 | { | ||
| 38 | unsigned short int c_iflag;		/* input mode flags */ | ||
| 39 | unsigned short int c_oflag;		/* output mode flags */ | ||
| 40 | unsigned short int c_cflag;		/* control mode flags */ | ||
| 41 | unsigned short int c_lflag;		/* local mode flags */ | ||
| 42 | unsigned char c_line;		/* line discipline */ | ||
| 43 | unsigned char c_cc[NCC];		/* control characters */ | ||
| 44 | }; | ||
| 45 | |||
| 46 | /* modem lines */ | ||
| 47 | #define TIOCM_LE	0x001 | ||
| 48 | #define TIOCM_DTR	0x002 | ||
| 49 | #define TIOCM_RTS	0x004 | ||
| 50 | #define TIOCM_ST	0x008 | ||
| 51 | #define TIOCM_SR	0x010 | ||
| 52 | #define TIOCM_CTS	0x020 | ||
| 53 | #define TIOCM_CAR	0x040 | ||
| 54 | #define TIOCM_RNG	0x080 | ||
| 55 | #define TIOCM_DSR	0x100 | ||
| 56 | #define TIOCM_CD	TIOCM_CAR | ||
| 57 | #define TIOCM_RI	TIOCM_RNG | ||
| 58 | |||
| 59 | /* ioctl (fd, TIOCSERGETLSR, &result) where result may be as below */ | ||
| 60 | |||
| 61 | /* line disciplines */ | ||
| 62 | #define N_TTY		0 | ||
| 63 | #define N_SLIP		1 | ||
| 64 | #define N_MOUSE		2 | ||
| 65 | #define N_PPP		3 | ||
| 66 | #define N_STRIP		4 | ||
| 67 | #define N_AX25		5 | ||
| 68 | #define N_X25		6	/* X.25 async */ | ||
| 69 | #define N_6PACK		7 | ||
| 70 | #define N_MASC		8	/* Mobitex module */ | ||
| 71 | #define N_R3964		9	/* Simatic R3964 module */ | ||
| 72 | #define N_PROFIBUS_FDL	10	/* Profibus */ | ||
| 73 | #define N_IRDA		11	/* Linux IR */ | ||
| 74 | #define N_SMSBLOCK	12	/* SMS block mode */ | ||
| 75 | #define N_HDLC		13	/* synchronous HDLC */ | ||
| 76 | #define N_SYNC_PPP	14	/* synchronous PPP */ | ||
| 77 | #define	N_HCI		15	/* Bluetooth HCI UART */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabi/bits/ipc-perm.h deleted-36| ... | @@ -1,36 +0,0 @@ | ||
| 1 | /* struct ipc_perm definition. Linux/powerpc version. | ||
| 2 | Copyright (C) 1995-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_IPC_H | ||
| 20 | # error "Never use <bits/ipc-perm.h> directly; include <sys/ipc.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Data structure used to pass permission information to IPC operations. */ | ||
| 24 | struct ipc_perm | ||
| 25 | { | ||
| 26 | __key_t __key;		/* Key. */ | ||
| 27 | __uid_t uid;		/* Owner's user ID. */ | ||
| 28 | __gid_t gid;		/* Owner's group ID. */ | ||
| 29 | __uid_t cuid;		/* Creator's user ID. */ | ||
| 30 | __gid_t cgid;		/* Creator's group ID. */ | ||
| 31 | __mode_t mode;		/* Read/write permission. */ | ||
| 32 | __uint32_t __seq;		/* Sequence number. */ | ||
| 33 | __uint32_t __pad1; | ||
| 34 | __uint64_t __glibc_reserved1; | ||
| 35 | __uint64_t __glibc_reserved2; | ||
| 36 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabi/bits/iscanonical.h deleted-58| ... | @@ -1,58 +0,0 @@ | ||
| 1 | /* Define iscanonical macro. ldbl-128ibm version. | ||
| 2 | Copyright (C) 2016-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _MATH_H | ||
| 20 | # error "Never use <bits/iscanonical.h> directly; include <math.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #if defined (__NO_LONG_DOUBLE_MATH) || __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 1 | ||
| 24 | # define iscanonical(x) ((void) (__typeof (x)) (x), 1) | ||
| 25 | #else | ||
| 26 | extern int __iscanonicall (long double __x) | ||
| 27 | __THROW __attribute__ ((__const__)); | ||
| 28 | # define __iscanonicalf(x) ((void) (__typeof (x)) (x), 1) | ||
| 29 | # define __iscanonical(x) ((void) (__typeof (x)) (x), 1) | ||
| 30 | # if __HAVE_DISTINCT_FLOAT128 | ||
| 31 | # define __iscanonicalf128(x) ((void) (__typeof (x)) (x), 1) | ||
| 32 | # endif | ||
| 33 | |||
| 34 | /* Return nonzero value if X is canonical. In IEEE interchange binary | ||
| 35 | formats, all values are canonical, but the argument must still be | ||
| 36 | converted to its semantic type for any exceptions arising from the | ||
| 37 | conversion, before being discarded; in IBM long double, there are | ||
| 38 | encodings that are not consistently handled as corresponding to any | ||
| 39 | particular value of the type, and we return 0 for those. */ | ||
| 40 | # ifndef __cplusplus | ||
| 41 | # define iscanonical(x) __MATH_TG ((x), __iscanonical, (x)) | ||
| 42 | # else | ||
| 43 | /* In C++ mode, __MATH_TG cannot be used, because it relies on | ||
| 44 | __builtin_types_compatible_p, which is a C-only builtin. On the | ||
| 45 | other hand, overloading provides the means to distinguish between | ||
| 46 | the floating-point types. The overloading resolution will match | ||
| 47 | the correct parameter (regardless of type qualifiers (i.e.: const | ||
| 48 | and volatile)). */ | ||
| 49 | extern "C++" { | ||
| 50 | inline int iscanonical (float __val) { return __iscanonicalf (__val); } | ||
| 51 | inline int iscanonical (double __val) { return __iscanonical (__val); } | ||
| 52 | inline int iscanonical (long double __val) { return __iscanonicall (__val); } | ||
| 53 | # if __HAVE_DISTINCT_FLOAT128 | ||
| 54 | inline int iscanonical (_Float128 __val) { return __iscanonicalf128 (__val); } | ||
| 55 | # endif | ||
| 56 | } | ||
| 57 | # endif /* __cplusplus */ | ||
| 58 | #endif /* __NO_LONG_DOUBLE_MATH */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabi/bits/link.h deleted-156| ... | @@ -1,156 +0,0 @@ | ||
| 1 | /* Machine-specific declarations for dynamic linker interface. PowerPC version | ||
| 2 | Copyright (C) 2004-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef	_LINK_H | ||
| 20 | # error "Never include <bits/link.h> directly; use <link.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | |||
| 24 | #if __ELF_NATIVE_CLASS == 32 | ||
| 25 | |||
| 26 | /* Registers for entry into PLT on PPC32. */ | ||
| 27 | typedef struct La_ppc32_regs | ||
| 28 | { | ||
| 29 | uint32_t lr_reg[8]; | ||
| 30 | double lr_fp[8]; | ||
| 31 | uint32_t lr_vreg[12][4]; | ||
| 32 | uint32_t lr_r1; | ||
| 33 | uint32_t lr_lr; | ||
| 34 | } La_ppc32_regs; | ||
| 35 | |||
| 36 | /* Return values for calls from PLT on PPC32. */ | ||
| 37 | typedef struct La_ppc32_retval | ||
| 38 | { | ||
| 39 | uint32_t lrv_r3; | ||
| 40 | uint32_t lrv_r4; | ||
| 41 | double lrv_fp[8]; | ||
| 42 | uint32_t lrv_v2[4]; | ||
| 43 | } La_ppc32_retval; | ||
| 44 | |||
| 45 | |||
| 46 | __BEGIN_DECLS | ||
| 47 | |||
| 48 | extern Elf32_Addr la_ppc32_gnu_pltenter (Elf32_Sym *__sym, | ||
| 49 | 					 unsigned int __ndx, | ||
| 50 | 					 uintptr_t *__refcook, | ||
| 51 | 					 uintptr_t *__defcook, | ||
| 52 | 					 La_ppc32_regs *__regs, | ||
| 53 | 					 unsigned int *__flags, | ||
| 54 | 					 const char *__symname, | ||
| 55 | 					 long int *__framesizep); | ||
| 56 | extern unsigned int la_ppc32_gnu_pltexit (Elf32_Sym *__sym, | ||
| 57 | 					 unsigned int __ndx, | ||
| 58 | 					 uintptr_t *__refcook, | ||
| 59 | 					 uintptr_t *__defcook, | ||
| 60 | 					 const La_ppc32_regs *__inregs, | ||
| 61 | 					 La_ppc32_retval *__outregs, | ||
| 62 | 					 const char *__symname); | ||
| 63 | |||
| 64 | __END_DECLS | ||
| 65 | |||
| 66 | #elif __ELF_NATIVE_CLASS == 64 | ||
| 67 | # if _CALL_ELF != 2 | ||
| 68 | |||
| 69 | /* Registers for entry into PLT on PPC64. */ | ||
| 70 | typedef struct La_ppc64_regs | ||
| 71 | { | ||
| 72 | uint64_t lr_reg[8]; | ||
| 73 | double lr_fp[13]; | ||
| 74 | uint32_t __padding; | ||
| 75 | uint32_t lr_vrsave; | ||
| 76 | uint32_t lr_vreg[12][4]; | ||
| 77 | uint64_t lr_r1; | ||
| 78 | uint64_t lr_lr; | ||
| 79 | } La_ppc64_regs; | ||
| 80 | |||
| 81 | /* Return values for calls from PLT on PPC64. */ | ||
| 82 | typedef struct La_ppc64_retval | ||
| 83 | { | ||
| 84 | uint64_t lrv_r3; | ||
| 85 | uint64_t lrv_r4; | ||
| 86 | double lrv_fp[4];	/* f1-f4, float - complex long double. */ | ||
| 87 | uint32_t lrv_v2[4];	/* v2. */ | ||
| 88 | } La_ppc64_retval; | ||
| 89 | |||
| 90 | |||
| 91 | __BEGIN_DECLS | ||
| 92 | |||
| 93 | extern Elf64_Addr la_ppc64_gnu_pltenter (Elf64_Sym *__sym, | ||
| 94 | 					 unsigned int __ndx, | ||
| 95 | 					 uintptr_t *__refcook, | ||
| 96 | 					 uintptr_t *__defcook, | ||
| 97 | 					 La_ppc64_regs *__regs, | ||
| 98 | 					 unsigned int *__flags, | ||
| 99 | 					 const char *__symname, | ||
| 100 | 					 long int *__framesizep); | ||
| 101 | extern unsigned int la_ppc64_gnu_pltexit (Elf64_Sym *__sym, | ||
| 102 | 					 unsigned int __ndx, | ||
| 103 | 					 uintptr_t *__refcook, | ||
| 104 | 					 uintptr_t *__defcook, | ||
| 105 | 					 const La_ppc64_regs *__inregs, | ||
| 106 | 					 La_ppc64_retval *__outregs, | ||
| 107 | 					 const char *__symname); | ||
| 108 | |||
| 109 | __END_DECLS | ||
| 110 | |||
| 111 | # else | ||
| 112 | |||
| 113 | /* Registers for entry into PLT on PPC64 in the ELFv2 ABI. */ | ||
| 114 | typedef struct La_ppc64v2_regs | ||
| 115 | { | ||
| 116 | uint64_t lr_reg[8]; | ||
| 117 | double lr_fp[13]; | ||
| 118 | uint32_t __padding; | ||
| 119 | uint32_t lr_vrsave; | ||
| 120 | uint32_t lr_vreg[12][4] __attribute__ ((aligned (16))); | ||
| 121 | uint64_t lr_r1; | ||
| 122 | uint64_t lr_lr; | ||
| 123 | } La_ppc64v2_regs; | ||
| 124 | |||
| 125 | /* Return values for calls from PLT on PPC64 in the ELFv2 ABI. */ | ||
| 126 | typedef struct La_ppc64v2_retval | ||
| 127 | { | ||
| 128 | uint64_t lrv_r3; | ||
| 129 | uint64_t lrv_r4; | ||
| 130 | double lrv_fp[10]; | ||
| 131 | uint32_t lrv_vreg[8][4] __attribute__ ((aligned (16))); | ||
| 132 | } La_ppc64v2_retval; | ||
| 133 | |||
| 134 | |||
| 135 | __BEGIN_DECLS | ||
| 136 | |||
| 137 | extern Elf64_Addr la_ppc64v2_gnu_pltenter (Elf64_Sym *__sym, | ||
| 138 | 					 unsigned int __ndx, | ||
| 139 | 					 uintptr_t *__refcook, | ||
| 140 | 					 uintptr_t *__defcook, | ||
| 141 | 					 La_ppc64v2_regs *__regs, | ||
| 142 | 					 unsigned int *__flags, | ||
| 143 | 					 const char *__symname, | ||
| 144 | 					 long int *__framesizep); | ||
| 145 | extern unsigned int la_ppc64v2_gnu_pltexit (Elf64_Sym *__sym, | ||
| 146 | 					 unsigned int __ndx, | ||
| 147 | 					 uintptr_t *__refcook, | ||
| 148 | 					 uintptr_t *__defcook, | ||
| 149 | 					 const La_ppc64v2_regs *__inregs, | ||
| 150 | 					 La_ppc64v2_retval *__outregs, | ||
| 151 | 					 const char *__symname); | ||
| 152 | |||
| 153 | __END_DECLS | ||
| 154 | |||
| 155 | # endif | ||
| 156 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabi/bits/long-double.h deleted-25| ... | @@ -1,25 +0,0 @@ | ||
| 1 | /* Properties of long double type. ldbl-opt version. | ||
| 2 | Copyright (C) 2016-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef __NO_LONG_DOUBLE_MATH | ||
| 20 | # define __LONG_DOUBLE_MATH_OPTIONAL	1 | ||
| 21 | # ifndef __LONG_DOUBLE_128__ | ||
| 22 | # define __NO_LONG_DOUBLE_MATH		1 | ||
| 23 | # endif | ||
| 24 | #endif | ||
| 25 | #define __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI 0 | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabi/bits/mman.h deleted-51| ... | @@ -1,51 +0,0 @@ | ||
| 1 | /* Definitions for POSIX memory map interface. Linux/PowerPC version. | ||
| 2 | Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_MMAN_H | ||
| 20 | # error "Never use <bits/mman.h> directly; include <sys/mman.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* The following definitions basically come from the kernel headers. | ||
| 24 | But the kernel header is not namespace clean. */ | ||
| 25 | |||
| 26 | #define PROT_SAO	0x10		/* Strong Access Ordering. */ | ||
| 27 | |||
| 28 | /* These are Linux-specific. */ | ||
| 29 | #define MAP_GROWSDOWN	0x00100		/* Stack-like segment. */ | ||
| 30 | #define MAP_DENYWRITE	0x00800		/* ETXTBSY */ | ||
| 31 | #define MAP_EXECUTABLE	0x01000		/* Mark it as an executable. */ | ||
| 32 | #define MAP_LOCKED	0x00080		/* Lock the mapping. */ | ||
| 33 | #define MAP_NORESERVE	0x00040		/* Don't check for reservations. */ | ||
| 34 | #define MAP_POPULATE	0x08000		/* Populate (prefault) pagetables. */ | ||
| 35 | #define MAP_NONBLOCK	0x10000		/* Do not block on IO. */ | ||
| 36 | #define MAP_STACK	0x20000		/* Allocation is for a stack. */ | ||
| 37 | #define MAP_HUGETLB	0x40000		/* Create huge page mapping. */ | ||
| 38 | #define MAP_SYNC	0x80000		/* Perform synchronous page | ||
| 39 | 					 faults for the mapping. */ | ||
| 40 | #define MAP_FIXED_NOREPLACE 0x100000	/* MAP_FIXED but do not unmap | ||
| 41 | 					 underlying mapping. */ | ||
| 42 | |||
| 43 | /* Flags for `mlockall'. */ | ||
| 44 | #define MCL_CURRENT	0x2000		/* Lock all currently mapped pages. */ | ||
| 45 | #define MCL_FUTURE	0x4000		/* Lock all additions to address | ||
| 46 | 					 space. */ | ||
| 47 | #define MCL_ONFAULT	0x8000		/* Lock all pages that are | ||
| 48 | 					 faulted in. */ | ||
| 49 | |||
| 50 | /* Include generic Linux declarations. */ | ||
| 51 | #include <bits/mman-linux.h> | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabi/bits/procfs.h deleted-49| ... | @@ -1,49 +0,0 @@ | ||
| 1 | /* Types for registers for sys/procfs.h. PowerPC version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_PROCFS_H | ||
| 20 | # error "Never include <bits/procfs.h> directly; use <sys/procfs.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <signal.h> | ||
| 24 | #include <sys/ucontext.h> | ||
| 25 | |||
| 26 | /* These definitions are normally provided by ucontext.h via | ||
| 27 | asm/sigcontext.h, asm/ptrace.h, and asm/elf.h. Otherwise we define | ||
| 28 | them here. */ | ||
| 29 | #if !defined __PPC64_ELF_H && !defined _ASM_POWERPC_ELF_H | ||
| 30 | #define ELF_NGREG 48 /* includes nip, msr, lr, etc. */ | ||
| 31 | #define ELF_NFPREG 33 /* includes fpscr */ | ||
| 32 | #if __WORDSIZE == 32 | ||
| 33 | # define ELF_NVRREG 33 /* includes vscr */ | ||
| 34 | #else | ||
| 35 | # define ELF_NVRREG 34 /* includes vscr */ | ||
| 36 | #endif | ||
| 37 | |||
| 38 | typedef unsigned long elf_greg_t; | ||
| 39 | typedef elf_greg_t elf_gregset_t[ELF_NGREG]; | ||
| 40 | |||
| 41 | typedef double elf_fpreg_t; | ||
| 42 | typedef elf_fpreg_t elf_fpregset_t[ELF_NFPREG]; | ||
| 43 | |||
| 44 | /* Altivec registers */ | ||
| 45 | typedef struct { | ||
| 46 | unsigned int u[4]; | ||
| 47 | } __attribute__ ((__aligned__ (16))) elf_vrreg_t; | ||
| 48 | typedef elf_vrreg_t elf_vrregset_t[ELF_NVRREG]; | ||
| 49 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabi/bits/pthread_stack_min.h deleted-21| ... | @@ -1,21 +0,0 @@ | ||
| 1 | /* Definition of PTHREAD_STACK_MIN. Linux/PPC version. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public License as | ||
| 7 | published by the Free Software Foundation; either version 2.1 of the | ||
| 8 | License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; see the file COPYING.LIB. If | ||
| 17 | not, see <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* Minimum size for a thread. At least two pages for systems with 64k | ||
| 20 | pages. */ | ||
| 21 | #define PTHREAD_STACK_MIN	131072 | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabi/bits/rseq.h deleted-37| ... | @@ -1,37 +0,0 @@ | ||
| 1 | /* Restartable Sequences Linux powerpc architecture header. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_RSEQ_H | ||
| 19 | # error "Never use <bits/rseq.h> directly; include <sys/rseq.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* RSEQ_SIG is a signature required before each abort handler code. | ||
| 23 | |||
| 24 | It is a 32-bit value that maps to actual architecture code compiled | ||
| 25 | into applications and libraries. It needs to be defined for each | ||
| 26 | architecture. When choosing this value, it needs to be taken into | ||
| 27 | account that generating invalid instructions may have ill effects on | ||
| 28 | tools like objdump, and may also have impact on the CPU speculative | ||
| 29 | execution efficiency in some cases. | ||
| 30 | |||
| 31 | RSEQ_SIG uses the following trap instruction: | ||
| 32 | |||
| 33 | powerpc-be: 0f e5 00 0b twui r5,11 | ||
| 34 | powerpc64-le: 0b 00 e5 0f twui r5,11 | ||
| 35 | powerpc64-be: 0f e5 00 0b twui r5,11 */ | ||
| 36 | |||
| 37 | #define RSEQ_SIG 0x0fe5000b | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabi/bits/setjmp.h deleted-50| ... | @@ -1,50 +0,0 @@ | ||
| 1 | /* Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | /* Define the machine-dependent type `jmp_buf'. PowerPC version. */ | ||
| 19 | #ifndef _BITS_SETJMP_H | ||
| 20 | #define _BITS_SETJMP_H 1 | ||
| 21 | |||
| 22 | #if !defined _SETJMP_H && !defined _PTHREAD_H | ||
| 23 | # error "Never include <bits/setjmp.h> directly; use <setjmp.h> instead." | ||
| 24 | #endif | ||
| 25 | |||
| 26 | /* The previous bits/setjmp.h had __jmp_buf defined as a structure. | ||
| 27 | We use an array of 'long int' instead, to make writing the | ||
| 28 | assembler easier. Naturally, user code should not depend on | ||
| 29 | either representation. */ | ||
| 30 | |||
| 31 | #include <bits/wordsize.h> | ||
| 32 | |||
| 33 | /* The current powerpc 32-bit Altivec ABI specifies for SVR4 ABI and EABI | ||
| 34 | the vrsave must be at byte 248 & v20 at byte 256. So we must pad this | ||
| 35 | correctly on 32 bit. It also insists that vecregs are only guaranteed | ||
| 36 | 4 byte alignment so we need to use vperm in the setjmp/longjmp routines. | ||
| 37 | We have to version the code because members like int __mask_was_saved | ||
| 38 | in the jmp_buf will move as jmp_buf is now larger than 248 bytes. We | ||
| 39 | cannot keep the altivec jmp_buf backward compatible with the jmp_buf. */ | ||
| 40 | #ifndef	_ASM | ||
| 41 | # if __WORDSIZE == 64 | ||
| 42 | typedef long int __jmp_buf[64] __attribute__ ((__aligned__ (16))); | ||
| 43 | # else | ||
| 44 | /* The alignment is not essential, i.e.the buffer can be copied to a 4 byte | ||
| 45 | aligned buffer as per the ABI it is just added for performance reasons. */ | ||
| 46 | typedef long int __jmp_buf[64 + (12 * 4)] __attribute__ ((__aligned__ (16))); | ||
| 47 | # endif | ||
| 48 | #endif | ||
| 49 | |||
| 50 | #endif /* bits/setjmp.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabi/bits/sigstack.h deleted-37| ... | @@ -1,37 +0,0 @@ | ||
| 1 | /* sigstack, sigaltstack definitions. | ||
| 2 | Copyright (C) 1998-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_SIGSTACK_H | ||
| 20 | #define _BITS_SIGSTACK_H 1 | ||
| 21 | |||
| 22 | #if !defined _SIGNAL_H && !defined _SYS_UCONTEXT_H | ||
| 23 | # error "Never include this file directly. Use <signal.h> instead" | ||
| 24 | #endif | ||
| 25 | |||
| 26 | #ifdef __powerpc64__ | ||
| 27 | #define MINSIGSTKSZ	8192 | ||
| 28 | #define SIGSTKSZ	32768 | ||
| 29 | #else | ||
| 30 | /* Minimum stack size for a signal handler. */ | ||
| 31 | #define MINSIGSTKSZ	4096 | ||
| 32 | |||
| 33 | /* System default stack size. */ | ||
| 34 | #define SIGSTKSZ	16384 | ||
| 35 | #endif | ||
| 36 | |||
| 37 | #endif /* bits/sigstack.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabi/bits/socket-constants.h deleted-70| ... | @@ -1,70 +0,0 @@ | ||
| 1 | /* Socket constants which vary among Linux architectures. Version for POWER. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SOCKET_H | ||
| 20 | # error "Never include <bits/socket-constants.h> directly; use <sys/socket.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #define SOL_SOCKET 1 | ||
| 24 | #define SO_ACCEPTCONN 30 | ||
| 25 | #define SO_BROADCAST 6 | ||
| 26 | #define SO_DONTROUTE 5 | ||
| 27 | #define SO_ERROR 4 | ||
| 28 | #define SO_KEEPALIVE 9 | ||
| 29 | #define SO_LINGER 13 | ||
| 30 | #define SO_OOBINLINE 10 | ||
| 31 | #define SO_RCVBUF 8 | ||
| 32 | #define SO_RCVLOWAT 16 | ||
| 33 | #define SO_REUSEADDR 2 | ||
| 34 | #define SO_SNDBUF 7 | ||
| 35 | #define SO_SNDLOWAT 17 | ||
| 36 | #define SO_TYPE 3 | ||
| 37 | |||
| 38 | #if __TIMESIZE == 64 | ||
| 39 | # define SO_RCVTIMEO 18 | ||
| 40 | # define SO_SNDTIMEO 19 | ||
| 41 | # define SO_TIMESTAMP 29 | ||
| 42 | # define SO_TIMESTAMPNS 35 | ||
| 43 | # define SO_TIMESTAMPING 37 | ||
| 44 | #else | ||
| 45 | # define SO_RCVTIMEO_OLD 18 | ||
| 46 | # define SO_SNDTIMEO_OLD 19 | ||
| 47 | # define SO_RCVTIMEO_NEW 66 | ||
| 48 | # define SO_SNDTIMEO_NEW 67 | ||
| 49 | |||
| 50 | # define SO_TIMESTAMP_OLD 29 | ||
| 51 | # define SO_TIMESTAMPNS_OLD 35 | ||
| 52 | # define SO_TIMESTAMPING_OLD 37 | ||
| 53 | # define SO_TIMESTAMP_NEW 63 | ||
| 54 | # define SO_TIMESTAMPNS_NEW 64 | ||
| 55 | # define SO_TIMESTAMPING_NEW 65 | ||
| 56 | |||
| 57 | # ifdef __USE_TIME64_REDIRECTS | ||
| 58 | # define SO_RCVTIMEO SO_RCVTIMEO_NEW | ||
| 59 | # define SO_SNDTIMEO SO_SNDTIMEO_NEW | ||
| 60 | # define SO_TIMESTAMP SO_TIMESTAMP_NEW | ||
| 61 | # define SO_TIMESTAMPNS SO_TIMESTAMPNS_NEW | ||
| 62 | # define SO_TIMESTAMPING SO_TIMESTAMPING_NEW | ||
| 63 | # else | ||
| 64 | # define SO_RCVTIMEO SO_RCVTIMEO_OLD | ||
| 65 | # define SO_SNDTIMEO SO_SNDTIMEO_OLD | ||
| 66 | # define SO_TIMESTAMP SO_TIMESTAMP_OLD | ||
| 67 | # define SO_TIMESTAMPNS SO_TIMESTAMPNS_OLD | ||
| 68 | # define SO_TIMESTAMPING SO_TIMESTAMPING_OLD | ||
| 69 | # endif | ||
| 70 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabi/bits/struct_mutex.h deleted-63| ... | @@ -1,63 +0,0 @@ | ||
| 1 | /* PowerPC internal mutex struct definitions. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <http://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _THREAD_MUTEX_INTERNAL_H | ||
| 20 | #define _THREAD_MUTEX_INTERNAL_H 1 | ||
| 21 | |||
| 22 | struct __pthread_mutex_s | ||
| 23 | { | ||
| 24 | int __lock; | ||
| 25 | unsigned int __count; | ||
| 26 | int __owner; | ||
| 27 | #if __WORDSIZE == 64 | ||
| 28 | unsigned int __nusers; | ||
| 29 | #endif | ||
| 30 | /* KIND must stay at this position in the structure to maintain | ||
| 31 | binary compatibility with static initializers. */ | ||
| 32 | int __kind; | ||
| 33 | #if __WORDSIZE == 64 | ||
| 34 | short __spins; | ||
| 35 | short __elision; | ||
| 36 | __pthread_list_t __list; | ||
| 37 | # define __PTHREAD_MUTEX_HAVE_PREV 1 | ||
| 38 | #else | ||
| 39 | unsigned int __nusers; | ||
| 40 | __extension__ union | ||
| 41 | { | ||
| 42 | struct | ||
| 43 | { | ||
| 44 | short __espins; | ||
| 45 | short __elision; | ||
| 46 | # define __spins __elision_data.__espins | ||
| 47 | # define __elision __elision_data.__elision | ||
| 48 | } __elision_data; | ||
| 49 | __pthread_slist_t __list; | ||
| 50 | }; | ||
| 51 | # define __PTHREAD_MUTEX_HAVE_PREV 0 | ||
| 52 | #endif | ||
| 53 | }; | ||
| 54 | |||
| 55 | #if __WORDSIZE == 64 | ||
| 56 | # define __PTHREAD_MUTEX_INITIALIZER(__kind) \ | ||
| 57 | 0, 0, 0, 0, __kind, 0, 0, { 0, 0 } | ||
| 58 | #else | ||
| 59 | # define __PTHREAD_MUTEX_INITIALIZER(__kind) \ | ||
| 60 | 0, 0, 0, __kind, 0, { { 0, 0 } } | ||
| 61 | #endif | ||
| 62 | |||
| 63 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabi/bits/struct_rwlock.h deleted-61| ... | @@ -1,61 +0,0 @@ | ||
| 1 | /* PowerPC internal rwlock struct definitions. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library; if not, see | ||
| 18 | <http://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifndef _RWLOCK_INTERNAL_H | ||
| 21 | #define _RWLOCK_INTERNAL_H | ||
| 22 | |||
| 23 | struct __pthread_rwlock_arch_t | ||
| 24 | { | ||
| 25 | unsigned int __readers; | ||
| 26 | unsigned int __writers; | ||
| 27 | unsigned int __wrphase_futex; | ||
| 28 | unsigned int __writers_futex; | ||
| 29 | unsigned int __pad3; | ||
| 30 | unsigned int __pad4; | ||
| 31 | #if __WORDSIZE == 64 | ||
| 32 | int __cur_writer; | ||
| 33 | int __shared; | ||
| 34 | unsigned char __rwelision; | ||
| 35 | unsigned char __pad1[7]; | ||
| 36 | unsigned long int __pad2; | ||
| 37 | /* FLAGS must stay at this position in the structure to maintain | ||
| 38 | binary compatibility. */ | ||
| 39 | unsigned int __flags; | ||
| 40 | # define __PTHREAD_RWLOCK_ELISION_EXTRA 0, {0, 0, 0, 0, 0, 0, 0 } | ||
| 41 | #else | ||
| 42 | unsigned char __rwelision; | ||
| 43 | unsigned char __pad2; | ||
| 44 | unsigned char __shared; | ||
| 45 | /* FLAGS must stay at this position in the structure to maintain | ||
| 46 | binary compatibility. */ | ||
| 47 | unsigned char __flags; | ||
| 48 | int __cur_writer; | ||
| 49 | # define __PTHREAD_RWLOCK_ELISION_EXTRA 0 | ||
| 50 | #endif | ||
| 51 | }; | ||
| 52 | |||
| 53 | #if __WORDSIZE == 64 | ||
| 54 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 55 | 0, 0, 0, 0, 0, 0, 0, 0, __PTHREAD_RWLOCK_ELISION_EXTRA, 0, __flags | ||
| 56 | #else | ||
| 57 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 58 | 0, 0, 0, 0, 0, 0, __PTHREAD_RWLOCK_ELISION_EXTRA, 0, 0, __flags, 0 | ||
| 59 | #endif | ||
| 60 | |||
| 61 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabi/bits/struct_stat.h deleted-231| ... | @@ -1,231 +0,0 @@ | ||
| 1 | /* Definition for struct stat. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #if !defined _SYS_STAT_H && !defined _FCNTL_H | ||
| 20 | # error "Never include <bits/struct_stat.h> directly; use <sys/stat.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef _BITS_STRUCT_STAT_H | ||
| 24 | #define _BITS_STRUCT_STAT_H	1 | ||
| 25 | |||
| 26 | #include <bits/wordsize.h> | ||
| 27 | |||
| 28 | #if __WORDSIZE == 32 | ||
| 29 | struct stat | ||
| 30 | { | ||
| 31 | # ifdef __USE_TIME64_REDIRECTS | ||
| 32 | # include <bits/struct_stat_time64_helper.h> | ||
| 33 | # else | ||
| 34 | __dev_t st_dev;			/* Device. */ | ||
| 35 | # ifndef __USE_FILE_OFFSET64 | ||
| 36 | unsigned short int __pad1; | ||
| 37 | __ino_t st_ino;			/* File serial number.	*/ | ||
| 38 | # else | ||
| 39 | __ino64_t st_ino;			/* File serial number.	*/ | ||
| 40 | # endif | ||
| 41 | __mode_t st_mode;			/* File mode. */ | ||
| 42 | __nlink_t st_nlink;			/* Link count. */ | ||
| 43 | __uid_t st_uid;			/* User ID of the file's owner.	*/ | ||
| 44 | __gid_t st_gid;			/* Group ID of the file's group.*/ | ||
| 45 | __dev_t st_rdev;			/* Device number, if device. */ | ||
| 46 | unsigned short int __pad2; | ||
| 47 | # ifndef __USE_FILE_OFFSET64 | ||
| 48 | __off_t st_size;			/* Size of file, in bytes. */ | ||
| 49 | # else | ||
| 50 | __off64_t st_size;			/* Size of file, in bytes. */ | ||
| 51 | # endif | ||
| 52 | __blksize_t st_blksize;		/* Optimal block size for I/O. */ | ||
| 53 | |||
| 54 | # ifndef __USE_FILE_OFFSET64 | ||
| 55 | __blkcnt_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 56 | # else | ||
| 57 | __blkcnt64_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 58 | # endif | ||
| 59 | # ifdef __USE_XOPEN2K8 | ||
| 60 | /* Nanosecond resolution timestamps are stored in a format | ||
| 61 | equivalent to 'struct timespec'. This is the type used | ||
| 62 | whenever possible but the Unix namespace rules do not allow the | ||
| 63 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 64 | Therefore we have to handle the use of this header in strictly | ||
| 65 | standard-compliant sources special. */ | ||
| 66 | struct timespec st_atim;		/* Time of last access. */ | ||
| 67 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 68 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 69 | # define st_atime st_atim.tv_sec	/* Backward compatibility. */ | ||
| 70 | # define st_mtime st_mtim.tv_sec | ||
| 71 | # define st_ctime st_ctim.tv_sec | ||
| 72 | # else | ||
| 73 | __time_t st_atime;			/* Time of last access. */ | ||
| 74 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 75 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 76 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 77 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 78 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 79 | # endif | ||
| 80 | unsigned long int __glibc_reserved4; | ||
| 81 | unsigned long int __glibc_reserved5; | ||
| 82 | # endif /* __USE_TIME64_REDIRECTS */ | ||
| 83 | }; | ||
| 84 | |||
| 85 | # ifdef __USE_LARGEFILE64 | ||
| 86 | struct stat64 | ||
| 87 | { | ||
| 88 | # ifdef __USE_TIME64_REDIRECTS | ||
| 89 | # include <bits/struct_stat_time64_helper.h> | ||
| 90 | # else | ||
| 91 | __dev_t st_dev;			/* Device. */ | ||
| 92 | __ino64_t st_ino;			/* File serial number.	*/ | ||
| 93 | __mode_t st_mode;			/* File mode. */ | ||
| 94 | __nlink_t st_nlink;			/* Link count. */ | ||
| 95 | __uid_t st_uid;			/* User ID of the file's owner.	*/ | ||
| 96 | __gid_t st_gid;			/* Group ID of the file's group.*/ | ||
| 97 | __dev_t st_rdev;			/* Device number, if device. */ | ||
| 98 | unsigned short int __pad2; | ||
| 99 | __off64_t st_size;			/* Size of file, in bytes. */ | ||
| 100 | __blksize_t st_blksize;		/* Optimal block size for I/O. */ | ||
| 101 | __blkcnt64_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 102 | # ifdef __USE_XOPEN2K8 | ||
| 103 | /* Nanosecond resolution timestamps are stored in a format | ||
| 104 | equivalent to 'struct timespec'. This is the type used | ||
| 105 | whenever possible but the Unix namespace rules do not allow the | ||
| 106 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 107 | Therefore we have to handle the use of this header in strictly | ||
| 108 | standard-compliant sources special. */ | ||
| 109 | struct timespec st_atim;		/* Time of last access. */ | ||
| 110 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 111 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 112 | # define st_atime st_atim.tv_sec	/* Backward compatibility. */ | ||
| 113 | # define st_mtime st_mtim.tv_sec | ||
| 114 | # define st_ctime st_ctim.tv_sec | ||
| 115 | # else | ||
| 116 | __time_t st_atime;			/* Time of last access. */ | ||
| 117 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 118 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 119 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 120 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 121 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 122 | # endif | ||
| 123 | unsigned long int __glibc_reserved4; | ||
| 124 | unsigned long int __glibc_reserved5; | ||
| 125 | # endif /* __USE_TIME64_REDIRECTS */ | ||
| 126 | }; | ||
| 127 | # endif /* __USE_LARGEFILE64 */ | ||
| 128 | |||
| 129 | #else /* __WORDSIZE == 32 */ | ||
| 130 | |||
| 131 | struct stat | ||
| 132 | { | ||
| 133 | __dev_t st_dev;			/* Device. */ | ||
| 134 | # ifndef __USE_FILE_OFFSET64 | ||
| 135 | __ino_t st_ino;			/* File serial number.	*/ | ||
| 136 | # else | ||
| 137 | __ino64_t st_ino;			/* File serial number.	*/ | ||
| 138 | # endif | ||
| 139 | __nlink_t st_nlink;			/* Link count. */ | ||
| 140 | __mode_t st_mode;			/* File mode. */ | ||
| 141 | __uid_t st_uid;			/* User ID of the file's owner.	*/ | ||
| 142 | __gid_t st_gid;			/* Group ID of the file's group.*/ | ||
| 143 | int __pad2; | ||
| 144 | __dev_t st_rdev;			/* Device number, if device. */ | ||
| 145 | # ifndef __USE_FILE_OFFSET64 | ||
| 146 | __off_t st_size;			/* Size of file, in bytes. */ | ||
| 147 | # else | ||
| 148 | __off64_t st_size;			/* Size of file, in bytes. */ | ||
| 149 | # endif | ||
| 150 | __blksize_t st_blksize;		/* Optimal block size for I/O. */ | ||
| 151 | |||
| 152 | # ifndef __USE_FILE_OFFSET64 | ||
| 153 | __blkcnt_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 154 | # else | ||
| 155 | __blkcnt64_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 156 | # endif | ||
| 157 | # ifdef __USE_XOPEN2K8 | ||
| 158 | /* Nanosecond resolution timestamps are stored in a format | ||
| 159 | equivalent to 'struct timespec'. This is the type used | ||
| 160 | whenever possible but the Unix namespace rules do not allow the | ||
| 161 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 162 | Therefore we have to handle the use of this header in strictly | ||
| 163 | standard-compliant sources special. */ | ||
| 164 | struct timespec st_atim;		/* Time of last access. */ | ||
| 165 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 166 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 167 | # define st_atime st_atim.tv_sec	/* Backward compatibility. */ | ||
| 168 | # define st_mtime st_mtim.tv_sec | ||
| 169 | # define st_ctime st_ctim.tv_sec | ||
| 170 | # else | ||
| 171 | __time_t st_atime;			/* Time of last access. */ | ||
| 172 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 173 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 174 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 175 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 176 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 177 | # endif | ||
| 178 | unsigned long int __glibc_reserved4; | ||
| 179 | unsigned long int __glibc_reserved5; | ||
| 180 | unsigned long int __glibc_reserved6; | ||
| 181 | }; | ||
| 182 | |||
| 183 | # ifdef __USE_LARGEFILE64 | ||
| 184 | struct stat64 | ||
| 185 | { | ||
| 186 | __dev_t st_dev;			/* Device. */ | ||
| 187 | __ino64_t st_ino;			/* File serial number.	*/ | ||
| 188 | __nlink_t st_nlink;			/* Link count. */ | ||
| 189 | __mode_t st_mode;			/* File mode. */ | ||
| 190 | __uid_t st_uid;			/* User ID of the file's owner.	*/ | ||
| 191 | __gid_t st_gid;			/* Group ID of the file's group.*/ | ||
| 192 | int __pad2; | ||
| 193 | __dev_t st_rdev;			/* Device number, if device. */ | ||
| 194 | __off64_t st_size;			/* Size of file, in bytes. */ | ||
| 195 | __blksize_t st_blksize;		/* Optimal block size for I/O. */ | ||
| 196 | __blkcnt64_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 197 | # ifdef __USE_XOPEN2K8 | ||
| 198 | /* Nanosecond resolution timestamps are stored in a format | ||
| 199 | equivalent to 'struct timespec'. This is the type used | ||
| 200 | whenever possible but the Unix namespace rules do not allow the | ||
| 201 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 202 | Therefore we have to handle the use of this header in strictly | ||
| 203 | standard-compliant sources special. */ | ||
| 204 | struct timespec st_atim;		/* Time of last access. */ | ||
| 205 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 206 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 207 | # define st_atime st_atim.tv_sec	/* Backward compatibility. */ | ||
| 208 | # define st_mtime st_mtim.tv_sec | ||
| 209 | # define st_ctime st_ctim.tv_sec | ||
| 210 | # else | ||
| 211 | __time_t st_atime;			/* Time of last access. */ | ||
| 212 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 213 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 214 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 215 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 216 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 217 | # endif | ||
| 218 | unsigned long int __glibc_reserved4; | ||
| 219 | unsigned long int __glibc_reserved5; | ||
| 220 | unsigned long int __glibc_reserved6; | ||
| 221 | }; | ||
| 222 | # endif /* __USE_LARGEFILE64 */ | ||
| 223 | #endif | ||
| 224 | |||
| 225 | /* Tell code we have these members. */ | ||
| 226 | #define	_STATBUF_ST_BLKSIZE | ||
| 227 | #define _STATBUF_ST_RDEV | ||
| 228 | /* Nanosecond resolution time values are supported. */ | ||
| 229 | #define _STATBUF_ST_NSEC | ||
| 230 | |||
| 231 | #endif /* _BITS_STRUCT_STAT_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabi/bits/termios-baud.h deleted-45| ... | @@ -1,45 +0,0 @@ | ||
| 1 | /* termios baud rate selection definitions. Linux/powerpc version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-baud.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifdef __USE_MISC | ||
| 24 | # define CBAUD	0000377 | ||
| 25 | # define CBAUDEX 0000020 | ||
| 26 | # define CMSPAR 010000000000		/* mark or space (stick) parity */ | ||
| 27 | # define CRTSCTS 020000000000		/* flow control */ | ||
| 28 | #endif | ||
| 29 | |||
| 30 | #define B57600 00020 | ||
| 31 | #define B115200 00021 | ||
| 32 | #define B230400 00022 | ||
| 33 | #define B460800 00023 | ||
| 34 | #define B500000 00024 | ||
| 35 | #define B576000 00025 | ||
| 36 | #define B921600 00026 | ||
| 37 | #define B1000000 00027 | ||
| 38 | #define B1152000 00030 | ||
| 39 | #define B1500000 00031 | ||
| 40 | #define B2000000 00032 | ||
| 41 | #define B2500000 00033 | ||
| 42 | #define B3000000 00034 | ||
| 43 | #define B3500000 00035 | ||
| 44 | #define B4000000 00036 | ||
| 45 | #define __MAX_BAUD B4000000 | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabi/bits/termios-c_cc.h deleted-41| ... | @@ -1,41 +0,0 @@ | ||
| 1 | /* termios c_cc symbolic constant definitions. Linux/powerpc version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-c_cc.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* c_cc characters */ | ||
| 24 | #define VINTR	0 | ||
| 25 | #define VQUIT	1 | ||
| 26 | #define VERASE	2 | ||
| 27 | #define VKILL	3 | ||
| 28 | #define VEOF	4 | ||
| 29 | #define VMIN	5 | ||
| 30 | #define VEOL	6 | ||
| 31 | #define VTIME	7 | ||
| 32 | #define VEOL2	8 | ||
| 33 | #define VSWTC	9 | ||
| 34 | |||
| 35 | #define VWERASE	10 | ||
| 36 | #define VREPRINT	11 | ||
| 37 | #define VSUSP		12 | ||
| 38 | #define VSTART		13 | ||
| 39 | #define VSTOP		14 | ||
| 40 | #define VLNEXT		15 | ||
| 41 | #define VDISCARD	16 | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabi/bits/termios-c_cflag.h deleted-39| ... | @@ -1,39 +0,0 @@ | ||
| 1 | /* termios control mode definitions. Linux/powerpc version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-c_cflag.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #define CSIZE	00001400 | ||
| 24 | #define CS5	00000000 | ||
| 25 | #define CS6	00000400 | ||
| 26 | #define CS7	00001000 | ||
| 27 | #define CS8	00001400 | ||
| 28 | |||
| 29 | #define CSTOPB	00002000 | ||
| 30 | #define CREAD	00004000 | ||
| 31 | #define PARENB	00010000 | ||
| 32 | #define PARODD	00020000 | ||
| 33 | #define HUPCL	00040000 | ||
| 34 | |||
| 35 | #define CLOCAL	00100000 | ||
| 36 | |||
| 37 | #ifdef __USE_MISC | ||
| 38 | # define ADDRB 04000000000 | ||
| 39 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabi/bits/termios-c_iflag.h deleted-38| ... | @@ -1,38 +0,0 @@ | ||
| 1 | /* termios input mode definitions. Linux/powerpc version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-c_iflags.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* c_iflag bits */ | ||
| 24 | #define IGNBRK	0000001 | ||
| 25 | #define BRKINT	0000002 | ||
| 26 | #define IGNPAR	0000004 | ||
| 27 | #define PARMRK	0000010 | ||
| 28 | #define INPCK	0000020 | ||
| 29 | #define ISTRIP	0000040 | ||
| 30 | #define INLCR	0000100 | ||
| 31 | #define IGNCR	0000200 | ||
| 32 | #define ICRNL	0000400 | ||
| 33 | #define IXON	0001000 | ||
| 34 | #define IXOFF	0002000 | ||
| 35 | #define IXANY	0004000 | ||
| 36 | #define IUCLC	0010000 | ||
| 37 | #define IMAXBEL	0020000 | ||
| 38 | #define IUTF8	0040000 | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabi/bits/termios-c_lflag.h deleted-45| ... | @@ -1,45 +0,0 @@ | ||
| 1 | /* termios local mode definitions. Linux/powerpc version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-c_lflag.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* c_lflag bits */ | ||
| 24 | #define ISIG	0x00000080 | ||
| 25 | #define ICANON	0x00000100 | ||
| 26 | #if defined __USE_MISC || (defined __USE_XOPEN && !defined __USE_XOPEN2K) | ||
| 27 | # define XCASE	0x00004000 | ||
| 28 | #endif | ||
| 29 | #define ECHO	0x00000008 | ||
| 30 | #define ECHOE	0x00000002 | ||
| 31 | #define ECHOK	0x00000004 | ||
| 32 | #define ECHONL	0x00000010 | ||
| 33 | #define NOFLSH	0x80000000 | ||
| 34 | #define TOSTOP	0x00400000 | ||
| 35 | #ifdef __USE_MISC | ||
| 36 | # define ECHOCTL	0x00000040 | ||
| 37 | # define ECHOPRT	0x00000020 | ||
| 38 | # define ECHOKE	0x00000001 | ||
| 39 | # define FLUSHO	0x00800000 | ||
| 40 | # define PENDIN	0x20000000 | ||
| 41 | #endif | ||
| 42 | #define IEXTEN	0x00000400 | ||
| 43 | #ifdef __USE_MISC | ||
| 44 | # define EXTPROC 0x10000000 | ||
| 45 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabi/bits/termios-c_oflag.h deleted-65| ... | @@ -1,65 +0,0 @@ | ||
| 1 | /* termios output mode definitions. Linux/powerpc version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-c_oflag.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* c_oflag bits */ | ||
| 24 | #define OPOST	0000001 | ||
| 25 | #define ONLCR	0000002 | ||
| 26 | #define OLCUC	0000004 | ||
| 27 | |||
| 28 | #define OCRNL	0000010 | ||
| 29 | #define ONOCR	0000020 | ||
| 30 | #define ONLRET	0000040 | ||
| 31 | |||
| 32 | #define OFILL	00000100 | ||
| 33 | #define OFDEL	00000200 | ||
| 34 | #if defined __USE_MISC || defined __USE_XOPEN | ||
| 35 | # define NLDLY	00001400 | ||
| 36 | # define NL0	00000000 | ||
| 37 | # define NL1	00000400 | ||
| 38 | # if defined __USE_MISC | ||
| 39 | # define NL2	00001000 | ||
| 40 | # define NL3	00001400 | ||
| 41 | # endif | ||
| 42 | # define TABDLY	00006000 | ||
| 43 | # define TAB0	00000000 | ||
| 44 | # define TAB1	00002000 | ||
| 45 | # define TAB2	00004000 | ||
| 46 | # define TAB3	00006000 | ||
| 47 | # define CRDLY	00030000 | ||
| 48 | # define CR0	00000000 | ||
| 49 | # define CR1	00010000 | ||
| 50 | # define CR2	00020000 | ||
| 51 | # define CR3	00030000 | ||
| 52 | # define FFDLY	00040000 | ||
| 53 | # define FF0	00000000 | ||
| 54 | # define FF1	00040000 | ||
| 55 | # define BSDLY	00100000 | ||
| 56 | # define BS0	00000000 | ||
| 57 | # define BS1	00100000 | ||
| 58 | #endif | ||
| 59 | #define VTDLY	00200000 | ||
| 60 | #define VT0	00000000 | ||
| 61 | #define VT1	00200000 | ||
| 62 | |||
| 63 | #ifdef __USE_MISC | ||
| 64 | # define XTABS	00006000 | ||
| 65 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabi/bits/termios-misc.h deleted-72| ... | @@ -1,72 +0,0 @@ | ||
| 1 | /* termios baud platform specific definitions. Linux/powerpc version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-misc.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifdef __USE_MISC | ||
| 24 | |||
| 25 | struct sgttyb { | ||
| 26 | 	char	sg_ispeed; | ||
| 27 | 	char	sg_ospeed; | ||
| 28 | 	char	sg_erase; | ||
| 29 | 	char	sg_kill; | ||
| 30 | 	short	sg_flags; | ||
| 31 | }; | ||
| 32 | |||
| 33 | struct tchars { | ||
| 34 | 	char	t_intrc; | ||
| 35 | 	char	t_quitc; | ||
| 36 | 	char	t_startc; | ||
| 37 | 	char	t_stopc; | ||
| 38 | 	char	t_eofc; | ||
| 39 | 	char	t_brkc; | ||
| 40 | }; | ||
| 41 | |||
| 42 | struct ltchars { | ||
| 43 | 	char	t_suspc; | ||
| 44 | 	char	t_dsuspc; | ||
| 45 | 	char	t_rprntc; | ||
| 46 | 	char	t_flushc; | ||
| 47 | 	char	t_werasc; | ||
| 48 | 	char	t_lnextc; | ||
| 49 | }; | ||
| 50 | |||
| 51 | /* Used for packet mode */ | ||
| 52 | #define TIOCPKT_DATA		 0 | ||
| 53 | #define TIOCPKT_FLUSHREAD	 1 | ||
| 54 | #define TIOCPKT_FLUSHWRITE	 2 | ||
| 55 | #define TIOCPKT_STOP		 4 | ||
| 56 | #define TIOCPKT_START		 8 | ||
| 57 | #define TIOCPKT_NOSTOP		16 | ||
| 58 | #define TIOCPKT_DOSTOP		32 | ||
| 59 | |||
| 60 | /* c_cc characters */ | ||
| 61 | #define _VINTR	0 | ||
| 62 | #define _VQUIT	1 | ||
| 63 | #define _VERASE	2 | ||
| 64 | #define _VKILL	3 | ||
| 65 | #define _VEOF	4 | ||
| 66 | #define _VMIN	5 | ||
| 67 | #define _VEOL	6 | ||
| 68 | #define _VTIME	7 | ||
| 69 | #define _VEOL2	8 | ||
| 70 | #define _VSWTC	9 | ||
| 71 | |||
| 72 | #endif /* __USE_MISC */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabi/bits/timesize.h deleted-22| ... | @@ -1,22 +0,0 @@ | ||
| 1 | /* Bit size of the time_t type at glibc build time, Linux/PowerPC. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #include <bits/wordsize.h> | ||
| 20 | |||
| 21 | /* Size in bits of the 'time_t' type of the default ABI. */ | ||
| 22 | #define __TIMESIZE	__WORDSIZE | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabi/bits/types/struct_msqid_ds.h deleted-53| ... | @@ -1,53 +0,0 @@ | ||
| 1 | /* Linux/PowerPC implementation of the SysV message struct msqid_ds. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_MSG_H | ||
| 20 | # error "Never use <bits/msq.h> directly; include <sys/msg.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <bits/types/time_t.h> | ||
| 24 | |||
| 25 | /* Structure of record for one message inside the kernel. | ||
| 26 | The type `struct msg' is opaque. */ | ||
| 27 | struct msqid_ds | ||
| 28 | { | ||
| 29 | #ifdef __USE_TIME64_REDIRECTS | ||
| 30 | # include <bits/types/struct_msqid64_ds_helper.h> | ||
| 31 | #else | ||
| 32 | struct ipc_perm msg_perm;	/* structure describing operation permission */ | ||
| 33 | # if __TIMESIZE == 32 | ||
| 34 | unsigned long int __msg_stime_high; | ||
| 35 | __time_t msg_stime;		/* time of last msgsnd command */ | ||
| 36 | unsigned long int __msg_rtime_high; | ||
| 37 | __time_t msg_rtime;		/* time of last msgsnd command */ | ||
| 38 | unsigned long int __msg_ctime_high; | ||
| 39 | __time_t msg_ctime;		/* time of last change */ | ||
| 40 | # else | ||
| 41 | __time_t msg_stime;		/* time of last msgsnd command */ | ||
| 42 | __time_t msg_rtime;		/* time of last msgsnd command */ | ||
| 43 | __time_t msg_ctime;		/* time of last change */ | ||
| 44 | # endif | ||
| 45 | __syscall_ulong_t __msg_cbytes; /* current number of bytes on queue */ | ||
| 46 | msgqnum_t msg_qnum;		/* number of messages currently on queue */ | ||
| 47 | msglen_t msg_qbytes;		/* max number of bytes allowed on queue */ | ||
| 48 | __pid_t msg_lspid;		/* pid of last msgsnd() */ | ||
| 49 | __pid_t msg_lrpid;		/* pid of last msgrcv() */ | ||
| 50 | __syscall_ulong_t __glibc_reserved4; | ||
| 51 | __syscall_ulong_t __glibc_reserved5; | ||
| 52 | #endif | ||
| 53 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabi/bits/types/struct_semid_ds.h deleted-43| ... | @@ -1,43 +0,0 @@ | ||
| 1 | /* PowerPC implementation of the semaphore struct semid_ds. | ||
| 2 | Copyright (C) 1995-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SEM_H | ||
| 20 | # error "Never include <bits/types/struct_semid_ds.h> directly; use <sys/sem.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Data structure describing a set of semaphores. */ | ||
| 24 | struct semid_ds | ||
| 25 | { | ||
| 26 | #ifdef __USE_TIME64_REDIRECTS | ||
| 27 | # include <bits/types/struct_semid64_ds_helper.h> | ||
| 28 | #else | ||
| 29 | struct ipc_perm sem_perm; /* operation permission struct */ | ||
| 30 | # if __TIMESIZE == 32 | ||
| 31 | __syscall_ulong_t __sem_otime_high; | ||
| 32 | __time_t sem_otime; /* last semop() time */ | ||
| 33 | __syscall_ulong_t __sem_ctime_high; | ||
| 34 | __time_t sem_ctime; /* last time changed by semctl() */ | ||
| 35 | # else | ||
| 36 | __time_t sem_otime; /* last semop() time */ | ||
| 37 | __time_t sem_ctime; /* last time changed by semctl() */ | ||
| 38 | # endif | ||
| 39 | __syscall_ulong_t sem_nsems; /* number of semaphores in set */ | ||
| 40 | __syscall_ulong_t __glibc_reserved3; | ||
| 41 | __syscall_ulong_t __glibc_reserved4; | ||
| 42 | #endif | ||
| 43 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabi/bits/types/struct_shmid_ds.h deleted-50| ... | @@ -1,50 +0,0 @@ | ||
| 1 | /* Linux/PowerPC implementation of the shared memory struct shmid_ds. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SHM_H | ||
| 20 | # error "Never include <bits/types/struct_shmid_ds.h> directly; use <sys/shm.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Data structure describing a shared memory segment. */ | ||
| 24 | struct shmid_ds | ||
| 25 | { | ||
| 26 | #ifdef __USE_TIME64_REDIRECTS | ||
| 27 | # include <bits/types/struct_shmid64_ds_helper.h> | ||
| 28 | #else | ||
| 29 | struct ipc_perm shm_perm;		/* operation permission struct */ | ||
| 30 | # if __TIMESIZE == 32 | ||
| 31 | unsigned long int __shm_atime_high; | ||
| 32 | __time_t shm_atime;			/* time of last shmat() */ | ||
| 33 | unsigned long int __shm_dtime_high; | ||
| 34 | __time_t shm_dtime;			/* time of last shmdt() */ | ||
| 35 | unsigned long int __shm_ctime_high; | ||
| 36 | __time_t shm_ctime;			/* time of last change by shmctl() */ | ||
| 37 | unsigned long int __glibc_reserved4; | ||
| 38 | # else | ||
| 39 | __time_t shm_atime;			/* time of last shmat() */ | ||
| 40 | __time_t shm_dtime;			/* time of last shmdt() */ | ||
| 41 | __time_t shm_ctime;			/* time of last change by shmctl() */ | ||
| 42 | # endif | ||
| 43 | size_t shm_segsz;			/* size of segment in bytes */ | ||
| 44 | __pid_t shm_cpid;			/* pid of creator */ | ||
| 45 | __pid_t shm_lpid;			/* pid of last shmop */ | ||
| 46 | shmatt_t shm_nattch;		/* number of current attaches */ | ||
| 47 | __syscall_ulong_t __glibc_reserved5; | ||
| 48 | __syscall_ulong_t __glibc_reserved6; | ||
| 49 | #endif | ||
| 50 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabi/bits/typesizes.h deleted-95| ... | @@ -1,95 +0,0 @@ | ||
| 1 | /* bits/typesizes.h -- underlying types for *_t. PowerPC version. | ||
| 2 | Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_TYPES_H | ||
| 20 | # error "Never include <bits/typesizes.h> directly; use <sys/types.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef	_BITS_TYPESIZES_H | ||
| 24 | #define	_BITS_TYPESIZES_H	1 | ||
| 25 | |||
| 26 | /* See <bits/types.h> for the meaning of these macros. This file exists so | ||
| 27 | that <bits/types.h> need not vary across different GNU platforms. */ | ||
| 28 | |||
| 29 | #define __DEV_T_TYPE		__UQUAD_TYPE | ||
| 30 | #define __UID_T_TYPE		__U32_TYPE | ||
| 31 | #define __GID_T_TYPE		__U32_TYPE | ||
| 32 | #define __INO_T_TYPE		__ULONGWORD_TYPE | ||
| 33 | #define __INO64_T_TYPE		__UQUAD_TYPE | ||
| 34 | #define __MODE_T_TYPE		__U32_TYPE | ||
| 35 | #define __NLINK_T_TYPE		__UWORD_TYPE | ||
| 36 | #define __OFF_T_TYPE		__SLONGWORD_TYPE | ||
| 37 | #define __OFF64_T_TYPE		__SQUAD_TYPE | ||
| 38 | #define __PID_T_TYPE		__S32_TYPE | ||
| 39 | #define __RLIM_T_TYPE		__ULONGWORD_TYPE | ||
| 40 | #define __RLIM64_T_TYPE		__UQUAD_TYPE | ||
| 41 | #define	__BLKCNT_T_TYPE		__SLONGWORD_TYPE | ||
| 42 | #define	__BLKCNT64_T_TYPE	__SQUAD_TYPE | ||
| 43 | #define	__FSBLKCNT_T_TYPE	__ULONGWORD_TYPE | ||
| 44 | #define	__FSBLKCNT64_T_TYPE	__UQUAD_TYPE | ||
| 45 | #define	__FSFILCNT_T_TYPE	__ULONGWORD_TYPE | ||
| 46 | #define	__FSFILCNT64_T_TYPE	__UQUAD_TYPE | ||
| 47 | #define	__FSWORD_T_TYPE		__SWORD_TYPE | ||
| 48 | #define	__ID_T_TYPE		__U32_TYPE | ||
| 49 | #define __CLOCK_T_TYPE		__SLONGWORD_TYPE | ||
| 50 | #define __TIME_T_TYPE		__SLONGWORD_TYPE | ||
| 51 | #define __USECONDS_T_TYPE	__U32_TYPE | ||
| 52 | #define __SUSECONDS_T_TYPE	__SLONGWORD_TYPE | ||
| 53 | #define __SUSECONDS64_T_TYPE	__SQUAD_TYPE | ||
| 54 | #define __DADDR_T_TYPE		__S32_TYPE | ||
| 55 | #define __KEY_T_TYPE		__S32_TYPE | ||
| 56 | #define __CLOCKID_T_TYPE	__S32_TYPE | ||
| 57 | #define __TIMER_T_TYPE		void * | ||
| 58 | #define __BLKSIZE_T_TYPE	__SLONGWORD_TYPE | ||
| 59 | #define __FSID_T_TYPE		struct { int __val[2]; } | ||
| 60 | #define __SSIZE_T_TYPE		__SWORD_TYPE | ||
| 61 | #define __SYSCALL_SLONG_TYPE	__SLONGWORD_TYPE | ||
| 62 | #define __SYSCALL_ULONG_TYPE	__ULONGWORD_TYPE | ||
| 63 | #define __CPU_MASK_TYPE 	__ULONGWORD_TYPE | ||
| 64 | |||
| 65 | #ifdef __LP64__ | ||
| 66 | /* Tell the libc code that off_t and off64_t are actually the same type | ||
| 67 | for all ABI purposes, even if possibly expressed as different base types | ||
| 68 | for C type-checking purposes. */ | ||
| 69 | # define __OFF_T_MATCHES_OFF64_T	1 | ||
| 70 | |||
| 71 | /* Same for ino_t and ino64_t. */ | ||
| 72 | # define __INO_T_MATCHES_INO64_T	1 | ||
| 73 | |||
| 74 | /* And for rlim_t and rlim64_t. */ | ||
| 75 | # define __RLIM_T_MATCHES_RLIM64_T	1 | ||
| 76 | |||
| 77 | /* And for fsblkcnt_t, fsblkcnt64_t, fsfilcnt_t and fsfilcnt64_t. */ | ||
| 78 | # define __STATFS_MATCHES_STATFS64 1 | ||
| 79 | |||
| 80 | /* And for getitimer, setitimer and rusage */ | ||
| 81 | # define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 1 | ||
| 82 | #else | ||
| 83 | # define __RLIM_T_MATCHES_RLIM64_T	0 | ||
| 84 | |||
| 85 | # define __STATFS_MATCHES_STATFS64 0 | ||
| 86 | |||
| 87 | /* And for getitimer, setitimer and rusage */ | ||
| 88 | # define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 0 | ||
| 89 | #endif | ||
| 90 | |||
| 91 | /* Number of descriptors that can fit in an `fd_set'. */ | ||
| 92 | #define	__FD_SETSIZE		1024 | ||
| 93 | |||
| 94 | |||
| 95 | #endif /* bits/typesizes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabi/bits/wordsize.h deleted-10| ... | @@ -1,10 +0,0 @@ | ||
| 1 | /* Determine the wordsize from the preprocessor defines. */ | ||
| 2 | |||
| 3 | #if defined __powerpc64__ | ||
| 4 | # define __WORDSIZE	64 | ||
| 5 | #else | ||
| 6 | # define __WORDSIZE	32 | ||
| 7 | # define __WORDSIZE32_SIZE_ULONG	0 | ||
| 8 | # define __WORDSIZE32_PTRDIFF_LONG	0 | ||
| 9 | #endif | ||
| 10 | #define __WORDSIZE_TIME64_COMPAT32	1 | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabi/fpu_control.h deleted-114| ... | @@ -1,114 +0,0 @@ | ||
| 1 | /* FPU control word definitions. PowerPC version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _FPU_CONTROL_H | ||
| 20 | #define _FPU_CONTROL_H | ||
| 21 | |||
| 22 | #if defined __SPE__ || (defined __NO_FPRS__ && !defined _SOFT_FLOAT) | ||
| 23 | # error "SPE/e500 is no longer supported" | ||
| 24 | #endif | ||
| 25 | |||
| 26 | #ifdef _SOFT_FLOAT | ||
| 27 | |||
| 28 | # define _FPU_RESERVED 0xffffffff | ||
| 29 | # define _FPU_DEFAULT 0x00000000 /* Default value. */ | ||
| 30 | typedef unsigned int fpu_control_t; | ||
| 31 | # define _FPU_GETCW(cw) (cw) = 0 | ||
| 32 | # define _FPU_SETCW(cw) (void) (cw) | ||
| 33 | extern fpu_control_t __fpu_control; | ||
| 34 | |||
| 35 | #else /* PowerPC 6xx floating-point. */ | ||
| 36 | |||
| 37 | /* rounding control */ | ||
| 38 | # define _FPU_RC_NEAREST 0x00 /* RECOMMENDED */ | ||
| 39 | # define _FPU_RC_DOWN 0x03 | ||
| 40 | # define _FPU_RC_UP 0x02 | ||
| 41 | # define _FPU_RC_ZERO 0x01 | ||
| 42 | |||
| 43 | # define _FPU_MASK_RC (_FPU_RC_NEAREST|_FPU_RC_DOWN|_FPU_RC_UP|_FPU_RC_ZERO) | ||
| 44 | |||
| 45 | # define _FPU_MASK_NI 0x04 /* non-ieee mode */ | ||
| 46 | |||
| 47 | /* masking of interrupts */ | ||
| 48 | # define _FPU_MASK_ZM 0x10 /* zero divide */ | ||
| 49 | # define _FPU_MASK_OM 0x40 /* overflow */ | ||
| 50 | # define _FPU_MASK_UM 0x20 /* underflow */ | ||
| 51 | # define _FPU_MASK_XM 0x08 /* inexact */ | ||
| 52 | # define _FPU_MASK_IM 0x80 /* invalid operation */ | ||
| 53 | |||
| 54 | # define _FPU_RESERVED 0xffffff00 /* These bits are reserved are not changed. */ | ||
| 55 | |||
| 56 | /* The fdlibm code requires no interrupts for exceptions. */ | ||
| 57 | # define _FPU_DEFAULT 0x00000000 /* Default value. */ | ||
| 58 | |||
| 59 | /* IEEE: same as above, but (some) exceptions; | ||
| 60 | we leave the 'inexact' exception off. | ||
| 61 | */ | ||
| 62 | # define _FPU_IEEE 0x000000f0 | ||
| 63 | |||
| 64 | /* Type of the control word. */ | ||
| 65 | typedef unsigned int fpu_control_t; | ||
| 66 | |||
| 67 | /* Macros for accessing the hardware control word. */ | ||
| 68 | # define _FPU_GETCW(cw)						\ | ||
| 69 | ({union { double __d; unsigned long long __ll; } __u;		\ | ||
| 70 | __asm__ __volatile__("mffs %0" : "=f" (__u.__d));		\ | ||
| 71 | (cw) = (fpu_control_t) __u.__ll;				\ | ||
| 72 | (fpu_control_t) __u.__ll;					\ | ||
| 73 | }) | ||
| 74 | |||
| 75 | # define _FPU_GET_RC_ISA300()						\ | ||
| 76 | ({union { double __d; unsigned long long __ll; } __u;			\ | ||
| 77 | __asm__ __volatile__(						\ | ||
| 78 | ".machine push; .machine \"power9\"; mffsl %0; .machine pop" 	\ | ||
| 79 | : "=f" (__u.__d));						\ | ||
| 80 | (fpu_control_t) (__u.__ll & _FPU_MASK_RC);				\ | ||
| 81 | }) | ||
| 82 | |||
| 83 | # ifdef _ARCH_PWR9 | ||
| 84 | # define _FPU_GET_RC() _FPU_GET_RC_ISA300() | ||
| 85 | # elif defined __BUILTIN_CPU_SUPPORTS__ | ||
| 86 | # define _FPU_GET_RC()							\ | ||
| 87 | ({fpu_control_t __rc;							\ | ||
| 88 | __rc = __glibc_likely (__builtin_cpu_supports ("arch_3_00"))	\ | ||
| 89 | ? _FPU_GET_RC_ISA300 ()						\ | ||
| 90 | : _FPU_GETCW (__rc) & _FPU_MASK_RC;				\ | ||
| 91 | __rc;								\ | ||
| 92 | }) | ||
| 93 | # else | ||
| 94 | # define _FPU_GET_RC()						\ | ||
| 95 | ({fpu_control_t __rc = _FPU_GETCW (__rc) & _FPU_MASK_RC;	\ | ||
| 96 | __rc;							\ | ||
| 97 | }) | ||
| 98 | # endif | ||
| 99 | |||
| 100 | # define _FPU_SETCW(cw)						\ | ||
| 101 | { union { double __d; unsigned long long __ll; } __u;		\ | ||
| 102 | register double __fr;					\ | ||
| 103 | __u.__ll = 0xfff80000LL << 32; /* This is a QNaN. */	\ | ||
| 104 | __u.__ll |= (cw) & 0xffffffffLL;				\ | ||
| 105 | __fr = __u.__d;						\ | ||
| 106 | __asm__ __volatile__("mtfsf 255,%0" : : "f" (__fr));	\ | ||
| 107 | } | ||
| 108 | |||
| 109 | /* Default control word set at startup. */ | ||
| 110 | extern fpu_control_t __fpu_control; | ||
| 111 | |||
| 112 | #endif /* PowerPC 6xx floating-point. */ | ||
| 113 | |||
| 114 | #endif /* _FPU_CONTROL_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabi/gnu/lib-names-32.h deleted-26| ... | @@ -1,26 +0,0 @@ | ||
| 1 | /* This file is automatically generated. */ | ||
| 2 | #ifndef __GNU_LIB_NAMES_H | ||
| 3 | # error "Never use <gnu/lib-names-32.h> directly; include <gnu/lib-names.h> instead." | ||
| 4 | #endif | ||
| 5 | |||
| 6 | #define LD_SO "ld.so.1" | ||
| 7 | #define LIBANL_SO "libanl.so.1" | ||
| 8 | #define LIBBROKENLOCALE_SO "libBrokenLocale.so.1" | ||
| 9 | #define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0" | ||
| 10 | #define LIBC_SO "libc.so.6" | ||
| 11 | #define LIBDL_SO "libdl.so.2" | ||
| 12 | #define LIBGCC_S_SO "libgcc_s.so.1" | ||
| 13 | #define LIBMVEC_SO "libmvec.so.1" | ||
| 14 | #define LIBM_SO "libm.so.6" | ||
| 15 | #define LIBNSL_SO "libnsl.so.1" | ||
| 16 | #define LIBNSS_COMPAT_SO "libnss_compat.so.2" | ||
| 17 | #define LIBNSS_DB_SO "libnss_db.so.2" | ||
| 18 | #define LIBNSS_DNS_SO "libnss_dns.so.2" | ||
| 19 | #define LIBNSS_FILES_SO "libnss_files.so.2" | ||
| 20 | #define LIBNSS_HESIOD_SO "libnss_hesiod.so.2" | ||
| 21 | #define LIBNSS_LDAP_SO "libnss_ldap.so.2" | ||
| 22 | #define LIBPTHREAD_SO "libpthread.so.0" | ||
| 23 | #define LIBRESOLV_SO "libresolv.so.2" | ||
| 24 | #define LIBRT_SO "librt.so.1" | ||
| 25 | #define LIBTHREAD_DB_SO "libthread_db.so.1" | ||
| 26 | #define LIBUTIL_SO "libutil.so.1" | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabi/gnu/lib-names.h deleted-19| ... | @@ -1,19 +0,0 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | It defines macros to allow user program to find the shared | ||
| 3 | library files which come as part of GNU libc. */ | ||
| 4 | #ifndef __GNU_LIB_NAMES_H | ||
| 5 | #define __GNU_LIB_NAMES_H	1 | ||
| 6 | |||
| 7 | #include <bits/wordsize.h> | ||
| 8 | |||
| 9 | #if __WORDSIZE == 32 | ||
| 10 | # include <gnu/lib-names-32.h> | ||
| 11 | #endif | ||
| 12 | #if __WORDSIZE == 64 && _CALL_ELF != 2 | ||
| 13 | # include <gnu/lib-names-64-v1.h> | ||
| 14 | #endif | ||
| 15 | #if __WORDSIZE == 64 && _CALL_ELF == 2 | ||
| 16 | # include <gnu/lib-names-64-v2.h> | ||
| 17 | #endif | ||
| 18 | |||
| 19 | #endif	/* gnu/lib-names.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabi/gnu/stubs.h deleted-15| ... | @@ -1,15 +0,0 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | This file selects the right generated file of `__stub_FUNCTION' macros | ||
| 3 | based on the architecture being compiled for. */ | ||
| 4 | |||
| 5 | #include <bits/wordsize.h> | ||
| 6 | |||
| 7 | #if __WORDSIZE == 32 | ||
| 8 | # include <gnu/stubs-32.h> | ||
| 9 | #endif | ||
| 10 | #if __WORDSIZE == 64 && _CALL_ELF != 2 | ||
| 11 | # include <gnu/stubs-64-v1.h> | ||
| 12 | #endif | ||
| 13 | #if __WORDSIZE == 64 && _CALL_ELF == 2 | ||
| 14 | # include <gnu/stubs-64-v2.h> | ||
| 15 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabi/ieee754.h deleted-197| ... | @@ -1,197 +0,0 @@ | ||
| 1 | /* Copyright (C) 1992-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _IEEE754_H | ||
| 19 | #define _IEEE754_H 1 | ||
| 20 | |||
| 21 | #include <features.h> | ||
| 22 | |||
| 23 | #include <bits/endian.h> | ||
| 24 | #include <bits/floatn.h> | ||
| 25 | |||
| 26 | __BEGIN_DECLS | ||
| 27 | |||
| 28 | union ieee754_float | ||
| 29 | { | ||
| 30 | float f; | ||
| 31 | |||
| 32 | /* This is the IEEE 754 single-precision format. */ | ||
| 33 | struct | ||
| 34 | { | ||
| 35 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 36 | 	unsigned int negative:1; | ||
| 37 | 	unsigned int exponent:8; | ||
| 38 | 	unsigned int mantissa:23; | ||
| 39 | #endif				/* Big endian. */ | ||
| 40 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 41 | 	unsigned int mantissa:23; | ||
| 42 | 	unsigned int exponent:8; | ||
| 43 | 	unsigned int negative:1; | ||
| 44 | #endif				/* Little endian. */ | ||
| 45 | } ieee; | ||
| 46 | |||
| 47 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 48 | struct | ||
| 49 | { | ||
| 50 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 51 | 	unsigned int negative:1; | ||
| 52 | 	unsigned int exponent:8; | ||
| 53 | 	unsigned int quiet_nan:1; | ||
| 54 | 	unsigned int mantissa:22; | ||
| 55 | #endif				/* Big endian. */ | ||
| 56 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 57 | 	unsigned int mantissa:22; | ||
| 58 | 	unsigned int quiet_nan:1; | ||
| 59 | 	unsigned int exponent:8; | ||
| 60 | 	unsigned int negative:1; | ||
| 61 | #endif				/* Little endian. */ | ||
| 62 | } ieee_nan; | ||
| 63 | }; | ||
| 64 | |||
| 65 | #define IEEE754_FLOAT_BIAS	0x7f /* Added to exponent. */ | ||
| 66 | |||
| 67 | |||
| 68 | union ieee754_double | ||
| 69 | { | ||
| 70 | double d; | ||
| 71 | |||
| 72 | /* This is the IEEE 754 double-precision format. */ | ||
| 73 | struct | ||
| 74 | { | ||
| 75 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 76 | 	unsigned int negative:1; | ||
| 77 | 	unsigned int exponent:11; | ||
| 78 | 	/* Together these comprise the mantissa. */ | ||
| 79 | 	unsigned int mantissa0:20; | ||
| 80 | 	unsigned int mantissa1:32; | ||
| 81 | #endif				/* Big endian. */ | ||
| 82 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 83 | 	/* Together these comprise the mantissa. */ | ||
| 84 | 	unsigned int mantissa1:32; | ||
| 85 | 	unsigned int mantissa0:20; | ||
| 86 | 	unsigned int exponent:11; | ||
| 87 | 	unsigned int negative:1; | ||
| 88 | #endif				/* Little endian. */ | ||
| 89 | } ieee; | ||
| 90 | |||
| 91 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 92 | struct | ||
| 93 | { | ||
| 94 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 95 | 	unsigned int negative:1; | ||
| 96 | 	unsigned int exponent:11; | ||
| 97 | 	unsigned int quiet_nan:1; | ||
| 98 | 	/* Together these comprise the mantissa. */ | ||
| 99 | 	unsigned int mantissa0:19; | ||
| 100 | 	unsigned int mantissa1:32; | ||
| 101 | #else | ||
| 102 | 	/* Together these comprise the mantissa. */ | ||
| 103 | 	unsigned int mantissa1:32; | ||
| 104 | 	unsigned int mantissa0:19; | ||
| 105 | 	unsigned int quiet_nan:1; | ||
| 106 | 	unsigned int exponent:11; | ||
| 107 | 	unsigned int negative:1; | ||
| 108 | #endif | ||
| 109 | } ieee_nan; | ||
| 110 | }; | ||
| 111 | |||
| 112 | #define IEEE754_DOUBLE_BIAS	0x3ff /* Added to exponent. */ | ||
| 113 | |||
| 114 | |||
| 115 | #if __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 1 | ||
| 116 | /* long double is IEEE 128 bit */ | ||
| 117 | union ieee854_long_double | ||
| 118 | { | ||
| 119 | long double d; | ||
| 120 | |||
| 121 | /* This is the IEEE 854 quad-precision format. */ | ||
| 122 | struct | ||
| 123 | { | ||
| 124 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 125 | 	unsigned int negative:1; | ||
| 126 | 	unsigned int exponent:15; | ||
| 127 | 	/* Together these comprise the mantissa. */ | ||
| 128 | 	unsigned int mantissa0:16; | ||
| 129 | 	unsigned int mantissa1:32; | ||
| 130 | 	unsigned int mantissa2:32; | ||
| 131 | 	unsigned int mantissa3:32; | ||
| 132 | #endif				/* Big endian. */ | ||
| 133 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 134 | 	/* Together these comprise the mantissa. */ | ||
| 135 | 	unsigned int mantissa3:32; | ||
| 136 | 	unsigned int mantissa2:32; | ||
| 137 | 	unsigned int mantissa1:32; | ||
| 138 | 	unsigned int mantissa0:16; | ||
| 139 | 	unsigned int exponent:15; | ||
| 140 | 	unsigned int negative:1; | ||
| 141 | #endif				/* Little endian. */ | ||
| 142 | } ieee; | ||
| 143 | |||
| 144 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 145 | struct | ||
| 146 | { | ||
| 147 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 148 | 	unsigned int negative:1; | ||
| 149 | 	unsigned int exponent:15; | ||
| 150 | 	unsigned int quiet_nan:1; | ||
| 151 | 	/* Together these comprise the mantissa. */ | ||
| 152 | 	unsigned int mantissa0:15; | ||
| 153 | 	unsigned int mantissa1:32; | ||
| 154 | 	unsigned int mantissa2:32; | ||
| 155 | 	unsigned int mantissa3:32; | ||
| 156 | #else | ||
| 157 | 	/* Together these comprise the mantissa. */ | ||
| 158 | 	unsigned int mantissa3:32; | ||
| 159 | 	unsigned int mantissa2:32; | ||
| 160 | 	unsigned int mantissa1:32; | ||
| 161 | 	unsigned int mantissa0:15; | ||
| 162 | 	unsigned int quiet_nan:1; | ||
| 163 | 	unsigned int exponent:15; | ||
| 164 | 	unsigned int negative:1; | ||
| 165 | #endif | ||
| 166 | } ieee_nan; | ||
| 167 | }; | ||
| 168 | |||
| 169 | #define IEEE854_LONG_DOUBLE_BIAS 0x3fff /* Added to exponent. */ | ||
| 170 | #endif | ||
| 171 | |||
| 172 | |||
| 173 | #if __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 0 || __GNUC_PREREQ (7, 0) | ||
| 174 | /* IBM extended format for long double. | ||
| 175 | |||
| 176 | Each long double is made up of two IEEE doubles. The value of the | ||
| 177 | long double is the sum of the values of the two parts. The most | ||
| 178 | significant part is required to be the value of the long double | ||
| 179 | rounded to the nearest double, as specified by IEEE. For Inf | ||
| 180 | values, the least significant part is required to be one of +0.0 or | ||
| 181 | -0.0. No other requirements are made; so, for example, 1.0 may be | ||
| 182 | represented as (1.0, +0.0) or (1.0, -0.0), and the low part of a | ||
| 183 | NaN is don't-care. */ | ||
| 184 | union ibm_extended_long_double | ||
| 185 | { | ||
| 186 | # if __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 1 && __GNUC_PREREQ (7, 0) | ||
| 187 | __ibm128 ld; | ||
| 188 | # else | ||
| 189 | long double ld; | ||
| 190 | # endif | ||
| 191 | union ieee754_double d[2]; | ||
| 192 | }; | ||
| 193 | #endif | ||
| 194 | |||
| 195 | __END_DECLS | ||
| 196 | |||
| 197 | #endif /* ieee754.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabi/sys/ptrace.h deleted-289| ... | @@ -1,289 +0,0 @@ | ||
| 1 | /* `ptrace' debugger support interface. Linux/PowerPC version. | ||
| 2 | Copyright (C) 2001-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_PTRACE_H | ||
| 20 | #define _SYS_PTRACE_H	1 | ||
| 21 | |||
| 22 | #include <features.h> | ||
| 23 | #include <bits/types.h> | ||
| 24 | |||
| 25 | __BEGIN_DECLS | ||
| 26 | |||
| 27 | #if defined _LINUX_PTRACE_H || defined _ASM_POWERPC_PTRACE_H | ||
| 28 | /* Do not let Linux headers macros interfere with enum __ptrace_request. */ | ||
| 29 | # undef PTRACE_ATTACH | ||
| 30 | # undef PTRACE_CONT | ||
| 31 | # undef PTRACE_DETACH | ||
| 32 | # undef PTRACE_GET_DEBUGREG | ||
| 33 | # undef PTRACE_GETEVENTMSG | ||
| 34 | # undef PTRACE_GETEVRREGS | ||
| 35 | # undef PTRACE_GETFPREGS | ||
| 36 | # undef PTRACE_GETREGS | ||
| 37 | # undef PTRACE_GETREGS64 | ||
| 38 | # undef PTRACE_GETREGSET | ||
| 39 | # undef PTRACE_GET_RSEQ_CONFIGURATION | ||
| 40 | # undef PTRACE_GETSIGINFO | ||
| 41 | # undef PTRACE_GETSIGMASK | ||
| 42 | # undef PTRACE_GET_SYSCALL_INFO | ||
| 43 | # undef PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG | ||
| 44 | # undef PTRACE_GETVRREGS | ||
| 45 | # undef PTRACE_GETVSRREGS | ||
| 46 | # undef PTRACE_INTERRUPT | ||
| 47 | # undef PTRACE_KILL | ||
| 48 | # undef PTRACE_LISTEN | ||
| 49 | # undef PTRACE_PEEKDATA | ||
| 50 | # undef PTRACE_PEEKSIGINFO | ||
| 51 | # undef PTRACE_PEEKTEXT | ||
| 52 | # undef PTRACE_POKEDATA | ||
| 53 | # undef PTRACE_POKETEXT | ||
| 54 | # undef PTRACE_SECCOMP_GET_FILTER | ||
| 55 | # undef PTRACE_SECCOMP_GET_METADATA | ||
| 56 | # undef PTRACE_SEIZE | ||
| 57 | # undef PTRACE_SET_DEBUGREG | ||
| 58 | # undef PTRACE_SETEVRREGS | ||
| 59 | # undef PTRACE_SETFPREGS | ||
| 60 | # undef PTRACE_SETOPTIONS | ||
| 61 | # undef PTRACE_SETREGS | ||
| 62 | # undef PTRACE_SETREGS64 | ||
| 63 | # undef PTRACE_SETREGSET | ||
| 64 | # undef PTRACE_SETSIGINFO | ||
| 65 | # undef PTRACE_SETSIGMASK | ||
| 66 | # undef PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG | ||
| 67 | # undef PTRACE_SETVRREGS | ||
| 68 | # undef PTRACE_SETVSRREGS | ||
| 69 | # undef PTRACE_SINGLEBLOCK | ||
| 70 | # undef PTRACE_SINGLESTEP | ||
| 71 | # undef PTRACE_SYSCALL | ||
| 72 | # undef PTRACE_SYSCALL_INFO_NONE | ||
| 73 | # undef PTRACE_SYSCALL_INFO_ENTRY | ||
| 74 | # undef PTRACE_SYSCALL_INFO_EXIT | ||
| 75 | # undef PTRACE_SYSCALL_INFO_SECCOMP | ||
| 76 | # undef PTRACE_SYSEMU | ||
| 77 | # undef PTRACE_SYSEMU_SINGLESTEP | ||
| 78 | # undef PTRACE_TRACEME | ||
| 79 | #endif | ||
| 80 | |||
| 81 | /* Type of the REQUEST argument to `ptrace.' */ | ||
| 82 | enum __ptrace_request | ||
| 83 | { | ||
| 84 | /* Indicate that the process making this request should be traced. | ||
| 85 | All signals received by this process can be intercepted by its | ||
| 86 | parent, and its parent can use the other `ptrace' requests. */ | ||
| 87 | PTRACE_TRACEME = 0, | ||
| 88 | #define PT_TRACE_ME PTRACE_TRACEME | ||
| 89 | |||
| 90 | /* Return the word in the process's text space at address ADDR. */ | ||
| 91 | PTRACE_PEEKTEXT = 1, | ||
| 92 | #define PT_READ_I PTRACE_PEEKTEXT | ||
| 93 | |||
| 94 | /* Return the word in the process's data space at address ADDR. */ | ||
| 95 | PTRACE_PEEKDATA = 2, | ||
| 96 | #define PT_READ_D PTRACE_PEEKDATA | ||
| 97 | |||
| 98 | /* Return the word in the process's user area at offset ADDR. */ | ||
| 99 | PTRACE_PEEKUSER = 3, | ||
| 100 | #define PT_READ_U PTRACE_PEEKUSER | ||
| 101 | |||
| 102 | /* Write the word DATA into the process's text space at address ADDR. */ | ||
| 103 | PTRACE_POKETEXT = 4, | ||
| 104 | #define PT_WRITE_I PTRACE_POKETEXT | ||
| 105 | |||
| 106 | /* Write the word DATA into the process's data space at address ADDR. */ | ||
| 107 | PTRACE_POKEDATA = 5, | ||
| 108 | #define PT_WRITE_D PTRACE_POKEDATA | ||
| 109 | |||
| 110 | /* Write the word DATA into the process's user area at offset ADDR. */ | ||
| 111 | PTRACE_POKEUSER = 6, | ||
| 112 | #define PT_WRITE_U PTRACE_POKEUSER | ||
| 113 | |||
| 114 | /* Continue the process. */ | ||
| 115 | PTRACE_CONT = 7, | ||
| 116 | #define PT_CONTINUE PTRACE_CONT | ||
| 117 | |||
| 118 | /* Kill the process. */ | ||
| 119 | PTRACE_KILL = 8, | ||
| 120 | #define PT_KILL PTRACE_KILL | ||
| 121 | |||
| 122 | /* Single step the process. */ | ||
| 123 | PTRACE_SINGLESTEP = 9, | ||
| 124 | #define PT_STEP PTRACE_SINGLESTEP | ||
| 125 | |||
| 126 | /* Get all general purpose registers used by a process. */ | ||
| 127 | PTRACE_GETREGS = 12, | ||
| 128 | #define PT_GETREGS PTRACE_GETREGS | ||
| 129 | |||
| 130 | /* Set all general purpose registers used by a process. */ | ||
| 131 | PTRACE_SETREGS = 13, | ||
| 132 | #define PT_SETREGS PTRACE_SETREGS | ||
| 133 | |||
| 134 | /* Get all floating point registers used by a process. */ | ||
| 135 | PTRACE_GETFPREGS = 14, | ||
| 136 | #define PT_GETFPREGS PTRACE_GETFPREGS | ||
| 137 | |||
| 138 | /* Set all floating point registers used by a process. */ | ||
| 139 | PTRACE_SETFPREGS = 15, | ||
| 140 | #define PT_SETFPREGS PTRACE_SETFPREGS | ||
| 141 | |||
| 142 | /* Attach to a process that is already running. */ | ||
| 143 | PTRACE_ATTACH = 16, | ||
| 144 | #define PT_ATTACH PTRACE_ATTACH | ||
| 145 | |||
| 146 | /* Detach from a process attached to with PTRACE_ATTACH. */ | ||
| 147 | PTRACE_DETACH = 17, | ||
| 148 | #define PT_DETACH PTRACE_DETACH | ||
| 149 | |||
| 150 | /* Get all altivec registers used by a process. */ | ||
| 151 | PTRACE_GETVRREGS = 18, | ||
| 152 | #define PT_GETVRREGS PTRACE_GETVRREGS | ||
| 153 | |||
| 154 | /* Set all altivec registers used by a process. */ | ||
| 155 | PTRACE_SETVRREGS = 19, | ||
| 156 | #define PT_SETVRREGS PTRACE_SETVRREGS | ||
| 157 | |||
| 158 | /* Get all SPE registers used by a process. */ | ||
| 159 | PTRACE_GETEVRREGS = 20, | ||
| 160 | #define PT_GETEVRREGS PTRACE_GETEVRREGS | ||
| 161 | |||
| 162 | /* Set all SPE registers used by a process. */ | ||
| 163 | PTRACE_SETEVRREGS = 21, | ||
| 164 | #define PT_SETEVRREGS PTRACE_SETEVRREGS | ||
| 165 | |||
| 166 | /* Same as PTRACE_GETREGS except a 32-bit process will obtain | ||
| 167 | the full 64-bit registers. Implemented by 64-bit kernels only. */ | ||
| 168 | PTRACE_GETREGS64 = 22, | ||
| 169 | #define PT_GETREGS64 PTRACE_GETREGS64 | ||
| 170 | |||
| 171 | /* Same as PTRACE_SETREGS except a 32-bit process will set | ||
| 172 | the full 64-bit registers. Implemented by 64-bit kernels only. */ | ||
| 173 | PTRACE_SETREGS64 = 23, | ||
| 174 | #define PT_SETREGS64 PTRACE_SETREGS64 | ||
| 175 | |||
| 176 | /* Continue and stop at the next entry to or return from syscall. */ | ||
| 177 | PTRACE_SYSCALL = 24, | ||
| 178 | #define PT_SYSCALL PTRACE_SYSCALL | ||
| 179 | |||
| 180 | /* Get a debug register of a process. */ | ||
| 181 | PTRACE_GET_DEBUGREG = 25, | ||
| 182 | #define PT_GET_DEBUGREG PTRACE_GET_DEBUGREG | ||
| 183 | |||
| 184 | /* Set a debug register of a process. */ | ||
| 185 | PTRACE_SET_DEBUGREG = 26, | ||
| 186 | #define PT_SET_DEBUGREG PTRACE_SET_DEBUGREG | ||
| 187 | |||
| 188 | /* Get the first 32 VSX registers of a process. */ | ||
| 189 | PTRACE_GETVSRREGS = 27, | ||
| 190 | #define PT_GETVSRREGS PTRACE_GETVSRREGS | ||
| 191 | |||
| 192 | /* Set the first 32 VSX registers of a process. */ | ||
| 193 | PTRACE_SETVSRREGS = 28, | ||
| 194 | #define PT_SETVSRREGS PTRACE_SETVSRREGS | ||
| 195 | |||
| 196 | /* Continue and stop at the next syscall, it will not be executed. */ | ||
| 197 | PTRACE_SYSEMU = 29, | ||
| 198 | #define PT_SYSEMU PTRACE_SYSEMU | ||
| 199 | |||
| 200 | /* Single step the process, the next syscall will not be executed. */ | ||
| 201 | PTRACE_SYSEMU_SINGLESTEP = 30, | ||
| 202 | #define PT_SYSEMU_SINGLESTEP PTRACE_SYSEMU_SINGLESTEP | ||
| 203 | |||
| 204 | /* Execute process until next taken branch. */ | ||
| 205 | PTRACE_SINGLEBLOCK = 256, | ||
| 206 | #define PT_STEPBLOCK PTRACE_SINGLEBLOCK | ||
| 207 | |||
| 208 | /* Set ptrace filter options. */ | ||
| 209 | PTRACE_SETOPTIONS = 0x4200, | ||
| 210 | #define PT_SETOPTIONS PTRACE_SETOPTIONS | ||
| 211 | |||
| 212 | /* Get last ptrace message. */ | ||
| 213 | PTRACE_GETEVENTMSG = 0x4201, | ||
| 214 | #define PT_GETEVENTMSG PTRACE_GETEVENTMSG | ||
| 215 | |||
| 216 | /* Get siginfo for process. */ | ||
| 217 | PTRACE_GETSIGINFO = 0x4202, | ||
| 218 | #define PT_GETSIGINFO PTRACE_GETSIGINFO | ||
| 219 | |||
| 220 | /* Set new siginfo for process. */ | ||
| 221 | PTRACE_SETSIGINFO = 0x4203, | ||
| 222 | #define PT_SETSIGINFO PTRACE_SETSIGINFO | ||
| 223 | |||
| 224 | /* Get register content. */ | ||
| 225 | PTRACE_GETREGSET = 0x4204, | ||
| 226 | #define PTRACE_GETREGSET PTRACE_GETREGSET | ||
| 227 | |||
| 228 | /* Set register content. */ | ||
| 229 | PTRACE_SETREGSET = 0x4205, | ||
| 230 | #define PTRACE_SETREGSET PTRACE_SETREGSET | ||
| 231 | |||
| 232 | /* Like PTRACE_ATTACH, but do not force tracee to trap and do not affect | ||
| 233 | signal or group stop state. */ | ||
| 234 | PTRACE_SEIZE = 0x4206, | ||
| 235 | #define PTRACE_SEIZE PTRACE_SEIZE | ||
| 236 | |||
| 237 | /* Trap seized tracee. */ | ||
| 238 | PTRACE_INTERRUPT = 0x4207, | ||
| 239 | #define PTRACE_INTERRUPT PTRACE_INTERRUPT | ||
| 240 | |||
| 241 | /* Wait for next group event. */ | ||
| 242 | PTRACE_LISTEN = 0x4208, | ||
| 243 | #define PTRACE_LISTEN PTRACE_LISTEN | ||
| 244 | |||
| 245 | /* Retrieve siginfo_t structures without removing signals from a queue. */ | ||
| 246 | PTRACE_PEEKSIGINFO = 0x4209, | ||
| 247 | #define PTRACE_PEEKSIGINFO PTRACE_PEEKSIGINFO | ||
| 248 | |||
| 249 | /* Get the mask of blocked signals. */ | ||
| 250 | PTRACE_GETSIGMASK = 0x420a, | ||
| 251 | #define PTRACE_GETSIGMASK PTRACE_GETSIGMASK | ||
| 252 | |||
| 253 | /* Change the mask of blocked signals. */ | ||
| 254 | PTRACE_SETSIGMASK = 0x420b, | ||
| 255 | #define PTRACE_SETSIGMASK PTRACE_SETSIGMASK | ||
| 256 | |||
| 257 | /* Get seccomp BPF filters. */ | ||
| 258 | PTRACE_SECCOMP_GET_FILTER = 0x420c, | ||
| 259 | #define PTRACE_SECCOMP_GET_FILTER PTRACE_SECCOMP_GET_FILTER | ||
| 260 | |||
| 261 | /* Get seccomp BPF filter metadata. */ | ||
| 262 | PTRACE_SECCOMP_GET_METADATA = 0x420d, | ||
| 263 | #define PTRACE_SECCOMP_GET_METADATA PTRACE_SECCOMP_GET_METADATA | ||
| 264 | |||
| 265 | /* Get information about system call. */ | ||
| 266 | PTRACE_GET_SYSCALL_INFO = 0x420e, | ||
| 267 | #define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO | ||
| 268 | |||
| 269 | /* Get rseq configuration information. */ | ||
| 270 | PTRACE_GET_RSEQ_CONFIGURATION = 0x420f, | ||
| 271 | #define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION | ||
| 272 | |||
| 273 | /* Set configuration for syscall user dispatch. */ | ||
| 274 | PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG = 0x4210, | ||
| 275 | #define PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG \ | ||
| 276 | PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG | ||
| 277 | |||
| 278 | /* Get configuration for syscall user dispatch. */ | ||
| 279 | PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG = 0x4211 | ||
| 280 | #define PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG \ | ||
| 281 | PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG | ||
| 282 | }; | ||
| 283 | |||
| 284 | |||
| 285 | #include <bits/ptrace-shared.h> | ||
| 286 | |||
| 287 | __END_DECLS | ||
| 288 | |||
| 289 | #endif /* _SYS_PTRACE_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabi/sys/ucontext.h deleted-200| ... | @@ -1,200 +0,0 @@ | ||
| 1 | /* Copyright (C) 1998-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_UCONTEXT_H | ||
| 19 | #define _SYS_UCONTEXT_H	1 | ||
| 20 | |||
| 21 | #include <features.h> | ||
| 22 | |||
| 23 | #include <bits/types/sigset_t.h> | ||
| 24 | #include <bits/types/stack_t.h> | ||
| 25 | |||
| 26 | |||
| 27 | #ifdef __USE_MISC | ||
| 28 | # define __ctx(fld) fld | ||
| 29 | #else | ||
| 30 | # define __ctx(fld) __ ## fld | ||
| 31 | #endif | ||
| 32 | |||
| 33 | struct __ctx(pt_regs); | ||
| 34 | |||
| 35 | #if __WORDSIZE == 32 | ||
| 36 | |||
| 37 | /* Number of general registers. */ | ||
| 38 | # define __NGREG	48 | ||
| 39 | # ifdef __USE_MISC | ||
| 40 | # define NGREG	__NGREG | ||
| 41 | # endif | ||
| 42 | |||
| 43 | /* Container for all general registers. */ | ||
| 44 | typedef unsigned long gregset_t[__NGREG]; | ||
| 45 | |||
| 46 | /* Container for floating-point registers and status */ | ||
| 47 | typedef struct _libc_fpstate | ||
| 48 | { | ||
| 49 | 	double __ctx(fpregs)[32]; | ||
| 50 | 	double __ctx(fpscr); | ||
| 51 | 	unsigned int _pad[2]; | ||
| 52 | } fpregset_t; | ||
| 53 | |||
| 54 | /* Container for Altivec/VMX registers and status. | ||
| 55 | Needs to be aligned on a 16-byte boundary. */ | ||
| 56 | typedef struct _libc_vrstate | ||
| 57 | { | ||
| 58 | 	unsigned int __ctx(vrregs)[32][4]; | ||
| 59 | 	unsigned int __ctx(vrsave); | ||
| 60 | 	unsigned int _pad[2]; | ||
| 61 | 	unsigned int __ctx(vscr); | ||
| 62 | } vrregset_t; | ||
| 63 | |||
| 64 | /* Context to describe whole processor state. */ | ||
| 65 | typedef struct | ||
| 66 | { | ||
| 67 | 	gregset_t __ctx(gregs); | ||
| 68 | 	fpregset_t __ctx(fpregs); | ||
| 69 | 	vrregset_t __ctx(vrregs) __attribute__((__aligned__(16))); | ||
| 70 | } mcontext_t; | ||
| 71 | |||
| 72 | #else | ||
| 73 | |||
| 74 | /* For 64-bit kernels with Altivec support, a machine context is exactly | ||
| 75 | * a sigcontext. For older kernel (without Altivec) the sigcontext matches | ||
| 76 | * the mcontext upto but not including the v_regs field. For kernels that | ||
| 77 | * don't set AT_HWCAP or return AT_HWCAP without PPC_FEATURE_HAS_ALTIVEC the | ||
| 78 | * v_regs field may not exist and should not be referenced. The v_regs field | ||
| 79 | * can be referenced safely only after verifying that PPC_FEATURE_HAS_ALTIVEC | ||
| 80 | * is set in AT_HWCAP. */ | ||
| 81 | |||
| 82 | /* Number of general registers. */ | ||
| 83 | # define __NGREG	48	/* includes r0-r31, nip, msr, lr, etc. */ | ||
| 84 | # define __NFPREG	33	/* includes fp0-fp31 &fpscr. */ | ||
| 85 | # define __NVRREG	34	/* includes v0-v31, vscr, & vrsave in | ||
| 86 | 				 split vectors */ | ||
| 87 | # ifdef __USE_MISC | ||
| 88 | # define NGREG	__NGREG | ||
| 89 | # define NFPREG	__NFPREG | ||
| 90 | # define NVRREG	__NVRREG | ||
| 91 | # endif | ||
| 92 | |||
| 93 | typedef unsigned long gregset_t[__NGREG]; | ||
| 94 | typedef double fpregset_t[__NFPREG]; | ||
| 95 | |||
| 96 | /* Container for Altivec/VMX Vector Status and Control Register. Only 32-bits | ||
| 97 | but can only be copied to/from a 128-bit vector register. So we allocated | ||
| 98 | a whole quadword speedup save/restore. */ | ||
| 99 | typedef struct _libc_vscr | ||
| 100 | { | ||
| 101 | #if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__ | ||
| 102 | 	unsigned int __pad[3]; | ||
| 103 | 	unsigned int __ctx(vscr_word); | ||
| 104 | #else | ||
| 105 | 	unsigned int __ctx(vscr_word); | ||
| 106 | 	unsigned int __pad[3]; | ||
| 107 | #endif | ||
| 108 | } vscr_t; | ||
| 109 | |||
| 110 | /* Container for Altivec/VMX registers and status. | ||
| 111 | Must to be aligned on a 16-byte boundary. */ | ||
| 112 | typedef struct _libc_vrstate | ||
| 113 | { | ||
| 114 | 	unsigned int	__ctx(vrregs)[32][4]; | ||
| 115 | 	vscr_t		__ctx(vscr); | ||
| 116 | 	unsigned int	__ctx(vrsave); | ||
| 117 | 	unsigned int	__pad[3]; | ||
| 118 | } vrregset_t __attribute__((__aligned__(16))); | ||
| 119 | |||
| 120 | typedef struct { | ||
| 121 | 	unsigned long	__glibc_reserved[4]; | ||
| 122 | 	int		__ctx(signal); | ||
| 123 | 	int		__pad0; | ||
| 124 | 	unsigned long	__ctx(handler); | ||
| 125 | 	unsigned long	__ctx(oldmask); | ||
| 126 | 	struct __ctx(pt_regs)	*__ctx(regs); | ||
| 127 | 	gregset_t	__ctx(gp_regs); | ||
| 128 | 	fpregset_t	__ctx(fp_regs); | ||
| 129 | /* | ||
| 130 | * To maintain compatibility with current implementations the sigcontext is | ||
| 131 | * extended by appending a pointer (v_regs) to a quadword type (elf_vrreg_t) | ||
| 132 | * followed by an unstructured (vmx_reserve) field of 69 doublewords. This | ||
| 133 | * allows the array of vector registers to be quadword aligned independent of | ||
| 134 | * the alignment of the containing sigcontext or ucontext. It is the | ||
| 135 | * responsibility of the code setting the sigcontext to set this pointer to | ||
| 136 | * either NULL (if this processor does not support the VMX feature) or the | ||
| 137 | * address of the first quadword within the allocated (vmx_reserve) area. | ||
| 138 | * | ||
| 139 | * The pointer (v_regs) of vector type (elf_vrreg_t) is essentially | ||
| 140 | * an array of 34 quadword entries. The entries with | ||
| 141 | * indexes 0-31 contain the corresponding vector registers. The entry with | ||
| 142 | * index 32 contains the vscr as the last word (offset 12) within the | ||
| 143 | * quadword. This allows the vscr to be stored as either a quadword (since | ||
| 144 | * it must be copied via a vector register to/from storage) or as a word. | ||
| 145 | * The entry with index 33 contains the vrsave as the first word (offset 0) | ||
| 146 | * within the quadword. | ||
| 147 | */ | ||
| 148 | 	vrregset_t	*__ctx(v_regs); | ||
| 149 | 	long		__ctx(vmx_reserve)[__NVRREG+__NVRREG+1]; | ||
| 150 | } mcontext_t; | ||
| 151 | |||
| 152 | #endif | ||
| 153 | |||
| 154 | /* Userlevel context. */ | ||
| 155 | typedef struct ucontext_t | ||
| 156 | { | ||
| 157 | unsigned long int __ctx(uc_flags); | ||
| 158 | struct ucontext_t *uc_link; | ||
| 159 | stack_t uc_stack; | ||
| 160 | #if __WORDSIZE == 32 | ||
| 161 | /* | ||
| 162 | * These fields are set up this way to maximize source and | ||
| 163 | * binary compatibility with code written for the old | ||
| 164 | * ucontext_t definition, which didn't include space for the | ||
| 165 | * registers. | ||
| 166 | * | ||
| 167 | * Different versions of the kernel have stored the registers on | ||
| 168 | * signal delivery at different offsets from the ucontext struct. | ||
| 169 | * Programs should thus use the uc_mcontext.uc_regs pointer to | ||
| 170 | * find where the registers are actually stored. The registers | ||
| 171 | * will be stored within the ucontext_t struct but not necessarily | ||
| 172 | * at a fixed address. As a side-effect, this lets us achieve | ||
| 173 | * 16-byte alignment for the register storage space if the | ||
| 174 | * Altivec registers are to be saved, without requiring 16-byte | ||
| 175 | * alignment on the whole ucontext_t. | ||
| 176 | * | ||
| 177 | * The uc_mcontext.regs field is included for source compatibility | ||
| 178 | * with programs written against the older ucontext_t definition, | ||
| 179 | * and its name should therefore not change. The uc_pad field | ||
| 180 | * is for binary compatibility with programs compiled against the | ||
| 181 | * old ucontext_t; it ensures that uc_mcontext.regs and uc_sigmask | ||
| 182 | * are at the same offset as previously. | ||
| 183 | */ | ||
| 184 | int __glibc_reserved1[7]; | ||
| 185 | union __ctx(uc_regs_ptr) { | ||
| 186 | struct __ctx(pt_regs) *__ctx(regs); | ||
| 187 | mcontext_t *__ctx(uc_regs); | ||
| 188 | } uc_mcontext; | ||
| 189 | sigset_t uc_sigmask; | ||
| 190 | /* last for extensibility */ | ||
| 191 | char __ctx(uc_reg_space)[sizeof (mcontext_t) + 12]; | ||
| 192 | #else /* 64-bit */ | ||
| 193 | sigset_t uc_sigmask; | ||
| 194 | mcontext_t uc_mcontext; /* last for extensibility */ | ||
| 195 | #endif | ||
| 196 | } ucontext_t; | ||
| 197 | |||
| 198 | #undef __ctx | ||
| 199 | |||
| 200 | #endif /* sys/ucontext.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabi/sys/user.h deleted-40| ... | @@ -1,40 +0,0 @@ | ||
| 1 | /* Copyright (C) 1998-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_USER_H | ||
| 19 | |||
| 20 | #define _SYS_USER_H	1 | ||
| 21 | #include <stddef.h> | ||
| 22 | #include <features.h> | ||
| 23 | |||
| 24 | #include <asm/ptrace.h> | ||
| 25 | |||
| 26 | struct user { | ||
| 27 | 	struct pt_regs	regs;			/* entire machine state */ | ||
| 28 | 	size_t		u_tsize;		/* text size (pages) */ | ||
| 29 | 	size_t		u_dsize;		/* data size (pages) */ | ||
| 30 | 	size_t		u_ssize;		/* stack size (pages) */ | ||
| 31 | 	unsigned long	start_code;		/* text starting address */ | ||
| 32 | 	unsigned long	start_data;		/* data starting address */ | ||
| 33 | 	unsigned long	start_stack;		/* stack starting address */ | ||
| 34 | 	long int	signal;			/* signal causing core dump */ | ||
| 35 | 	struct regs *	u_ar0;			/* help gdb find registers */ | ||
| 36 | 	unsigned long	magic;			/* identifies a core file */ | ||
| 37 | 	char		u_comm[32];		/* user command name */ | ||
| 38 | }; | ||
| 39 | |||
| 40 | #endif /* sys/user.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabihf/bits/endianness.h deleted-16| ... | @@ -1,16 +0,0 @@ | ||
| 1 | #ifndef _BITS_ENDIANNESS_H | ||
| 2 | #define _BITS_ENDIANNESS_H 1 | ||
| 3 | |||
| 4 | #ifndef _BITS_ENDIAN_H | ||
| 5 | # error "Never use <bits/endianness.h> directly; include <endian.h> instead." | ||
| 6 | #endif | ||
| 7 | |||
| 8 | /* PowerPC has selectable endianness. */ | ||
| 9 | #if defined __BIG_ENDIAN__ || defined _BIG_ENDIAN | ||
| 10 | # define __BYTE_ORDER __BIG_ENDIAN | ||
| 11 | #endif | ||
| 12 | #if defined __LITTLE_ENDIAN__ || defined _LITTLE_ENDIAN | ||
| 13 | # define __BYTE_ORDER __LITTLE_ENDIAN | ||
| 14 | #endif | ||
| 15 | |||
| 16 | #endif /* bits/endianness.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabihf/bits/environments.h deleted-96| ... | @@ -1,96 +0,0 @@ | ||
| 1 | /* Copyright (C) 1999-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _UNISTD_H | ||
| 19 | # error "Never include this file directly. Use <unistd.h> instead" | ||
| 20 | #endif | ||
| 21 | |||
| 22 | #include <bits/wordsize.h> | ||
| 23 | |||
| 24 | /* This header should define the following symbols under the described | ||
| 25 | situations. A value `1' means that the model is always supported, | ||
| 26 | `-1' means it is never supported. Undefined means it cannot be | ||
| 27 | statically decided. | ||
| 28 | |||
| 29 | _POSIX_V7_ILP32_OFF32 32bit int, long, pointers, and off_t type | ||
| 30 | _POSIX_V7_ILP32_OFFBIG 32bit int, long, and pointers and larger off_t type | ||
| 31 | |||
| 32 | _POSIX_V7_LP64_OFF32	 64bit long and pointers and 32bit off_t type | ||
| 33 | _POSIX_V7_LPBIG_OFFBIG 64bit long and pointers and large off_t type | ||
| 34 | |||
| 35 | The macros _POSIX_V6_ILP32_OFF32, _POSIX_V6_ILP32_OFFBIG, | ||
| 36 | _POSIX_V6_LP64_OFF32, _POSIX_V6_LPBIG_OFFBIG, _XBS5_ILP32_OFF32, | ||
| 37 | _XBS5_ILP32_OFFBIG, _XBS5_LP64_OFF32, and _XBS5_LPBIG_OFFBIG were | ||
| 38 | used in previous versions of the Unix standard and are available | ||
| 39 | only for compatibility. | ||
| 40 | */ | ||
| 41 | |||
| 42 | #if __WORDSIZE == 64 | ||
| 43 | |||
| 44 | /* Environments with 32-bit wide pointers are optionally provided. | ||
| 45 | Therefore following macros aren't defined: | ||
| 46 | # undef _POSIX_V7_ILP32_OFF32 | ||
| 47 | # undef _POSIX_V7_ILP32_OFFBIG | ||
| 48 | # undef _POSIX_V6_ILP32_OFF32 | ||
| 49 | # undef _POSIX_V6_ILP32_OFFBIG | ||
| 50 | # undef _XBS5_ILP32_OFF32 | ||
| 51 | # undef _XBS5_ILP32_OFFBIG | ||
| 52 | and users need to check at runtime. */ | ||
| 53 | |||
| 54 | /* We also have no use (for now) for an environment with bigger pointers | ||
| 55 | and offsets. */ | ||
| 56 | # define _POSIX_V7_LPBIG_OFFBIG	-1 | ||
| 57 | # define _POSIX_V6_LPBIG_OFFBIG	-1 | ||
| 58 | # define _XBS5_LPBIG_OFFBIG	-1 | ||
| 59 | |||
| 60 | /* By default we have 64-bit wide `long int', pointers and `off_t'. */ | ||
| 61 | # define _POSIX_V7_LP64_OFF64	1 | ||
| 62 | # define _POSIX_V6_LP64_OFF64	1 | ||
| 63 | # define _XBS5_LP64_OFF64	1 | ||
| 64 | |||
| 65 | #else /* __WORDSIZE == 32 */ | ||
| 66 | |||
| 67 | /* By default we have 32-bit wide `int', `long int', pointers and `off_t' | ||
| 68 | and all platforms support LFS. */ | ||
| 69 | # define _POSIX_V7_ILP32_OFF32	1 | ||
| 70 | # define _POSIX_V7_ILP32_OFFBIG	1 | ||
| 71 | # define _POSIX_V6_ILP32_OFF32	1 | ||
| 72 | # define _POSIX_V6_ILP32_OFFBIG	1 | ||
| 73 | # define _XBS5_ILP32_OFF32	1 | ||
| 74 | # define _XBS5_ILP32_OFFBIG	1 | ||
| 75 | |||
| 76 | /* We optionally provide an environment with the above size but an 64-bit | ||
| 77 | side `off_t'. Therefore we don't define _POSIX_V7_ILP32_OFFBIG. */ | ||
| 78 | |||
| 79 | /* Environments with 64-bit wide pointers can be provided, | ||
| 80 | so these macros aren't defined: | ||
| 81 | # undef _POSIX_V7_LP64_OFF64 | ||
| 82 | # undef _POSIX_V7_LPBIG_OFFBIG | ||
| 83 | # undef _POSIX_V6_LP64_OFF64 | ||
| 84 | # undef _POSIX_V6_LPBIG_OFFBIG | ||
| 85 | # undef _XBS5_LP64_OFF64 | ||
| 86 | # undef _XBS5_LPBIG_OFFBIG | ||
| 87 | and sysconf tests for it at runtime. */ | ||
| 88 | |||
| 89 | #endif /* __WORDSIZE == 32 */ | ||
| 90 | |||
| 91 | #define __ILP32_OFF32_CFLAGS	"-m32" | ||
| 92 | #define __ILP32_OFFBIG_CFLAGS	"-m32 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" | ||
| 93 | #define __ILP32_OFF32_LDFLAGS	"-m32" | ||
| 94 | #define __ILP32_OFFBIG_LDFLAGS	"-m32" | ||
| 95 | #define __LP64_OFF64_CFLAGS	"-m64" | ||
| 96 | #define __LP64_OFF64_LDFLAGS	"-m64" | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabihf/bits/fcntl.h deleted-68| ... | @@ -1,68 +0,0 @@ | ||
| 1 | /* O_*, F_*, FD_* bit values for Linux/PowerPC. | ||
| 2 | Copyright (C) 1995-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef	_FCNTL_H | ||
| 20 | # error "Never use <bits/fcntl.h> directly; include <fcntl.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <bits/wordsize.h> | ||
| 24 | |||
| 25 | #define __O_DIRECTORY	 040000	/* Must be a directory.	 */ | ||
| 26 | #define __O_NOFOLLOW	0100000	/* Do not follow links.	 */ | ||
| 27 | #define __O_DIRECT	0400000	/* Direct disk access.	*/ | ||
| 28 | |||
| 29 | #if __WORDSIZE == 64 | ||
| 30 | /* Not necessary, files are always with 64bit off_t. */ | ||
| 31 | # define __O_LARGEFILE 0 | ||
| 32 | #else | ||
| 33 | # define __O_LARGEFILE	0200000 | ||
| 34 | #endif | ||
| 35 | |||
| 36 | #if __WORDSIZE == 64 && !defined __USE_FILE_OFFSET64 | ||
| 37 | # define F_GETLK	5 | ||
| 38 | # define F_SETLK	6 | ||
| 39 | # define F_SETLKW	7 | ||
| 40 | #endif | ||
| 41 | |||
| 42 | struct flock | ||
| 43 | { | ||
| 44 | short int l_type;	/* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK.	*/ | ||
| 45 | short int l_whence;	/* Where `l_start' is relative to (like `lseek'). */ | ||
| 46 | #ifndef __USE_FILE_OFFSET64 | ||
| 47 | __off_t l_start;	/* Offset where the lock begins. */ | ||
| 48 | __off_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 49 | #else | ||
| 50 | __off64_t l_start;	/* Offset where the lock begins. */ | ||
| 51 | __off64_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 52 | #endif | ||
| 53 | __pid_t l_pid;	/* Process holding the lock. */ | ||
| 54 | }; | ||
| 55 | |||
| 56 | #ifdef __USE_LARGEFILE64 | ||
| 57 | struct flock64 | ||
| 58 | { | ||
| 59 | short int l_type;	/* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK.	*/ | ||
| 60 | short int l_whence;	/* Where `l_start' is relative to (like `lseek'). */ | ||
| 61 | __off64_t l_start;	/* Offset where the lock begins. */ | ||
| 62 | __off64_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 63 | __pid_t l_pid;	/* Process holding the lock. */ | ||
| 64 | }; | ||
| 65 | #endif | ||
| 66 | |||
| 67 | /* Include generic Linux declarations. */ | ||
| 68 | #include <bits/fcntl-linux.h> | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabihf/bits/fenv.h deleted-180| ... | @@ -1,180 +0,0 @@ | ||
| 1 | /* Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _FENV_H | ||
| 19 | # error "Never use <bits/fenv.h> directly; include <fenv.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | |||
| 23 | /* Define bits representing the exception. We use the bit positions of | ||
| 24 | the appropriate bits in the FPSCR... */ | ||
| 25 | enum | ||
| 26 | { | ||
| 27 | FE_INEXACT = | ||
| 28 | #define FE_INEXACT	(1 << (31 - 6)) | ||
| 29 | FE_INEXACT, | ||
| 30 | FE_DIVBYZERO = | ||
| 31 | #define FE_DIVBYZERO	(1 << (31 - 5)) | ||
| 32 | FE_DIVBYZERO, | ||
| 33 | FE_UNDERFLOW = | ||
| 34 | #define FE_UNDERFLOW	(1 << (31 - 4)) | ||
| 35 | FE_UNDERFLOW, | ||
| 36 | FE_OVERFLOW = | ||
| 37 | #define FE_OVERFLOW	(1 << (31 - 3)) | ||
| 38 | FE_OVERFLOW, | ||
| 39 | |||
| 40 | /* ... except for FE_INVALID, for which we use bit 31. FE_INVALID | ||
| 41 | actually corresponds to bits 7 through 12 and 21 through 23 | ||
| 42 | in the FPSCR, but we can't use that because the current draft | ||
| 43 | says that it must be a power of 2. Instead we use bit 2 which | ||
| 44 | is the summary bit for all the FE_INVALID exceptions, which | ||
| 45 | kind of makes sense. */ | ||
| 46 | FE_INVALID = | ||
| 47 | #define FE_INVALID	(1 << (31 - 2)) | ||
| 48 | FE_INVALID, | ||
| 49 | |||
| 50 | #ifdef __USE_GNU | ||
| 51 | /* Breakdown of the FE_INVALID bits. Setting FE_INVALID on an | ||
| 52 | input to a routine is equivalent to setting all of these bits; | ||
| 53 | FE_INVALID will be set on output from a routine iff one of | ||
| 54 | these bits is set. Note, though, that you can't disable or | ||
| 55 | enable these exceptions individually. */ | ||
| 56 | |||
| 57 | /* Operation with a sNaN. */ | ||
| 58 | FE_INVALID_SNAN = | ||
| 59 | # define FE_INVALID_SNAN	(1 << (31 - 7)) | ||
| 60 | FE_INVALID_SNAN, | ||
| 61 | |||
| 62 | /* Inf - Inf */ | ||
| 63 | FE_INVALID_ISI = | ||
| 64 | # define FE_INVALID_ISI	(1 << (31 - 8)) | ||
| 65 | FE_INVALID_ISI, | ||
| 66 | |||
| 67 | /* Inf / Inf */ | ||
| 68 | FE_INVALID_IDI = | ||
| 69 | # define FE_INVALID_IDI	(1 << (31 - 9)) | ||
| 70 | FE_INVALID_IDI, | ||
| 71 | |||
| 72 | /* 0 / 0 */ | ||
| 73 | FE_INVALID_ZDZ = | ||
| 74 | # define FE_INVALID_ZDZ	(1 << (31 - 10)) | ||
| 75 | FE_INVALID_ZDZ, | ||
| 76 | |||
| 77 | /* Inf * 0 */ | ||
| 78 | FE_INVALID_IMZ = | ||
| 79 | # define FE_INVALID_IMZ	(1 << (31 - 11)) | ||
| 80 | FE_INVALID_IMZ, | ||
| 81 | |||
| 82 | /* Comparison with a NaN. */ | ||
| 83 | FE_INVALID_COMPARE = | ||
| 84 | # define FE_INVALID_COMPARE	(1 << (31 - 12)) | ||
| 85 | FE_INVALID_COMPARE, | ||
| 86 | |||
| 87 | /* Invalid operation flag for software (not set by hardware). */ | ||
| 88 | /* Note that some chips don't have this implemented, presumably | ||
| 89 | because no-one expected anyone to write software for them %-). */ | ||
| 90 | FE_INVALID_SOFTWARE = | ||
| 91 | # define FE_INVALID_SOFTWARE	(1 << (31 - 21)) | ||
| 92 | FE_INVALID_SOFTWARE, | ||
| 93 | |||
| 94 | /* Square root of negative number (including -Inf). */ | ||
| 95 | /* Note that some chips don't have this implemented. */ | ||
| 96 | FE_INVALID_SQRT = | ||
| 97 | # define FE_INVALID_SQRT	(1 << (31 - 22)) | ||
| 98 | FE_INVALID_SQRT, | ||
| 99 | |||
| 100 | /* Conversion-to-integer of a NaN or a number too large or too small. */ | ||
| 101 | FE_INVALID_INTEGER_CONVERSION = | ||
| 102 | # define FE_INVALID_INTEGER_CONVERSION	(1 << (31 - 23)) | ||
| 103 | FE_INVALID_INTEGER_CONVERSION | ||
| 104 | |||
| 105 | # define FE_ALL_INVALID \ | ||
| 106 | (FE_INVALID_SNAN | FE_INVALID_ISI | FE_INVALID_IDI | FE_INVALID_ZDZ \ | ||
| 107 | 	 | FE_INVALID_IMZ | FE_INVALID_COMPARE | FE_INVALID_SOFTWARE \ | ||
| 108 | 	 | FE_INVALID_SQRT | FE_INVALID_INTEGER_CONVERSION) | ||
| 109 | #endif | ||
| 110 | }; | ||
| 111 | |||
| 112 | #define FE_ALL_EXCEPT \ | ||
| 113 | 	(FE_INEXACT | FE_DIVBYZERO | FE_UNDERFLOW | FE_OVERFLOW | FE_INVALID) | ||
| 114 | |||
| 115 | /* PowerPC chips support all of the four defined rounding modes. We | ||
| 116 | use the bit pattern in the FPSCR as the values for the | ||
| 117 | appropriate macros. */ | ||
| 118 | enum | ||
| 119 | { | ||
| 120 | FE_TONEAREST = | ||
| 121 | #define FE_TONEAREST	0 | ||
| 122 | FE_TONEAREST, | ||
| 123 | FE_TOWARDZERO = | ||
| 124 | #define FE_TOWARDZERO	1 | ||
| 125 | FE_TOWARDZERO, | ||
| 126 | FE_UPWARD = | ||
| 127 | #define FE_UPWARD	2 | ||
| 128 | FE_UPWARD, | ||
| 129 | FE_DOWNWARD = | ||
| 130 | #define FE_DOWNWARD	3 | ||
| 131 | FE_DOWNWARD | ||
| 132 | }; | ||
| 133 | |||
| 134 | /* Type representing exception flags. */ | ||
| 135 | typedef unsigned int fexcept_t; | ||
| 136 | |||
| 137 | /* Type representing floating-point environment. We leave it as 'double' | ||
| 138 | for efficiency reasons (rather than writing it to a 32-bit integer). */ | ||
| 139 | typedef double fenv_t; | ||
| 140 | |||
| 141 | /* If the default argument is used we use this value. */ | ||
| 142 | extern const fenv_t __fe_dfl_env; | ||
| 143 | #define FE_DFL_ENV	(&__fe_dfl_env) | ||
| 144 | |||
| 145 | #ifdef __USE_GNU | ||
| 146 | /* Floating-point environment where all exceptions are enabled. Note that | ||
| 147 | this is not sufficient to give you SIGFPE. */ | ||
| 148 | extern const fenv_t __fe_enabled_env; | ||
| 149 | # define FE_ENABLED_ENV	(&__fe_enabled_env) | ||
| 150 | |||
| 151 | /* Floating-point environment with (processor-dependent) non-IEEE floating | ||
| 152 | point. */ | ||
| 153 | extern const fenv_t __fe_nonieee_env; | ||
| 154 | # define FE_NONIEEE_ENV	(&__fe_nonieee_env) | ||
| 155 | |||
| 156 | /* Floating-point environment with all exceptions enabled. Note that | ||
| 157 | just evaluating this value does not change the processor exception mode. | ||
| 158 | Passing this mask to fesetenv will result in a prctl syscall to change | ||
| 159 | the MSR FE0/FE1 bits to "Precise Mode". On some processors this will | ||
| 160 | result in slower floating point execution. This will last until an | ||
| 161 | fenv or exception mask is installed that disables all FP exceptions. */ | ||
| 162 | # define FE_NOMASK_ENV	FE_ENABLED_ENV | ||
| 163 | |||
| 164 | /* Floating-point environment with all exceptions disabled. Note that | ||
| 165 | just evaluating this value does not change the processor exception mode. | ||
| 166 | Passing this mask to fesetenv will result in a prctl syscall to change | ||
| 167 | the MSR FE0/FE1 bits to "Ignore Exceptions Mode". On most processors | ||
| 168 | this allows the fastest possible floating point execution.*/ | ||
| 169 | # define FE_MASK_ENV	FE_DFL_ENV | ||
| 170 | |||
| 171 | #endif | ||
| 172 | |||
| 173 | #if __GLIBC_USE (IEC_60559_BFP_EXT_C23) | ||
| 174 | /* Type representing floating-point control modes. */ | ||
| 175 | typedef double femode_t; | ||
| 176 | |||
| 177 | /* Default floating-point control modes. */ | ||
| 178 | extern const femode_t __fe_dfl_mode; | ||
| 179 | # define FE_DFL_MODE	(&__fe_dfl_mode) | ||
| 180 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabihf/bits/floatn.h deleted-122| ... | @@ -1,122 +0,0 @@ | ||
| 1 | /* Macros to control TS 18661-3 glibc features on powerpc. | ||
| 2 | Copyright (C) 2017-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_FLOATN_H | ||
| 20 | #define _BITS_FLOATN_H | ||
| 21 | |||
| 22 | #include <features.h> | ||
| 23 | #include <bits/long-double.h> | ||
| 24 | |||
| 25 | /* Defined to 1 if the current compiler invocation provides a | ||
| 26 | floating-point type with the IEEE 754 binary128 format, and this glibc | ||
| 27 | includes corresponding *f128 interfaces for it. */ | ||
| 28 | #if defined _ARCH_PWR8 && defined __LITTLE_ENDIAN__ && (_CALL_ELF == 2) \ | ||
| 29 | && defined __FLOAT128__ && !defined __NO_LONG_DOUBLE_MATH | ||
| 30 | # define __HAVE_FLOAT128 1 | ||
| 31 | #else | ||
| 32 | # define __HAVE_FLOAT128 0 | ||
| 33 | #endif | ||
| 34 | |||
| 35 | /* Defined to 1 if __HAVE_FLOAT128 is 1 and the type is ABI-distinct | ||
| 36 | from the default float, double and long double types in this glibc, i.e. | ||
| 37 | calls to the binary128 functions go to *f128 symbols instead of *l. */ | ||
| 38 | #if __HAVE_FLOAT128 | ||
| 39 | # define __HAVE_DISTINCT_FLOAT128 1 | ||
| 40 | #else | ||
| 41 | # define __HAVE_DISTINCT_FLOAT128 0 | ||
| 42 | #endif | ||
| 43 | |||
| 44 | /* Defined to 1 if the current compiler invocation provides a | ||
| 45 | floating-point type with the right format for _Float64x, and this | ||
| 46 | glibc includes corresponding *f64x interfaces for it. */ | ||
| 47 | #define __HAVE_FLOAT64X __HAVE_FLOAT128 | ||
| 48 | |||
| 49 | /* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format | ||
| 50 | of long double. Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has | ||
| 51 | the format of _Float128, which must be different from that of long | ||
| 52 | double. */ | ||
| 53 | #define __HAVE_FLOAT64X_LONG_DOUBLE 0 | ||
| 54 | |||
| 55 | #ifndef __ASSEMBLER__ | ||
| 56 | |||
| 57 | /* Defined to concatenate the literal suffix to be used with _Float128 | ||
| 58 | types, if __HAVE_FLOAT128 is 1. */ | ||
| 59 | # if __HAVE_FLOAT128 | ||
| 60 | # if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) | ||
| 61 | /* The literal suffix (f128) exist for powerpc only since GCC 7.0. */ | ||
| 62 | # if __LDBL_MANT_DIG__ == 113 | ||
| 63 | # define __f128(x) x##l | ||
| 64 | # else | ||
| 65 | # define __f128(x) x##q | ||
| 66 | # endif | ||
| 67 | # else | ||
| 68 | # define __f128(x) x##f128 | ||
| 69 | # endif | ||
| 70 | # endif | ||
| 71 | |||
| 72 | /* Defined to a complex binary128 type if __HAVE_FLOAT128 is 1. */ | ||
| 73 | # if __HAVE_FLOAT128 | ||
| 74 | # if __LDBL_MANT_DIG__ == 113 && defined __cplusplus && !__GNUC_PREREQ (13, 0) | ||
| 75 | typedef long double _Float128; | ||
| 76 | # define __CFLOAT128 _Complex long double | ||
| 77 | # elif !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) | ||
| 78 | /* The type _Float128 exist for powerpc only since GCC 7.0. */ | ||
| 79 | typedef __float128 _Float128; | ||
| 80 | /* Add a typedef for older GCC and C++ compilers which don't natively support | ||
| 81 | _Complex _Float128. */ | ||
| 82 | typedef _Complex float __cfloat128 __attribute__ ((__mode__ (__KC__))); | ||
| 83 | # define __CFLOAT128 __cfloat128 | ||
| 84 | # else | ||
| 85 | # define __CFLOAT128 _Complex _Float128 | ||
| 86 | # endif | ||
| 87 | # endif | ||
| 88 | |||
| 89 | /* The remaining of this file provides support for older compilers. */ | ||
| 90 | # if __HAVE_FLOAT128 | ||
| 91 | /* Builtin __builtin_huge_valf128 doesn't exist before GCC 7.0. */ | ||
| 92 | # if !__GNUC_PREREQ (7, 0) | ||
| 93 | # define __builtin_huge_valf128() ((_Float128) __builtin_huge_val ()) | ||
| 94 | # endif | ||
| 95 | |||
| 96 | /* The following builtins (suffixed with 'q') are available in GCC >= 6.2, | ||
| 97 | which is the minimum version required for float128 support on powerpc64le. | ||
| 98 | Since GCC 7.0 the builtins suffixed with f128 are also available, then | ||
| 99 | there is no need to redefined them. */ | ||
| 100 | # if !__GNUC_PREREQ (7, 0) | ||
| 101 | # define __builtin_copysignf128 __builtin_copysignq | ||
| 102 | # define __builtin_fabsf128 __builtin_fabsq | ||
| 103 | # define __builtin_inff128 __builtin_infq | ||
| 104 | # define __builtin_nanf128 __builtin_nanq | ||
| 105 | # define __builtin_nansf128 __builtin_nansq | ||
| 106 | # endif | ||
| 107 | |||
| 108 | /* In math/math.h, __MATH_TG will expand signbit to __builtin_signbit*, | ||
| 109 | e.g.: __builtin_signbitf128, before GCC 6. However, there has never | ||
| 110 | been a __builtin_signbitf128 in GCC and the type-generic builtin is | ||
| 111 | only available since GCC 6. */ | ||
| 112 | # if !__GNUC_PREREQ (6, 0) | ||
| 113 | # define __builtin_signbitf128 __signbitf128 | ||
| 114 | # endif | ||
| 115 | |||
| 116 | # endif | ||
| 117 | |||
| 118 | #endif /* !__ASSEMBLER__. */ | ||
| 119 | |||
| 120 | #include <bits/floatn-common.h> | ||
| 121 | |||
| 122 | #endif /* _BITS_FLOATN_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabihf/bits/fp-fast.h deleted-39| ... | @@ -1,39 +0,0 @@ | ||
| 1 | /* Define FP_FAST_* macros. PowerPC version. | ||
| 2 | Copyright (C) 2016-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _MATH_H | ||
| 20 | # error "Never use <bits/fp-fast.h> directly; include <math.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifdef __USE_ISOC99 | ||
| 24 | |||
| 25 | /* The GCC 4.6 compiler will define __FP_FAST_FMA{,F,L} if the fma{,f,l} | ||
| 26 | builtins are supported. */ | ||
| 27 | # if (!defined _SOFT_FLOAT && !defined __NO_FPRS__) || defined __FP_FAST_FMA | ||
| 28 | # define FP_FAST_FMA 1 | ||
| 29 | # endif | ||
| 30 | |||
| 31 | # if (!defined _SOFT_FLOAT && !defined __NO_FPRS__) || defined __FP_FAST_FMAF | ||
| 32 | # define FP_FAST_FMAF 1 | ||
| 33 | # endif | ||
| 34 | |||
| 35 | # ifdef __FP_FAST_FMAL | ||
| 36 | # define FP_FAST_FMAL 1 | ||
| 37 | # endif | ||
| 38 | |||
| 39 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabihf/bits/hwcap.h deleted-78| ... | @@ -1,78 +0,0 @@ | ||
| 1 | /* Defines for bits in AT_HWCAP and AT_HWCAP2. | ||
| 2 | Copyright (C) 2012-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #if !defined(_SYS_AUXV_H) && !defined(_SYSDEPS_SYSDEP_H) | ||
| 20 | # error "Never include <bits/hwcap.h> directly; use <sys/auxv.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* The bit numbers must match those in the kernel's asm/cputable.h. */ | ||
| 24 | |||
| 25 | /* Feature definitions in AT_HWCAP. */ | ||
| 26 | #define PPC_FEATURE_32		 0x80000000 /* 32-bit mode. */ | ||
| 27 | #define PPC_FEATURE_64		 0x40000000 /* 64-bit mode. */ | ||
| 28 | #define PPC_FEATURE_601_INSTR	 0x20000000 /* 601 chip, Old POWER ISA. */ | ||
| 29 | #define PPC_FEATURE_HAS_ALTIVEC	 0x10000000 /* SIMD/Vector Unit. */ | ||
| 30 | #define PPC_FEATURE_HAS_FPU	 0x08000000 /* Floating Point Unit. */ | ||
| 31 | #define PPC_FEATURE_HAS_MMU	 0x04000000 /* Memory Management Unit. */ | ||
| 32 | #define PPC_FEATURE_HAS_4xxMAC	 0x02000000 /* 4xx Multiply Accumulator. */ | ||
| 33 | #define PPC_FEATURE_UNIFIED_CACHE 0x01000000 /* Unified I/D cache. */ | ||
| 34 | #define PPC_FEATURE_HAS_SPE	 0x00800000 /* Signal Processing ext. */ | ||
| 35 | #define PPC_FEATURE_HAS_EFP_SINGLE 0x00400000 /* SPE Float. */ | ||
| 36 | #define PPC_FEATURE_HAS_EFP_DOUBLE 0x00200000 /* SPE Double. */ | ||
| 37 | #define PPC_FEATURE_NO_TB	 0x00100000 /* 601/403gx have no timebase */ | ||
| 38 | #define PPC_FEATURE_POWER4	 0x00080000 /* POWER4 ISA 2.00 */ | ||
| 39 | #define PPC_FEATURE_POWER5	 0x00040000 /* POWER5 ISA 2.02 */ | ||
| 40 | #define PPC_FEATURE_POWER5_PLUS	 0x00020000 /* POWER5+ ISA 2.03 */ | ||
| 41 | #define PPC_FEATURE_CELL_BE	 0x00010000 /* CELL Broadband Engine */ | ||
| 42 | #define PPC_FEATURE_BOOKE	 0x00008000 /* ISA Category Embedded */ | ||
| 43 | #define PPC_FEATURE_SMT		 0x00004000 /* Simultaneous | ||
| 44 | 						 Multi-Threading */ | ||
| 45 | #define PPC_FEATURE_ICACHE_SNOOP 0x00002000 | ||
| 46 | #define PPC_FEATURE_ARCH_2_05	 0x00001000 /* ISA 2.05 */ | ||
| 47 | #define PPC_FEATURE_PA6T	 0x00000800 /* PA Semi 6T Core */ | ||
| 48 | #define PPC_FEATURE_HAS_DFP	 0x00000400 /* Decimal FP Unit */ | ||
| 49 | #define PPC_FEATURE_POWER6_EXT	 0x00000200 /* P6 + mffgpr/mftgpr */ | ||
| 50 | #define PPC_FEATURE_ARCH_2_06	 0x00000100 /* ISA 2.06 */ | ||
| 51 | #define PPC_FEATURE_HAS_VSX	 0x00000080 /* P7 Vector Extension. */ | ||
| 52 | #define PPC_FEATURE_PSERIES_PERFMON_COMPAT 0x00000040 | ||
| 53 | /* Reserved by the kernel.	 0x00000004 Do not use. */ | ||
| 54 | #define PPC_FEATURE_TRUE_LE	 0x00000002 | ||
| 55 | #define PPC_FEATURE_PPC_LE	 0x00000001 | ||
| 56 | |||
| 57 | /* Feature definitions in AT_HWCAP2. */ | ||
| 58 | #define PPC_FEATURE2_ARCH_2_07 0x80000000 /* ISA 2.07 */ | ||
| 59 | #define PPC_FEATURE2_HAS_HTM 0x40000000 /* Hardware Transactional | ||
| 60 | 						 Memory */ | ||
| 61 | #define PPC_FEATURE2_HAS_DSCR 0x20000000 /* Data Stream Control | ||
| 62 | 						 Register */ | ||
| 63 | #define PPC_FEATURE2_HAS_EBB 0x10000000 /* Event Base Branching */ | ||
| 64 | #define PPC_FEATURE2_HAS_ISEL 0x08000000 /* Integer Select */ | ||
| 65 | #define PPC_FEATURE2_HAS_TAR 0x04000000 /* Target Address Register */ | ||
| 66 | #define PPC_FEATURE2_HAS_VEC_CRYPTO 0x02000000 /* Target supports vector | ||
| 67 | 						 instruction. */ | ||
| 68 | #define PPC_FEATURE2_HTM_NOSC	 0x01000000 /* Kernel aborts transaction | ||
| 69 | 						 when a syscall is made. */ | ||
| 70 | #define PPC_FEATURE2_ARCH_3_00	 0x00800000 /* ISA 3.0 */ | ||
| 71 | #define PPC_FEATURE2_HAS_IEEE128 0x00400000 /* VSX IEEE Binary Float | ||
| 72 | 						 128-bit */ | ||
| 73 | #define PPC_FEATURE2_DARN	 0x00200000 /* darn instruction. */ | ||
| 74 | #define PPC_FEATURE2_SCV	 0x00100000 /* scv syscall. */ | ||
| 75 | #define PPC_FEATURE2_HTM_NO_SUSPEND 0x00080000 /* TM without suspended | ||
| 76 | 						 state. */ | ||
| 77 | #define PPC_FEATURE2_ARCH_3_1	 0x00040000 /* ISA 3.1. */ | ||
| 78 | #define PPC_FEATURE2_MMA	 0x00020000 /* Matrix-Multiply Assist. */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabihf/bits/ioctl-types.h deleted-77| ... | @@ -1,77 +0,0 @@ | ||
| 1 | /* Structure types for pre-termios terminal ioctls. Linux/powerpc version. | ||
| 2 | Copyright (C) 2014-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_IOCTL_H | ||
| 20 | # error "Never use <bits/ioctl-types.h> directly; include <sys/ioctl.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Get definition of constants for use with `ioctl'. */ | ||
| 24 | #include <asm/ioctls.h> | ||
| 25 | |||
| 26 | |||
| 27 | struct winsize | ||
| 28 | { | ||
| 29 | unsigned short int ws_row; | ||
| 30 | unsigned short int ws_col; | ||
| 31 | unsigned short int ws_xpixel; | ||
| 32 | unsigned short int ws_ypixel; | ||
| 33 | }; | ||
| 34 | |||
| 35 | #define NCC 10 | ||
| 36 | struct termio | ||
| 37 | { | ||
| 38 | unsigned short int c_iflag;		/* input mode flags */ | ||
| 39 | unsigned short int c_oflag;		/* output mode flags */ | ||
| 40 | unsigned short int c_cflag;		/* control mode flags */ | ||
| 41 | unsigned short int c_lflag;		/* local mode flags */ | ||
| 42 | unsigned char c_line;		/* line discipline */ | ||
| 43 | unsigned char c_cc[NCC];		/* control characters */ | ||
| 44 | }; | ||
| 45 | |||
| 46 | /* modem lines */ | ||
| 47 | #define TIOCM_LE	0x001 | ||
| 48 | #define TIOCM_DTR	0x002 | ||
| 49 | #define TIOCM_RTS	0x004 | ||
| 50 | #define TIOCM_ST	0x008 | ||
| 51 | #define TIOCM_SR	0x010 | ||
| 52 | #define TIOCM_CTS	0x020 | ||
| 53 | #define TIOCM_CAR	0x040 | ||
| 54 | #define TIOCM_RNG	0x080 | ||
| 55 | #define TIOCM_DSR	0x100 | ||
| 56 | #define TIOCM_CD	TIOCM_CAR | ||
| 57 | #define TIOCM_RI	TIOCM_RNG | ||
| 58 | |||
| 59 | /* ioctl (fd, TIOCSERGETLSR, &result) where result may be as below */ | ||
| 60 | |||
| 61 | /* line disciplines */ | ||
| 62 | #define N_TTY		0 | ||
| 63 | #define N_SLIP		1 | ||
| 64 | #define N_MOUSE		2 | ||
| 65 | #define N_PPP		3 | ||
| 66 | #define N_STRIP		4 | ||
| 67 | #define N_AX25		5 | ||
| 68 | #define N_X25		6	/* X.25 async */ | ||
| 69 | #define N_6PACK		7 | ||
| 70 | #define N_MASC		8	/* Mobitex module */ | ||
| 71 | #define N_R3964		9	/* Simatic R3964 module */ | ||
| 72 | #define N_PROFIBUS_FDL	10	/* Profibus */ | ||
| 73 | #define N_IRDA		11	/* Linux IR */ | ||
| 74 | #define N_SMSBLOCK	12	/* SMS block mode */ | ||
| 75 | #define N_HDLC		13	/* synchronous HDLC */ | ||
| 76 | #define N_SYNC_PPP	14	/* synchronous PPP */ | ||
| 77 | #define	N_HCI		15	/* Bluetooth HCI UART */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabihf/bits/ipc-perm.h deleted-36| ... | @@ -1,36 +0,0 @@ | ||
| 1 | /* struct ipc_perm definition. Linux/powerpc version. | ||
| 2 | Copyright (C) 1995-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_IPC_H | ||
| 20 | # error "Never use <bits/ipc-perm.h> directly; include <sys/ipc.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Data structure used to pass permission information to IPC operations. */ | ||
| 24 | struct ipc_perm | ||
| 25 | { | ||
| 26 | __key_t __key;		/* Key. */ | ||
| 27 | __uid_t uid;		/* Owner's user ID. */ | ||
| 28 | __gid_t gid;		/* Owner's group ID. */ | ||
| 29 | __uid_t cuid;		/* Creator's user ID. */ | ||
| 30 | __gid_t cgid;		/* Creator's group ID. */ | ||
| 31 | __mode_t mode;		/* Read/write permission. */ | ||
| 32 | __uint32_t __seq;		/* Sequence number. */ | ||
| 33 | __uint32_t __pad1; | ||
| 34 | __uint64_t __glibc_reserved1; | ||
| 35 | __uint64_t __glibc_reserved2; | ||
| 36 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabihf/bits/iscanonical.h deleted-58| ... | @@ -1,58 +0,0 @@ | ||
| 1 | /* Define iscanonical macro. ldbl-128ibm version. | ||
| 2 | Copyright (C) 2016-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _MATH_H | ||
| 20 | # error "Never use <bits/iscanonical.h> directly; include <math.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #if defined (__NO_LONG_DOUBLE_MATH) || __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 1 | ||
| 24 | # define iscanonical(x) ((void) (__typeof (x)) (x), 1) | ||
| 25 | #else | ||
| 26 | extern int __iscanonicall (long double __x) | ||
| 27 | __THROW __attribute__ ((__const__)); | ||
| 28 | # define __iscanonicalf(x) ((void) (__typeof (x)) (x), 1) | ||
| 29 | # define __iscanonical(x) ((void) (__typeof (x)) (x), 1) | ||
| 30 | # if __HAVE_DISTINCT_FLOAT128 | ||
| 31 | # define __iscanonicalf128(x) ((void) (__typeof (x)) (x), 1) | ||
| 32 | # endif | ||
| 33 | |||
| 34 | /* Return nonzero value if X is canonical. In IEEE interchange binary | ||
| 35 | formats, all values are canonical, but the argument must still be | ||
| 36 | converted to its semantic type for any exceptions arising from the | ||
| 37 | conversion, before being discarded; in IBM long double, there are | ||
| 38 | encodings that are not consistently handled as corresponding to any | ||
| 39 | particular value of the type, and we return 0 for those. */ | ||
| 40 | # ifndef __cplusplus | ||
| 41 | # define iscanonical(x) __MATH_TG ((x), __iscanonical, (x)) | ||
| 42 | # else | ||
| 43 | /* In C++ mode, __MATH_TG cannot be used, because it relies on | ||
| 44 | __builtin_types_compatible_p, which is a C-only builtin. On the | ||
| 45 | other hand, overloading provides the means to distinguish between | ||
| 46 | the floating-point types. The overloading resolution will match | ||
| 47 | the correct parameter (regardless of type qualifiers (i.e.: const | ||
| 48 | and volatile)). */ | ||
| 49 | extern "C++" { | ||
| 50 | inline int iscanonical (float __val) { return __iscanonicalf (__val); } | ||
| 51 | inline int iscanonical (double __val) { return __iscanonical (__val); } | ||
| 52 | inline int iscanonical (long double __val) { return __iscanonicall (__val); } | ||
| 53 | # if __HAVE_DISTINCT_FLOAT128 | ||
| 54 | inline int iscanonical (_Float128 __val) { return __iscanonicalf128 (__val); } | ||
| 55 | # endif | ||
| 56 | } | ||
| 57 | # endif /* __cplusplus */ | ||
| 58 | #endif /* __NO_LONG_DOUBLE_MATH */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabihf/bits/link.h deleted-156| ... | @@ -1,156 +0,0 @@ | ||
| 1 | /* Machine-specific declarations for dynamic linker interface. PowerPC version | ||
| 2 | Copyright (C) 2004-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef	_LINK_H | ||
| 20 | # error "Never include <bits/link.h> directly; use <link.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | |||
| 24 | #if __ELF_NATIVE_CLASS == 32 | ||
| 25 | |||
| 26 | /* Registers for entry into PLT on PPC32. */ | ||
| 27 | typedef struct La_ppc32_regs | ||
| 28 | { | ||
| 29 | uint32_t lr_reg[8]; | ||
| 30 | double lr_fp[8]; | ||
| 31 | uint32_t lr_vreg[12][4]; | ||
| 32 | uint32_t lr_r1; | ||
| 33 | uint32_t lr_lr; | ||
| 34 | } La_ppc32_regs; | ||
| 35 | |||
| 36 | /* Return values for calls from PLT on PPC32. */ | ||
| 37 | typedef struct La_ppc32_retval | ||
| 38 | { | ||
| 39 | uint32_t lrv_r3; | ||
| 40 | uint32_t lrv_r4; | ||
| 41 | double lrv_fp[8]; | ||
| 42 | uint32_t lrv_v2[4]; | ||
| 43 | } La_ppc32_retval; | ||
| 44 | |||
| 45 | |||
| 46 | __BEGIN_DECLS | ||
| 47 | |||
| 48 | extern Elf32_Addr la_ppc32_gnu_pltenter (Elf32_Sym *__sym, | ||
| 49 | 					 unsigned int __ndx, | ||
| 50 | 					 uintptr_t *__refcook, | ||
| 51 | 					 uintptr_t *__defcook, | ||
| 52 | 					 La_ppc32_regs *__regs, | ||
| 53 | 					 unsigned int *__flags, | ||
| 54 | 					 const char *__symname, | ||
| 55 | 					 long int *__framesizep); | ||
| 56 | extern unsigned int la_ppc32_gnu_pltexit (Elf32_Sym *__sym, | ||
| 57 | 					 unsigned int __ndx, | ||
| 58 | 					 uintptr_t *__refcook, | ||
| 59 | 					 uintptr_t *__defcook, | ||
| 60 | 					 const La_ppc32_regs *__inregs, | ||
| 61 | 					 La_ppc32_retval *__outregs, | ||
| 62 | 					 const char *__symname); | ||
| 63 | |||
| 64 | __END_DECLS | ||
| 65 | |||
| 66 | #elif __ELF_NATIVE_CLASS == 64 | ||
| 67 | # if _CALL_ELF != 2 | ||
| 68 | |||
| 69 | /* Registers for entry into PLT on PPC64. */ | ||
| 70 | typedef struct La_ppc64_regs | ||
| 71 | { | ||
| 72 | uint64_t lr_reg[8]; | ||
| 73 | double lr_fp[13]; | ||
| 74 | uint32_t __padding; | ||
| 75 | uint32_t lr_vrsave; | ||
| 76 | uint32_t lr_vreg[12][4]; | ||
| 77 | uint64_t lr_r1; | ||
| 78 | uint64_t lr_lr; | ||
| 79 | } La_ppc64_regs; | ||
| 80 | |||
| 81 | /* Return values for calls from PLT on PPC64. */ | ||
| 82 | typedef struct La_ppc64_retval | ||
| 83 | { | ||
| 84 | uint64_t lrv_r3; | ||
| 85 | uint64_t lrv_r4; | ||
| 86 | double lrv_fp[4];	/* f1-f4, float - complex long double. */ | ||
| 87 | uint32_t lrv_v2[4];	/* v2. */ | ||
| 88 | } La_ppc64_retval; | ||
| 89 | |||
| 90 | |||
| 91 | __BEGIN_DECLS | ||
| 92 | |||
| 93 | extern Elf64_Addr la_ppc64_gnu_pltenter (Elf64_Sym *__sym, | ||
| 94 | 					 unsigned int __ndx, | ||
| 95 | 					 uintptr_t *__refcook, | ||
| 96 | 					 uintptr_t *__defcook, | ||
| 97 | 					 La_ppc64_regs *__regs, | ||
| 98 | 					 unsigned int *__flags, | ||
| 99 | 					 const char *__symname, | ||
| 100 | 					 long int *__framesizep); | ||
| 101 | extern unsigned int la_ppc64_gnu_pltexit (Elf64_Sym *__sym, | ||
| 102 | 					 unsigned int __ndx, | ||
| 103 | 					 uintptr_t *__refcook, | ||
| 104 | 					 uintptr_t *__defcook, | ||
| 105 | 					 const La_ppc64_regs *__inregs, | ||
| 106 | 					 La_ppc64_retval *__outregs, | ||
| 107 | 					 const char *__symname); | ||
| 108 | |||
| 109 | __END_DECLS | ||
| 110 | |||
| 111 | # else | ||
| 112 | |||
| 113 | /* Registers for entry into PLT on PPC64 in the ELFv2 ABI. */ | ||
| 114 | typedef struct La_ppc64v2_regs | ||
| 115 | { | ||
| 116 | uint64_t lr_reg[8]; | ||
| 117 | double lr_fp[13]; | ||
| 118 | uint32_t __padding; | ||
| 119 | uint32_t lr_vrsave; | ||
| 120 | uint32_t lr_vreg[12][4] __attribute__ ((aligned (16))); | ||
| 121 | uint64_t lr_r1; | ||
| 122 | uint64_t lr_lr; | ||
| 123 | } La_ppc64v2_regs; | ||
| 124 | |||
| 125 | /* Return values for calls from PLT on PPC64 in the ELFv2 ABI. */ | ||
| 126 | typedef struct La_ppc64v2_retval | ||
| 127 | { | ||
| 128 | uint64_t lrv_r3; | ||
| 129 | uint64_t lrv_r4; | ||
| 130 | double lrv_fp[10]; | ||
| 131 | uint32_t lrv_vreg[8][4] __attribute__ ((aligned (16))); | ||
| 132 | } La_ppc64v2_retval; | ||
| 133 | |||
| 134 | |||
| 135 | __BEGIN_DECLS | ||
| 136 | |||
| 137 | extern Elf64_Addr la_ppc64v2_gnu_pltenter (Elf64_Sym *__sym, | ||
| 138 | 					 unsigned int __ndx, | ||
| 139 | 					 uintptr_t *__refcook, | ||
| 140 | 					 uintptr_t *__defcook, | ||
| 141 | 					 La_ppc64v2_regs *__regs, | ||
| 142 | 					 unsigned int *__flags, | ||
| 143 | 					 const char *__symname, | ||
| 144 | 					 long int *__framesizep); | ||
| 145 | extern unsigned int la_ppc64v2_gnu_pltexit (Elf64_Sym *__sym, | ||
| 146 | 					 unsigned int __ndx, | ||
| 147 | 					 uintptr_t *__refcook, | ||
| 148 | 					 uintptr_t *__defcook, | ||
| 149 | 					 const La_ppc64v2_regs *__inregs, | ||
| 150 | 					 La_ppc64v2_retval *__outregs, | ||
| 151 | 					 const char *__symname); | ||
| 152 | |||
| 153 | __END_DECLS | ||
| 154 | |||
| 155 | # endif | ||
| 156 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabihf/bits/long-double.h deleted-25| ... | @@ -1,25 +0,0 @@ | ||
| 1 | /* Properties of long double type. ldbl-opt version. | ||
| 2 | Copyright (C) 2016-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef __NO_LONG_DOUBLE_MATH | ||
| 20 | # define __LONG_DOUBLE_MATH_OPTIONAL	1 | ||
| 21 | # ifndef __LONG_DOUBLE_128__ | ||
| 22 | # define __NO_LONG_DOUBLE_MATH		1 | ||
| 23 | # endif | ||
| 24 | #endif | ||
| 25 | #define __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI 0 | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabihf/bits/mman.h deleted-51| ... | @@ -1,51 +0,0 @@ | ||
| 1 | /* Definitions for POSIX memory map interface. Linux/PowerPC version. | ||
| 2 | Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_MMAN_H | ||
| 20 | # error "Never use <bits/mman.h> directly; include <sys/mman.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* The following definitions basically come from the kernel headers. | ||
| 24 | But the kernel header is not namespace clean. */ | ||
| 25 | |||
| 26 | #define PROT_SAO	0x10		/* Strong Access Ordering. */ | ||
| 27 | |||
| 28 | /* These are Linux-specific. */ | ||
| 29 | #define MAP_GROWSDOWN	0x00100		/* Stack-like segment. */ | ||
| 30 | #define MAP_DENYWRITE	0x00800		/* ETXTBSY */ | ||
| 31 | #define MAP_EXECUTABLE	0x01000		/* Mark it as an executable. */ | ||
| 32 | #define MAP_LOCKED	0x00080		/* Lock the mapping. */ | ||
| 33 | #define MAP_NORESERVE	0x00040		/* Don't check for reservations. */ | ||
| 34 | #define MAP_POPULATE	0x08000		/* Populate (prefault) pagetables. */ | ||
| 35 | #define MAP_NONBLOCK	0x10000		/* Do not block on IO. */ | ||
| 36 | #define MAP_STACK	0x20000		/* Allocation is for a stack. */ | ||
| 37 | #define MAP_HUGETLB	0x40000		/* Create huge page mapping. */ | ||
| 38 | #define MAP_SYNC	0x80000		/* Perform synchronous page | ||
| 39 | 					 faults for the mapping. */ | ||
| 40 | #define MAP_FIXED_NOREPLACE 0x100000	/* MAP_FIXED but do not unmap | ||
| 41 | 					 underlying mapping. */ | ||
| 42 | |||
| 43 | /* Flags for `mlockall'. */ | ||
| 44 | #define MCL_CURRENT	0x2000		/* Lock all currently mapped pages. */ | ||
| 45 | #define MCL_FUTURE	0x4000		/* Lock all additions to address | ||
| 46 | 					 space. */ | ||
| 47 | #define MCL_ONFAULT	0x8000		/* Lock all pages that are | ||
| 48 | 					 faulted in. */ | ||
| 49 | |||
| 50 | /* Include generic Linux declarations. */ | ||
| 51 | #include <bits/mman-linux.h> | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabihf/bits/procfs.h deleted-49| ... | @@ -1,49 +0,0 @@ | ||
| 1 | /* Types for registers for sys/procfs.h. PowerPC version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_PROCFS_H | ||
| 20 | # error "Never include <bits/procfs.h> directly; use <sys/procfs.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <signal.h> | ||
| 24 | #include <sys/ucontext.h> | ||
| 25 | |||
| 26 | /* These definitions are normally provided by ucontext.h via | ||
| 27 | asm/sigcontext.h, asm/ptrace.h, and asm/elf.h. Otherwise we define | ||
| 28 | them here. */ | ||
| 29 | #if !defined __PPC64_ELF_H && !defined _ASM_POWERPC_ELF_H | ||
| 30 | #define ELF_NGREG 48 /* includes nip, msr, lr, etc. */ | ||
| 31 | #define ELF_NFPREG 33 /* includes fpscr */ | ||
| 32 | #if __WORDSIZE == 32 | ||
| 33 | # define ELF_NVRREG 33 /* includes vscr */ | ||
| 34 | #else | ||
| 35 | # define ELF_NVRREG 34 /* includes vscr */ | ||
| 36 | #endif | ||
| 37 | |||
| 38 | typedef unsigned long elf_greg_t; | ||
| 39 | typedef elf_greg_t elf_gregset_t[ELF_NGREG]; | ||
| 40 | |||
| 41 | typedef double elf_fpreg_t; | ||
| 42 | typedef elf_fpreg_t elf_fpregset_t[ELF_NFPREG]; | ||
| 43 | |||
| 44 | /* Altivec registers */ | ||
| 45 | typedef struct { | ||
| 46 | unsigned int u[4]; | ||
| 47 | } __attribute__ ((__aligned__ (16))) elf_vrreg_t; | ||
| 48 | typedef elf_vrreg_t elf_vrregset_t[ELF_NVRREG]; | ||
| 49 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabihf/bits/pthread_stack_min.h deleted-21| ... | @@ -1,21 +0,0 @@ | ||
| 1 | /* Definition of PTHREAD_STACK_MIN. Linux/PPC version. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public License as | ||
| 7 | published by the Free Software Foundation; either version 2.1 of the | ||
| 8 | License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; see the file COPYING.LIB. If | ||
| 17 | not, see <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* Minimum size for a thread. At least two pages for systems with 64k | ||
| 20 | pages. */ | ||
| 21 | #define PTHREAD_STACK_MIN	131072 | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabihf/bits/rseq.h deleted-37| ... | @@ -1,37 +0,0 @@ | ||
| 1 | /* Restartable Sequences Linux powerpc architecture header. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_RSEQ_H | ||
| 19 | # error "Never use <bits/rseq.h> directly; include <sys/rseq.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* RSEQ_SIG is a signature required before each abort handler code. | ||
| 23 | |||
| 24 | It is a 32-bit value that maps to actual architecture code compiled | ||
| 25 | into applications and libraries. It needs to be defined for each | ||
| 26 | architecture. When choosing this value, it needs to be taken into | ||
| 27 | account that generating invalid instructions may have ill effects on | ||
| 28 | tools like objdump, and may also have impact on the CPU speculative | ||
| 29 | execution efficiency in some cases. | ||
| 30 | |||
| 31 | RSEQ_SIG uses the following trap instruction: | ||
| 32 | |||
| 33 | powerpc-be: 0f e5 00 0b twui r5,11 | ||
| 34 | powerpc64-le: 0b 00 e5 0f twui r5,11 | ||
| 35 | powerpc64-be: 0f e5 00 0b twui r5,11 */ | ||
| 36 | |||
| 37 | #define RSEQ_SIG 0x0fe5000b | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabihf/bits/setjmp.h deleted-50| ... | @@ -1,50 +0,0 @@ | ||
| 1 | /* Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | /* Define the machine-dependent type `jmp_buf'. PowerPC version. */ | ||
| 19 | #ifndef _BITS_SETJMP_H | ||
| 20 | #define _BITS_SETJMP_H 1 | ||
| 21 | |||
| 22 | #if !defined _SETJMP_H && !defined _PTHREAD_H | ||
| 23 | # error "Never include <bits/setjmp.h> directly; use <setjmp.h> instead." | ||
| 24 | #endif | ||
| 25 | |||
| 26 | /* The previous bits/setjmp.h had __jmp_buf defined as a structure. | ||
| 27 | We use an array of 'long int' instead, to make writing the | ||
| 28 | assembler easier. Naturally, user code should not depend on | ||
| 29 | either representation. */ | ||
| 30 | |||
| 31 | #include <bits/wordsize.h> | ||
| 32 | |||
| 33 | /* The current powerpc 32-bit Altivec ABI specifies for SVR4 ABI and EABI | ||
| 34 | the vrsave must be at byte 248 & v20 at byte 256. So we must pad this | ||
| 35 | correctly on 32 bit. It also insists that vecregs are only guaranteed | ||
| 36 | 4 byte alignment so we need to use vperm in the setjmp/longjmp routines. | ||
| 37 | We have to version the code because members like int __mask_was_saved | ||
| 38 | in the jmp_buf will move as jmp_buf is now larger than 248 bytes. We | ||
| 39 | cannot keep the altivec jmp_buf backward compatible with the jmp_buf. */ | ||
| 40 | #ifndef	_ASM | ||
| 41 | # if __WORDSIZE == 64 | ||
| 42 | typedef long int __jmp_buf[64] __attribute__ ((__aligned__ (16))); | ||
| 43 | # else | ||
| 44 | /* The alignment is not essential, i.e.the buffer can be copied to a 4 byte | ||
| 45 | aligned buffer as per the ABI it is just added for performance reasons. */ | ||
| 46 | typedef long int __jmp_buf[64 + (12 * 4)] __attribute__ ((__aligned__ (16))); | ||
| 47 | # endif | ||
| 48 | #endif | ||
| 49 | |||
| 50 | #endif /* bits/setjmp.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabihf/bits/sigstack.h deleted-37| ... | @@ -1,37 +0,0 @@ | ||
| 1 | /* sigstack, sigaltstack definitions. | ||
| 2 | Copyright (C) 1998-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_SIGSTACK_H | ||
| 20 | #define _BITS_SIGSTACK_H 1 | ||
| 21 | |||
| 22 | #if !defined _SIGNAL_H && !defined _SYS_UCONTEXT_H | ||
| 23 | # error "Never include this file directly. Use <signal.h> instead" | ||
| 24 | #endif | ||
| 25 | |||
| 26 | #ifdef __powerpc64__ | ||
| 27 | #define MINSIGSTKSZ	8192 | ||
| 28 | #define SIGSTKSZ	32768 | ||
| 29 | #else | ||
| 30 | /* Minimum stack size for a signal handler. */ | ||
| 31 | #define MINSIGSTKSZ	4096 | ||
| 32 | |||
| 33 | /* System default stack size. */ | ||
| 34 | #define SIGSTKSZ	16384 | ||
| 35 | #endif | ||
| 36 | |||
| 37 | #endif /* bits/sigstack.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabihf/bits/socket-constants.h deleted-70| ... | @@ -1,70 +0,0 @@ | ||
| 1 | /* Socket constants which vary among Linux architectures. Version for POWER. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SOCKET_H | ||
| 20 | # error "Never include <bits/socket-constants.h> directly; use <sys/socket.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #define SOL_SOCKET 1 | ||
| 24 | #define SO_ACCEPTCONN 30 | ||
| 25 | #define SO_BROADCAST 6 | ||
| 26 | #define SO_DONTROUTE 5 | ||
| 27 | #define SO_ERROR 4 | ||
| 28 | #define SO_KEEPALIVE 9 | ||
| 29 | #define SO_LINGER 13 | ||
| 30 | #define SO_OOBINLINE 10 | ||
| 31 | #define SO_RCVBUF 8 | ||
| 32 | #define SO_RCVLOWAT 16 | ||
| 33 | #define SO_REUSEADDR 2 | ||
| 34 | #define SO_SNDBUF 7 | ||
| 35 | #define SO_SNDLOWAT 17 | ||
| 36 | #define SO_TYPE 3 | ||
| 37 | |||
| 38 | #if __TIMESIZE == 64 | ||
| 39 | # define SO_RCVTIMEO 18 | ||
| 40 | # define SO_SNDTIMEO 19 | ||
| 41 | # define SO_TIMESTAMP 29 | ||
| 42 | # define SO_TIMESTAMPNS 35 | ||
| 43 | # define SO_TIMESTAMPING 37 | ||
| 44 | #else | ||
| 45 | # define SO_RCVTIMEO_OLD 18 | ||
| 46 | # define SO_SNDTIMEO_OLD 19 | ||
| 47 | # define SO_RCVTIMEO_NEW 66 | ||
| 48 | # define SO_SNDTIMEO_NEW 67 | ||
| 49 | |||
| 50 | # define SO_TIMESTAMP_OLD 29 | ||
| 51 | # define SO_TIMESTAMPNS_OLD 35 | ||
| 52 | # define SO_TIMESTAMPING_OLD 37 | ||
| 53 | # define SO_TIMESTAMP_NEW 63 | ||
| 54 | # define SO_TIMESTAMPNS_NEW 64 | ||
| 55 | # define SO_TIMESTAMPING_NEW 65 | ||
| 56 | |||
| 57 | # ifdef __USE_TIME64_REDIRECTS | ||
| 58 | # define SO_RCVTIMEO SO_RCVTIMEO_NEW | ||
| 59 | # define SO_SNDTIMEO SO_SNDTIMEO_NEW | ||
| 60 | # define SO_TIMESTAMP SO_TIMESTAMP_NEW | ||
| 61 | # define SO_TIMESTAMPNS SO_TIMESTAMPNS_NEW | ||
| 62 | # define SO_TIMESTAMPING SO_TIMESTAMPING_NEW | ||
| 63 | # else | ||
| 64 | # define SO_RCVTIMEO SO_RCVTIMEO_OLD | ||
| 65 | # define SO_SNDTIMEO SO_SNDTIMEO_OLD | ||
| 66 | # define SO_TIMESTAMP SO_TIMESTAMP_OLD | ||
| 67 | # define SO_TIMESTAMPNS SO_TIMESTAMPNS_OLD | ||
| 68 | # define SO_TIMESTAMPING SO_TIMESTAMPING_OLD | ||
| 69 | # endif | ||
| 70 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabihf/bits/struct_mutex.h deleted-63| ... | @@ -1,63 +0,0 @@ | ||
| 1 | /* PowerPC internal mutex struct definitions. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <http://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _THREAD_MUTEX_INTERNAL_H | ||
| 20 | #define _THREAD_MUTEX_INTERNAL_H 1 | ||
| 21 | |||
| 22 | struct __pthread_mutex_s | ||
| 23 | { | ||
| 24 | int __lock; | ||
| 25 | unsigned int __count; | ||
| 26 | int __owner; | ||
| 27 | #if __WORDSIZE == 64 | ||
| 28 | unsigned int __nusers; | ||
| 29 | #endif | ||
| 30 | /* KIND must stay at this position in the structure to maintain | ||
| 31 | binary compatibility with static initializers. */ | ||
| 32 | int __kind; | ||
| 33 | #if __WORDSIZE == 64 | ||
| 34 | short __spins; | ||
| 35 | short __elision; | ||
| 36 | __pthread_list_t __list; | ||
| 37 | # define __PTHREAD_MUTEX_HAVE_PREV 1 | ||
| 38 | #else | ||
| 39 | unsigned int __nusers; | ||
| 40 | __extension__ union | ||
| 41 | { | ||
| 42 | struct | ||
| 43 | { | ||
| 44 | short __espins; | ||
| 45 | short __elision; | ||
| 46 | # define __spins __elision_data.__espins | ||
| 47 | # define __elision __elision_data.__elision | ||
| 48 | } __elision_data; | ||
| 49 | __pthread_slist_t __list; | ||
| 50 | }; | ||
| 51 | # define __PTHREAD_MUTEX_HAVE_PREV 0 | ||
| 52 | #endif | ||
| 53 | }; | ||
| 54 | |||
| 55 | #if __WORDSIZE == 64 | ||
| 56 | # define __PTHREAD_MUTEX_INITIALIZER(__kind) \ | ||
| 57 | 0, 0, 0, 0, __kind, 0, 0, { 0, 0 } | ||
| 58 | #else | ||
| 59 | # define __PTHREAD_MUTEX_INITIALIZER(__kind) \ | ||
| 60 | 0, 0, 0, __kind, 0, { { 0, 0 } } | ||
| 61 | #endif | ||
| 62 | |||
| 63 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabihf/bits/struct_rwlock.h deleted-61| ... | @@ -1,61 +0,0 @@ | ||
| 1 | /* PowerPC internal rwlock struct definitions. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library; if not, see | ||
| 18 | <http://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifndef _RWLOCK_INTERNAL_H | ||
| 21 | #define _RWLOCK_INTERNAL_H | ||
| 22 | |||
| 23 | struct __pthread_rwlock_arch_t | ||
| 24 | { | ||
| 25 | unsigned int __readers; | ||
| 26 | unsigned int __writers; | ||
| 27 | unsigned int __wrphase_futex; | ||
| 28 | unsigned int __writers_futex; | ||
| 29 | unsigned int __pad3; | ||
| 30 | unsigned int __pad4; | ||
| 31 | #if __WORDSIZE == 64 | ||
| 32 | int __cur_writer; | ||
| 33 | int __shared; | ||
| 34 | unsigned char __rwelision; | ||
| 35 | unsigned char __pad1[7]; | ||
| 36 | unsigned long int __pad2; | ||
| 37 | /* FLAGS must stay at this position in the structure to maintain | ||
| 38 | binary compatibility. */ | ||
| 39 | unsigned int __flags; | ||
| 40 | # define __PTHREAD_RWLOCK_ELISION_EXTRA 0, {0, 0, 0, 0, 0, 0, 0 } | ||
| 41 | #else | ||
| 42 | unsigned char __rwelision; | ||
| 43 | unsigned char __pad2; | ||
| 44 | unsigned char __shared; | ||
| 45 | /* FLAGS must stay at this position in the structure to maintain | ||
| 46 | binary compatibility. */ | ||
| 47 | unsigned char __flags; | ||
| 48 | int __cur_writer; | ||
| 49 | # define __PTHREAD_RWLOCK_ELISION_EXTRA 0 | ||
| 50 | #endif | ||
| 51 | }; | ||
| 52 | |||
| 53 | #if __WORDSIZE == 64 | ||
| 54 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 55 | 0, 0, 0, 0, 0, 0, 0, 0, __PTHREAD_RWLOCK_ELISION_EXTRA, 0, __flags | ||
| 56 | #else | ||
| 57 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 58 | 0, 0, 0, 0, 0, 0, __PTHREAD_RWLOCK_ELISION_EXTRA, 0, 0, __flags, 0 | ||
| 59 | #endif | ||
| 60 | |||
| 61 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabihf/bits/struct_stat.h deleted-231| ... | @@ -1,231 +0,0 @@ | ||
| 1 | /* Definition for struct stat. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #if !defined _SYS_STAT_H && !defined _FCNTL_H | ||
| 20 | # error "Never include <bits/struct_stat.h> directly; use <sys/stat.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef _BITS_STRUCT_STAT_H | ||
| 24 | #define _BITS_STRUCT_STAT_H	1 | ||
| 25 | |||
| 26 | #include <bits/wordsize.h> | ||
| 27 | |||
| 28 | #if __WORDSIZE == 32 | ||
| 29 | struct stat | ||
| 30 | { | ||
| 31 | # ifdef __USE_TIME64_REDIRECTS | ||
| 32 | # include <bits/struct_stat_time64_helper.h> | ||
| 33 | # else | ||
| 34 | __dev_t st_dev;			/* Device. */ | ||
| 35 | # ifndef __USE_FILE_OFFSET64 | ||
| 36 | unsigned short int __pad1; | ||
| 37 | __ino_t st_ino;			/* File serial number.	*/ | ||
| 38 | # else | ||
| 39 | __ino64_t st_ino;			/* File serial number.	*/ | ||
| 40 | # endif | ||
| 41 | __mode_t st_mode;			/* File mode. */ | ||
| 42 | __nlink_t st_nlink;			/* Link count. */ | ||
| 43 | __uid_t st_uid;			/* User ID of the file's owner.	*/ | ||
| 44 | __gid_t st_gid;			/* Group ID of the file's group.*/ | ||
| 45 | __dev_t st_rdev;			/* Device number, if device. */ | ||
| 46 | unsigned short int __pad2; | ||
| 47 | # ifndef __USE_FILE_OFFSET64 | ||
| 48 | __off_t st_size;			/* Size of file, in bytes. */ | ||
| 49 | # else | ||
| 50 | __off64_t st_size;			/* Size of file, in bytes. */ | ||
| 51 | # endif | ||
| 52 | __blksize_t st_blksize;		/* Optimal block size for I/O. */ | ||
| 53 | |||
| 54 | # ifndef __USE_FILE_OFFSET64 | ||
| 55 | __blkcnt_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 56 | # else | ||
| 57 | __blkcnt64_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 58 | # endif | ||
| 59 | # ifdef __USE_XOPEN2K8 | ||
| 60 | /* Nanosecond resolution timestamps are stored in a format | ||
| 61 | equivalent to 'struct timespec'. This is the type used | ||
| 62 | whenever possible but the Unix namespace rules do not allow the | ||
| 63 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 64 | Therefore we have to handle the use of this header in strictly | ||
| 65 | standard-compliant sources special. */ | ||
| 66 | struct timespec st_atim;		/* Time of last access. */ | ||
| 67 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 68 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 69 | # define st_atime st_atim.tv_sec	/* Backward compatibility. */ | ||
| 70 | # define st_mtime st_mtim.tv_sec | ||
| 71 | # define st_ctime st_ctim.tv_sec | ||
| 72 | # else | ||
| 73 | __time_t st_atime;			/* Time of last access. */ | ||
| 74 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 75 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 76 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 77 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 78 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 79 | # endif | ||
| 80 | unsigned long int __glibc_reserved4; | ||
| 81 | unsigned long int __glibc_reserved5; | ||
| 82 | # endif /* __USE_TIME64_REDIRECTS */ | ||
| 83 | }; | ||
| 84 | |||
| 85 | # ifdef __USE_LARGEFILE64 | ||
| 86 | struct stat64 | ||
| 87 | { | ||
| 88 | # ifdef __USE_TIME64_REDIRECTS | ||
| 89 | # include <bits/struct_stat_time64_helper.h> | ||
| 90 | # else | ||
| 91 | __dev_t st_dev;			/* Device. */ | ||
| 92 | __ino64_t st_ino;			/* File serial number.	*/ | ||
| 93 | __mode_t st_mode;			/* File mode. */ | ||
| 94 | __nlink_t st_nlink;			/* Link count. */ | ||
| 95 | __uid_t st_uid;			/* User ID of the file's owner.	*/ | ||
| 96 | __gid_t st_gid;			/* Group ID of the file's group.*/ | ||
| 97 | __dev_t st_rdev;			/* Device number, if device. */ | ||
| 98 | unsigned short int __pad2; | ||
| 99 | __off64_t st_size;			/* Size of file, in bytes. */ | ||
| 100 | __blksize_t st_blksize;		/* Optimal block size for I/O. */ | ||
| 101 | __blkcnt64_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 102 | # ifdef __USE_XOPEN2K8 | ||
| 103 | /* Nanosecond resolution timestamps are stored in a format | ||
| 104 | equivalent to 'struct timespec'. This is the type used | ||
| 105 | whenever possible but the Unix namespace rules do not allow the | ||
| 106 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 107 | Therefore we have to handle the use of this header in strictly | ||
| 108 | standard-compliant sources special. */ | ||
| 109 | struct timespec st_atim;		/* Time of last access. */ | ||
| 110 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 111 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 112 | # define st_atime st_atim.tv_sec	/* Backward compatibility. */ | ||
| 113 | # define st_mtime st_mtim.tv_sec | ||
| 114 | # define st_ctime st_ctim.tv_sec | ||
| 115 | # else | ||
| 116 | __time_t st_atime;			/* Time of last access. */ | ||
| 117 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 118 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 119 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 120 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 121 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 122 | # endif | ||
| 123 | unsigned long int __glibc_reserved4; | ||
| 124 | unsigned long int __glibc_reserved5; | ||
| 125 | # endif /* __USE_TIME64_REDIRECTS */ | ||
| 126 | }; | ||
| 127 | # endif /* __USE_LARGEFILE64 */ | ||
| 128 | |||
| 129 | #else /* __WORDSIZE == 32 */ | ||
| 130 | |||
| 131 | struct stat | ||
| 132 | { | ||
| 133 | __dev_t st_dev;			/* Device. */ | ||
| 134 | # ifndef __USE_FILE_OFFSET64 | ||
| 135 | __ino_t st_ino;			/* File serial number.	*/ | ||
| 136 | # else | ||
| 137 | __ino64_t st_ino;			/* File serial number.	*/ | ||
| 138 | # endif | ||
| 139 | __nlink_t st_nlink;			/* Link count. */ | ||
| 140 | __mode_t st_mode;			/* File mode. */ | ||
| 141 | __uid_t st_uid;			/* User ID of the file's owner.	*/ | ||
| 142 | __gid_t st_gid;			/* Group ID of the file's group.*/ | ||
| 143 | int __pad2; | ||
| 144 | __dev_t st_rdev;			/* Device number, if device. */ | ||
| 145 | # ifndef __USE_FILE_OFFSET64 | ||
| 146 | __off_t st_size;			/* Size of file, in bytes. */ | ||
| 147 | # else | ||
| 148 | __off64_t st_size;			/* Size of file, in bytes. */ | ||
| 149 | # endif | ||
| 150 | __blksize_t st_blksize;		/* Optimal block size for I/O. */ | ||
| 151 | |||
| 152 | # ifndef __USE_FILE_OFFSET64 | ||
| 153 | __blkcnt_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 154 | # else | ||
| 155 | __blkcnt64_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 156 | # endif | ||
| 157 | # ifdef __USE_XOPEN2K8 | ||
| 158 | /* Nanosecond resolution timestamps are stored in a format | ||
| 159 | equivalent to 'struct timespec'. This is the type used | ||
| 160 | whenever possible but the Unix namespace rules do not allow the | ||
| 161 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 162 | Therefore we have to handle the use of this header in strictly | ||
| 163 | standard-compliant sources special. */ | ||
| 164 | struct timespec st_atim;		/* Time of last access. */ | ||
| 165 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 166 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 167 | # define st_atime st_atim.tv_sec	/* Backward compatibility. */ | ||
| 168 | # define st_mtime st_mtim.tv_sec | ||
| 169 | # define st_ctime st_ctim.tv_sec | ||
| 170 | # else | ||
| 171 | __time_t st_atime;			/* Time of last access. */ | ||
| 172 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 173 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 174 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 175 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 176 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 177 | # endif | ||
| 178 | unsigned long int __glibc_reserved4; | ||
| 179 | unsigned long int __glibc_reserved5; | ||
| 180 | unsigned long int __glibc_reserved6; | ||
| 181 | }; | ||
| 182 | |||
| 183 | # ifdef __USE_LARGEFILE64 | ||
| 184 | struct stat64 | ||
| 185 | { | ||
| 186 | __dev_t st_dev;			/* Device. */ | ||
| 187 | __ino64_t st_ino;			/* File serial number.	*/ | ||
| 188 | __nlink_t st_nlink;			/* Link count. */ | ||
| 189 | __mode_t st_mode;			/* File mode. */ | ||
| 190 | __uid_t st_uid;			/* User ID of the file's owner.	*/ | ||
| 191 | __gid_t st_gid;			/* Group ID of the file's group.*/ | ||
| 192 | int __pad2; | ||
| 193 | __dev_t st_rdev;			/* Device number, if device. */ | ||
| 194 | __off64_t st_size;			/* Size of file, in bytes. */ | ||
| 195 | __blksize_t st_blksize;		/* Optimal block size for I/O. */ | ||
| 196 | __blkcnt64_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 197 | # ifdef __USE_XOPEN2K8 | ||
| 198 | /* Nanosecond resolution timestamps are stored in a format | ||
| 199 | equivalent to 'struct timespec'. This is the type used | ||
| 200 | whenever possible but the Unix namespace rules do not allow the | ||
| 201 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 202 | Therefore we have to handle the use of this header in strictly | ||
| 203 | standard-compliant sources special. */ | ||
| 204 | struct timespec st_atim;		/* Time of last access. */ | ||
| 205 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 206 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 207 | # define st_atime st_atim.tv_sec	/* Backward compatibility. */ | ||
| 208 | # define st_mtime st_mtim.tv_sec | ||
| 209 | # define st_ctime st_ctim.tv_sec | ||
| 210 | # else | ||
| 211 | __time_t st_atime;			/* Time of last access. */ | ||
| 212 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 213 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 214 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 215 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 216 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 217 | # endif | ||
| 218 | unsigned long int __glibc_reserved4; | ||
| 219 | unsigned long int __glibc_reserved5; | ||
| 220 | unsigned long int __glibc_reserved6; | ||
| 221 | }; | ||
| 222 | # endif /* __USE_LARGEFILE64 */ | ||
| 223 | #endif | ||
| 224 | |||
| 225 | /* Tell code we have these members. */ | ||
| 226 | #define	_STATBUF_ST_BLKSIZE | ||
| 227 | #define _STATBUF_ST_RDEV | ||
| 228 | /* Nanosecond resolution time values are supported. */ | ||
| 229 | #define _STATBUF_ST_NSEC | ||
| 230 | |||
| 231 | #endif /* _BITS_STRUCT_STAT_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabihf/bits/termios-baud.h deleted-45| ... | @@ -1,45 +0,0 @@ | ||
| 1 | /* termios baud rate selection definitions. Linux/powerpc version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-baud.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifdef __USE_MISC | ||
| 24 | # define CBAUD	0000377 | ||
| 25 | # define CBAUDEX 0000020 | ||
| 26 | # define CMSPAR 010000000000		/* mark or space (stick) parity */ | ||
| 27 | # define CRTSCTS 020000000000		/* flow control */ | ||
| 28 | #endif | ||
| 29 | |||
| 30 | #define B57600 00020 | ||
| 31 | #define B115200 00021 | ||
| 32 | #define B230400 00022 | ||
| 33 | #define B460800 00023 | ||
| 34 | #define B500000 00024 | ||
| 35 | #define B576000 00025 | ||
| 36 | #define B921600 00026 | ||
| 37 | #define B1000000 00027 | ||
| 38 | #define B1152000 00030 | ||
| 39 | #define B1500000 00031 | ||
| 40 | #define B2000000 00032 | ||
| 41 | #define B2500000 00033 | ||
| 42 | #define B3000000 00034 | ||
| 43 | #define B3500000 00035 | ||
| 44 | #define B4000000 00036 | ||
| 45 | #define __MAX_BAUD B4000000 | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabihf/bits/termios-c_cc.h deleted-41| ... | @@ -1,41 +0,0 @@ | ||
| 1 | /* termios c_cc symbolic constant definitions. Linux/powerpc version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-c_cc.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* c_cc characters */ | ||
| 24 | #define VINTR	0 | ||
| 25 | #define VQUIT	1 | ||
| 26 | #define VERASE	2 | ||
| 27 | #define VKILL	3 | ||
| 28 | #define VEOF	4 | ||
| 29 | #define VMIN	5 | ||
| 30 | #define VEOL	6 | ||
| 31 | #define VTIME	7 | ||
| 32 | #define VEOL2	8 | ||
| 33 | #define VSWTC	9 | ||
| 34 | |||
| 35 | #define VWERASE	10 | ||
| 36 | #define VREPRINT	11 | ||
| 37 | #define VSUSP		12 | ||
| 38 | #define VSTART		13 | ||
| 39 | #define VSTOP		14 | ||
| 40 | #define VLNEXT		15 | ||
| 41 | #define VDISCARD	16 | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabihf/bits/termios-c_cflag.h deleted-39| ... | @@ -1,39 +0,0 @@ | ||
| 1 | /* termios control mode definitions. Linux/powerpc version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-c_cflag.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #define CSIZE	00001400 | ||
| 24 | #define CS5	00000000 | ||
| 25 | #define CS6	00000400 | ||
| 26 | #define CS7	00001000 | ||
| 27 | #define CS8	00001400 | ||
| 28 | |||
| 29 | #define CSTOPB	00002000 | ||
| 30 | #define CREAD	00004000 | ||
| 31 | #define PARENB	00010000 | ||
| 32 | #define PARODD	00020000 | ||
| 33 | #define HUPCL	00040000 | ||
| 34 | |||
| 35 | #define CLOCAL	00100000 | ||
| 36 | |||
| 37 | #ifdef __USE_MISC | ||
| 38 | # define ADDRB 04000000000 | ||
| 39 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabihf/bits/termios-c_iflag.h deleted-38| ... | @@ -1,38 +0,0 @@ | ||
| 1 | /* termios input mode definitions. Linux/powerpc version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-c_iflags.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* c_iflag bits */ | ||
| 24 | #define IGNBRK	0000001 | ||
| 25 | #define BRKINT	0000002 | ||
| 26 | #define IGNPAR	0000004 | ||
| 27 | #define PARMRK	0000010 | ||
| 28 | #define INPCK	0000020 | ||
| 29 | #define ISTRIP	0000040 | ||
| 30 | #define INLCR	0000100 | ||
| 31 | #define IGNCR	0000200 | ||
| 32 | #define ICRNL	0000400 | ||
| 33 | #define IXON	0001000 | ||
| 34 | #define IXOFF	0002000 | ||
| 35 | #define IXANY	0004000 | ||
| 36 | #define IUCLC	0010000 | ||
| 37 | #define IMAXBEL	0020000 | ||
| 38 | #define IUTF8	0040000 | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabihf/bits/termios-c_lflag.h deleted-45| ... | @@ -1,45 +0,0 @@ | ||
| 1 | /* termios local mode definitions. Linux/powerpc version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-c_lflag.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* c_lflag bits */ | ||
| 24 | #define ISIG	0x00000080 | ||
| 25 | #define ICANON	0x00000100 | ||
| 26 | #if defined __USE_MISC || (defined __USE_XOPEN && !defined __USE_XOPEN2K) | ||
| 27 | # define XCASE	0x00004000 | ||
| 28 | #endif | ||
| 29 | #define ECHO	0x00000008 | ||
| 30 | #define ECHOE	0x00000002 | ||
| 31 | #define ECHOK	0x00000004 | ||
| 32 | #define ECHONL	0x00000010 | ||
| 33 | #define NOFLSH	0x80000000 | ||
| 34 | #define TOSTOP	0x00400000 | ||
| 35 | #ifdef __USE_MISC | ||
| 36 | # define ECHOCTL	0x00000040 | ||
| 37 | # define ECHOPRT	0x00000020 | ||
| 38 | # define ECHOKE	0x00000001 | ||
| 39 | # define FLUSHO	0x00800000 | ||
| 40 | # define PENDIN	0x20000000 | ||
| 41 | #endif | ||
| 42 | #define IEXTEN	0x00000400 | ||
| 43 | #ifdef __USE_MISC | ||
| 44 | # define EXTPROC 0x10000000 | ||
| 45 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabihf/bits/termios-c_oflag.h deleted-65| ... | @@ -1,65 +0,0 @@ | ||
| 1 | /* termios output mode definitions. Linux/powerpc version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-c_oflag.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* c_oflag bits */ | ||
| 24 | #define OPOST	0000001 | ||
| 25 | #define ONLCR	0000002 | ||
| 26 | #define OLCUC	0000004 | ||
| 27 | |||
| 28 | #define OCRNL	0000010 | ||
| 29 | #define ONOCR	0000020 | ||
| 30 | #define ONLRET	0000040 | ||
| 31 | |||
| 32 | #define OFILL	00000100 | ||
| 33 | #define OFDEL	00000200 | ||
| 34 | #if defined __USE_MISC || defined __USE_XOPEN | ||
| 35 | # define NLDLY	00001400 | ||
| 36 | # define NL0	00000000 | ||
| 37 | # define NL1	00000400 | ||
| 38 | # if defined __USE_MISC | ||
| 39 | # define NL2	00001000 | ||
| 40 | # define NL3	00001400 | ||
| 41 | # endif | ||
| 42 | # define TABDLY	00006000 | ||
| 43 | # define TAB0	00000000 | ||
| 44 | # define TAB1	00002000 | ||
| 45 | # define TAB2	00004000 | ||
| 46 | # define TAB3	00006000 | ||
| 47 | # define CRDLY	00030000 | ||
| 48 | # define CR0	00000000 | ||
| 49 | # define CR1	00010000 | ||
| 50 | # define CR2	00020000 | ||
| 51 | # define CR3	00030000 | ||
| 52 | # define FFDLY	00040000 | ||
| 53 | # define FF0	00000000 | ||
| 54 | # define FF1	00040000 | ||
| 55 | # define BSDLY	00100000 | ||
| 56 | # define BS0	00000000 | ||
| 57 | # define BS1	00100000 | ||
| 58 | #endif | ||
| 59 | #define VTDLY	00200000 | ||
| 60 | #define VT0	00000000 | ||
| 61 | #define VT1	00200000 | ||
| 62 | |||
| 63 | #ifdef __USE_MISC | ||
| 64 | # define XTABS	00006000 | ||
| 65 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabihf/bits/termios-misc.h deleted-72| ... | @@ -1,72 +0,0 @@ | ||
| 1 | /* termios baud platform specific definitions. Linux/powerpc version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-misc.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifdef __USE_MISC | ||
| 24 | |||
| 25 | struct sgttyb { | ||
| 26 | 	char	sg_ispeed; | ||
| 27 | 	char	sg_ospeed; | ||
| 28 | 	char	sg_erase; | ||
| 29 | 	char	sg_kill; | ||
| 30 | 	short	sg_flags; | ||
| 31 | }; | ||
| 32 | |||
| 33 | struct tchars { | ||
| 34 | 	char	t_intrc; | ||
| 35 | 	char	t_quitc; | ||
| 36 | 	char	t_startc; | ||
| 37 | 	char	t_stopc; | ||
| 38 | 	char	t_eofc; | ||
| 39 | 	char	t_brkc; | ||
| 40 | }; | ||
| 41 | |||
| 42 | struct ltchars { | ||
| 43 | 	char	t_suspc; | ||
| 44 | 	char	t_dsuspc; | ||
| 45 | 	char	t_rprntc; | ||
| 46 | 	char	t_flushc; | ||
| 47 | 	char	t_werasc; | ||
| 48 | 	char	t_lnextc; | ||
| 49 | }; | ||
| 50 | |||
| 51 | /* Used for packet mode */ | ||
| 52 | #define TIOCPKT_DATA		 0 | ||
| 53 | #define TIOCPKT_FLUSHREAD	 1 | ||
| 54 | #define TIOCPKT_FLUSHWRITE	 2 | ||
| 55 | #define TIOCPKT_STOP		 4 | ||
| 56 | #define TIOCPKT_START		 8 | ||
| 57 | #define TIOCPKT_NOSTOP		16 | ||
| 58 | #define TIOCPKT_DOSTOP		32 | ||
| 59 | |||
| 60 | /* c_cc characters */ | ||
| 61 | #define _VINTR	0 | ||
| 62 | #define _VQUIT	1 | ||
| 63 | #define _VERASE	2 | ||
| 64 | #define _VKILL	3 | ||
| 65 | #define _VEOF	4 | ||
| 66 | #define _VMIN	5 | ||
| 67 | #define _VEOL	6 | ||
| 68 | #define _VTIME	7 | ||
| 69 | #define _VEOL2	8 | ||
| 70 | #define _VSWTC	9 | ||
| 71 | |||
| 72 | #endif /* __USE_MISC */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabihf/bits/timesize.h deleted-22| ... | @@ -1,22 +0,0 @@ | ||
| 1 | /* Bit size of the time_t type at glibc build time, Linux/PowerPC. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #include <bits/wordsize.h> | ||
| 20 | |||
| 21 | /* Size in bits of the 'time_t' type of the default ABI. */ | ||
| 22 | #define __TIMESIZE	__WORDSIZE | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabihf/bits/types/struct_msqid_ds.h deleted-53| ... | @@ -1,53 +0,0 @@ | ||
| 1 | /* Linux/PowerPC implementation of the SysV message struct msqid_ds. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_MSG_H | ||
| 20 | # error "Never use <bits/msq.h> directly; include <sys/msg.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <bits/types/time_t.h> | ||
| 24 | |||
| 25 | /* Structure of record for one message inside the kernel. | ||
| 26 | The type `struct msg' is opaque. */ | ||
| 27 | struct msqid_ds | ||
| 28 | { | ||
| 29 | #ifdef __USE_TIME64_REDIRECTS | ||
| 30 | # include <bits/types/struct_msqid64_ds_helper.h> | ||
| 31 | #else | ||
| 32 | struct ipc_perm msg_perm;	/* structure describing operation permission */ | ||
| 33 | # if __TIMESIZE == 32 | ||
| 34 | unsigned long int __msg_stime_high; | ||
| 35 | __time_t msg_stime;		/* time of last msgsnd command */ | ||
| 36 | unsigned long int __msg_rtime_high; | ||
| 37 | __time_t msg_rtime;		/* time of last msgsnd command */ | ||
| 38 | unsigned long int __msg_ctime_high; | ||
| 39 | __time_t msg_ctime;		/* time of last change */ | ||
| 40 | # else | ||
| 41 | __time_t msg_stime;		/* time of last msgsnd command */ | ||
| 42 | __time_t msg_rtime;		/* time of last msgsnd command */ | ||
| 43 | __time_t msg_ctime;		/* time of last change */ | ||
| 44 | # endif | ||
| 45 | __syscall_ulong_t __msg_cbytes; /* current number of bytes on queue */ | ||
| 46 | msgqnum_t msg_qnum;		/* number of messages currently on queue */ | ||
| 47 | msglen_t msg_qbytes;		/* max number of bytes allowed on queue */ | ||
| 48 | __pid_t msg_lspid;		/* pid of last msgsnd() */ | ||
| 49 | __pid_t msg_lrpid;		/* pid of last msgrcv() */ | ||
| 50 | __syscall_ulong_t __glibc_reserved4; | ||
| 51 | __syscall_ulong_t __glibc_reserved5; | ||
| 52 | #endif | ||
| 53 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabihf/bits/types/struct_semid_ds.h deleted-43| ... | @@ -1,43 +0,0 @@ | ||
| 1 | /* PowerPC implementation of the semaphore struct semid_ds. | ||
| 2 | Copyright (C) 1995-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SEM_H | ||
| 20 | # error "Never include <bits/types/struct_semid_ds.h> directly; use <sys/sem.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Data structure describing a set of semaphores. */ | ||
| 24 | struct semid_ds | ||
| 25 | { | ||
| 26 | #ifdef __USE_TIME64_REDIRECTS | ||
| 27 | # include <bits/types/struct_semid64_ds_helper.h> | ||
| 28 | #else | ||
| 29 | struct ipc_perm sem_perm; /* operation permission struct */ | ||
| 30 | # if __TIMESIZE == 32 | ||
| 31 | __syscall_ulong_t __sem_otime_high; | ||
| 32 | __time_t sem_otime; /* last semop() time */ | ||
| 33 | __syscall_ulong_t __sem_ctime_high; | ||
| 34 | __time_t sem_ctime; /* last time changed by semctl() */ | ||
| 35 | # else | ||
| 36 | __time_t sem_otime; /* last semop() time */ | ||
| 37 | __time_t sem_ctime; /* last time changed by semctl() */ | ||
| 38 | # endif | ||
| 39 | __syscall_ulong_t sem_nsems; /* number of semaphores in set */ | ||
| 40 | __syscall_ulong_t __glibc_reserved3; | ||
| 41 | __syscall_ulong_t __glibc_reserved4; | ||
| 42 | #endif | ||
| 43 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabihf/bits/types/struct_shmid_ds.h deleted-50| ... | @@ -1,50 +0,0 @@ | ||
| 1 | /* Linux/PowerPC implementation of the shared memory struct shmid_ds. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SHM_H | ||
| 20 | # error "Never include <bits/types/struct_shmid_ds.h> directly; use <sys/shm.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Data structure describing a shared memory segment. */ | ||
| 24 | struct shmid_ds | ||
| 25 | { | ||
| 26 | #ifdef __USE_TIME64_REDIRECTS | ||
| 27 | # include <bits/types/struct_shmid64_ds_helper.h> | ||
| 28 | #else | ||
| 29 | struct ipc_perm shm_perm;		/* operation permission struct */ | ||
| 30 | # if __TIMESIZE == 32 | ||
| 31 | unsigned long int __shm_atime_high; | ||
| 32 | __time_t shm_atime;			/* time of last shmat() */ | ||
| 33 | unsigned long int __shm_dtime_high; | ||
| 34 | __time_t shm_dtime;			/* time of last shmdt() */ | ||
| 35 | unsigned long int __shm_ctime_high; | ||
| 36 | __time_t shm_ctime;			/* time of last change by shmctl() */ | ||
| 37 | unsigned long int __glibc_reserved4; | ||
| 38 | # else | ||
| 39 | __time_t shm_atime;			/* time of last shmat() */ | ||
| 40 | __time_t shm_dtime;			/* time of last shmdt() */ | ||
| 41 | __time_t shm_ctime;			/* time of last change by shmctl() */ | ||
| 42 | # endif | ||
| 43 | size_t shm_segsz;			/* size of segment in bytes */ | ||
| 44 | __pid_t shm_cpid;			/* pid of creator */ | ||
| 45 | __pid_t shm_lpid;			/* pid of last shmop */ | ||
| 46 | shmatt_t shm_nattch;		/* number of current attaches */ | ||
| 47 | __syscall_ulong_t __glibc_reserved5; | ||
| 48 | __syscall_ulong_t __glibc_reserved6; | ||
| 49 | #endif | ||
| 50 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabihf/bits/typesizes.h deleted-95| ... | @@ -1,95 +0,0 @@ | ||
| 1 | /* bits/typesizes.h -- underlying types for *_t. PowerPC version. | ||
| 2 | Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_TYPES_H | ||
| 20 | # error "Never include <bits/typesizes.h> directly; use <sys/types.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef	_BITS_TYPESIZES_H | ||
| 24 | #define	_BITS_TYPESIZES_H	1 | ||
| 25 | |||
| 26 | /* See <bits/types.h> for the meaning of these macros. This file exists so | ||
| 27 | that <bits/types.h> need not vary across different GNU platforms. */ | ||
| 28 | |||
| 29 | #define __DEV_T_TYPE		__UQUAD_TYPE | ||
| 30 | #define __UID_T_TYPE		__U32_TYPE | ||
| 31 | #define __GID_T_TYPE		__U32_TYPE | ||
| 32 | #define __INO_T_TYPE		__ULONGWORD_TYPE | ||
| 33 | #define __INO64_T_TYPE		__UQUAD_TYPE | ||
| 34 | #define __MODE_T_TYPE		__U32_TYPE | ||
| 35 | #define __NLINK_T_TYPE		__UWORD_TYPE | ||
| 36 | #define __OFF_T_TYPE		__SLONGWORD_TYPE | ||
| 37 | #define __OFF64_T_TYPE		__SQUAD_TYPE | ||
| 38 | #define __PID_T_TYPE		__S32_TYPE | ||
| 39 | #define __RLIM_T_TYPE		__ULONGWORD_TYPE | ||
| 40 | #define __RLIM64_T_TYPE		__UQUAD_TYPE | ||
| 41 | #define	__BLKCNT_T_TYPE		__SLONGWORD_TYPE | ||
| 42 | #define	__BLKCNT64_T_TYPE	__SQUAD_TYPE | ||
| 43 | #define	__FSBLKCNT_T_TYPE	__ULONGWORD_TYPE | ||
| 44 | #define	__FSBLKCNT64_T_TYPE	__UQUAD_TYPE | ||
| 45 | #define	__FSFILCNT_T_TYPE	__ULONGWORD_TYPE | ||
| 46 | #define	__FSFILCNT64_T_TYPE	__UQUAD_TYPE | ||
| 47 | #define	__FSWORD_T_TYPE		__SWORD_TYPE | ||
| 48 | #define	__ID_T_TYPE		__U32_TYPE | ||
| 49 | #define __CLOCK_T_TYPE		__SLONGWORD_TYPE | ||
| 50 | #define __TIME_T_TYPE		__SLONGWORD_TYPE | ||
| 51 | #define __USECONDS_T_TYPE	__U32_TYPE | ||
| 52 | #define __SUSECONDS_T_TYPE	__SLONGWORD_TYPE | ||
| 53 | #define __SUSECONDS64_T_TYPE	__SQUAD_TYPE | ||
| 54 | #define __DADDR_T_TYPE		__S32_TYPE | ||
| 55 | #define __KEY_T_TYPE		__S32_TYPE | ||
| 56 | #define __CLOCKID_T_TYPE	__S32_TYPE | ||
| 57 | #define __TIMER_T_TYPE		void * | ||
| 58 | #define __BLKSIZE_T_TYPE	__SLONGWORD_TYPE | ||
| 59 | #define __FSID_T_TYPE		struct { int __val[2]; } | ||
| 60 | #define __SSIZE_T_TYPE		__SWORD_TYPE | ||
| 61 | #define __SYSCALL_SLONG_TYPE	__SLONGWORD_TYPE | ||
| 62 | #define __SYSCALL_ULONG_TYPE	__ULONGWORD_TYPE | ||
| 63 | #define __CPU_MASK_TYPE 	__ULONGWORD_TYPE | ||
| 64 | |||
| 65 | #ifdef __LP64__ | ||
| 66 | /* Tell the libc code that off_t and off64_t are actually the same type | ||
| 67 | for all ABI purposes, even if possibly expressed as different base types | ||
| 68 | for C type-checking purposes. */ | ||
| 69 | # define __OFF_T_MATCHES_OFF64_T	1 | ||
| 70 | |||
| 71 | /* Same for ino_t and ino64_t. */ | ||
| 72 | # define __INO_T_MATCHES_INO64_T	1 | ||
| 73 | |||
| 74 | /* And for rlim_t and rlim64_t. */ | ||
| 75 | # define __RLIM_T_MATCHES_RLIM64_T	1 | ||
| 76 | |||
| 77 | /* And for fsblkcnt_t, fsblkcnt64_t, fsfilcnt_t and fsfilcnt64_t. */ | ||
| 78 | # define __STATFS_MATCHES_STATFS64 1 | ||
| 79 | |||
| 80 | /* And for getitimer, setitimer and rusage */ | ||
| 81 | # define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 1 | ||
| 82 | #else | ||
| 83 | # define __RLIM_T_MATCHES_RLIM64_T	0 | ||
| 84 | |||
| 85 | # define __STATFS_MATCHES_STATFS64 0 | ||
| 86 | |||
| 87 | /* And for getitimer, setitimer and rusage */ | ||
| 88 | # define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 0 | ||
| 89 | #endif | ||
| 90 | |||
| 91 | /* Number of descriptors that can fit in an `fd_set'. */ | ||
| 92 | #define	__FD_SETSIZE		1024 | ||
| 93 | |||
| 94 | |||
| 95 | #endif /* bits/typesizes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabihf/bits/wordsize.h deleted-10| ... | @@ -1,10 +0,0 @@ | ||
| 1 | /* Determine the wordsize from the preprocessor defines. */ | ||
| 2 | |||
| 3 | #if defined __powerpc64__ | ||
| 4 | # define __WORDSIZE	64 | ||
| 5 | #else | ||
| 6 | # define __WORDSIZE	32 | ||
| 7 | # define __WORDSIZE32_SIZE_ULONG	0 | ||
| 8 | # define __WORDSIZE32_PTRDIFF_LONG	0 | ||
| 9 | #endif | ||
| 10 | #define __WORDSIZE_TIME64_COMPAT32	1 | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabihf/fpu_control.h deleted-114| ... | @@ -1,114 +0,0 @@ | ||
| 1 | /* FPU control word definitions. PowerPC version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _FPU_CONTROL_H | ||
| 20 | #define _FPU_CONTROL_H | ||
| 21 | |||
| 22 | #if defined __SPE__ || (defined __NO_FPRS__ && !defined _SOFT_FLOAT) | ||
| 23 | # error "SPE/e500 is no longer supported" | ||
| 24 | #endif | ||
| 25 | |||
| 26 | #ifdef _SOFT_FLOAT | ||
| 27 | |||
| 28 | # define _FPU_RESERVED 0xffffffff | ||
| 29 | # define _FPU_DEFAULT 0x00000000 /* Default value. */ | ||
| 30 | typedef unsigned int fpu_control_t; | ||
| 31 | # define _FPU_GETCW(cw) (cw) = 0 | ||
| 32 | # define _FPU_SETCW(cw) (void) (cw) | ||
| 33 | extern fpu_control_t __fpu_control; | ||
| 34 | |||
| 35 | #else /* PowerPC 6xx floating-point. */ | ||
| 36 | |||
| 37 | /* rounding control */ | ||
| 38 | # define _FPU_RC_NEAREST 0x00 /* RECOMMENDED */ | ||
| 39 | # define _FPU_RC_DOWN 0x03 | ||
| 40 | # define _FPU_RC_UP 0x02 | ||
| 41 | # define _FPU_RC_ZERO 0x01 | ||
| 42 | |||
| 43 | # define _FPU_MASK_RC (_FPU_RC_NEAREST|_FPU_RC_DOWN|_FPU_RC_UP|_FPU_RC_ZERO) | ||
| 44 | |||
| 45 | # define _FPU_MASK_NI 0x04 /* non-ieee mode */ | ||
| 46 | |||
| 47 | /* masking of interrupts */ | ||
| 48 | # define _FPU_MASK_ZM 0x10 /* zero divide */ | ||
| 49 | # define _FPU_MASK_OM 0x40 /* overflow */ | ||
| 50 | # define _FPU_MASK_UM 0x20 /* underflow */ | ||
| 51 | # define _FPU_MASK_XM 0x08 /* inexact */ | ||
| 52 | # define _FPU_MASK_IM 0x80 /* invalid operation */ | ||
| 53 | |||
| 54 | # define _FPU_RESERVED 0xffffff00 /* These bits are reserved are not changed. */ | ||
| 55 | |||
| 56 | /* The fdlibm code requires no interrupts for exceptions. */ | ||
| 57 | # define _FPU_DEFAULT 0x00000000 /* Default value. */ | ||
| 58 | |||
| 59 | /* IEEE: same as above, but (some) exceptions; | ||
| 60 | we leave the 'inexact' exception off. | ||
| 61 | */ | ||
| 62 | # define _FPU_IEEE 0x000000f0 | ||
| 63 | |||
| 64 | /* Type of the control word. */ | ||
| 65 | typedef unsigned int fpu_control_t; | ||
| 66 | |||
| 67 | /* Macros for accessing the hardware control word. */ | ||
| 68 | # define _FPU_GETCW(cw)						\ | ||
| 69 | ({union { double __d; unsigned long long __ll; } __u;		\ | ||
| 70 | __asm__ __volatile__("mffs %0" : "=f" (__u.__d));		\ | ||
| 71 | (cw) = (fpu_control_t) __u.__ll;				\ | ||
| 72 | (fpu_control_t) __u.__ll;					\ | ||
| 73 | }) | ||
| 74 | |||
| 75 | # define _FPU_GET_RC_ISA300()						\ | ||
| 76 | ({union { double __d; unsigned long long __ll; } __u;			\ | ||
| 77 | __asm__ __volatile__(						\ | ||
| 78 | ".machine push; .machine \"power9\"; mffsl %0; .machine pop" 	\ | ||
| 79 | : "=f" (__u.__d));						\ | ||
| 80 | (fpu_control_t) (__u.__ll & _FPU_MASK_RC);				\ | ||
| 81 | }) | ||
| 82 | |||
| 83 | # ifdef _ARCH_PWR9 | ||
| 84 | # define _FPU_GET_RC() _FPU_GET_RC_ISA300() | ||
| 85 | # elif defined __BUILTIN_CPU_SUPPORTS__ | ||
| 86 | # define _FPU_GET_RC()							\ | ||
| 87 | ({fpu_control_t __rc;							\ | ||
| 88 | __rc = __glibc_likely (__builtin_cpu_supports ("arch_3_00"))	\ | ||
| 89 | ? _FPU_GET_RC_ISA300 ()						\ | ||
| 90 | : _FPU_GETCW (__rc) & _FPU_MASK_RC;				\ | ||
| 91 | __rc;								\ | ||
| 92 | }) | ||
| 93 | # else | ||
| 94 | # define _FPU_GET_RC()						\ | ||
| 95 | ({fpu_control_t __rc = _FPU_GETCW (__rc) & _FPU_MASK_RC;	\ | ||
| 96 | __rc;							\ | ||
| 97 | }) | ||
| 98 | # endif | ||
| 99 | |||
| 100 | # define _FPU_SETCW(cw)						\ | ||
| 101 | { union { double __d; unsigned long long __ll; } __u;		\ | ||
| 102 | register double __fr;					\ | ||
| 103 | __u.__ll = 0xfff80000LL << 32; /* This is a QNaN. */	\ | ||
| 104 | __u.__ll |= (cw) & 0xffffffffLL;				\ | ||
| 105 | __fr = __u.__d;						\ | ||
| 106 | __asm__ __volatile__("mtfsf 255,%0" : : "f" (__fr));	\ | ||
| 107 | } | ||
| 108 | |||
| 109 | /* Default control word set at startup. */ | ||
| 110 | extern fpu_control_t __fpu_control; | ||
| 111 | |||
| 112 | #endif /* PowerPC 6xx floating-point. */ | ||
| 113 | |||
| 114 | #endif /* _FPU_CONTROL_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabihf/gnu/lib-names-32.h deleted-26| ... | @@ -1,26 +0,0 @@ | ||
| 1 | /* This file is automatically generated. */ | ||
| 2 | #ifndef __GNU_LIB_NAMES_H | ||
| 3 | # error "Never use <gnu/lib-names-32.h> directly; include <gnu/lib-names.h> instead." | ||
| 4 | #endif | ||
| 5 | |||
| 6 | #define LD_SO "ld.so.1" | ||
| 7 | #define LIBANL_SO "libanl.so.1" | ||
| 8 | #define LIBBROKENLOCALE_SO "libBrokenLocale.so.1" | ||
| 9 | #define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0" | ||
| 10 | #define LIBC_SO "libc.so.6" | ||
| 11 | #define LIBDL_SO "libdl.so.2" | ||
| 12 | #define LIBGCC_S_SO "libgcc_s.so.1" | ||
| 13 | #define LIBMVEC_SO "libmvec.so.1" | ||
| 14 | #define LIBM_SO "libm.so.6" | ||
| 15 | #define LIBNSL_SO "libnsl.so.1" | ||
| 16 | #define LIBNSS_COMPAT_SO "libnss_compat.so.2" | ||
| 17 | #define LIBNSS_DB_SO "libnss_db.so.2" | ||
| 18 | #define LIBNSS_DNS_SO "libnss_dns.so.2" | ||
| 19 | #define LIBNSS_FILES_SO "libnss_files.so.2" | ||
| 20 | #define LIBNSS_HESIOD_SO "libnss_hesiod.so.2" | ||
| 21 | #define LIBNSS_LDAP_SO "libnss_ldap.so.2" | ||
| 22 | #define LIBPTHREAD_SO "libpthread.so.0" | ||
| 23 | #define LIBRESOLV_SO "libresolv.so.2" | ||
| 24 | #define LIBRT_SO "librt.so.1" | ||
| 25 | #define LIBTHREAD_DB_SO "libthread_db.so.1" | ||
| 26 | #define LIBUTIL_SO "libutil.so.1" | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabihf/gnu/lib-names.h deleted-19| ... | @@ -1,19 +0,0 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | It defines macros to allow user program to find the shared | ||
| 3 | library files which come as part of GNU libc. */ | ||
| 4 | #ifndef __GNU_LIB_NAMES_H | ||
| 5 | #define __GNU_LIB_NAMES_H	1 | ||
| 6 | |||
| 7 | #include <bits/wordsize.h> | ||
| 8 | |||
| 9 | #if __WORDSIZE == 32 | ||
| 10 | # include <gnu/lib-names-32.h> | ||
| 11 | #endif | ||
| 12 | #if __WORDSIZE == 64 && _CALL_ELF != 2 | ||
| 13 | # include <gnu/lib-names-64-v1.h> | ||
| 14 | #endif | ||
| 15 | #if __WORDSIZE == 64 && _CALL_ELF == 2 | ||
| 16 | # include <gnu/lib-names-64-v2.h> | ||
| 17 | #endif | ||
| 18 | |||
| 19 | #endif	/* gnu/lib-names.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabihf/gnu/stubs.h deleted-15| ... | @@ -1,15 +0,0 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | This file selects the right generated file of `__stub_FUNCTION' macros | ||
| 3 | based on the architecture being compiled for. */ | ||
| 4 | |||
| 5 | #include <bits/wordsize.h> | ||
| 6 | |||
| 7 | #if __WORDSIZE == 32 | ||
| 8 | # include <gnu/stubs-32.h> | ||
| 9 | #endif | ||
| 10 | #if __WORDSIZE == 64 && _CALL_ELF != 2 | ||
| 11 | # include <gnu/stubs-64-v1.h> | ||
| 12 | #endif | ||
| 13 | #if __WORDSIZE == 64 && _CALL_ELF == 2 | ||
| 14 | # include <gnu/stubs-64-v2.h> | ||
| 15 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabihf/ieee754.h deleted-197| ... | @@ -1,197 +0,0 @@ | ||
| 1 | /* Copyright (C) 1992-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _IEEE754_H | ||
| 19 | #define _IEEE754_H 1 | ||
| 20 | |||
| 21 | #include <features.h> | ||
| 22 | |||
| 23 | #include <bits/endian.h> | ||
| 24 | #include <bits/floatn.h> | ||
| 25 | |||
| 26 | __BEGIN_DECLS | ||
| 27 | |||
| 28 | union ieee754_float | ||
| 29 | { | ||
| 30 | float f; | ||
| 31 | |||
| 32 | /* This is the IEEE 754 single-precision format. */ | ||
| 33 | struct | ||
| 34 | { | ||
| 35 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 36 | 	unsigned int negative:1; | ||
| 37 | 	unsigned int exponent:8; | ||
| 38 | 	unsigned int mantissa:23; | ||
| 39 | #endif				/* Big endian. */ | ||
| 40 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 41 | 	unsigned int mantissa:23; | ||
| 42 | 	unsigned int exponent:8; | ||
| 43 | 	unsigned int negative:1; | ||
| 44 | #endif				/* Little endian. */ | ||
| 45 | } ieee; | ||
| 46 | |||
| 47 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 48 | struct | ||
| 49 | { | ||
| 50 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 51 | 	unsigned int negative:1; | ||
| 52 | 	unsigned int exponent:8; | ||
| 53 | 	unsigned int quiet_nan:1; | ||
| 54 | 	unsigned int mantissa:22; | ||
| 55 | #endif				/* Big endian. */ | ||
| 56 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 57 | 	unsigned int mantissa:22; | ||
| 58 | 	unsigned int quiet_nan:1; | ||
| 59 | 	unsigned int exponent:8; | ||
| 60 | 	unsigned int negative:1; | ||
| 61 | #endif				/* Little endian. */ | ||
| 62 | } ieee_nan; | ||
| 63 | }; | ||
| 64 | |||
| 65 | #define IEEE754_FLOAT_BIAS	0x7f /* Added to exponent. */ | ||
| 66 | |||
| 67 | |||
| 68 | union ieee754_double | ||
| 69 | { | ||
| 70 | double d; | ||
| 71 | |||
| 72 | /* This is the IEEE 754 double-precision format. */ | ||
| 73 | struct | ||
| 74 | { | ||
| 75 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 76 | 	unsigned int negative:1; | ||
| 77 | 	unsigned int exponent:11; | ||
| 78 | 	/* Together these comprise the mantissa. */ | ||
| 79 | 	unsigned int mantissa0:20; | ||
| 80 | 	unsigned int mantissa1:32; | ||
| 81 | #endif				/* Big endian. */ | ||
| 82 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 83 | 	/* Together these comprise the mantissa. */ | ||
| 84 | 	unsigned int mantissa1:32; | ||
| 85 | 	unsigned int mantissa0:20; | ||
| 86 | 	unsigned int exponent:11; | ||
| 87 | 	unsigned int negative:1; | ||
| 88 | #endif				/* Little endian. */ | ||
| 89 | } ieee; | ||
| 90 | |||
| 91 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 92 | struct | ||
| 93 | { | ||
| 94 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 95 | 	unsigned int negative:1; | ||
| 96 | 	unsigned int exponent:11; | ||
| 97 | 	unsigned int quiet_nan:1; | ||
| 98 | 	/* Together these comprise the mantissa. */ | ||
| 99 | 	unsigned int mantissa0:19; | ||
| 100 | 	unsigned int mantissa1:32; | ||
| 101 | #else | ||
| 102 | 	/* Together these comprise the mantissa. */ | ||
| 103 | 	unsigned int mantissa1:32; | ||
| 104 | 	unsigned int mantissa0:19; | ||
| 105 | 	unsigned int quiet_nan:1; | ||
| 106 | 	unsigned int exponent:11; | ||
| 107 | 	unsigned int negative:1; | ||
| 108 | #endif | ||
| 109 | } ieee_nan; | ||
| 110 | }; | ||
| 111 | |||
| 112 | #define IEEE754_DOUBLE_BIAS	0x3ff /* Added to exponent. */ | ||
| 113 | |||
| 114 | |||
| 115 | #if __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 1 | ||
| 116 | /* long double is IEEE 128 bit */ | ||
| 117 | union ieee854_long_double | ||
| 118 | { | ||
| 119 | long double d; | ||
| 120 | |||
| 121 | /* This is the IEEE 854 quad-precision format. */ | ||
| 122 | struct | ||
| 123 | { | ||
| 124 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 125 | 	unsigned int negative:1; | ||
| 126 | 	unsigned int exponent:15; | ||
| 127 | 	/* Together these comprise the mantissa. */ | ||
| 128 | 	unsigned int mantissa0:16; | ||
| 129 | 	unsigned int mantissa1:32; | ||
| 130 | 	unsigned int mantissa2:32; | ||
| 131 | 	unsigned int mantissa3:32; | ||
| 132 | #endif				/* Big endian. */ | ||
| 133 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 134 | 	/* Together these comprise the mantissa. */ | ||
| 135 | 	unsigned int mantissa3:32; | ||
| 136 | 	unsigned int mantissa2:32; | ||
| 137 | 	unsigned int mantissa1:32; | ||
| 138 | 	unsigned int mantissa0:16; | ||
| 139 | 	unsigned int exponent:15; | ||
| 140 | 	unsigned int negative:1; | ||
| 141 | #endif				/* Little endian. */ | ||
| 142 | } ieee; | ||
| 143 | |||
| 144 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 145 | struct | ||
| 146 | { | ||
| 147 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 148 | 	unsigned int negative:1; | ||
| 149 | 	unsigned int exponent:15; | ||
| 150 | 	unsigned int quiet_nan:1; | ||
| 151 | 	/* Together these comprise the mantissa. */ | ||
| 152 | 	unsigned int mantissa0:15; | ||
| 153 | 	unsigned int mantissa1:32; | ||
| 154 | 	unsigned int mantissa2:32; | ||
| 155 | 	unsigned int mantissa3:32; | ||
| 156 | #else | ||
| 157 | 	/* Together these comprise the mantissa. */ | ||
| 158 | 	unsigned int mantissa3:32; | ||
| 159 | 	unsigned int mantissa2:32; | ||
| 160 | 	unsigned int mantissa1:32; | ||
| 161 | 	unsigned int mantissa0:15; | ||
| 162 | 	unsigned int quiet_nan:1; | ||
| 163 | 	unsigned int exponent:15; | ||
| 164 | 	unsigned int negative:1; | ||
| 165 | #endif | ||
| 166 | } ieee_nan; | ||
| 167 | }; | ||
| 168 | |||
| 169 | #define IEEE854_LONG_DOUBLE_BIAS 0x3fff /* Added to exponent. */ | ||
| 170 | #endif | ||
| 171 | |||
| 172 | |||
| 173 | #if __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 0 || __GNUC_PREREQ (7, 0) | ||
| 174 | /* IBM extended format for long double. | ||
| 175 | |||
| 176 | Each long double is made up of two IEEE doubles. The value of the | ||
| 177 | long double is the sum of the values of the two parts. The most | ||
| 178 | significant part is required to be the value of the long double | ||
| 179 | rounded to the nearest double, as specified by IEEE. For Inf | ||
| 180 | values, the least significant part is required to be one of +0.0 or | ||
| 181 | -0.0. No other requirements are made; so, for example, 1.0 may be | ||
| 182 | represented as (1.0, +0.0) or (1.0, -0.0), and the low part of a | ||
| 183 | NaN is don't-care. */ | ||
| 184 | union ibm_extended_long_double | ||
| 185 | { | ||
| 186 | # if __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 1 && __GNUC_PREREQ (7, 0) | ||
| 187 | __ibm128 ld; | ||
| 188 | # else | ||
| 189 | long double ld; | ||
| 190 | # endif | ||
| 191 | union ieee754_double d[2]; | ||
| 192 | }; | ||
| 193 | #endif | ||
| 194 | |||
| 195 | __END_DECLS | ||
| 196 | |||
| 197 | #endif /* ieee754.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabihf/sys/ptrace.h deleted-289| ... | @@ -1,289 +0,0 @@ | ||
| 1 | /* `ptrace' debugger support interface. Linux/PowerPC version. | ||
| 2 | Copyright (C) 2001-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_PTRACE_H | ||
| 20 | #define _SYS_PTRACE_H	1 | ||
| 21 | |||
| 22 | #include <features.h> | ||
| 23 | #include <bits/types.h> | ||
| 24 | |||
| 25 | __BEGIN_DECLS | ||
| 26 | |||
| 27 | #if defined _LINUX_PTRACE_H || defined _ASM_POWERPC_PTRACE_H | ||
| 28 | /* Do not let Linux headers macros interfere with enum __ptrace_request. */ | ||
| 29 | # undef PTRACE_ATTACH | ||
| 30 | # undef PTRACE_CONT | ||
| 31 | # undef PTRACE_DETACH | ||
| 32 | # undef PTRACE_GET_DEBUGREG | ||
| 33 | # undef PTRACE_GETEVENTMSG | ||
| 34 | # undef PTRACE_GETEVRREGS | ||
| 35 | # undef PTRACE_GETFPREGS | ||
| 36 | # undef PTRACE_GETREGS | ||
| 37 | # undef PTRACE_GETREGS64 | ||
| 38 | # undef PTRACE_GETREGSET | ||
| 39 | # undef PTRACE_GET_RSEQ_CONFIGURATION | ||
| 40 | # undef PTRACE_GETSIGINFO | ||
| 41 | # undef PTRACE_GETSIGMASK | ||
| 42 | # undef PTRACE_GET_SYSCALL_INFO | ||
| 43 | # undef PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG | ||
| 44 | # undef PTRACE_GETVRREGS | ||
| 45 | # undef PTRACE_GETVSRREGS | ||
| 46 | # undef PTRACE_INTERRUPT | ||
| 47 | # undef PTRACE_KILL | ||
| 48 | # undef PTRACE_LISTEN | ||
| 49 | # undef PTRACE_PEEKDATA | ||
| 50 | # undef PTRACE_PEEKSIGINFO | ||
| 51 | # undef PTRACE_PEEKTEXT | ||
| 52 | # undef PTRACE_POKEDATA | ||
| 53 | # undef PTRACE_POKETEXT | ||
| 54 | # undef PTRACE_SECCOMP_GET_FILTER | ||
| 55 | # undef PTRACE_SECCOMP_GET_METADATA | ||
| 56 | # undef PTRACE_SEIZE | ||
| 57 | # undef PTRACE_SET_DEBUGREG | ||
| 58 | # undef PTRACE_SETEVRREGS | ||
| 59 | # undef PTRACE_SETFPREGS | ||
| 60 | # undef PTRACE_SETOPTIONS | ||
| 61 | # undef PTRACE_SETREGS | ||
| 62 | # undef PTRACE_SETREGS64 | ||
| 63 | # undef PTRACE_SETREGSET | ||
| 64 | # undef PTRACE_SETSIGINFO | ||
| 65 | # undef PTRACE_SETSIGMASK | ||
| 66 | # undef PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG | ||
| 67 | # undef PTRACE_SETVRREGS | ||
| 68 | # undef PTRACE_SETVSRREGS | ||
| 69 | # undef PTRACE_SINGLEBLOCK | ||
| 70 | # undef PTRACE_SINGLESTEP | ||
| 71 | # undef PTRACE_SYSCALL | ||
| 72 | # undef PTRACE_SYSCALL_INFO_NONE | ||
| 73 | # undef PTRACE_SYSCALL_INFO_ENTRY | ||
| 74 | # undef PTRACE_SYSCALL_INFO_EXIT | ||
| 75 | # undef PTRACE_SYSCALL_INFO_SECCOMP | ||
| 76 | # undef PTRACE_SYSEMU | ||
| 77 | # undef PTRACE_SYSEMU_SINGLESTEP | ||
| 78 | # undef PTRACE_TRACEME | ||
| 79 | #endif | ||
| 80 | |||
| 81 | /* Type of the REQUEST argument to `ptrace.' */ | ||
| 82 | enum __ptrace_request | ||
| 83 | { | ||
| 84 | /* Indicate that the process making this request should be traced. | ||
| 85 | All signals received by this process can be intercepted by its | ||
| 86 | parent, and its parent can use the other `ptrace' requests. */ | ||
| 87 | PTRACE_TRACEME = 0, | ||
| 88 | #define PT_TRACE_ME PTRACE_TRACEME | ||
| 89 | |||
| 90 | /* Return the word in the process's text space at address ADDR. */ | ||
| 91 | PTRACE_PEEKTEXT = 1, | ||
| 92 | #define PT_READ_I PTRACE_PEEKTEXT | ||
| 93 | |||
| 94 | /* Return the word in the process's data space at address ADDR. */ | ||
| 95 | PTRACE_PEEKDATA = 2, | ||
| 96 | #define PT_READ_D PTRACE_PEEKDATA | ||
| 97 | |||
| 98 | /* Return the word in the process's user area at offset ADDR. */ | ||
| 99 | PTRACE_PEEKUSER = 3, | ||
| 100 | #define PT_READ_U PTRACE_PEEKUSER | ||
| 101 | |||
| 102 | /* Write the word DATA into the process's text space at address ADDR. */ | ||
| 103 | PTRACE_POKETEXT = 4, | ||
| 104 | #define PT_WRITE_I PTRACE_POKETEXT | ||
| 105 | |||
| 106 | /* Write the word DATA into the process's data space at address ADDR. */ | ||
| 107 | PTRACE_POKEDATA = 5, | ||
| 108 | #define PT_WRITE_D PTRACE_POKEDATA | ||
| 109 | |||
| 110 | /* Write the word DATA into the process's user area at offset ADDR. */ | ||
| 111 | PTRACE_POKEUSER = 6, | ||
| 112 | #define PT_WRITE_U PTRACE_POKEUSER | ||
| 113 | |||
| 114 | /* Continue the process. */ | ||
| 115 | PTRACE_CONT = 7, | ||
| 116 | #define PT_CONTINUE PTRACE_CONT | ||
| 117 | |||
| 118 | /* Kill the process. */ | ||
| 119 | PTRACE_KILL = 8, | ||
| 120 | #define PT_KILL PTRACE_KILL | ||
| 121 | |||
| 122 | /* Single step the process. */ | ||
| 123 | PTRACE_SINGLESTEP = 9, | ||
| 124 | #define PT_STEP PTRACE_SINGLESTEP | ||
| 125 | |||
| 126 | /* Get all general purpose registers used by a process. */ | ||
| 127 | PTRACE_GETREGS = 12, | ||
| 128 | #define PT_GETREGS PTRACE_GETREGS | ||
| 129 | |||
| 130 | /* Set all general purpose registers used by a process. */ | ||
| 131 | PTRACE_SETREGS = 13, | ||
| 132 | #define PT_SETREGS PTRACE_SETREGS | ||
| 133 | |||
| 134 | /* Get all floating point registers used by a process. */ | ||
| 135 | PTRACE_GETFPREGS = 14, | ||
| 136 | #define PT_GETFPREGS PTRACE_GETFPREGS | ||
| 137 | |||
| 138 | /* Set all floating point registers used by a process. */ | ||
| 139 | PTRACE_SETFPREGS = 15, | ||
| 140 | #define PT_SETFPREGS PTRACE_SETFPREGS | ||
| 141 | |||
| 142 | /* Attach to a process that is already running. */ | ||
| 143 | PTRACE_ATTACH = 16, | ||
| 144 | #define PT_ATTACH PTRACE_ATTACH | ||
| 145 | |||
| 146 | /* Detach from a process attached to with PTRACE_ATTACH. */ | ||
| 147 | PTRACE_DETACH = 17, | ||
| 148 | #define PT_DETACH PTRACE_DETACH | ||
| 149 | |||
| 150 | /* Get all altivec registers used by a process. */ | ||
| 151 | PTRACE_GETVRREGS = 18, | ||
| 152 | #define PT_GETVRREGS PTRACE_GETVRREGS | ||
| 153 | |||
| 154 | /* Set all altivec registers used by a process. */ | ||
| 155 | PTRACE_SETVRREGS = 19, | ||
| 156 | #define PT_SETVRREGS PTRACE_SETVRREGS | ||
| 157 | |||
| 158 | /* Get all SPE registers used by a process. */ | ||
| 159 | PTRACE_GETEVRREGS = 20, | ||
| 160 | #define PT_GETEVRREGS PTRACE_GETEVRREGS | ||
| 161 | |||
| 162 | /* Set all SPE registers used by a process. */ | ||
| 163 | PTRACE_SETEVRREGS = 21, | ||
| 164 | #define PT_SETEVRREGS PTRACE_SETEVRREGS | ||
| 165 | |||
| 166 | /* Same as PTRACE_GETREGS except a 32-bit process will obtain | ||
| 167 | the full 64-bit registers. Implemented by 64-bit kernels only. */ | ||
| 168 | PTRACE_GETREGS64 = 22, | ||
| 169 | #define PT_GETREGS64 PTRACE_GETREGS64 | ||
| 170 | |||
| 171 | /* Same as PTRACE_SETREGS except a 32-bit process will set | ||
| 172 | the full 64-bit registers. Implemented by 64-bit kernels only. */ | ||
| 173 | PTRACE_SETREGS64 = 23, | ||
| 174 | #define PT_SETREGS64 PTRACE_SETREGS64 | ||
| 175 | |||
| 176 | /* Continue and stop at the next entry to or return from syscall. */ | ||
| 177 | PTRACE_SYSCALL = 24, | ||
| 178 | #define PT_SYSCALL PTRACE_SYSCALL | ||
| 179 | |||
| 180 | /* Get a debug register of a process. */ | ||
| 181 | PTRACE_GET_DEBUGREG = 25, | ||
| 182 | #define PT_GET_DEBUGREG PTRACE_GET_DEBUGREG | ||
| 183 | |||
| 184 | /* Set a debug register of a process. */ | ||
| 185 | PTRACE_SET_DEBUGREG = 26, | ||
| 186 | #define PT_SET_DEBUGREG PTRACE_SET_DEBUGREG | ||
| 187 | |||
| 188 | /* Get the first 32 VSX registers of a process. */ | ||
| 189 | PTRACE_GETVSRREGS = 27, | ||
| 190 | #define PT_GETVSRREGS PTRACE_GETVSRREGS | ||
| 191 | |||
| 192 | /* Set the first 32 VSX registers of a process. */ | ||
| 193 | PTRACE_SETVSRREGS = 28, | ||
| 194 | #define PT_SETVSRREGS PTRACE_SETVSRREGS | ||
| 195 | |||
| 196 | /* Continue and stop at the next syscall, it will not be executed. */ | ||
| 197 | PTRACE_SYSEMU = 29, | ||
| 198 | #define PT_SYSEMU PTRACE_SYSEMU | ||
| 199 | |||
| 200 | /* Single step the process, the next syscall will not be executed. */ | ||
| 201 | PTRACE_SYSEMU_SINGLESTEP = 30, | ||
| 202 | #define PT_SYSEMU_SINGLESTEP PTRACE_SYSEMU_SINGLESTEP | ||
| 203 | |||
| 204 | /* Execute process until next taken branch. */ | ||
| 205 | PTRACE_SINGLEBLOCK = 256, | ||
| 206 | #define PT_STEPBLOCK PTRACE_SINGLEBLOCK | ||
| 207 | |||
| 208 | /* Set ptrace filter options. */ | ||
| 209 | PTRACE_SETOPTIONS = 0x4200, | ||
| 210 | #define PT_SETOPTIONS PTRACE_SETOPTIONS | ||
| 211 | |||
| 212 | /* Get last ptrace message. */ | ||
| 213 | PTRACE_GETEVENTMSG = 0x4201, | ||
| 214 | #define PT_GETEVENTMSG PTRACE_GETEVENTMSG | ||
| 215 | |||
| 216 | /* Get siginfo for process. */ | ||
| 217 | PTRACE_GETSIGINFO = 0x4202, | ||
| 218 | #define PT_GETSIGINFO PTRACE_GETSIGINFO | ||
| 219 | |||
| 220 | /* Set new siginfo for process. */ | ||
| 221 | PTRACE_SETSIGINFO = 0x4203, | ||
| 222 | #define PT_SETSIGINFO PTRACE_SETSIGINFO | ||
| 223 | |||
| 224 | /* Get register content. */ | ||
| 225 | PTRACE_GETREGSET = 0x4204, | ||
| 226 | #define PTRACE_GETREGSET PTRACE_GETREGSET | ||
| 227 | |||
| 228 | /* Set register content. */ | ||
| 229 | PTRACE_SETREGSET = 0x4205, | ||
| 230 | #define PTRACE_SETREGSET PTRACE_SETREGSET | ||
| 231 | |||
| 232 | /* Like PTRACE_ATTACH, but do not force tracee to trap and do not affect | ||
| 233 | signal or group stop state. */ | ||
| 234 | PTRACE_SEIZE = 0x4206, | ||
| 235 | #define PTRACE_SEIZE PTRACE_SEIZE | ||
| 236 | |||
| 237 | /* Trap seized tracee. */ | ||
| 238 | PTRACE_INTERRUPT = 0x4207, | ||
| 239 | #define PTRACE_INTERRUPT PTRACE_INTERRUPT | ||
| 240 | |||
| 241 | /* Wait for next group event. */ | ||
| 242 | PTRACE_LISTEN = 0x4208, | ||
| 243 | #define PTRACE_LISTEN PTRACE_LISTEN | ||
| 244 | |||
| 245 | /* Retrieve siginfo_t structures without removing signals from a queue. */ | ||
| 246 | PTRACE_PEEKSIGINFO = 0x4209, | ||
| 247 | #define PTRACE_PEEKSIGINFO PTRACE_PEEKSIGINFO | ||
| 248 | |||
| 249 | /* Get the mask of blocked signals. */ | ||
| 250 | PTRACE_GETSIGMASK = 0x420a, | ||
| 251 | #define PTRACE_GETSIGMASK PTRACE_GETSIGMASK | ||
| 252 | |||
| 253 | /* Change the mask of blocked signals. */ | ||
| 254 | PTRACE_SETSIGMASK = 0x420b, | ||
| 255 | #define PTRACE_SETSIGMASK PTRACE_SETSIGMASK | ||
| 256 | |||
| 257 | /* Get seccomp BPF filters. */ | ||
| 258 | PTRACE_SECCOMP_GET_FILTER = 0x420c, | ||
| 259 | #define PTRACE_SECCOMP_GET_FILTER PTRACE_SECCOMP_GET_FILTER | ||
| 260 | |||
| 261 | /* Get seccomp BPF filter metadata. */ | ||
| 262 | PTRACE_SECCOMP_GET_METADATA = 0x420d, | ||
| 263 | #define PTRACE_SECCOMP_GET_METADATA PTRACE_SECCOMP_GET_METADATA | ||
| 264 | |||
| 265 | /* Get information about system call. */ | ||
| 266 | PTRACE_GET_SYSCALL_INFO = 0x420e, | ||
| 267 | #define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO | ||
| 268 | |||
| 269 | /* Get rseq configuration information. */ | ||
| 270 | PTRACE_GET_RSEQ_CONFIGURATION = 0x420f, | ||
| 271 | #define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION | ||
| 272 | |||
| 273 | /* Set configuration for syscall user dispatch. */ | ||
| 274 | PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG = 0x4210, | ||
| 275 | #define PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG \ | ||
| 276 | PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG | ||
| 277 | |||
| 278 | /* Get configuration for syscall user dispatch. */ | ||
| 279 | PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG = 0x4211 | ||
| 280 | #define PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG \ | ||
| 281 | PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG | ||
| 282 | }; | ||
| 283 | |||
| 284 | |||
| 285 | #include <bits/ptrace-shared.h> | ||
| 286 | |||
| 287 | __END_DECLS | ||
| 288 | |||
| 289 | #endif /* _SYS_PTRACE_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabihf/sys/ucontext.h deleted-200| ... | @@ -1,200 +0,0 @@ | ||
| 1 | /* Copyright (C) 1998-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_UCONTEXT_H | ||
| 19 | #define _SYS_UCONTEXT_H	1 | ||
| 20 | |||
| 21 | #include <features.h> | ||
| 22 | |||
| 23 | #include <bits/types/sigset_t.h> | ||
| 24 | #include <bits/types/stack_t.h> | ||
| 25 | |||
| 26 | |||
| 27 | #ifdef __USE_MISC | ||
| 28 | # define __ctx(fld) fld | ||
| 29 | #else | ||
| 30 | # define __ctx(fld) __ ## fld | ||
| 31 | #endif | ||
| 32 | |||
| 33 | struct __ctx(pt_regs); | ||
| 34 | |||
| 35 | #if __WORDSIZE == 32 | ||
| 36 | |||
| 37 | /* Number of general registers. */ | ||
| 38 | # define __NGREG	48 | ||
| 39 | # ifdef __USE_MISC | ||
| 40 | # define NGREG	__NGREG | ||
| 41 | # endif | ||
| 42 | |||
| 43 | /* Container for all general registers. */ | ||
| 44 | typedef unsigned long gregset_t[__NGREG]; | ||
| 45 | |||
| 46 | /* Container for floating-point registers and status */ | ||
| 47 | typedef struct _libc_fpstate | ||
| 48 | { | ||
| 49 | 	double __ctx(fpregs)[32]; | ||
| 50 | 	double __ctx(fpscr); | ||
| 51 | 	unsigned int _pad[2]; | ||
| 52 | } fpregset_t; | ||
| 53 | |||
| 54 | /* Container for Altivec/VMX registers and status. | ||
| 55 | Needs to be aligned on a 16-byte boundary. */ | ||
| 56 | typedef struct _libc_vrstate | ||
| 57 | { | ||
| 58 | 	unsigned int __ctx(vrregs)[32][4]; | ||
| 59 | 	unsigned int __ctx(vrsave); | ||
| 60 | 	unsigned int _pad[2]; | ||
| 61 | 	unsigned int __ctx(vscr); | ||
| 62 | } vrregset_t; | ||
| 63 | |||
| 64 | /* Context to describe whole processor state. */ | ||
| 65 | typedef struct | ||
| 66 | { | ||
| 67 | 	gregset_t __ctx(gregs); | ||
| 68 | 	fpregset_t __ctx(fpregs); | ||
| 69 | 	vrregset_t __ctx(vrregs) __attribute__((__aligned__(16))); | ||
| 70 | } mcontext_t; | ||
| 71 | |||
| 72 | #else | ||
| 73 | |||
| 74 | /* For 64-bit kernels with Altivec support, a machine context is exactly | ||
| 75 | * a sigcontext. For older kernel (without Altivec) the sigcontext matches | ||
| 76 | * the mcontext upto but not including the v_regs field. For kernels that | ||
| 77 | * don't set AT_HWCAP or return AT_HWCAP without PPC_FEATURE_HAS_ALTIVEC the | ||
| 78 | * v_regs field may not exist and should not be referenced. The v_regs field | ||
| 79 | * can be referenced safely only after verifying that PPC_FEATURE_HAS_ALTIVEC | ||
| 80 | * is set in AT_HWCAP. */ | ||
| 81 | |||
| 82 | /* Number of general registers. */ | ||
| 83 | # define __NGREG	48	/* includes r0-r31, nip, msr, lr, etc. */ | ||
| 84 | # define __NFPREG	33	/* includes fp0-fp31 &fpscr. */ | ||
| 85 | # define __NVRREG	34	/* includes v0-v31, vscr, & vrsave in | ||
| 86 | 				 split vectors */ | ||
| 87 | # ifdef __USE_MISC | ||
| 88 | # define NGREG	__NGREG | ||
| 89 | # define NFPREG	__NFPREG | ||
| 90 | # define NVRREG	__NVRREG | ||
| 91 | # endif | ||
| 92 | |||
| 93 | typedef unsigned long gregset_t[__NGREG]; | ||
| 94 | typedef double fpregset_t[__NFPREG]; | ||
| 95 | |||
| 96 | /* Container for Altivec/VMX Vector Status and Control Register. Only 32-bits | ||
| 97 | but can only be copied to/from a 128-bit vector register. So we allocated | ||
| 98 | a whole quadword speedup save/restore. */ | ||
| 99 | typedef struct _libc_vscr | ||
| 100 | { | ||
| 101 | #if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__ | ||
| 102 | 	unsigned int __pad[3]; | ||
| 103 | 	unsigned int __ctx(vscr_word); | ||
| 104 | #else | ||
| 105 | 	unsigned int __ctx(vscr_word); | ||
| 106 | 	unsigned int __pad[3]; | ||
| 107 | #endif | ||
| 108 | } vscr_t; | ||
| 109 | |||
| 110 | /* Container for Altivec/VMX registers and status. | ||
| 111 | Must to be aligned on a 16-byte boundary. */ | ||
| 112 | typedef struct _libc_vrstate | ||
| 113 | { | ||
| 114 | 	unsigned int	__ctx(vrregs)[32][4]; | ||
| 115 | 	vscr_t		__ctx(vscr); | ||
| 116 | 	unsigned int	__ctx(vrsave); | ||
| 117 | 	unsigned int	__pad[3]; | ||
| 118 | } vrregset_t __attribute__((__aligned__(16))); | ||
| 119 | |||
| 120 | typedef struct { | ||
| 121 | 	unsigned long	__glibc_reserved[4]; | ||
| 122 | 	int		__ctx(signal); | ||
| 123 | 	int		__pad0; | ||
| 124 | 	unsigned long	__ctx(handler); | ||
| 125 | 	unsigned long	__ctx(oldmask); | ||
| 126 | 	struct __ctx(pt_regs)	*__ctx(regs); | ||
| 127 | 	gregset_t	__ctx(gp_regs); | ||
| 128 | 	fpregset_t	__ctx(fp_regs); | ||
| 129 | /* | ||
| 130 | * To maintain compatibility with current implementations the sigcontext is | ||
| 131 | * extended by appending a pointer (v_regs) to a quadword type (elf_vrreg_t) | ||
| 132 | * followed by an unstructured (vmx_reserve) field of 69 doublewords. This | ||
| 133 | * allows the array of vector registers to be quadword aligned independent of | ||
| 134 | * the alignment of the containing sigcontext or ucontext. It is the | ||
| 135 | * responsibility of the code setting the sigcontext to set this pointer to | ||
| 136 | * either NULL (if this processor does not support the VMX feature) or the | ||
| 137 | * address of the first quadword within the allocated (vmx_reserve) area. | ||
| 138 | * | ||
| 139 | * The pointer (v_regs) of vector type (elf_vrreg_t) is essentially | ||
| 140 | * an array of 34 quadword entries. The entries with | ||
| 141 | * indexes 0-31 contain the corresponding vector registers. The entry with | ||
| 142 | * index 32 contains the vscr as the last word (offset 12) within the | ||
| 143 | * quadword. This allows the vscr to be stored as either a quadword (since | ||
| 144 | * it must be copied via a vector register to/from storage) or as a word. | ||
| 145 | * The entry with index 33 contains the vrsave as the first word (offset 0) | ||
| 146 | * within the quadword. | ||
| 147 | */ | ||
| 148 | 	vrregset_t	*__ctx(v_regs); | ||
| 149 | 	long		__ctx(vmx_reserve)[__NVRREG+__NVRREG+1]; | ||
| 150 | } mcontext_t; | ||
| 151 | |||
| 152 | #endif | ||
| 153 | |||
| 154 | /* Userlevel context. */ | ||
| 155 | typedef struct ucontext_t | ||
| 156 | { | ||
| 157 | unsigned long int __ctx(uc_flags); | ||
| 158 | struct ucontext_t *uc_link; | ||
| 159 | stack_t uc_stack; | ||
| 160 | #if __WORDSIZE == 32 | ||
| 161 | /* | ||
| 162 | * These fields are set up this way to maximize source and | ||
| 163 | * binary compatibility with code written for the old | ||
| 164 | * ucontext_t definition, which didn't include space for the | ||
| 165 | * registers. | ||
| 166 | * | ||
| 167 | * Different versions of the kernel have stored the registers on | ||
| 168 | * signal delivery at different offsets from the ucontext struct. | ||
| 169 | * Programs should thus use the uc_mcontext.uc_regs pointer to | ||
| 170 | * find where the registers are actually stored. The registers | ||
| 171 | * will be stored within the ucontext_t struct but not necessarily | ||
| 172 | * at a fixed address. As a side-effect, this lets us achieve | ||
| 173 | * 16-byte alignment for the register storage space if the | ||
| 174 | * Altivec registers are to be saved, without requiring 16-byte | ||
| 175 | * alignment on the whole ucontext_t. | ||
| 176 | * | ||
| 177 | * The uc_mcontext.regs field is included for source compatibility | ||
| 178 | * with programs written against the older ucontext_t definition, | ||
| 179 | * and its name should therefore not change. The uc_pad field | ||
| 180 | * is for binary compatibility with programs compiled against the | ||
| 181 | * old ucontext_t; it ensures that uc_mcontext.regs and uc_sigmask | ||
| 182 | * are at the same offset as previously. | ||
| 183 | */ | ||
| 184 | int __glibc_reserved1[7]; | ||
| 185 | union __ctx(uc_regs_ptr) { | ||
| 186 | struct __ctx(pt_regs) *__ctx(regs); | ||
| 187 | mcontext_t *__ctx(uc_regs); | ||
| 188 | } uc_mcontext; | ||
| 189 | sigset_t uc_sigmask; | ||
| 190 | /* last for extensibility */ | ||
| 191 | char __ctx(uc_reg_space)[sizeof (mcontext_t) + 12]; | ||
| 192 | #else /* 64-bit */ | ||
| 193 | sigset_t uc_sigmask; | ||
| 194 | mcontext_t uc_mcontext; /* last for extensibility */ | ||
| 195 | #endif | ||
| 196 | } ucontext_t; | ||
| 197 | |||
| 198 | #undef __ctx | ||
| 199 | |||
| 200 | #endif /* sys/ucontext.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc-linux-gnueabihf/sys/user.h deleted-40| ... | @@ -1,40 +0,0 @@ | ||
| 1 | /* Copyright (C) 1998-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_USER_H | ||
| 19 | |||
| 20 | #define _SYS_USER_H	1 | ||
| 21 | #include <stddef.h> | ||
| 22 | #include <features.h> | ||
| 23 | |||
| 24 | #include <asm/ptrace.h> | ||
| 25 | |||
| 26 | struct user { | ||
| 27 | 	struct pt_regs	regs;			/* entire machine state */ | ||
| 28 | 	size_t		u_tsize;		/* text size (pages) */ | ||
| 29 | 	size_t		u_dsize;		/* data size (pages) */ | ||
| 30 | 	size_t		u_ssize;		/* stack size (pages) */ | ||
| 31 | 	unsigned long	start_code;		/* text starting address */ | ||
| 32 | 	unsigned long	start_data;		/* data starting address */ | ||
| 33 | 	unsigned long	start_stack;		/* stack starting address */ | ||
| 34 | 	long int	signal;			/* signal causing core dump */ | ||
| 35 | 	struct regs *	u_ar0;			/* help gdb find registers */ | ||
| 36 | 	unsigned long	magic;			/* identifies a core file */ | ||
| 37 | 	char		u_comm[32];		/* user command name */ | ||
| 38 | }; | ||
| 39 | |||
| 40 | #endif /* sys/user.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64-linux-gnu/bits/endianness.h deleted-16| ... | @@ -1,16 +0,0 @@ | ||
| 1 | #ifndef _BITS_ENDIANNESS_H | ||
| 2 | #define _BITS_ENDIANNESS_H 1 | ||
| 3 | |||
| 4 | #ifndef _BITS_ENDIAN_H | ||
| 5 | # error "Never use <bits/endianness.h> directly; include <endian.h> instead." | ||
| 6 | #endif | ||
| 7 | |||
| 8 | /* PowerPC has selectable endianness. */ | ||
| 9 | #if defined __BIG_ENDIAN__ || defined _BIG_ENDIAN | ||
| 10 | # define __BYTE_ORDER __BIG_ENDIAN | ||
| 11 | #endif | ||
| 12 | #if defined __LITTLE_ENDIAN__ || defined _LITTLE_ENDIAN | ||
| 13 | # define __BYTE_ORDER __LITTLE_ENDIAN | ||
| 14 | #endif | ||
| 15 | |||
| 16 | #endif /* bits/endianness.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64-linux-gnu/bits/environments.h deleted-96| ... | @@ -1,96 +0,0 @@ | ||
| 1 | /* Copyright (C) 1999-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _UNISTD_H | ||
| 19 | # error "Never include this file directly. Use <unistd.h> instead" | ||
| 20 | #endif | ||
| 21 | |||
| 22 | #include <bits/wordsize.h> | ||
| 23 | |||
| 24 | /* This header should define the following symbols under the described | ||
| 25 | situations. A value `1' means that the model is always supported, | ||
| 26 | `-1' means it is never supported. Undefined means it cannot be | ||
| 27 | statically decided. | ||
| 28 | |||
| 29 | _POSIX_V7_ILP32_OFF32 32bit int, long, pointers, and off_t type | ||
| 30 | _POSIX_V7_ILP32_OFFBIG 32bit int, long, and pointers and larger off_t type | ||
| 31 | |||
| 32 | _POSIX_V7_LP64_OFF32	 64bit long and pointers and 32bit off_t type | ||
| 33 | _POSIX_V7_LPBIG_OFFBIG 64bit long and pointers and large off_t type | ||
| 34 | |||
| 35 | The macros _POSIX_V6_ILP32_OFF32, _POSIX_V6_ILP32_OFFBIG, | ||
| 36 | _POSIX_V6_LP64_OFF32, _POSIX_V6_LPBIG_OFFBIG, _XBS5_ILP32_OFF32, | ||
| 37 | _XBS5_ILP32_OFFBIG, _XBS5_LP64_OFF32, and _XBS5_LPBIG_OFFBIG were | ||
| 38 | used in previous versions of the Unix standard and are available | ||
| 39 | only for compatibility. | ||
| 40 | */ | ||
| 41 | |||
| 42 | #if __WORDSIZE == 64 | ||
| 43 | |||
| 44 | /* Environments with 32-bit wide pointers are optionally provided. | ||
| 45 | Therefore following macros aren't defined: | ||
| 46 | # undef _POSIX_V7_ILP32_OFF32 | ||
| 47 | # undef _POSIX_V7_ILP32_OFFBIG | ||
| 48 | # undef _POSIX_V6_ILP32_OFF32 | ||
| 49 | # undef _POSIX_V6_ILP32_OFFBIG | ||
| 50 | # undef _XBS5_ILP32_OFF32 | ||
| 51 | # undef _XBS5_ILP32_OFFBIG | ||
| 52 | and users need to check at runtime. */ | ||
| 53 | |||
| 54 | /* We also have no use (for now) for an environment with bigger pointers | ||
| 55 | and offsets. */ | ||
| 56 | # define _POSIX_V7_LPBIG_OFFBIG	-1 | ||
| 57 | # define _POSIX_V6_LPBIG_OFFBIG	-1 | ||
| 58 | # define _XBS5_LPBIG_OFFBIG	-1 | ||
| 59 | |||
| 60 | /* By default we have 64-bit wide `long int', pointers and `off_t'. */ | ||
| 61 | # define _POSIX_V7_LP64_OFF64	1 | ||
| 62 | # define _POSIX_V6_LP64_OFF64	1 | ||
| 63 | # define _XBS5_LP64_OFF64	1 | ||
| 64 | |||
| 65 | #else /* __WORDSIZE == 32 */ | ||
| 66 | |||
| 67 | /* By default we have 32-bit wide `int', `long int', pointers and `off_t' | ||
| 68 | and all platforms support LFS. */ | ||
| 69 | # define _POSIX_V7_ILP32_OFF32	1 | ||
| 70 | # define _POSIX_V7_ILP32_OFFBIG	1 | ||
| 71 | # define _POSIX_V6_ILP32_OFF32	1 | ||
| 72 | # define _POSIX_V6_ILP32_OFFBIG	1 | ||
| 73 | # define _XBS5_ILP32_OFF32	1 | ||
| 74 | # define _XBS5_ILP32_OFFBIG	1 | ||
| 75 | |||
| 76 | /* We optionally provide an environment with the above size but an 64-bit | ||
| 77 | side `off_t'. Therefore we don't define _POSIX_V7_ILP32_OFFBIG. */ | ||
| 78 | |||
| 79 | /* Environments with 64-bit wide pointers can be provided, | ||
| 80 | so these macros aren't defined: | ||
| 81 | # undef _POSIX_V7_LP64_OFF64 | ||
| 82 | # undef _POSIX_V7_LPBIG_OFFBIG | ||
| 83 | # undef _POSIX_V6_LP64_OFF64 | ||
| 84 | # undef _POSIX_V6_LPBIG_OFFBIG | ||
| 85 | # undef _XBS5_LP64_OFF64 | ||
| 86 | # undef _XBS5_LPBIG_OFFBIG | ||
| 87 | and sysconf tests for it at runtime. */ | ||
| 88 | |||
| 89 | #endif /* __WORDSIZE == 32 */ | ||
| 90 | |||
| 91 | #define __ILP32_OFF32_CFLAGS	"-m32" | ||
| 92 | #define __ILP32_OFFBIG_CFLAGS	"-m32 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" | ||
| 93 | #define __ILP32_OFF32_LDFLAGS	"-m32" | ||
| 94 | #define __ILP32_OFFBIG_LDFLAGS	"-m32" | ||
| 95 | #define __LP64_OFF64_CFLAGS	"-m64" | ||
| 96 | #define __LP64_OFF64_LDFLAGS	"-m64" | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64-linux-gnu/bits/fcntl.h deleted-68| ... | @@ -1,68 +0,0 @@ | ||
| 1 | /* O_*, F_*, FD_* bit values for Linux/PowerPC. | ||
| 2 | Copyright (C) 1995-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef	_FCNTL_H | ||
| 20 | # error "Never use <bits/fcntl.h> directly; include <fcntl.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <bits/wordsize.h> | ||
| 24 | |||
| 25 | #define __O_DIRECTORY	 040000	/* Must be a directory.	 */ | ||
| 26 | #define __O_NOFOLLOW	0100000	/* Do not follow links.	 */ | ||
| 27 | #define __O_DIRECT	0400000	/* Direct disk access.	*/ | ||
| 28 | |||
| 29 | #if __WORDSIZE == 64 | ||
| 30 | /* Not necessary, files are always with 64bit off_t. */ | ||
| 31 | # define __O_LARGEFILE 0 | ||
| 32 | #else | ||
| 33 | # define __O_LARGEFILE	0200000 | ||
| 34 | #endif | ||
| 35 | |||
| 36 | #if __WORDSIZE == 64 && !defined __USE_FILE_OFFSET64 | ||
| 37 | # define F_GETLK	5 | ||
| 38 | # define F_SETLK	6 | ||
| 39 | # define F_SETLKW	7 | ||
| 40 | #endif | ||
| 41 | |||
| 42 | struct flock | ||
| 43 | { | ||
| 44 | short int l_type;	/* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK.	*/ | ||
| 45 | short int l_whence;	/* Where `l_start' is relative to (like `lseek'). */ | ||
| 46 | #ifndef __USE_FILE_OFFSET64 | ||
| 47 | __off_t l_start;	/* Offset where the lock begins. */ | ||
| 48 | __off_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 49 | #else | ||
| 50 | __off64_t l_start;	/* Offset where the lock begins. */ | ||
| 51 | __off64_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 52 | #endif | ||
| 53 | __pid_t l_pid;	/* Process holding the lock. */ | ||
| 54 | }; | ||
| 55 | |||
| 56 | #ifdef __USE_LARGEFILE64 | ||
| 57 | struct flock64 | ||
| 58 | { | ||
| 59 | short int l_type;	/* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK.	*/ | ||
| 60 | short int l_whence;	/* Where `l_start' is relative to (like `lseek'). */ | ||
| 61 | __off64_t l_start;	/* Offset where the lock begins. */ | ||
| 62 | __off64_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 63 | __pid_t l_pid;	/* Process holding the lock. */ | ||
| 64 | }; | ||
| 65 | #endif | ||
| 66 | |||
| 67 | /* Include generic Linux declarations. */ | ||
| 68 | #include <bits/fcntl-linux.h> | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64-linux-gnu/bits/fenv.h deleted-180| ... | @@ -1,180 +0,0 @@ | ||
| 1 | /* Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _FENV_H | ||
| 19 | # error "Never use <bits/fenv.h> directly; include <fenv.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | |||
| 23 | /* Define bits representing the exception. We use the bit positions of | ||
| 24 | the appropriate bits in the FPSCR... */ | ||
| 25 | enum | ||
| 26 | { | ||
| 27 | FE_INEXACT = | ||
| 28 | #define FE_INEXACT	(1 << (31 - 6)) | ||
| 29 | FE_INEXACT, | ||
| 30 | FE_DIVBYZERO = | ||
| 31 | #define FE_DIVBYZERO	(1 << (31 - 5)) | ||
| 32 | FE_DIVBYZERO, | ||
| 33 | FE_UNDERFLOW = | ||
| 34 | #define FE_UNDERFLOW	(1 << (31 - 4)) | ||
| 35 | FE_UNDERFLOW, | ||
| 36 | FE_OVERFLOW = | ||
| 37 | #define FE_OVERFLOW	(1 << (31 - 3)) | ||
| 38 | FE_OVERFLOW, | ||
| 39 | |||
| 40 | /* ... except for FE_INVALID, for which we use bit 31. FE_INVALID | ||
| 41 | actually corresponds to bits 7 through 12 and 21 through 23 | ||
| 42 | in the FPSCR, but we can't use that because the current draft | ||
| 43 | says that it must be a power of 2. Instead we use bit 2 which | ||
| 44 | is the summary bit for all the FE_INVALID exceptions, which | ||
| 45 | kind of makes sense. */ | ||
| 46 | FE_INVALID = | ||
| 47 | #define FE_INVALID	(1 << (31 - 2)) | ||
| 48 | FE_INVALID, | ||
| 49 | |||
| 50 | #ifdef __USE_GNU | ||
| 51 | /* Breakdown of the FE_INVALID bits. Setting FE_INVALID on an | ||
| 52 | input to a routine is equivalent to setting all of these bits; | ||
| 53 | FE_INVALID will be set on output from a routine iff one of | ||
| 54 | these bits is set. Note, though, that you can't disable or | ||
| 55 | enable these exceptions individually. */ | ||
| 56 | |||
| 57 | /* Operation with a sNaN. */ | ||
| 58 | FE_INVALID_SNAN = | ||
| 59 | # define FE_INVALID_SNAN	(1 << (31 - 7)) | ||
| 60 | FE_INVALID_SNAN, | ||
| 61 | |||
| 62 | /* Inf - Inf */ | ||
| 63 | FE_INVALID_ISI = | ||
| 64 | # define FE_INVALID_ISI	(1 << (31 - 8)) | ||
| 65 | FE_INVALID_ISI, | ||
| 66 | |||
| 67 | /* Inf / Inf */ | ||
| 68 | FE_INVALID_IDI = | ||
| 69 | # define FE_INVALID_IDI	(1 << (31 - 9)) | ||
| 70 | FE_INVALID_IDI, | ||
| 71 | |||
| 72 | /* 0 / 0 */ | ||
| 73 | FE_INVALID_ZDZ = | ||
| 74 | # define FE_INVALID_ZDZ	(1 << (31 - 10)) | ||
| 75 | FE_INVALID_ZDZ, | ||
| 76 | |||
| 77 | /* Inf * 0 */ | ||
| 78 | FE_INVALID_IMZ = | ||
| 79 | # define FE_INVALID_IMZ	(1 << (31 - 11)) | ||
| 80 | FE_INVALID_IMZ, | ||
| 81 | |||
| 82 | /* Comparison with a NaN. */ | ||
| 83 | FE_INVALID_COMPARE = | ||
| 84 | # define FE_INVALID_COMPARE	(1 << (31 - 12)) | ||
| 85 | FE_INVALID_COMPARE, | ||
| 86 | |||
| 87 | /* Invalid operation flag for software (not set by hardware). */ | ||
| 88 | /* Note that some chips don't have this implemented, presumably | ||
| 89 | because no-one expected anyone to write software for them %-). */ | ||
| 90 | FE_INVALID_SOFTWARE = | ||
| 91 | # define FE_INVALID_SOFTWARE	(1 << (31 - 21)) | ||
| 92 | FE_INVALID_SOFTWARE, | ||
| 93 | |||
| 94 | /* Square root of negative number (including -Inf). */ | ||
| 95 | /* Note that some chips don't have this implemented. */ | ||
| 96 | FE_INVALID_SQRT = | ||
| 97 | # define FE_INVALID_SQRT	(1 << (31 - 22)) | ||
| 98 | FE_INVALID_SQRT, | ||
| 99 | |||
| 100 | /* Conversion-to-integer of a NaN or a number too large or too small. */ | ||
| 101 | FE_INVALID_INTEGER_CONVERSION = | ||
| 102 | # define FE_INVALID_INTEGER_CONVERSION	(1 << (31 - 23)) | ||
| 103 | FE_INVALID_INTEGER_CONVERSION | ||
| 104 | |||
| 105 | # define FE_ALL_INVALID \ | ||
| 106 | (FE_INVALID_SNAN | FE_INVALID_ISI | FE_INVALID_IDI | FE_INVALID_ZDZ \ | ||
| 107 | 	 | FE_INVALID_IMZ | FE_INVALID_COMPARE | FE_INVALID_SOFTWARE \ | ||
| 108 | 	 | FE_INVALID_SQRT | FE_INVALID_INTEGER_CONVERSION) | ||
| 109 | #endif | ||
| 110 | }; | ||
| 111 | |||
| 112 | #define FE_ALL_EXCEPT \ | ||
| 113 | 	(FE_INEXACT | FE_DIVBYZERO | FE_UNDERFLOW | FE_OVERFLOW | FE_INVALID) | ||
| 114 | |||
| 115 | /* PowerPC chips support all of the four defined rounding modes. We | ||
| 116 | use the bit pattern in the FPSCR as the values for the | ||
| 117 | appropriate macros. */ | ||
| 118 | enum | ||
| 119 | { | ||
| 120 | FE_TONEAREST = | ||
| 121 | #define FE_TONEAREST	0 | ||
| 122 | FE_TONEAREST, | ||
| 123 | FE_TOWARDZERO = | ||
| 124 | #define FE_TOWARDZERO	1 | ||
| 125 | FE_TOWARDZERO, | ||
| 126 | FE_UPWARD = | ||
| 127 | #define FE_UPWARD	2 | ||
| 128 | FE_UPWARD, | ||
| 129 | FE_DOWNWARD = | ||
| 130 | #define FE_DOWNWARD	3 | ||
| 131 | FE_DOWNWARD | ||
| 132 | }; | ||
| 133 | |||
| 134 | /* Type representing exception flags. */ | ||
| 135 | typedef unsigned int fexcept_t; | ||
| 136 | |||
| 137 | /* Type representing floating-point environment. We leave it as 'double' | ||
| 138 | for efficiency reasons (rather than writing it to a 32-bit integer). */ | ||
| 139 | typedef double fenv_t; | ||
| 140 | |||
| 141 | /* If the default argument is used we use this value. */ | ||
| 142 | extern const fenv_t __fe_dfl_env; | ||
| 143 | #define FE_DFL_ENV	(&__fe_dfl_env) | ||
| 144 | |||
| 145 | #ifdef __USE_GNU | ||
| 146 | /* Floating-point environment where all exceptions are enabled. Note that | ||
| 147 | this is not sufficient to give you SIGFPE. */ | ||
| 148 | extern const fenv_t __fe_enabled_env; | ||
| 149 | # define FE_ENABLED_ENV	(&__fe_enabled_env) | ||
| 150 | |||
| 151 | /* Floating-point environment with (processor-dependent) non-IEEE floating | ||
| 152 | point. */ | ||
| 153 | extern const fenv_t __fe_nonieee_env; | ||
| 154 | # define FE_NONIEEE_ENV	(&__fe_nonieee_env) | ||
| 155 | |||
| 156 | /* Floating-point environment with all exceptions enabled. Note that | ||
| 157 | just evaluating this value does not change the processor exception mode. | ||
| 158 | Passing this mask to fesetenv will result in a prctl syscall to change | ||
| 159 | the MSR FE0/FE1 bits to "Precise Mode". On some processors this will | ||
| 160 | result in slower floating point execution. This will last until an | ||
| 161 | fenv or exception mask is installed that disables all FP exceptions. */ | ||
| 162 | # define FE_NOMASK_ENV	FE_ENABLED_ENV | ||
| 163 | |||
| 164 | /* Floating-point environment with all exceptions disabled. Note that | ||
| 165 | just evaluating this value does not change the processor exception mode. | ||
| 166 | Passing this mask to fesetenv will result in a prctl syscall to change | ||
| 167 | the MSR FE0/FE1 bits to "Ignore Exceptions Mode". On most processors | ||
| 168 | this allows the fastest possible floating point execution.*/ | ||
| 169 | # define FE_MASK_ENV	FE_DFL_ENV | ||
| 170 | |||
| 171 | #endif | ||
| 172 | |||
| 173 | #if __GLIBC_USE (IEC_60559_BFP_EXT_C23) | ||
| 174 | /* Type representing floating-point control modes. */ | ||
| 175 | typedef double femode_t; | ||
| 176 | |||
| 177 | /* Default floating-point control modes. */ | ||
| 178 | extern const femode_t __fe_dfl_mode; | ||
| 179 | # define FE_DFL_MODE	(&__fe_dfl_mode) | ||
| 180 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64-linux-gnu/bits/floatn.h deleted-122| ... | @@ -1,122 +0,0 @@ | ||
| 1 | /* Macros to control TS 18661-3 glibc features on powerpc. | ||
| 2 | Copyright (C) 2017-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_FLOATN_H | ||
| 20 | #define _BITS_FLOATN_H | ||
| 21 | |||
| 22 | #include <features.h> | ||
| 23 | #include <bits/long-double.h> | ||
| 24 | |||
| 25 | /* Defined to 1 if the current compiler invocation provides a | ||
| 26 | floating-point type with the IEEE 754 binary128 format, and this glibc | ||
| 27 | includes corresponding *f128 interfaces for it. */ | ||
| 28 | #if defined _ARCH_PWR8 && defined __LITTLE_ENDIAN__ && (_CALL_ELF == 2) \ | ||
| 29 | && defined __FLOAT128__ && !defined __NO_LONG_DOUBLE_MATH | ||
| 30 | # define __HAVE_FLOAT128 1 | ||
| 31 | #else | ||
| 32 | # define __HAVE_FLOAT128 0 | ||
| 33 | #endif | ||
| 34 | |||
| 35 | /* Defined to 1 if __HAVE_FLOAT128 is 1 and the type is ABI-distinct | ||
| 36 | from the default float, double and long double types in this glibc, i.e. | ||
| 37 | calls to the binary128 functions go to *f128 symbols instead of *l. */ | ||
| 38 | #if __HAVE_FLOAT128 | ||
| 39 | # define __HAVE_DISTINCT_FLOAT128 1 | ||
| 40 | #else | ||
| 41 | # define __HAVE_DISTINCT_FLOAT128 0 | ||
| 42 | #endif | ||
| 43 | |||
| 44 | /* Defined to 1 if the current compiler invocation provides a | ||
| 45 | floating-point type with the right format for _Float64x, and this | ||
| 46 | glibc includes corresponding *f64x interfaces for it. */ | ||
| 47 | #define __HAVE_FLOAT64X __HAVE_FLOAT128 | ||
| 48 | |||
| 49 | /* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format | ||
| 50 | of long double. Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has | ||
| 51 | the format of _Float128, which must be different from that of long | ||
| 52 | double. */ | ||
| 53 | #define __HAVE_FLOAT64X_LONG_DOUBLE 0 | ||
| 54 | |||
| 55 | #ifndef __ASSEMBLER__ | ||
| 56 | |||
| 57 | /* Defined to concatenate the literal suffix to be used with _Float128 | ||
| 58 | types, if __HAVE_FLOAT128 is 1. */ | ||
| 59 | # if __HAVE_FLOAT128 | ||
| 60 | # if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) | ||
| 61 | /* The literal suffix (f128) exist for powerpc only since GCC 7.0. */ | ||
| 62 | # if __LDBL_MANT_DIG__ == 113 | ||
| 63 | # define __f128(x) x##l | ||
| 64 | # else | ||
| 65 | # define __f128(x) x##q | ||
| 66 | # endif | ||
| 67 | # else | ||
| 68 | # define __f128(x) x##f128 | ||
| 69 | # endif | ||
| 70 | # endif | ||
| 71 | |||
| 72 | /* Defined to a complex binary128 type if __HAVE_FLOAT128 is 1. */ | ||
| 73 | # if __HAVE_FLOAT128 | ||
| 74 | # if __LDBL_MANT_DIG__ == 113 && defined __cplusplus && !__GNUC_PREREQ (13, 0) | ||
| 75 | typedef long double _Float128; | ||
| 76 | # define __CFLOAT128 _Complex long double | ||
| 77 | # elif !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) | ||
| 78 | /* The type _Float128 exist for powerpc only since GCC 7.0. */ | ||
| 79 | typedef __float128 _Float128; | ||
| 80 | /* Add a typedef for older GCC and C++ compilers which don't natively support | ||
| 81 | _Complex _Float128. */ | ||
| 82 | typedef _Complex float __cfloat128 __attribute__ ((__mode__ (__KC__))); | ||
| 83 | # define __CFLOAT128 __cfloat128 | ||
| 84 | # else | ||
| 85 | # define __CFLOAT128 _Complex _Float128 | ||
| 86 | # endif | ||
| 87 | # endif | ||
| 88 | |||
| 89 | /* The remaining of this file provides support for older compilers. */ | ||
| 90 | # if __HAVE_FLOAT128 | ||
| 91 | /* Builtin __builtin_huge_valf128 doesn't exist before GCC 7.0. */ | ||
| 92 | # if !__GNUC_PREREQ (7, 0) | ||
| 93 | # define __builtin_huge_valf128() ((_Float128) __builtin_huge_val ()) | ||
| 94 | # endif | ||
| 95 | |||
| 96 | /* The following builtins (suffixed with 'q') are available in GCC >= 6.2, | ||
| 97 | which is the minimum version required for float128 support on powerpc64le. | ||
| 98 | Since GCC 7.0 the builtins suffixed with f128 are also available, then | ||
| 99 | there is no need to redefined them. */ | ||
| 100 | # if !__GNUC_PREREQ (7, 0) | ||
| 101 | # define __builtin_copysignf128 __builtin_copysignq | ||
| 102 | # define __builtin_fabsf128 __builtin_fabsq | ||
| 103 | # define __builtin_inff128 __builtin_infq | ||
| 104 | # define __builtin_nanf128 __builtin_nanq | ||
| 105 | # define __builtin_nansf128 __builtin_nansq | ||
| 106 | # endif | ||
| 107 | |||
| 108 | /* In math/math.h, __MATH_TG will expand signbit to __builtin_signbit*, | ||
| 109 | e.g.: __builtin_signbitf128, before GCC 6. However, there has never | ||
| 110 | been a __builtin_signbitf128 in GCC and the type-generic builtin is | ||
| 111 | only available since GCC 6. */ | ||
| 112 | # if !__GNUC_PREREQ (6, 0) | ||
| 113 | # define __builtin_signbitf128 __signbitf128 | ||
| 114 | # endif | ||
| 115 | |||
| 116 | # endif | ||
| 117 | |||
| 118 | #endif /* !__ASSEMBLER__. */ | ||
| 119 | |||
| 120 | #include <bits/floatn-common.h> | ||
| 121 | |||
| 122 | #endif /* _BITS_FLOATN_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64-linux-gnu/bits/fp-fast.h deleted-39| ... | @@ -1,39 +0,0 @@ | ||
| 1 | /* Define FP_FAST_* macros. PowerPC version. | ||
| 2 | Copyright (C) 2016-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _MATH_H | ||
| 20 | # error "Never use <bits/fp-fast.h> directly; include <math.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifdef __USE_ISOC99 | ||
| 24 | |||
| 25 | /* The GCC 4.6 compiler will define __FP_FAST_FMA{,F,L} if the fma{,f,l} | ||
| 26 | builtins are supported. */ | ||
| 27 | # if (!defined _SOFT_FLOAT && !defined __NO_FPRS__) || defined __FP_FAST_FMA | ||
| 28 | # define FP_FAST_FMA 1 | ||
| 29 | # endif | ||
| 30 | |||
| 31 | # if (!defined _SOFT_FLOAT && !defined __NO_FPRS__) || defined __FP_FAST_FMAF | ||
| 32 | # define FP_FAST_FMAF 1 | ||
| 33 | # endif | ||
| 34 | |||
| 35 | # ifdef __FP_FAST_FMAL | ||
| 36 | # define FP_FAST_FMAL 1 | ||
| 37 | # endif | ||
| 38 | |||
| 39 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64-linux-gnu/bits/hwcap.h deleted-78| ... | @@ -1,78 +0,0 @@ | ||
| 1 | /* Defines for bits in AT_HWCAP and AT_HWCAP2. | ||
| 2 | Copyright (C) 2012-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #if !defined(_SYS_AUXV_H) && !defined(_SYSDEPS_SYSDEP_H) | ||
| 20 | # error "Never include <bits/hwcap.h> directly; use <sys/auxv.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* The bit numbers must match those in the kernel's asm/cputable.h. */ | ||
| 24 | |||
| 25 | /* Feature definitions in AT_HWCAP. */ | ||
| 26 | #define PPC_FEATURE_32		 0x80000000 /* 32-bit mode. */ | ||
| 27 | #define PPC_FEATURE_64		 0x40000000 /* 64-bit mode. */ | ||
| 28 | #define PPC_FEATURE_601_INSTR	 0x20000000 /* 601 chip, Old POWER ISA. */ | ||
| 29 | #define PPC_FEATURE_HAS_ALTIVEC	 0x10000000 /* SIMD/Vector Unit. */ | ||
| 30 | #define PPC_FEATURE_HAS_FPU	 0x08000000 /* Floating Point Unit. */ | ||
| 31 | #define PPC_FEATURE_HAS_MMU	 0x04000000 /* Memory Management Unit. */ | ||
| 32 | #define PPC_FEATURE_HAS_4xxMAC	 0x02000000 /* 4xx Multiply Accumulator. */ | ||
| 33 | #define PPC_FEATURE_UNIFIED_CACHE 0x01000000 /* Unified I/D cache. */ | ||
| 34 | #define PPC_FEATURE_HAS_SPE	 0x00800000 /* Signal Processing ext. */ | ||
| 35 | #define PPC_FEATURE_HAS_EFP_SINGLE 0x00400000 /* SPE Float. */ | ||
| 36 | #define PPC_FEATURE_HAS_EFP_DOUBLE 0x00200000 /* SPE Double. */ | ||
| 37 | #define PPC_FEATURE_NO_TB	 0x00100000 /* 601/403gx have no timebase */ | ||
| 38 | #define PPC_FEATURE_POWER4	 0x00080000 /* POWER4 ISA 2.00 */ | ||
| 39 | #define PPC_FEATURE_POWER5	 0x00040000 /* POWER5 ISA 2.02 */ | ||
| 40 | #define PPC_FEATURE_POWER5_PLUS	 0x00020000 /* POWER5+ ISA 2.03 */ | ||
| 41 | #define PPC_FEATURE_CELL_BE	 0x00010000 /* CELL Broadband Engine */ | ||
| 42 | #define PPC_FEATURE_BOOKE	 0x00008000 /* ISA Category Embedded */ | ||
| 43 | #define PPC_FEATURE_SMT		 0x00004000 /* Simultaneous | ||
| 44 | 						 Multi-Threading */ | ||
| 45 | #define PPC_FEATURE_ICACHE_SNOOP 0x00002000 | ||
| 46 | #define PPC_FEATURE_ARCH_2_05	 0x00001000 /* ISA 2.05 */ | ||
| 47 | #define PPC_FEATURE_PA6T	 0x00000800 /* PA Semi 6T Core */ | ||
| 48 | #define PPC_FEATURE_HAS_DFP	 0x00000400 /* Decimal FP Unit */ | ||
| 49 | #define PPC_FEATURE_POWER6_EXT	 0x00000200 /* P6 + mffgpr/mftgpr */ | ||
| 50 | #define PPC_FEATURE_ARCH_2_06	 0x00000100 /* ISA 2.06 */ | ||
| 51 | #define PPC_FEATURE_HAS_VSX	 0x00000080 /* P7 Vector Extension. */ | ||
| 52 | #define PPC_FEATURE_PSERIES_PERFMON_COMPAT 0x00000040 | ||
| 53 | /* Reserved by the kernel.	 0x00000004 Do not use. */ | ||
| 54 | #define PPC_FEATURE_TRUE_LE	 0x00000002 | ||
| 55 | #define PPC_FEATURE_PPC_LE	 0x00000001 | ||
| 56 | |||
| 57 | /* Feature definitions in AT_HWCAP2. */ | ||
| 58 | #define PPC_FEATURE2_ARCH_2_07 0x80000000 /* ISA 2.07 */ | ||
| 59 | #define PPC_FEATURE2_HAS_HTM 0x40000000 /* Hardware Transactional | ||
| 60 | 						 Memory */ | ||
| 61 | #define PPC_FEATURE2_HAS_DSCR 0x20000000 /* Data Stream Control | ||
| 62 | 						 Register */ | ||
| 63 | #define PPC_FEATURE2_HAS_EBB 0x10000000 /* Event Base Branching */ | ||
| 64 | #define PPC_FEATURE2_HAS_ISEL 0x08000000 /* Integer Select */ | ||
| 65 | #define PPC_FEATURE2_HAS_TAR 0x04000000 /* Target Address Register */ | ||
| 66 | #define PPC_FEATURE2_HAS_VEC_CRYPTO 0x02000000 /* Target supports vector | ||
| 67 | 						 instruction. */ | ||
| 68 | #define PPC_FEATURE2_HTM_NOSC	 0x01000000 /* Kernel aborts transaction | ||
| 69 | 						 when a syscall is made. */ | ||
| 70 | #define PPC_FEATURE2_ARCH_3_00	 0x00800000 /* ISA 3.0 */ | ||
| 71 | #define PPC_FEATURE2_HAS_IEEE128 0x00400000 /* VSX IEEE Binary Float | ||
| 72 | 						 128-bit */ | ||
| 73 | #define PPC_FEATURE2_DARN	 0x00200000 /* darn instruction. */ | ||
| 74 | #define PPC_FEATURE2_SCV	 0x00100000 /* scv syscall. */ | ||
| 75 | #define PPC_FEATURE2_HTM_NO_SUSPEND 0x00080000 /* TM without suspended | ||
| 76 | 						 state. */ | ||
| 77 | #define PPC_FEATURE2_ARCH_3_1	 0x00040000 /* ISA 3.1. */ | ||
| 78 | #define PPC_FEATURE2_MMA	 0x00020000 /* Matrix-Multiply Assist. */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64-linux-gnu/bits/ioctl-types.h deleted-77| ... | @@ -1,77 +0,0 @@ | ||
| 1 | /* Structure types for pre-termios terminal ioctls. Linux/powerpc version. | ||
| 2 | Copyright (C) 2014-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_IOCTL_H | ||
| 20 | # error "Never use <bits/ioctl-types.h> directly; include <sys/ioctl.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Get definition of constants for use with `ioctl'. */ | ||
| 24 | #include <asm/ioctls.h> | ||
| 25 | |||
| 26 | |||
| 27 | struct winsize | ||
| 28 | { | ||
| 29 | unsigned short int ws_row; | ||
| 30 | unsigned short int ws_col; | ||
| 31 | unsigned short int ws_xpixel; | ||
| 32 | unsigned short int ws_ypixel; | ||
| 33 | }; | ||
| 34 | |||
| 35 | #define NCC 10 | ||
| 36 | struct termio | ||
| 37 | { | ||
| 38 | unsigned short int c_iflag;		/* input mode flags */ | ||
| 39 | unsigned short int c_oflag;		/* output mode flags */ | ||
| 40 | unsigned short int c_cflag;		/* control mode flags */ | ||
| 41 | unsigned short int c_lflag;		/* local mode flags */ | ||
| 42 | unsigned char c_line;		/* line discipline */ | ||
| 43 | unsigned char c_cc[NCC];		/* control characters */ | ||
| 44 | }; | ||
| 45 | |||
| 46 | /* modem lines */ | ||
| 47 | #define TIOCM_LE	0x001 | ||
| 48 | #define TIOCM_DTR	0x002 | ||
| 49 | #define TIOCM_RTS	0x004 | ||
| 50 | #define TIOCM_ST	0x008 | ||
| 51 | #define TIOCM_SR	0x010 | ||
| 52 | #define TIOCM_CTS	0x020 | ||
| 53 | #define TIOCM_CAR	0x040 | ||
| 54 | #define TIOCM_RNG	0x080 | ||
| 55 | #define TIOCM_DSR	0x100 | ||
| 56 | #define TIOCM_CD	TIOCM_CAR | ||
| 57 | #define TIOCM_RI	TIOCM_RNG | ||
| 58 | |||
| 59 | /* ioctl (fd, TIOCSERGETLSR, &result) where result may be as below */ | ||
| 60 | |||
| 61 | /* line disciplines */ | ||
| 62 | #define N_TTY		0 | ||
| 63 | #define N_SLIP		1 | ||
| 64 | #define N_MOUSE		2 | ||
| 65 | #define N_PPP		3 | ||
| 66 | #define N_STRIP		4 | ||
| 67 | #define N_AX25		5 | ||
| 68 | #define N_X25		6	/* X.25 async */ | ||
| 69 | #define N_6PACK		7 | ||
| 70 | #define N_MASC		8	/* Mobitex module */ | ||
| 71 | #define N_R3964		9	/* Simatic R3964 module */ | ||
| 72 | #define N_PROFIBUS_FDL	10	/* Profibus */ | ||
| 73 | #define N_IRDA		11	/* Linux IR */ | ||
| 74 | #define N_SMSBLOCK	12	/* SMS block mode */ | ||
| 75 | #define N_HDLC		13	/* synchronous HDLC */ | ||
| 76 | #define N_SYNC_PPP	14	/* synchronous PPP */ | ||
| 77 | #define	N_HCI		15	/* Bluetooth HCI UART */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64-linux-gnu/bits/ipc-perm.h deleted-36| ... | @@ -1,36 +0,0 @@ | ||
| 1 | /* struct ipc_perm definition. Linux/powerpc version. | ||
| 2 | Copyright (C) 1995-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_IPC_H | ||
| 20 | # error "Never use <bits/ipc-perm.h> directly; include <sys/ipc.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Data structure used to pass permission information to IPC operations. */ | ||
| 24 | struct ipc_perm | ||
| 25 | { | ||
| 26 | __key_t __key;		/* Key. */ | ||
| 27 | __uid_t uid;		/* Owner's user ID. */ | ||
| 28 | __gid_t gid;		/* Owner's group ID. */ | ||
| 29 | __uid_t cuid;		/* Creator's user ID. */ | ||
| 30 | __gid_t cgid;		/* Creator's group ID. */ | ||
| 31 | __mode_t mode;		/* Read/write permission. */ | ||
| 32 | __uint32_t __seq;		/* Sequence number. */ | ||
| 33 | __uint32_t __pad1; | ||
| 34 | __uint64_t __glibc_reserved1; | ||
| 35 | __uint64_t __glibc_reserved2; | ||
| 36 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64-linux-gnu/bits/iscanonical.h deleted-58| ... | @@ -1,58 +0,0 @@ | ||
| 1 | /* Define iscanonical macro. ldbl-128ibm version. | ||
| 2 | Copyright (C) 2016-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _MATH_H | ||
| 20 | # error "Never use <bits/iscanonical.h> directly; include <math.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #if defined (__NO_LONG_DOUBLE_MATH) || __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 1 | ||
| 24 | # define iscanonical(x) ((void) (__typeof (x)) (x), 1) | ||
| 25 | #else | ||
| 26 | extern int __iscanonicall (long double __x) | ||
| 27 | __THROW __attribute__ ((__const__)); | ||
| 28 | # define __iscanonicalf(x) ((void) (__typeof (x)) (x), 1) | ||
| 29 | # define __iscanonical(x) ((void) (__typeof (x)) (x), 1) | ||
| 30 | # if __HAVE_DISTINCT_FLOAT128 | ||
| 31 | # define __iscanonicalf128(x) ((void) (__typeof (x)) (x), 1) | ||
| 32 | # endif | ||
| 33 | |||
| 34 | /* Return nonzero value if X is canonical. In IEEE interchange binary | ||
| 35 | formats, all values are canonical, but the argument must still be | ||
| 36 | converted to its semantic type for any exceptions arising from the | ||
| 37 | conversion, before being discarded; in IBM long double, there are | ||
| 38 | encodings that are not consistently handled as corresponding to any | ||
| 39 | particular value of the type, and we return 0 for those. */ | ||
| 40 | # ifndef __cplusplus | ||
| 41 | # define iscanonical(x) __MATH_TG ((x), __iscanonical, (x)) | ||
| 42 | # else | ||
| 43 | /* In C++ mode, __MATH_TG cannot be used, because it relies on | ||
| 44 | __builtin_types_compatible_p, which is a C-only builtin. On the | ||
| 45 | other hand, overloading provides the means to distinguish between | ||
| 46 | the floating-point types. The overloading resolution will match | ||
| 47 | the correct parameter (regardless of type qualifiers (i.e.: const | ||
| 48 | and volatile)). */ | ||
| 49 | extern "C++" { | ||
| 50 | inline int iscanonical (float __val) { return __iscanonicalf (__val); } | ||
| 51 | inline int iscanonical (double __val) { return __iscanonical (__val); } | ||
| 52 | inline int iscanonical (long double __val) { return __iscanonicall (__val); } | ||
| 53 | # if __HAVE_DISTINCT_FLOAT128 | ||
| 54 | inline int iscanonical (_Float128 __val) { return __iscanonicalf128 (__val); } | ||
| 55 | # endif | ||
| 56 | } | ||
| 57 | # endif /* __cplusplus */ | ||
| 58 | #endif /* __NO_LONG_DOUBLE_MATH */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64-linux-gnu/bits/link.h deleted-156| ... | @@ -1,156 +0,0 @@ | ||
| 1 | /* Machine-specific declarations for dynamic linker interface. PowerPC version | ||
| 2 | Copyright (C) 2004-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef	_LINK_H | ||
| 20 | # error "Never include <bits/link.h> directly; use <link.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | |||
| 24 | #if __ELF_NATIVE_CLASS == 32 | ||
| 25 | |||
| 26 | /* Registers for entry into PLT on PPC32. */ | ||
| 27 | typedef struct La_ppc32_regs | ||
| 28 | { | ||
| 29 | uint32_t lr_reg[8]; | ||
| 30 | double lr_fp[8]; | ||
| 31 | uint32_t lr_vreg[12][4]; | ||
| 32 | uint32_t lr_r1; | ||
| 33 | uint32_t lr_lr; | ||
| 34 | } La_ppc32_regs; | ||
| 35 | |||
| 36 | /* Return values for calls from PLT on PPC32. */ | ||
| 37 | typedef struct La_ppc32_retval | ||
| 38 | { | ||
| 39 | uint32_t lrv_r3; | ||
| 40 | uint32_t lrv_r4; | ||
| 41 | double lrv_fp[8]; | ||
| 42 | uint32_t lrv_v2[4]; | ||
| 43 | } La_ppc32_retval; | ||
| 44 | |||
| 45 | |||
| 46 | __BEGIN_DECLS | ||
| 47 | |||
| 48 | extern Elf32_Addr la_ppc32_gnu_pltenter (Elf32_Sym *__sym, | ||
| 49 | 					 unsigned int __ndx, | ||
| 50 | 					 uintptr_t *__refcook, | ||
| 51 | 					 uintptr_t *__defcook, | ||
| 52 | 					 La_ppc32_regs *__regs, | ||
| 53 | 					 unsigned int *__flags, | ||
| 54 | 					 const char *__symname, | ||
| 55 | 					 long int *__framesizep); | ||
| 56 | extern unsigned int la_ppc32_gnu_pltexit (Elf32_Sym *__sym, | ||
| 57 | 					 unsigned int __ndx, | ||
| 58 | 					 uintptr_t *__refcook, | ||
| 59 | 					 uintptr_t *__defcook, | ||
| 60 | 					 const La_ppc32_regs *__inregs, | ||
| 61 | 					 La_ppc32_retval *__outregs, | ||
| 62 | 					 const char *__symname); | ||
| 63 | |||
| 64 | __END_DECLS | ||
| 65 | |||
| 66 | #elif __ELF_NATIVE_CLASS == 64 | ||
| 67 | # if _CALL_ELF != 2 | ||
| 68 | |||
| 69 | /* Registers for entry into PLT on PPC64. */ | ||
| 70 | typedef struct La_ppc64_regs | ||
| 71 | { | ||
| 72 | uint64_t lr_reg[8]; | ||
| 73 | double lr_fp[13]; | ||
| 74 | uint32_t __padding; | ||
| 75 | uint32_t lr_vrsave; | ||
| 76 | uint32_t lr_vreg[12][4]; | ||
| 77 | uint64_t lr_r1; | ||
| 78 | uint64_t lr_lr; | ||
| 79 | } La_ppc64_regs; | ||
| 80 | |||
| 81 | /* Return values for calls from PLT on PPC64. */ | ||
| 82 | typedef struct La_ppc64_retval | ||
| 83 | { | ||
| 84 | uint64_t lrv_r3; | ||
| 85 | uint64_t lrv_r4; | ||
| 86 | double lrv_fp[4];	/* f1-f4, float - complex long double. */ | ||
| 87 | uint32_t lrv_v2[4];	/* v2. */ | ||
| 88 | } La_ppc64_retval; | ||
| 89 | |||
| 90 | |||
| 91 | __BEGIN_DECLS | ||
| 92 | |||
| 93 | extern Elf64_Addr la_ppc64_gnu_pltenter (Elf64_Sym *__sym, | ||
| 94 | 					 unsigned int __ndx, | ||
| 95 | 					 uintptr_t *__refcook, | ||
| 96 | 					 uintptr_t *__defcook, | ||
| 97 | 					 La_ppc64_regs *__regs, | ||
| 98 | 					 unsigned int *__flags, | ||
| 99 | 					 const char *__symname, | ||
| 100 | 					 long int *__framesizep); | ||
| 101 | extern unsigned int la_ppc64_gnu_pltexit (Elf64_Sym *__sym, | ||
| 102 | 					 unsigned int __ndx, | ||
| 103 | 					 uintptr_t *__refcook, | ||
| 104 | 					 uintptr_t *__defcook, | ||
| 105 | 					 const La_ppc64_regs *__inregs, | ||
| 106 | 					 La_ppc64_retval *__outregs, | ||
| 107 | 					 const char *__symname); | ||
| 108 | |||
| 109 | __END_DECLS | ||
| 110 | |||
| 111 | # else | ||
| 112 | |||
| 113 | /* Registers for entry into PLT on PPC64 in the ELFv2 ABI. */ | ||
| 114 | typedef struct La_ppc64v2_regs | ||
| 115 | { | ||
| 116 | uint64_t lr_reg[8]; | ||
| 117 | double lr_fp[13]; | ||
| 118 | uint32_t __padding; | ||
| 119 | uint32_t lr_vrsave; | ||
| 120 | uint32_t lr_vreg[12][4] __attribute__ ((aligned (16))); | ||
| 121 | uint64_t lr_r1; | ||
| 122 | uint64_t lr_lr; | ||
| 123 | } La_ppc64v2_regs; | ||
| 124 | |||
| 125 | /* Return values for calls from PLT on PPC64 in the ELFv2 ABI. */ | ||
| 126 | typedef struct La_ppc64v2_retval | ||
| 127 | { | ||
| 128 | uint64_t lrv_r3; | ||
| 129 | uint64_t lrv_r4; | ||
| 130 | double lrv_fp[10]; | ||
| 131 | uint32_t lrv_vreg[8][4] __attribute__ ((aligned (16))); | ||
| 132 | } La_ppc64v2_retval; | ||
| 133 | |||
| 134 | |||
| 135 | __BEGIN_DECLS | ||
| 136 | |||
| 137 | extern Elf64_Addr la_ppc64v2_gnu_pltenter (Elf64_Sym *__sym, | ||
| 138 | 					 unsigned int __ndx, | ||
| 139 | 					 uintptr_t *__refcook, | ||
| 140 | 					 uintptr_t *__defcook, | ||
| 141 | 					 La_ppc64v2_regs *__regs, | ||
| 142 | 					 unsigned int *__flags, | ||
| 143 | 					 const char *__symname, | ||
| 144 | 					 long int *__framesizep); | ||
| 145 | extern unsigned int la_ppc64v2_gnu_pltexit (Elf64_Sym *__sym, | ||
| 146 | 					 unsigned int __ndx, | ||
| 147 | 					 uintptr_t *__refcook, | ||
| 148 | 					 uintptr_t *__defcook, | ||
| 149 | 					 const La_ppc64v2_regs *__inregs, | ||
| 150 | 					 La_ppc64v2_retval *__outregs, | ||
| 151 | 					 const char *__symname); | ||
| 152 | |||
| 153 | __END_DECLS | ||
| 154 | |||
| 155 | # endif | ||
| 156 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64-linux-gnu/bits/long-double.h deleted-25| ... | @@ -1,25 +0,0 @@ | ||
| 1 | /* Properties of long double type. ldbl-opt version. | ||
| 2 | Copyright (C) 2016-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef __NO_LONG_DOUBLE_MATH | ||
| 20 | # define __LONG_DOUBLE_MATH_OPTIONAL	1 | ||
| 21 | # ifndef __LONG_DOUBLE_128__ | ||
| 22 | # define __NO_LONG_DOUBLE_MATH		1 | ||
| 23 | # endif | ||
| 24 | #endif | ||
| 25 | #define __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI 0 | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64-linux-gnu/bits/mman.h deleted-51| ... | @@ -1,51 +0,0 @@ | ||
| 1 | /* Definitions for POSIX memory map interface. Linux/PowerPC version. | ||
| 2 | Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_MMAN_H | ||
| 20 | # error "Never use <bits/mman.h> directly; include <sys/mman.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* The following definitions basically come from the kernel headers. | ||
| 24 | But the kernel header is not namespace clean. */ | ||
| 25 | |||
| 26 | #define PROT_SAO	0x10		/* Strong Access Ordering. */ | ||
| 27 | |||
| 28 | /* These are Linux-specific. */ | ||
| 29 | #define MAP_GROWSDOWN	0x00100		/* Stack-like segment. */ | ||
| 30 | #define MAP_DENYWRITE	0x00800		/* ETXTBSY */ | ||
| 31 | #define MAP_EXECUTABLE	0x01000		/* Mark it as an executable. */ | ||
| 32 | #define MAP_LOCKED	0x00080		/* Lock the mapping. */ | ||
| 33 | #define MAP_NORESERVE	0x00040		/* Don't check for reservations. */ | ||
| 34 | #define MAP_POPULATE	0x08000		/* Populate (prefault) pagetables. */ | ||
| 35 | #define MAP_NONBLOCK	0x10000		/* Do not block on IO. */ | ||
| 36 | #define MAP_STACK	0x20000		/* Allocation is for a stack. */ | ||
| 37 | #define MAP_HUGETLB	0x40000		/* Create huge page mapping. */ | ||
| 38 | #define MAP_SYNC	0x80000		/* Perform synchronous page | ||
| 39 | 					 faults for the mapping. */ | ||
| 40 | #define MAP_FIXED_NOREPLACE 0x100000	/* MAP_FIXED but do not unmap | ||
| 41 | 					 underlying mapping. */ | ||
| 42 | |||
| 43 | /* Flags for `mlockall'. */ | ||
| 44 | #define MCL_CURRENT	0x2000		/* Lock all currently mapped pages. */ | ||
| 45 | #define MCL_FUTURE	0x4000		/* Lock all additions to address | ||
| 46 | 					 space. */ | ||
| 47 | #define MCL_ONFAULT	0x8000		/* Lock all pages that are | ||
| 48 | 					 faulted in. */ | ||
| 49 | |||
| 50 | /* Include generic Linux declarations. */ | ||
| 51 | #include <bits/mman-linux.h> | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64-linux-gnu/bits/procfs.h deleted-49| ... | @@ -1,49 +0,0 @@ | ||
| 1 | /* Types for registers for sys/procfs.h. PowerPC version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_PROCFS_H | ||
| 20 | # error "Never include <bits/procfs.h> directly; use <sys/procfs.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <signal.h> | ||
| 24 | #include <sys/ucontext.h> | ||
| 25 | |||
| 26 | /* These definitions are normally provided by ucontext.h via | ||
| 27 | asm/sigcontext.h, asm/ptrace.h, and asm/elf.h. Otherwise we define | ||
| 28 | them here. */ | ||
| 29 | #if !defined __PPC64_ELF_H && !defined _ASM_POWERPC_ELF_H | ||
| 30 | #define ELF_NGREG 48 /* includes nip, msr, lr, etc. */ | ||
| 31 | #define ELF_NFPREG 33 /* includes fpscr */ | ||
| 32 | #if __WORDSIZE == 32 | ||
| 33 | # define ELF_NVRREG 33 /* includes vscr */ | ||
| 34 | #else | ||
| 35 | # define ELF_NVRREG 34 /* includes vscr */ | ||
| 36 | #endif | ||
| 37 | |||
| 38 | typedef unsigned long elf_greg_t; | ||
| 39 | typedef elf_greg_t elf_gregset_t[ELF_NGREG]; | ||
| 40 | |||
| 41 | typedef double elf_fpreg_t; | ||
| 42 | typedef elf_fpreg_t elf_fpregset_t[ELF_NFPREG]; | ||
| 43 | |||
| 44 | /* Altivec registers */ | ||
| 45 | typedef struct { | ||
| 46 | unsigned int u[4]; | ||
| 47 | } __attribute__ ((__aligned__ (16))) elf_vrreg_t; | ||
| 48 | typedef elf_vrreg_t elf_vrregset_t[ELF_NVRREG]; | ||
| 49 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64-linux-gnu/bits/pthread_stack_min.h deleted-21| ... | @@ -1,21 +0,0 @@ | ||
| 1 | /* Definition of PTHREAD_STACK_MIN. Linux/PPC version. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public License as | ||
| 7 | published by the Free Software Foundation; either version 2.1 of the | ||
| 8 | License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; see the file COPYING.LIB. If | ||
| 17 | not, see <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* Minimum size for a thread. At least two pages for systems with 64k | ||
| 20 | pages. */ | ||
| 21 | #define PTHREAD_STACK_MIN	131072 | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64-linux-gnu/bits/rseq.h deleted-37| ... | @@ -1,37 +0,0 @@ | ||
| 1 | /* Restartable Sequences Linux powerpc architecture header. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_RSEQ_H | ||
| 19 | # error "Never use <bits/rseq.h> directly; include <sys/rseq.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* RSEQ_SIG is a signature required before each abort handler code. | ||
| 23 | |||
| 24 | It is a 32-bit value that maps to actual architecture code compiled | ||
| 25 | into applications and libraries. It needs to be defined for each | ||
| 26 | architecture. When choosing this value, it needs to be taken into | ||
| 27 | account that generating invalid instructions may have ill effects on | ||
| 28 | tools like objdump, and may also have impact on the CPU speculative | ||
| 29 | execution efficiency in some cases. | ||
| 30 | |||
| 31 | RSEQ_SIG uses the following trap instruction: | ||
| 32 | |||
| 33 | powerpc-be: 0f e5 00 0b twui r5,11 | ||
| 34 | powerpc64-le: 0b 00 e5 0f twui r5,11 | ||
| 35 | powerpc64-be: 0f e5 00 0b twui r5,11 */ | ||
| 36 | |||
| 37 | #define RSEQ_SIG 0x0fe5000b | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64-linux-gnu/bits/setjmp.h deleted-50| ... | @@ -1,50 +0,0 @@ | ||
| 1 | /* Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | /* Define the machine-dependent type `jmp_buf'. PowerPC version. */ | ||
| 19 | #ifndef _BITS_SETJMP_H | ||
| 20 | #define _BITS_SETJMP_H 1 | ||
| 21 | |||
| 22 | #if !defined _SETJMP_H && !defined _PTHREAD_H | ||
| 23 | # error "Never include <bits/setjmp.h> directly; use <setjmp.h> instead." | ||
| 24 | #endif | ||
| 25 | |||
| 26 | /* The previous bits/setjmp.h had __jmp_buf defined as a structure. | ||
| 27 | We use an array of 'long int' instead, to make writing the | ||
| 28 | assembler easier. Naturally, user code should not depend on | ||
| 29 | either representation. */ | ||
| 30 | |||
| 31 | #include <bits/wordsize.h> | ||
| 32 | |||
| 33 | /* The current powerpc 32-bit Altivec ABI specifies for SVR4 ABI and EABI | ||
| 34 | the vrsave must be at byte 248 & v20 at byte 256. So we must pad this | ||
| 35 | correctly on 32 bit. It also insists that vecregs are only guaranteed | ||
| 36 | 4 byte alignment so we need to use vperm in the setjmp/longjmp routines. | ||
| 37 | We have to version the code because members like int __mask_was_saved | ||
| 38 | in the jmp_buf will move as jmp_buf is now larger than 248 bytes. We | ||
| 39 | cannot keep the altivec jmp_buf backward compatible with the jmp_buf. */ | ||
| 40 | #ifndef	_ASM | ||
| 41 | # if __WORDSIZE == 64 | ||
| 42 | typedef long int __jmp_buf[64] __attribute__ ((__aligned__ (16))); | ||
| 43 | # else | ||
| 44 | /* The alignment is not essential, i.e.the buffer can be copied to a 4 byte | ||
| 45 | aligned buffer as per the ABI it is just added for performance reasons. */ | ||
| 46 | typedef long int __jmp_buf[64 + (12 * 4)] __attribute__ ((__aligned__ (16))); | ||
| 47 | # endif | ||
| 48 | #endif | ||
| 49 | |||
| 50 | #endif /* bits/setjmp.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64-linux-gnu/bits/sigstack.h deleted-37| ... | @@ -1,37 +0,0 @@ | ||
| 1 | /* sigstack, sigaltstack definitions. | ||
| 2 | Copyright (C) 1998-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_SIGSTACK_H | ||
| 20 | #define _BITS_SIGSTACK_H 1 | ||
| 21 | |||
| 22 | #if !defined _SIGNAL_H && !defined _SYS_UCONTEXT_H | ||
| 23 | # error "Never include this file directly. Use <signal.h> instead" | ||
| 24 | #endif | ||
| 25 | |||
| 26 | #ifdef __powerpc64__ | ||
| 27 | #define MINSIGSTKSZ	8192 | ||
| 28 | #define SIGSTKSZ	32768 | ||
| 29 | #else | ||
| 30 | /* Minimum stack size for a signal handler. */ | ||
| 31 | #define MINSIGSTKSZ	4096 | ||
| 32 | |||
| 33 | /* System default stack size. */ | ||
| 34 | #define SIGSTKSZ	16384 | ||
| 35 | #endif | ||
| 36 | |||
| 37 | #endif /* bits/sigstack.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64-linux-gnu/bits/socket-constants.h deleted-70| ... | @@ -1,70 +0,0 @@ | ||
| 1 | /* Socket constants which vary among Linux architectures. Version for POWER. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SOCKET_H | ||
| 20 | # error "Never include <bits/socket-constants.h> directly; use <sys/socket.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #define SOL_SOCKET 1 | ||
| 24 | #define SO_ACCEPTCONN 30 | ||
| 25 | #define SO_BROADCAST 6 | ||
| 26 | #define SO_DONTROUTE 5 | ||
| 27 | #define SO_ERROR 4 | ||
| 28 | #define SO_KEEPALIVE 9 | ||
| 29 | #define SO_LINGER 13 | ||
| 30 | #define SO_OOBINLINE 10 | ||
| 31 | #define SO_RCVBUF 8 | ||
| 32 | #define SO_RCVLOWAT 16 | ||
| 33 | #define SO_REUSEADDR 2 | ||
| 34 | #define SO_SNDBUF 7 | ||
| 35 | #define SO_SNDLOWAT 17 | ||
| 36 | #define SO_TYPE 3 | ||
| 37 | |||
| 38 | #if __TIMESIZE == 64 | ||
| 39 | # define SO_RCVTIMEO 18 | ||
| 40 | # define SO_SNDTIMEO 19 | ||
| 41 | # define SO_TIMESTAMP 29 | ||
| 42 | # define SO_TIMESTAMPNS 35 | ||
| 43 | # define SO_TIMESTAMPING 37 | ||
| 44 | #else | ||
| 45 | # define SO_RCVTIMEO_OLD 18 | ||
| 46 | # define SO_SNDTIMEO_OLD 19 | ||
| 47 | # define SO_RCVTIMEO_NEW 66 | ||
| 48 | # define SO_SNDTIMEO_NEW 67 | ||
| 49 | |||
| 50 | # define SO_TIMESTAMP_OLD 29 | ||
| 51 | # define SO_TIMESTAMPNS_OLD 35 | ||
| 52 | # define SO_TIMESTAMPING_OLD 37 | ||
| 53 | # define SO_TIMESTAMP_NEW 63 | ||
| 54 | # define SO_TIMESTAMPNS_NEW 64 | ||
| 55 | # define SO_TIMESTAMPING_NEW 65 | ||
| 56 | |||
| 57 | # ifdef __USE_TIME64_REDIRECTS | ||
| 58 | # define SO_RCVTIMEO SO_RCVTIMEO_NEW | ||
| 59 | # define SO_SNDTIMEO SO_SNDTIMEO_NEW | ||
| 60 | # define SO_TIMESTAMP SO_TIMESTAMP_NEW | ||
| 61 | # define SO_TIMESTAMPNS SO_TIMESTAMPNS_NEW | ||
| 62 | # define SO_TIMESTAMPING SO_TIMESTAMPING_NEW | ||
| 63 | # else | ||
| 64 | # define SO_RCVTIMEO SO_RCVTIMEO_OLD | ||
| 65 | # define SO_SNDTIMEO SO_SNDTIMEO_OLD | ||
| 66 | # define SO_TIMESTAMP SO_TIMESTAMP_OLD | ||
| 67 | # define SO_TIMESTAMPNS SO_TIMESTAMPNS_OLD | ||
| 68 | # define SO_TIMESTAMPING SO_TIMESTAMPING_OLD | ||
| 69 | # endif | ||
| 70 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64-linux-gnu/bits/struct_mutex.h deleted-63| ... | @@ -1,63 +0,0 @@ | ||
| 1 | /* PowerPC internal mutex struct definitions. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <http://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _THREAD_MUTEX_INTERNAL_H | ||
| 20 | #define _THREAD_MUTEX_INTERNAL_H 1 | ||
| 21 | |||
| 22 | struct __pthread_mutex_s | ||
| 23 | { | ||
| 24 | int __lock; | ||
| 25 | unsigned int __count; | ||
| 26 | int __owner; | ||
| 27 | #if __WORDSIZE == 64 | ||
| 28 | unsigned int __nusers; | ||
| 29 | #endif | ||
| 30 | /* KIND must stay at this position in the structure to maintain | ||
| 31 | binary compatibility with static initializers. */ | ||
| 32 | int __kind; | ||
| 33 | #if __WORDSIZE == 64 | ||
| 34 | short __spins; | ||
| 35 | short __elision; | ||
| 36 | __pthread_list_t __list; | ||
| 37 | # define __PTHREAD_MUTEX_HAVE_PREV 1 | ||
| 38 | #else | ||
| 39 | unsigned int __nusers; | ||
| 40 | __extension__ union | ||
| 41 | { | ||
| 42 | struct | ||
| 43 | { | ||
| 44 | short __espins; | ||
| 45 | short __elision; | ||
| 46 | # define __spins __elision_data.__espins | ||
| 47 | # define __elision __elision_data.__elision | ||
| 48 | } __elision_data; | ||
| 49 | __pthread_slist_t __list; | ||
| 50 | }; | ||
| 51 | # define __PTHREAD_MUTEX_HAVE_PREV 0 | ||
| 52 | #endif | ||
| 53 | }; | ||
| 54 | |||
| 55 | #if __WORDSIZE == 64 | ||
| 56 | # define __PTHREAD_MUTEX_INITIALIZER(__kind) \ | ||
| 57 | 0, 0, 0, 0, __kind, 0, 0, { 0, 0 } | ||
| 58 | #else | ||
| 59 | # define __PTHREAD_MUTEX_INITIALIZER(__kind) \ | ||
| 60 | 0, 0, 0, __kind, 0, { { 0, 0 } } | ||
| 61 | #endif | ||
| 62 | |||
| 63 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64-linux-gnu/bits/struct_rwlock.h deleted-61| ... | @@ -1,61 +0,0 @@ | ||
| 1 | /* PowerPC internal rwlock struct definitions. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library; if not, see | ||
| 18 | <http://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifndef _RWLOCK_INTERNAL_H | ||
| 21 | #define _RWLOCK_INTERNAL_H | ||
| 22 | |||
| 23 | struct __pthread_rwlock_arch_t | ||
| 24 | { | ||
| 25 | unsigned int __readers; | ||
| 26 | unsigned int __writers; | ||
| 27 | unsigned int __wrphase_futex; | ||
| 28 | unsigned int __writers_futex; | ||
| 29 | unsigned int __pad3; | ||
| 30 | unsigned int __pad4; | ||
| 31 | #if __WORDSIZE == 64 | ||
| 32 | int __cur_writer; | ||
| 33 | int __shared; | ||
| 34 | unsigned char __rwelision; | ||
| 35 | unsigned char __pad1[7]; | ||
| 36 | unsigned long int __pad2; | ||
| 37 | /* FLAGS must stay at this position in the structure to maintain | ||
| 38 | binary compatibility. */ | ||
| 39 | unsigned int __flags; | ||
| 40 | # define __PTHREAD_RWLOCK_ELISION_EXTRA 0, {0, 0, 0, 0, 0, 0, 0 } | ||
| 41 | #else | ||
| 42 | unsigned char __rwelision; | ||
| 43 | unsigned char __pad2; | ||
| 44 | unsigned char __shared; | ||
| 45 | /* FLAGS must stay at this position in the structure to maintain | ||
| 46 | binary compatibility. */ | ||
| 47 | unsigned char __flags; | ||
| 48 | int __cur_writer; | ||
| 49 | # define __PTHREAD_RWLOCK_ELISION_EXTRA 0 | ||
| 50 | #endif | ||
| 51 | }; | ||
| 52 | |||
| 53 | #if __WORDSIZE == 64 | ||
| 54 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 55 | 0, 0, 0, 0, 0, 0, 0, 0, __PTHREAD_RWLOCK_ELISION_EXTRA, 0, __flags | ||
| 56 | #else | ||
| 57 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 58 | 0, 0, 0, 0, 0, 0, __PTHREAD_RWLOCK_ELISION_EXTRA, 0, 0, __flags, 0 | ||
| 59 | #endif | ||
| 60 | |||
| 61 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64-linux-gnu/bits/struct_stat.h deleted-231| ... | @@ -1,231 +0,0 @@ | ||
| 1 | /* Definition for struct stat. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #if !defined _SYS_STAT_H && !defined _FCNTL_H | ||
| 20 | # error "Never include <bits/struct_stat.h> directly; use <sys/stat.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef _BITS_STRUCT_STAT_H | ||
| 24 | #define _BITS_STRUCT_STAT_H	1 | ||
| 25 | |||
| 26 | #include <bits/wordsize.h> | ||
| 27 | |||
| 28 | #if __WORDSIZE == 32 | ||
| 29 | struct stat | ||
| 30 | { | ||
| 31 | # ifdef __USE_TIME64_REDIRECTS | ||
| 32 | # include <bits/struct_stat_time64_helper.h> | ||
| 33 | # else | ||
| 34 | __dev_t st_dev;			/* Device. */ | ||
| 35 | # ifndef __USE_FILE_OFFSET64 | ||
| 36 | unsigned short int __pad1; | ||
| 37 | __ino_t st_ino;			/* File serial number.	*/ | ||
| 38 | # else | ||
| 39 | __ino64_t st_ino;			/* File serial number.	*/ | ||
| 40 | # endif | ||
| 41 | __mode_t st_mode;			/* File mode. */ | ||
| 42 | __nlink_t st_nlink;			/* Link count. */ | ||
| 43 | __uid_t st_uid;			/* User ID of the file's owner.	*/ | ||
| 44 | __gid_t st_gid;			/* Group ID of the file's group.*/ | ||
| 45 | __dev_t st_rdev;			/* Device number, if device. */ | ||
| 46 | unsigned short int __pad2; | ||
| 47 | # ifndef __USE_FILE_OFFSET64 | ||
| 48 | __off_t st_size;			/* Size of file, in bytes. */ | ||
| 49 | # else | ||
| 50 | __off64_t st_size;			/* Size of file, in bytes. */ | ||
| 51 | # endif | ||
| 52 | __blksize_t st_blksize;		/* Optimal block size for I/O. */ | ||
| 53 | |||
| 54 | # ifndef __USE_FILE_OFFSET64 | ||
| 55 | __blkcnt_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 56 | # else | ||
| 57 | __blkcnt64_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 58 | # endif | ||
| 59 | # ifdef __USE_XOPEN2K8 | ||
| 60 | /* Nanosecond resolution timestamps are stored in a format | ||
| 61 | equivalent to 'struct timespec'. This is the type used | ||
| 62 | whenever possible but the Unix namespace rules do not allow the | ||
| 63 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 64 | Therefore we have to handle the use of this header in strictly | ||
| 65 | standard-compliant sources special. */ | ||
| 66 | struct timespec st_atim;		/* Time of last access. */ | ||
| 67 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 68 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 69 | # define st_atime st_atim.tv_sec	/* Backward compatibility. */ | ||
| 70 | # define st_mtime st_mtim.tv_sec | ||
| 71 | # define st_ctime st_ctim.tv_sec | ||
| 72 | # else | ||
| 73 | __time_t st_atime;			/* Time of last access. */ | ||
| 74 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 75 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 76 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 77 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 78 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 79 | # endif | ||
| 80 | unsigned long int __glibc_reserved4; | ||
| 81 | unsigned long int __glibc_reserved5; | ||
| 82 | # endif /* __USE_TIME64_REDIRECTS */ | ||
| 83 | }; | ||
| 84 | |||
| 85 | # ifdef __USE_LARGEFILE64 | ||
| 86 | struct stat64 | ||
| 87 | { | ||
| 88 | # ifdef __USE_TIME64_REDIRECTS | ||
| 89 | # include <bits/struct_stat_time64_helper.h> | ||
| 90 | # else | ||
| 91 | __dev_t st_dev;			/* Device. */ | ||
| 92 | __ino64_t st_ino;			/* File serial number.	*/ | ||
| 93 | __mode_t st_mode;			/* File mode. */ | ||
| 94 | __nlink_t st_nlink;			/* Link count. */ | ||
| 95 | __uid_t st_uid;			/* User ID of the file's owner.	*/ | ||
| 96 | __gid_t st_gid;			/* Group ID of the file's group.*/ | ||
| 97 | __dev_t st_rdev;			/* Device number, if device. */ | ||
| 98 | unsigned short int __pad2; | ||
| 99 | __off64_t st_size;			/* Size of file, in bytes. */ | ||
| 100 | __blksize_t st_blksize;		/* Optimal block size for I/O. */ | ||
| 101 | __blkcnt64_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 102 | # ifdef __USE_XOPEN2K8 | ||
| 103 | /* Nanosecond resolution timestamps are stored in a format | ||
| 104 | equivalent to 'struct timespec'. This is the type used | ||
| 105 | whenever possible but the Unix namespace rules do not allow the | ||
| 106 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 107 | Therefore we have to handle the use of this header in strictly | ||
| 108 | standard-compliant sources special. */ | ||
| 109 | struct timespec st_atim;		/* Time of last access. */ | ||
| 110 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 111 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 112 | # define st_atime st_atim.tv_sec	/* Backward compatibility. */ | ||
| 113 | # define st_mtime st_mtim.tv_sec | ||
| 114 | # define st_ctime st_ctim.tv_sec | ||
| 115 | # else | ||
| 116 | __time_t st_atime;			/* Time of last access. */ | ||
| 117 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 118 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 119 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 120 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 121 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 122 | # endif | ||
| 123 | unsigned long int __glibc_reserved4; | ||
| 124 | unsigned long int __glibc_reserved5; | ||
| 125 | # endif /* __USE_TIME64_REDIRECTS */ | ||
| 126 | }; | ||
| 127 | # endif /* __USE_LARGEFILE64 */ | ||
| 128 | |||
| 129 | #else /* __WORDSIZE == 32 */ | ||
| 130 | |||
| 131 | struct stat | ||
| 132 | { | ||
| 133 | __dev_t st_dev;			/* Device. */ | ||
| 134 | # ifndef __USE_FILE_OFFSET64 | ||
| 135 | __ino_t st_ino;			/* File serial number.	*/ | ||
| 136 | # else | ||
| 137 | __ino64_t st_ino;			/* File serial number.	*/ | ||
| 138 | # endif | ||
| 139 | __nlink_t st_nlink;			/* Link count. */ | ||
| 140 | __mode_t st_mode;			/* File mode. */ | ||
| 141 | __uid_t st_uid;			/* User ID of the file's owner.	*/ | ||
| 142 | __gid_t st_gid;			/* Group ID of the file's group.*/ | ||
| 143 | int __pad2; | ||
| 144 | __dev_t st_rdev;			/* Device number, if device. */ | ||
| 145 | # ifndef __USE_FILE_OFFSET64 | ||
| 146 | __off_t st_size;			/* Size of file, in bytes. */ | ||
| 147 | # else | ||
| 148 | __off64_t st_size;			/* Size of file, in bytes. */ | ||
| 149 | # endif | ||
| 150 | __blksize_t st_blksize;		/* Optimal block size for I/O. */ | ||
| 151 | |||
| 152 | # ifndef __USE_FILE_OFFSET64 | ||
| 153 | __blkcnt_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 154 | # else | ||
| 155 | __blkcnt64_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 156 | # endif | ||
| 157 | # ifdef __USE_XOPEN2K8 | ||
| 158 | /* Nanosecond resolution timestamps are stored in a format | ||
| 159 | equivalent to 'struct timespec'. This is the type used | ||
| 160 | whenever possible but the Unix namespace rules do not allow the | ||
| 161 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 162 | Therefore we have to handle the use of this header in strictly | ||
| 163 | standard-compliant sources special. */ | ||
| 164 | struct timespec st_atim;		/* Time of last access. */ | ||
| 165 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 166 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 167 | # define st_atime st_atim.tv_sec	/* Backward compatibility. */ | ||
| 168 | # define st_mtime st_mtim.tv_sec | ||
| 169 | # define st_ctime st_ctim.tv_sec | ||
| 170 | # else | ||
| 171 | __time_t st_atime;			/* Time of last access. */ | ||
| 172 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 173 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 174 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 175 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 176 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 177 | # endif | ||
| 178 | unsigned long int __glibc_reserved4; | ||
| 179 | unsigned long int __glibc_reserved5; | ||
| 180 | unsigned long int __glibc_reserved6; | ||
| 181 | }; | ||
| 182 | |||
| 183 | # ifdef __USE_LARGEFILE64 | ||
| 184 | struct stat64 | ||
| 185 | { | ||
| 186 | __dev_t st_dev;			/* Device. */ | ||
| 187 | __ino64_t st_ino;			/* File serial number.	*/ | ||
| 188 | __nlink_t st_nlink;			/* Link count. */ | ||
| 189 | __mode_t st_mode;			/* File mode. */ | ||
| 190 | __uid_t st_uid;			/* User ID of the file's owner.	*/ | ||
| 191 | __gid_t st_gid;			/* Group ID of the file's group.*/ | ||
| 192 | int __pad2; | ||
| 193 | __dev_t st_rdev;			/* Device number, if device. */ | ||
| 194 | __off64_t st_size;			/* Size of file, in bytes. */ | ||
| 195 | __blksize_t st_blksize;		/* Optimal block size for I/O. */ | ||
| 196 | __blkcnt64_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 197 | # ifdef __USE_XOPEN2K8 | ||
| 198 | /* Nanosecond resolution timestamps are stored in a format | ||
| 199 | equivalent to 'struct timespec'. This is the type used | ||
| 200 | whenever possible but the Unix namespace rules do not allow the | ||
| 201 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 202 | Therefore we have to handle the use of this header in strictly | ||
| 203 | standard-compliant sources special. */ | ||
| 204 | struct timespec st_atim;		/* Time of last access. */ | ||
| 205 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 206 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 207 | # define st_atime st_atim.tv_sec	/* Backward compatibility. */ | ||
| 208 | # define st_mtime st_mtim.tv_sec | ||
| 209 | # define st_ctime st_ctim.tv_sec | ||
| 210 | # else | ||
| 211 | __time_t st_atime;			/* Time of last access. */ | ||
| 212 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 213 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 214 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 215 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 216 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 217 | # endif | ||
| 218 | unsigned long int __glibc_reserved4; | ||
| 219 | unsigned long int __glibc_reserved5; | ||
| 220 | unsigned long int __glibc_reserved6; | ||
| 221 | }; | ||
| 222 | # endif /* __USE_LARGEFILE64 */ | ||
| 223 | #endif | ||
| 224 | |||
| 225 | /* Tell code we have these members. */ | ||
| 226 | #define	_STATBUF_ST_BLKSIZE | ||
| 227 | #define _STATBUF_ST_RDEV | ||
| 228 | /* Nanosecond resolution time values are supported. */ | ||
| 229 | #define _STATBUF_ST_NSEC | ||
| 230 | |||
| 231 | #endif /* _BITS_STRUCT_STAT_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64-linux-gnu/bits/termios-baud.h deleted-45| ... | @@ -1,45 +0,0 @@ | ||
| 1 | /* termios baud rate selection definitions. Linux/powerpc version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-baud.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifdef __USE_MISC | ||
| 24 | # define CBAUD	0000377 | ||
| 25 | # define CBAUDEX 0000020 | ||
| 26 | # define CMSPAR 010000000000		/* mark or space (stick) parity */ | ||
| 27 | # define CRTSCTS 020000000000		/* flow control */ | ||
| 28 | #endif | ||
| 29 | |||
| 30 | #define B57600 00020 | ||
| 31 | #define B115200 00021 | ||
| 32 | #define B230400 00022 | ||
| 33 | #define B460800 00023 | ||
| 34 | #define B500000 00024 | ||
| 35 | #define B576000 00025 | ||
| 36 | #define B921600 00026 | ||
| 37 | #define B1000000 00027 | ||
| 38 | #define B1152000 00030 | ||
| 39 | #define B1500000 00031 | ||
| 40 | #define B2000000 00032 | ||
| 41 | #define B2500000 00033 | ||
| 42 | #define B3000000 00034 | ||
| 43 | #define B3500000 00035 | ||
| 44 | #define B4000000 00036 | ||
| 45 | #define __MAX_BAUD B4000000 | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64-linux-gnu/bits/termios-c_cc.h deleted-41| ... | @@ -1,41 +0,0 @@ | ||
| 1 | /* termios c_cc symbolic constant definitions. Linux/powerpc version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-c_cc.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* c_cc characters */ | ||
| 24 | #define VINTR	0 | ||
| 25 | #define VQUIT	1 | ||
| 26 | #define VERASE	2 | ||
| 27 | #define VKILL	3 | ||
| 28 | #define VEOF	4 | ||
| 29 | #define VMIN	5 | ||
| 30 | #define VEOL	6 | ||
| 31 | #define VTIME	7 | ||
| 32 | #define VEOL2	8 | ||
| 33 | #define VSWTC	9 | ||
| 34 | |||
| 35 | #define VWERASE	10 | ||
| 36 | #define VREPRINT	11 | ||
| 37 | #define VSUSP		12 | ||
| 38 | #define VSTART		13 | ||
| 39 | #define VSTOP		14 | ||
| 40 | #define VLNEXT		15 | ||
| 41 | #define VDISCARD	16 | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64-linux-gnu/bits/termios-c_cflag.h deleted-39| ... | @@ -1,39 +0,0 @@ | ||
| 1 | /* termios control mode definitions. Linux/powerpc version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-c_cflag.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #define CSIZE	00001400 | ||
| 24 | #define CS5	00000000 | ||
| 25 | #define CS6	00000400 | ||
| 26 | #define CS7	00001000 | ||
| 27 | #define CS8	00001400 | ||
| 28 | |||
| 29 | #define CSTOPB	00002000 | ||
| 30 | #define CREAD	00004000 | ||
| 31 | #define PARENB	00010000 | ||
| 32 | #define PARODD	00020000 | ||
| 33 | #define HUPCL	00040000 | ||
| 34 | |||
| 35 | #define CLOCAL	00100000 | ||
| 36 | |||
| 37 | #ifdef __USE_MISC | ||
| 38 | # define ADDRB 04000000000 | ||
| 39 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64-linux-gnu/bits/termios-c_iflag.h deleted-38| ... | @@ -1,38 +0,0 @@ | ||
| 1 | /* termios input mode definitions. Linux/powerpc version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-c_iflags.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* c_iflag bits */ | ||
| 24 | #define IGNBRK	0000001 | ||
| 25 | #define BRKINT	0000002 | ||
| 26 | #define IGNPAR	0000004 | ||
| 27 | #define PARMRK	0000010 | ||
| 28 | #define INPCK	0000020 | ||
| 29 | #define ISTRIP	0000040 | ||
| 30 | #define INLCR	0000100 | ||
| 31 | #define IGNCR	0000200 | ||
| 32 | #define ICRNL	0000400 | ||
| 33 | #define IXON	0001000 | ||
| 34 | #define IXOFF	0002000 | ||
| 35 | #define IXANY	0004000 | ||
| 36 | #define IUCLC	0010000 | ||
| 37 | #define IMAXBEL	0020000 | ||
| 38 | #define IUTF8	0040000 | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64-linux-gnu/bits/termios-c_lflag.h deleted-45| ... | @@ -1,45 +0,0 @@ | ||
| 1 | /* termios local mode definitions. Linux/powerpc version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-c_lflag.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* c_lflag bits */ | ||
| 24 | #define ISIG	0x00000080 | ||
| 25 | #define ICANON	0x00000100 | ||
| 26 | #if defined __USE_MISC || (defined __USE_XOPEN && !defined __USE_XOPEN2K) | ||
| 27 | # define XCASE	0x00004000 | ||
| 28 | #endif | ||
| 29 | #define ECHO	0x00000008 | ||
| 30 | #define ECHOE	0x00000002 | ||
| 31 | #define ECHOK	0x00000004 | ||
| 32 | #define ECHONL	0x00000010 | ||
| 33 | #define NOFLSH	0x80000000 | ||
| 34 | #define TOSTOP	0x00400000 | ||
| 35 | #ifdef __USE_MISC | ||
| 36 | # define ECHOCTL	0x00000040 | ||
| 37 | # define ECHOPRT	0x00000020 | ||
| 38 | # define ECHOKE	0x00000001 | ||
| 39 | # define FLUSHO	0x00800000 | ||
| 40 | # define PENDIN	0x20000000 | ||
| 41 | #endif | ||
| 42 | #define IEXTEN	0x00000400 | ||
| 43 | #ifdef __USE_MISC | ||
| 44 | # define EXTPROC 0x10000000 | ||
| 45 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64-linux-gnu/bits/termios-c_oflag.h deleted-65| ... | @@ -1,65 +0,0 @@ | ||
| 1 | /* termios output mode definitions. Linux/powerpc version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-c_oflag.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* c_oflag bits */ | ||
| 24 | #define OPOST	0000001 | ||
| 25 | #define ONLCR	0000002 | ||
| 26 | #define OLCUC	0000004 | ||
| 27 | |||
| 28 | #define OCRNL	0000010 | ||
| 29 | #define ONOCR	0000020 | ||
| 30 | #define ONLRET	0000040 | ||
| 31 | |||
| 32 | #define OFILL	00000100 | ||
| 33 | #define OFDEL	00000200 | ||
| 34 | #if defined __USE_MISC || defined __USE_XOPEN | ||
| 35 | # define NLDLY	00001400 | ||
| 36 | # define NL0	00000000 | ||
| 37 | # define NL1	00000400 | ||
| 38 | # if defined __USE_MISC | ||
| 39 | # define NL2	00001000 | ||
| 40 | # define NL3	00001400 | ||
| 41 | # endif | ||
| 42 | # define TABDLY	00006000 | ||
| 43 | # define TAB0	00000000 | ||
| 44 | # define TAB1	00002000 | ||
| 45 | # define TAB2	00004000 | ||
| 46 | # define TAB3	00006000 | ||
| 47 | # define CRDLY	00030000 | ||
| 48 | # define CR0	00000000 | ||
| 49 | # define CR1	00010000 | ||
| 50 | # define CR2	00020000 | ||
| 51 | # define CR3	00030000 | ||
| 52 | # define FFDLY	00040000 | ||
| 53 | # define FF0	00000000 | ||
| 54 | # define FF1	00040000 | ||
| 55 | # define BSDLY	00100000 | ||
| 56 | # define BS0	00000000 | ||
| 57 | # define BS1	00100000 | ||
| 58 | #endif | ||
| 59 | #define VTDLY	00200000 | ||
| 60 | #define VT0	00000000 | ||
| 61 | #define VT1	00200000 | ||
| 62 | |||
| 63 | #ifdef __USE_MISC | ||
| 64 | # define XTABS	00006000 | ||
| 65 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64-linux-gnu/bits/termios-misc.h deleted-72| ... | @@ -1,72 +0,0 @@ | ||
| 1 | /* termios baud platform specific definitions. Linux/powerpc version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-misc.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifdef __USE_MISC | ||
| 24 | |||
| 25 | struct sgttyb { | ||
| 26 | 	char	sg_ispeed; | ||
| 27 | 	char	sg_ospeed; | ||
| 28 | 	char	sg_erase; | ||
| 29 | 	char	sg_kill; | ||
| 30 | 	short	sg_flags; | ||
| 31 | }; | ||
| 32 | |||
| 33 | struct tchars { | ||
| 34 | 	char	t_intrc; | ||
| 35 | 	char	t_quitc; | ||
| 36 | 	char	t_startc; | ||
| 37 | 	char	t_stopc; | ||
| 38 | 	char	t_eofc; | ||
| 39 | 	char	t_brkc; | ||
| 40 | }; | ||
| 41 | |||
| 42 | struct ltchars { | ||
| 43 | 	char	t_suspc; | ||
| 44 | 	char	t_dsuspc; | ||
| 45 | 	char	t_rprntc; | ||
| 46 | 	char	t_flushc; | ||
| 47 | 	char	t_werasc; | ||
| 48 | 	char	t_lnextc; | ||
| 49 | }; | ||
| 50 | |||
| 51 | /* Used for packet mode */ | ||
| 52 | #define TIOCPKT_DATA		 0 | ||
| 53 | #define TIOCPKT_FLUSHREAD	 1 | ||
| 54 | #define TIOCPKT_FLUSHWRITE	 2 | ||
| 55 | #define TIOCPKT_STOP		 4 | ||
| 56 | #define TIOCPKT_START		 8 | ||
| 57 | #define TIOCPKT_NOSTOP		16 | ||
| 58 | #define TIOCPKT_DOSTOP		32 | ||
| 59 | |||
| 60 | /* c_cc characters */ | ||
| 61 | #define _VINTR	0 | ||
| 62 | #define _VQUIT	1 | ||
| 63 | #define _VERASE	2 | ||
| 64 | #define _VKILL	3 | ||
| 65 | #define _VEOF	4 | ||
| 66 | #define _VMIN	5 | ||
| 67 | #define _VEOL	6 | ||
| 68 | #define _VTIME	7 | ||
| 69 | #define _VEOL2	8 | ||
| 70 | #define _VSWTC	9 | ||
| 71 | |||
| 72 | #endif /* __USE_MISC */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64-linux-gnu/bits/timesize.h deleted-22| ... | @@ -1,22 +0,0 @@ | ||
| 1 | /* Bit size of the time_t type at glibc build time, Linux/PowerPC. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #include <bits/wordsize.h> | ||
| 20 | |||
| 21 | /* Size in bits of the 'time_t' type of the default ABI. */ | ||
| 22 | #define __TIMESIZE	__WORDSIZE | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64-linux-gnu/bits/types/struct_msqid_ds.h deleted-53| ... | @@ -1,53 +0,0 @@ | ||
| 1 | /* Linux/PowerPC implementation of the SysV message struct msqid_ds. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_MSG_H | ||
| 20 | # error "Never use <bits/msq.h> directly; include <sys/msg.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <bits/types/time_t.h> | ||
| 24 | |||
| 25 | /* Structure of record for one message inside the kernel. | ||
| 26 | The type `struct msg' is opaque. */ | ||
| 27 | struct msqid_ds | ||
| 28 | { | ||
| 29 | #ifdef __USE_TIME64_REDIRECTS | ||
| 30 | # include <bits/types/struct_msqid64_ds_helper.h> | ||
| 31 | #else | ||
| 32 | struct ipc_perm msg_perm;	/* structure describing operation permission */ | ||
| 33 | # if __TIMESIZE == 32 | ||
| 34 | unsigned long int __msg_stime_high; | ||
| 35 | __time_t msg_stime;		/* time of last msgsnd command */ | ||
| 36 | unsigned long int __msg_rtime_high; | ||
| 37 | __time_t msg_rtime;		/* time of last msgsnd command */ | ||
| 38 | unsigned long int __msg_ctime_high; | ||
| 39 | __time_t msg_ctime;		/* time of last change */ | ||
| 40 | # else | ||
| 41 | __time_t msg_stime;		/* time of last msgsnd command */ | ||
| 42 | __time_t msg_rtime;		/* time of last msgsnd command */ | ||
| 43 | __time_t msg_ctime;		/* time of last change */ | ||
| 44 | # endif | ||
| 45 | __syscall_ulong_t __msg_cbytes; /* current number of bytes on queue */ | ||
| 46 | msgqnum_t msg_qnum;		/* number of messages currently on queue */ | ||
| 47 | msglen_t msg_qbytes;		/* max number of bytes allowed on queue */ | ||
| 48 | __pid_t msg_lspid;		/* pid of last msgsnd() */ | ||
| 49 | __pid_t msg_lrpid;		/* pid of last msgrcv() */ | ||
| 50 | __syscall_ulong_t __glibc_reserved4; | ||
| 51 | __syscall_ulong_t __glibc_reserved5; | ||
| 52 | #endif | ||
| 53 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64-linux-gnu/bits/types/struct_semid_ds.h deleted-43| ... | @@ -1,43 +0,0 @@ | ||
| 1 | /* PowerPC implementation of the semaphore struct semid_ds. | ||
| 2 | Copyright (C) 1995-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SEM_H | ||
| 20 | # error "Never include <bits/types/struct_semid_ds.h> directly; use <sys/sem.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Data structure describing a set of semaphores. */ | ||
| 24 | struct semid_ds | ||
| 25 | { | ||
| 26 | #ifdef __USE_TIME64_REDIRECTS | ||
| 27 | # include <bits/types/struct_semid64_ds_helper.h> | ||
| 28 | #else | ||
| 29 | struct ipc_perm sem_perm; /* operation permission struct */ | ||
| 30 | # if __TIMESIZE == 32 | ||
| 31 | __syscall_ulong_t __sem_otime_high; | ||
| 32 | __time_t sem_otime; /* last semop() time */ | ||
| 33 | __syscall_ulong_t __sem_ctime_high; | ||
| 34 | __time_t sem_ctime; /* last time changed by semctl() */ | ||
| 35 | # else | ||
| 36 | __time_t sem_otime; /* last semop() time */ | ||
| 37 | __time_t sem_ctime; /* last time changed by semctl() */ | ||
| 38 | # endif | ||
| 39 | __syscall_ulong_t sem_nsems; /* number of semaphores in set */ | ||
| 40 | __syscall_ulong_t __glibc_reserved3; | ||
| 41 | __syscall_ulong_t __glibc_reserved4; | ||
| 42 | #endif | ||
| 43 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64-linux-gnu/bits/types/struct_shmid_ds.h deleted-50| ... | @@ -1,50 +0,0 @@ | ||
| 1 | /* Linux/PowerPC implementation of the shared memory struct shmid_ds. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SHM_H | ||
| 20 | # error "Never include <bits/types/struct_shmid_ds.h> directly; use <sys/shm.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Data structure describing a shared memory segment. */ | ||
| 24 | struct shmid_ds | ||
| 25 | { | ||
| 26 | #ifdef __USE_TIME64_REDIRECTS | ||
| 27 | # include <bits/types/struct_shmid64_ds_helper.h> | ||
| 28 | #else | ||
| 29 | struct ipc_perm shm_perm;		/* operation permission struct */ | ||
| 30 | # if __TIMESIZE == 32 | ||
| 31 | unsigned long int __shm_atime_high; | ||
| 32 | __time_t shm_atime;			/* time of last shmat() */ | ||
| 33 | unsigned long int __shm_dtime_high; | ||
| 34 | __time_t shm_dtime;			/* time of last shmdt() */ | ||
| 35 | unsigned long int __shm_ctime_high; | ||
| 36 | __time_t shm_ctime;			/* time of last change by shmctl() */ | ||
| 37 | unsigned long int __glibc_reserved4; | ||
| 38 | # else | ||
| 39 | __time_t shm_atime;			/* time of last shmat() */ | ||
| 40 | __time_t shm_dtime;			/* time of last shmdt() */ | ||
| 41 | __time_t shm_ctime;			/* time of last change by shmctl() */ | ||
| 42 | # endif | ||
| 43 | size_t shm_segsz;			/* size of segment in bytes */ | ||
| 44 | __pid_t shm_cpid;			/* pid of creator */ | ||
| 45 | __pid_t shm_lpid;			/* pid of last shmop */ | ||
| 46 | shmatt_t shm_nattch;		/* number of current attaches */ | ||
| 47 | __syscall_ulong_t __glibc_reserved5; | ||
| 48 | __syscall_ulong_t __glibc_reserved6; | ||
| 49 | #endif | ||
| 50 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64-linux-gnu/bits/typesizes.h deleted-95| ... | @@ -1,95 +0,0 @@ | ||
| 1 | /* bits/typesizes.h -- underlying types for *_t. PowerPC version. | ||
| 2 | Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_TYPES_H | ||
| 20 | # error "Never include <bits/typesizes.h> directly; use <sys/types.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef	_BITS_TYPESIZES_H | ||
| 24 | #define	_BITS_TYPESIZES_H	1 | ||
| 25 | |||
| 26 | /* See <bits/types.h> for the meaning of these macros. This file exists so | ||
| 27 | that <bits/types.h> need not vary across different GNU platforms. */ | ||
| 28 | |||
| 29 | #define __DEV_T_TYPE		__UQUAD_TYPE | ||
| 30 | #define __UID_T_TYPE		__U32_TYPE | ||
| 31 | #define __GID_T_TYPE		__U32_TYPE | ||
| 32 | #define __INO_T_TYPE		__ULONGWORD_TYPE | ||
| 33 | #define __INO64_T_TYPE		__UQUAD_TYPE | ||
| 34 | #define __MODE_T_TYPE		__U32_TYPE | ||
| 35 | #define __NLINK_T_TYPE		__UWORD_TYPE | ||
| 36 | #define __OFF_T_TYPE		__SLONGWORD_TYPE | ||
| 37 | #define __OFF64_T_TYPE		__SQUAD_TYPE | ||
| 38 | #define __PID_T_TYPE		__S32_TYPE | ||
| 39 | #define __RLIM_T_TYPE		__ULONGWORD_TYPE | ||
| 40 | #define __RLIM64_T_TYPE		__UQUAD_TYPE | ||
| 41 | #define	__BLKCNT_T_TYPE		__SLONGWORD_TYPE | ||
| 42 | #define	__BLKCNT64_T_TYPE	__SQUAD_TYPE | ||
| 43 | #define	__FSBLKCNT_T_TYPE	__ULONGWORD_TYPE | ||
| 44 | #define	__FSBLKCNT64_T_TYPE	__UQUAD_TYPE | ||
| 45 | #define	__FSFILCNT_T_TYPE	__ULONGWORD_TYPE | ||
| 46 | #define	__FSFILCNT64_T_TYPE	__UQUAD_TYPE | ||
| 47 | #define	__FSWORD_T_TYPE		__SWORD_TYPE | ||
| 48 | #define	__ID_T_TYPE		__U32_TYPE | ||
| 49 | #define __CLOCK_T_TYPE		__SLONGWORD_TYPE | ||
| 50 | #define __TIME_T_TYPE		__SLONGWORD_TYPE | ||
| 51 | #define __USECONDS_T_TYPE	__U32_TYPE | ||
| 52 | #define __SUSECONDS_T_TYPE	__SLONGWORD_TYPE | ||
| 53 | #define __SUSECONDS64_T_TYPE	__SQUAD_TYPE | ||
| 54 | #define __DADDR_T_TYPE		__S32_TYPE | ||
| 55 | #define __KEY_T_TYPE		__S32_TYPE | ||
| 56 | #define __CLOCKID_T_TYPE	__S32_TYPE | ||
| 57 | #define __TIMER_T_TYPE		void * | ||
| 58 | #define __BLKSIZE_T_TYPE	__SLONGWORD_TYPE | ||
| 59 | #define __FSID_T_TYPE		struct { int __val[2]; } | ||
| 60 | #define __SSIZE_T_TYPE		__SWORD_TYPE | ||
| 61 | #define __SYSCALL_SLONG_TYPE	__SLONGWORD_TYPE | ||
| 62 | #define __SYSCALL_ULONG_TYPE	__ULONGWORD_TYPE | ||
| 63 | #define __CPU_MASK_TYPE 	__ULONGWORD_TYPE | ||
| 64 | |||
| 65 | #ifdef __LP64__ | ||
| 66 | /* Tell the libc code that off_t and off64_t are actually the same type | ||
| 67 | for all ABI purposes, even if possibly expressed as different base types | ||
| 68 | for C type-checking purposes. */ | ||
| 69 | # define __OFF_T_MATCHES_OFF64_T	1 | ||
| 70 | |||
| 71 | /* Same for ino_t and ino64_t. */ | ||
| 72 | # define __INO_T_MATCHES_INO64_T	1 | ||
| 73 | |||
| 74 | /* And for rlim_t and rlim64_t. */ | ||
| 75 | # define __RLIM_T_MATCHES_RLIM64_T	1 | ||
| 76 | |||
| 77 | /* And for fsblkcnt_t, fsblkcnt64_t, fsfilcnt_t and fsfilcnt64_t. */ | ||
| 78 | # define __STATFS_MATCHES_STATFS64 1 | ||
| 79 | |||
| 80 | /* And for getitimer, setitimer and rusage */ | ||
| 81 | # define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 1 | ||
| 82 | #else | ||
| 83 | # define __RLIM_T_MATCHES_RLIM64_T	0 | ||
| 84 | |||
| 85 | # define __STATFS_MATCHES_STATFS64 0 | ||
| 86 | |||
| 87 | /* And for getitimer, setitimer and rusage */ | ||
| 88 | # define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 0 | ||
| 89 | #endif | ||
| 90 | |||
| 91 | /* Number of descriptors that can fit in an `fd_set'. */ | ||
| 92 | #define	__FD_SETSIZE		1024 | ||
| 93 | |||
| 94 | |||
| 95 | #endif /* bits/typesizes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64-linux-gnu/bits/wordsize.h deleted-10| ... | @@ -1,10 +0,0 @@ | ||
| 1 | /* Determine the wordsize from the preprocessor defines. */ | ||
| 2 | |||
| 3 | #if defined __powerpc64__ | ||
| 4 | # define __WORDSIZE	64 | ||
| 5 | #else | ||
| 6 | # define __WORDSIZE	32 | ||
| 7 | # define __WORDSIZE32_SIZE_ULONG	0 | ||
| 8 | # define __WORDSIZE32_PTRDIFF_LONG	0 | ||
| 9 | #endif | ||
| 10 | #define __WORDSIZE_TIME64_COMPAT32	1 | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64-linux-gnu/fpu_control.h deleted-114| ... | @@ -1,114 +0,0 @@ | ||
| 1 | /* FPU control word definitions. PowerPC version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _FPU_CONTROL_H | ||
| 20 | #define _FPU_CONTROL_H | ||
| 21 | |||
| 22 | #if defined __SPE__ || (defined __NO_FPRS__ && !defined _SOFT_FLOAT) | ||
| 23 | # error "SPE/e500 is no longer supported" | ||
| 24 | #endif | ||
| 25 | |||
| 26 | #ifdef _SOFT_FLOAT | ||
| 27 | |||
| 28 | # define _FPU_RESERVED 0xffffffff | ||
| 29 | # define _FPU_DEFAULT 0x00000000 /* Default value. */ | ||
| 30 | typedef unsigned int fpu_control_t; | ||
| 31 | # define _FPU_GETCW(cw) (cw) = 0 | ||
| 32 | # define _FPU_SETCW(cw) (void) (cw) | ||
| 33 | extern fpu_control_t __fpu_control; | ||
| 34 | |||
| 35 | #else /* PowerPC 6xx floating-point. */ | ||
| 36 | |||
| 37 | /* rounding control */ | ||
| 38 | # define _FPU_RC_NEAREST 0x00 /* RECOMMENDED */ | ||
| 39 | # define _FPU_RC_DOWN 0x03 | ||
| 40 | # define _FPU_RC_UP 0x02 | ||
| 41 | # define _FPU_RC_ZERO 0x01 | ||
| 42 | |||
| 43 | # define _FPU_MASK_RC (_FPU_RC_NEAREST|_FPU_RC_DOWN|_FPU_RC_UP|_FPU_RC_ZERO) | ||
| 44 | |||
| 45 | # define _FPU_MASK_NI 0x04 /* non-ieee mode */ | ||
| 46 | |||
| 47 | /* masking of interrupts */ | ||
| 48 | # define _FPU_MASK_ZM 0x10 /* zero divide */ | ||
| 49 | # define _FPU_MASK_OM 0x40 /* overflow */ | ||
| 50 | # define _FPU_MASK_UM 0x20 /* underflow */ | ||
| 51 | # define _FPU_MASK_XM 0x08 /* inexact */ | ||
| 52 | # define _FPU_MASK_IM 0x80 /* invalid operation */ | ||
| 53 | |||
| 54 | # define _FPU_RESERVED 0xffffff00 /* These bits are reserved are not changed. */ | ||
| 55 | |||
| 56 | /* The fdlibm code requires no interrupts for exceptions. */ | ||
| 57 | # define _FPU_DEFAULT 0x00000000 /* Default value. */ | ||
| 58 | |||
| 59 | /* IEEE: same as above, but (some) exceptions; | ||
| 60 | we leave the 'inexact' exception off. | ||
| 61 | */ | ||
| 62 | # define _FPU_IEEE 0x000000f0 | ||
| 63 | |||
| 64 | /* Type of the control word. */ | ||
| 65 | typedef unsigned int fpu_control_t; | ||
| 66 | |||
| 67 | /* Macros for accessing the hardware control word. */ | ||
| 68 | # define _FPU_GETCW(cw)						\ | ||
| 69 | ({union { double __d; unsigned long long __ll; } __u;		\ | ||
| 70 | __asm__ __volatile__("mffs %0" : "=f" (__u.__d));		\ | ||
| 71 | (cw) = (fpu_control_t) __u.__ll;				\ | ||
| 72 | (fpu_control_t) __u.__ll;					\ | ||
| 73 | }) | ||
| 74 | |||
| 75 | # define _FPU_GET_RC_ISA300()						\ | ||
| 76 | ({union { double __d; unsigned long long __ll; } __u;			\ | ||
| 77 | __asm__ __volatile__(						\ | ||
| 78 | ".machine push; .machine \"power9\"; mffsl %0; .machine pop" 	\ | ||
| 79 | : "=f" (__u.__d));						\ | ||
| 80 | (fpu_control_t) (__u.__ll & _FPU_MASK_RC);				\ | ||
| 81 | }) | ||
| 82 | |||
| 83 | # ifdef _ARCH_PWR9 | ||
| 84 | # define _FPU_GET_RC() _FPU_GET_RC_ISA300() | ||
| 85 | # elif defined __BUILTIN_CPU_SUPPORTS__ | ||
| 86 | # define _FPU_GET_RC()							\ | ||
| 87 | ({fpu_control_t __rc;							\ | ||
| 88 | __rc = __glibc_likely (__builtin_cpu_supports ("arch_3_00"))	\ | ||
| 89 | ? _FPU_GET_RC_ISA300 ()						\ | ||
| 90 | : _FPU_GETCW (__rc) & _FPU_MASK_RC;				\ | ||
| 91 | __rc;								\ | ||
| 92 | }) | ||
| 93 | # else | ||
| 94 | # define _FPU_GET_RC()						\ | ||
| 95 | ({fpu_control_t __rc = _FPU_GETCW (__rc) & _FPU_MASK_RC;	\ | ||
| 96 | __rc;							\ | ||
| 97 | }) | ||
| 98 | # endif | ||
| 99 | |||
| 100 | # define _FPU_SETCW(cw)						\ | ||
| 101 | { union { double __d; unsigned long long __ll; } __u;		\ | ||
| 102 | register double __fr;					\ | ||
| 103 | __u.__ll = 0xfff80000LL << 32; /* This is a QNaN. */	\ | ||
| 104 | __u.__ll |= (cw) & 0xffffffffLL;				\ | ||
| 105 | __fr = __u.__d;						\ | ||
| 106 | __asm__ __volatile__("mtfsf 255,%0" : : "f" (__fr));	\ | ||
| 107 | } | ||
| 108 | |||
| 109 | /* Default control word set at startup. */ | ||
| 110 | extern fpu_control_t __fpu_control; | ||
| 111 | |||
| 112 | #endif /* PowerPC 6xx floating-point. */ | ||
| 113 | |||
| 114 | #endif /* _FPU_CONTROL_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64-linux-gnu/gnu/lib-names-64-v1.h deleted-27| ... | @@ -1,27 +0,0 @@ | ||
| 1 | /* This file is automatically generated. */ | ||
| 2 | #ifndef __GNU_LIB_NAMES_H | ||
| 3 | # error "Never use <gnu/lib-names-64-v1.h> directly; include <gnu/lib-names.h> instead." | ||
| 4 | #endif | ||
| 5 | |||
| 6 | #define LD64_SO "ld64.so.1" | ||
| 7 | #define LD_SO "ld64.so.1" | ||
| 8 | #define LIBANL_SO "libanl.so.1" | ||
| 9 | #define LIBBROKENLOCALE_SO "libBrokenLocale.so.1" | ||
| 10 | #define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0" | ||
| 11 | #define LIBC_SO "libc.so.6" | ||
| 12 | #define LIBDL_SO "libdl.so.2" | ||
| 13 | #define LIBGCC_S_SO "libgcc_s.so.1" | ||
| 14 | #define LIBMVEC_SO "libmvec.so.1" | ||
| 15 | #define LIBM_SO "libm.so.6" | ||
| 16 | #define LIBNSL_SO "libnsl.so.1" | ||
| 17 | #define LIBNSS_COMPAT_SO "libnss_compat.so.2" | ||
| 18 | #define LIBNSS_DB_SO "libnss_db.so.2" | ||
| 19 | #define LIBNSS_DNS_SO "libnss_dns.so.2" | ||
| 20 | #define LIBNSS_FILES_SO "libnss_files.so.2" | ||
| 21 | #define LIBNSS_HESIOD_SO "libnss_hesiod.so.2" | ||
| 22 | #define LIBNSS_LDAP_SO "libnss_ldap.so.2" | ||
| 23 | #define LIBPTHREAD_SO "libpthread.so.0" | ||
| 24 | #define LIBRESOLV_SO "libresolv.so.2" | ||
| 25 | #define LIBRT_SO "librt.so.1" | ||
| 26 | #define LIBTHREAD_DB_SO "libthread_db.so.1" | ||
| 27 | #define LIBUTIL_SO "libutil.so.1" | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64-linux-gnu/gnu/lib-names.h deleted-19| ... | @@ -1,19 +0,0 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | It defines macros to allow user program to find the shared | ||
| 3 | library files which come as part of GNU libc. */ | ||
| 4 | #ifndef __GNU_LIB_NAMES_H | ||
| 5 | #define __GNU_LIB_NAMES_H	1 | ||
| 6 | |||
| 7 | #include <bits/wordsize.h> | ||
| 8 | |||
| 9 | #if __WORDSIZE == 32 | ||
| 10 | # include <gnu/lib-names-32.h> | ||
| 11 | #endif | ||
| 12 | #if __WORDSIZE == 64 && _CALL_ELF != 2 | ||
| 13 | # include <gnu/lib-names-64-v1.h> | ||
| 14 | #endif | ||
| 15 | #if __WORDSIZE == 64 && _CALL_ELF == 2 | ||
| 16 | # include <gnu/lib-names-64-v2.h> | ||
| 17 | #endif | ||
| 18 | |||
| 19 | #endif	/* gnu/lib-names.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64-linux-gnu/gnu/stubs-64-v1.h deleted-16| ... | @@ -1,16 +0,0 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | It defines a symbol `__stub_FUNCTION' for each function | ||
| 3 | in the C library which is a stub, meaning it will fail | ||
| 4 | every time called, usually setting errno to ENOSYS. */ | ||
| 5 | |||
| 6 | #ifdef _LIBC | ||
| 7 | #error Applications may not define the macro _LIBC | ||
| 8 | #endif | ||
| 9 | |||
| 10 | #define __stub_chflags | ||
| 11 | #define __stub_fchflags | ||
| 12 | #define __stub_gtty | ||
| 13 | #define __stub_revoke | ||
| 14 | #define __stub_setlogin | ||
| 15 | #define __stub_sigreturn | ||
| 16 | #define __stub_stty | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64-linux-gnu/gnu/stubs.h deleted-15| ... | @@ -1,15 +0,0 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | This file selects the right generated file of `__stub_FUNCTION' macros | ||
| 3 | based on the architecture being compiled for. */ | ||
| 4 | |||
| 5 | #include <bits/wordsize.h> | ||
| 6 | |||
| 7 | #if __WORDSIZE == 32 | ||
| 8 | # include <gnu/stubs-32.h> | ||
| 9 | #endif | ||
| 10 | #if __WORDSIZE == 64 && _CALL_ELF != 2 | ||
| 11 | # include <gnu/stubs-64-v1.h> | ||
| 12 | #endif | ||
| 13 | #if __WORDSIZE == 64 && _CALL_ELF == 2 | ||
| 14 | # include <gnu/stubs-64-v2.h> | ||
| 15 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64-linux-gnu/ieee754.h deleted-197| ... | @@ -1,197 +0,0 @@ | ||
| 1 | /* Copyright (C) 1992-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _IEEE754_H | ||
| 19 | #define _IEEE754_H 1 | ||
| 20 | |||
| 21 | #include <features.h> | ||
| 22 | |||
| 23 | #include <bits/endian.h> | ||
| 24 | #include <bits/floatn.h> | ||
| 25 | |||
| 26 | __BEGIN_DECLS | ||
| 27 | |||
| 28 | union ieee754_float | ||
| 29 | { | ||
| 30 | float f; | ||
| 31 | |||
| 32 | /* This is the IEEE 754 single-precision format. */ | ||
| 33 | struct | ||
| 34 | { | ||
| 35 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 36 | 	unsigned int negative:1; | ||
| 37 | 	unsigned int exponent:8; | ||
| 38 | 	unsigned int mantissa:23; | ||
| 39 | #endif				/* Big endian. */ | ||
| 40 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 41 | 	unsigned int mantissa:23; | ||
| 42 | 	unsigned int exponent:8; | ||
| 43 | 	unsigned int negative:1; | ||
| 44 | #endif				/* Little endian. */ | ||
| 45 | } ieee; | ||
| 46 | |||
| 47 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 48 | struct | ||
| 49 | { | ||
| 50 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 51 | 	unsigned int negative:1; | ||
| 52 | 	unsigned int exponent:8; | ||
| 53 | 	unsigned int quiet_nan:1; | ||
| 54 | 	unsigned int mantissa:22; | ||
| 55 | #endif				/* Big endian. */ | ||
| 56 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 57 | 	unsigned int mantissa:22; | ||
| 58 | 	unsigned int quiet_nan:1; | ||
| 59 | 	unsigned int exponent:8; | ||
| 60 | 	unsigned int negative:1; | ||
| 61 | #endif				/* Little endian. */ | ||
| 62 | } ieee_nan; | ||
| 63 | }; | ||
| 64 | |||
| 65 | #define IEEE754_FLOAT_BIAS	0x7f /* Added to exponent. */ | ||
| 66 | |||
| 67 | |||
| 68 | union ieee754_double | ||
| 69 | { | ||
| 70 | double d; | ||
| 71 | |||
| 72 | /* This is the IEEE 754 double-precision format. */ | ||
| 73 | struct | ||
| 74 | { | ||
| 75 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 76 | 	unsigned int negative:1; | ||
| 77 | 	unsigned int exponent:11; | ||
| 78 | 	/* Together these comprise the mantissa. */ | ||
| 79 | 	unsigned int mantissa0:20; | ||
| 80 | 	unsigned int mantissa1:32; | ||
| 81 | #endif				/* Big endian. */ | ||
| 82 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 83 | 	/* Together these comprise the mantissa. */ | ||
| 84 | 	unsigned int mantissa1:32; | ||
| 85 | 	unsigned int mantissa0:20; | ||
| 86 | 	unsigned int exponent:11; | ||
| 87 | 	unsigned int negative:1; | ||
| 88 | #endif				/* Little endian. */ | ||
| 89 | } ieee; | ||
| 90 | |||
| 91 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 92 | struct | ||
| 93 | { | ||
| 94 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 95 | 	unsigned int negative:1; | ||
| 96 | 	unsigned int exponent:11; | ||
| 97 | 	unsigned int quiet_nan:1; | ||
| 98 | 	/* Together these comprise the mantissa. */ | ||
| 99 | 	unsigned int mantissa0:19; | ||
| 100 | 	unsigned int mantissa1:32; | ||
| 101 | #else | ||
| 102 | 	/* Together these comprise the mantissa. */ | ||
| 103 | 	unsigned int mantissa1:32; | ||
| 104 | 	unsigned int mantissa0:19; | ||
| 105 | 	unsigned int quiet_nan:1; | ||
| 106 | 	unsigned int exponent:11; | ||
| 107 | 	unsigned int negative:1; | ||
| 108 | #endif | ||
| 109 | } ieee_nan; | ||
| 110 | }; | ||
| 111 | |||
| 112 | #define IEEE754_DOUBLE_BIAS	0x3ff /* Added to exponent. */ | ||
| 113 | |||
| 114 | |||
| 115 | #if __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 1 | ||
| 116 | /* long double is IEEE 128 bit */ | ||
| 117 | union ieee854_long_double | ||
| 118 | { | ||
| 119 | long double d; | ||
| 120 | |||
| 121 | /* This is the IEEE 854 quad-precision format. */ | ||
| 122 | struct | ||
| 123 | { | ||
| 124 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 125 | 	unsigned int negative:1; | ||
| 126 | 	unsigned int exponent:15; | ||
| 127 | 	/* Together these comprise the mantissa. */ | ||
| 128 | 	unsigned int mantissa0:16; | ||
| 129 | 	unsigned int mantissa1:32; | ||
| 130 | 	unsigned int mantissa2:32; | ||
| 131 | 	unsigned int mantissa3:32; | ||
| 132 | #endif				/* Big endian. */ | ||
| 133 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 134 | 	/* Together these comprise the mantissa. */ | ||
| 135 | 	unsigned int mantissa3:32; | ||
| 136 | 	unsigned int mantissa2:32; | ||
| 137 | 	unsigned int mantissa1:32; | ||
| 138 | 	unsigned int mantissa0:16; | ||
| 139 | 	unsigned int exponent:15; | ||
| 140 | 	unsigned int negative:1; | ||
| 141 | #endif				/* Little endian. */ | ||
| 142 | } ieee; | ||
| 143 | |||
| 144 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 145 | struct | ||
| 146 | { | ||
| 147 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 148 | 	unsigned int negative:1; | ||
| 149 | 	unsigned int exponent:15; | ||
| 150 | 	unsigned int quiet_nan:1; | ||
| 151 | 	/* Together these comprise the mantissa. */ | ||
| 152 | 	unsigned int mantissa0:15; | ||
| 153 | 	unsigned int mantissa1:32; | ||
| 154 | 	unsigned int mantissa2:32; | ||
| 155 | 	unsigned int mantissa3:32; | ||
| 156 | #else | ||
| 157 | 	/* Together these comprise the mantissa. */ | ||
| 158 | 	unsigned int mantissa3:32; | ||
| 159 | 	unsigned int mantissa2:32; | ||
| 160 | 	unsigned int mantissa1:32; | ||
| 161 | 	unsigned int mantissa0:15; | ||
| 162 | 	unsigned int quiet_nan:1; | ||
| 163 | 	unsigned int exponent:15; | ||
| 164 | 	unsigned int negative:1; | ||
| 165 | #endif | ||
| 166 | } ieee_nan; | ||
| 167 | }; | ||
| 168 | |||
| 169 | #define IEEE854_LONG_DOUBLE_BIAS 0x3fff /* Added to exponent. */ | ||
| 170 | #endif | ||
| 171 | |||
| 172 | |||
| 173 | #if __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 0 || __GNUC_PREREQ (7, 0) | ||
| 174 | /* IBM extended format for long double. | ||
| 175 | |||
| 176 | Each long double is made up of two IEEE doubles. The value of the | ||
| 177 | long double is the sum of the values of the two parts. The most | ||
| 178 | significant part is required to be the value of the long double | ||
| 179 | rounded to the nearest double, as specified by IEEE. For Inf | ||
| 180 | values, the least significant part is required to be one of +0.0 or | ||
| 181 | -0.0. No other requirements are made; so, for example, 1.0 may be | ||
| 182 | represented as (1.0, +0.0) or (1.0, -0.0), and the low part of a | ||
| 183 | NaN is don't-care. */ | ||
| 184 | union ibm_extended_long_double | ||
| 185 | { | ||
| 186 | # if __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 1 && __GNUC_PREREQ (7, 0) | ||
| 187 | __ibm128 ld; | ||
| 188 | # else | ||
| 189 | long double ld; | ||
| 190 | # endif | ||
| 191 | union ieee754_double d[2]; | ||
| 192 | }; | ||
| 193 | #endif | ||
| 194 | |||
| 195 | __END_DECLS | ||
| 196 | |||
| 197 | #endif /* ieee754.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64-linux-gnu/sys/ptrace.h deleted-289| ... | @@ -1,289 +0,0 @@ | ||
| 1 | /* `ptrace' debugger support interface. Linux/PowerPC version. | ||
| 2 | Copyright (C) 2001-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_PTRACE_H | ||
| 20 | #define _SYS_PTRACE_H	1 | ||
| 21 | |||
| 22 | #include <features.h> | ||
| 23 | #include <bits/types.h> | ||
| 24 | |||
| 25 | __BEGIN_DECLS | ||
| 26 | |||
| 27 | #if defined _LINUX_PTRACE_H || defined _ASM_POWERPC_PTRACE_H | ||
| 28 | /* Do not let Linux headers macros interfere with enum __ptrace_request. */ | ||
| 29 | # undef PTRACE_ATTACH | ||
| 30 | # undef PTRACE_CONT | ||
| 31 | # undef PTRACE_DETACH | ||
| 32 | # undef PTRACE_GET_DEBUGREG | ||
| 33 | # undef PTRACE_GETEVENTMSG | ||
| 34 | # undef PTRACE_GETEVRREGS | ||
| 35 | # undef PTRACE_GETFPREGS | ||
| 36 | # undef PTRACE_GETREGS | ||
| 37 | # undef PTRACE_GETREGS64 | ||
| 38 | # undef PTRACE_GETREGSET | ||
| 39 | # undef PTRACE_GET_RSEQ_CONFIGURATION | ||
| 40 | # undef PTRACE_GETSIGINFO | ||
| 41 | # undef PTRACE_GETSIGMASK | ||
| 42 | # undef PTRACE_GET_SYSCALL_INFO | ||
| 43 | # undef PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG | ||
| 44 | # undef PTRACE_GETVRREGS | ||
| 45 | # undef PTRACE_GETVSRREGS | ||
| 46 | # undef PTRACE_INTERRUPT | ||
| 47 | # undef PTRACE_KILL | ||
| 48 | # undef PTRACE_LISTEN | ||
| 49 | # undef PTRACE_PEEKDATA | ||
| 50 | # undef PTRACE_PEEKSIGINFO | ||
| 51 | # undef PTRACE_PEEKTEXT | ||
| 52 | # undef PTRACE_POKEDATA | ||
| 53 | # undef PTRACE_POKETEXT | ||
| 54 | # undef PTRACE_SECCOMP_GET_FILTER | ||
| 55 | # undef PTRACE_SECCOMP_GET_METADATA | ||
| 56 | # undef PTRACE_SEIZE | ||
| 57 | # undef PTRACE_SET_DEBUGREG | ||
| 58 | # undef PTRACE_SETEVRREGS | ||
| 59 | # undef PTRACE_SETFPREGS | ||
| 60 | # undef PTRACE_SETOPTIONS | ||
| 61 | # undef PTRACE_SETREGS | ||
| 62 | # undef PTRACE_SETREGS64 | ||
| 63 | # undef PTRACE_SETREGSET | ||
| 64 | # undef PTRACE_SETSIGINFO | ||
| 65 | # undef PTRACE_SETSIGMASK | ||
| 66 | # undef PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG | ||
| 67 | # undef PTRACE_SETVRREGS | ||
| 68 | # undef PTRACE_SETVSRREGS | ||
| 69 | # undef PTRACE_SINGLEBLOCK | ||
| 70 | # undef PTRACE_SINGLESTEP | ||
| 71 | # undef PTRACE_SYSCALL | ||
| 72 | # undef PTRACE_SYSCALL_INFO_NONE | ||
| 73 | # undef PTRACE_SYSCALL_INFO_ENTRY | ||
| 74 | # undef PTRACE_SYSCALL_INFO_EXIT | ||
| 75 | # undef PTRACE_SYSCALL_INFO_SECCOMP | ||
| 76 | # undef PTRACE_SYSEMU | ||
| 77 | # undef PTRACE_SYSEMU_SINGLESTEP | ||
| 78 | # undef PTRACE_TRACEME | ||
| 79 | #endif | ||
| 80 | |||
| 81 | /* Type of the REQUEST argument to `ptrace.' */ | ||
| 82 | enum __ptrace_request | ||
| 83 | { | ||
| 84 | /* Indicate that the process making this request should be traced. | ||
| 85 | All signals received by this process can be intercepted by its | ||
| 86 | parent, and its parent can use the other `ptrace' requests. */ | ||
| 87 | PTRACE_TRACEME = 0, | ||
| 88 | #define PT_TRACE_ME PTRACE_TRACEME | ||
| 89 | |||
| 90 | /* Return the word in the process's text space at address ADDR. */ | ||
| 91 | PTRACE_PEEKTEXT = 1, | ||
| 92 | #define PT_READ_I PTRACE_PEEKTEXT | ||
| 93 | |||
| 94 | /* Return the word in the process's data space at address ADDR. */ | ||
| 95 | PTRACE_PEEKDATA = 2, | ||
| 96 | #define PT_READ_D PTRACE_PEEKDATA | ||
| 97 | |||
| 98 | /* Return the word in the process's user area at offset ADDR. */ | ||
| 99 | PTRACE_PEEKUSER = 3, | ||
| 100 | #define PT_READ_U PTRACE_PEEKUSER | ||
| 101 | |||
| 102 | /* Write the word DATA into the process's text space at address ADDR. */ | ||
| 103 | PTRACE_POKETEXT = 4, | ||
| 104 | #define PT_WRITE_I PTRACE_POKETEXT | ||
| 105 | |||
| 106 | /* Write the word DATA into the process's data space at address ADDR. */ | ||
| 107 | PTRACE_POKEDATA = 5, | ||
| 108 | #define PT_WRITE_D PTRACE_POKEDATA | ||
| 109 | |||
| 110 | /* Write the word DATA into the process's user area at offset ADDR. */ | ||
| 111 | PTRACE_POKEUSER = 6, | ||
| 112 | #define PT_WRITE_U PTRACE_POKEUSER | ||
| 113 | |||
| 114 | /* Continue the process. */ | ||
| 115 | PTRACE_CONT = 7, | ||
| 116 | #define PT_CONTINUE PTRACE_CONT | ||
| 117 | |||
| 118 | /* Kill the process. */ | ||
| 119 | PTRACE_KILL = 8, | ||
| 120 | #define PT_KILL PTRACE_KILL | ||
| 121 | |||
| 122 | /* Single step the process. */ | ||
| 123 | PTRACE_SINGLESTEP = 9, | ||
| 124 | #define PT_STEP PTRACE_SINGLESTEP | ||
| 125 | |||
| 126 | /* Get all general purpose registers used by a process. */ | ||
| 127 | PTRACE_GETREGS = 12, | ||
| 128 | #define PT_GETREGS PTRACE_GETREGS | ||
| 129 | |||
| 130 | /* Set all general purpose registers used by a process. */ | ||
| 131 | PTRACE_SETREGS = 13, | ||
| 132 | #define PT_SETREGS PTRACE_SETREGS | ||
| 133 | |||
| 134 | /* Get all floating point registers used by a process. */ | ||
| 135 | PTRACE_GETFPREGS = 14, | ||
| 136 | #define PT_GETFPREGS PTRACE_GETFPREGS | ||
| 137 | |||
| 138 | /* Set all floating point registers used by a process. */ | ||
| 139 | PTRACE_SETFPREGS = 15, | ||
| 140 | #define PT_SETFPREGS PTRACE_SETFPREGS | ||
| 141 | |||
| 142 | /* Attach to a process that is already running. */ | ||
| 143 | PTRACE_ATTACH = 16, | ||
| 144 | #define PT_ATTACH PTRACE_ATTACH | ||
| 145 | |||
| 146 | /* Detach from a process attached to with PTRACE_ATTACH. */ | ||
| 147 | PTRACE_DETACH = 17, | ||
| 148 | #define PT_DETACH PTRACE_DETACH | ||
| 149 | |||
| 150 | /* Get all altivec registers used by a process. */ | ||
| 151 | PTRACE_GETVRREGS = 18, | ||
| 152 | #define PT_GETVRREGS PTRACE_GETVRREGS | ||
| 153 | |||
| 154 | /* Set all altivec registers used by a process. */ | ||
| 155 | PTRACE_SETVRREGS = 19, | ||
| 156 | #define PT_SETVRREGS PTRACE_SETVRREGS | ||
| 157 | |||
| 158 | /* Get all SPE registers used by a process. */ | ||
| 159 | PTRACE_GETEVRREGS = 20, | ||
| 160 | #define PT_GETEVRREGS PTRACE_GETEVRREGS | ||
| 161 | |||
| 162 | /* Set all SPE registers used by a process. */ | ||
| 163 | PTRACE_SETEVRREGS = 21, | ||
| 164 | #define PT_SETEVRREGS PTRACE_SETEVRREGS | ||
| 165 | |||
| 166 | /* Same as PTRACE_GETREGS except a 32-bit process will obtain | ||
| 167 | the full 64-bit registers. Implemented by 64-bit kernels only. */ | ||
| 168 | PTRACE_GETREGS64 = 22, | ||
| 169 | #define PT_GETREGS64 PTRACE_GETREGS64 | ||
| 170 | |||
| 171 | /* Same as PTRACE_SETREGS except a 32-bit process will set | ||
| 172 | the full 64-bit registers. Implemented by 64-bit kernels only. */ | ||
| 173 | PTRACE_SETREGS64 = 23, | ||
| 174 | #define PT_SETREGS64 PTRACE_SETREGS64 | ||
| 175 | |||
| 176 | /* Continue and stop at the next entry to or return from syscall. */ | ||
| 177 | PTRACE_SYSCALL = 24, | ||
| 178 | #define PT_SYSCALL PTRACE_SYSCALL | ||
| 179 | |||
| 180 | /* Get a debug register of a process. */ | ||
| 181 | PTRACE_GET_DEBUGREG = 25, | ||
| 182 | #define PT_GET_DEBUGREG PTRACE_GET_DEBUGREG | ||
| 183 | |||
| 184 | /* Set a debug register of a process. */ | ||
| 185 | PTRACE_SET_DEBUGREG = 26, | ||
| 186 | #define PT_SET_DEBUGREG PTRACE_SET_DEBUGREG | ||
| 187 | |||
| 188 | /* Get the first 32 VSX registers of a process. */ | ||
| 189 | PTRACE_GETVSRREGS = 27, | ||
| 190 | #define PT_GETVSRREGS PTRACE_GETVSRREGS | ||
| 191 | |||
| 192 | /* Set the first 32 VSX registers of a process. */ | ||
| 193 | PTRACE_SETVSRREGS = 28, | ||
| 194 | #define PT_SETVSRREGS PTRACE_SETVSRREGS | ||
| 195 | |||
| 196 | /* Continue and stop at the next syscall, it will not be executed. */ | ||
| 197 | PTRACE_SYSEMU = 29, | ||
| 198 | #define PT_SYSEMU PTRACE_SYSEMU | ||
| 199 | |||
| 200 | /* Single step the process, the next syscall will not be executed. */ | ||
| 201 | PTRACE_SYSEMU_SINGLESTEP = 30, | ||
| 202 | #define PT_SYSEMU_SINGLESTEP PTRACE_SYSEMU_SINGLESTEP | ||
| 203 | |||
| 204 | /* Execute process until next taken branch. */ | ||
| 205 | PTRACE_SINGLEBLOCK = 256, | ||
| 206 | #define PT_STEPBLOCK PTRACE_SINGLEBLOCK | ||
| 207 | |||
| 208 | /* Set ptrace filter options. */ | ||
| 209 | PTRACE_SETOPTIONS = 0x4200, | ||
| 210 | #define PT_SETOPTIONS PTRACE_SETOPTIONS | ||
| 211 | |||
| 212 | /* Get last ptrace message. */ | ||
| 213 | PTRACE_GETEVENTMSG = 0x4201, | ||
| 214 | #define PT_GETEVENTMSG PTRACE_GETEVENTMSG | ||
| 215 | |||
| 216 | /* Get siginfo for process. */ | ||
| 217 | PTRACE_GETSIGINFO = 0x4202, | ||
| 218 | #define PT_GETSIGINFO PTRACE_GETSIGINFO | ||
| 219 | |||
| 220 | /* Set new siginfo for process. */ | ||
| 221 | PTRACE_SETSIGINFO = 0x4203, | ||
| 222 | #define PT_SETSIGINFO PTRACE_SETSIGINFO | ||
| 223 | |||
| 224 | /* Get register content. */ | ||
| 225 | PTRACE_GETREGSET = 0x4204, | ||
| 226 | #define PTRACE_GETREGSET PTRACE_GETREGSET | ||
| 227 | |||
| 228 | /* Set register content. */ | ||
| 229 | PTRACE_SETREGSET = 0x4205, | ||
| 230 | #define PTRACE_SETREGSET PTRACE_SETREGSET | ||
| 231 | |||
| 232 | /* Like PTRACE_ATTACH, but do not force tracee to trap and do not affect | ||
| 233 | signal or group stop state. */ | ||
| 234 | PTRACE_SEIZE = 0x4206, | ||
| 235 | #define PTRACE_SEIZE PTRACE_SEIZE | ||
| 236 | |||
| 237 | /* Trap seized tracee. */ | ||
| 238 | PTRACE_INTERRUPT = 0x4207, | ||
| 239 | #define PTRACE_INTERRUPT PTRACE_INTERRUPT | ||
| 240 | |||
| 241 | /* Wait for next group event. */ | ||
| 242 | PTRACE_LISTEN = 0x4208, | ||
| 243 | #define PTRACE_LISTEN PTRACE_LISTEN | ||
| 244 | |||
| 245 | /* Retrieve siginfo_t structures without removing signals from a queue. */ | ||
| 246 | PTRACE_PEEKSIGINFO = 0x4209, | ||
| 247 | #define PTRACE_PEEKSIGINFO PTRACE_PEEKSIGINFO | ||
| 248 | |||
| 249 | /* Get the mask of blocked signals. */ | ||
| 250 | PTRACE_GETSIGMASK = 0x420a, | ||
| 251 | #define PTRACE_GETSIGMASK PTRACE_GETSIGMASK | ||
| 252 | |||
| 253 | /* Change the mask of blocked signals. */ | ||
| 254 | PTRACE_SETSIGMASK = 0x420b, | ||
| 255 | #define PTRACE_SETSIGMASK PTRACE_SETSIGMASK | ||
| 256 | |||
| 257 | /* Get seccomp BPF filters. */ | ||
| 258 | PTRACE_SECCOMP_GET_FILTER = 0x420c, | ||
| 259 | #define PTRACE_SECCOMP_GET_FILTER PTRACE_SECCOMP_GET_FILTER | ||
| 260 | |||
| 261 | /* Get seccomp BPF filter metadata. */ | ||
| 262 | PTRACE_SECCOMP_GET_METADATA = 0x420d, | ||
| 263 | #define PTRACE_SECCOMP_GET_METADATA PTRACE_SECCOMP_GET_METADATA | ||
| 264 | |||
| 265 | /* Get information about system call. */ | ||
| 266 | PTRACE_GET_SYSCALL_INFO = 0x420e, | ||
| 267 | #define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO | ||
| 268 | |||
| 269 | /* Get rseq configuration information. */ | ||
| 270 | PTRACE_GET_RSEQ_CONFIGURATION = 0x420f, | ||
| 271 | #define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION | ||
| 272 | |||
| 273 | /* Set configuration for syscall user dispatch. */ | ||
| 274 | PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG = 0x4210, | ||
| 275 | #define PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG \ | ||
| 276 | PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG | ||
| 277 | |||
| 278 | /* Get configuration for syscall user dispatch. */ | ||
| 279 | PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG = 0x4211 | ||
| 280 | #define PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG \ | ||
| 281 | PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG | ||
| 282 | }; | ||
| 283 | |||
| 284 | |||
| 285 | #include <bits/ptrace-shared.h> | ||
| 286 | |||
| 287 | __END_DECLS | ||
| 288 | |||
| 289 | #endif /* _SYS_PTRACE_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64-linux-gnu/sys/ucontext.h deleted-200| ... | @@ -1,200 +0,0 @@ | ||
| 1 | /* Copyright (C) 1998-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_UCONTEXT_H | ||
| 19 | #define _SYS_UCONTEXT_H	1 | ||
| 20 | |||
| 21 | #include <features.h> | ||
| 22 | |||
| 23 | #include <bits/types/sigset_t.h> | ||
| 24 | #include <bits/types/stack_t.h> | ||
| 25 | |||
| 26 | |||
| 27 | #ifdef __USE_MISC | ||
| 28 | # define __ctx(fld) fld | ||
| 29 | #else | ||
| 30 | # define __ctx(fld) __ ## fld | ||
| 31 | #endif | ||
| 32 | |||
| 33 | struct __ctx(pt_regs); | ||
| 34 | |||
| 35 | #if __WORDSIZE == 32 | ||
| 36 | |||
| 37 | /* Number of general registers. */ | ||
| 38 | # define __NGREG	48 | ||
| 39 | # ifdef __USE_MISC | ||
| 40 | # define NGREG	__NGREG | ||
| 41 | # endif | ||
| 42 | |||
| 43 | /* Container for all general registers. */ | ||
| 44 | typedef unsigned long gregset_t[__NGREG]; | ||
| 45 | |||
| 46 | /* Container for floating-point registers and status */ | ||
| 47 | typedef struct _libc_fpstate | ||
| 48 | { | ||
| 49 | 	double __ctx(fpregs)[32]; | ||
| 50 | 	double __ctx(fpscr); | ||
| 51 | 	unsigned int _pad[2]; | ||
| 52 | } fpregset_t; | ||
| 53 | |||
| 54 | /* Container for Altivec/VMX registers and status. | ||
| 55 | Needs to be aligned on a 16-byte boundary. */ | ||
| 56 | typedef struct _libc_vrstate | ||
| 57 | { | ||
| 58 | 	unsigned int __ctx(vrregs)[32][4]; | ||
| 59 | 	unsigned int __ctx(vrsave); | ||
| 60 | 	unsigned int _pad[2]; | ||
| 61 | 	unsigned int __ctx(vscr); | ||
| 62 | } vrregset_t; | ||
| 63 | |||
| 64 | /* Context to describe whole processor state. */ | ||
| 65 | typedef struct | ||
| 66 | { | ||
| 67 | 	gregset_t __ctx(gregs); | ||
| 68 | 	fpregset_t __ctx(fpregs); | ||
| 69 | 	vrregset_t __ctx(vrregs) __attribute__((__aligned__(16))); | ||
| 70 | } mcontext_t; | ||
| 71 | |||
| 72 | #else | ||
| 73 | |||
| 74 | /* For 64-bit kernels with Altivec support, a machine context is exactly | ||
| 75 | * a sigcontext. For older kernel (without Altivec) the sigcontext matches | ||
| 76 | * the mcontext upto but not including the v_regs field. For kernels that | ||
| 77 | * don't set AT_HWCAP or return AT_HWCAP without PPC_FEATURE_HAS_ALTIVEC the | ||
| 78 | * v_regs field may not exist and should not be referenced. The v_regs field | ||
| 79 | * can be referenced safely only after verifying that PPC_FEATURE_HAS_ALTIVEC | ||
| 80 | * is set in AT_HWCAP. */ | ||
| 81 | |||
| 82 | /* Number of general registers. */ | ||
| 83 | # define __NGREG	48	/* includes r0-r31, nip, msr, lr, etc. */ | ||
| 84 | # define __NFPREG	33	/* includes fp0-fp31 &fpscr. */ | ||
| 85 | # define __NVRREG	34	/* includes v0-v31, vscr, & vrsave in | ||
| 86 | 				 split vectors */ | ||
| 87 | # ifdef __USE_MISC | ||
| 88 | # define NGREG	__NGREG | ||
| 89 | # define NFPREG	__NFPREG | ||
| 90 | # define NVRREG	__NVRREG | ||
| 91 | # endif | ||
| 92 | |||
| 93 | typedef unsigned long gregset_t[__NGREG]; | ||
| 94 | typedef double fpregset_t[__NFPREG]; | ||
| 95 | |||
| 96 | /* Container for Altivec/VMX Vector Status and Control Register. Only 32-bits | ||
| 97 | but can only be copied to/from a 128-bit vector register. So we allocated | ||
| 98 | a whole quadword speedup save/restore. */ | ||
| 99 | typedef struct _libc_vscr | ||
| 100 | { | ||
| 101 | #if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__ | ||
| 102 | 	unsigned int __pad[3]; | ||
| 103 | 	unsigned int __ctx(vscr_word); | ||
| 104 | #else | ||
| 105 | 	unsigned int __ctx(vscr_word); | ||
| 106 | 	unsigned int __pad[3]; | ||
| 107 | #endif | ||
| 108 | } vscr_t; | ||
| 109 | |||
| 110 | /* Container for Altivec/VMX registers and status. | ||
| 111 | Must to be aligned on a 16-byte boundary. */ | ||
| 112 | typedef struct _libc_vrstate | ||
| 113 | { | ||
| 114 | 	unsigned int	__ctx(vrregs)[32][4]; | ||
| 115 | 	vscr_t		__ctx(vscr); | ||
| 116 | 	unsigned int	__ctx(vrsave); | ||
| 117 | 	unsigned int	__pad[3]; | ||
| 118 | } vrregset_t __attribute__((__aligned__(16))); | ||
| 119 | |||
| 120 | typedef struct { | ||
| 121 | 	unsigned long	__glibc_reserved[4]; | ||
| 122 | 	int		__ctx(signal); | ||
| 123 | 	int		__pad0; | ||
| 124 | 	unsigned long	__ctx(handler); | ||
| 125 | 	unsigned long	__ctx(oldmask); | ||
| 126 | 	struct __ctx(pt_regs)	*__ctx(regs); | ||
| 127 | 	gregset_t	__ctx(gp_regs); | ||
| 128 | 	fpregset_t	__ctx(fp_regs); | ||
| 129 | /* | ||
| 130 | * To maintain compatibility with current implementations the sigcontext is | ||
| 131 | * extended by appending a pointer (v_regs) to a quadword type (elf_vrreg_t) | ||
| 132 | * followed by an unstructured (vmx_reserve) field of 69 doublewords. This | ||
| 133 | * allows the array of vector registers to be quadword aligned independent of | ||
| 134 | * the alignment of the containing sigcontext or ucontext. It is the | ||
| 135 | * responsibility of the code setting the sigcontext to set this pointer to | ||
| 136 | * either NULL (if this processor does not support the VMX feature) or the | ||
| 137 | * address of the first quadword within the allocated (vmx_reserve) area. | ||
| 138 | * | ||
| 139 | * The pointer (v_regs) of vector type (elf_vrreg_t) is essentially | ||
| 140 | * an array of 34 quadword entries. The entries with | ||
| 141 | * indexes 0-31 contain the corresponding vector registers. The entry with | ||
| 142 | * index 32 contains the vscr as the last word (offset 12) within the | ||
| 143 | * quadword. This allows the vscr to be stored as either a quadword (since | ||
| 144 | * it must be copied via a vector register to/from storage) or as a word. | ||
| 145 | * The entry with index 33 contains the vrsave as the first word (offset 0) | ||
| 146 | * within the quadword. | ||
| 147 | */ | ||
| 148 | 	vrregset_t	*__ctx(v_regs); | ||
| 149 | 	long		__ctx(vmx_reserve)[__NVRREG+__NVRREG+1]; | ||
| 150 | } mcontext_t; | ||
| 151 | |||
| 152 | #endif | ||
| 153 | |||
| 154 | /* Userlevel context. */ | ||
| 155 | typedef struct ucontext_t | ||
| 156 | { | ||
| 157 | unsigned long int __ctx(uc_flags); | ||
| 158 | struct ucontext_t *uc_link; | ||
| 159 | stack_t uc_stack; | ||
| 160 | #if __WORDSIZE == 32 | ||
| 161 | /* | ||
| 162 | * These fields are set up this way to maximize source and | ||
| 163 | * binary compatibility with code written for the old | ||
| 164 | * ucontext_t definition, which didn't include space for the | ||
| 165 | * registers. | ||
| 166 | * | ||
| 167 | * Different versions of the kernel have stored the registers on | ||
| 168 | * signal delivery at different offsets from the ucontext struct. | ||
| 169 | * Programs should thus use the uc_mcontext.uc_regs pointer to | ||
| 170 | * find where the registers are actually stored. The registers | ||
| 171 | * will be stored within the ucontext_t struct but not necessarily | ||
| 172 | * at a fixed address. As a side-effect, this lets us achieve | ||
| 173 | * 16-byte alignment for the register storage space if the | ||
| 174 | * Altivec registers are to be saved, without requiring 16-byte | ||
| 175 | * alignment on the whole ucontext_t. | ||
| 176 | * | ||
| 177 | * The uc_mcontext.regs field is included for source compatibility | ||
| 178 | * with programs written against the older ucontext_t definition, | ||
| 179 | * and its name should therefore not change. The uc_pad field | ||
| 180 | * is for binary compatibility with programs compiled against the | ||
| 181 | * old ucontext_t; it ensures that uc_mcontext.regs and uc_sigmask | ||
| 182 | * are at the same offset as previously. | ||
| 183 | */ | ||
| 184 | int __glibc_reserved1[7]; | ||
| 185 | union __ctx(uc_regs_ptr) { | ||
| 186 | struct __ctx(pt_regs) *__ctx(regs); | ||
| 187 | mcontext_t *__ctx(uc_regs); | ||
| 188 | } uc_mcontext; | ||
| 189 | sigset_t uc_sigmask; | ||
| 190 | /* last for extensibility */ | ||
| 191 | char __ctx(uc_reg_space)[sizeof (mcontext_t) + 12]; | ||
| 192 | #else /* 64-bit */ | ||
| 193 | sigset_t uc_sigmask; | ||
| 194 | mcontext_t uc_mcontext; /* last for extensibility */ | ||
| 195 | #endif | ||
| 196 | } ucontext_t; | ||
| 197 | |||
| 198 | #undef __ctx | ||
| 199 | |||
| 200 | #endif /* sys/ucontext.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64-linux-gnu/sys/user.h deleted-40| ... | @@ -1,40 +0,0 @@ | ||
| 1 | /* Copyright (C) 1998-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_USER_H | ||
| 19 | |||
| 20 | #define _SYS_USER_H	1 | ||
| 21 | #include <stddef.h> | ||
| 22 | #include <features.h> | ||
| 23 | |||
| 24 | #include <asm/ptrace.h> | ||
| 25 | |||
| 26 | struct user { | ||
| 27 | 	struct pt_regs	regs;			/* entire machine state */ | ||
| 28 | 	size_t		u_tsize;		/* text size (pages) */ | ||
| 29 | 	size_t		u_dsize;		/* data size (pages) */ | ||
| 30 | 	size_t		u_ssize;		/* stack size (pages) */ | ||
| 31 | 	unsigned long	start_code;		/* text starting address */ | ||
| 32 | 	unsigned long	start_data;		/* data starting address */ | ||
| 33 | 	unsigned long	start_stack;		/* stack starting address */ | ||
| 34 | 	long int	signal;			/* signal causing core dump */ | ||
| 35 | 	struct regs *	u_ar0;			/* help gdb find registers */ | ||
| 36 | 	unsigned long	magic;			/* identifies a core file */ | ||
| 37 | 	char		u_comm[32];		/* user command name */ | ||
| 38 | }; | ||
| 39 | |||
| 40 | #endif /* sys/user.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64le-linux-gnu/bits/endianness.h deleted-16| ... | @@ -1,16 +0,0 @@ | ||
| 1 | #ifndef _BITS_ENDIANNESS_H | ||
| 2 | #define _BITS_ENDIANNESS_H 1 | ||
| 3 | |||
| 4 | #ifndef _BITS_ENDIAN_H | ||
| 5 | # error "Never use <bits/endianness.h> directly; include <endian.h> instead." | ||
| 6 | #endif | ||
| 7 | |||
| 8 | /* PowerPC has selectable endianness. */ | ||
| 9 | #if defined __BIG_ENDIAN__ || defined _BIG_ENDIAN | ||
| 10 | # define __BYTE_ORDER __BIG_ENDIAN | ||
| 11 | #endif | ||
| 12 | #if defined __LITTLE_ENDIAN__ || defined _LITTLE_ENDIAN | ||
| 13 | # define __BYTE_ORDER __LITTLE_ENDIAN | ||
| 14 | #endif | ||
| 15 | |||
| 16 | #endif /* bits/endianness.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64le-linux-gnu/bits/environments.h deleted-96| ... | @@ -1,96 +0,0 @@ | ||
| 1 | /* Copyright (C) 1999-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _UNISTD_H | ||
| 19 | # error "Never include this file directly. Use <unistd.h> instead" | ||
| 20 | #endif | ||
| 21 | |||
| 22 | #include <bits/wordsize.h> | ||
| 23 | |||
| 24 | /* This header should define the following symbols under the described | ||
| 25 | situations. A value `1' means that the model is always supported, | ||
| 26 | `-1' means it is never supported. Undefined means it cannot be | ||
| 27 | statically decided. | ||
| 28 | |||
| 29 | _POSIX_V7_ILP32_OFF32 32bit int, long, pointers, and off_t type | ||
| 30 | _POSIX_V7_ILP32_OFFBIG 32bit int, long, and pointers and larger off_t type | ||
| 31 | |||
| 32 | _POSIX_V7_LP64_OFF32	 64bit long and pointers and 32bit off_t type | ||
| 33 | _POSIX_V7_LPBIG_OFFBIG 64bit long and pointers and large off_t type | ||
| 34 | |||
| 35 | The macros _POSIX_V6_ILP32_OFF32, _POSIX_V6_ILP32_OFFBIG, | ||
| 36 | _POSIX_V6_LP64_OFF32, _POSIX_V6_LPBIG_OFFBIG, _XBS5_ILP32_OFF32, | ||
| 37 | _XBS5_ILP32_OFFBIG, _XBS5_LP64_OFF32, and _XBS5_LPBIG_OFFBIG were | ||
| 38 | used in previous versions of the Unix standard and are available | ||
| 39 | only for compatibility. | ||
| 40 | */ | ||
| 41 | |||
| 42 | #if __WORDSIZE == 64 | ||
| 43 | |||
| 44 | /* Environments with 32-bit wide pointers are optionally provided. | ||
| 45 | Therefore following macros aren't defined: | ||
| 46 | # undef _POSIX_V7_ILP32_OFF32 | ||
| 47 | # undef _POSIX_V7_ILP32_OFFBIG | ||
| 48 | # undef _POSIX_V6_ILP32_OFF32 | ||
| 49 | # undef _POSIX_V6_ILP32_OFFBIG | ||
| 50 | # undef _XBS5_ILP32_OFF32 | ||
| 51 | # undef _XBS5_ILP32_OFFBIG | ||
| 52 | and users need to check at runtime. */ | ||
| 53 | |||
| 54 | /* We also have no use (for now) for an environment with bigger pointers | ||
| 55 | and offsets. */ | ||
| 56 | # define _POSIX_V7_LPBIG_OFFBIG	-1 | ||
| 57 | # define _POSIX_V6_LPBIG_OFFBIG	-1 | ||
| 58 | # define _XBS5_LPBIG_OFFBIG	-1 | ||
| 59 | |||
| 60 | /* By default we have 64-bit wide `long int', pointers and `off_t'. */ | ||
| 61 | # define _POSIX_V7_LP64_OFF64	1 | ||
| 62 | # define _POSIX_V6_LP64_OFF64	1 | ||
| 63 | # define _XBS5_LP64_OFF64	1 | ||
| 64 | |||
| 65 | #else /* __WORDSIZE == 32 */ | ||
| 66 | |||
| 67 | /* By default we have 32-bit wide `int', `long int', pointers and `off_t' | ||
| 68 | and all platforms support LFS. */ | ||
| 69 | # define _POSIX_V7_ILP32_OFF32	1 | ||
| 70 | # define _POSIX_V7_ILP32_OFFBIG	1 | ||
| 71 | # define _POSIX_V6_ILP32_OFF32	1 | ||
| 72 | # define _POSIX_V6_ILP32_OFFBIG	1 | ||
| 73 | # define _XBS5_ILP32_OFF32	1 | ||
| 74 | # define _XBS5_ILP32_OFFBIG	1 | ||
| 75 | |||
| 76 | /* We optionally provide an environment with the above size but an 64-bit | ||
| 77 | side `off_t'. Therefore we don't define _POSIX_V7_ILP32_OFFBIG. */ | ||
| 78 | |||
| 79 | /* Environments with 64-bit wide pointers can be provided, | ||
| 80 | so these macros aren't defined: | ||
| 81 | # undef _POSIX_V7_LP64_OFF64 | ||
| 82 | # undef _POSIX_V7_LPBIG_OFFBIG | ||
| 83 | # undef _POSIX_V6_LP64_OFF64 | ||
| 84 | # undef _POSIX_V6_LPBIG_OFFBIG | ||
| 85 | # undef _XBS5_LP64_OFF64 | ||
| 86 | # undef _XBS5_LPBIG_OFFBIG | ||
| 87 | and sysconf tests for it at runtime. */ | ||
| 88 | |||
| 89 | #endif /* __WORDSIZE == 32 */ | ||
| 90 | |||
| 91 | #define __ILP32_OFF32_CFLAGS	"-m32" | ||
| 92 | #define __ILP32_OFFBIG_CFLAGS	"-m32 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" | ||
| 93 | #define __ILP32_OFF32_LDFLAGS	"-m32" | ||
| 94 | #define __ILP32_OFFBIG_LDFLAGS	"-m32" | ||
| 95 | #define __LP64_OFF64_CFLAGS	"-m64" | ||
| 96 | #define __LP64_OFF64_LDFLAGS	"-m64" | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64le-linux-gnu/bits/fcntl.h deleted-68| ... | @@ -1,68 +0,0 @@ | ||
| 1 | /* O_*, F_*, FD_* bit values for Linux/PowerPC. | ||
| 2 | Copyright (C) 1995-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef	_FCNTL_H | ||
| 20 | # error "Never use <bits/fcntl.h> directly; include <fcntl.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <bits/wordsize.h> | ||
| 24 | |||
| 25 | #define __O_DIRECTORY	 040000	/* Must be a directory.	 */ | ||
| 26 | #define __O_NOFOLLOW	0100000	/* Do not follow links.	 */ | ||
| 27 | #define __O_DIRECT	0400000	/* Direct disk access.	*/ | ||
| 28 | |||
| 29 | #if __WORDSIZE == 64 | ||
| 30 | /* Not necessary, files are always with 64bit off_t. */ | ||
| 31 | # define __O_LARGEFILE 0 | ||
| 32 | #else | ||
| 33 | # define __O_LARGEFILE	0200000 | ||
| 34 | #endif | ||
| 35 | |||
| 36 | #if __WORDSIZE == 64 && !defined __USE_FILE_OFFSET64 | ||
| 37 | # define F_GETLK	5 | ||
| 38 | # define F_SETLK	6 | ||
| 39 | # define F_SETLKW	7 | ||
| 40 | #endif | ||
| 41 | |||
| 42 | struct flock | ||
| 43 | { | ||
| 44 | short int l_type;	/* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK.	*/ | ||
| 45 | short int l_whence;	/* Where `l_start' is relative to (like `lseek'). */ | ||
| 46 | #ifndef __USE_FILE_OFFSET64 | ||
| 47 | __off_t l_start;	/* Offset where the lock begins. */ | ||
| 48 | __off_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 49 | #else | ||
| 50 | __off64_t l_start;	/* Offset where the lock begins. */ | ||
| 51 | __off64_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 52 | #endif | ||
| 53 | __pid_t l_pid;	/* Process holding the lock. */ | ||
| 54 | }; | ||
| 55 | |||
| 56 | #ifdef __USE_LARGEFILE64 | ||
| 57 | struct flock64 | ||
| 58 | { | ||
| 59 | short int l_type;	/* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK.	*/ | ||
| 60 | short int l_whence;	/* Where `l_start' is relative to (like `lseek'). */ | ||
| 61 | __off64_t l_start;	/* Offset where the lock begins. */ | ||
| 62 | __off64_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 63 | __pid_t l_pid;	/* Process holding the lock. */ | ||
| 64 | }; | ||
| 65 | #endif | ||
| 66 | |||
| 67 | /* Include generic Linux declarations. */ | ||
| 68 | #include <bits/fcntl-linux.h> | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64le-linux-gnu/bits/fenv.h deleted-180| ... | @@ -1,180 +0,0 @@ | ||
| 1 | /* Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _FENV_H | ||
| 19 | # error "Never use <bits/fenv.h> directly; include <fenv.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | |||
| 23 | /* Define bits representing the exception. We use the bit positions of | ||
| 24 | the appropriate bits in the FPSCR... */ | ||
| 25 | enum | ||
| 26 | { | ||
| 27 | FE_INEXACT = | ||
| 28 | #define FE_INEXACT	(1 << (31 - 6)) | ||
| 29 | FE_INEXACT, | ||
| 30 | FE_DIVBYZERO = | ||
| 31 | #define FE_DIVBYZERO	(1 << (31 - 5)) | ||
| 32 | FE_DIVBYZERO, | ||
| 33 | FE_UNDERFLOW = | ||
| 34 | #define FE_UNDERFLOW	(1 << (31 - 4)) | ||
| 35 | FE_UNDERFLOW, | ||
| 36 | FE_OVERFLOW = | ||
| 37 | #define FE_OVERFLOW	(1 << (31 - 3)) | ||
| 38 | FE_OVERFLOW, | ||
| 39 | |||
| 40 | /* ... except for FE_INVALID, for which we use bit 31. FE_INVALID | ||
| 41 | actually corresponds to bits 7 through 12 and 21 through 23 | ||
| 42 | in the FPSCR, but we can't use that because the current draft | ||
| 43 | says that it must be a power of 2. Instead we use bit 2 which | ||
| 44 | is the summary bit for all the FE_INVALID exceptions, which | ||
| 45 | kind of makes sense. */ | ||
| 46 | FE_INVALID = | ||
| 47 | #define FE_INVALID	(1 << (31 - 2)) | ||
| 48 | FE_INVALID, | ||
| 49 | |||
| 50 | #ifdef __USE_GNU | ||
| 51 | /* Breakdown of the FE_INVALID bits. Setting FE_INVALID on an | ||
| 52 | input to a routine is equivalent to setting all of these bits; | ||
| 53 | FE_INVALID will be set on output from a routine iff one of | ||
| 54 | these bits is set. Note, though, that you can't disable or | ||
| 55 | enable these exceptions individually. */ | ||
| 56 | |||
| 57 | /* Operation with a sNaN. */ | ||
| 58 | FE_INVALID_SNAN = | ||
| 59 | # define FE_INVALID_SNAN	(1 << (31 - 7)) | ||
| 60 | FE_INVALID_SNAN, | ||
| 61 | |||
| 62 | /* Inf - Inf */ | ||
| 63 | FE_INVALID_ISI = | ||
| 64 | # define FE_INVALID_ISI	(1 << (31 - 8)) | ||
| 65 | FE_INVALID_ISI, | ||
| 66 | |||
| 67 | /* Inf / Inf */ | ||
| 68 | FE_INVALID_IDI = | ||
| 69 | # define FE_INVALID_IDI	(1 << (31 - 9)) | ||
| 70 | FE_INVALID_IDI, | ||
| 71 | |||
| 72 | /* 0 / 0 */ | ||
| 73 | FE_INVALID_ZDZ = | ||
| 74 | # define FE_INVALID_ZDZ	(1 << (31 - 10)) | ||
| 75 | FE_INVALID_ZDZ, | ||
| 76 | |||
| 77 | /* Inf * 0 */ | ||
| 78 | FE_INVALID_IMZ = | ||
| 79 | # define FE_INVALID_IMZ	(1 << (31 - 11)) | ||
| 80 | FE_INVALID_IMZ, | ||
| 81 | |||
| 82 | /* Comparison with a NaN. */ | ||
| 83 | FE_INVALID_COMPARE = | ||
| 84 | # define FE_INVALID_COMPARE	(1 << (31 - 12)) | ||
| 85 | FE_INVALID_COMPARE, | ||
| 86 | |||
| 87 | /* Invalid operation flag for software (not set by hardware). */ | ||
| 88 | /* Note that some chips don't have this implemented, presumably | ||
| 89 | because no-one expected anyone to write software for them %-). */ | ||
| 90 | FE_INVALID_SOFTWARE = | ||
| 91 | # define FE_INVALID_SOFTWARE	(1 << (31 - 21)) | ||
| 92 | FE_INVALID_SOFTWARE, | ||
| 93 | |||
| 94 | /* Square root of negative number (including -Inf). */ | ||
| 95 | /* Note that some chips don't have this implemented. */ | ||
| 96 | FE_INVALID_SQRT = | ||
| 97 | # define FE_INVALID_SQRT	(1 << (31 - 22)) | ||
| 98 | FE_INVALID_SQRT, | ||
| 99 | |||
| 100 | /* Conversion-to-integer of a NaN or a number too large or too small. */ | ||
| 101 | FE_INVALID_INTEGER_CONVERSION = | ||
| 102 | # define FE_INVALID_INTEGER_CONVERSION	(1 << (31 - 23)) | ||
| 103 | FE_INVALID_INTEGER_CONVERSION | ||
| 104 | |||
| 105 | # define FE_ALL_INVALID \ | ||
| 106 | (FE_INVALID_SNAN | FE_INVALID_ISI | FE_INVALID_IDI | FE_INVALID_ZDZ \ | ||
| 107 | 	 | FE_INVALID_IMZ | FE_INVALID_COMPARE | FE_INVALID_SOFTWARE \ | ||
| 108 | 	 | FE_INVALID_SQRT | FE_INVALID_INTEGER_CONVERSION) | ||
| 109 | #endif | ||
| 110 | }; | ||
| 111 | |||
| 112 | #define FE_ALL_EXCEPT \ | ||
| 113 | 	(FE_INEXACT | FE_DIVBYZERO | FE_UNDERFLOW | FE_OVERFLOW | FE_INVALID) | ||
| 114 | |||
| 115 | /* PowerPC chips support all of the four defined rounding modes. We | ||
| 116 | use the bit pattern in the FPSCR as the values for the | ||
| 117 | appropriate macros. */ | ||
| 118 | enum | ||
| 119 | { | ||
| 120 | FE_TONEAREST = | ||
| 121 | #define FE_TONEAREST	0 | ||
| 122 | FE_TONEAREST, | ||
| 123 | FE_TOWARDZERO = | ||
| 124 | #define FE_TOWARDZERO	1 | ||
| 125 | FE_TOWARDZERO, | ||
| 126 | FE_UPWARD = | ||
| 127 | #define FE_UPWARD	2 | ||
| 128 | FE_UPWARD, | ||
| 129 | FE_DOWNWARD = | ||
| 130 | #define FE_DOWNWARD	3 | ||
| 131 | FE_DOWNWARD | ||
| 132 | }; | ||
| 133 | |||
| 134 | /* Type representing exception flags. */ | ||
| 135 | typedef unsigned int fexcept_t; | ||
| 136 | |||
| 137 | /* Type representing floating-point environment. We leave it as 'double' | ||
| 138 | for efficiency reasons (rather than writing it to a 32-bit integer). */ | ||
| 139 | typedef double fenv_t; | ||
| 140 | |||
| 141 | /* If the default argument is used we use this value. */ | ||
| 142 | extern const fenv_t __fe_dfl_env; | ||
| 143 | #define FE_DFL_ENV	(&__fe_dfl_env) | ||
| 144 | |||
| 145 | #ifdef __USE_GNU | ||
| 146 | /* Floating-point environment where all exceptions are enabled. Note that | ||
| 147 | this is not sufficient to give you SIGFPE. */ | ||
| 148 | extern const fenv_t __fe_enabled_env; | ||
| 149 | # define FE_ENABLED_ENV	(&__fe_enabled_env) | ||
| 150 | |||
| 151 | /* Floating-point environment with (processor-dependent) non-IEEE floating | ||
| 152 | point. */ | ||
| 153 | extern const fenv_t __fe_nonieee_env; | ||
| 154 | # define FE_NONIEEE_ENV	(&__fe_nonieee_env) | ||
| 155 | |||
| 156 | /* Floating-point environment with all exceptions enabled. Note that | ||
| 157 | just evaluating this value does not change the processor exception mode. | ||
| 158 | Passing this mask to fesetenv will result in a prctl syscall to change | ||
| 159 | the MSR FE0/FE1 bits to "Precise Mode". On some processors this will | ||
| 160 | result in slower floating point execution. This will last until an | ||
| 161 | fenv or exception mask is installed that disables all FP exceptions. */ | ||
| 162 | # define FE_NOMASK_ENV	FE_ENABLED_ENV | ||
| 163 | |||
| 164 | /* Floating-point environment with all exceptions disabled. Note that | ||
| 165 | just evaluating this value does not change the processor exception mode. | ||
| 166 | Passing this mask to fesetenv will result in a prctl syscall to change | ||
| 167 | the MSR FE0/FE1 bits to "Ignore Exceptions Mode". On most processors | ||
| 168 | this allows the fastest possible floating point execution.*/ | ||
| 169 | # define FE_MASK_ENV	FE_DFL_ENV | ||
| 170 | |||
| 171 | #endif | ||
| 172 | |||
| 173 | #if __GLIBC_USE (IEC_60559_BFP_EXT_C23) | ||
| 174 | /* Type representing floating-point control modes. */ | ||
| 175 | typedef double femode_t; | ||
| 176 | |||
| 177 | /* Default floating-point control modes. */ | ||
| 178 | extern const femode_t __fe_dfl_mode; | ||
| 179 | # define FE_DFL_MODE	(&__fe_dfl_mode) | ||
| 180 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64le-linux-gnu/bits/floatn.h deleted-122| ... | @@ -1,122 +0,0 @@ | ||
| 1 | /* Macros to control TS 18661-3 glibc features on powerpc. | ||
| 2 | Copyright (C) 2017-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_FLOATN_H | ||
| 20 | #define _BITS_FLOATN_H | ||
| 21 | |||
| 22 | #include <features.h> | ||
| 23 | #include <bits/long-double.h> | ||
| 24 | |||
| 25 | /* Defined to 1 if the current compiler invocation provides a | ||
| 26 | floating-point type with the IEEE 754 binary128 format, and this glibc | ||
| 27 | includes corresponding *f128 interfaces for it. */ | ||
| 28 | #if defined _ARCH_PWR8 && defined __LITTLE_ENDIAN__ && (_CALL_ELF == 2) \ | ||
| 29 | && defined __FLOAT128__ && !defined __NO_LONG_DOUBLE_MATH | ||
| 30 | # define __HAVE_FLOAT128 1 | ||
| 31 | #else | ||
| 32 | # define __HAVE_FLOAT128 0 | ||
| 33 | #endif | ||
| 34 | |||
| 35 | /* Defined to 1 if __HAVE_FLOAT128 is 1 and the type is ABI-distinct | ||
| 36 | from the default float, double and long double types in this glibc, i.e. | ||
| 37 | calls to the binary128 functions go to *f128 symbols instead of *l. */ | ||
| 38 | #if __HAVE_FLOAT128 | ||
| 39 | # define __HAVE_DISTINCT_FLOAT128 1 | ||
| 40 | #else | ||
| 41 | # define __HAVE_DISTINCT_FLOAT128 0 | ||
| 42 | #endif | ||
| 43 | |||
| 44 | /* Defined to 1 if the current compiler invocation provides a | ||
| 45 | floating-point type with the right format for _Float64x, and this | ||
| 46 | glibc includes corresponding *f64x interfaces for it. */ | ||
| 47 | #define __HAVE_FLOAT64X __HAVE_FLOAT128 | ||
| 48 | |||
| 49 | /* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format | ||
| 50 | of long double. Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has | ||
| 51 | the format of _Float128, which must be different from that of long | ||
| 52 | double. */ | ||
| 53 | #define __HAVE_FLOAT64X_LONG_DOUBLE 0 | ||
| 54 | |||
| 55 | #ifndef __ASSEMBLER__ | ||
| 56 | |||
| 57 | /* Defined to concatenate the literal suffix to be used with _Float128 | ||
| 58 | types, if __HAVE_FLOAT128 is 1. */ | ||
| 59 | # if __HAVE_FLOAT128 | ||
| 60 | # if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) | ||
| 61 | /* The literal suffix (f128) exist for powerpc only since GCC 7.0. */ | ||
| 62 | # if __LDBL_MANT_DIG__ == 113 | ||
| 63 | # define __f128(x) x##l | ||
| 64 | # else | ||
| 65 | # define __f128(x) x##q | ||
| 66 | # endif | ||
| 67 | # else | ||
| 68 | # define __f128(x) x##f128 | ||
| 69 | # endif | ||
| 70 | # endif | ||
| 71 | |||
| 72 | /* Defined to a complex binary128 type if __HAVE_FLOAT128 is 1. */ | ||
| 73 | # if __HAVE_FLOAT128 | ||
| 74 | # if __LDBL_MANT_DIG__ == 113 && defined __cplusplus && !__GNUC_PREREQ (13, 0) | ||
| 75 | typedef long double _Float128; | ||
| 76 | # define __CFLOAT128 _Complex long double | ||
| 77 | # elif !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) | ||
| 78 | /* The type _Float128 exist for powerpc only since GCC 7.0. */ | ||
| 79 | typedef __float128 _Float128; | ||
| 80 | /* Add a typedef for older GCC and C++ compilers which don't natively support | ||
| 81 | _Complex _Float128. */ | ||
| 82 | typedef _Complex float __cfloat128 __attribute__ ((__mode__ (__KC__))); | ||
| 83 | # define __CFLOAT128 __cfloat128 | ||
| 84 | # else | ||
| 85 | # define __CFLOAT128 _Complex _Float128 | ||
| 86 | # endif | ||
| 87 | # endif | ||
| 88 | |||
| 89 | /* The remaining of this file provides support for older compilers. */ | ||
| 90 | # if __HAVE_FLOAT128 | ||
| 91 | /* Builtin __builtin_huge_valf128 doesn't exist before GCC 7.0. */ | ||
| 92 | # if !__GNUC_PREREQ (7, 0) | ||
| 93 | # define __builtin_huge_valf128() ((_Float128) __builtin_huge_val ()) | ||
| 94 | # endif | ||
| 95 | |||
| 96 | /* The following builtins (suffixed with 'q') are available in GCC >= 6.2, | ||
| 97 | which is the minimum version required for float128 support on powerpc64le. | ||
| 98 | Since GCC 7.0 the builtins suffixed with f128 are also available, then | ||
| 99 | there is no need to redefined them. */ | ||
| 100 | # if !__GNUC_PREREQ (7, 0) | ||
| 101 | # define __builtin_copysignf128 __builtin_copysignq | ||
| 102 | # define __builtin_fabsf128 __builtin_fabsq | ||
| 103 | # define __builtin_inff128 __builtin_infq | ||
| 104 | # define __builtin_nanf128 __builtin_nanq | ||
| 105 | # define __builtin_nansf128 __builtin_nansq | ||
| 106 | # endif | ||
| 107 | |||
| 108 | /* In math/math.h, __MATH_TG will expand signbit to __builtin_signbit*, | ||
| 109 | e.g.: __builtin_signbitf128, before GCC 6. However, there has never | ||
| 110 | been a __builtin_signbitf128 in GCC and the type-generic builtin is | ||
| 111 | only available since GCC 6. */ | ||
| 112 | # if !__GNUC_PREREQ (6, 0) | ||
| 113 | # define __builtin_signbitf128 __signbitf128 | ||
| 114 | # endif | ||
| 115 | |||
| 116 | # endif | ||
| 117 | |||
| 118 | #endif /* !__ASSEMBLER__. */ | ||
| 119 | |||
| 120 | #include <bits/floatn-common.h> | ||
| 121 | |||
| 122 | #endif /* _BITS_FLOATN_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64le-linux-gnu/bits/fp-fast.h deleted-39| ... | @@ -1,39 +0,0 @@ | ||
| 1 | /* Define FP_FAST_* macros. PowerPC version. | ||
| 2 | Copyright (C) 2016-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _MATH_H | ||
| 20 | # error "Never use <bits/fp-fast.h> directly; include <math.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifdef __USE_ISOC99 | ||
| 24 | |||
| 25 | /* The GCC 4.6 compiler will define __FP_FAST_FMA{,F,L} if the fma{,f,l} | ||
| 26 | builtins are supported. */ | ||
| 27 | # if (!defined _SOFT_FLOAT && !defined __NO_FPRS__) || defined __FP_FAST_FMA | ||
| 28 | # define FP_FAST_FMA 1 | ||
| 29 | # endif | ||
| 30 | |||
| 31 | # if (!defined _SOFT_FLOAT && !defined __NO_FPRS__) || defined __FP_FAST_FMAF | ||
| 32 | # define FP_FAST_FMAF 1 | ||
| 33 | # endif | ||
| 34 | |||
| 35 | # ifdef __FP_FAST_FMAL | ||
| 36 | # define FP_FAST_FMAL 1 | ||
| 37 | # endif | ||
| 38 | |||
| 39 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64le-linux-gnu/bits/hwcap.h deleted-78| ... | @@ -1,78 +0,0 @@ | ||
| 1 | /* Defines for bits in AT_HWCAP and AT_HWCAP2. | ||
| 2 | Copyright (C) 2012-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #if !defined(_SYS_AUXV_H) && !defined(_SYSDEPS_SYSDEP_H) | ||
| 20 | # error "Never include <bits/hwcap.h> directly; use <sys/auxv.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* The bit numbers must match those in the kernel's asm/cputable.h. */ | ||
| 24 | |||
| 25 | /* Feature definitions in AT_HWCAP. */ | ||
| 26 | #define PPC_FEATURE_32		 0x80000000 /* 32-bit mode. */ | ||
| 27 | #define PPC_FEATURE_64		 0x40000000 /* 64-bit mode. */ | ||
| 28 | #define PPC_FEATURE_601_INSTR	 0x20000000 /* 601 chip, Old POWER ISA. */ | ||
| 29 | #define PPC_FEATURE_HAS_ALTIVEC	 0x10000000 /* SIMD/Vector Unit. */ | ||
| 30 | #define PPC_FEATURE_HAS_FPU	 0x08000000 /* Floating Point Unit. */ | ||
| 31 | #define PPC_FEATURE_HAS_MMU	 0x04000000 /* Memory Management Unit. */ | ||
| 32 | #define PPC_FEATURE_HAS_4xxMAC	 0x02000000 /* 4xx Multiply Accumulator. */ | ||
| 33 | #define PPC_FEATURE_UNIFIED_CACHE 0x01000000 /* Unified I/D cache. */ | ||
| 34 | #define PPC_FEATURE_HAS_SPE	 0x00800000 /* Signal Processing ext. */ | ||
| 35 | #define PPC_FEATURE_HAS_EFP_SINGLE 0x00400000 /* SPE Float. */ | ||
| 36 | #define PPC_FEATURE_HAS_EFP_DOUBLE 0x00200000 /* SPE Double. */ | ||
| 37 | #define PPC_FEATURE_NO_TB	 0x00100000 /* 601/403gx have no timebase */ | ||
| 38 | #define PPC_FEATURE_POWER4	 0x00080000 /* POWER4 ISA 2.00 */ | ||
| 39 | #define PPC_FEATURE_POWER5	 0x00040000 /* POWER5 ISA 2.02 */ | ||
| 40 | #define PPC_FEATURE_POWER5_PLUS	 0x00020000 /* POWER5+ ISA 2.03 */ | ||
| 41 | #define PPC_FEATURE_CELL_BE	 0x00010000 /* CELL Broadband Engine */ | ||
| 42 | #define PPC_FEATURE_BOOKE	 0x00008000 /* ISA Category Embedded */ | ||
| 43 | #define PPC_FEATURE_SMT		 0x00004000 /* Simultaneous | ||
| 44 | 						 Multi-Threading */ | ||
| 45 | #define PPC_FEATURE_ICACHE_SNOOP 0x00002000 | ||
| 46 | #define PPC_FEATURE_ARCH_2_05	 0x00001000 /* ISA 2.05 */ | ||
| 47 | #define PPC_FEATURE_PA6T	 0x00000800 /* PA Semi 6T Core */ | ||
| 48 | #define PPC_FEATURE_HAS_DFP	 0x00000400 /* Decimal FP Unit */ | ||
| 49 | #define PPC_FEATURE_POWER6_EXT	 0x00000200 /* P6 + mffgpr/mftgpr */ | ||
| 50 | #define PPC_FEATURE_ARCH_2_06	 0x00000100 /* ISA 2.06 */ | ||
| 51 | #define PPC_FEATURE_HAS_VSX	 0x00000080 /* P7 Vector Extension. */ | ||
| 52 | #define PPC_FEATURE_PSERIES_PERFMON_COMPAT 0x00000040 | ||
| 53 | /* Reserved by the kernel.	 0x00000004 Do not use. */ | ||
| 54 | #define PPC_FEATURE_TRUE_LE	 0x00000002 | ||
| 55 | #define PPC_FEATURE_PPC_LE	 0x00000001 | ||
| 56 | |||
| 57 | /* Feature definitions in AT_HWCAP2. */ | ||
| 58 | #define PPC_FEATURE2_ARCH_2_07 0x80000000 /* ISA 2.07 */ | ||
| 59 | #define PPC_FEATURE2_HAS_HTM 0x40000000 /* Hardware Transactional | ||
| 60 | 						 Memory */ | ||
| 61 | #define PPC_FEATURE2_HAS_DSCR 0x20000000 /* Data Stream Control | ||
| 62 | 						 Register */ | ||
| 63 | #define PPC_FEATURE2_HAS_EBB 0x10000000 /* Event Base Branching */ | ||
| 64 | #define PPC_FEATURE2_HAS_ISEL 0x08000000 /* Integer Select */ | ||
| 65 | #define PPC_FEATURE2_HAS_TAR 0x04000000 /* Target Address Register */ | ||
| 66 | #define PPC_FEATURE2_HAS_VEC_CRYPTO 0x02000000 /* Target supports vector | ||
| 67 | 						 instruction. */ | ||
| 68 | #define PPC_FEATURE2_HTM_NOSC	 0x01000000 /* Kernel aborts transaction | ||
| 69 | 						 when a syscall is made. */ | ||
| 70 | #define PPC_FEATURE2_ARCH_3_00	 0x00800000 /* ISA 3.0 */ | ||
| 71 | #define PPC_FEATURE2_HAS_IEEE128 0x00400000 /* VSX IEEE Binary Float | ||
| 72 | 						 128-bit */ | ||
| 73 | #define PPC_FEATURE2_DARN	 0x00200000 /* darn instruction. */ | ||
| 74 | #define PPC_FEATURE2_SCV	 0x00100000 /* scv syscall. */ | ||
| 75 | #define PPC_FEATURE2_HTM_NO_SUSPEND 0x00080000 /* TM without suspended | ||
| 76 | 						 state. */ | ||
| 77 | #define PPC_FEATURE2_ARCH_3_1	 0x00040000 /* ISA 3.1. */ | ||
| 78 | #define PPC_FEATURE2_MMA	 0x00020000 /* Matrix-Multiply Assist. */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64le-linux-gnu/bits/ioctl-types.h deleted-77| ... | @@ -1,77 +0,0 @@ | ||
| 1 | /* Structure types for pre-termios terminal ioctls. Linux/powerpc version. | ||
| 2 | Copyright (C) 2014-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_IOCTL_H | ||
| 20 | # error "Never use <bits/ioctl-types.h> directly; include <sys/ioctl.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Get definition of constants for use with `ioctl'. */ | ||
| 24 | #include <asm/ioctls.h> | ||
| 25 | |||
| 26 | |||
| 27 | struct winsize | ||
| 28 | { | ||
| 29 | unsigned short int ws_row; | ||
| 30 | unsigned short int ws_col; | ||
| 31 | unsigned short int ws_xpixel; | ||
| 32 | unsigned short int ws_ypixel; | ||
| 33 | }; | ||
| 34 | |||
| 35 | #define NCC 10 | ||
| 36 | struct termio | ||
| 37 | { | ||
| 38 | unsigned short int c_iflag;		/* input mode flags */ | ||
| 39 | unsigned short int c_oflag;		/* output mode flags */ | ||
| 40 | unsigned short int c_cflag;		/* control mode flags */ | ||
| 41 | unsigned short int c_lflag;		/* local mode flags */ | ||
| 42 | unsigned char c_line;		/* line discipline */ | ||
| 43 | unsigned char c_cc[NCC];		/* control characters */ | ||
| 44 | }; | ||
| 45 | |||
| 46 | /* modem lines */ | ||
| 47 | #define TIOCM_LE	0x001 | ||
| 48 | #define TIOCM_DTR	0x002 | ||
| 49 | #define TIOCM_RTS	0x004 | ||
| 50 | #define TIOCM_ST	0x008 | ||
| 51 | #define TIOCM_SR	0x010 | ||
| 52 | #define TIOCM_CTS	0x020 | ||
| 53 | #define TIOCM_CAR	0x040 | ||
| 54 | #define TIOCM_RNG	0x080 | ||
| 55 | #define TIOCM_DSR	0x100 | ||
| 56 | #define TIOCM_CD	TIOCM_CAR | ||
| 57 | #define TIOCM_RI	TIOCM_RNG | ||
| 58 | |||
| 59 | /* ioctl (fd, TIOCSERGETLSR, &result) where result may be as below */ | ||
| 60 | |||
| 61 | /* line disciplines */ | ||
| 62 | #define N_TTY		0 | ||
| 63 | #define N_SLIP		1 | ||
| 64 | #define N_MOUSE		2 | ||
| 65 | #define N_PPP		3 | ||
| 66 | #define N_STRIP		4 | ||
| 67 | #define N_AX25		5 | ||
| 68 | #define N_X25		6	/* X.25 async */ | ||
| 69 | #define N_6PACK		7 | ||
| 70 | #define N_MASC		8	/* Mobitex module */ | ||
| 71 | #define N_R3964		9	/* Simatic R3964 module */ | ||
| 72 | #define N_PROFIBUS_FDL	10	/* Profibus */ | ||
| 73 | #define N_IRDA		11	/* Linux IR */ | ||
| 74 | #define N_SMSBLOCK	12	/* SMS block mode */ | ||
| 75 | #define N_HDLC		13	/* synchronous HDLC */ | ||
| 76 | #define N_SYNC_PPP	14	/* synchronous PPP */ | ||
| 77 | #define	N_HCI		15	/* Bluetooth HCI UART */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64le-linux-gnu/bits/ipc-perm.h deleted-36| ... | @@ -1,36 +0,0 @@ | ||
| 1 | /* struct ipc_perm definition. Linux/powerpc version. | ||
| 2 | Copyright (C) 1995-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_IPC_H | ||
| 20 | # error "Never use <bits/ipc-perm.h> directly; include <sys/ipc.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Data structure used to pass permission information to IPC operations. */ | ||
| 24 | struct ipc_perm | ||
| 25 | { | ||
| 26 | __key_t __key;		/* Key. */ | ||
| 27 | __uid_t uid;		/* Owner's user ID. */ | ||
| 28 | __gid_t gid;		/* Owner's group ID. */ | ||
| 29 | __uid_t cuid;		/* Creator's user ID. */ | ||
| 30 | __gid_t cgid;		/* Creator's group ID. */ | ||
| 31 | __mode_t mode;		/* Read/write permission. */ | ||
| 32 | __uint32_t __seq;		/* Sequence number. */ | ||
| 33 | __uint32_t __pad1; | ||
| 34 | __uint64_t __glibc_reserved1; | ||
| 35 | __uint64_t __glibc_reserved2; | ||
| 36 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64le-linux-gnu/bits/iscanonical.h deleted-58| ... | @@ -1,58 +0,0 @@ | ||
| 1 | /* Define iscanonical macro. ldbl-128ibm version. | ||
| 2 | Copyright (C) 2016-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _MATH_H | ||
| 20 | # error "Never use <bits/iscanonical.h> directly; include <math.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #if defined (__NO_LONG_DOUBLE_MATH) || __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 1 | ||
| 24 | # define iscanonical(x) ((void) (__typeof (x)) (x), 1) | ||
| 25 | #else | ||
| 26 | extern int __iscanonicall (long double __x) | ||
| 27 | __THROW __attribute__ ((__const__)); | ||
| 28 | # define __iscanonicalf(x) ((void) (__typeof (x)) (x), 1) | ||
| 29 | # define __iscanonical(x) ((void) (__typeof (x)) (x), 1) | ||
| 30 | # if __HAVE_DISTINCT_FLOAT128 | ||
| 31 | # define __iscanonicalf128(x) ((void) (__typeof (x)) (x), 1) | ||
| 32 | # endif | ||
| 33 | |||
| 34 | /* Return nonzero value if X is canonical. In IEEE interchange binary | ||
| 35 | formats, all values are canonical, but the argument must still be | ||
| 36 | converted to its semantic type for any exceptions arising from the | ||
| 37 | conversion, before being discarded; in IBM long double, there are | ||
| 38 | encodings that are not consistently handled as corresponding to any | ||
| 39 | particular value of the type, and we return 0 for those. */ | ||
| 40 | # ifndef __cplusplus | ||
| 41 | # define iscanonical(x) __MATH_TG ((x), __iscanonical, (x)) | ||
| 42 | # else | ||
| 43 | /* In C++ mode, __MATH_TG cannot be used, because it relies on | ||
| 44 | __builtin_types_compatible_p, which is a C-only builtin. On the | ||
| 45 | other hand, overloading provides the means to distinguish between | ||
| 46 | the floating-point types. The overloading resolution will match | ||
| 47 | the correct parameter (regardless of type qualifiers (i.e.: const | ||
| 48 | and volatile)). */ | ||
| 49 | extern "C++" { | ||
| 50 | inline int iscanonical (float __val) { return __iscanonicalf (__val); } | ||
| 51 | inline int iscanonical (double __val) { return __iscanonical (__val); } | ||
| 52 | inline int iscanonical (long double __val) { return __iscanonicall (__val); } | ||
| 53 | # if __HAVE_DISTINCT_FLOAT128 | ||
| 54 | inline int iscanonical (_Float128 __val) { return __iscanonicalf128 (__val); } | ||
| 55 | # endif | ||
| 56 | } | ||
| 57 | # endif /* __cplusplus */ | ||
| 58 | #endif /* __NO_LONG_DOUBLE_MATH */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64le-linux-gnu/bits/link.h deleted-156| ... | @@ -1,156 +0,0 @@ | ||
| 1 | /* Machine-specific declarations for dynamic linker interface. PowerPC version | ||
| 2 | Copyright (C) 2004-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef	_LINK_H | ||
| 20 | # error "Never include <bits/link.h> directly; use <link.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | |||
| 24 | #if __ELF_NATIVE_CLASS == 32 | ||
| 25 | |||
| 26 | /* Registers for entry into PLT on PPC32. */ | ||
| 27 | typedef struct La_ppc32_regs | ||
| 28 | { | ||
| 29 | uint32_t lr_reg[8]; | ||
| 30 | double lr_fp[8]; | ||
| 31 | uint32_t lr_vreg[12][4]; | ||
| 32 | uint32_t lr_r1; | ||
| 33 | uint32_t lr_lr; | ||
| 34 | } La_ppc32_regs; | ||
| 35 | |||
| 36 | /* Return values for calls from PLT on PPC32. */ | ||
| 37 | typedef struct La_ppc32_retval | ||
| 38 | { | ||
| 39 | uint32_t lrv_r3; | ||
| 40 | uint32_t lrv_r4; | ||
| 41 | double lrv_fp[8]; | ||
| 42 | uint32_t lrv_v2[4]; | ||
| 43 | } La_ppc32_retval; | ||
| 44 | |||
| 45 | |||
| 46 | __BEGIN_DECLS | ||
| 47 | |||
| 48 | extern Elf32_Addr la_ppc32_gnu_pltenter (Elf32_Sym *__sym, | ||
| 49 | 					 unsigned int __ndx, | ||
| 50 | 					 uintptr_t *__refcook, | ||
| 51 | 					 uintptr_t *__defcook, | ||
| 52 | 					 La_ppc32_regs *__regs, | ||
| 53 | 					 unsigned int *__flags, | ||
| 54 | 					 const char *__symname, | ||
| 55 | 					 long int *__framesizep); | ||
| 56 | extern unsigned int la_ppc32_gnu_pltexit (Elf32_Sym *__sym, | ||
| 57 | 					 unsigned int __ndx, | ||
| 58 | 					 uintptr_t *__refcook, | ||
| 59 | 					 uintptr_t *__defcook, | ||
| 60 | 					 const La_ppc32_regs *__inregs, | ||
| 61 | 					 La_ppc32_retval *__outregs, | ||
| 62 | 					 const char *__symname); | ||
| 63 | |||
| 64 | __END_DECLS | ||
| 65 | |||
| 66 | #elif __ELF_NATIVE_CLASS == 64 | ||
| 67 | # if _CALL_ELF != 2 | ||
| 68 | |||
| 69 | /* Registers for entry into PLT on PPC64. */ | ||
| 70 | typedef struct La_ppc64_regs | ||
| 71 | { | ||
| 72 | uint64_t lr_reg[8]; | ||
| 73 | double lr_fp[13]; | ||
| 74 | uint32_t __padding; | ||
| 75 | uint32_t lr_vrsave; | ||
| 76 | uint32_t lr_vreg[12][4]; | ||
| 77 | uint64_t lr_r1; | ||
| 78 | uint64_t lr_lr; | ||
| 79 | } La_ppc64_regs; | ||
| 80 | |||
| 81 | /* Return values for calls from PLT on PPC64. */ | ||
| 82 | typedef struct La_ppc64_retval | ||
| 83 | { | ||
| 84 | uint64_t lrv_r3; | ||
| 85 | uint64_t lrv_r4; | ||
| 86 | double lrv_fp[4];	/* f1-f4, float - complex long double. */ | ||
| 87 | uint32_t lrv_v2[4];	/* v2. */ | ||
| 88 | } La_ppc64_retval; | ||
| 89 | |||
| 90 | |||
| 91 | __BEGIN_DECLS | ||
| 92 | |||
| 93 | extern Elf64_Addr la_ppc64_gnu_pltenter (Elf64_Sym *__sym, | ||
| 94 | 					 unsigned int __ndx, | ||
| 95 | 					 uintptr_t *__refcook, | ||
| 96 | 					 uintptr_t *__defcook, | ||
| 97 | 					 La_ppc64_regs *__regs, | ||
| 98 | 					 unsigned int *__flags, | ||
| 99 | 					 const char *__symname, | ||
| 100 | 					 long int *__framesizep); | ||
| 101 | extern unsigned int la_ppc64_gnu_pltexit (Elf64_Sym *__sym, | ||
| 102 | 					 unsigned int __ndx, | ||
| 103 | 					 uintptr_t *__refcook, | ||
| 104 | 					 uintptr_t *__defcook, | ||
| 105 | 					 const La_ppc64_regs *__inregs, | ||
| 106 | 					 La_ppc64_retval *__outregs, | ||
| 107 | 					 const char *__symname); | ||
| 108 | |||
| 109 | __END_DECLS | ||
| 110 | |||
| 111 | # else | ||
| 112 | |||
| 113 | /* Registers for entry into PLT on PPC64 in the ELFv2 ABI. */ | ||
| 114 | typedef struct La_ppc64v2_regs | ||
| 115 | { | ||
| 116 | uint64_t lr_reg[8]; | ||
| 117 | double lr_fp[13]; | ||
| 118 | uint32_t __padding; | ||
| 119 | uint32_t lr_vrsave; | ||
| 120 | uint32_t lr_vreg[12][4] __attribute__ ((aligned (16))); | ||
| 121 | uint64_t lr_r1; | ||
| 122 | uint64_t lr_lr; | ||
| 123 | } La_ppc64v2_regs; | ||
| 124 | |||
| 125 | /* Return values for calls from PLT on PPC64 in the ELFv2 ABI. */ | ||
| 126 | typedef struct La_ppc64v2_retval | ||
| 127 | { | ||
| 128 | uint64_t lrv_r3; | ||
| 129 | uint64_t lrv_r4; | ||
| 130 | double lrv_fp[10]; | ||
| 131 | uint32_t lrv_vreg[8][4] __attribute__ ((aligned (16))); | ||
| 132 | } La_ppc64v2_retval; | ||
| 133 | |||
| 134 | |||
| 135 | __BEGIN_DECLS | ||
| 136 | |||
| 137 | extern Elf64_Addr la_ppc64v2_gnu_pltenter (Elf64_Sym *__sym, | ||
| 138 | 					 unsigned int __ndx, | ||
| 139 | 					 uintptr_t *__refcook, | ||
| 140 | 					 uintptr_t *__defcook, | ||
| 141 | 					 La_ppc64v2_regs *__regs, | ||
| 142 | 					 unsigned int *__flags, | ||
| 143 | 					 const char *__symname, | ||
| 144 | 					 long int *__framesizep); | ||
| 145 | extern unsigned int la_ppc64v2_gnu_pltexit (Elf64_Sym *__sym, | ||
| 146 | 					 unsigned int __ndx, | ||
| 147 | 					 uintptr_t *__refcook, | ||
| 148 | 					 uintptr_t *__defcook, | ||
| 149 | 					 const La_ppc64v2_regs *__inregs, | ||
| 150 | 					 La_ppc64v2_retval *__outregs, | ||
| 151 | 					 const char *__symname); | ||
| 152 | |||
| 153 | __END_DECLS | ||
| 154 | |||
| 155 | # endif | ||
| 156 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64le-linux-gnu/bits/long-double.h deleted-26| ... | @@ -1,26 +0,0 @@ | ||
| 1 | /* Properties of long double type. ldbl-opt version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef __NO_LONG_DOUBLE_MATH | ||
| 20 | # define __LONG_DOUBLE_MATH_OPTIONAL	1 | ||
| 21 | # ifndef __LONG_DOUBLE_128__ | ||
| 22 | # define __NO_LONG_DOUBLE_MATH		1 | ||
| 23 | # endif | ||
| 24 | #endif | ||
| 25 | |||
| 26 | #define __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI (__LDBL_MANT_DIG__ == 113) | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64le-linux-gnu/bits/mman.h deleted-51| ... | @@ -1,51 +0,0 @@ | ||
| 1 | /* Definitions for POSIX memory map interface. Linux/PowerPC version. | ||
| 2 | Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_MMAN_H | ||
| 20 | # error "Never use <bits/mman.h> directly; include <sys/mman.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* The following definitions basically come from the kernel headers. | ||
| 24 | But the kernel header is not namespace clean. */ | ||
| 25 | |||
| 26 | #define PROT_SAO	0x10		/* Strong Access Ordering. */ | ||
| 27 | |||
| 28 | /* These are Linux-specific. */ | ||
| 29 | #define MAP_GROWSDOWN	0x00100		/* Stack-like segment. */ | ||
| 30 | #define MAP_DENYWRITE	0x00800		/* ETXTBSY */ | ||
| 31 | #define MAP_EXECUTABLE	0x01000		/* Mark it as an executable. */ | ||
| 32 | #define MAP_LOCKED	0x00080		/* Lock the mapping. */ | ||
| 33 | #define MAP_NORESERVE	0x00040		/* Don't check for reservations. */ | ||
| 34 | #define MAP_POPULATE	0x08000		/* Populate (prefault) pagetables. */ | ||
| 35 | #define MAP_NONBLOCK	0x10000		/* Do not block on IO. */ | ||
| 36 | #define MAP_STACK	0x20000		/* Allocation is for a stack. */ | ||
| 37 | #define MAP_HUGETLB	0x40000		/* Create huge page mapping. */ | ||
| 38 | #define MAP_SYNC	0x80000		/* Perform synchronous page | ||
| 39 | 					 faults for the mapping. */ | ||
| 40 | #define MAP_FIXED_NOREPLACE 0x100000	/* MAP_FIXED but do not unmap | ||
| 41 | 					 underlying mapping. */ | ||
| 42 | |||
| 43 | /* Flags for `mlockall'. */ | ||
| 44 | #define MCL_CURRENT	0x2000		/* Lock all currently mapped pages. */ | ||
| 45 | #define MCL_FUTURE	0x4000		/* Lock all additions to address | ||
| 46 | 					 space. */ | ||
| 47 | #define MCL_ONFAULT	0x8000		/* Lock all pages that are | ||
| 48 | 					 faulted in. */ | ||
| 49 | |||
| 50 | /* Include generic Linux declarations. */ | ||
| 51 | #include <bits/mman-linux.h> | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64le-linux-gnu/bits/procfs.h deleted-49| ... | @@ -1,49 +0,0 @@ | ||
| 1 | /* Types for registers for sys/procfs.h. PowerPC version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_PROCFS_H | ||
| 20 | # error "Never include <bits/procfs.h> directly; use <sys/procfs.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <signal.h> | ||
| 24 | #include <sys/ucontext.h> | ||
| 25 | |||
| 26 | /* These definitions are normally provided by ucontext.h via | ||
| 27 | asm/sigcontext.h, asm/ptrace.h, and asm/elf.h. Otherwise we define | ||
| 28 | them here. */ | ||
| 29 | #if !defined __PPC64_ELF_H && !defined _ASM_POWERPC_ELF_H | ||
| 30 | #define ELF_NGREG 48 /* includes nip, msr, lr, etc. */ | ||
| 31 | #define ELF_NFPREG 33 /* includes fpscr */ | ||
| 32 | #if __WORDSIZE == 32 | ||
| 33 | # define ELF_NVRREG 33 /* includes vscr */ | ||
| 34 | #else | ||
| 35 | # define ELF_NVRREG 34 /* includes vscr */ | ||
| 36 | #endif | ||
| 37 | |||
| 38 | typedef unsigned long elf_greg_t; | ||
| 39 | typedef elf_greg_t elf_gregset_t[ELF_NGREG]; | ||
| 40 | |||
| 41 | typedef double elf_fpreg_t; | ||
| 42 | typedef elf_fpreg_t elf_fpregset_t[ELF_NFPREG]; | ||
| 43 | |||
| 44 | /* Altivec registers */ | ||
| 45 | typedef struct { | ||
| 46 | unsigned int u[4]; | ||
| 47 | } __attribute__ ((__aligned__ (16))) elf_vrreg_t; | ||
| 48 | typedef elf_vrreg_t elf_vrregset_t[ELF_NVRREG]; | ||
| 49 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64le-linux-gnu/bits/pthread_stack_min.h deleted-21| ... | @@ -1,21 +0,0 @@ | ||
| 1 | /* Definition of PTHREAD_STACK_MIN. Linux/PPC version. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public License as | ||
| 7 | published by the Free Software Foundation; either version 2.1 of the | ||
| 8 | License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; see the file COPYING.LIB. If | ||
| 17 | not, see <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* Minimum size for a thread. At least two pages for systems with 64k | ||
| 20 | pages. */ | ||
| 21 | #define PTHREAD_STACK_MIN	131072 | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64le-linux-gnu/bits/rseq.h deleted-37| ... | @@ -1,37 +0,0 @@ | ||
| 1 | /* Restartable Sequences Linux powerpc architecture header. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_RSEQ_H | ||
| 19 | # error "Never use <bits/rseq.h> directly; include <sys/rseq.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* RSEQ_SIG is a signature required before each abort handler code. | ||
| 23 | |||
| 24 | It is a 32-bit value that maps to actual architecture code compiled | ||
| 25 | into applications and libraries. It needs to be defined for each | ||
| 26 | architecture. When choosing this value, it needs to be taken into | ||
| 27 | account that generating invalid instructions may have ill effects on | ||
| 28 | tools like objdump, and may also have impact on the CPU speculative | ||
| 29 | execution efficiency in some cases. | ||
| 30 | |||
| 31 | RSEQ_SIG uses the following trap instruction: | ||
| 32 | |||
| 33 | powerpc-be: 0f e5 00 0b twui r5,11 | ||
| 34 | powerpc64-le: 0b 00 e5 0f twui r5,11 | ||
| 35 | powerpc64-be: 0f e5 00 0b twui r5,11 */ | ||
| 36 | |||
| 37 | #define RSEQ_SIG 0x0fe5000b | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64le-linux-gnu/bits/setjmp.h deleted-50| ... | @@ -1,50 +0,0 @@ | ||
| 1 | /* Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | /* Define the machine-dependent type `jmp_buf'. PowerPC version. */ | ||
| 19 | #ifndef _BITS_SETJMP_H | ||
| 20 | #define _BITS_SETJMP_H 1 | ||
| 21 | |||
| 22 | #if !defined _SETJMP_H && !defined _PTHREAD_H | ||
| 23 | # error "Never include <bits/setjmp.h> directly; use <setjmp.h> instead." | ||
| 24 | #endif | ||
| 25 | |||
| 26 | /* The previous bits/setjmp.h had __jmp_buf defined as a structure. | ||
| 27 | We use an array of 'long int' instead, to make writing the | ||
| 28 | assembler easier. Naturally, user code should not depend on | ||
| 29 | either representation. */ | ||
| 30 | |||
| 31 | #include <bits/wordsize.h> | ||
| 32 | |||
| 33 | /* The current powerpc 32-bit Altivec ABI specifies for SVR4 ABI and EABI | ||
| 34 | the vrsave must be at byte 248 & v20 at byte 256. So we must pad this | ||
| 35 | correctly on 32 bit. It also insists that vecregs are only guaranteed | ||
| 36 | 4 byte alignment so we need to use vperm in the setjmp/longjmp routines. | ||
| 37 | We have to version the code because members like int __mask_was_saved | ||
| 38 | in the jmp_buf will move as jmp_buf is now larger than 248 bytes. We | ||
| 39 | cannot keep the altivec jmp_buf backward compatible with the jmp_buf. */ | ||
| 40 | #ifndef	_ASM | ||
| 41 | # if __WORDSIZE == 64 | ||
| 42 | typedef long int __jmp_buf[64] __attribute__ ((__aligned__ (16))); | ||
| 43 | # else | ||
| 44 | /* The alignment is not essential, i.e.the buffer can be copied to a 4 byte | ||
| 45 | aligned buffer as per the ABI it is just added for performance reasons. */ | ||
| 46 | typedef long int __jmp_buf[64 + (12 * 4)] __attribute__ ((__aligned__ (16))); | ||
| 47 | # endif | ||
| 48 | #endif | ||
| 49 | |||
| 50 | #endif /* bits/setjmp.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64le-linux-gnu/bits/sigstack.h deleted-37| ... | @@ -1,37 +0,0 @@ | ||
| 1 | /* sigstack, sigaltstack definitions. | ||
| 2 | Copyright (C) 1998-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_SIGSTACK_H | ||
| 20 | #define _BITS_SIGSTACK_H 1 | ||
| 21 | |||
| 22 | #if !defined _SIGNAL_H && !defined _SYS_UCONTEXT_H | ||
| 23 | # error "Never include this file directly. Use <signal.h> instead" | ||
| 24 | #endif | ||
| 25 | |||
| 26 | #ifdef __powerpc64__ | ||
| 27 | #define MINSIGSTKSZ	8192 | ||
| 28 | #define SIGSTKSZ	32768 | ||
| 29 | #else | ||
| 30 | /* Minimum stack size for a signal handler. */ | ||
| 31 | #define MINSIGSTKSZ	4096 | ||
| 32 | |||
| 33 | /* System default stack size. */ | ||
| 34 | #define SIGSTKSZ	16384 | ||
| 35 | #endif | ||
| 36 | |||
| 37 | #endif /* bits/sigstack.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64le-linux-gnu/bits/socket-constants.h deleted-70| ... | @@ -1,70 +0,0 @@ | ||
| 1 | /* Socket constants which vary among Linux architectures. Version for POWER. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SOCKET_H | ||
| 20 | # error "Never include <bits/socket-constants.h> directly; use <sys/socket.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #define SOL_SOCKET 1 | ||
| 24 | #define SO_ACCEPTCONN 30 | ||
| 25 | #define SO_BROADCAST 6 | ||
| 26 | #define SO_DONTROUTE 5 | ||
| 27 | #define SO_ERROR 4 | ||
| 28 | #define SO_KEEPALIVE 9 | ||
| 29 | #define SO_LINGER 13 | ||
| 30 | #define SO_OOBINLINE 10 | ||
| 31 | #define SO_RCVBUF 8 | ||
| 32 | #define SO_RCVLOWAT 16 | ||
| 33 | #define SO_REUSEADDR 2 | ||
| 34 | #define SO_SNDBUF 7 | ||
| 35 | #define SO_SNDLOWAT 17 | ||
| 36 | #define SO_TYPE 3 | ||
| 37 | |||
| 38 | #if __TIMESIZE == 64 | ||
| 39 | # define SO_RCVTIMEO 18 | ||
| 40 | # define SO_SNDTIMEO 19 | ||
| 41 | # define SO_TIMESTAMP 29 | ||
| 42 | # define SO_TIMESTAMPNS 35 | ||
| 43 | # define SO_TIMESTAMPING 37 | ||
| 44 | #else | ||
| 45 | # define SO_RCVTIMEO_OLD 18 | ||
| 46 | # define SO_SNDTIMEO_OLD 19 | ||
| 47 | # define SO_RCVTIMEO_NEW 66 | ||
| 48 | # define SO_SNDTIMEO_NEW 67 | ||
| 49 | |||
| 50 | # define SO_TIMESTAMP_OLD 29 | ||
| 51 | # define SO_TIMESTAMPNS_OLD 35 | ||
| 52 | # define SO_TIMESTAMPING_OLD 37 | ||
| 53 | # define SO_TIMESTAMP_NEW 63 | ||
| 54 | # define SO_TIMESTAMPNS_NEW 64 | ||
| 55 | # define SO_TIMESTAMPING_NEW 65 | ||
| 56 | |||
| 57 | # ifdef __USE_TIME64_REDIRECTS | ||
| 58 | # define SO_RCVTIMEO SO_RCVTIMEO_NEW | ||
| 59 | # define SO_SNDTIMEO SO_SNDTIMEO_NEW | ||
| 60 | # define SO_TIMESTAMP SO_TIMESTAMP_NEW | ||
| 61 | # define SO_TIMESTAMPNS SO_TIMESTAMPNS_NEW | ||
| 62 | # define SO_TIMESTAMPING SO_TIMESTAMPING_NEW | ||
| 63 | # else | ||
| 64 | # define SO_RCVTIMEO SO_RCVTIMEO_OLD | ||
| 65 | # define SO_SNDTIMEO SO_SNDTIMEO_OLD | ||
| 66 | # define SO_TIMESTAMP SO_TIMESTAMP_OLD | ||
| 67 | # define SO_TIMESTAMPNS SO_TIMESTAMPNS_OLD | ||
| 68 | # define SO_TIMESTAMPING SO_TIMESTAMPING_OLD | ||
| 69 | # endif | ||
| 70 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64le-linux-gnu/bits/struct_mutex.h deleted-63| ... | @@ -1,63 +0,0 @@ | ||
| 1 | /* PowerPC internal mutex struct definitions. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <http://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _THREAD_MUTEX_INTERNAL_H | ||
| 20 | #define _THREAD_MUTEX_INTERNAL_H 1 | ||
| 21 | |||
| 22 | struct __pthread_mutex_s | ||
| 23 | { | ||
| 24 | int __lock; | ||
| 25 | unsigned int __count; | ||
| 26 | int __owner; | ||
| 27 | #if __WORDSIZE == 64 | ||
| 28 | unsigned int __nusers; | ||
| 29 | #endif | ||
| 30 | /* KIND must stay at this position in the structure to maintain | ||
| 31 | binary compatibility with static initializers. */ | ||
| 32 | int __kind; | ||
| 33 | #if __WORDSIZE == 64 | ||
| 34 | short __spins; | ||
| 35 | short __elision; | ||
| 36 | __pthread_list_t __list; | ||
| 37 | # define __PTHREAD_MUTEX_HAVE_PREV 1 | ||
| 38 | #else | ||
| 39 | unsigned int __nusers; | ||
| 40 | __extension__ union | ||
| 41 | { | ||
| 42 | struct | ||
| 43 | { | ||
| 44 | short __espins; | ||
| 45 | short __elision; | ||
| 46 | # define __spins __elision_data.__espins | ||
| 47 | # define __elision __elision_data.__elision | ||
| 48 | } __elision_data; | ||
| 49 | __pthread_slist_t __list; | ||
| 50 | }; | ||
| 51 | # define __PTHREAD_MUTEX_HAVE_PREV 0 | ||
| 52 | #endif | ||
| 53 | }; | ||
| 54 | |||
| 55 | #if __WORDSIZE == 64 | ||
| 56 | # define __PTHREAD_MUTEX_INITIALIZER(__kind) \ | ||
| 57 | 0, 0, 0, 0, __kind, 0, 0, { 0, 0 } | ||
| 58 | #else | ||
| 59 | # define __PTHREAD_MUTEX_INITIALIZER(__kind) \ | ||
| 60 | 0, 0, 0, __kind, 0, { { 0, 0 } } | ||
| 61 | #endif | ||
| 62 | |||
| 63 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64le-linux-gnu/bits/struct_rwlock.h deleted-61| ... | @@ -1,61 +0,0 @@ | ||
| 1 | /* PowerPC internal rwlock struct definitions. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library; if not, see | ||
| 18 | <http://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifndef _RWLOCK_INTERNAL_H | ||
| 21 | #define _RWLOCK_INTERNAL_H | ||
| 22 | |||
| 23 | struct __pthread_rwlock_arch_t | ||
| 24 | { | ||
| 25 | unsigned int __readers; | ||
| 26 | unsigned int __writers; | ||
| 27 | unsigned int __wrphase_futex; | ||
| 28 | unsigned int __writers_futex; | ||
| 29 | unsigned int __pad3; | ||
| 30 | unsigned int __pad4; | ||
| 31 | #if __WORDSIZE == 64 | ||
| 32 | int __cur_writer; | ||
| 33 | int __shared; | ||
| 34 | unsigned char __rwelision; | ||
| 35 | unsigned char __pad1[7]; | ||
| 36 | unsigned long int __pad2; | ||
| 37 | /* FLAGS must stay at this position in the structure to maintain | ||
| 38 | binary compatibility. */ | ||
| 39 | unsigned int __flags; | ||
| 40 | # define __PTHREAD_RWLOCK_ELISION_EXTRA 0, {0, 0, 0, 0, 0, 0, 0 } | ||
| 41 | #else | ||
| 42 | unsigned char __rwelision; | ||
| 43 | unsigned char __pad2; | ||
| 44 | unsigned char __shared; | ||
| 45 | /* FLAGS must stay at this position in the structure to maintain | ||
| 46 | binary compatibility. */ | ||
| 47 | unsigned char __flags; | ||
| 48 | int __cur_writer; | ||
| 49 | # define __PTHREAD_RWLOCK_ELISION_EXTRA 0 | ||
| 50 | #endif | ||
| 51 | }; | ||
| 52 | |||
| 53 | #if __WORDSIZE == 64 | ||
| 54 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 55 | 0, 0, 0, 0, 0, 0, 0, 0, __PTHREAD_RWLOCK_ELISION_EXTRA, 0, __flags | ||
| 56 | #else | ||
| 57 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 58 | 0, 0, 0, 0, 0, 0, __PTHREAD_RWLOCK_ELISION_EXTRA, 0, 0, __flags, 0 | ||
| 59 | #endif | ||
| 60 | |||
| 61 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64le-linux-gnu/bits/struct_stat.h deleted-231| ... | @@ -1,231 +0,0 @@ | ||
| 1 | /* Definition for struct stat. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #if !defined _SYS_STAT_H && !defined _FCNTL_H | ||
| 20 | # error "Never include <bits/struct_stat.h> directly; use <sys/stat.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef _BITS_STRUCT_STAT_H | ||
| 24 | #define _BITS_STRUCT_STAT_H	1 | ||
| 25 | |||
| 26 | #include <bits/wordsize.h> | ||
| 27 | |||
| 28 | #if __WORDSIZE == 32 | ||
| 29 | struct stat | ||
| 30 | { | ||
| 31 | # ifdef __USE_TIME64_REDIRECTS | ||
| 32 | # include <bits/struct_stat_time64_helper.h> | ||
| 33 | # else | ||
| 34 | __dev_t st_dev;			/* Device. */ | ||
| 35 | # ifndef __USE_FILE_OFFSET64 | ||
| 36 | unsigned short int __pad1; | ||
| 37 | __ino_t st_ino;			/* File serial number.	*/ | ||
| 38 | # else | ||
| 39 | __ino64_t st_ino;			/* File serial number.	*/ | ||
| 40 | # endif | ||
| 41 | __mode_t st_mode;			/* File mode. */ | ||
| 42 | __nlink_t st_nlink;			/* Link count. */ | ||
| 43 | __uid_t st_uid;			/* User ID of the file's owner.	*/ | ||
| 44 | __gid_t st_gid;			/* Group ID of the file's group.*/ | ||
| 45 | __dev_t st_rdev;			/* Device number, if device. */ | ||
| 46 | unsigned short int __pad2; | ||
| 47 | # ifndef __USE_FILE_OFFSET64 | ||
| 48 | __off_t st_size;			/* Size of file, in bytes. */ | ||
| 49 | # else | ||
| 50 | __off64_t st_size;			/* Size of file, in bytes. */ | ||
| 51 | # endif | ||
| 52 | __blksize_t st_blksize;		/* Optimal block size for I/O. */ | ||
| 53 | |||
| 54 | # ifndef __USE_FILE_OFFSET64 | ||
| 55 | __blkcnt_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 56 | # else | ||
| 57 | __blkcnt64_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 58 | # endif | ||
| 59 | # ifdef __USE_XOPEN2K8 | ||
| 60 | /* Nanosecond resolution timestamps are stored in a format | ||
| 61 | equivalent to 'struct timespec'. This is the type used | ||
| 62 | whenever possible but the Unix namespace rules do not allow the | ||
| 63 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 64 | Therefore we have to handle the use of this header in strictly | ||
| 65 | standard-compliant sources special. */ | ||
| 66 | struct timespec st_atim;		/* Time of last access. */ | ||
| 67 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 68 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 69 | # define st_atime st_atim.tv_sec	/* Backward compatibility. */ | ||
| 70 | # define st_mtime st_mtim.tv_sec | ||
| 71 | # define st_ctime st_ctim.tv_sec | ||
| 72 | # else | ||
| 73 | __time_t st_atime;			/* Time of last access. */ | ||
| 74 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 75 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 76 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 77 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 78 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 79 | # endif | ||
| 80 | unsigned long int __glibc_reserved4; | ||
| 81 | unsigned long int __glibc_reserved5; | ||
| 82 | # endif /* __USE_TIME64_REDIRECTS */ | ||
| 83 | }; | ||
| 84 | |||
| 85 | # ifdef __USE_LARGEFILE64 | ||
| 86 | struct stat64 | ||
| 87 | { | ||
| 88 | # ifdef __USE_TIME64_REDIRECTS | ||
| 89 | # include <bits/struct_stat_time64_helper.h> | ||
| 90 | # else | ||
| 91 | __dev_t st_dev;			/* Device. */ | ||
| 92 | __ino64_t st_ino;			/* File serial number.	*/ | ||
| 93 | __mode_t st_mode;			/* File mode. */ | ||
| 94 | __nlink_t st_nlink;			/* Link count. */ | ||
| 95 | __uid_t st_uid;			/* User ID of the file's owner.	*/ | ||
| 96 | __gid_t st_gid;			/* Group ID of the file's group.*/ | ||
| 97 | __dev_t st_rdev;			/* Device number, if device. */ | ||
| 98 | unsigned short int __pad2; | ||
| 99 | __off64_t st_size;			/* Size of file, in bytes. */ | ||
| 100 | __blksize_t st_blksize;		/* Optimal block size for I/O. */ | ||
| 101 | __blkcnt64_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 102 | # ifdef __USE_XOPEN2K8 | ||
| 103 | /* Nanosecond resolution timestamps are stored in a format | ||
| 104 | equivalent to 'struct timespec'. This is the type used | ||
| 105 | whenever possible but the Unix namespace rules do not allow the | ||
| 106 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 107 | Therefore we have to handle the use of this header in strictly | ||
| 108 | standard-compliant sources special. */ | ||
| 109 | struct timespec st_atim;		/* Time of last access. */ | ||
| 110 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 111 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 112 | # define st_atime st_atim.tv_sec	/* Backward compatibility. */ | ||
| 113 | # define st_mtime st_mtim.tv_sec | ||
| 114 | # define st_ctime st_ctim.tv_sec | ||
| 115 | # else | ||
| 116 | __time_t st_atime;			/* Time of last access. */ | ||
| 117 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 118 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 119 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 120 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 121 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 122 | # endif | ||
| 123 | unsigned long int __glibc_reserved4; | ||
| 124 | unsigned long int __glibc_reserved5; | ||
| 125 | # endif /* __USE_TIME64_REDIRECTS */ | ||
| 126 | }; | ||
| 127 | # endif /* __USE_LARGEFILE64 */ | ||
| 128 | |||
| 129 | #else /* __WORDSIZE == 32 */ | ||
| 130 | |||
| 131 | struct stat | ||
| 132 | { | ||
| 133 | __dev_t st_dev;			/* Device. */ | ||
| 134 | # ifndef __USE_FILE_OFFSET64 | ||
| 135 | __ino_t st_ino;			/* File serial number.	*/ | ||
| 136 | # else | ||
| 137 | __ino64_t st_ino;			/* File serial number.	*/ | ||
| 138 | # endif | ||
| 139 | __nlink_t st_nlink;			/* Link count. */ | ||
| 140 | __mode_t st_mode;			/* File mode. */ | ||
| 141 | __uid_t st_uid;			/* User ID of the file's owner.	*/ | ||
| 142 | __gid_t st_gid;			/* Group ID of the file's group.*/ | ||
| 143 | int __pad2; | ||
| 144 | __dev_t st_rdev;			/* Device number, if device. */ | ||
| 145 | # ifndef __USE_FILE_OFFSET64 | ||
| 146 | __off_t st_size;			/* Size of file, in bytes. */ | ||
| 147 | # else | ||
| 148 | __off64_t st_size;			/* Size of file, in bytes. */ | ||
| 149 | # endif | ||
| 150 | __blksize_t st_blksize;		/* Optimal block size for I/O. */ | ||
| 151 | |||
| 152 | # ifndef __USE_FILE_OFFSET64 | ||
| 153 | __blkcnt_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 154 | # else | ||
| 155 | __blkcnt64_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 156 | # endif | ||
| 157 | # ifdef __USE_XOPEN2K8 | ||
| 158 | /* Nanosecond resolution timestamps are stored in a format | ||
| 159 | equivalent to 'struct timespec'. This is the type used | ||
| 160 | whenever possible but the Unix namespace rules do not allow the | ||
| 161 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 162 | Therefore we have to handle the use of this header in strictly | ||
| 163 | standard-compliant sources special. */ | ||
| 164 | struct timespec st_atim;		/* Time of last access. */ | ||
| 165 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 166 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 167 | # define st_atime st_atim.tv_sec	/* Backward compatibility. */ | ||
| 168 | # define st_mtime st_mtim.tv_sec | ||
| 169 | # define st_ctime st_ctim.tv_sec | ||
| 170 | # else | ||
| 171 | __time_t st_atime;			/* Time of last access. */ | ||
| 172 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 173 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 174 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 175 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 176 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 177 | # endif | ||
| 178 | unsigned long int __glibc_reserved4; | ||
| 179 | unsigned long int __glibc_reserved5; | ||
| 180 | unsigned long int __glibc_reserved6; | ||
| 181 | }; | ||
| 182 | |||
| 183 | # ifdef __USE_LARGEFILE64 | ||
| 184 | struct stat64 | ||
| 185 | { | ||
| 186 | __dev_t st_dev;			/* Device. */ | ||
| 187 | __ino64_t st_ino;			/* File serial number.	*/ | ||
| 188 | __nlink_t st_nlink;			/* Link count. */ | ||
| 189 | __mode_t st_mode;			/* File mode. */ | ||
| 190 | __uid_t st_uid;			/* User ID of the file's owner.	*/ | ||
| 191 | __gid_t st_gid;			/* Group ID of the file's group.*/ | ||
| 192 | int __pad2; | ||
| 193 | __dev_t st_rdev;			/* Device number, if device. */ | ||
| 194 | __off64_t st_size;			/* Size of file, in bytes. */ | ||
| 195 | __blksize_t st_blksize;		/* Optimal block size for I/O. */ | ||
| 196 | __blkcnt64_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 197 | # ifdef __USE_XOPEN2K8 | ||
| 198 | /* Nanosecond resolution timestamps are stored in a format | ||
| 199 | equivalent to 'struct timespec'. This is the type used | ||
| 200 | whenever possible but the Unix namespace rules do not allow the | ||
| 201 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 202 | Therefore we have to handle the use of this header in strictly | ||
| 203 | standard-compliant sources special. */ | ||
| 204 | struct timespec st_atim;		/* Time of last access. */ | ||
| 205 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 206 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 207 | # define st_atime st_atim.tv_sec	/* Backward compatibility. */ | ||
| 208 | # define st_mtime st_mtim.tv_sec | ||
| 209 | # define st_ctime st_ctim.tv_sec | ||
| 210 | # else | ||
| 211 | __time_t st_atime;			/* Time of last access. */ | ||
| 212 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 213 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 214 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 215 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 216 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 217 | # endif | ||
| 218 | unsigned long int __glibc_reserved4; | ||
| 219 | unsigned long int __glibc_reserved5; | ||
| 220 | unsigned long int __glibc_reserved6; | ||
| 221 | }; | ||
| 222 | # endif /* __USE_LARGEFILE64 */ | ||
| 223 | #endif | ||
| 224 | |||
| 225 | /* Tell code we have these members. */ | ||
| 226 | #define	_STATBUF_ST_BLKSIZE | ||
| 227 | #define _STATBUF_ST_RDEV | ||
| 228 | /* Nanosecond resolution time values are supported. */ | ||
| 229 | #define _STATBUF_ST_NSEC | ||
| 230 | |||
| 231 | #endif /* _BITS_STRUCT_STAT_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64le-linux-gnu/bits/termios-baud.h deleted-45| ... | @@ -1,45 +0,0 @@ | ||
| 1 | /* termios baud rate selection definitions. Linux/powerpc version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-baud.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifdef __USE_MISC | ||
| 24 | # define CBAUD	0000377 | ||
| 25 | # define CBAUDEX 0000020 | ||
| 26 | # define CMSPAR 010000000000		/* mark or space (stick) parity */ | ||
| 27 | # define CRTSCTS 020000000000		/* flow control */ | ||
| 28 | #endif | ||
| 29 | |||
| 30 | #define B57600 00020 | ||
| 31 | #define B115200 00021 | ||
| 32 | #define B230400 00022 | ||
| 33 | #define B460800 00023 | ||
| 34 | #define B500000 00024 | ||
| 35 | #define B576000 00025 | ||
| 36 | #define B921600 00026 | ||
| 37 | #define B1000000 00027 | ||
| 38 | #define B1152000 00030 | ||
| 39 | #define B1500000 00031 | ||
| 40 | #define B2000000 00032 | ||
| 41 | #define B2500000 00033 | ||
| 42 | #define B3000000 00034 | ||
| 43 | #define B3500000 00035 | ||
| 44 | #define B4000000 00036 | ||
| 45 | #define __MAX_BAUD B4000000 | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64le-linux-gnu/bits/termios-c_cc.h deleted-41| ... | @@ -1,41 +0,0 @@ | ||
| 1 | /* termios c_cc symbolic constant definitions. Linux/powerpc version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-c_cc.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* c_cc characters */ | ||
| 24 | #define VINTR	0 | ||
| 25 | #define VQUIT	1 | ||
| 26 | #define VERASE	2 | ||
| 27 | #define VKILL	3 | ||
| 28 | #define VEOF	4 | ||
| 29 | #define VMIN	5 | ||
| 30 | #define VEOL	6 | ||
| 31 | #define VTIME	7 | ||
| 32 | #define VEOL2	8 | ||
| 33 | #define VSWTC	9 | ||
| 34 | |||
| 35 | #define VWERASE	10 | ||
| 36 | #define VREPRINT	11 | ||
| 37 | #define VSUSP		12 | ||
| 38 | #define VSTART		13 | ||
| 39 | #define VSTOP		14 | ||
| 40 | #define VLNEXT		15 | ||
| 41 | #define VDISCARD	16 | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64le-linux-gnu/bits/termios-c_cflag.h deleted-39| ... | @@ -1,39 +0,0 @@ | ||
| 1 | /* termios control mode definitions. Linux/powerpc version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-c_cflag.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #define CSIZE	00001400 | ||
| 24 | #define CS5	00000000 | ||
| 25 | #define CS6	00000400 | ||
| 26 | #define CS7	00001000 | ||
| 27 | #define CS8	00001400 | ||
| 28 | |||
| 29 | #define CSTOPB	00002000 | ||
| 30 | #define CREAD	00004000 | ||
| 31 | #define PARENB	00010000 | ||
| 32 | #define PARODD	00020000 | ||
| 33 | #define HUPCL	00040000 | ||
| 34 | |||
| 35 | #define CLOCAL	00100000 | ||
| 36 | |||
| 37 | #ifdef __USE_MISC | ||
| 38 | # define ADDRB 04000000000 | ||
| 39 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64le-linux-gnu/bits/termios-c_iflag.h deleted-38| ... | @@ -1,38 +0,0 @@ | ||
| 1 | /* termios input mode definitions. Linux/powerpc version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-c_iflags.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* c_iflag bits */ | ||
| 24 | #define IGNBRK	0000001 | ||
| 25 | #define BRKINT	0000002 | ||
| 26 | #define IGNPAR	0000004 | ||
| 27 | #define PARMRK	0000010 | ||
| 28 | #define INPCK	0000020 | ||
| 29 | #define ISTRIP	0000040 | ||
| 30 | #define INLCR	0000100 | ||
| 31 | #define IGNCR	0000200 | ||
| 32 | #define ICRNL	0000400 | ||
| 33 | #define IXON	0001000 | ||
| 34 | #define IXOFF	0002000 | ||
| 35 | #define IXANY	0004000 | ||
| 36 | #define IUCLC	0010000 | ||
| 37 | #define IMAXBEL	0020000 | ||
| 38 | #define IUTF8	0040000 | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64le-linux-gnu/bits/termios-c_lflag.h deleted-45| ... | @@ -1,45 +0,0 @@ | ||
| 1 | /* termios local mode definitions. Linux/powerpc version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-c_lflag.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* c_lflag bits */ | ||
| 24 | #define ISIG	0x00000080 | ||
| 25 | #define ICANON	0x00000100 | ||
| 26 | #if defined __USE_MISC || (defined __USE_XOPEN && !defined __USE_XOPEN2K) | ||
| 27 | # define XCASE	0x00004000 | ||
| 28 | #endif | ||
| 29 | #define ECHO	0x00000008 | ||
| 30 | #define ECHOE	0x00000002 | ||
| 31 | #define ECHOK	0x00000004 | ||
| 32 | #define ECHONL	0x00000010 | ||
| 33 | #define NOFLSH	0x80000000 | ||
| 34 | #define TOSTOP	0x00400000 | ||
| 35 | #ifdef __USE_MISC | ||
| 36 | # define ECHOCTL	0x00000040 | ||
| 37 | # define ECHOPRT	0x00000020 | ||
| 38 | # define ECHOKE	0x00000001 | ||
| 39 | # define FLUSHO	0x00800000 | ||
| 40 | # define PENDIN	0x20000000 | ||
| 41 | #endif | ||
| 42 | #define IEXTEN	0x00000400 | ||
| 43 | #ifdef __USE_MISC | ||
| 44 | # define EXTPROC 0x10000000 | ||
| 45 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64le-linux-gnu/bits/termios-c_oflag.h deleted-65| ... | @@ -1,65 +0,0 @@ | ||
| 1 | /* termios output mode definitions. Linux/powerpc version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-c_oflag.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* c_oflag bits */ | ||
| 24 | #define OPOST	0000001 | ||
| 25 | #define ONLCR	0000002 | ||
| 26 | #define OLCUC	0000004 | ||
| 27 | |||
| 28 | #define OCRNL	0000010 | ||
| 29 | #define ONOCR	0000020 | ||
| 30 | #define ONLRET	0000040 | ||
| 31 | |||
| 32 | #define OFILL	00000100 | ||
| 33 | #define OFDEL	00000200 | ||
| 34 | #if defined __USE_MISC || defined __USE_XOPEN | ||
| 35 | # define NLDLY	00001400 | ||
| 36 | # define NL0	00000000 | ||
| 37 | # define NL1	00000400 | ||
| 38 | # if defined __USE_MISC | ||
| 39 | # define NL2	00001000 | ||
| 40 | # define NL3	00001400 | ||
| 41 | # endif | ||
| 42 | # define TABDLY	00006000 | ||
| 43 | # define TAB0	00000000 | ||
| 44 | # define TAB1	00002000 | ||
| 45 | # define TAB2	00004000 | ||
| 46 | # define TAB3	00006000 | ||
| 47 | # define CRDLY	00030000 | ||
| 48 | # define CR0	00000000 | ||
| 49 | # define CR1	00010000 | ||
| 50 | # define CR2	00020000 | ||
| 51 | # define CR3	00030000 | ||
| 52 | # define FFDLY	00040000 | ||
| 53 | # define FF0	00000000 | ||
| 54 | # define FF1	00040000 | ||
| 55 | # define BSDLY	00100000 | ||
| 56 | # define BS0	00000000 | ||
| 57 | # define BS1	00100000 | ||
| 58 | #endif | ||
| 59 | #define VTDLY	00200000 | ||
| 60 | #define VT0	00000000 | ||
| 61 | #define VT1	00200000 | ||
| 62 | |||
| 63 | #ifdef __USE_MISC | ||
| 64 | # define XTABS	00006000 | ||
| 65 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64le-linux-gnu/bits/termios-misc.h deleted-72| ... | @@ -1,72 +0,0 @@ | ||
| 1 | /* termios baud platform specific definitions. Linux/powerpc version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-misc.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifdef __USE_MISC | ||
| 24 | |||
| 25 | struct sgttyb { | ||
| 26 | 	char	sg_ispeed; | ||
| 27 | 	char	sg_ospeed; | ||
| 28 | 	char	sg_erase; | ||
| 29 | 	char	sg_kill; | ||
| 30 | 	short	sg_flags; | ||
| 31 | }; | ||
| 32 | |||
| 33 | struct tchars { | ||
| 34 | 	char	t_intrc; | ||
| 35 | 	char	t_quitc; | ||
| 36 | 	char	t_startc; | ||
| 37 | 	char	t_stopc; | ||
| 38 | 	char	t_eofc; | ||
| 39 | 	char	t_brkc; | ||
| 40 | }; | ||
| 41 | |||
| 42 | struct ltchars { | ||
| 43 | 	char	t_suspc; | ||
| 44 | 	char	t_dsuspc; | ||
| 45 | 	char	t_rprntc; | ||
| 46 | 	char	t_flushc; | ||
| 47 | 	char	t_werasc; | ||
| 48 | 	char	t_lnextc; | ||
| 49 | }; | ||
| 50 | |||
| 51 | /* Used for packet mode */ | ||
| 52 | #define TIOCPKT_DATA		 0 | ||
| 53 | #define TIOCPKT_FLUSHREAD	 1 | ||
| 54 | #define TIOCPKT_FLUSHWRITE	 2 | ||
| 55 | #define TIOCPKT_STOP		 4 | ||
| 56 | #define TIOCPKT_START		 8 | ||
| 57 | #define TIOCPKT_NOSTOP		16 | ||
| 58 | #define TIOCPKT_DOSTOP		32 | ||
| 59 | |||
| 60 | /* c_cc characters */ | ||
| 61 | #define _VINTR	0 | ||
| 62 | #define _VQUIT	1 | ||
| 63 | #define _VERASE	2 | ||
| 64 | #define _VKILL	3 | ||
| 65 | #define _VEOF	4 | ||
| 66 | #define _VMIN	5 | ||
| 67 | #define _VEOL	6 | ||
| 68 | #define _VTIME	7 | ||
| 69 | #define _VEOL2	8 | ||
| 70 | #define _VSWTC	9 | ||
| 71 | |||
| 72 | #endif /* __USE_MISC */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64le-linux-gnu/bits/timesize.h deleted-22| ... | @@ -1,22 +0,0 @@ | ||
| 1 | /* Bit size of the time_t type at glibc build time, Linux/PowerPC. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #include <bits/wordsize.h> | ||
| 20 | |||
| 21 | /* Size in bits of the 'time_t' type of the default ABI. */ | ||
| 22 | #define __TIMESIZE	__WORDSIZE | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64le-linux-gnu/bits/types/struct_msqid_ds.h deleted-53| ... | @@ -1,53 +0,0 @@ | ||
| 1 | /* Linux/PowerPC implementation of the SysV message struct msqid_ds. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_MSG_H | ||
| 20 | # error "Never use <bits/msq.h> directly; include <sys/msg.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <bits/types/time_t.h> | ||
| 24 | |||
| 25 | /* Structure of record for one message inside the kernel. | ||
| 26 | The type `struct msg' is opaque. */ | ||
| 27 | struct msqid_ds | ||
| 28 | { | ||
| 29 | #ifdef __USE_TIME64_REDIRECTS | ||
| 30 | # include <bits/types/struct_msqid64_ds_helper.h> | ||
| 31 | #else | ||
| 32 | struct ipc_perm msg_perm;	/* structure describing operation permission */ | ||
| 33 | # if __TIMESIZE == 32 | ||
| 34 | unsigned long int __msg_stime_high; | ||
| 35 | __time_t msg_stime;		/* time of last msgsnd command */ | ||
| 36 | unsigned long int __msg_rtime_high; | ||
| 37 | __time_t msg_rtime;		/* time of last msgsnd command */ | ||
| 38 | unsigned long int __msg_ctime_high; | ||
| 39 | __time_t msg_ctime;		/* time of last change */ | ||
| 40 | # else | ||
| 41 | __time_t msg_stime;		/* time of last msgsnd command */ | ||
| 42 | __time_t msg_rtime;		/* time of last msgsnd command */ | ||
| 43 | __time_t msg_ctime;		/* time of last change */ | ||
| 44 | # endif | ||
| 45 | __syscall_ulong_t __msg_cbytes; /* current number of bytes on queue */ | ||
| 46 | msgqnum_t msg_qnum;		/* number of messages currently on queue */ | ||
| 47 | msglen_t msg_qbytes;		/* max number of bytes allowed on queue */ | ||
| 48 | __pid_t msg_lspid;		/* pid of last msgsnd() */ | ||
| 49 | __pid_t msg_lrpid;		/* pid of last msgrcv() */ | ||
| 50 | __syscall_ulong_t __glibc_reserved4; | ||
| 51 | __syscall_ulong_t __glibc_reserved5; | ||
| 52 | #endif | ||
| 53 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64le-linux-gnu/bits/types/struct_semid_ds.h deleted-43| ... | @@ -1,43 +0,0 @@ | ||
| 1 | /* PowerPC implementation of the semaphore struct semid_ds. | ||
| 2 | Copyright (C) 1995-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SEM_H | ||
| 20 | # error "Never include <bits/types/struct_semid_ds.h> directly; use <sys/sem.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Data structure describing a set of semaphores. */ | ||
| 24 | struct semid_ds | ||
| 25 | { | ||
| 26 | #ifdef __USE_TIME64_REDIRECTS | ||
| 27 | # include <bits/types/struct_semid64_ds_helper.h> | ||
| 28 | #else | ||
| 29 | struct ipc_perm sem_perm; /* operation permission struct */ | ||
| 30 | # if __TIMESIZE == 32 | ||
| 31 | __syscall_ulong_t __sem_otime_high; | ||
| 32 | __time_t sem_otime; /* last semop() time */ | ||
| 33 | __syscall_ulong_t __sem_ctime_high; | ||
| 34 | __time_t sem_ctime; /* last time changed by semctl() */ | ||
| 35 | # else | ||
| 36 | __time_t sem_otime; /* last semop() time */ | ||
| 37 | __time_t sem_ctime; /* last time changed by semctl() */ | ||
| 38 | # endif | ||
| 39 | __syscall_ulong_t sem_nsems; /* number of semaphores in set */ | ||
| 40 | __syscall_ulong_t __glibc_reserved3; | ||
| 41 | __syscall_ulong_t __glibc_reserved4; | ||
| 42 | #endif | ||
| 43 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64le-linux-gnu/bits/types/struct_shmid_ds.h deleted-50| ... | @@ -1,50 +0,0 @@ | ||
| 1 | /* Linux/PowerPC implementation of the shared memory struct shmid_ds. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SHM_H | ||
| 20 | # error "Never include <bits/types/struct_shmid_ds.h> directly; use <sys/shm.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Data structure describing a shared memory segment. */ | ||
| 24 | struct shmid_ds | ||
| 25 | { | ||
| 26 | #ifdef __USE_TIME64_REDIRECTS | ||
| 27 | # include <bits/types/struct_shmid64_ds_helper.h> | ||
| 28 | #else | ||
| 29 | struct ipc_perm shm_perm;		/* operation permission struct */ | ||
| 30 | # if __TIMESIZE == 32 | ||
| 31 | unsigned long int __shm_atime_high; | ||
| 32 | __time_t shm_atime;			/* time of last shmat() */ | ||
| 33 | unsigned long int __shm_dtime_high; | ||
| 34 | __time_t shm_dtime;			/* time of last shmdt() */ | ||
| 35 | unsigned long int __shm_ctime_high; | ||
| 36 | __time_t shm_ctime;			/* time of last change by shmctl() */ | ||
| 37 | unsigned long int __glibc_reserved4; | ||
| 38 | # else | ||
| 39 | __time_t shm_atime;			/* time of last shmat() */ | ||
| 40 | __time_t shm_dtime;			/* time of last shmdt() */ | ||
| 41 | __time_t shm_ctime;			/* time of last change by shmctl() */ | ||
| 42 | # endif | ||
| 43 | size_t shm_segsz;			/* size of segment in bytes */ | ||
| 44 | __pid_t shm_cpid;			/* pid of creator */ | ||
| 45 | __pid_t shm_lpid;			/* pid of last shmop */ | ||
| 46 | shmatt_t shm_nattch;		/* number of current attaches */ | ||
| 47 | __syscall_ulong_t __glibc_reserved5; | ||
| 48 | __syscall_ulong_t __glibc_reserved6; | ||
| 49 | #endif | ||
| 50 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64le-linux-gnu/bits/typesizes.h deleted-95| ... | @@ -1,95 +0,0 @@ | ||
| 1 | /* bits/typesizes.h -- underlying types for *_t. PowerPC version. | ||
| 2 | Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_TYPES_H | ||
| 20 | # error "Never include <bits/typesizes.h> directly; use <sys/types.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef	_BITS_TYPESIZES_H | ||
| 24 | #define	_BITS_TYPESIZES_H	1 | ||
| 25 | |||
| 26 | /* See <bits/types.h> for the meaning of these macros. This file exists so | ||
| 27 | that <bits/types.h> need not vary across different GNU platforms. */ | ||
| 28 | |||
| 29 | #define __DEV_T_TYPE		__UQUAD_TYPE | ||
| 30 | #define __UID_T_TYPE		__U32_TYPE | ||
| 31 | #define __GID_T_TYPE		__U32_TYPE | ||
| 32 | #define __INO_T_TYPE		__ULONGWORD_TYPE | ||
| 33 | #define __INO64_T_TYPE		__UQUAD_TYPE | ||
| 34 | #define __MODE_T_TYPE		__U32_TYPE | ||
| 35 | #define __NLINK_T_TYPE		__UWORD_TYPE | ||
| 36 | #define __OFF_T_TYPE		__SLONGWORD_TYPE | ||
| 37 | #define __OFF64_T_TYPE		__SQUAD_TYPE | ||
| 38 | #define __PID_T_TYPE		__S32_TYPE | ||
| 39 | #define __RLIM_T_TYPE		__ULONGWORD_TYPE | ||
| 40 | #define __RLIM64_T_TYPE		__UQUAD_TYPE | ||
| 41 | #define	__BLKCNT_T_TYPE		__SLONGWORD_TYPE | ||
| 42 | #define	__BLKCNT64_T_TYPE	__SQUAD_TYPE | ||
| 43 | #define	__FSBLKCNT_T_TYPE	__ULONGWORD_TYPE | ||
| 44 | #define	__FSBLKCNT64_T_TYPE	__UQUAD_TYPE | ||
| 45 | #define	__FSFILCNT_T_TYPE	__ULONGWORD_TYPE | ||
| 46 | #define	__FSFILCNT64_T_TYPE	__UQUAD_TYPE | ||
| 47 | #define	__FSWORD_T_TYPE		__SWORD_TYPE | ||
| 48 | #define	__ID_T_TYPE		__U32_TYPE | ||
| 49 | #define __CLOCK_T_TYPE		__SLONGWORD_TYPE | ||
| 50 | #define __TIME_T_TYPE		__SLONGWORD_TYPE | ||
| 51 | #define __USECONDS_T_TYPE	__U32_TYPE | ||
| 52 | #define __SUSECONDS_T_TYPE	__SLONGWORD_TYPE | ||
| 53 | #define __SUSECONDS64_T_TYPE	__SQUAD_TYPE | ||
| 54 | #define __DADDR_T_TYPE		__S32_TYPE | ||
| 55 | #define __KEY_T_TYPE		__S32_TYPE | ||
| 56 | #define __CLOCKID_T_TYPE	__S32_TYPE | ||
| 57 | #define __TIMER_T_TYPE		void * | ||
| 58 | #define __BLKSIZE_T_TYPE	__SLONGWORD_TYPE | ||
| 59 | #define __FSID_T_TYPE		struct { int __val[2]; } | ||
| 60 | #define __SSIZE_T_TYPE		__SWORD_TYPE | ||
| 61 | #define __SYSCALL_SLONG_TYPE	__SLONGWORD_TYPE | ||
| 62 | #define __SYSCALL_ULONG_TYPE	__ULONGWORD_TYPE | ||
| 63 | #define __CPU_MASK_TYPE 	__ULONGWORD_TYPE | ||
| 64 | |||
| 65 | #ifdef __LP64__ | ||
| 66 | /* Tell the libc code that off_t and off64_t are actually the same type | ||
| 67 | for all ABI purposes, even if possibly expressed as different base types | ||
| 68 | for C type-checking purposes. */ | ||
| 69 | # define __OFF_T_MATCHES_OFF64_T	1 | ||
| 70 | |||
| 71 | /* Same for ino_t and ino64_t. */ | ||
| 72 | # define __INO_T_MATCHES_INO64_T	1 | ||
| 73 | |||
| 74 | /* And for rlim_t and rlim64_t. */ | ||
| 75 | # define __RLIM_T_MATCHES_RLIM64_T	1 | ||
| 76 | |||
| 77 | /* And for fsblkcnt_t, fsblkcnt64_t, fsfilcnt_t and fsfilcnt64_t. */ | ||
| 78 | # define __STATFS_MATCHES_STATFS64 1 | ||
| 79 | |||
| 80 | /* And for getitimer, setitimer and rusage */ | ||
| 81 | # define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 1 | ||
| 82 | #else | ||
| 83 | # define __RLIM_T_MATCHES_RLIM64_T	0 | ||
| 84 | |||
| 85 | # define __STATFS_MATCHES_STATFS64 0 | ||
| 86 | |||
| 87 | /* And for getitimer, setitimer and rusage */ | ||
| 88 | # define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 0 | ||
| 89 | #endif | ||
| 90 | |||
| 91 | /* Number of descriptors that can fit in an `fd_set'. */ | ||
| 92 | #define	__FD_SETSIZE		1024 | ||
| 93 | |||
| 94 | |||
| 95 | #endif /* bits/typesizes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64le-linux-gnu/bits/wordsize.h deleted-10| ... | @@ -1,10 +0,0 @@ | ||
| 1 | /* Determine the wordsize from the preprocessor defines. */ | ||
| 2 | |||
| 3 | #if defined __powerpc64__ | ||
| 4 | # define __WORDSIZE	64 | ||
| 5 | #else | ||
| 6 | # define __WORDSIZE	32 | ||
| 7 | # define __WORDSIZE32_SIZE_ULONG	0 | ||
| 8 | # define __WORDSIZE32_PTRDIFF_LONG	0 | ||
| 9 | #endif | ||
| 10 | #define __WORDSIZE_TIME64_COMPAT32	1 | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64le-linux-gnu/fpu_control.h deleted-114| ... | @@ -1,114 +0,0 @@ | ||
| 1 | /* FPU control word definitions. PowerPC version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _FPU_CONTROL_H | ||
| 20 | #define _FPU_CONTROL_H | ||
| 21 | |||
| 22 | #if defined __SPE__ || (defined __NO_FPRS__ && !defined _SOFT_FLOAT) | ||
| 23 | # error "SPE/e500 is no longer supported" | ||
| 24 | #endif | ||
| 25 | |||
| 26 | #ifdef _SOFT_FLOAT | ||
| 27 | |||
| 28 | # define _FPU_RESERVED 0xffffffff | ||
| 29 | # define _FPU_DEFAULT 0x00000000 /* Default value. */ | ||
| 30 | typedef unsigned int fpu_control_t; | ||
| 31 | # define _FPU_GETCW(cw) (cw) = 0 | ||
| 32 | # define _FPU_SETCW(cw) (void) (cw) | ||
| 33 | extern fpu_control_t __fpu_control; | ||
| 34 | |||
| 35 | #else /* PowerPC 6xx floating-point. */ | ||
| 36 | |||
| 37 | /* rounding control */ | ||
| 38 | # define _FPU_RC_NEAREST 0x00 /* RECOMMENDED */ | ||
| 39 | # define _FPU_RC_DOWN 0x03 | ||
| 40 | # define _FPU_RC_UP 0x02 | ||
| 41 | # define _FPU_RC_ZERO 0x01 | ||
| 42 | |||
| 43 | # define _FPU_MASK_RC (_FPU_RC_NEAREST|_FPU_RC_DOWN|_FPU_RC_UP|_FPU_RC_ZERO) | ||
| 44 | |||
| 45 | # define _FPU_MASK_NI 0x04 /* non-ieee mode */ | ||
| 46 | |||
| 47 | /* masking of interrupts */ | ||
| 48 | # define _FPU_MASK_ZM 0x10 /* zero divide */ | ||
| 49 | # define _FPU_MASK_OM 0x40 /* overflow */ | ||
| 50 | # define _FPU_MASK_UM 0x20 /* underflow */ | ||
| 51 | # define _FPU_MASK_XM 0x08 /* inexact */ | ||
| 52 | # define _FPU_MASK_IM 0x80 /* invalid operation */ | ||
| 53 | |||
| 54 | # define _FPU_RESERVED 0xffffff00 /* These bits are reserved are not changed. */ | ||
| 55 | |||
| 56 | /* The fdlibm code requires no interrupts for exceptions. */ | ||
| 57 | # define _FPU_DEFAULT 0x00000000 /* Default value. */ | ||
| 58 | |||
| 59 | /* IEEE: same as above, but (some) exceptions; | ||
| 60 | we leave the 'inexact' exception off. | ||
| 61 | */ | ||
| 62 | # define _FPU_IEEE 0x000000f0 | ||
| 63 | |||
| 64 | /* Type of the control word. */ | ||
| 65 | typedef unsigned int fpu_control_t; | ||
| 66 | |||
| 67 | /* Macros for accessing the hardware control word. */ | ||
| 68 | # define _FPU_GETCW(cw)						\ | ||
| 69 | ({union { double __d; unsigned long long __ll; } __u;		\ | ||
| 70 | __asm__ __volatile__("mffs %0" : "=f" (__u.__d));		\ | ||
| 71 | (cw) = (fpu_control_t) __u.__ll;				\ | ||
| 72 | (fpu_control_t) __u.__ll;					\ | ||
| 73 | }) | ||
| 74 | |||
| 75 | # define _FPU_GET_RC_ISA300()						\ | ||
| 76 | ({union { double __d; unsigned long long __ll; } __u;			\ | ||
| 77 | __asm__ __volatile__(						\ | ||
| 78 | ".machine push; .machine \"power9\"; mffsl %0; .machine pop" 	\ | ||
| 79 | : "=f" (__u.__d));						\ | ||
| 80 | (fpu_control_t) (__u.__ll & _FPU_MASK_RC);				\ | ||
| 81 | }) | ||
| 82 | |||
| 83 | # ifdef _ARCH_PWR9 | ||
| 84 | # define _FPU_GET_RC() _FPU_GET_RC_ISA300() | ||
| 85 | # elif defined __BUILTIN_CPU_SUPPORTS__ | ||
| 86 | # define _FPU_GET_RC()							\ | ||
| 87 | ({fpu_control_t __rc;							\ | ||
| 88 | __rc = __glibc_likely (__builtin_cpu_supports ("arch_3_00"))	\ | ||
| 89 | ? _FPU_GET_RC_ISA300 ()						\ | ||
| 90 | : _FPU_GETCW (__rc) & _FPU_MASK_RC;				\ | ||
| 91 | __rc;								\ | ||
| 92 | }) | ||
| 93 | # else | ||
| 94 | # define _FPU_GET_RC()						\ | ||
| 95 | ({fpu_control_t __rc = _FPU_GETCW (__rc) & _FPU_MASK_RC;	\ | ||
| 96 | __rc;							\ | ||
| 97 | }) | ||
| 98 | # endif | ||
| 99 | |||
| 100 | # define _FPU_SETCW(cw)						\ | ||
| 101 | { union { double __d; unsigned long long __ll; } __u;		\ | ||
| 102 | register double __fr;					\ | ||
| 103 | __u.__ll = 0xfff80000LL << 32; /* This is a QNaN. */	\ | ||
| 104 | __u.__ll |= (cw) & 0xffffffffLL;				\ | ||
| 105 | __fr = __u.__d;						\ | ||
| 106 | __asm__ __volatile__("mtfsf 255,%0" : : "f" (__fr));	\ | ||
| 107 | } | ||
| 108 | |||
| 109 | /* Default control word set at startup. */ | ||
| 110 | extern fpu_control_t __fpu_control; | ||
| 111 | |||
| 112 | #endif /* PowerPC 6xx floating-point. */ | ||
| 113 | |||
| 114 | #endif /* _FPU_CONTROL_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64le-linux-gnu/gnu/lib-names-64-v2.h deleted-27| ... | @@ -1,27 +0,0 @@ | ||
| 1 | /* This file is automatically generated. */ | ||
| 2 | #ifndef __GNU_LIB_NAMES_H | ||
| 3 | # error "Never use <gnu/lib-names-64-v2.h> directly; include <gnu/lib-names.h> instead." | ||
| 4 | #endif | ||
| 5 | |||
| 6 | #define LD64_SO "ld64.so.2" | ||
| 7 | #define LD_SO "ld64.so.2" | ||
| 8 | #define LIBANL_SO "libanl.so.1" | ||
| 9 | #define LIBBROKENLOCALE_SO "libBrokenLocale.so.1" | ||
| 10 | #define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0" | ||
| 11 | #define LIBC_SO "libc.so.6" | ||
| 12 | #define LIBDL_SO "libdl.so.2" | ||
| 13 | #define LIBGCC_S_SO "libgcc_s.so.1" | ||
| 14 | #define LIBMVEC_SO "libmvec.so.1" | ||
| 15 | #define LIBM_SO "libm.so.6" | ||
| 16 | #define LIBNSL_SO "libnsl.so.1" | ||
| 17 | #define LIBNSS_COMPAT_SO "libnss_compat.so.2" | ||
| 18 | #define LIBNSS_DB_SO "libnss_db.so.2" | ||
| 19 | #define LIBNSS_DNS_SO "libnss_dns.so.2" | ||
| 20 | #define LIBNSS_FILES_SO "libnss_files.so.2" | ||
| 21 | #define LIBNSS_HESIOD_SO "libnss_hesiod.so.2" | ||
| 22 | #define LIBNSS_LDAP_SO "libnss_ldap.so.2" | ||
| 23 | #define LIBPTHREAD_SO "libpthread.so.0" | ||
| 24 | #define LIBRESOLV_SO "libresolv.so.2" | ||
| 25 | #define LIBRT_SO "librt.so.1" | ||
| 26 | #define LIBTHREAD_DB_SO "libthread_db.so.1" | ||
| 27 | #define LIBUTIL_SO "libutil.so.1" | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64le-linux-gnu/gnu/lib-names.h deleted-19| ... | @@ -1,19 +0,0 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | It defines macros to allow user program to find the shared | ||
| 3 | library files which come as part of GNU libc. */ | ||
| 4 | #ifndef __GNU_LIB_NAMES_H | ||
| 5 | #define __GNU_LIB_NAMES_H	1 | ||
| 6 | |||
| 7 | #include <bits/wordsize.h> | ||
| 8 | |||
| 9 | #if __WORDSIZE == 32 | ||
| 10 | # include <gnu/lib-names-32.h> | ||
| 11 | #endif | ||
| 12 | #if __WORDSIZE == 64 && _CALL_ELF != 2 | ||
| 13 | # include <gnu/lib-names-64-v1.h> | ||
| 14 | #endif | ||
| 15 | #if __WORDSIZE == 64 && _CALL_ELF == 2 | ||
| 16 | # include <gnu/lib-names-64-v2.h> | ||
| 17 | #endif | ||
| 18 | |||
| 19 | #endif	/* gnu/lib-names.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64le-linux-gnu/gnu/stubs-64-v2.h deleted-16| ... | @@ -1,16 +0,0 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | It defines a symbol `__stub_FUNCTION' for each function | ||
| 3 | in the C library which is a stub, meaning it will fail | ||
| 4 | every time called, usually setting errno to ENOSYS. */ | ||
| 5 | |||
| 6 | #ifdef _LIBC | ||
| 7 | #error Applications may not define the macro _LIBC | ||
| 8 | #endif | ||
| 9 | |||
| 10 | #define __stub_chflags | ||
| 11 | #define __stub_fchflags | ||
| 12 | #define __stub_gtty | ||
| 13 | #define __stub_revoke | ||
| 14 | #define __stub_setlogin | ||
| 15 | #define __stub_sigreturn | ||
| 16 | #define __stub_stty | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64le-linux-gnu/gnu/stubs.h deleted-15| ... | @@ -1,15 +0,0 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | This file selects the right generated file of `__stub_FUNCTION' macros | ||
| 3 | based on the architecture being compiled for. */ | ||
| 4 | |||
| 5 | #include <bits/wordsize.h> | ||
| 6 | |||
| 7 | #if __WORDSIZE == 32 | ||
| 8 | # include <gnu/stubs-32.h> | ||
| 9 | #endif | ||
| 10 | #if __WORDSIZE == 64 && _CALL_ELF != 2 | ||
| 11 | # include <gnu/stubs-64-v1.h> | ||
| 12 | #endif | ||
| 13 | #if __WORDSIZE == 64 && _CALL_ELF == 2 | ||
| 14 | # include <gnu/stubs-64-v2.h> | ||
| 15 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64le-linux-gnu/ieee754.h deleted-197| ... | @@ -1,197 +0,0 @@ | ||
| 1 | /* Copyright (C) 1992-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _IEEE754_H | ||
| 19 | #define _IEEE754_H 1 | ||
| 20 | |||
| 21 | #include <features.h> | ||
| 22 | |||
| 23 | #include <bits/endian.h> | ||
| 24 | #include <bits/floatn.h> | ||
| 25 | |||
| 26 | __BEGIN_DECLS | ||
| 27 | |||
| 28 | union ieee754_float | ||
| 29 | { | ||
| 30 | float f; | ||
| 31 | |||
| 32 | /* This is the IEEE 754 single-precision format. */ | ||
| 33 | struct | ||
| 34 | { | ||
| 35 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 36 | 	unsigned int negative:1; | ||
| 37 | 	unsigned int exponent:8; | ||
| 38 | 	unsigned int mantissa:23; | ||
| 39 | #endif				/* Big endian. */ | ||
| 40 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 41 | 	unsigned int mantissa:23; | ||
| 42 | 	unsigned int exponent:8; | ||
| 43 | 	unsigned int negative:1; | ||
| 44 | #endif				/* Little endian. */ | ||
| 45 | } ieee; | ||
| 46 | |||
| 47 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 48 | struct | ||
| 49 | { | ||
| 50 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 51 | 	unsigned int negative:1; | ||
| 52 | 	unsigned int exponent:8; | ||
| 53 | 	unsigned int quiet_nan:1; | ||
| 54 | 	unsigned int mantissa:22; | ||
| 55 | #endif				/* Big endian. */ | ||
| 56 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 57 | 	unsigned int mantissa:22; | ||
| 58 | 	unsigned int quiet_nan:1; | ||
| 59 | 	unsigned int exponent:8; | ||
| 60 | 	unsigned int negative:1; | ||
| 61 | #endif				/* Little endian. */ | ||
| 62 | } ieee_nan; | ||
| 63 | }; | ||
| 64 | |||
| 65 | #define IEEE754_FLOAT_BIAS	0x7f /* Added to exponent. */ | ||
| 66 | |||
| 67 | |||
| 68 | union ieee754_double | ||
| 69 | { | ||
| 70 | double d; | ||
| 71 | |||
| 72 | /* This is the IEEE 754 double-precision format. */ | ||
| 73 | struct | ||
| 74 | { | ||
| 75 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 76 | 	unsigned int negative:1; | ||
| 77 | 	unsigned int exponent:11; | ||
| 78 | 	/* Together these comprise the mantissa. */ | ||
| 79 | 	unsigned int mantissa0:20; | ||
| 80 | 	unsigned int mantissa1:32; | ||
| 81 | #endif				/* Big endian. */ | ||
| 82 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 83 | 	/* Together these comprise the mantissa. */ | ||
| 84 | 	unsigned int mantissa1:32; | ||
| 85 | 	unsigned int mantissa0:20; | ||
| 86 | 	unsigned int exponent:11; | ||
| 87 | 	unsigned int negative:1; | ||
| 88 | #endif				/* Little endian. */ | ||
| 89 | } ieee; | ||
| 90 | |||
| 91 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 92 | struct | ||
| 93 | { | ||
| 94 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 95 | 	unsigned int negative:1; | ||
| 96 | 	unsigned int exponent:11; | ||
| 97 | 	unsigned int quiet_nan:1; | ||
| 98 | 	/* Together these comprise the mantissa. */ | ||
| 99 | 	unsigned int mantissa0:19; | ||
| 100 | 	unsigned int mantissa1:32; | ||
| 101 | #else | ||
| 102 | 	/* Together these comprise the mantissa. */ | ||
| 103 | 	unsigned int mantissa1:32; | ||
| 104 | 	unsigned int mantissa0:19; | ||
| 105 | 	unsigned int quiet_nan:1; | ||
| 106 | 	unsigned int exponent:11; | ||
| 107 | 	unsigned int negative:1; | ||
| 108 | #endif | ||
| 109 | } ieee_nan; | ||
| 110 | }; | ||
| 111 | |||
| 112 | #define IEEE754_DOUBLE_BIAS	0x3ff /* Added to exponent. */ | ||
| 113 | |||
| 114 | |||
| 115 | #if __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 1 | ||
| 116 | /* long double is IEEE 128 bit */ | ||
| 117 | union ieee854_long_double | ||
| 118 | { | ||
| 119 | long double d; | ||
| 120 | |||
| 121 | /* This is the IEEE 854 quad-precision format. */ | ||
| 122 | struct | ||
| 123 | { | ||
| 124 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 125 | 	unsigned int negative:1; | ||
| 126 | 	unsigned int exponent:15; | ||
| 127 | 	/* Together these comprise the mantissa. */ | ||
| 128 | 	unsigned int mantissa0:16; | ||
| 129 | 	unsigned int mantissa1:32; | ||
| 130 | 	unsigned int mantissa2:32; | ||
| 131 | 	unsigned int mantissa3:32; | ||
| 132 | #endif				/* Big endian. */ | ||
| 133 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 134 | 	/* Together these comprise the mantissa. */ | ||
| 135 | 	unsigned int mantissa3:32; | ||
| 136 | 	unsigned int mantissa2:32; | ||
| 137 | 	unsigned int mantissa1:32; | ||
| 138 | 	unsigned int mantissa0:16; | ||
| 139 | 	unsigned int exponent:15; | ||
| 140 | 	unsigned int negative:1; | ||
| 141 | #endif				/* Little endian. */ | ||
| 142 | } ieee; | ||
| 143 | |||
| 144 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 145 | struct | ||
| 146 | { | ||
| 147 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 148 | 	unsigned int negative:1; | ||
| 149 | 	unsigned int exponent:15; | ||
| 150 | 	unsigned int quiet_nan:1; | ||
| 151 | 	/* Together these comprise the mantissa. */ | ||
| 152 | 	unsigned int mantissa0:15; | ||
| 153 | 	unsigned int mantissa1:32; | ||
| 154 | 	unsigned int mantissa2:32; | ||
| 155 | 	unsigned int mantissa3:32; | ||
| 156 | #else | ||
| 157 | 	/* Together these comprise the mantissa. */ | ||
| 158 | 	unsigned int mantissa3:32; | ||
| 159 | 	unsigned int mantissa2:32; | ||
| 160 | 	unsigned int mantissa1:32; | ||
| 161 | 	unsigned int mantissa0:15; | ||
| 162 | 	unsigned int quiet_nan:1; | ||
| 163 | 	unsigned int exponent:15; | ||
| 164 | 	unsigned int negative:1; | ||
| 165 | #endif | ||
| 166 | } ieee_nan; | ||
| 167 | }; | ||
| 168 | |||
| 169 | #define IEEE854_LONG_DOUBLE_BIAS 0x3fff /* Added to exponent. */ | ||
| 170 | #endif | ||
| 171 | |||
| 172 | |||
| 173 | #if __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 0 || __GNUC_PREREQ (7, 0) | ||
| 174 | /* IBM extended format for long double. | ||
| 175 | |||
| 176 | Each long double is made up of two IEEE doubles. The value of the | ||
| 177 | long double is the sum of the values of the two parts. The most | ||
| 178 | significant part is required to be the value of the long double | ||
| 179 | rounded to the nearest double, as specified by IEEE. For Inf | ||
| 180 | values, the least significant part is required to be one of +0.0 or | ||
| 181 | -0.0. No other requirements are made; so, for example, 1.0 may be | ||
| 182 | represented as (1.0, +0.0) or (1.0, -0.0), and the low part of a | ||
| 183 | NaN is don't-care. */ | ||
| 184 | union ibm_extended_long_double | ||
| 185 | { | ||
| 186 | # if __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 1 && __GNUC_PREREQ (7, 0) | ||
| 187 | __ibm128 ld; | ||
| 188 | # else | ||
| 189 | long double ld; | ||
| 190 | # endif | ||
| 191 | union ieee754_double d[2]; | ||
| 192 | }; | ||
| 193 | #endif | ||
| 194 | |||
| 195 | __END_DECLS | ||
| 196 | |||
| 197 | #endif /* ieee754.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64le-linux-gnu/sys/ptrace.h deleted-289| ... | @@ -1,289 +0,0 @@ | ||
| 1 | /* `ptrace' debugger support interface. Linux/PowerPC version. | ||
| 2 | Copyright (C) 2001-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_PTRACE_H | ||
| 20 | #define _SYS_PTRACE_H	1 | ||
| 21 | |||
| 22 | #include <features.h> | ||
| 23 | #include <bits/types.h> | ||
| 24 | |||
| 25 | __BEGIN_DECLS | ||
| 26 | |||
| 27 | #if defined _LINUX_PTRACE_H || defined _ASM_POWERPC_PTRACE_H | ||
| 28 | /* Do not let Linux headers macros interfere with enum __ptrace_request. */ | ||
| 29 | # undef PTRACE_ATTACH | ||
| 30 | # undef PTRACE_CONT | ||
| 31 | # undef PTRACE_DETACH | ||
| 32 | # undef PTRACE_GET_DEBUGREG | ||
| 33 | # undef PTRACE_GETEVENTMSG | ||
| 34 | # undef PTRACE_GETEVRREGS | ||
| 35 | # undef PTRACE_GETFPREGS | ||
| 36 | # undef PTRACE_GETREGS | ||
| 37 | # undef PTRACE_GETREGS64 | ||
| 38 | # undef PTRACE_GETREGSET | ||
| 39 | # undef PTRACE_GET_RSEQ_CONFIGURATION | ||
| 40 | # undef PTRACE_GETSIGINFO | ||
| 41 | # undef PTRACE_GETSIGMASK | ||
| 42 | # undef PTRACE_GET_SYSCALL_INFO | ||
| 43 | # undef PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG | ||
| 44 | # undef PTRACE_GETVRREGS | ||
| 45 | # undef PTRACE_GETVSRREGS | ||
| 46 | # undef PTRACE_INTERRUPT | ||
| 47 | # undef PTRACE_KILL | ||
| 48 | # undef PTRACE_LISTEN | ||
| 49 | # undef PTRACE_PEEKDATA | ||
| 50 | # undef PTRACE_PEEKSIGINFO | ||
| 51 | # undef PTRACE_PEEKTEXT | ||
| 52 | # undef PTRACE_POKEDATA | ||
| 53 | # undef PTRACE_POKETEXT | ||
| 54 | # undef PTRACE_SECCOMP_GET_FILTER | ||
| 55 | # undef PTRACE_SECCOMP_GET_METADATA | ||
| 56 | # undef PTRACE_SEIZE | ||
| 57 | # undef PTRACE_SET_DEBUGREG | ||
| 58 | # undef PTRACE_SETEVRREGS | ||
| 59 | # undef PTRACE_SETFPREGS | ||
| 60 | # undef PTRACE_SETOPTIONS | ||
| 61 | # undef PTRACE_SETREGS | ||
| 62 | # undef PTRACE_SETREGS64 | ||
| 63 | # undef PTRACE_SETREGSET | ||
| 64 | # undef PTRACE_SETSIGINFO | ||
| 65 | # undef PTRACE_SETSIGMASK | ||
| 66 | # undef PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG | ||
| 67 | # undef PTRACE_SETVRREGS | ||
| 68 | # undef PTRACE_SETVSRREGS | ||
| 69 | # undef PTRACE_SINGLEBLOCK | ||
| 70 | # undef PTRACE_SINGLESTEP | ||
| 71 | # undef PTRACE_SYSCALL | ||
| 72 | # undef PTRACE_SYSCALL_INFO_NONE | ||
| 73 | # undef PTRACE_SYSCALL_INFO_ENTRY | ||
| 74 | # undef PTRACE_SYSCALL_INFO_EXIT | ||
| 75 | # undef PTRACE_SYSCALL_INFO_SECCOMP | ||
| 76 | # undef PTRACE_SYSEMU | ||
| 77 | # undef PTRACE_SYSEMU_SINGLESTEP | ||
| 78 | # undef PTRACE_TRACEME | ||
| 79 | #endif | ||
| 80 | |||
| 81 | /* Type of the REQUEST argument to `ptrace.' */ | ||
| 82 | enum __ptrace_request | ||
| 83 | { | ||
| 84 | /* Indicate that the process making this request should be traced. | ||
| 85 | All signals received by this process can be intercepted by its | ||
| 86 | parent, and its parent can use the other `ptrace' requests. */ | ||
| 87 | PTRACE_TRACEME = 0, | ||
| 88 | #define PT_TRACE_ME PTRACE_TRACEME | ||
| 89 | |||
| 90 | /* Return the word in the process's text space at address ADDR. */ | ||
| 91 | PTRACE_PEEKTEXT = 1, | ||
| 92 | #define PT_READ_I PTRACE_PEEKTEXT | ||
| 93 | |||
| 94 | /* Return the word in the process's data space at address ADDR. */ | ||
| 95 | PTRACE_PEEKDATA = 2, | ||
| 96 | #define PT_READ_D PTRACE_PEEKDATA | ||
| 97 | |||
| 98 | /* Return the word in the process's user area at offset ADDR. */ | ||
| 99 | PTRACE_PEEKUSER = 3, | ||
| 100 | #define PT_READ_U PTRACE_PEEKUSER | ||
| 101 | |||
| 102 | /* Write the word DATA into the process's text space at address ADDR. */ | ||
| 103 | PTRACE_POKETEXT = 4, | ||
| 104 | #define PT_WRITE_I PTRACE_POKETEXT | ||
| 105 | |||
| 106 | /* Write the word DATA into the process's data space at address ADDR. */ | ||
| 107 | PTRACE_POKEDATA = 5, | ||
| 108 | #define PT_WRITE_D PTRACE_POKEDATA | ||
| 109 | |||
| 110 | /* Write the word DATA into the process's user area at offset ADDR. */ | ||
| 111 | PTRACE_POKEUSER = 6, | ||
| 112 | #define PT_WRITE_U PTRACE_POKEUSER | ||
| 113 | |||
| 114 | /* Continue the process. */ | ||
| 115 | PTRACE_CONT = 7, | ||
| 116 | #define PT_CONTINUE PTRACE_CONT | ||
| 117 | |||
| 118 | /* Kill the process. */ | ||
| 119 | PTRACE_KILL = 8, | ||
| 120 | #define PT_KILL PTRACE_KILL | ||
| 121 | |||
| 122 | /* Single step the process. */ | ||
| 123 | PTRACE_SINGLESTEP = 9, | ||
| 124 | #define PT_STEP PTRACE_SINGLESTEP | ||
| 125 | |||
| 126 | /* Get all general purpose registers used by a process. */ | ||
| 127 | PTRACE_GETREGS = 12, | ||
| 128 | #define PT_GETREGS PTRACE_GETREGS | ||
| 129 | |||
| 130 | /* Set all general purpose registers used by a process. */ | ||
| 131 | PTRACE_SETREGS = 13, | ||
| 132 | #define PT_SETREGS PTRACE_SETREGS | ||
| 133 | |||
| 134 | /* Get all floating point registers used by a process. */ | ||
| 135 | PTRACE_GETFPREGS = 14, | ||
| 136 | #define PT_GETFPREGS PTRACE_GETFPREGS | ||
| 137 | |||
| 138 | /* Set all floating point registers used by a process. */ | ||
| 139 | PTRACE_SETFPREGS = 15, | ||
| 140 | #define PT_SETFPREGS PTRACE_SETFPREGS | ||
| 141 | |||
| 142 | /* Attach to a process that is already running. */ | ||
| 143 | PTRACE_ATTACH = 16, | ||
| 144 | #define PT_ATTACH PTRACE_ATTACH | ||
| 145 | |||
| 146 | /* Detach from a process attached to with PTRACE_ATTACH. */ | ||
| 147 | PTRACE_DETACH = 17, | ||
| 148 | #define PT_DETACH PTRACE_DETACH | ||
| 149 | |||
| 150 | /* Get all altivec registers used by a process. */ | ||
| 151 | PTRACE_GETVRREGS = 18, | ||
| 152 | #define PT_GETVRREGS PTRACE_GETVRREGS | ||
| 153 | |||
| 154 | /* Set all altivec registers used by a process. */ | ||
| 155 | PTRACE_SETVRREGS = 19, | ||
| 156 | #define PT_SETVRREGS PTRACE_SETVRREGS | ||
| 157 | |||
| 158 | /* Get all SPE registers used by a process. */ | ||
| 159 | PTRACE_GETEVRREGS = 20, | ||
| 160 | #define PT_GETEVRREGS PTRACE_GETEVRREGS | ||
| 161 | |||
| 162 | /* Set all SPE registers used by a process. */ | ||
| 163 | PTRACE_SETEVRREGS = 21, | ||
| 164 | #define PT_SETEVRREGS PTRACE_SETEVRREGS | ||
| 165 | |||
| 166 | /* Same as PTRACE_GETREGS except a 32-bit process will obtain | ||
| 167 | the full 64-bit registers. Implemented by 64-bit kernels only. */ | ||
| 168 | PTRACE_GETREGS64 = 22, | ||
| 169 | #define PT_GETREGS64 PTRACE_GETREGS64 | ||
| 170 | |||
| 171 | /* Same as PTRACE_SETREGS except a 32-bit process will set | ||
| 172 | the full 64-bit registers. Implemented by 64-bit kernels only. */ | ||
| 173 | PTRACE_SETREGS64 = 23, | ||
| 174 | #define PT_SETREGS64 PTRACE_SETREGS64 | ||
| 175 | |||
| 176 | /* Continue and stop at the next entry to or return from syscall. */ | ||
| 177 | PTRACE_SYSCALL = 24, | ||
| 178 | #define PT_SYSCALL PTRACE_SYSCALL | ||
| 179 | |||
| 180 | /* Get a debug register of a process. */ | ||
| 181 | PTRACE_GET_DEBUGREG = 25, | ||
| 182 | #define PT_GET_DEBUGREG PTRACE_GET_DEBUGREG | ||
| 183 | |||
| 184 | /* Set a debug register of a process. */ | ||
| 185 | PTRACE_SET_DEBUGREG = 26, | ||
| 186 | #define PT_SET_DEBUGREG PTRACE_SET_DEBUGREG | ||
| 187 | |||
| 188 | /* Get the first 32 VSX registers of a process. */ | ||
| 189 | PTRACE_GETVSRREGS = 27, | ||
| 190 | #define PT_GETVSRREGS PTRACE_GETVSRREGS | ||
| 191 | |||
| 192 | /* Set the first 32 VSX registers of a process. */ | ||
| 193 | PTRACE_SETVSRREGS = 28, | ||
| 194 | #define PT_SETVSRREGS PTRACE_SETVSRREGS | ||
| 195 | |||
| 196 | /* Continue and stop at the next syscall, it will not be executed. */ | ||
| 197 | PTRACE_SYSEMU = 29, | ||
| 198 | #define PT_SYSEMU PTRACE_SYSEMU | ||
| 199 | |||
| 200 | /* Single step the process, the next syscall will not be executed. */ | ||
| 201 | PTRACE_SYSEMU_SINGLESTEP = 30, | ||
| 202 | #define PT_SYSEMU_SINGLESTEP PTRACE_SYSEMU_SINGLESTEP | ||
| 203 | |||
| 204 | /* Execute process until next taken branch. */ | ||
| 205 | PTRACE_SINGLEBLOCK = 256, | ||
| 206 | #define PT_STEPBLOCK PTRACE_SINGLEBLOCK | ||
| 207 | |||
| 208 | /* Set ptrace filter options. */ | ||
| 209 | PTRACE_SETOPTIONS = 0x4200, | ||
| 210 | #define PT_SETOPTIONS PTRACE_SETOPTIONS | ||
| 211 | |||
| 212 | /* Get last ptrace message. */ | ||
| 213 | PTRACE_GETEVENTMSG = 0x4201, | ||
| 214 | #define PT_GETEVENTMSG PTRACE_GETEVENTMSG | ||
| 215 | |||
| 216 | /* Get siginfo for process. */ | ||
| 217 | PTRACE_GETSIGINFO = 0x4202, | ||
| 218 | #define PT_GETSIGINFO PTRACE_GETSIGINFO | ||
| 219 | |||
| 220 | /* Set new siginfo for process. */ | ||
| 221 | PTRACE_SETSIGINFO = 0x4203, | ||
| 222 | #define PT_SETSIGINFO PTRACE_SETSIGINFO | ||
| 223 | |||
| 224 | /* Get register content. */ | ||
| 225 | PTRACE_GETREGSET = 0x4204, | ||
| 226 | #define PTRACE_GETREGSET PTRACE_GETREGSET | ||
| 227 | |||
| 228 | /* Set register content. */ | ||
| 229 | PTRACE_SETREGSET = 0x4205, | ||
| 230 | #define PTRACE_SETREGSET PTRACE_SETREGSET | ||
| 231 | |||
| 232 | /* Like PTRACE_ATTACH, but do not force tracee to trap and do not affect | ||
| 233 | signal or group stop state. */ | ||
| 234 | PTRACE_SEIZE = 0x4206, | ||
| 235 | #define PTRACE_SEIZE PTRACE_SEIZE | ||
| 236 | |||
| 237 | /* Trap seized tracee. */ | ||
| 238 | PTRACE_INTERRUPT = 0x4207, | ||
| 239 | #define PTRACE_INTERRUPT PTRACE_INTERRUPT | ||
| 240 | |||
| 241 | /* Wait for next group event. */ | ||
| 242 | PTRACE_LISTEN = 0x4208, | ||
| 243 | #define PTRACE_LISTEN PTRACE_LISTEN | ||
| 244 | |||
| 245 | /* Retrieve siginfo_t structures without removing signals from a queue. */ | ||
| 246 | PTRACE_PEEKSIGINFO = 0x4209, | ||
| 247 | #define PTRACE_PEEKSIGINFO PTRACE_PEEKSIGINFO | ||
| 248 | |||
| 249 | /* Get the mask of blocked signals. */ | ||
| 250 | PTRACE_GETSIGMASK = 0x420a, | ||
| 251 | #define PTRACE_GETSIGMASK PTRACE_GETSIGMASK | ||
| 252 | |||
| 253 | /* Change the mask of blocked signals. */ | ||
| 254 | PTRACE_SETSIGMASK = 0x420b, | ||
| 255 | #define PTRACE_SETSIGMASK PTRACE_SETSIGMASK | ||
| 256 | |||
| 257 | /* Get seccomp BPF filters. */ | ||
| 258 | PTRACE_SECCOMP_GET_FILTER = 0x420c, | ||
| 259 | #define PTRACE_SECCOMP_GET_FILTER PTRACE_SECCOMP_GET_FILTER | ||
| 260 | |||
| 261 | /* Get seccomp BPF filter metadata. */ | ||
| 262 | PTRACE_SECCOMP_GET_METADATA = 0x420d, | ||
| 263 | #define PTRACE_SECCOMP_GET_METADATA PTRACE_SECCOMP_GET_METADATA | ||
| 264 | |||
| 265 | /* Get information about system call. */ | ||
| 266 | PTRACE_GET_SYSCALL_INFO = 0x420e, | ||
| 267 | #define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO | ||
| 268 | |||
| 269 | /* Get rseq configuration information. */ | ||
| 270 | PTRACE_GET_RSEQ_CONFIGURATION = 0x420f, | ||
| 271 | #define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION | ||
| 272 | |||
| 273 | /* Set configuration for syscall user dispatch. */ | ||
| 274 | PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG = 0x4210, | ||
| 275 | #define PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG \ | ||
| 276 | PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG | ||
| 277 | |||
| 278 | /* Get configuration for syscall user dispatch. */ | ||
| 279 | PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG = 0x4211 | ||
| 280 | #define PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG \ | ||
| 281 | PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG | ||
| 282 | }; | ||
| 283 | |||
| 284 | |||
| 285 | #include <bits/ptrace-shared.h> | ||
| 286 | |||
| 287 | __END_DECLS | ||
| 288 | |||
| 289 | #endif /* _SYS_PTRACE_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64le-linux-gnu/sys/ucontext.h deleted-200| ... | @@ -1,200 +0,0 @@ | ||
| 1 | /* Copyright (C) 1998-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_UCONTEXT_H | ||
| 19 | #define _SYS_UCONTEXT_H	1 | ||
| 20 | |||
| 21 | #include <features.h> | ||
| 22 | |||
| 23 | #include <bits/types/sigset_t.h> | ||
| 24 | #include <bits/types/stack_t.h> | ||
| 25 | |||
| 26 | |||
| 27 | #ifdef __USE_MISC | ||
| 28 | # define __ctx(fld) fld | ||
| 29 | #else | ||
| 30 | # define __ctx(fld) __ ## fld | ||
| 31 | #endif | ||
| 32 | |||
| 33 | struct __ctx(pt_regs); | ||
| 34 | |||
| 35 | #if __WORDSIZE == 32 | ||
| 36 | |||
| 37 | /* Number of general registers. */ | ||
| 38 | # define __NGREG	48 | ||
| 39 | # ifdef __USE_MISC | ||
| 40 | # define NGREG	__NGREG | ||
| 41 | # endif | ||
| 42 | |||
| 43 | /* Container for all general registers. */ | ||
| 44 | typedef unsigned long gregset_t[__NGREG]; | ||
| 45 | |||
| 46 | /* Container for floating-point registers and status */ | ||
| 47 | typedef struct _libc_fpstate | ||
| 48 | { | ||
| 49 | 	double __ctx(fpregs)[32]; | ||
| 50 | 	double __ctx(fpscr); | ||
| 51 | 	unsigned int _pad[2]; | ||
| 52 | } fpregset_t; | ||
| 53 | |||
| 54 | /* Container for Altivec/VMX registers and status. | ||
| 55 | Needs to be aligned on a 16-byte boundary. */ | ||
| 56 | typedef struct _libc_vrstate | ||
| 57 | { | ||
| 58 | 	unsigned int __ctx(vrregs)[32][4]; | ||
| 59 | 	unsigned int __ctx(vrsave); | ||
| 60 | 	unsigned int _pad[2]; | ||
| 61 | 	unsigned int __ctx(vscr); | ||
| 62 | } vrregset_t; | ||
| 63 | |||
| 64 | /* Context to describe whole processor state. */ | ||
| 65 | typedef struct | ||
| 66 | { | ||
| 67 | 	gregset_t __ctx(gregs); | ||
| 68 | 	fpregset_t __ctx(fpregs); | ||
| 69 | 	vrregset_t __ctx(vrregs) __attribute__((__aligned__(16))); | ||
| 70 | } mcontext_t; | ||
| 71 | |||
| 72 | #else | ||
| 73 | |||
| 74 | /* For 64-bit kernels with Altivec support, a machine context is exactly | ||
| 75 | * a sigcontext. For older kernel (without Altivec) the sigcontext matches | ||
| 76 | * the mcontext upto but not including the v_regs field. For kernels that | ||
| 77 | * don't set AT_HWCAP or return AT_HWCAP without PPC_FEATURE_HAS_ALTIVEC the | ||
| 78 | * v_regs field may not exist and should not be referenced. The v_regs field | ||
| 79 | * can be referenced safely only after verifying that PPC_FEATURE_HAS_ALTIVEC | ||
| 80 | * is set in AT_HWCAP. */ | ||
| 81 | |||
| 82 | /* Number of general registers. */ | ||
| 83 | # define __NGREG	48	/* includes r0-r31, nip, msr, lr, etc. */ | ||
| 84 | # define __NFPREG	33	/* includes fp0-fp31 &fpscr. */ | ||
| 85 | # define __NVRREG	34	/* includes v0-v31, vscr, & vrsave in | ||
| 86 | 				 split vectors */ | ||
| 87 | # ifdef __USE_MISC | ||
| 88 | # define NGREG	__NGREG | ||
| 89 | # define NFPREG	__NFPREG | ||
| 90 | # define NVRREG	__NVRREG | ||
| 91 | # endif | ||
| 92 | |||
| 93 | typedef unsigned long gregset_t[__NGREG]; | ||
| 94 | typedef double fpregset_t[__NFPREG]; | ||
| 95 | |||
| 96 | /* Container for Altivec/VMX Vector Status and Control Register. Only 32-bits | ||
| 97 | but can only be copied to/from a 128-bit vector register. So we allocated | ||
| 98 | a whole quadword speedup save/restore. */ | ||
| 99 | typedef struct _libc_vscr | ||
| 100 | { | ||
| 101 | #if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__ | ||
| 102 | 	unsigned int __pad[3]; | ||
| 103 | 	unsigned int __ctx(vscr_word); | ||
| 104 | #else | ||
| 105 | 	unsigned int __ctx(vscr_word); | ||
| 106 | 	unsigned int __pad[3]; | ||
| 107 | #endif | ||
| 108 | } vscr_t; | ||
| 109 | |||
| 110 | /* Container for Altivec/VMX registers and status. | ||
| 111 | Must to be aligned on a 16-byte boundary. */ | ||
| 112 | typedef struct _libc_vrstate | ||
| 113 | { | ||
| 114 | 	unsigned int	__ctx(vrregs)[32][4]; | ||
| 115 | 	vscr_t		__ctx(vscr); | ||
| 116 | 	unsigned int	__ctx(vrsave); | ||
| 117 | 	unsigned int	__pad[3]; | ||
| 118 | } vrregset_t __attribute__((__aligned__(16))); | ||
| 119 | |||
| 120 | typedef struct { | ||
| 121 | 	unsigned long	__glibc_reserved[4]; | ||
| 122 | 	int		__ctx(signal); | ||
| 123 | 	int		__pad0; | ||
| 124 | 	unsigned long	__ctx(handler); | ||
| 125 | 	unsigned long	__ctx(oldmask); | ||
| 126 | 	struct __ctx(pt_regs)	*__ctx(regs); | ||
| 127 | 	gregset_t	__ctx(gp_regs); | ||
| 128 | 	fpregset_t	__ctx(fp_regs); | ||
| 129 | /* | ||
| 130 | * To maintain compatibility with current implementations the sigcontext is | ||
| 131 | * extended by appending a pointer (v_regs) to a quadword type (elf_vrreg_t) | ||
| 132 | * followed by an unstructured (vmx_reserve) field of 69 doublewords. This | ||
| 133 | * allows the array of vector registers to be quadword aligned independent of | ||
| 134 | * the alignment of the containing sigcontext or ucontext. It is the | ||
| 135 | * responsibility of the code setting the sigcontext to set this pointer to | ||
| 136 | * either NULL (if this processor does not support the VMX feature) or the | ||
| 137 | * address of the first quadword within the allocated (vmx_reserve) area. | ||
| 138 | * | ||
| 139 | * The pointer (v_regs) of vector type (elf_vrreg_t) is essentially | ||
| 140 | * an array of 34 quadword entries. The entries with | ||
| 141 | * indexes 0-31 contain the corresponding vector registers. The entry with | ||
| 142 | * index 32 contains the vscr as the last word (offset 12) within the | ||
| 143 | * quadword. This allows the vscr to be stored as either a quadword (since | ||
| 144 | * it must be copied via a vector register to/from storage) or as a word. | ||
| 145 | * The entry with index 33 contains the vrsave as the first word (offset 0) | ||
| 146 | * within the quadword. | ||
| 147 | */ | ||
| 148 | 	vrregset_t	*__ctx(v_regs); | ||
| 149 | 	long		__ctx(vmx_reserve)[__NVRREG+__NVRREG+1]; | ||
| 150 | } mcontext_t; | ||
| 151 | |||
| 152 | #endif | ||
| 153 | |||
| 154 | /* Userlevel context. */ | ||
| 155 | typedef struct ucontext_t | ||
| 156 | { | ||
| 157 | unsigned long int __ctx(uc_flags); | ||
| 158 | struct ucontext_t *uc_link; | ||
| 159 | stack_t uc_stack; | ||
| 160 | #if __WORDSIZE == 32 | ||
| 161 | /* | ||
| 162 | * These fields are set up this way to maximize source and | ||
| 163 | * binary compatibility with code written for the old | ||
| 164 | * ucontext_t definition, which didn't include space for the | ||
| 165 | * registers. | ||
| 166 | * | ||
| 167 | * Different versions of the kernel have stored the registers on | ||
| 168 | * signal delivery at different offsets from the ucontext struct. | ||
| 169 | * Programs should thus use the uc_mcontext.uc_regs pointer to | ||
| 170 | * find where the registers are actually stored. The registers | ||
| 171 | * will be stored within the ucontext_t struct but not necessarily | ||
| 172 | * at a fixed address. As a side-effect, this lets us achieve | ||
| 173 | * 16-byte alignment for the register storage space if the | ||
| 174 | * Altivec registers are to be saved, without requiring 16-byte | ||
| 175 | * alignment on the whole ucontext_t. | ||
| 176 | * | ||
| 177 | * The uc_mcontext.regs field is included for source compatibility | ||
| 178 | * with programs written against the older ucontext_t definition, | ||
| 179 | * and its name should therefore not change. The uc_pad field | ||
| 180 | * is for binary compatibility with programs compiled against the | ||
| 181 | * old ucontext_t; it ensures that uc_mcontext.regs and uc_sigmask | ||
| 182 | * are at the same offset as previously. | ||
| 183 | */ | ||
| 184 | int __glibc_reserved1[7]; | ||
| 185 | union __ctx(uc_regs_ptr) { | ||
| 186 | struct __ctx(pt_regs) *__ctx(regs); | ||
| 187 | mcontext_t *__ctx(uc_regs); | ||
| 188 | } uc_mcontext; | ||
| 189 | sigset_t uc_sigmask; | ||
| 190 | /* last for extensibility */ | ||
| 191 | char __ctx(uc_reg_space)[sizeof (mcontext_t) + 12]; | ||
| 192 | #else /* 64-bit */ | ||
| 193 | sigset_t uc_sigmask; | ||
| 194 | mcontext_t uc_mcontext; /* last for extensibility */ | ||
| 195 | #endif | ||
| 196 | } ucontext_t; | ||
| 197 | |||
| 198 | #undef __ctx | ||
| 199 | |||
| 200 | #endif /* sys/ucontext.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/powerpc64le-linux-gnu/sys/user.h deleted-40| ... | @@ -1,40 +0,0 @@ | ||
| 1 | /* Copyright (C) 1998-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_USER_H | ||
| 19 | |||
| 20 | #define _SYS_USER_H	1 | ||
| 21 | #include <stddef.h> | ||
| 22 | #include <features.h> | ||
| 23 | |||
| 24 | #include <asm/ptrace.h> | ||
| 25 | |||
| 26 | struct user { | ||
| 27 | 	struct pt_regs	regs;			/* entire machine state */ | ||
| 28 | 	size_t		u_tsize;		/* text size (pages) */ | ||
| 29 | 	size_t		u_dsize;		/* data size (pages) */ | ||
| 30 | 	size_t		u_ssize;		/* stack size (pages) */ | ||
| 31 | 	unsigned long	start_code;		/* text starting address */ | ||
| 32 | 	unsigned long	start_data;		/* data starting address */ | ||
| 33 | 	unsigned long	start_stack;		/* stack starting address */ | ||
| 34 | 	long int	signal;			/* signal causing core dump */ | ||
| 35 | 	struct regs *	u_ar0;			/* help gdb find registers */ | ||
| 36 | 	unsigned long	magic;			/* identifies a core file */ | ||
| 37 | 	char		u_comm[32];		/* user command name */ | ||
| 38 | }; | ||
| 39 | |||
| 40 | #endif /* sys/user.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/riscv-linux-gnu/bits/endianness.h created+11| ... | @@ -0,0 +1,11 @@ | ||
| 1 | #ifndef _BITS_ENDIANNESS_H | ||
| 2 | #define _BITS_ENDIANNESS_H 1 | ||
| 3 | |||
| 4 | #ifndef _BITS_ENDIAN_H | ||
| 5 | # error "Never use <bits/endianness.h> directly; include <endian.h> instead." | ||
| 6 | #endif | ||
| 7 | |||
| 8 | /* RISC-V is little-endian. */ | ||
| 9 | #define __BYTE_ORDER __LITTLE_ENDIAN | ||
| 10 | |||
| 11 | #endif /* bits/endianness.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/riscv-linux-gnu/bits/environments.h created+81| ... | @@ -0,0 +1,81 @@ | ||
| 1 | /* Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _UNISTD_H | ||
| 19 | # error "Never include this file directly. Use <unistd.h> instead" | ||
| 20 | #endif | ||
| 21 | |||
| 22 | #include <bits/wordsize.h> | ||
| 23 | |||
| 24 | /* This header should define the following symbols under the described | ||
| 25 | situations. A value `1' means that the model is always supported, | ||
| 26 | `-1' means it is never supported. Undefined means it cannot be | ||
| 27 | statically decided. | ||
| 28 | |||
| 29 | _POSIX_V7_ILP32_OFF32 32bit int, long, pointers, and off_t type | ||
| 30 | _POSIX_V7_ILP32_OFFBIG 32bit int, long, and pointers and larger off_t type | ||
| 31 | |||
| 32 | _POSIX_V7_LP64_OFF32 64bit long and pointers and 32bit off_t type | ||
| 33 | _POSIX_V7_LPBIG_OFFBIG 64bit long and pointers and large off_t type | ||
| 34 | |||
| 35 | The macros _POSIX_V6_ILP32_OFF32, _POSIX_V6_ILP32_OFFBIG, | ||
| 36 | _POSIX_V6_LP64_OFF32, _POSIX_V6_LPBIG_OFFBIG, _XBS5_ILP32_OFF32, | ||
| 37 | _XBS5_ILP32_OFFBIG, _XBS5_LP64_OFF32, and _XBS5_LPBIG_OFFBIG were | ||
| 38 | used in previous versions of the Unix standard and are available | ||
| 39 | only for compatibility. | ||
| 40 | */ | ||
| 41 | |||
| 42 | #if __WORDSIZE == 64 | ||
| 43 | |||
| 44 | /* We can never provide environments with 32-bit wide pointers. */ | ||
| 45 | # define _POSIX_V7_ILP32_OFF32	-1 | ||
| 46 | # define _POSIX_V7_ILP32_OFFBIG	-1 | ||
| 47 | # define _POSIX_V6_ILP32_OFF32	-1 | ||
| 48 | # define _POSIX_V6_ILP32_OFFBIG	-1 | ||
| 49 | # define _XBS5_ILP32_OFF32	-1 | ||
| 50 | # define _XBS5_ILP32_OFFBIG	-1 | ||
| 51 | /* We also have no use (for now) for an environment with bigger pointers | ||
| 52 | and offsets. */ | ||
| 53 | # define _POSIX_V7_LPBIG_OFFBIG	-1 | ||
| 54 | # define _POSIX_V6_LPBIG_OFFBIG	-1 | ||
| 55 | # define _XBS5_LPBIG_OFFBIG	-1 | ||
| 56 | |||
| 57 | /* By default we have 64-bit wide `long int', pointers and `off_t'. */ | ||
| 58 | # define _POSIX_V7_LP64_OFF64	1 | ||
| 59 | # define _POSIX_V6_LP64_OFF64	1 | ||
| 60 | # define _XBS5_LP64_OFF64	1 | ||
| 61 | |||
| 62 | #else /* __WORDSIZE == 32 */ | ||
| 63 | |||
| 64 | /* RISC-V requires 64-bit off_t */ | ||
| 65 | # define _POSIX_V7_ILP32_OFF32 -1 | ||
| 66 | # define _POSIX_V6_ILP32_OFF32 -1 | ||
| 67 | # define _XBS5_ILP32_OFF32 -1 | ||
| 68 | |||
| 69 | # define _POSIX_V7_ILP32_OFFBIG	1 | ||
| 70 | # define _POSIX_V6_ILP32_OFFBIG	1 | ||
| 71 | # define _XBS5_ILP32_OFFBIG	1 | ||
| 72 | |||
| 73 | /* We can never provide environments with 64-bit wide pointers. */ | ||
| 74 | # define _POSIX_V7_LP64_OFF64	-1 | ||
| 75 | # define _POSIX_V7_LPBIG_OFFBIG	-1 | ||
| 76 | # define _POSIX_V6_LP64_OFF64	-1 | ||
| 77 | # define _POSIX_V6_LPBIG_OFFBIG	-1 | ||
| 78 | # define _XBS5_LP64_OFF64	-1 | ||
| 79 | # define _XBS5_LPBIG_OFFBIG	-1 | ||
| 80 | |||
| 81 | #endif /* __WORDSIZE == 32 */ | ||
| \ No newline at end of file | |||
lib/libc/include/riscv-linux-gnu/bits/fcntl.h created+62| ... | @@ -0,0 +1,62 @@ | ||
| 1 | /* O_*, F_*, FD_* bit values for Linux / RISC-V. | ||
| 2 | Copyright (C) 2011-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library; if not, see | ||
| 18 | <https://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifndef	_FCNTL_H | ||
| 21 | # error "Never use <bits/fcntl.h> directly; include <fcntl.h> instead." | ||
| 22 | #endif | ||
| 23 | |||
| 24 | #include <bits/wordsize.h> | ||
| 25 | |||
| 26 | /* In 64-bit ISA files are always with 64bit off_t and F_*LK64 are the same as | ||
| 27 | non-64-bit versions. It will need to be revised for 128-bit. */ | ||
| 28 | #if __WORDSIZE == 64 | ||
| 29 | # define __O_LARGEFILE	0 | ||
| 30 | |||
| 31 | # define F_GETLK64	5	/* Get record locking info. */ | ||
| 32 | # define F_SETLK64	6	/* Set record locking info (non-blocking). */ | ||
| 33 | # define F_SETLKW64	7	/* Set record locking info (blocking).	*/ | ||
| 34 | #endif | ||
| 35 | |||
| 36 | struct flock | ||
| 37 | { | ||
| 38 | short int l_type; /* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK. */ | ||
| 39 | short int l_whence; /* Where `l_start' is relative to (like `lseek'). */ | ||
| 40 | #if __WORDSIZE == 64 || !defined __USE_FILE_OFFSET64 | ||
| 41 | __off_t l_start; /* Offset where the lock begins. */ | ||
| 42 | __off_t l_len; /* Size of the locked area; zero means until EOF. */ | ||
| 43 | #else | ||
| 44 | __off64_t l_start; /* Offset where the lock begins. */ | ||
| 45 | __off64_t l_len; /* Size of the locked area; zero means until EOF. */ | ||
| 46 | #endif | ||
| 47 | __pid_t l_pid; /* Process holding the lock. */ | ||
| 48 | }; | ||
| 49 | |||
| 50 | #ifdef __USE_LARGEFILE64 | ||
| 51 | struct flock64 | ||
| 52 | { | ||
| 53 | short int l_type; /* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK. */ | ||
| 54 | short int l_whence; /* Where `l_start' is relative to (like `lseek'). */ | ||
| 55 | __off64_t l_start; /* Offset where the lock begins. */ | ||
| 56 | __off64_t l_len; /* Size of the locked area; zero means until EOF. */ | ||
| 57 | __pid_t l_pid; /* Process holding the lock. */ | ||
| 58 | }; | ||
| 59 | #endif | ||
| 60 | |||
| 61 | /* Include generic Linux declarations. */ | ||
| 62 | #include <bits/fcntl-linux.h> | ||
| \ No newline at end of file | |||
lib/libc/include/riscv-linux-gnu/bits/fenv.h created+74| ... | @@ -0,0 +1,74 @@ | ||
| 1 | /* Floating point environment, RISC-V version. | ||
| 2 | Copyright (C) 1998-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _FENV_H | ||
| 20 | # error "Never use <bits/fenv.h> directly; include <fenv.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | enum | ||
| 24 | { | ||
| 25 | FE_INEXACT = | ||
| 26 | #define FE_INEXACT	(0x01) | ||
| 27 | FE_INEXACT, | ||
| 28 | FE_UNDERFLOW = | ||
| 29 | #define FE_UNDERFLOW	(0x02) | ||
| 30 | FE_UNDERFLOW, | ||
| 31 | FE_OVERFLOW = | ||
| 32 | #define FE_OVERFLOW	(0x04) | ||
| 33 | FE_OVERFLOW, | ||
| 34 | FE_DIVBYZERO = | ||
| 35 | #define FE_DIVBYZERO	(0x08) | ||
| 36 | FE_DIVBYZERO, | ||
| 37 | FE_INVALID = | ||
| 38 | #define FE_INVALID	(0x10) | ||
| 39 | FE_INVALID | ||
| 40 | }; | ||
| 41 | |||
| 42 | #define FE_ALL_EXCEPT \ | ||
| 43 | 	(FE_INEXACT | FE_DIVBYZERO | FE_UNDERFLOW | FE_OVERFLOW | FE_INVALID) | ||
| 44 | |||
| 45 | enum | ||
| 46 | { | ||
| 47 | FE_TONEAREST = | ||
| 48 | #define FE_TONEAREST	(0x0) | ||
| 49 | FE_TONEAREST, | ||
| 50 | FE_TOWARDZERO = | ||
| 51 | #define FE_TOWARDZERO	(0x1) | ||
| 52 | FE_TOWARDZERO, | ||
| 53 | FE_DOWNWARD = | ||
| 54 | #define FE_DOWNWARD	(0x2) | ||
| 55 | FE_DOWNWARD, | ||
| 56 | FE_UPWARD = | ||
| 57 | #define FE_UPWARD	(0x3) | ||
| 58 | FE_UPWARD | ||
| 59 | }; | ||
| 60 | |||
| 61 | |||
| 62 | typedef unsigned int fexcept_t; | ||
| 63 | typedef unsigned int fenv_t; | ||
| 64 | |||
| 65 | /* If the default argument is used we use this value. */ | ||
| 66 | #define FE_DFL_ENV	((__const fenv_t *) -1) | ||
| 67 | |||
| 68 | #if __GLIBC_USE (IEC_60559_BFP_EXT_C23) | ||
| 69 | /* Type representing floating-point control modes. */ | ||
| 70 | typedef unsigned int femode_t; | ||
| 71 | |||
| 72 | /* Default floating-point control modes. */ | ||
| 73 | # define FE_DFL_MODE	((const femode_t *) -1L) | ||
| 74 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/riscv-linux-gnu/bits/link.h created+56| ... | @@ -0,0 +1,56 @@ | ||
| 1 | /* Machine-specific declarations for dynamic linker interface. RISC-V version. | ||
| 2 | Copyright (C) 2005-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef	_LINK_H | ||
| 20 | # error "Never include <bits/link.h> directly; use <link.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | typedef struct La_riscv_regs | ||
| 24 | { | ||
| 25 | unsigned long int lr_reg[8]; /* a0 - a7 */ | ||
| 26 | double lr_fpreg[8]; /* fa0 - fa7 */ | ||
| 27 | unsigned long int lr_ra; | ||
| 28 | unsigned long int lr_sp; | ||
| 29 | } La_riscv_regs; | ||
| 30 | |||
| 31 | /* Return values for calls from PLT on RISC-V. */ | ||
| 32 | typedef struct La_riscv_retval | ||
| 33 | { | ||
| 34 | unsigned long int lrv_a0; | ||
| 35 | unsigned long int lrv_a1; | ||
| 36 | double lrv_fa0; | ||
| 37 | double lrv_fa1; | ||
| 38 | } La_riscv_retval; | ||
| 39 | |||
| 40 | __BEGIN_DECLS | ||
| 41 | |||
| 42 | extern ElfW(Addr) la_riscv_gnu_pltenter (ElfW(Sym) *__sym, unsigned int __ndx, | ||
| 43 | 					 uintptr_t *__refcook, | ||
| 44 | 					 uintptr_t *__defcook, | ||
| 45 | 					 La_riscv_regs *__regs, | ||
| 46 | 					 unsigned int *__flags, | ||
| 47 | 					 const char *__symname, | ||
| 48 | 					 long int *__framesizep); | ||
| 49 | extern unsigned int la_riscv_gnu_pltexit (ElfW(Sym) *__sym, unsigned int __ndx, | ||
| 50 | 					 uintptr_t *__refcook, | ||
| 51 | 					 uintptr_t *__defcook, | ||
| 52 | 					 const La_riscv_regs *__inregs, | ||
| 53 | 					 La_riscv_retval *__outregs, | ||
| 54 | 					 const char *__symname); | ||
| 55 | |||
| 56 | __END_DECLS | ||
| \ No newline at end of file | |||
lib/libc/include/riscv-linux-gnu/bits/long-double.h created+21| ... | @@ -0,0 +1,21 @@ | ||
| 1 | /* Properties of long double type. ldbl-128 version. | ||
| 2 | Copyright (C) 2016-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* long double is distinct from double, so there is nothing to | ||
| 20 | define here. */ | ||
| 21 | #define __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI 0 | ||
| \ No newline at end of file | |||
lib/libc/include/riscv-linux-gnu/bits/procfs.h created+31| ... | @@ -0,0 +1,31 @@ | ||
| 1 | /* Types for registers for sys/procfs.h. RISC-V version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_PROCFS_H | ||
| 20 | # error "Never include <bits/procfs.h> directly; use <sys/procfs.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <sys/ucontext.h> | ||
| 24 | |||
| 25 | /* ELF register definitions */ | ||
| 26 | #define ELF_NGREG	NGREG | ||
| 27 | #define ELF_NFPREG	NFPREG | ||
| 28 | |||
| 29 | typedef unsigned long int elf_greg_t; | ||
| 30 | typedef unsigned long int elf_gregset_t[32]; | ||
| 31 | typedef union __riscv_mc_fp_state elf_fpregset_t; | ||
| \ No newline at end of file | |||
lib/libc/include/riscv-linux-gnu/bits/pthreadtypes-arch.h created+45| ... | @@ -0,0 +1,45 @@ | ||
| 1 | /* Machine-specific pthread type layouts. RISC-V version. | ||
| 2 | Copyright (C) 2011-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_PTHREADTYPES_ARCH_H | ||
| 20 | #define _BITS_PTHREADTYPES_ARCH_H	1 | ||
| 21 | |||
| 22 | #include <bits/endian.h> | ||
| 23 | |||
| 24 | #define __SIZEOF_PTHREAD_MUTEXATTR_T		4 | ||
| 25 | #define __SIZEOF_PTHREAD_COND_T			48 | ||
| 26 | #define __SIZEOF_PTHREAD_CONDATTR_T		4 | ||
| 27 | #define __SIZEOF_PTHREAD_RWLOCKATTR_T		8 | ||
| 28 | #define __SIZEOF_PTHREAD_BARRIERATTR_T		4 | ||
| 29 | |||
| 30 | #if __WORDSIZE == 64 | ||
| 31 | # define __SIZEOF_PTHREAD_ATTR_T		56 | ||
| 32 | # define __SIZEOF_PTHREAD_MUTEX_T		40 | ||
| 33 | # define __SIZEOF_PTHREAD_RWLOCK_T		56 | ||
| 34 | # define __SIZEOF_PTHREAD_BARRIER_T		32 | ||
| 35 | #else | ||
| 36 | # define __SIZEOF_PTHREAD_ATTR_T		32 | ||
| 37 | # define __SIZEOF_PTHREAD_MUTEX_T		32 | ||
| 38 | # define __SIZEOF_PTHREAD_RWLOCK_T		48 | ||
| 39 | # define __SIZEOF_PTHREAD_BARRIER_T		20 | ||
| 40 | #endif | ||
| 41 | |||
| 42 | #define __LOCK_ALIGNMENT | ||
| 43 | #define __ONCE_ALIGNMENT | ||
| 44 | |||
| 45 | #endif	/* bits/pthreadtypes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/riscv-linux-gnu/bits/rseq.h created+44| ... | @@ -0,0 +1,44 @@ | ||
| 1 | /* Restartable Sequences Linux riscv architecture header. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #include <bits/endian.h> | ||
| 19 | |||
| 20 | #ifndef _SYS_RSEQ_H | ||
| 21 | # error "Never use <bits/rseq.h> directly; include <sys/rseq.h> instead." | ||
| 22 | #endif | ||
| 23 | |||
| 24 | /* RSEQ_SIG is a signature required before each abort handler code. | ||
| 25 | |||
| 26 | It is a 32-bit value that maps to actual architecture code compiled | ||
| 27 | into applications and libraries. It needs to be defined for each | ||
| 28 | architecture. When choosing this value, it needs to be taken into | ||
| 29 | account that generating invalid instructions may have ill effects on | ||
| 30 | tools like objdump, and may also have impact on the CPU speculative | ||
| 31 | execution efficiency in some cases. | ||
| 32 | |||
| 33 | Select the instruction "csrw mhartid, x0" as the RSEQ_SIG. Unlike | ||
| 34 | other architectures, the ebreak instruction has no immediate field for | ||
| 35 | distinguishing purposes. Hence, ebreak is not suitable as RSEQ_SIG. | ||
| 36 | "csrw mhartid, x0" can also satisfy the RSEQ requirement because it | ||
| 37 | is an uncommon instruction and will raise an illegal instruction | ||
| 38 | exception when executed in all modes. */ | ||
| 39 | |||
| 40 | #if __BYTE_ORDER == __LITTLE_ENDIAN | ||
| 41 | #define RSEQ_SIG	0xf1401073 | ||
| 42 | #else | ||
| 43 | /* RSEQ is currently only supported on Little-Endian. */ | ||
| 44 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/riscv-linux-gnu/bits/setjmp.h created+39| ... | @@ -0,0 +1,39 @@ | ||
| 1 | /* Define the machine-dependent type `jmp_buf'. RISC-V version. | ||
| 2 | Copyright (C) 2011-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _RISCV_BITS_SETJMP_H | ||
| 20 | #define _RISCV_BITS_SETJMP_H | ||
| 21 | |||
| 22 | typedef struct __jmp_buf_internal_tag | ||
| 23 | { | ||
| 24 | /* Program counter. */ | ||
| 25 | long int __pc; | ||
| 26 | /* Callee-saved registers. */ | ||
| 27 | long int __regs[12]; | ||
| 28 | /* Stack pointer. */ | ||
| 29 | long int __sp; | ||
| 30 | |||
| 31 | /* Callee-saved floating point registers. */ | ||
| 32 | #if defined __riscv_float_abi_double | ||
| 33 | double __fpregs[12]; | ||
| 34 | #elif !defined __riscv_float_abi_soft | ||
| 35 | # error unsupported FLEN | ||
| 36 | #endif | ||
| 37 | } __jmp_buf[1]; | ||
| 38 | |||
| 39 | #endif /* _RISCV_BITS_SETJMP_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/riscv-linux-gnu/bits/sigcontext.h created+31| ... | @@ -0,0 +1,31 @@ | ||
| 1 | /* Machine-dependent signal context structure for Linux. RISC-V version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _BITS_SIGCONTEXT_H | ||
| 19 | #define _BITS_SIGCONTEXT_H 1 | ||
| 20 | |||
| 21 | #if !defined _SIGNAL_H && !defined _SYS_UCONTEXT_H | ||
| 22 | # error "Never use <bits/sigcontext.h> directly; include <signal.h> instead." | ||
| 23 | #endif | ||
| 24 | |||
| 25 | struct sigcontext { | ||
| 26 | /* gregs[0] holds the program counter. */ | ||
| 27 | unsigned long int gregs[32]; | ||
| 28 | unsigned long long int fpregs[66] __attribute__ ((__aligned__ (16))); | ||
| 29 | }; | ||
| 30 | |||
| 31 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/riscv-linux-gnu/bits/struct_rwlock.h created+68| ... | @@ -0,0 +1,68 @@ | ||
| 1 | /* RISC-V internal rwlock struct definitions. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library; if not, see | ||
| 18 | <https://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifndef _RWLOCK_INTERNAL_H | ||
| 21 | #define _RWLOCK_INTERNAL_H | ||
| 22 | |||
| 23 | /* There is a lot of padding in this structure. While it's not strictly | ||
| 24 | necessary on RISC-V, we're going to leave it in to be on the safe side in | ||
| 25 | case it's needed in the future. Most other architectures have the padding, | ||
| 26 | so this gives us the same extensibility as everyone else has. */ | ||
| 27 | struct __pthread_rwlock_arch_t | ||
| 28 | { | ||
| 29 | unsigned int __readers; | ||
| 30 | unsigned int __writers; | ||
| 31 | unsigned int __wrphase_futex; | ||
| 32 | unsigned int __writers_futex; | ||
| 33 | unsigned int __pad3; | ||
| 34 | unsigned int __pad4; | ||
| 35 | #if __WORDSIZE == 64 | ||
| 36 | int __cur_writer; | ||
| 37 | int __shared; | ||
| 38 | unsigned long int __pad1; | ||
| 39 | unsigned long int __pad2; | ||
| 40 | unsigned int __flags; | ||
| 41 | #else | ||
| 42 | # if __BYTE_ORDER == __BIG_ENDIAN | ||
| 43 | unsigned char __pad1; | ||
| 44 | unsigned char __pad2; | ||
| 45 | unsigned char __shared; | ||
| 46 | unsigned char __flags; | ||
| 47 | # else | ||
| 48 | unsigned char __flags; | ||
| 49 | unsigned char __shared; | ||
| 50 | unsigned char __pad1; | ||
| 51 | unsigned char __pad2; | ||
| 52 | # endif | ||
| 53 | int __cur_writer; | ||
| 54 | #endif | ||
| 55 | }; | ||
| 56 | |||
| 57 | #if __WORDSIZE == 64 | ||
| 58 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 59 | 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags | ||
| 60 | #elif __BYTE_ORDER == __BIG_ENDIAN | ||
| 61 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 62 | 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0 | ||
| 63 | #else | ||
| 64 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 65 | 0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0 | ||
| 66 | #endif | ||
| 67 | |||
| 68 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/riscv-linux-gnu/bits/struct_stat.h created+127| ... | @@ -0,0 +1,127 @@ | ||
| 1 | /* Definition for struct stat. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #if !defined _SYS_STAT_H && !defined _FCNTL_H | ||
| 20 | # error "Never include <bits/struct_stat.h> directly; use <sys/stat.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef _BITS_STRUCT_STAT_H | ||
| 24 | #define _BITS_STRUCT_STAT_H	1 | ||
| 25 | |||
| 26 | #include <bits/endian.h> | ||
| 27 | #include <bits/wordsize.h> | ||
| 28 | |||
| 29 | #if defined __USE_FILE_OFFSET64 | ||
| 30 | # define __field64(type, type64, name) type64 name | ||
| 31 | #elif __WORDSIZE == 64 || defined __INO_T_MATCHES_INO64_T | ||
| 32 | # if defined __INO_T_MATCHES_INO64_T && !defined __OFF_T_MATCHES_OFF64_T | ||
| 33 | # error "ino_t and off_t must both be the same type" | ||
| 34 | # endif | ||
| 35 | # define __field64(type, type64, name) type name | ||
| 36 | #elif __BYTE_ORDER == __LITTLE_ENDIAN | ||
| 37 | # define __field64(type, type64, name) \ | ||
| 38 | type name __attribute__((__aligned__ (__alignof__ (type64)))); int __##name##_pad | ||
| 39 | #else | ||
| 40 | # define __field64(type, type64, name) \ | ||
| 41 | int __##name##_pad __attribute__((__aligned__ (__alignof__ (type64)))); type name | ||
| 42 | #endif | ||
| 43 | |||
| 44 | struct stat | ||
| 45 | { | ||
| 46 | __dev_t st_dev;		/* Device. */ | ||
| 47 | __field64(__ino_t, __ino64_t, st_ino); /* File serial number. */ | ||
| 48 | __mode_t st_mode;		/* File mode. */ | ||
| 49 | __nlink_t st_nlink;		/* Link count. */ | ||
| 50 | __uid_t st_uid;		/* User ID of the file's owner.	*/ | ||
| 51 | __gid_t st_gid;		/* Group ID of the file's group.*/ | ||
| 52 | __dev_t st_rdev;		/* Device number, if device. */ | ||
| 53 | __dev_t __pad1; | ||
| 54 | __field64(__off_t, __off64_t, st_size); /* Size of file, in bytes. */ | ||
| 55 | __blksize_t st_blksize;	/* Optimal block size for I/O. */ | ||
| 56 | int __pad2; | ||
| 57 | __field64(__blkcnt_t, __blkcnt64_t, st_blocks); /* 512-byte blocks */ | ||
| 58 | #ifdef __USE_XOPEN2K8 | ||
| 59 | /* Nanosecond resolution timestamps are stored in a format | ||
| 60 | equivalent to 'struct timespec'. This is the type used | ||
| 61 | whenever possible but the Unix namespace rules do not allow the | ||
| 62 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 63 | Therefore we have to handle the use of this header in strictly | ||
| 64 | standard-compliant sources special. */ | ||
| 65 | struct timespec st_atim;		/* Time of last access. */ | ||
| 66 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 67 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 68 | # define st_atime st_atim.tv_sec	/* Backward compatibility. */ | ||
| 69 | # define st_mtime st_mtim.tv_sec | ||
| 70 | # define st_ctime st_ctim.tv_sec | ||
| 71 | #else | ||
| 72 | __time_t st_atime;			/* Time of last access. */ | ||
| 73 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 74 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 75 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 76 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 77 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 78 | #endif | ||
| 79 | int __glibc_reserved[2]; | ||
| 80 | }; | ||
| 81 | |||
| 82 | #undef __field64 | ||
| 83 | |||
| 84 | #ifdef __USE_LARGEFILE64 | ||
| 85 | struct stat64 | ||
| 86 | { | ||
| 87 | __dev_t st_dev;		/* Device. */ | ||
| 88 | __ino64_t st_ino;		/* File serial number.	*/ | ||
| 89 | __mode_t st_mode;		/* File mode. */ | ||
| 90 | __nlink_t st_nlink;		/* Link count. */ | ||
| 91 | __uid_t st_uid;		/* User ID of the file's owner.	*/ | ||
| 92 | __gid_t st_gid;		/* Group ID of the file's group.*/ | ||
| 93 | __dev_t st_rdev;		/* Device number, if device. */ | ||
| 94 | __dev_t __pad1; | ||
| 95 | __off64_t st_size;		/* Size of file, in bytes. */ | ||
| 96 | __blksize_t st_blksize;	/* Optimal block size for I/O. */ | ||
| 97 | int __pad2; | ||
| 98 | __blkcnt64_t st_blocks;	/* Nr. 512-byte blocks allocated. */ | ||
| 99 | #ifdef __USE_XOPEN2K8 | ||
| 100 | /* Nanosecond resolution timestamps are stored in a format | ||
| 101 | equivalent to 'struct timespec'. This is the type used | ||
| 102 | whenever possible but the Unix namespace rules do not allow the | ||
| 103 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 104 | Therefore we have to handle the use of this header in strictly | ||
| 105 | standard-compliant sources special. */ | ||
| 106 | struct timespec st_atim;		/* Time of last access. */ | ||
| 107 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 108 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 109 | #else | ||
| 110 | __time_t st_atime;			/* Time of last access. */ | ||
| 111 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 112 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 113 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 114 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 115 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 116 | #endif | ||
| 117 | int __glibc_reserved[2]; | ||
| 118 | }; | ||
| 119 | #endif | ||
| 120 | |||
| 121 | /* Tell code we have these members. */ | ||
| 122 | #define	_STATBUF_ST_BLKSIZE | ||
| 123 | #define _STATBUF_ST_RDEV | ||
| 124 | /* Nanosecond resolution time values are supported. */ | ||
| 125 | #define _STATBUF_ST_NSEC | ||
| 126 | |||
| 127 | #endif /* _BITS_STRUCT_STAT_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/riscv-linux-gnu/bits/time64.h created+36| ... | @@ -0,0 +1,36 @@ | ||
| 1 | /* bits/time64.h -- underlying types for __time64_t. RISC-V version. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_TYPES_H | ||
| 20 | # error "Never include <bits/time64.h> directly; use <sys/types.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef	_BITS_TIME64_H | ||
| 24 | #define	_BITS_TIME64_H	1 | ||
| 25 | |||
| 26 | /* Define __TIME64_T_TYPE so that it is always a 64-bit type. */ | ||
| 27 | |||
| 28 | #if __WORDSIZE == 64 | ||
| 29 | /* If we already have 64-bit time type then use it. */ | ||
| 30 | # define __TIME64_T_TYPE		__TIME_T_TYPE | ||
| 31 | #else | ||
| 32 | /* Define a 64-bit time type alongsize the 32-bit one. */ | ||
| 33 | # define __TIME64_T_TYPE		__SQUAD_TYPE | ||
| 34 | #endif | ||
| 35 | |||
| 36 | #endif /* bits/time64.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/riscv-linux-gnu/bits/timesize.h created+20| ... | @@ -0,0 +1,20 @@ | ||
| 1 | /* Bit size of the time_t type at glibc build time, general case. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* Size in bits of the 'time_t' type of the default ABI. */ | ||
| 20 | #define __TIMESIZE	64 | ||
| \ No newline at end of file | |||
lib/libc/include/riscv-linux-gnu/bits/wordsize.h created+30| ... | @@ -0,0 +1,30 @@ | ||
| 1 | /* Determine the wordsize from the preprocessor defines. RISC-V version. | ||
| 2 | Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #if __riscv_xlen == (__SIZEOF_POINTER__ * 8) | ||
| 20 | # define __WORDSIZE __riscv_xlen | ||
| 21 | #else | ||
| 22 | # error unsupported ABI | ||
| 23 | #endif | ||
| 24 | |||
| 25 | #define __WORDSIZE_TIME64_COMPAT32 1 | ||
| 26 | |||
| 27 | #if __WORDSIZE == 32 | ||
| 28 | # define __WORDSIZE32_SIZE_ULONG 0 | ||
| 29 | # define __WORDSIZE32_PTRDIFF_LONG 0 | ||
| 30 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/riscv-linux-gnu/fpu_control.h created+74| ... | @@ -0,0 +1,74 @@ | ||
| 1 | /* FPU control word bits. RISC-V version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _FPU_CONTROL_H | ||
| 20 | #define _FPU_CONTROL_H | ||
| 21 | |||
| 22 | #include <features.h> | ||
| 23 | |||
| 24 | #ifndef __riscv_flen | ||
| 25 | |||
| 26 | # define _FPU_RESERVED 0xffffffff | ||
| 27 | # define _FPU_DEFAULT 0x00000000 | ||
| 28 | typedef unsigned int fpu_control_t; | ||
| 29 | # define _FPU_GETCW(cw) (cw) = 0 | ||
| 30 | # define _FPU_SETCW(cw) do { } while (0) | ||
| 31 | extern fpu_control_t __fpu_control; | ||
| 32 | |||
| 33 | #else /* __riscv_flen */ | ||
| 34 | |||
| 35 | # define _FPU_RESERVED 0 | ||
| 36 | # define _FPU_DEFAULT 0 | ||
| 37 | # define _FPU_IEEE _FPU_DEFAULT | ||
| 38 | |||
| 39 | /* Type of the control word. */ | ||
| 40 | typedef unsigned int fpu_control_t __attribute__ ((__mode__ (__SI__))); | ||
| 41 | |||
| 42 | /* Macros for accessing the hardware control word. */ | ||
| 43 | # define _FPU_GETCW(cw) __asm__ volatile ("frsr %0" : "=r" (cw)) | ||
| 44 | # define _FPU_SETCW(cw) __asm__ volatile ("fssr %z0" : : "rJ" (cw)) | ||
| 45 | |||
| 46 | /* Default control word set at startup. */ | ||
| 47 | extern fpu_control_t __fpu_control; | ||
| 48 | |||
| 49 | # define _FCLASS(x) (__extension__ ({ int __res; \ | ||
| 50 | if (sizeof (x) * 8 > __riscv_flen) __builtin_trap (); \ | ||
| 51 | if (sizeof (x) == 4) asm ("fclass.s %0, %1" : "=r" (__res) : "f" (x)); \ | ||
| 52 | else if (sizeof (x) == 8) asm ("fclass.d %0, %1" : "=r" (__res) : "f" (x)); \ | ||
| 53 | else __builtin_trap (); \ | ||
| 54 | __res; })) | ||
| 55 | |||
| 56 | # define _FCLASS_MINF (1 << 0) | ||
| 57 | # define _FCLASS_MNORM (1 << 1) | ||
| 58 | # define _FCLASS_MSUBNORM (1 << 2) | ||
| 59 | # define _FCLASS_MZERO (1 << 3) | ||
| 60 | # define _FCLASS_PZERO (1 << 4) | ||
| 61 | # define _FCLASS_PSUBNORM (1 << 5) | ||
| 62 | # define _FCLASS_PNORM (1 << 6) | ||
| 63 | # define _FCLASS_PINF (1 << 7) | ||
| 64 | # define _FCLASS_SNAN (1 << 8) | ||
| 65 | # define _FCLASS_QNAN (1 << 9) | ||
| 66 | # define _FCLASS_ZERO (_FCLASS_MZERO | _FCLASS_PZERO) | ||
| 67 | # define _FCLASS_SUBNORM (_FCLASS_MSUBNORM | _FCLASS_PSUBNORM) | ||
| 68 | # define _FCLASS_NORM (_FCLASS_MNORM | _FCLASS_PNORM) | ||
| 69 | # define _FCLASS_INF (_FCLASS_MINF | _FCLASS_PINF) | ||
| 70 | # define _FCLASS_NAN (_FCLASS_SNAN | _FCLASS_QNAN) | ||
| 71 | |||
| 72 | #endif /* __riscv_flen */ | ||
| 73 | |||
| 74 | #endif	/* fpu_control.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/riscv-linux-gnu/gnu/lib-names-ilp32d.h created+27| ... | @@ -0,0 +1,27 @@ | ||
| 1 | /* This file is automatically generated. */ | ||
| 2 | #ifndef __GNU_LIB_NAMES_H | ||
| 3 | # error "Never use <gnu/lib-names-ilp32d.h> directly; include <gnu/lib-names.h> instead." | ||
| 4 | #endif | ||
| 5 | |||
| 6 | #define LD_LINUX_RISCV32_ILP32D_SO "ld-linux-riscv32-ilp32d.so.1" | ||
| 7 | #define LD_SO "ld-linux-riscv32-ilp32d.so.1" | ||
| 8 | #define LIBANL_SO "libanl.so.1" | ||
| 9 | #define LIBBROKENLOCALE_SO "libBrokenLocale.so.1" | ||
| 10 | #define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0" | ||
| 11 | #define LIBC_SO "libc.so.6" | ||
| 12 | #define LIBDL_SO "libdl.so.2" | ||
| 13 | #define LIBGCC_S_SO "libgcc_s.so.1" | ||
| 14 | #define LIBMVEC_SO "libmvec.so.1" | ||
| 15 | #define LIBM_SO "libm.so.6" | ||
| 16 | #define LIBNSL_SO "libnsl.so.1" | ||
| 17 | #define LIBNSS_COMPAT_SO "libnss_compat.so.2" | ||
| 18 | #define LIBNSS_DB_SO "libnss_db.so.2" | ||
| 19 | #define LIBNSS_DNS_SO "libnss_dns.so.2" | ||
| 20 | #define LIBNSS_FILES_SO "libnss_files.so.2" | ||
| 21 | #define LIBNSS_HESIOD_SO "libnss_hesiod.so.2" | ||
| 22 | #define LIBNSS_LDAP_SO "libnss_ldap.so.2" | ||
| 23 | #define LIBPTHREAD_SO "libpthread.so.0" | ||
| 24 | #define LIBRESOLV_SO "libresolv.so.2" | ||
| 25 | #define LIBRT_SO "librt.so.1" | ||
| 26 | #define LIBTHREAD_DB_SO "libthread_db.so.1" | ||
| 27 | #define LIBUTIL_SO "libutil.so.1" | ||
| \ No newline at end of file | |||
lib/libc/include/riscv-linux-gnu/gnu/lib-names-lp64d.h created+27| ... | @@ -0,0 +1,27 @@ | ||
| 1 | /* This file is automatically generated. */ | ||
| 2 | #ifndef __GNU_LIB_NAMES_H | ||
| 3 | # error "Never use <gnu/lib-names-lp64d.h> directly; include <gnu/lib-names.h> instead." | ||
| 4 | #endif | ||
| 5 | |||
| 6 | #define LD_LINUX_RISCV64_LP64D_SO "ld-linux-riscv64-lp64d.so.1" | ||
| 7 | #define LD_SO "ld-linux-riscv64-lp64d.so.1" | ||
| 8 | #define LIBANL_SO "libanl.so.1" | ||
| 9 | #define LIBBROKENLOCALE_SO "libBrokenLocale.so.1" | ||
| 10 | #define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0" | ||
| 11 | #define LIBC_SO "libc.so.6" | ||
| 12 | #define LIBDL_SO "libdl.so.2" | ||
| 13 | #define LIBGCC_S_SO "libgcc_s.so.1" | ||
| 14 | #define LIBMVEC_SO "libmvec.so.1" | ||
| 15 | #define LIBM_SO "libm.so.6" | ||
| 16 | #define LIBNSL_SO "libnsl.so.1" | ||
| 17 | #define LIBNSS_COMPAT_SO "libnss_compat.so.2" | ||
| 18 | #define LIBNSS_DB_SO "libnss_db.so.2" | ||
| 19 | #define LIBNSS_DNS_SO "libnss_dns.so.2" | ||
| 20 | #define LIBNSS_FILES_SO "libnss_files.so.2" | ||
| 21 | #define LIBNSS_HESIOD_SO "libnss_hesiod.so.2" | ||
| 22 | #define LIBNSS_LDAP_SO "libnss_ldap.so.2" | ||
| 23 | #define LIBPTHREAD_SO "libpthread.so.0" | ||
| 24 | #define LIBRESOLV_SO "libresolv.so.2" | ||
| 25 | #define LIBRT_SO "librt.so.1" | ||
| 26 | #define LIBTHREAD_DB_SO "libthread_db.so.1" | ||
| 27 | #define LIBUTIL_SO "libutil.so.1" | ||
| \ No newline at end of file | |||
lib/libc/include/riscv-linux-gnu/gnu/lib-names.h created+22| ... | @@ -0,0 +1,22 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | It defines macros to allow user program to find the shared | ||
| 3 | library files which come as part of GNU libc. */ | ||
| 4 | #ifndef __GNU_LIB_NAMES_H | ||
| 5 | #define __GNU_LIB_NAMES_H	1 | ||
| 6 | |||
| 7 | #include <bits/wordsize.h> | ||
| 8 | |||
| 9 | #if __WORDSIZE == 32 && defined __riscv_float_abi_soft | ||
| 10 | # include <gnu/lib-names-ilp32.h> | ||
| 11 | #endif | ||
| 12 | #if __WORDSIZE == 32 && defined __riscv_float_abi_double | ||
| 13 | # include <gnu/lib-names-ilp32d.h> | ||
| 14 | #endif | ||
| 15 | #if __WORDSIZE == 64 && defined __riscv_float_abi_soft | ||
| 16 | # include <gnu/lib-names-lp64.h> | ||
| 17 | #endif | ||
| 18 | #if __WORDSIZE == 64 && defined __riscv_float_abi_double | ||
| 19 | # include <gnu/lib-names-lp64d.h> | ||
| 20 | #endif | ||
| 21 | |||
| 22 | #endif	/* gnu/lib-names.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/riscv-linux-gnu/gnu/stubs-ilp32d.h created+24| ... | @@ -0,0 +1,24 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | It defines a symbol `__stub_FUNCTION' for each function | ||
| 3 | in the C library which is a stub, meaning it will fail | ||
| 4 | every time called, usually setting errno to ENOSYS. */ | ||
| 5 | |||
| 6 | #ifdef _LIBC | ||
| 7 | #error Applications may not define the macro _LIBC | ||
| 8 | #endif | ||
| 9 | |||
| 10 | #define __stub___compat_bdflush | ||
| 11 | #define __stub___compat_create_module | ||
| 12 | #define __stub___compat_get_kernel_syms | ||
| 13 | #define __stub___compat_query_module | ||
| 14 | #define __stub___compat_uselib | ||
| 15 | #define __stub_chflags | ||
| 16 | #define __stub_fchflags | ||
| 17 | #define __stub_fedisableexcept | ||
| 18 | #define __stub_feenableexcept | ||
| 19 | #define __stub_fegetexcept | ||
| 20 | #define __stub_gtty | ||
| 21 | #define __stub_revoke | ||
| 22 | #define __stub_setlogin | ||
| 23 | #define __stub_sigreturn | ||
| 24 | #define __stub_stty | ||
| \ No newline at end of file | |||
lib/libc/include/riscv-linux-gnu/gnu/stubs-lp64d.h created+24| ... | @@ -0,0 +1,24 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | It defines a symbol `__stub_FUNCTION' for each function | ||
| 3 | in the C library which is a stub, meaning it will fail | ||
| 4 | every time called, usually setting errno to ENOSYS. */ | ||
| 5 | |||
| 6 | #ifdef _LIBC | ||
| 7 | #error Applications may not define the macro _LIBC | ||
| 8 | #endif | ||
| 9 | |||
| 10 | #define __stub___compat_bdflush | ||
| 11 | #define __stub___compat_create_module | ||
| 12 | #define __stub___compat_get_kernel_syms | ||
| 13 | #define __stub___compat_query_module | ||
| 14 | #define __stub___compat_uselib | ||
| 15 | #define __stub_chflags | ||
| 16 | #define __stub_fchflags | ||
| 17 | #define __stub_fedisableexcept | ||
| 18 | #define __stub_feenableexcept | ||
| 19 | #define __stub_fegetexcept | ||
| 20 | #define __stub_gtty | ||
| 21 | #define __stub_revoke | ||
| 22 | #define __stub_setlogin | ||
| 23 | #define __stub_sigreturn | ||
| 24 | #define __stub_stty | ||
| \ No newline at end of file | |||
lib/libc/include/riscv-linux-gnu/gnu/stubs.h created+18| ... | @@ -0,0 +1,18 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | This file selects the right generated file of `__stub_FUNCTION' macros | ||
| 3 | based on the architecture being compiled for. */ | ||
| 4 | |||
| 5 | #include <bits/wordsize.h> | ||
| 6 | |||
| 7 | #if __WORDSIZE == 32 && defined __riscv_float_abi_soft | ||
| 8 | # include <gnu/stubs-ilp32.h> | ||
| 9 | #endif | ||
| 10 | #if __WORDSIZE == 32 && defined __riscv_float_abi_double | ||
| 11 | # include <gnu/stubs-ilp32d.h> | ||
| 12 | #endif | ||
| 13 | #if __WORDSIZE == 64 && defined __riscv_float_abi_soft | ||
| 14 | # include <gnu/stubs-lp64.h> | ||
| 15 | #endif | ||
| 16 | #if __WORDSIZE == 64 && defined __riscv_float_abi_double | ||
| 17 | # include <gnu/stubs-lp64d.h> | ||
| 18 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/riscv-linux-gnu/ieee754.h created+170| ... | @@ -0,0 +1,170 @@ | ||
| 1 | /* Copyright (C) 1992-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _IEEE754_H | ||
| 19 | #define _IEEE754_H 1 | ||
| 20 | |||
| 21 | #include <features.h> | ||
| 22 | |||
| 23 | #include <bits/endian.h> | ||
| 24 | |||
| 25 | __BEGIN_DECLS | ||
| 26 | |||
| 27 | union ieee754_float | ||
| 28 | { | ||
| 29 | float f; | ||
| 30 | |||
| 31 | /* This is the IEEE 754 single-precision format. */ | ||
| 32 | struct | ||
| 33 | { | ||
| 34 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 35 | 	unsigned int negative:1; | ||
| 36 | 	unsigned int exponent:8; | ||
| 37 | 	unsigned int mantissa:23; | ||
| 38 | #endif				/* Big endian. */ | ||
| 39 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 40 | 	unsigned int mantissa:23; | ||
| 41 | 	unsigned int exponent:8; | ||
| 42 | 	unsigned int negative:1; | ||
| 43 | #endif				/* Little endian. */ | ||
| 44 | } ieee; | ||
| 45 | |||
| 46 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 47 | struct | ||
| 48 | { | ||
| 49 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 50 | 	unsigned int negative:1; | ||
| 51 | 	unsigned int exponent:8; | ||
| 52 | 	unsigned int quiet_nan:1; | ||
| 53 | 	unsigned int mantissa:22; | ||
| 54 | #endif				/* Big endian. */ | ||
| 55 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 56 | 	unsigned int mantissa:22; | ||
| 57 | 	unsigned int quiet_nan:1; | ||
| 58 | 	unsigned int exponent:8; | ||
| 59 | 	unsigned int negative:1; | ||
| 60 | #endif				/* Little endian. */ | ||
| 61 | } ieee_nan; | ||
| 62 | }; | ||
| 63 | |||
| 64 | #define IEEE754_FLOAT_BIAS	0x7f /* Added to exponent. */ | ||
| 65 | |||
| 66 | |||
| 67 | union ieee754_double | ||
| 68 | { | ||
| 69 | double d; | ||
| 70 | |||
| 71 | /* This is the IEEE 754 double-precision format. */ | ||
| 72 | struct | ||
| 73 | { | ||
| 74 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 75 | 	unsigned int negative:1; | ||
| 76 | 	unsigned int exponent:11; | ||
| 77 | 	/* Together these comprise the mantissa. */ | ||
| 78 | 	unsigned int mantissa0:20; | ||
| 79 | 	unsigned int mantissa1:32; | ||
| 80 | #endif				/* Big endian. */ | ||
| 81 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 82 | 	/* Together these comprise the mantissa. */ | ||
| 83 | 	unsigned int mantissa1:32; | ||
| 84 | 	unsigned int mantissa0:20; | ||
| 85 | 	unsigned int exponent:11; | ||
| 86 | 	unsigned int negative:1; | ||
| 87 | #endif				/* Little endian. */ | ||
| 88 | } ieee; | ||
| 89 | |||
| 90 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 91 | struct | ||
| 92 | { | ||
| 93 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 94 | 	unsigned int negative:1; | ||
| 95 | 	unsigned int exponent:11; | ||
| 96 | 	unsigned int quiet_nan:1; | ||
| 97 | 	/* Together these comprise the mantissa. */ | ||
| 98 | 	unsigned int mantissa0:19; | ||
| 99 | 	unsigned int mantissa1:32; | ||
| 100 | #else | ||
| 101 | 	/* Together these comprise the mantissa. */ | ||
| 102 | 	unsigned int mantissa1:32; | ||
| 103 | 	unsigned int mantissa0:19; | ||
| 104 | 	unsigned int quiet_nan:1; | ||
| 105 | 	unsigned int exponent:11; | ||
| 106 | 	unsigned int negative:1; | ||
| 107 | #endif | ||
| 108 | } ieee_nan; | ||
| 109 | }; | ||
| 110 | |||
| 111 | #define IEEE754_DOUBLE_BIAS	0x3ff /* Added to exponent. */ | ||
| 112 | |||
| 113 | |||
| 114 | union ieee854_long_double | ||
| 115 | { | ||
| 116 | long double d; | ||
| 117 | |||
| 118 | /* This is the IEEE 854 quad-precision format. */ | ||
| 119 | struct | ||
| 120 | { | ||
| 121 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 122 | 	unsigned int negative:1; | ||
| 123 | 	unsigned int exponent:15; | ||
| 124 | 	/* Together these comprise the mantissa. */ | ||
| 125 | 	unsigned int mantissa0:16; | ||
| 126 | 	unsigned int mantissa1:32; | ||
| 127 | 	unsigned int mantissa2:32; | ||
| 128 | 	unsigned int mantissa3:32; | ||
| 129 | #endif				/* Big endian. */ | ||
| 130 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 131 | 	/* Together these comprise the mantissa. */ | ||
| 132 | 	unsigned int mantissa3:32; | ||
| 133 | 	unsigned int mantissa2:32; | ||
| 134 | 	unsigned int mantissa1:32; | ||
| 135 | 	unsigned int mantissa0:16; | ||
| 136 | 	unsigned int exponent:15; | ||
| 137 | 	unsigned int negative:1; | ||
| 138 | #endif				/* Little endian. */ | ||
| 139 | } ieee; | ||
| 140 | |||
| 141 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 142 | struct | ||
| 143 | { | ||
| 144 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 145 | 	unsigned int negative:1; | ||
| 146 | 	unsigned int exponent:15; | ||
| 147 | 	unsigned int quiet_nan:1; | ||
| 148 | 	/* Together these comprise the mantissa. */ | ||
| 149 | 	unsigned int mantissa0:15; | ||
| 150 | 	unsigned int mantissa1:32; | ||
| 151 | 	unsigned int mantissa2:32; | ||
| 152 | 	unsigned int mantissa3:32; | ||
| 153 | #else | ||
| 154 | 	/* Together these comprise the mantissa. */ | ||
| 155 | 	unsigned int mantissa3:32; | ||
| 156 | 	unsigned int mantissa2:32; | ||
| 157 | 	unsigned int mantissa1:32; | ||
| 158 | 	unsigned int mantissa0:15; | ||
| 159 | 	unsigned int quiet_nan:1; | ||
| 160 | 	unsigned int exponent:15; | ||
| 161 | 	unsigned int negative:1; | ||
| 162 | #endif | ||
| 163 | } ieee_nan; | ||
| 164 | }; | ||
| 165 | |||
| 166 | #define IEEE854_LONG_DOUBLE_BIAS 0x3fff /* Added to exponent. */ | ||
| 167 | |||
| 168 | __END_DECLS | ||
| 169 | |||
| 170 | #endif /* ieee754.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/riscv-linux-gnu/sys/asm.h created+66| ... | @@ -0,0 +1,66 @@ | ||
| 1 | /* Miscellaneous macros. | ||
| 2 | Copyright (C) 2000-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_ASM_H | ||
| 20 | #define _SYS_ASM_H | ||
| 21 | |||
| 22 | /* Macros to handle different pointer/register sizes for 32/64-bit code. */ | ||
| 23 | #if __riscv_xlen == 64 | ||
| 24 | # define PTRLOG 3 | ||
| 25 | # define SZREG 8 | ||
| 26 | # define REG_S sd | ||
| 27 | # define REG_L ld | ||
| 28 | #elif __riscv_xlen == 32 | ||
| 29 | # define PTRLOG 2 | ||
| 30 | # define SZREG 4 | ||
| 31 | # define REG_S sw | ||
| 32 | # define REG_L lw | ||
| 33 | #else | ||
| 34 | # error __riscv_xlen must equal 32 or 64 | ||
| 35 | #endif | ||
| 36 | |||
| 37 | #if !defined __riscv_float_abi_soft | ||
| 38 | /* For ABI uniformity, reserve 8 bytes for floats, even if double-precision | ||
| 39 | floating-point is not supported in hardware. */ | ||
| 40 | # if defined __riscv_float_abi_double | ||
| 41 | # define FREG_L fld | ||
| 42 | # define FREG_S fsd | ||
| 43 | # define SZFREG 8 | ||
| 44 | # else | ||
| 45 | # error unsupported FLEN | ||
| 46 | # endif | ||
| 47 | #endif | ||
| 48 | |||
| 49 | /* Declare leaf routine. */ | ||
| 50 | #define	LEAF(symbol)				\ | ||
| 51 | 		.globl	symbol;			\ | ||
| 52 | 		.align	2;			\ | ||
| 53 | 		.type	symbol,@function;	\ | ||
| 54 | symbol:						\ | ||
| 55 | 		cfi_startproc; | ||
| 56 | |||
| 57 | /* Mark end of function. */ | ||
| 58 | #undef END | ||
| 59 | #define END(function)				\ | ||
| 60 | 		cfi_endproc;			\ | ||
| 61 | 		.size	function,.-function | ||
| 62 | |||
| 63 | /* Stack alignment. */ | ||
| 64 | #define ALMASK	~15 | ||
| 65 | |||
| 66 | #endif /* sys/asm.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/riscv-linux-gnu/sys/cachectl.h created+32| ... | @@ -0,0 +1,32 @@ | ||
| 1 | /* RISC-V instruction cache flushing interface | ||
| 2 | Copyright (C) 2017-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library. If not, see | ||
| 18 | <https://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifndef _SYS_CACHECTL_H | ||
| 21 | #define _SYS_CACHECTL_H 1 | ||
| 22 | |||
| 23 | #include <features.h> | ||
| 24 | |||
| 25 | __BEGIN_DECLS | ||
| 26 | |||
| 27 | extern int __riscv_flush_icache (void *__start, void *__end, | ||
| 28 | 				 unsigned long int __flags); | ||
| 29 | |||
| 30 | __END_DECLS | ||
| 31 | |||
| 32 | #endif /* sys/cachectl.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/riscv-linux-gnu/sys/ucontext.h created+110| ... | @@ -0,0 +1,110 @@ | ||
| 1 | /* struct ucontext definition, RISC-V version. | ||
| 2 | Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* Don't rely on this, the interface is currently messed up and may need to | ||
| 20 | be broken to be fixed. */ | ||
| 21 | #ifndef _SYS_UCONTEXT_H | ||
| 22 | #define _SYS_UCONTEXT_H	1 | ||
| 23 | |||
| 24 | #include <features.h> | ||
| 25 | |||
| 26 | #include <bits/types/sigset_t.h> | ||
| 27 | #include <bits/types/stack_t.h> | ||
| 28 | |||
| 29 | typedef unsigned long int __riscv_mc_gp_state[32]; | ||
| 30 | |||
| 31 | #ifdef __USE_MISC | ||
| 32 | # define NGREG	32 | ||
| 33 | |||
| 34 | # define REG_PC 0 | ||
| 35 | # define REG_RA 1 | ||
| 36 | # define REG_SP 2 | ||
| 37 | # define REG_TP 4 | ||
| 38 | # define REG_S0 8 | ||
| 39 | # define REG_S1 9 | ||
| 40 | # define REG_A0 10 | ||
| 41 | # define REG_S2 18 | ||
| 42 | # define REG_NARGS 8 | ||
| 43 | |||
| 44 | typedef unsigned long int greg_t; | ||
| 45 | |||
| 46 | /* Container for all general registers. */ | ||
| 47 | typedef __riscv_mc_gp_state gregset_t; | ||
| 48 | |||
| 49 | /* Container for floating-point state. */ | ||
| 50 | typedef union __riscv_mc_fp_state fpregset_t; | ||
| 51 | #endif | ||
| 52 | |||
| 53 | struct __riscv_mc_f_ext_state | ||
| 54 | { | ||
| 55 | unsigned int __f[32]; | ||
| 56 | unsigned int __fcsr; | ||
| 57 | }; | ||
| 58 | |||
| 59 | struct __riscv_mc_d_ext_state | ||
| 60 | { | ||
| 61 | unsigned long long int __f[32]; | ||
| 62 | unsigned int __fcsr; | ||
| 63 | }; | ||
| 64 | |||
| 65 | struct __riscv_mc_q_ext_state | ||
| 66 | { | ||
| 67 | unsigned long long int __f[64] __attribute__ ((__aligned__ (16))); | ||
| 68 | unsigned int __fcsr; | ||
| 69 | /* Reserved for expansion of sigcontext structure. Currently zeroed | ||
| 70 | upon signal, and must be zero upon sigreturn. */ | ||
| 71 | unsigned int __glibc_reserved[3]; | ||
| 72 | }; | ||
| 73 | |||
| 74 | union __riscv_mc_fp_state | ||
| 75 | { | ||
| 76 | struct __riscv_mc_f_ext_state __f; | ||
| 77 | struct __riscv_mc_d_ext_state __d; | ||
| 78 | struct __riscv_mc_q_ext_state __q; | ||
| 79 | }; | ||
| 80 | |||
| 81 | typedef struct mcontext_t | ||
| 82 | { | ||
| 83 | __riscv_mc_gp_state __gregs; | ||
| 84 | union __riscv_mc_fp_state __fpregs; | ||
| 85 | } mcontext_t; | ||
| 86 | |||
| 87 | /* Userlevel context. */ | ||
| 88 | typedef struct ucontext_t | ||
| 89 | { | ||
| 90 | unsigned long int __uc_flags; | ||
| 91 | struct ucontext_t *uc_link; | ||
| 92 | stack_t uc_stack; | ||
| 93 | sigset_t uc_sigmask; | ||
| 94 | /* There's some padding here to allow sigset_t to be expanded in the | ||
| 95 | future. Though this is unlikely, other architectures put uc_sigmask | ||
| 96 | at the end of this structure and explicitly state it can be | ||
| 97 | expanded, so we didn't want to box ourselves in here. */ | ||
| 98 | char __glibc_reserved[1024 / 8 - sizeof (sigset_t)]; | ||
| 99 | /* We can't put uc_sigmask at the end of this structure because we need | ||
| 100 | to be able to expand sigcontext in the future. For example, the | ||
| 101 | vector ISA extension will almost certainly add ISA state. We want | ||
| 102 | to ensure all user-visible ISA state can be saved and restored via a | ||
| 103 | ucontext, so we're putting this at the end in order to allow for | ||
| 104 | infinite extensibility. Since we know this will be extended and we | ||
| 105 | assume sigset_t won't be extended an extreme amount, we're | ||
| 106 | prioritizing this. */ | ||
| 107 | mcontext_t uc_mcontext; | ||
| 108 | } ucontext_t; | ||
| 109 | |||
| 110 | #endif /* sys/ucontext.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/riscv-linux-gnu/sys/user.h created+23| ... | @@ -0,0 +1,23 @@ | ||
| 1 | /* Copyright (C) 2001-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_USER_H | ||
| 19 | #define _SYS_USER_H	1 | ||
| 20 | |||
| 21 | |||
| 22 | |||
| 23 | #endif	/* _SYS_USER_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/riscv32-linux-gnu/bits/endianness.h deleted-11| ... | @@ -1,11 +0,0 @@ | ||
| 1 | #ifndef _BITS_ENDIANNESS_H | ||
| 2 | #define _BITS_ENDIANNESS_H 1 | ||
| 3 | |||
| 4 | #ifndef _BITS_ENDIAN_H | ||
| 5 | # error "Never use <bits/endianness.h> directly; include <endian.h> instead." | ||
| 6 | #endif | ||
| 7 | |||
| 8 | /* RISC-V is little-endian. */ | ||
| 9 | #define __BYTE_ORDER __LITTLE_ENDIAN | ||
| 10 | |||
| 11 | #endif /* bits/endianness.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/riscv32-linux-gnu/bits/environments.h deleted-81| ... | @@ -1,81 +0,0 @@ | ||
| 1 | /* Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _UNISTD_H | ||
| 19 | # error "Never include this file directly. Use <unistd.h> instead" | ||
| 20 | #endif | ||
| 21 | |||
| 22 | #include <bits/wordsize.h> | ||
| 23 | |||
| 24 | /* This header should define the following symbols under the described | ||
| 25 | situations. A value `1' means that the model is always supported, | ||
| 26 | `-1' means it is never supported. Undefined means it cannot be | ||
| 27 | statically decided. | ||
| 28 | |||
| 29 | _POSIX_V7_ILP32_OFF32 32bit int, long, pointers, and off_t type | ||
| 30 | _POSIX_V7_ILP32_OFFBIG 32bit int, long, and pointers and larger off_t type | ||
| 31 | |||
| 32 | _POSIX_V7_LP64_OFF32 64bit long and pointers and 32bit off_t type | ||
| 33 | _POSIX_V7_LPBIG_OFFBIG 64bit long and pointers and large off_t type | ||
| 34 | |||
| 35 | The macros _POSIX_V6_ILP32_OFF32, _POSIX_V6_ILP32_OFFBIG, | ||
| 36 | _POSIX_V6_LP64_OFF32, _POSIX_V6_LPBIG_OFFBIG, _XBS5_ILP32_OFF32, | ||
| 37 | _XBS5_ILP32_OFFBIG, _XBS5_LP64_OFF32, and _XBS5_LPBIG_OFFBIG were | ||
| 38 | used in previous versions of the Unix standard and are available | ||
| 39 | only for compatibility. | ||
| 40 | */ | ||
| 41 | |||
| 42 | #if __WORDSIZE == 64 | ||
| 43 | |||
| 44 | /* We can never provide environments with 32-bit wide pointers. */ | ||
| 45 | # define _POSIX_V7_ILP32_OFF32	-1 | ||
| 46 | # define _POSIX_V7_ILP32_OFFBIG	-1 | ||
| 47 | # define _POSIX_V6_ILP32_OFF32	-1 | ||
| 48 | # define _POSIX_V6_ILP32_OFFBIG	-1 | ||
| 49 | # define _XBS5_ILP32_OFF32	-1 | ||
| 50 | # define _XBS5_ILP32_OFFBIG	-1 | ||
| 51 | /* We also have no use (for now) for an environment with bigger pointers | ||
| 52 | and offsets. */ | ||
| 53 | # define _POSIX_V7_LPBIG_OFFBIG	-1 | ||
| 54 | # define _POSIX_V6_LPBIG_OFFBIG	-1 | ||
| 55 | # define _XBS5_LPBIG_OFFBIG	-1 | ||
| 56 | |||
| 57 | /* By default we have 64-bit wide `long int', pointers and `off_t'. */ | ||
| 58 | # define _POSIX_V7_LP64_OFF64	1 | ||
| 59 | # define _POSIX_V6_LP64_OFF64	1 | ||
| 60 | # define _XBS5_LP64_OFF64	1 | ||
| 61 | |||
| 62 | #else /* __WORDSIZE == 32 */ | ||
| 63 | |||
| 64 | /* RISC-V requires 64-bit off_t */ | ||
| 65 | # define _POSIX_V7_ILP32_OFF32 -1 | ||
| 66 | # define _POSIX_V6_ILP32_OFF32 -1 | ||
| 67 | # define _XBS5_ILP32_OFF32 -1 | ||
| 68 | |||
| 69 | # define _POSIX_V7_ILP32_OFFBIG	1 | ||
| 70 | # define _POSIX_V6_ILP32_OFFBIG	1 | ||
| 71 | # define _XBS5_ILP32_OFFBIG	1 | ||
| 72 | |||
| 73 | /* We can never provide environments with 64-bit wide pointers. */ | ||
| 74 | # define _POSIX_V7_LP64_OFF64	-1 | ||
| 75 | # define _POSIX_V7_LPBIG_OFFBIG	-1 | ||
| 76 | # define _POSIX_V6_LP64_OFF64	-1 | ||
| 77 | # define _POSIX_V6_LPBIG_OFFBIG	-1 | ||
| 78 | # define _XBS5_LP64_OFF64	-1 | ||
| 79 | # define _XBS5_LPBIG_OFFBIG	-1 | ||
| 80 | |||
| 81 | #endif /* __WORDSIZE == 32 */ | ||
| \ No newline at end of file | |||
lib/libc/include/riscv32-linux-gnu/bits/fcntl.h deleted-62| ... | @@ -1,62 +0,0 @@ | ||
| 1 | /* O_*, F_*, FD_* bit values for Linux / RISC-V. | ||
| 2 | Copyright (C) 2011-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library; if not, see | ||
| 18 | <https://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifndef	_FCNTL_H | ||
| 21 | # error "Never use <bits/fcntl.h> directly; include <fcntl.h> instead." | ||
| 22 | #endif | ||
| 23 | |||
| 24 | #include <bits/wordsize.h> | ||
| 25 | |||
| 26 | /* In 64-bit ISA files are always with 64bit off_t and F_*LK64 are the same as | ||
| 27 | non-64-bit versions. It will need to be revised for 128-bit. */ | ||
| 28 | #if __WORDSIZE == 64 | ||
| 29 | # define __O_LARGEFILE	0 | ||
| 30 | |||
| 31 | # define F_GETLK64	5	/* Get record locking info. */ | ||
| 32 | # define F_SETLK64	6	/* Set record locking info (non-blocking). */ | ||
| 33 | # define F_SETLKW64	7	/* Set record locking info (blocking).	*/ | ||
| 34 | #endif | ||
| 35 | |||
| 36 | struct flock | ||
| 37 | { | ||
| 38 | short int l_type; /* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK. */ | ||
| 39 | short int l_whence; /* Where `l_start' is relative to (like `lseek'). */ | ||
| 40 | #if __WORDSIZE == 64 || !defined __USE_FILE_OFFSET64 | ||
| 41 | __off_t l_start; /* Offset where the lock begins. */ | ||
| 42 | __off_t l_len; /* Size of the locked area; zero means until EOF. */ | ||
| 43 | #else | ||
| 44 | __off64_t l_start; /* Offset where the lock begins. */ | ||
| 45 | __off64_t l_len; /* Size of the locked area; zero means until EOF. */ | ||
| 46 | #endif | ||
| 47 | __pid_t l_pid; /* Process holding the lock. */ | ||
| 48 | }; | ||
| 49 | |||
| 50 | #ifdef __USE_LARGEFILE64 | ||
| 51 | struct flock64 | ||
| 52 | { | ||
| 53 | short int l_type; /* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK. */ | ||
| 54 | short int l_whence; /* Where `l_start' is relative to (like `lseek'). */ | ||
| 55 | __off64_t l_start; /* Offset where the lock begins. */ | ||
| 56 | __off64_t l_len; /* Size of the locked area; zero means until EOF. */ | ||
| 57 | __pid_t l_pid; /* Process holding the lock. */ | ||
| 58 | }; | ||
| 59 | #endif | ||
| 60 | |||
| 61 | /* Include generic Linux declarations. */ | ||
| 62 | #include <bits/fcntl-linux.h> | ||
| \ No newline at end of file | |||
lib/libc/include/riscv32-linux-gnu/bits/fenv.h deleted-74| ... | @@ -1,74 +0,0 @@ | ||
| 1 | /* Floating point environment, RISC-V version. | ||
| 2 | Copyright (C) 1998-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _FENV_H | ||
| 20 | # error "Never use <bits/fenv.h> directly; include <fenv.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | enum | ||
| 24 | { | ||
| 25 | FE_INEXACT = | ||
| 26 | #define FE_INEXACT	(0x01) | ||
| 27 | FE_INEXACT, | ||
| 28 | FE_UNDERFLOW = | ||
| 29 | #define FE_UNDERFLOW	(0x02) | ||
| 30 | FE_UNDERFLOW, | ||
| 31 | FE_OVERFLOW = | ||
| 32 | #define FE_OVERFLOW	(0x04) | ||
| 33 | FE_OVERFLOW, | ||
| 34 | FE_DIVBYZERO = | ||
| 35 | #define FE_DIVBYZERO	(0x08) | ||
| 36 | FE_DIVBYZERO, | ||
| 37 | FE_INVALID = | ||
| 38 | #define FE_INVALID	(0x10) | ||
| 39 | FE_INVALID | ||
| 40 | }; | ||
| 41 | |||
| 42 | #define FE_ALL_EXCEPT \ | ||
| 43 | 	(FE_INEXACT | FE_DIVBYZERO | FE_UNDERFLOW | FE_OVERFLOW | FE_INVALID) | ||
| 44 | |||
| 45 | enum | ||
| 46 | { | ||
| 47 | FE_TONEAREST = | ||
| 48 | #define FE_TONEAREST	(0x0) | ||
| 49 | FE_TONEAREST, | ||
| 50 | FE_TOWARDZERO = | ||
| 51 | #define FE_TOWARDZERO	(0x1) | ||
| 52 | FE_TOWARDZERO, | ||
| 53 | FE_DOWNWARD = | ||
| 54 | #define FE_DOWNWARD	(0x2) | ||
| 55 | FE_DOWNWARD, | ||
| 56 | FE_UPWARD = | ||
| 57 | #define FE_UPWARD	(0x3) | ||
| 58 | FE_UPWARD | ||
| 59 | }; | ||
| 60 | |||
| 61 | |||
| 62 | typedef unsigned int fexcept_t; | ||
| 63 | typedef unsigned int fenv_t; | ||
| 64 | |||
| 65 | /* If the default argument is used we use this value. */ | ||
| 66 | #define FE_DFL_ENV	((__const fenv_t *) -1) | ||
| 67 | |||
| 68 | #if __GLIBC_USE (IEC_60559_BFP_EXT_C23) | ||
| 69 | /* Type representing floating-point control modes. */ | ||
| 70 | typedef unsigned int femode_t; | ||
| 71 | |||
| 72 | /* Default floating-point control modes. */ | ||
| 73 | # define FE_DFL_MODE	((const femode_t *) -1L) | ||
| 74 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/riscv32-linux-gnu/bits/link.h deleted-56| ... | @@ -1,56 +0,0 @@ | ||
| 1 | /* Machine-specific declarations for dynamic linker interface. RISC-V version. | ||
| 2 | Copyright (C) 2005-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef	_LINK_H | ||
| 20 | # error "Never include <bits/link.h> directly; use <link.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | typedef struct La_riscv_regs | ||
| 24 | { | ||
| 25 | unsigned long int lr_reg[8]; /* a0 - a7 */ | ||
| 26 | double lr_fpreg[8]; /* fa0 - fa7 */ | ||
| 27 | unsigned long int lr_ra; | ||
| 28 | unsigned long int lr_sp; | ||
| 29 | } La_riscv_regs; | ||
| 30 | |||
| 31 | /* Return values for calls from PLT on RISC-V. */ | ||
| 32 | typedef struct La_riscv_retval | ||
| 33 | { | ||
| 34 | unsigned long int lrv_a0; | ||
| 35 | unsigned long int lrv_a1; | ||
| 36 | double lrv_fa0; | ||
| 37 | double lrv_fa1; | ||
| 38 | } La_riscv_retval; | ||
| 39 | |||
| 40 | __BEGIN_DECLS | ||
| 41 | |||
| 42 | extern ElfW(Addr) la_riscv_gnu_pltenter (ElfW(Sym) *__sym, unsigned int __ndx, | ||
| 43 | 					 uintptr_t *__refcook, | ||
| 44 | 					 uintptr_t *__defcook, | ||
| 45 | 					 La_riscv_regs *__regs, | ||
| 46 | 					 unsigned int *__flags, | ||
| 47 | 					 const char *__symname, | ||
| 48 | 					 long int *__framesizep); | ||
| 49 | extern unsigned int la_riscv_gnu_pltexit (ElfW(Sym) *__sym, unsigned int __ndx, | ||
| 50 | 					 uintptr_t *__refcook, | ||
| 51 | 					 uintptr_t *__defcook, | ||
| 52 | 					 const La_riscv_regs *__inregs, | ||
| 53 | 					 La_riscv_retval *__outregs, | ||
| 54 | 					 const char *__symname); | ||
| 55 | |||
| 56 | __END_DECLS | ||
| \ No newline at end of file | |||
lib/libc/include/riscv32-linux-gnu/bits/long-double.h deleted-21| ... | @@ -1,21 +0,0 @@ | ||
| 1 | /* Properties of long double type. ldbl-128 version. | ||
| 2 | Copyright (C) 2016-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* long double is distinct from double, so there is nothing to | ||
| 20 | define here. */ | ||
| 21 | #define __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI 0 | ||
| \ No newline at end of file | |||
lib/libc/include/riscv32-linux-gnu/bits/procfs.h deleted-31| ... | @@ -1,31 +0,0 @@ | ||
| 1 | /* Types for registers for sys/procfs.h. RISC-V version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_PROCFS_H | ||
| 20 | # error "Never include <bits/procfs.h> directly; use <sys/procfs.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <sys/ucontext.h> | ||
| 24 | |||
| 25 | /* ELF register definitions */ | ||
| 26 | #define ELF_NGREG	NGREG | ||
| 27 | #define ELF_NFPREG	NFPREG | ||
| 28 | |||
| 29 | typedef unsigned long int elf_greg_t; | ||
| 30 | typedef unsigned long int elf_gregset_t[32]; | ||
| 31 | typedef union __riscv_mc_fp_state elf_fpregset_t; | ||
| \ No newline at end of file | |||
lib/libc/include/riscv32-linux-gnu/bits/pthreadtypes-arch.h deleted-45| ... | @@ -1,45 +0,0 @@ | ||
| 1 | /* Machine-specific pthread type layouts. RISC-V version. | ||
| 2 | Copyright (C) 2011-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_PTHREADTYPES_ARCH_H | ||
| 20 | #define _BITS_PTHREADTYPES_ARCH_H	1 | ||
| 21 | |||
| 22 | #include <bits/endian.h> | ||
| 23 | |||
| 24 | #define __SIZEOF_PTHREAD_MUTEXATTR_T		4 | ||
| 25 | #define __SIZEOF_PTHREAD_COND_T			48 | ||
| 26 | #define __SIZEOF_PTHREAD_CONDATTR_T		4 | ||
| 27 | #define __SIZEOF_PTHREAD_RWLOCKATTR_T		8 | ||
| 28 | #define __SIZEOF_PTHREAD_BARRIERATTR_T		4 | ||
| 29 | |||
| 30 | #if __WORDSIZE == 64 | ||
| 31 | # define __SIZEOF_PTHREAD_ATTR_T		56 | ||
| 32 | # define __SIZEOF_PTHREAD_MUTEX_T		40 | ||
| 33 | # define __SIZEOF_PTHREAD_RWLOCK_T		56 | ||
| 34 | # define __SIZEOF_PTHREAD_BARRIER_T		32 | ||
| 35 | #else | ||
| 36 | # define __SIZEOF_PTHREAD_ATTR_T		32 | ||
| 37 | # define __SIZEOF_PTHREAD_MUTEX_T		32 | ||
| 38 | # define __SIZEOF_PTHREAD_RWLOCK_T		48 | ||
| 39 | # define __SIZEOF_PTHREAD_BARRIER_T		20 | ||
| 40 | #endif | ||
| 41 | |||
| 42 | #define __LOCK_ALIGNMENT | ||
| 43 | #define __ONCE_ALIGNMENT | ||
| 44 | |||
| 45 | #endif	/* bits/pthreadtypes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/riscv32-linux-gnu/bits/rseq.h deleted-44| ... | @@ -1,44 +0,0 @@ | ||
| 1 | /* Restartable Sequences Linux riscv architecture header. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #include <bits/endian.h> | ||
| 19 | |||
| 20 | #ifndef _SYS_RSEQ_H | ||
| 21 | # error "Never use <bits/rseq.h> directly; include <sys/rseq.h> instead." | ||
| 22 | #endif | ||
| 23 | |||
| 24 | /* RSEQ_SIG is a signature required before each abort handler code. | ||
| 25 | |||
| 26 | It is a 32-bit value that maps to actual architecture code compiled | ||
| 27 | into applications and libraries. It needs to be defined for each | ||
| 28 | architecture. When choosing this value, it needs to be taken into | ||
| 29 | account that generating invalid instructions may have ill effects on | ||
| 30 | tools like objdump, and may also have impact on the CPU speculative | ||
| 31 | execution efficiency in some cases. | ||
| 32 | |||
| 33 | Select the instruction "csrw mhartid, x0" as the RSEQ_SIG. Unlike | ||
| 34 | other architectures, the ebreak instruction has no immediate field for | ||
| 35 | distinguishing purposes. Hence, ebreak is not suitable as RSEQ_SIG. | ||
| 36 | "csrw mhartid, x0" can also satisfy the RSEQ requirement because it | ||
| 37 | is an uncommon instruction and will raise an illegal instruction | ||
| 38 | exception when executed in all modes. */ | ||
| 39 | |||
| 40 | #if __BYTE_ORDER == __LITTLE_ENDIAN | ||
| 41 | #define RSEQ_SIG	0xf1401073 | ||
| 42 | #else | ||
| 43 | /* RSEQ is currently only supported on Little-Endian. */ | ||
| 44 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/riscv32-linux-gnu/bits/setjmp.h deleted-39| ... | @@ -1,39 +0,0 @@ | ||
| 1 | /* Define the machine-dependent type `jmp_buf'. RISC-V version. | ||
| 2 | Copyright (C) 2011-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _RISCV_BITS_SETJMP_H | ||
| 20 | #define _RISCV_BITS_SETJMP_H | ||
| 21 | |||
| 22 | typedef struct __jmp_buf_internal_tag | ||
| 23 | { | ||
| 24 | /* Program counter. */ | ||
| 25 | long int __pc; | ||
| 26 | /* Callee-saved registers. */ | ||
| 27 | long int __regs[12]; | ||
| 28 | /* Stack pointer. */ | ||
| 29 | long int __sp; | ||
| 30 | |||
| 31 | /* Callee-saved floating point registers. */ | ||
| 32 | #if defined __riscv_float_abi_double | ||
| 33 | double __fpregs[12]; | ||
| 34 | #elif !defined __riscv_float_abi_soft | ||
| 35 | # error unsupported FLEN | ||
| 36 | #endif | ||
| 37 | } __jmp_buf[1]; | ||
| 38 | |||
| 39 | #endif /* _RISCV_BITS_SETJMP_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/riscv32-linux-gnu/bits/sigcontext.h deleted-31| ... | @@ -1,31 +0,0 @@ | ||
| 1 | /* Machine-dependent signal context structure for Linux. RISC-V version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _BITS_SIGCONTEXT_H | ||
| 19 | #define _BITS_SIGCONTEXT_H 1 | ||
| 20 | |||
| 21 | #if !defined _SIGNAL_H && !defined _SYS_UCONTEXT_H | ||
| 22 | # error "Never use <bits/sigcontext.h> directly; include <signal.h> instead." | ||
| 23 | #endif | ||
| 24 | |||
| 25 | struct sigcontext { | ||
| 26 | /* gregs[0] holds the program counter. */ | ||
| 27 | unsigned long int gregs[32]; | ||
| 28 | unsigned long long int fpregs[66] __attribute__ ((__aligned__ (16))); | ||
| 29 | }; | ||
| 30 | |||
| 31 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/riscv32-linux-gnu/bits/struct_rwlock.h deleted-68| ... | @@ -1,68 +0,0 @@ | ||
| 1 | /* RISC-V internal rwlock struct definitions. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library; if not, see | ||
| 18 | <https://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifndef _RWLOCK_INTERNAL_H | ||
| 21 | #define _RWLOCK_INTERNAL_H | ||
| 22 | |||
| 23 | /* There is a lot of padding in this structure. While it's not strictly | ||
| 24 | necessary on RISC-V, we're going to leave it in to be on the safe side in | ||
| 25 | case it's needed in the future. Most other architectures have the padding, | ||
| 26 | so this gives us the same extensibility as everyone else has. */ | ||
| 27 | struct __pthread_rwlock_arch_t | ||
| 28 | { | ||
| 29 | unsigned int __readers; | ||
| 30 | unsigned int __writers; | ||
| 31 | unsigned int __wrphase_futex; | ||
| 32 | unsigned int __writers_futex; | ||
| 33 | unsigned int __pad3; | ||
| 34 | unsigned int __pad4; | ||
| 35 | #if __WORDSIZE == 64 | ||
| 36 | int __cur_writer; | ||
| 37 | int __shared; | ||
| 38 | unsigned long int __pad1; | ||
| 39 | unsigned long int __pad2; | ||
| 40 | unsigned int __flags; | ||
| 41 | #else | ||
| 42 | # if __BYTE_ORDER == __BIG_ENDIAN | ||
| 43 | unsigned char __pad1; | ||
| 44 | unsigned char __pad2; | ||
| 45 | unsigned char __shared; | ||
| 46 | unsigned char __flags; | ||
| 47 | # else | ||
| 48 | unsigned char __flags; | ||
| 49 | unsigned char __shared; | ||
| 50 | unsigned char __pad1; | ||
| 51 | unsigned char __pad2; | ||
| 52 | # endif | ||
| 53 | int __cur_writer; | ||
| 54 | #endif | ||
| 55 | }; | ||
| 56 | |||
| 57 | #if __WORDSIZE == 64 | ||
| 58 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 59 | 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags | ||
| 60 | #elif __BYTE_ORDER == __BIG_ENDIAN | ||
| 61 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 62 | 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0 | ||
| 63 | #else | ||
| 64 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 65 | 0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0 | ||
| 66 | #endif | ||
| 67 | |||
| 68 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/riscv32-linux-gnu/bits/struct_stat.h deleted-127| ... | @@ -1,127 +0,0 @@ | ||
| 1 | /* Definition for struct stat. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #if !defined _SYS_STAT_H && !defined _FCNTL_H | ||
| 20 | # error "Never include <bits/struct_stat.h> directly; use <sys/stat.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef _BITS_STRUCT_STAT_H | ||
| 24 | #define _BITS_STRUCT_STAT_H	1 | ||
| 25 | |||
| 26 | #include <bits/endian.h> | ||
| 27 | #include <bits/wordsize.h> | ||
| 28 | |||
| 29 | #if defined __USE_FILE_OFFSET64 | ||
| 30 | # define __field64(type, type64, name) type64 name | ||
| 31 | #elif __WORDSIZE == 64 || defined __INO_T_MATCHES_INO64_T | ||
| 32 | # if defined __INO_T_MATCHES_INO64_T && !defined __OFF_T_MATCHES_OFF64_T | ||
| 33 | # error "ino_t and off_t must both be the same type" | ||
| 34 | # endif | ||
| 35 | # define __field64(type, type64, name) type name | ||
| 36 | #elif __BYTE_ORDER == __LITTLE_ENDIAN | ||
| 37 | # define __field64(type, type64, name) \ | ||
| 38 | type name __attribute__((__aligned__ (__alignof__ (type64)))); int __##name##_pad | ||
| 39 | #else | ||
| 40 | # define __field64(type, type64, name) \ | ||
| 41 | int __##name##_pad __attribute__((__aligned__ (__alignof__ (type64)))); type name | ||
| 42 | #endif | ||
| 43 | |||
| 44 | struct stat | ||
| 45 | { | ||
| 46 | __dev_t st_dev;		/* Device. */ | ||
| 47 | __field64(__ino_t, __ino64_t, st_ino); /* File serial number. */ | ||
| 48 | __mode_t st_mode;		/* File mode. */ | ||
| 49 | __nlink_t st_nlink;		/* Link count. */ | ||
| 50 | __uid_t st_uid;		/* User ID of the file's owner.	*/ | ||
| 51 | __gid_t st_gid;		/* Group ID of the file's group.*/ | ||
| 52 | __dev_t st_rdev;		/* Device number, if device. */ | ||
| 53 | __dev_t __pad1; | ||
| 54 | __field64(__off_t, __off64_t, st_size); /* Size of file, in bytes. */ | ||
| 55 | __blksize_t st_blksize;	/* Optimal block size for I/O. */ | ||
| 56 | int __pad2; | ||
| 57 | __field64(__blkcnt_t, __blkcnt64_t, st_blocks); /* 512-byte blocks */ | ||
| 58 | #ifdef __USE_XOPEN2K8 | ||
| 59 | /* Nanosecond resolution timestamps are stored in a format | ||
| 60 | equivalent to 'struct timespec'. This is the type used | ||
| 61 | whenever possible but the Unix namespace rules do not allow the | ||
| 62 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 63 | Therefore we have to handle the use of this header in strictly | ||
| 64 | standard-compliant sources special. */ | ||
| 65 | struct timespec st_atim;		/* Time of last access. */ | ||
| 66 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 67 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 68 | # define st_atime st_atim.tv_sec	/* Backward compatibility. */ | ||
| 69 | # define st_mtime st_mtim.tv_sec | ||
| 70 | # define st_ctime st_ctim.tv_sec | ||
| 71 | #else | ||
| 72 | __time_t st_atime;			/* Time of last access. */ | ||
| 73 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 74 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 75 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 76 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 77 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 78 | #endif | ||
| 79 | int __glibc_reserved[2]; | ||
| 80 | }; | ||
| 81 | |||
| 82 | #undef __field64 | ||
| 83 | |||
| 84 | #ifdef __USE_LARGEFILE64 | ||
| 85 | struct stat64 | ||
| 86 | { | ||
| 87 | __dev_t st_dev;		/* Device. */ | ||
| 88 | __ino64_t st_ino;		/* File serial number.	*/ | ||
| 89 | __mode_t st_mode;		/* File mode. */ | ||
| 90 | __nlink_t st_nlink;		/* Link count. */ | ||
| 91 | __uid_t st_uid;		/* User ID of the file's owner.	*/ | ||
| 92 | __gid_t st_gid;		/* Group ID of the file's group.*/ | ||
| 93 | __dev_t st_rdev;		/* Device number, if device. */ | ||
| 94 | __dev_t __pad1; | ||
| 95 | __off64_t st_size;		/* Size of file, in bytes. */ | ||
| 96 | __blksize_t st_blksize;	/* Optimal block size for I/O. */ | ||
| 97 | int __pad2; | ||
| 98 | __blkcnt64_t st_blocks;	/* Nr. 512-byte blocks allocated. */ | ||
| 99 | #ifdef __USE_XOPEN2K8 | ||
| 100 | /* Nanosecond resolution timestamps are stored in a format | ||
| 101 | equivalent to 'struct timespec'. This is the type used | ||
| 102 | whenever possible but the Unix namespace rules do not allow the | ||
| 103 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 104 | Therefore we have to handle the use of this header in strictly | ||
| 105 | standard-compliant sources special. */ | ||
| 106 | struct timespec st_atim;		/* Time of last access. */ | ||
| 107 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 108 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 109 | #else | ||
| 110 | __time_t st_atime;			/* Time of last access. */ | ||
| 111 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 112 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 113 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 114 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 115 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 116 | #endif | ||
| 117 | int __glibc_reserved[2]; | ||
| 118 | }; | ||
| 119 | #endif | ||
| 120 | |||
| 121 | /* Tell code we have these members. */ | ||
| 122 | #define	_STATBUF_ST_BLKSIZE | ||
| 123 | #define _STATBUF_ST_RDEV | ||
| 124 | /* Nanosecond resolution time values are supported. */ | ||
| 125 | #define _STATBUF_ST_NSEC | ||
| 126 | |||
| 127 | #endif /* _BITS_STRUCT_STAT_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/riscv32-linux-gnu/bits/time64.h deleted-36| ... | @@ -1,36 +0,0 @@ | ||
| 1 | /* bits/time64.h -- underlying types for __time64_t. RISC-V version. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_TYPES_H | ||
| 20 | # error "Never include <bits/time64.h> directly; use <sys/types.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef	_BITS_TIME64_H | ||
| 24 | #define	_BITS_TIME64_H	1 | ||
| 25 | |||
| 26 | /* Define __TIME64_T_TYPE so that it is always a 64-bit type. */ | ||
| 27 | |||
| 28 | #if __WORDSIZE == 64 | ||
| 29 | /* If we already have 64-bit time type then use it. */ | ||
| 30 | # define __TIME64_T_TYPE		__TIME_T_TYPE | ||
| 31 | #else | ||
| 32 | /* Define a 64-bit time type alongsize the 32-bit one. */ | ||
| 33 | # define __TIME64_T_TYPE		__SQUAD_TYPE | ||
| 34 | #endif | ||
| 35 | |||
| 36 | #endif /* bits/time64.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/riscv32-linux-gnu/bits/timesize.h deleted-20| ... | @@ -1,20 +0,0 @@ | ||
| 1 | /* Bit size of the time_t type at glibc build time, general case. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* Size in bits of the 'time_t' type of the default ABI. */ | ||
| 20 | #define __TIMESIZE	64 | ||
| \ No newline at end of file | |||
lib/libc/include/riscv32-linux-gnu/bits/wordsize.h deleted-30| ... | @@ -1,30 +0,0 @@ | ||
| 1 | /* Determine the wordsize from the preprocessor defines. RISC-V version. | ||
| 2 | Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #if __riscv_xlen == (__SIZEOF_POINTER__ * 8) | ||
| 20 | # define __WORDSIZE __riscv_xlen | ||
| 21 | #else | ||
| 22 | # error unsupported ABI | ||
| 23 | #endif | ||
| 24 | |||
| 25 | #define __WORDSIZE_TIME64_COMPAT32 1 | ||
| 26 | |||
| 27 | #if __WORDSIZE == 32 | ||
| 28 | # define __WORDSIZE32_SIZE_ULONG 0 | ||
| 29 | # define __WORDSIZE32_PTRDIFF_LONG 0 | ||
| 30 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/riscv32-linux-gnu/fpu_control.h deleted-74| ... | @@ -1,74 +0,0 @@ | ||
| 1 | /* FPU control word bits. RISC-V version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _FPU_CONTROL_H | ||
| 20 | #define _FPU_CONTROL_H | ||
| 21 | |||
| 22 | #include <features.h> | ||
| 23 | |||
| 24 | #ifndef __riscv_flen | ||
| 25 | |||
| 26 | # define _FPU_RESERVED 0xffffffff | ||
| 27 | # define _FPU_DEFAULT 0x00000000 | ||
| 28 | typedef unsigned int fpu_control_t; | ||
| 29 | # define _FPU_GETCW(cw) (cw) = 0 | ||
| 30 | # define _FPU_SETCW(cw) do { } while (0) | ||
| 31 | extern fpu_control_t __fpu_control; | ||
| 32 | |||
| 33 | #else /* __riscv_flen */ | ||
| 34 | |||
| 35 | # define _FPU_RESERVED 0 | ||
| 36 | # define _FPU_DEFAULT 0 | ||
| 37 | # define _FPU_IEEE _FPU_DEFAULT | ||
| 38 | |||
| 39 | /* Type of the control word. */ | ||
| 40 | typedef unsigned int fpu_control_t __attribute__ ((__mode__ (__SI__))); | ||
| 41 | |||
| 42 | /* Macros for accessing the hardware control word. */ | ||
| 43 | # define _FPU_GETCW(cw) __asm__ volatile ("frsr %0" : "=r" (cw)) | ||
| 44 | # define _FPU_SETCW(cw) __asm__ volatile ("fssr %z0" : : "rJ" (cw)) | ||
| 45 | |||
| 46 | /* Default control word set at startup. */ | ||
| 47 | extern fpu_control_t __fpu_control; | ||
| 48 | |||
| 49 | # define _FCLASS(x) (__extension__ ({ int __res; \ | ||
| 50 | if (sizeof (x) * 8 > __riscv_flen) __builtin_trap (); \ | ||
| 51 | if (sizeof (x) == 4) asm ("fclass.s %0, %1" : "=r" (__res) : "f" (x)); \ | ||
| 52 | else if (sizeof (x) == 8) asm ("fclass.d %0, %1" : "=r" (__res) : "f" (x)); \ | ||
| 53 | else __builtin_trap (); \ | ||
| 54 | __res; })) | ||
| 55 | |||
| 56 | # define _FCLASS_MINF (1 << 0) | ||
| 57 | # define _FCLASS_MNORM (1 << 1) | ||
| 58 | # define _FCLASS_MSUBNORM (1 << 2) | ||
| 59 | # define _FCLASS_MZERO (1 << 3) | ||
| 60 | # define _FCLASS_PZERO (1 << 4) | ||
| 61 | # define _FCLASS_PSUBNORM (1 << 5) | ||
| 62 | # define _FCLASS_PNORM (1 << 6) | ||
| 63 | # define _FCLASS_PINF (1 << 7) | ||
| 64 | # define _FCLASS_SNAN (1 << 8) | ||
| 65 | # define _FCLASS_QNAN (1 << 9) | ||
| 66 | # define _FCLASS_ZERO (_FCLASS_MZERO | _FCLASS_PZERO) | ||
| 67 | # define _FCLASS_SUBNORM (_FCLASS_MSUBNORM | _FCLASS_PSUBNORM) | ||
| 68 | # define _FCLASS_NORM (_FCLASS_MNORM | _FCLASS_PNORM) | ||
| 69 | # define _FCLASS_INF (_FCLASS_MINF | _FCLASS_PINF) | ||
| 70 | # define _FCLASS_NAN (_FCLASS_SNAN | _FCLASS_QNAN) | ||
| 71 | |||
| 72 | #endif /* __riscv_flen */ | ||
| 73 | |||
| 74 | #endif	/* fpu_control.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/riscv32-linux-gnu/gnu/lib-names-ilp32d.h deleted-27| ... | @@ -1,27 +0,0 @@ | ||
| 1 | /* This file is automatically generated. */ | ||
| 2 | #ifndef __GNU_LIB_NAMES_H | ||
| 3 | # error "Never use <gnu/lib-names-ilp32d.h> directly; include <gnu/lib-names.h> instead." | ||
| 4 | #endif | ||
| 5 | |||
| 6 | #define LD_LINUX_RISCV32_ILP32D_SO "ld-linux-riscv32-ilp32d.so.1" | ||
| 7 | #define LD_SO "ld-linux-riscv32-ilp32d.so.1" | ||
| 8 | #define LIBANL_SO "libanl.so.1" | ||
| 9 | #define LIBBROKENLOCALE_SO "libBrokenLocale.so.1" | ||
| 10 | #define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0" | ||
| 11 | #define LIBC_SO "libc.so.6" | ||
| 12 | #define LIBDL_SO "libdl.so.2" | ||
| 13 | #define LIBGCC_S_SO "libgcc_s.so.1" | ||
| 14 | #define LIBMVEC_SO "libmvec.so.1" | ||
| 15 | #define LIBM_SO "libm.so.6" | ||
| 16 | #define LIBNSL_SO "libnsl.so.1" | ||
| 17 | #define LIBNSS_COMPAT_SO "libnss_compat.so.2" | ||
| 18 | #define LIBNSS_DB_SO "libnss_db.so.2" | ||
| 19 | #define LIBNSS_DNS_SO "libnss_dns.so.2" | ||
| 20 | #define LIBNSS_FILES_SO "libnss_files.so.2" | ||
| 21 | #define LIBNSS_HESIOD_SO "libnss_hesiod.so.2" | ||
| 22 | #define LIBNSS_LDAP_SO "libnss_ldap.so.2" | ||
| 23 | #define LIBPTHREAD_SO "libpthread.so.0" | ||
| 24 | #define LIBRESOLV_SO "libresolv.so.2" | ||
| 25 | #define LIBRT_SO "librt.so.1" | ||
| 26 | #define LIBTHREAD_DB_SO "libthread_db.so.1" | ||
| 27 | #define LIBUTIL_SO "libutil.so.1" | ||
| \ No newline at end of file | |||
lib/libc/include/riscv32-linux-gnu/gnu/lib-names.h deleted-22| ... | @@ -1,22 +0,0 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | It defines macros to allow user program to find the shared | ||
| 3 | library files which come as part of GNU libc. */ | ||
| 4 | #ifndef __GNU_LIB_NAMES_H | ||
| 5 | #define __GNU_LIB_NAMES_H	1 | ||
| 6 | |||
| 7 | #include <bits/wordsize.h> | ||
| 8 | |||
| 9 | #if __WORDSIZE == 32 && defined __riscv_float_abi_soft | ||
| 10 | # include <gnu/lib-names-ilp32.h> | ||
| 11 | #endif | ||
| 12 | #if __WORDSIZE == 32 && defined __riscv_float_abi_double | ||
| 13 | # include <gnu/lib-names-ilp32d.h> | ||
| 14 | #endif | ||
| 15 | #if __WORDSIZE == 64 && defined __riscv_float_abi_soft | ||
| 16 | # include <gnu/lib-names-lp64.h> | ||
| 17 | #endif | ||
| 18 | #if __WORDSIZE == 64 && defined __riscv_float_abi_double | ||
| 19 | # include <gnu/lib-names-lp64d.h> | ||
| 20 | #endif | ||
| 21 | |||
| 22 | #endif	/* gnu/lib-names.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/riscv32-linux-gnu/gnu/stubs-ilp32d.h deleted-24| ... | @@ -1,24 +0,0 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | It defines a symbol `__stub_FUNCTION' for each function | ||
| 3 | in the C library which is a stub, meaning it will fail | ||
| 4 | every time called, usually setting errno to ENOSYS. */ | ||
| 5 | |||
| 6 | #ifdef _LIBC | ||
| 7 | #error Applications may not define the macro _LIBC | ||
| 8 | #endif | ||
| 9 | |||
| 10 | #define __stub___compat_bdflush | ||
| 11 | #define __stub___compat_create_module | ||
| 12 | #define __stub___compat_get_kernel_syms | ||
| 13 | #define __stub___compat_query_module | ||
| 14 | #define __stub___compat_uselib | ||
| 15 | #define __stub_chflags | ||
| 16 | #define __stub_fchflags | ||
| 17 | #define __stub_fedisableexcept | ||
| 18 | #define __stub_feenableexcept | ||
| 19 | #define __stub_fegetexcept | ||
| 20 | #define __stub_gtty | ||
| 21 | #define __stub_revoke | ||
| 22 | #define __stub_setlogin | ||
| 23 | #define __stub_sigreturn | ||
| 24 | #define __stub_stty | ||
| \ No newline at end of file | |||
lib/libc/include/riscv32-linux-gnu/gnu/stubs.h deleted-18| ... | @@ -1,18 +0,0 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | This file selects the right generated file of `__stub_FUNCTION' macros | ||
| 3 | based on the architecture being compiled for. */ | ||
| 4 | |||
| 5 | #include <bits/wordsize.h> | ||
| 6 | |||
| 7 | #if __WORDSIZE == 32 && defined __riscv_float_abi_soft | ||
| 8 | # include <gnu/stubs-ilp32.h> | ||
| 9 | #endif | ||
| 10 | #if __WORDSIZE == 32 && defined __riscv_float_abi_double | ||
| 11 | # include <gnu/stubs-ilp32d.h> | ||
| 12 | #endif | ||
| 13 | #if __WORDSIZE == 64 && defined __riscv_float_abi_soft | ||
| 14 | # include <gnu/stubs-lp64.h> | ||
| 15 | #endif | ||
| 16 | #if __WORDSIZE == 64 && defined __riscv_float_abi_double | ||
| 17 | # include <gnu/stubs-lp64d.h> | ||
| 18 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/riscv32-linux-gnu/ieee754.h deleted-170| ... | @@ -1,170 +0,0 @@ | ||
| 1 | /* Copyright (C) 1992-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _IEEE754_H | ||
| 19 | #define _IEEE754_H 1 | ||
| 20 | |||
| 21 | #include <features.h> | ||
| 22 | |||
| 23 | #include <bits/endian.h> | ||
| 24 | |||
| 25 | __BEGIN_DECLS | ||
| 26 | |||
| 27 | union ieee754_float | ||
| 28 | { | ||
| 29 | float f; | ||
| 30 | |||
| 31 | /* This is the IEEE 754 single-precision format. */ | ||
| 32 | struct | ||
| 33 | { | ||
| 34 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 35 | 	unsigned int negative:1; | ||
| 36 | 	unsigned int exponent:8; | ||
| 37 | 	unsigned int mantissa:23; | ||
| 38 | #endif				/* Big endian. */ | ||
| 39 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 40 | 	unsigned int mantissa:23; | ||
| 41 | 	unsigned int exponent:8; | ||
| 42 | 	unsigned int negative:1; | ||
| 43 | #endif				/* Little endian. */ | ||
| 44 | } ieee; | ||
| 45 | |||
| 46 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 47 | struct | ||
| 48 | { | ||
| 49 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 50 | 	unsigned int negative:1; | ||
| 51 | 	unsigned int exponent:8; | ||
| 52 | 	unsigned int quiet_nan:1; | ||
| 53 | 	unsigned int mantissa:22; | ||
| 54 | #endif				/* Big endian. */ | ||
| 55 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 56 | 	unsigned int mantissa:22; | ||
| 57 | 	unsigned int quiet_nan:1; | ||
| 58 | 	unsigned int exponent:8; | ||
| 59 | 	unsigned int negative:1; | ||
| 60 | #endif				/* Little endian. */ | ||
| 61 | } ieee_nan; | ||
| 62 | }; | ||
| 63 | |||
| 64 | #define IEEE754_FLOAT_BIAS	0x7f /* Added to exponent. */ | ||
| 65 | |||
| 66 | |||
| 67 | union ieee754_double | ||
| 68 | { | ||
| 69 | double d; | ||
| 70 | |||
| 71 | /* This is the IEEE 754 double-precision format. */ | ||
| 72 | struct | ||
| 73 | { | ||
| 74 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 75 | 	unsigned int negative:1; | ||
| 76 | 	unsigned int exponent:11; | ||
| 77 | 	/* Together these comprise the mantissa. */ | ||
| 78 | 	unsigned int mantissa0:20; | ||
| 79 | 	unsigned int mantissa1:32; | ||
| 80 | #endif				/* Big endian. */ | ||
| 81 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 82 | 	/* Together these comprise the mantissa. */ | ||
| 83 | 	unsigned int mantissa1:32; | ||
| 84 | 	unsigned int mantissa0:20; | ||
| 85 | 	unsigned int exponent:11; | ||
| 86 | 	unsigned int negative:1; | ||
| 87 | #endif				/* Little endian. */ | ||
| 88 | } ieee; | ||
| 89 | |||
| 90 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 91 | struct | ||
| 92 | { | ||
| 93 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 94 | 	unsigned int negative:1; | ||
| 95 | 	unsigned int exponent:11; | ||
| 96 | 	unsigned int quiet_nan:1; | ||
| 97 | 	/* Together these comprise the mantissa. */ | ||
| 98 | 	unsigned int mantissa0:19; | ||
| 99 | 	unsigned int mantissa1:32; | ||
| 100 | #else | ||
| 101 | 	/* Together these comprise the mantissa. */ | ||
| 102 | 	unsigned int mantissa1:32; | ||
| 103 | 	unsigned int mantissa0:19; | ||
| 104 | 	unsigned int quiet_nan:1; | ||
| 105 | 	unsigned int exponent:11; | ||
| 106 | 	unsigned int negative:1; | ||
| 107 | #endif | ||
| 108 | } ieee_nan; | ||
| 109 | }; | ||
| 110 | |||
| 111 | #define IEEE754_DOUBLE_BIAS	0x3ff /* Added to exponent. */ | ||
| 112 | |||
| 113 | |||
| 114 | union ieee854_long_double | ||
| 115 | { | ||
| 116 | long double d; | ||
| 117 | |||
| 118 | /* This is the IEEE 854 quad-precision format. */ | ||
| 119 | struct | ||
| 120 | { | ||
| 121 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 122 | 	unsigned int negative:1; | ||
| 123 | 	unsigned int exponent:15; | ||
| 124 | 	/* Together these comprise the mantissa. */ | ||
| 125 | 	unsigned int mantissa0:16; | ||
| 126 | 	unsigned int mantissa1:32; | ||
| 127 | 	unsigned int mantissa2:32; | ||
| 128 | 	unsigned int mantissa3:32; | ||
| 129 | #endif				/* Big endian. */ | ||
| 130 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 131 | 	/* Together these comprise the mantissa. */ | ||
| 132 | 	unsigned int mantissa3:32; | ||
| 133 | 	unsigned int mantissa2:32; | ||
| 134 | 	unsigned int mantissa1:32; | ||
| 135 | 	unsigned int mantissa0:16; | ||
| 136 | 	unsigned int exponent:15; | ||
| 137 | 	unsigned int negative:1; | ||
| 138 | #endif				/* Little endian. */ | ||
| 139 | } ieee; | ||
| 140 | |||
| 141 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 142 | struct | ||
| 143 | { | ||
| 144 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 145 | 	unsigned int negative:1; | ||
| 146 | 	unsigned int exponent:15; | ||
| 147 | 	unsigned int quiet_nan:1; | ||
| 148 | 	/* Together these comprise the mantissa. */ | ||
| 149 | 	unsigned int mantissa0:15; | ||
| 150 | 	unsigned int mantissa1:32; | ||
| 151 | 	unsigned int mantissa2:32; | ||
| 152 | 	unsigned int mantissa3:32; | ||
| 153 | #else | ||
| 154 | 	/* Together these comprise the mantissa. */ | ||
| 155 | 	unsigned int mantissa3:32; | ||
| 156 | 	unsigned int mantissa2:32; | ||
| 157 | 	unsigned int mantissa1:32; | ||
| 158 | 	unsigned int mantissa0:15; | ||
| 159 | 	unsigned int quiet_nan:1; | ||
| 160 | 	unsigned int exponent:15; | ||
| 161 | 	unsigned int negative:1; | ||
| 162 | #endif | ||
| 163 | } ieee_nan; | ||
| 164 | }; | ||
| 165 | |||
| 166 | #define IEEE854_LONG_DOUBLE_BIAS 0x3fff /* Added to exponent. */ | ||
| 167 | |||
| 168 | __END_DECLS | ||
| 169 | |||
| 170 | #endif /* ieee754.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/riscv32-linux-gnu/sys/asm.h deleted-66| ... | @@ -1,66 +0,0 @@ | ||
| 1 | /* Miscellaneous macros. | ||
| 2 | Copyright (C) 2000-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_ASM_H | ||
| 20 | #define _SYS_ASM_H | ||
| 21 | |||
| 22 | /* Macros to handle different pointer/register sizes for 32/64-bit code. */ | ||
| 23 | #if __riscv_xlen == 64 | ||
| 24 | # define PTRLOG 3 | ||
| 25 | # define SZREG 8 | ||
| 26 | # define REG_S sd | ||
| 27 | # define REG_L ld | ||
| 28 | #elif __riscv_xlen == 32 | ||
| 29 | # define PTRLOG 2 | ||
| 30 | # define SZREG 4 | ||
| 31 | # define REG_S sw | ||
| 32 | # define REG_L lw | ||
| 33 | #else | ||
| 34 | # error __riscv_xlen must equal 32 or 64 | ||
| 35 | #endif | ||
| 36 | |||
| 37 | #if !defined __riscv_float_abi_soft | ||
| 38 | /* For ABI uniformity, reserve 8 bytes for floats, even if double-precision | ||
| 39 | floating-point is not supported in hardware. */ | ||
| 40 | # if defined __riscv_float_abi_double | ||
| 41 | # define FREG_L fld | ||
| 42 | # define FREG_S fsd | ||
| 43 | # define SZFREG 8 | ||
| 44 | # else | ||
| 45 | # error unsupported FLEN | ||
| 46 | # endif | ||
| 47 | #endif | ||
| 48 | |||
| 49 | /* Declare leaf routine. */ | ||
| 50 | #define	LEAF(symbol)				\ | ||
| 51 | 		.globl	symbol;			\ | ||
| 52 | 		.align	2;			\ | ||
| 53 | 		.type	symbol,@function;	\ | ||
| 54 | symbol:						\ | ||
| 55 | 		cfi_startproc; | ||
| 56 | |||
| 57 | /* Mark end of function. */ | ||
| 58 | #undef END | ||
| 59 | #define END(function)				\ | ||
| 60 | 		cfi_endproc;			\ | ||
| 61 | 		.size	function,.-function | ||
| 62 | |||
| 63 | /* Stack alignment. */ | ||
| 64 | #define ALMASK	~15 | ||
| 65 | |||
| 66 | #endif /* sys/asm.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/riscv32-linux-gnu/sys/cachectl.h deleted-32| ... | @@ -1,32 +0,0 @@ | ||
| 1 | /* RISC-V instruction cache flushing interface | ||
| 2 | Copyright (C) 2017-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library. If not, see | ||
| 18 | <https://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifndef _SYS_CACHECTL_H | ||
| 21 | #define _SYS_CACHECTL_H 1 | ||
| 22 | |||
| 23 | #include <features.h> | ||
| 24 | |||
| 25 | __BEGIN_DECLS | ||
| 26 | |||
| 27 | extern int __riscv_flush_icache (void *__start, void *__end, | ||
| 28 | 				 unsigned long int __flags); | ||
| 29 | |||
| 30 | __END_DECLS | ||
| 31 | |||
| 32 | #endif /* sys/cachectl.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/riscv32-linux-gnu/sys/ucontext.h deleted-110| ... | @@ -1,110 +0,0 @@ | ||
| 1 | /* struct ucontext definition, RISC-V version. | ||
| 2 | Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* Don't rely on this, the interface is currently messed up and may need to | ||
| 20 | be broken to be fixed. */ | ||
| 21 | #ifndef _SYS_UCONTEXT_H | ||
| 22 | #define _SYS_UCONTEXT_H	1 | ||
| 23 | |||
| 24 | #include <features.h> | ||
| 25 | |||
| 26 | #include <bits/types/sigset_t.h> | ||
| 27 | #include <bits/types/stack_t.h> | ||
| 28 | |||
| 29 | typedef unsigned long int __riscv_mc_gp_state[32]; | ||
| 30 | |||
| 31 | #ifdef __USE_MISC | ||
| 32 | # define NGREG	32 | ||
| 33 | |||
| 34 | # define REG_PC 0 | ||
| 35 | # define REG_RA 1 | ||
| 36 | # define REG_SP 2 | ||
| 37 | # define REG_TP 4 | ||
| 38 | # define REG_S0 8 | ||
| 39 | # define REG_S1 9 | ||
| 40 | # define REG_A0 10 | ||
| 41 | # define REG_S2 18 | ||
| 42 | # define REG_NARGS 8 | ||
| 43 | |||
| 44 | typedef unsigned long int greg_t; | ||
| 45 | |||
| 46 | /* Container for all general registers. */ | ||
| 47 | typedef __riscv_mc_gp_state gregset_t; | ||
| 48 | |||
| 49 | /* Container for floating-point state. */ | ||
| 50 | typedef union __riscv_mc_fp_state fpregset_t; | ||
| 51 | #endif | ||
| 52 | |||
| 53 | struct __riscv_mc_f_ext_state | ||
| 54 | { | ||
| 55 | unsigned int __f[32]; | ||
| 56 | unsigned int __fcsr; | ||
| 57 | }; | ||
| 58 | |||
| 59 | struct __riscv_mc_d_ext_state | ||
| 60 | { | ||
| 61 | unsigned long long int __f[32]; | ||
| 62 | unsigned int __fcsr; | ||
| 63 | }; | ||
| 64 | |||
| 65 | struct __riscv_mc_q_ext_state | ||
| 66 | { | ||
| 67 | unsigned long long int __f[64] __attribute__ ((__aligned__ (16))); | ||
| 68 | unsigned int __fcsr; | ||
| 69 | /* Reserved for expansion of sigcontext structure. Currently zeroed | ||
| 70 | upon signal, and must be zero upon sigreturn. */ | ||
| 71 | unsigned int __glibc_reserved[3]; | ||
| 72 | }; | ||
| 73 | |||
| 74 | union __riscv_mc_fp_state | ||
| 75 | { | ||
| 76 | struct __riscv_mc_f_ext_state __f; | ||
| 77 | struct __riscv_mc_d_ext_state __d; | ||
| 78 | struct __riscv_mc_q_ext_state __q; | ||
| 79 | }; | ||
| 80 | |||
| 81 | typedef struct mcontext_t | ||
| 82 | { | ||
| 83 | __riscv_mc_gp_state __gregs; | ||
| 84 | union __riscv_mc_fp_state __fpregs; | ||
| 85 | } mcontext_t; | ||
| 86 | |||
| 87 | /* Userlevel context. */ | ||
| 88 | typedef struct ucontext_t | ||
| 89 | { | ||
| 90 | unsigned long int __uc_flags; | ||
| 91 | struct ucontext_t *uc_link; | ||
| 92 | stack_t uc_stack; | ||
| 93 | sigset_t uc_sigmask; | ||
| 94 | /* There's some padding here to allow sigset_t to be expanded in the | ||
| 95 | future. Though this is unlikely, other architectures put uc_sigmask | ||
| 96 | at the end of this structure and explicitly state it can be | ||
| 97 | expanded, so we didn't want to box ourselves in here. */ | ||
| 98 | char __glibc_reserved[1024 / 8 - sizeof (sigset_t)]; | ||
| 99 | /* We can't put uc_sigmask at the end of this structure because we need | ||
| 100 | to be able to expand sigcontext in the future. For example, the | ||
| 101 | vector ISA extension will almost certainly add ISA state. We want | ||
| 102 | to ensure all user-visible ISA state can be saved and restored via a | ||
| 103 | ucontext, so we're putting this at the end in order to allow for | ||
| 104 | infinite extensibility. Since we know this will be extended and we | ||
| 105 | assume sigset_t won't be extended an extreme amount, we're | ||
| 106 | prioritizing this. */ | ||
| 107 | mcontext_t uc_mcontext; | ||
| 108 | } ucontext_t; | ||
| 109 | |||
| 110 | #endif /* sys/ucontext.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/riscv32-linux-gnu/sys/user.h deleted-23| ... | @@ -1,23 +0,0 @@ | ||
| 1 | /* Copyright (C) 2001-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_USER_H | ||
| 19 | #define _SYS_USER_H	1 | ||
| 20 | |||
| 21 | |||
| 22 | |||
| 23 | #endif	/* _SYS_USER_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/riscv64-linux-gnu/bits/endianness.h deleted-11| ... | @@ -1,11 +0,0 @@ | ||
| 1 | #ifndef _BITS_ENDIANNESS_H | ||
| 2 | #define _BITS_ENDIANNESS_H 1 | ||
| 3 | |||
| 4 | #ifndef _BITS_ENDIAN_H | ||
| 5 | # error "Never use <bits/endianness.h> directly; include <endian.h> instead." | ||
| 6 | #endif | ||
| 7 | |||
| 8 | /* RISC-V is little-endian. */ | ||
| 9 | #define __BYTE_ORDER __LITTLE_ENDIAN | ||
| 10 | |||
| 11 | #endif /* bits/endianness.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/riscv64-linux-gnu/bits/environments.h deleted-81| ... | @@ -1,81 +0,0 @@ | ||
| 1 | /* Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _UNISTD_H | ||
| 19 | # error "Never include this file directly. Use <unistd.h> instead" | ||
| 20 | #endif | ||
| 21 | |||
| 22 | #include <bits/wordsize.h> | ||
| 23 | |||
| 24 | /* This header should define the following symbols under the described | ||
| 25 | situations. A value `1' means that the model is always supported, | ||
| 26 | `-1' means it is never supported. Undefined means it cannot be | ||
| 27 | statically decided. | ||
| 28 | |||
| 29 | _POSIX_V7_ILP32_OFF32 32bit int, long, pointers, and off_t type | ||
| 30 | _POSIX_V7_ILP32_OFFBIG 32bit int, long, and pointers and larger off_t type | ||
| 31 | |||
| 32 | _POSIX_V7_LP64_OFF32 64bit long and pointers and 32bit off_t type | ||
| 33 | _POSIX_V7_LPBIG_OFFBIG 64bit long and pointers and large off_t type | ||
| 34 | |||
| 35 | The macros _POSIX_V6_ILP32_OFF32, _POSIX_V6_ILP32_OFFBIG, | ||
| 36 | _POSIX_V6_LP64_OFF32, _POSIX_V6_LPBIG_OFFBIG, _XBS5_ILP32_OFF32, | ||
| 37 | _XBS5_ILP32_OFFBIG, _XBS5_LP64_OFF32, and _XBS5_LPBIG_OFFBIG were | ||
| 38 | used in previous versions of the Unix standard and are available | ||
| 39 | only for compatibility. | ||
| 40 | */ | ||
| 41 | |||
| 42 | #if __WORDSIZE == 64 | ||
| 43 | |||
| 44 | /* We can never provide environments with 32-bit wide pointers. */ | ||
| 45 | # define _POSIX_V7_ILP32_OFF32	-1 | ||
| 46 | # define _POSIX_V7_ILP32_OFFBIG	-1 | ||
| 47 | # define _POSIX_V6_ILP32_OFF32	-1 | ||
| 48 | # define _POSIX_V6_ILP32_OFFBIG	-1 | ||
| 49 | # define _XBS5_ILP32_OFF32	-1 | ||
| 50 | # define _XBS5_ILP32_OFFBIG	-1 | ||
| 51 | /* We also have no use (for now) for an environment with bigger pointers | ||
| 52 | and offsets. */ | ||
| 53 | # define _POSIX_V7_LPBIG_OFFBIG	-1 | ||
| 54 | # define _POSIX_V6_LPBIG_OFFBIG	-1 | ||
| 55 | # define _XBS5_LPBIG_OFFBIG	-1 | ||
| 56 | |||
| 57 | /* By default we have 64-bit wide `long int', pointers and `off_t'. */ | ||
| 58 | # define _POSIX_V7_LP64_OFF64	1 | ||
| 59 | # define _POSIX_V6_LP64_OFF64	1 | ||
| 60 | # define _XBS5_LP64_OFF64	1 | ||
| 61 | |||
| 62 | #else /* __WORDSIZE == 32 */ | ||
| 63 | |||
| 64 | /* RISC-V requires 64-bit off_t */ | ||
| 65 | # define _POSIX_V7_ILP32_OFF32 -1 | ||
| 66 | # define _POSIX_V6_ILP32_OFF32 -1 | ||
| 67 | # define _XBS5_ILP32_OFF32 -1 | ||
| 68 | |||
| 69 | # define _POSIX_V7_ILP32_OFFBIG	1 | ||
| 70 | # define _POSIX_V6_ILP32_OFFBIG	1 | ||
| 71 | # define _XBS5_ILP32_OFFBIG	1 | ||
| 72 | |||
| 73 | /* We can never provide environments with 64-bit wide pointers. */ | ||
| 74 | # define _POSIX_V7_LP64_OFF64	-1 | ||
| 75 | # define _POSIX_V7_LPBIG_OFFBIG	-1 | ||
| 76 | # define _POSIX_V6_LP64_OFF64	-1 | ||
| 77 | # define _POSIX_V6_LPBIG_OFFBIG	-1 | ||
| 78 | # define _XBS5_LP64_OFF64	-1 | ||
| 79 | # define _XBS5_LPBIG_OFFBIG	-1 | ||
| 80 | |||
| 81 | #endif /* __WORDSIZE == 32 */ | ||
| \ No newline at end of file | |||
lib/libc/include/riscv64-linux-gnu/bits/fcntl.h deleted-62| ... | @@ -1,62 +0,0 @@ | ||
| 1 | /* O_*, F_*, FD_* bit values for Linux / RISC-V. | ||
| 2 | Copyright (C) 2011-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library; if not, see | ||
| 18 | <https://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifndef	_FCNTL_H | ||
| 21 | # error "Never use <bits/fcntl.h> directly; include <fcntl.h> instead." | ||
| 22 | #endif | ||
| 23 | |||
| 24 | #include <bits/wordsize.h> | ||
| 25 | |||
| 26 | /* In 64-bit ISA files are always with 64bit off_t and F_*LK64 are the same as | ||
| 27 | non-64-bit versions. It will need to be revised for 128-bit. */ | ||
| 28 | #if __WORDSIZE == 64 | ||
| 29 | # define __O_LARGEFILE	0 | ||
| 30 | |||
| 31 | # define F_GETLK64	5	/* Get record locking info. */ | ||
| 32 | # define F_SETLK64	6	/* Set record locking info (non-blocking). */ | ||
| 33 | # define F_SETLKW64	7	/* Set record locking info (blocking).	*/ | ||
| 34 | #endif | ||
| 35 | |||
| 36 | struct flock | ||
| 37 | { | ||
| 38 | short int l_type; /* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK. */ | ||
| 39 | short int l_whence; /* Where `l_start' is relative to (like `lseek'). */ | ||
| 40 | #if __WORDSIZE == 64 || !defined __USE_FILE_OFFSET64 | ||
| 41 | __off_t l_start; /* Offset where the lock begins. */ | ||
| 42 | __off_t l_len; /* Size of the locked area; zero means until EOF. */ | ||
| 43 | #else | ||
| 44 | __off64_t l_start; /* Offset where the lock begins. */ | ||
| 45 | __off64_t l_len; /* Size of the locked area; zero means until EOF. */ | ||
| 46 | #endif | ||
| 47 | __pid_t l_pid; /* Process holding the lock. */ | ||
| 48 | }; | ||
| 49 | |||
| 50 | #ifdef __USE_LARGEFILE64 | ||
| 51 | struct flock64 | ||
| 52 | { | ||
| 53 | short int l_type; /* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK. */ | ||
| 54 | short int l_whence; /* Where `l_start' is relative to (like `lseek'). */ | ||
| 55 | __off64_t l_start; /* Offset where the lock begins. */ | ||
| 56 | __off64_t l_len; /* Size of the locked area; zero means until EOF. */ | ||
| 57 | __pid_t l_pid; /* Process holding the lock. */ | ||
| 58 | }; | ||
| 59 | #endif | ||
| 60 | |||
| 61 | /* Include generic Linux declarations. */ | ||
| 62 | #include <bits/fcntl-linux.h> | ||
| \ No newline at end of file | |||
lib/libc/include/riscv64-linux-gnu/bits/fenv.h deleted-74| ... | @@ -1,74 +0,0 @@ | ||
| 1 | /* Floating point environment, RISC-V version. | ||
| 2 | Copyright (C) 1998-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _FENV_H | ||
| 20 | # error "Never use <bits/fenv.h> directly; include <fenv.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | enum | ||
| 24 | { | ||
| 25 | FE_INEXACT = | ||
| 26 | #define FE_INEXACT	(0x01) | ||
| 27 | FE_INEXACT, | ||
| 28 | FE_UNDERFLOW = | ||
| 29 | #define FE_UNDERFLOW	(0x02) | ||
| 30 | FE_UNDERFLOW, | ||
| 31 | FE_OVERFLOW = | ||
| 32 | #define FE_OVERFLOW	(0x04) | ||
| 33 | FE_OVERFLOW, | ||
| 34 | FE_DIVBYZERO = | ||
| 35 | #define FE_DIVBYZERO	(0x08) | ||
| 36 | FE_DIVBYZERO, | ||
| 37 | FE_INVALID = | ||
| 38 | #define FE_INVALID	(0x10) | ||
| 39 | FE_INVALID | ||
| 40 | }; | ||
| 41 | |||
| 42 | #define FE_ALL_EXCEPT \ | ||
| 43 | 	(FE_INEXACT | FE_DIVBYZERO | FE_UNDERFLOW | FE_OVERFLOW | FE_INVALID) | ||
| 44 | |||
| 45 | enum | ||
| 46 | { | ||
| 47 | FE_TONEAREST = | ||
| 48 | #define FE_TONEAREST	(0x0) | ||
| 49 | FE_TONEAREST, | ||
| 50 | FE_TOWARDZERO = | ||
| 51 | #define FE_TOWARDZERO	(0x1) | ||
| 52 | FE_TOWARDZERO, | ||
| 53 | FE_DOWNWARD = | ||
| 54 | #define FE_DOWNWARD	(0x2) | ||
| 55 | FE_DOWNWARD, | ||
| 56 | FE_UPWARD = | ||
| 57 | #define FE_UPWARD	(0x3) | ||
| 58 | FE_UPWARD | ||
| 59 | }; | ||
| 60 | |||
| 61 | |||
| 62 | typedef unsigned int fexcept_t; | ||
| 63 | typedef unsigned int fenv_t; | ||
| 64 | |||
| 65 | /* If the default argument is used we use this value. */ | ||
| 66 | #define FE_DFL_ENV	((__const fenv_t *) -1) | ||
| 67 | |||
| 68 | #if __GLIBC_USE (IEC_60559_BFP_EXT_C23) | ||
| 69 | /* Type representing floating-point control modes. */ | ||
| 70 | typedef unsigned int femode_t; | ||
| 71 | |||
| 72 | /* Default floating-point control modes. */ | ||
| 73 | # define FE_DFL_MODE	((const femode_t *) -1L) | ||
| 74 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/riscv64-linux-gnu/bits/link.h deleted-56| ... | @@ -1,56 +0,0 @@ | ||
| 1 | /* Machine-specific declarations for dynamic linker interface. RISC-V version. | ||
| 2 | Copyright (C) 2005-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef	_LINK_H | ||
| 20 | # error "Never include <bits/link.h> directly; use <link.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | typedef struct La_riscv_regs | ||
| 24 | { | ||
| 25 | unsigned long int lr_reg[8]; /* a0 - a7 */ | ||
| 26 | double lr_fpreg[8]; /* fa0 - fa7 */ | ||
| 27 | unsigned long int lr_ra; | ||
| 28 | unsigned long int lr_sp; | ||
| 29 | } La_riscv_regs; | ||
| 30 | |||
| 31 | /* Return values for calls from PLT on RISC-V. */ | ||
| 32 | typedef struct La_riscv_retval | ||
| 33 | { | ||
| 34 | unsigned long int lrv_a0; | ||
| 35 | unsigned long int lrv_a1; | ||
| 36 | double lrv_fa0; | ||
| 37 | double lrv_fa1; | ||
| 38 | } La_riscv_retval; | ||
| 39 | |||
| 40 | __BEGIN_DECLS | ||
| 41 | |||
| 42 | extern ElfW(Addr) la_riscv_gnu_pltenter (ElfW(Sym) *__sym, unsigned int __ndx, | ||
| 43 | 					 uintptr_t *__refcook, | ||
| 44 | 					 uintptr_t *__defcook, | ||
| 45 | 					 La_riscv_regs *__regs, | ||
| 46 | 					 unsigned int *__flags, | ||
| 47 | 					 const char *__symname, | ||
| 48 | 					 long int *__framesizep); | ||
| 49 | extern unsigned int la_riscv_gnu_pltexit (ElfW(Sym) *__sym, unsigned int __ndx, | ||
| 50 | 					 uintptr_t *__refcook, | ||
| 51 | 					 uintptr_t *__defcook, | ||
| 52 | 					 const La_riscv_regs *__inregs, | ||
| 53 | 					 La_riscv_retval *__outregs, | ||
| 54 | 					 const char *__symname); | ||
| 55 | |||
| 56 | __END_DECLS | ||
| \ No newline at end of file | |||
lib/libc/include/riscv64-linux-gnu/bits/long-double.h deleted-21| ... | @@ -1,21 +0,0 @@ | ||
| 1 | /* Properties of long double type. ldbl-128 version. | ||
| 2 | Copyright (C) 2016-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* long double is distinct from double, so there is nothing to | ||
| 20 | define here. */ | ||
| 21 | #define __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI 0 | ||
| \ No newline at end of file | |||
lib/libc/include/riscv64-linux-gnu/bits/procfs.h deleted-31| ... | @@ -1,31 +0,0 @@ | ||
| 1 | /* Types for registers for sys/procfs.h. RISC-V version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_PROCFS_H | ||
| 20 | # error "Never include <bits/procfs.h> directly; use <sys/procfs.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <sys/ucontext.h> | ||
| 24 | |||
| 25 | /* ELF register definitions */ | ||
| 26 | #define ELF_NGREG	NGREG | ||
| 27 | #define ELF_NFPREG	NFPREG | ||
| 28 | |||
| 29 | typedef unsigned long int elf_greg_t; | ||
| 30 | typedef unsigned long int elf_gregset_t[32]; | ||
| 31 | typedef union __riscv_mc_fp_state elf_fpregset_t; | ||
| \ No newline at end of file | |||
lib/libc/include/riscv64-linux-gnu/bits/pthreadtypes-arch.h deleted-45| ... | @@ -1,45 +0,0 @@ | ||
| 1 | /* Machine-specific pthread type layouts. RISC-V version. | ||
| 2 | Copyright (C) 2011-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_PTHREADTYPES_ARCH_H | ||
| 20 | #define _BITS_PTHREADTYPES_ARCH_H	1 | ||
| 21 | |||
| 22 | #include <bits/endian.h> | ||
| 23 | |||
| 24 | #define __SIZEOF_PTHREAD_MUTEXATTR_T		4 | ||
| 25 | #define __SIZEOF_PTHREAD_COND_T			48 | ||
| 26 | #define __SIZEOF_PTHREAD_CONDATTR_T		4 | ||
| 27 | #define __SIZEOF_PTHREAD_RWLOCKATTR_T		8 | ||
| 28 | #define __SIZEOF_PTHREAD_BARRIERATTR_T		4 | ||
| 29 | |||
| 30 | #if __WORDSIZE == 64 | ||
| 31 | # define __SIZEOF_PTHREAD_ATTR_T		56 | ||
| 32 | # define __SIZEOF_PTHREAD_MUTEX_T		40 | ||
| 33 | # define __SIZEOF_PTHREAD_RWLOCK_T		56 | ||
| 34 | # define __SIZEOF_PTHREAD_BARRIER_T		32 | ||
| 35 | #else | ||
| 36 | # define __SIZEOF_PTHREAD_ATTR_T		32 | ||
| 37 | # define __SIZEOF_PTHREAD_MUTEX_T		32 | ||
| 38 | # define __SIZEOF_PTHREAD_RWLOCK_T		48 | ||
| 39 | # define __SIZEOF_PTHREAD_BARRIER_T		20 | ||
| 40 | #endif | ||
| 41 | |||
| 42 | #define __LOCK_ALIGNMENT | ||
| 43 | #define __ONCE_ALIGNMENT | ||
| 44 | |||
| 45 | #endif	/* bits/pthreadtypes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/riscv64-linux-gnu/bits/rseq.h deleted-44| ... | @@ -1,44 +0,0 @@ | ||
| 1 | /* Restartable Sequences Linux riscv architecture header. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #include <bits/endian.h> | ||
| 19 | |||
| 20 | #ifndef _SYS_RSEQ_H | ||
| 21 | # error "Never use <bits/rseq.h> directly; include <sys/rseq.h> instead." | ||
| 22 | #endif | ||
| 23 | |||
| 24 | /* RSEQ_SIG is a signature required before each abort handler code. | ||
| 25 | |||
| 26 | It is a 32-bit value that maps to actual architecture code compiled | ||
| 27 | into applications and libraries. It needs to be defined for each | ||
| 28 | architecture. When choosing this value, it needs to be taken into | ||
| 29 | account that generating invalid instructions may have ill effects on | ||
| 30 | tools like objdump, and may also have impact on the CPU speculative | ||
| 31 | execution efficiency in some cases. | ||
| 32 | |||
| 33 | Select the instruction "csrw mhartid, x0" as the RSEQ_SIG. Unlike | ||
| 34 | other architectures, the ebreak instruction has no immediate field for | ||
| 35 | distinguishing purposes. Hence, ebreak is not suitable as RSEQ_SIG. | ||
| 36 | "csrw mhartid, x0" can also satisfy the RSEQ requirement because it | ||
| 37 | is an uncommon instruction and will raise an illegal instruction | ||
| 38 | exception when executed in all modes. */ | ||
| 39 | |||
| 40 | #if __BYTE_ORDER == __LITTLE_ENDIAN | ||
| 41 | #define RSEQ_SIG	0xf1401073 | ||
| 42 | #else | ||
| 43 | /* RSEQ is currently only supported on Little-Endian. */ | ||
| 44 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/riscv64-linux-gnu/bits/setjmp.h deleted-39| ... | @@ -1,39 +0,0 @@ | ||
| 1 | /* Define the machine-dependent type `jmp_buf'. RISC-V version. | ||
| 2 | Copyright (C) 2011-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _RISCV_BITS_SETJMP_H | ||
| 20 | #define _RISCV_BITS_SETJMP_H | ||
| 21 | |||
| 22 | typedef struct __jmp_buf_internal_tag | ||
| 23 | { | ||
| 24 | /* Program counter. */ | ||
| 25 | long int __pc; | ||
| 26 | /* Callee-saved registers. */ | ||
| 27 | long int __regs[12]; | ||
| 28 | /* Stack pointer. */ | ||
| 29 | long int __sp; | ||
| 30 | |||
| 31 | /* Callee-saved floating point registers. */ | ||
| 32 | #if defined __riscv_float_abi_double | ||
| 33 | double __fpregs[12]; | ||
| 34 | #elif !defined __riscv_float_abi_soft | ||
| 35 | # error unsupported FLEN | ||
| 36 | #endif | ||
| 37 | } __jmp_buf[1]; | ||
| 38 | |||
| 39 | #endif /* _RISCV_BITS_SETJMP_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/riscv64-linux-gnu/bits/sigcontext.h deleted-31| ... | @@ -1,31 +0,0 @@ | ||
| 1 | /* Machine-dependent signal context structure for Linux. RISC-V version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library. If not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _BITS_SIGCONTEXT_H | ||
| 19 | #define _BITS_SIGCONTEXT_H 1 | ||
| 20 | |||
| 21 | #if !defined _SIGNAL_H && !defined _SYS_UCONTEXT_H | ||
| 22 | # error "Never use <bits/sigcontext.h> directly; include <signal.h> instead." | ||
| 23 | #endif | ||
| 24 | |||
| 25 | struct sigcontext { | ||
| 26 | /* gregs[0] holds the program counter. */ | ||
| 27 | unsigned long int gregs[32]; | ||
| 28 | unsigned long long int fpregs[66] __attribute__ ((__aligned__ (16))); | ||
| 29 | }; | ||
| 30 | |||
| 31 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/riscv64-linux-gnu/bits/struct_rwlock.h deleted-68| ... | @@ -1,68 +0,0 @@ | ||
| 1 | /* RISC-V internal rwlock struct definitions. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library; if not, see | ||
| 18 | <https://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifndef _RWLOCK_INTERNAL_H | ||
| 21 | #define _RWLOCK_INTERNAL_H | ||
| 22 | |||
| 23 | /* There is a lot of padding in this structure. While it's not strictly | ||
| 24 | necessary on RISC-V, we're going to leave it in to be on the safe side in | ||
| 25 | case it's needed in the future. Most other architectures have the padding, | ||
| 26 | so this gives us the same extensibility as everyone else has. */ | ||
| 27 | struct __pthread_rwlock_arch_t | ||
| 28 | { | ||
| 29 | unsigned int __readers; | ||
| 30 | unsigned int __writers; | ||
| 31 | unsigned int __wrphase_futex; | ||
| 32 | unsigned int __writers_futex; | ||
| 33 | unsigned int __pad3; | ||
| 34 | unsigned int __pad4; | ||
| 35 | #if __WORDSIZE == 64 | ||
| 36 | int __cur_writer; | ||
| 37 | int __shared; | ||
| 38 | unsigned long int __pad1; | ||
| 39 | unsigned long int __pad2; | ||
| 40 | unsigned int __flags; | ||
| 41 | #else | ||
| 42 | # if __BYTE_ORDER == __BIG_ENDIAN | ||
| 43 | unsigned char __pad1; | ||
| 44 | unsigned char __pad2; | ||
| 45 | unsigned char __shared; | ||
| 46 | unsigned char __flags; | ||
| 47 | # else | ||
| 48 | unsigned char __flags; | ||
| 49 | unsigned char __shared; | ||
| 50 | unsigned char __pad1; | ||
| 51 | unsigned char __pad2; | ||
| 52 | # endif | ||
| 53 | int __cur_writer; | ||
| 54 | #endif | ||
| 55 | }; | ||
| 56 | |||
| 57 | #if __WORDSIZE == 64 | ||
| 58 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 59 | 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags | ||
| 60 | #elif __BYTE_ORDER == __BIG_ENDIAN | ||
| 61 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 62 | 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0 | ||
| 63 | #else | ||
| 64 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 65 | 0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0 | ||
| 66 | #endif | ||
| 67 | |||
| 68 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/riscv64-linux-gnu/bits/struct_stat.h deleted-127| ... | @@ -1,127 +0,0 @@ | ||
| 1 | /* Definition for struct stat. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #if !defined _SYS_STAT_H && !defined _FCNTL_H | ||
| 20 | # error "Never include <bits/struct_stat.h> directly; use <sys/stat.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef _BITS_STRUCT_STAT_H | ||
| 24 | #define _BITS_STRUCT_STAT_H	1 | ||
| 25 | |||
| 26 | #include <bits/endian.h> | ||
| 27 | #include <bits/wordsize.h> | ||
| 28 | |||
| 29 | #if defined __USE_FILE_OFFSET64 | ||
| 30 | # define __field64(type, type64, name) type64 name | ||
| 31 | #elif __WORDSIZE == 64 || defined __INO_T_MATCHES_INO64_T | ||
| 32 | # if defined __INO_T_MATCHES_INO64_T && !defined __OFF_T_MATCHES_OFF64_T | ||
| 33 | # error "ino_t and off_t must both be the same type" | ||
| 34 | # endif | ||
| 35 | # define __field64(type, type64, name) type name | ||
| 36 | #elif __BYTE_ORDER == __LITTLE_ENDIAN | ||
| 37 | # define __field64(type, type64, name) \ | ||
| 38 | type name __attribute__((__aligned__ (__alignof__ (type64)))); int __##name##_pad | ||
| 39 | #else | ||
| 40 | # define __field64(type, type64, name) \ | ||
| 41 | int __##name##_pad __attribute__((__aligned__ (__alignof__ (type64)))); type name | ||
| 42 | #endif | ||
| 43 | |||
| 44 | struct stat | ||
| 45 | { | ||
| 46 | __dev_t st_dev;		/* Device. */ | ||
| 47 | __field64(__ino_t, __ino64_t, st_ino); /* File serial number. */ | ||
| 48 | __mode_t st_mode;		/* File mode. */ | ||
| 49 | __nlink_t st_nlink;		/* Link count. */ | ||
| 50 | __uid_t st_uid;		/* User ID of the file's owner.	*/ | ||
| 51 | __gid_t st_gid;		/* Group ID of the file's group.*/ | ||
| 52 | __dev_t st_rdev;		/* Device number, if device. */ | ||
| 53 | __dev_t __pad1; | ||
| 54 | __field64(__off_t, __off64_t, st_size); /* Size of file, in bytes. */ | ||
| 55 | __blksize_t st_blksize;	/* Optimal block size for I/O. */ | ||
| 56 | int __pad2; | ||
| 57 | __field64(__blkcnt_t, __blkcnt64_t, st_blocks); /* 512-byte blocks */ | ||
| 58 | #ifdef __USE_XOPEN2K8 | ||
| 59 | /* Nanosecond resolution timestamps are stored in a format | ||
| 60 | equivalent to 'struct timespec'. This is the type used | ||
| 61 | whenever possible but the Unix namespace rules do not allow the | ||
| 62 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 63 | Therefore we have to handle the use of this header in strictly | ||
| 64 | standard-compliant sources special. */ | ||
| 65 | struct timespec st_atim;		/* Time of last access. */ | ||
| 66 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 67 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 68 | # define st_atime st_atim.tv_sec	/* Backward compatibility. */ | ||
| 69 | # define st_mtime st_mtim.tv_sec | ||
| 70 | # define st_ctime st_ctim.tv_sec | ||
| 71 | #else | ||
| 72 | __time_t st_atime;			/* Time of last access. */ | ||
| 73 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 74 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 75 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 76 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 77 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 78 | #endif | ||
| 79 | int __glibc_reserved[2]; | ||
| 80 | }; | ||
| 81 | |||
| 82 | #undef __field64 | ||
| 83 | |||
| 84 | #ifdef __USE_LARGEFILE64 | ||
| 85 | struct stat64 | ||
| 86 | { | ||
| 87 | __dev_t st_dev;		/* Device. */ | ||
| 88 | __ino64_t st_ino;		/* File serial number.	*/ | ||
| 89 | __mode_t st_mode;		/* File mode. */ | ||
| 90 | __nlink_t st_nlink;		/* Link count. */ | ||
| 91 | __uid_t st_uid;		/* User ID of the file's owner.	*/ | ||
| 92 | __gid_t st_gid;		/* Group ID of the file's group.*/ | ||
| 93 | __dev_t st_rdev;		/* Device number, if device. */ | ||
| 94 | __dev_t __pad1; | ||
| 95 | __off64_t st_size;		/* Size of file, in bytes. */ | ||
| 96 | __blksize_t st_blksize;	/* Optimal block size for I/O. */ | ||
| 97 | int __pad2; | ||
| 98 | __blkcnt64_t st_blocks;	/* Nr. 512-byte blocks allocated. */ | ||
| 99 | #ifdef __USE_XOPEN2K8 | ||
| 100 | /* Nanosecond resolution timestamps are stored in a format | ||
| 101 | equivalent to 'struct timespec'. This is the type used | ||
| 102 | whenever possible but the Unix namespace rules do not allow the | ||
| 103 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 104 | Therefore we have to handle the use of this header in strictly | ||
| 105 | standard-compliant sources special. */ | ||
| 106 | struct timespec st_atim;		/* Time of last access. */ | ||
| 107 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 108 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 109 | #else | ||
| 110 | __time_t st_atime;			/* Time of last access. */ | ||
| 111 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 112 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 113 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 114 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 115 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 116 | #endif | ||
| 117 | int __glibc_reserved[2]; | ||
| 118 | }; | ||
| 119 | #endif | ||
| 120 | |||
| 121 | /* Tell code we have these members. */ | ||
| 122 | #define	_STATBUF_ST_BLKSIZE | ||
| 123 | #define _STATBUF_ST_RDEV | ||
| 124 | /* Nanosecond resolution time values are supported. */ | ||
| 125 | #define _STATBUF_ST_NSEC | ||
| 126 | |||
| 127 | #endif /* _BITS_STRUCT_STAT_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/riscv64-linux-gnu/bits/time64.h deleted-36| ... | @@ -1,36 +0,0 @@ | ||
| 1 | /* bits/time64.h -- underlying types for __time64_t. RISC-V version. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_TYPES_H | ||
| 20 | # error "Never include <bits/time64.h> directly; use <sys/types.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef	_BITS_TIME64_H | ||
| 24 | #define	_BITS_TIME64_H	1 | ||
| 25 | |||
| 26 | /* Define __TIME64_T_TYPE so that it is always a 64-bit type. */ | ||
| 27 | |||
| 28 | #if __WORDSIZE == 64 | ||
| 29 | /* If we already have 64-bit time type then use it. */ | ||
| 30 | # define __TIME64_T_TYPE		__TIME_T_TYPE | ||
| 31 | #else | ||
| 32 | /* Define a 64-bit time type alongsize the 32-bit one. */ | ||
| 33 | # define __TIME64_T_TYPE		__SQUAD_TYPE | ||
| 34 | #endif | ||
| 35 | |||
| 36 | #endif /* bits/time64.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/riscv64-linux-gnu/bits/timesize.h deleted-20| ... | @@ -1,20 +0,0 @@ | ||
| 1 | /* Bit size of the time_t type at glibc build time, general case. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* Size in bits of the 'time_t' type of the default ABI. */ | ||
| 20 | #define __TIMESIZE	64 | ||
| \ No newline at end of file | |||
lib/libc/include/riscv64-linux-gnu/bits/wordsize.h deleted-30| ... | @@ -1,30 +0,0 @@ | ||
| 1 | /* Determine the wordsize from the preprocessor defines. RISC-V version. | ||
| 2 | Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #if __riscv_xlen == (__SIZEOF_POINTER__ * 8) | ||
| 20 | # define __WORDSIZE __riscv_xlen | ||
| 21 | #else | ||
| 22 | # error unsupported ABI | ||
| 23 | #endif | ||
| 24 | |||
| 25 | #define __WORDSIZE_TIME64_COMPAT32 1 | ||
| 26 | |||
| 27 | #if __WORDSIZE == 32 | ||
| 28 | # define __WORDSIZE32_SIZE_ULONG 0 | ||
| 29 | # define __WORDSIZE32_PTRDIFF_LONG 0 | ||
| 30 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/riscv64-linux-gnu/fpu_control.h deleted-74| ... | @@ -1,74 +0,0 @@ | ||
| 1 | /* FPU control word bits. RISC-V version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _FPU_CONTROL_H | ||
| 20 | #define _FPU_CONTROL_H | ||
| 21 | |||
| 22 | #include <features.h> | ||
| 23 | |||
| 24 | #ifndef __riscv_flen | ||
| 25 | |||
| 26 | # define _FPU_RESERVED 0xffffffff | ||
| 27 | # define _FPU_DEFAULT 0x00000000 | ||
| 28 | typedef unsigned int fpu_control_t; | ||
| 29 | # define _FPU_GETCW(cw) (cw) = 0 | ||
| 30 | # define _FPU_SETCW(cw) do { } while (0) | ||
| 31 | extern fpu_control_t __fpu_control; | ||
| 32 | |||
| 33 | #else /* __riscv_flen */ | ||
| 34 | |||
| 35 | # define _FPU_RESERVED 0 | ||
| 36 | # define _FPU_DEFAULT 0 | ||
| 37 | # define _FPU_IEEE _FPU_DEFAULT | ||
| 38 | |||
| 39 | /* Type of the control word. */ | ||
| 40 | typedef unsigned int fpu_control_t __attribute__ ((__mode__ (__SI__))); | ||
| 41 | |||
| 42 | /* Macros for accessing the hardware control word. */ | ||
| 43 | # define _FPU_GETCW(cw) __asm__ volatile ("frsr %0" : "=r" (cw)) | ||
| 44 | # define _FPU_SETCW(cw) __asm__ volatile ("fssr %z0" : : "rJ" (cw)) | ||
| 45 | |||
| 46 | /* Default control word set at startup. */ | ||
| 47 | extern fpu_control_t __fpu_control; | ||
| 48 | |||
| 49 | # define _FCLASS(x) (__extension__ ({ int __res; \ | ||
| 50 | if (sizeof (x) * 8 > __riscv_flen) __builtin_trap (); \ | ||
| 51 | if (sizeof (x) == 4) asm ("fclass.s %0, %1" : "=r" (__res) : "f" (x)); \ | ||
| 52 | else if (sizeof (x) == 8) asm ("fclass.d %0, %1" : "=r" (__res) : "f" (x)); \ | ||
| 53 | else __builtin_trap (); \ | ||
| 54 | __res; })) | ||
| 55 | |||
| 56 | # define _FCLASS_MINF (1 << 0) | ||
| 57 | # define _FCLASS_MNORM (1 << 1) | ||
| 58 | # define _FCLASS_MSUBNORM (1 << 2) | ||
| 59 | # define _FCLASS_MZERO (1 << 3) | ||
| 60 | # define _FCLASS_PZERO (1 << 4) | ||
| 61 | # define _FCLASS_PSUBNORM (1 << 5) | ||
| 62 | # define _FCLASS_PNORM (1 << 6) | ||
| 63 | # define _FCLASS_PINF (1 << 7) | ||
| 64 | # define _FCLASS_SNAN (1 << 8) | ||
| 65 | # define _FCLASS_QNAN (1 << 9) | ||
| 66 | # define _FCLASS_ZERO (_FCLASS_MZERO | _FCLASS_PZERO) | ||
| 67 | # define _FCLASS_SUBNORM (_FCLASS_MSUBNORM | _FCLASS_PSUBNORM) | ||
| 68 | # define _FCLASS_NORM (_FCLASS_MNORM | _FCLASS_PNORM) | ||
| 69 | # define _FCLASS_INF (_FCLASS_MINF | _FCLASS_PINF) | ||
| 70 | # define _FCLASS_NAN (_FCLASS_SNAN | _FCLASS_QNAN) | ||
| 71 | |||
| 72 | #endif /* __riscv_flen */ | ||
| 73 | |||
| 74 | #endif	/* fpu_control.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/riscv64-linux-gnu/gnu/lib-names-lp64d.h deleted-27| ... | @@ -1,27 +0,0 @@ | ||
| 1 | /* This file is automatically generated. */ | ||
| 2 | #ifndef __GNU_LIB_NAMES_H | ||
| 3 | # error "Never use <gnu/lib-names-lp64d.h> directly; include <gnu/lib-names.h> instead." | ||
| 4 | #endif | ||
| 5 | |||
| 6 | #define LD_LINUX_RISCV64_LP64D_SO "ld-linux-riscv64-lp64d.so.1" | ||
| 7 | #define LD_SO "ld-linux-riscv64-lp64d.so.1" | ||
| 8 | #define LIBANL_SO "libanl.so.1" | ||
| 9 | #define LIBBROKENLOCALE_SO "libBrokenLocale.so.1" | ||
| 10 | #define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0" | ||
| 11 | #define LIBC_SO "libc.so.6" | ||
| 12 | #define LIBDL_SO "libdl.so.2" | ||
| 13 | #define LIBGCC_S_SO "libgcc_s.so.1" | ||
| 14 | #define LIBMVEC_SO "libmvec.so.1" | ||
| 15 | #define LIBM_SO "libm.so.6" | ||
| 16 | #define LIBNSL_SO "libnsl.so.1" | ||
| 17 | #define LIBNSS_COMPAT_SO "libnss_compat.so.2" | ||
| 18 | #define LIBNSS_DB_SO "libnss_db.so.2" | ||
| 19 | #define LIBNSS_DNS_SO "libnss_dns.so.2" | ||
| 20 | #define LIBNSS_FILES_SO "libnss_files.so.2" | ||
| 21 | #define LIBNSS_HESIOD_SO "libnss_hesiod.so.2" | ||
| 22 | #define LIBNSS_LDAP_SO "libnss_ldap.so.2" | ||
| 23 | #define LIBPTHREAD_SO "libpthread.so.0" | ||
| 24 | #define LIBRESOLV_SO "libresolv.so.2" | ||
| 25 | #define LIBRT_SO "librt.so.1" | ||
| 26 | #define LIBTHREAD_DB_SO "libthread_db.so.1" | ||
| 27 | #define LIBUTIL_SO "libutil.so.1" | ||
| \ No newline at end of file | |||
lib/libc/include/riscv64-linux-gnu/gnu/lib-names.h deleted-22| ... | @@ -1,22 +0,0 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | It defines macros to allow user program to find the shared | ||
| 3 | library files which come as part of GNU libc. */ | ||
| 4 | #ifndef __GNU_LIB_NAMES_H | ||
| 5 | #define __GNU_LIB_NAMES_H	1 | ||
| 6 | |||
| 7 | #include <bits/wordsize.h> | ||
| 8 | |||
| 9 | #if __WORDSIZE == 32 && defined __riscv_float_abi_soft | ||
| 10 | # include <gnu/lib-names-ilp32.h> | ||
| 11 | #endif | ||
| 12 | #if __WORDSIZE == 32 && defined __riscv_float_abi_double | ||
| 13 | # include <gnu/lib-names-ilp32d.h> | ||
| 14 | #endif | ||
| 15 | #if __WORDSIZE == 64 && defined __riscv_float_abi_soft | ||
| 16 | # include <gnu/lib-names-lp64.h> | ||
| 17 | #endif | ||
| 18 | #if __WORDSIZE == 64 && defined __riscv_float_abi_double | ||
| 19 | # include <gnu/lib-names-lp64d.h> | ||
| 20 | #endif | ||
| 21 | |||
| 22 | #endif	/* gnu/lib-names.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/riscv64-linux-gnu/gnu/stubs-lp64d.h deleted-24| ... | @@ -1,24 +0,0 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | It defines a symbol `__stub_FUNCTION' for each function | ||
| 3 | in the C library which is a stub, meaning it will fail | ||
| 4 | every time called, usually setting errno to ENOSYS. */ | ||
| 5 | |||
| 6 | #ifdef _LIBC | ||
| 7 | #error Applications may not define the macro _LIBC | ||
| 8 | #endif | ||
| 9 | |||
| 10 | #define __stub___compat_bdflush | ||
| 11 | #define __stub___compat_create_module | ||
| 12 | #define __stub___compat_get_kernel_syms | ||
| 13 | #define __stub___compat_query_module | ||
| 14 | #define __stub___compat_uselib | ||
| 15 | #define __stub_chflags | ||
| 16 | #define __stub_fchflags | ||
| 17 | #define __stub_fedisableexcept | ||
| 18 | #define __stub_feenableexcept | ||
| 19 | #define __stub_fegetexcept | ||
| 20 | #define __stub_gtty | ||
| 21 | #define __stub_revoke | ||
| 22 | #define __stub_setlogin | ||
| 23 | #define __stub_sigreturn | ||
| 24 | #define __stub_stty | ||
| \ No newline at end of file | |||
lib/libc/include/riscv64-linux-gnu/gnu/stubs.h deleted-18| ... | @@ -1,18 +0,0 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | This file selects the right generated file of `__stub_FUNCTION' macros | ||
| 3 | based on the architecture being compiled for. */ | ||
| 4 | |||
| 5 | #include <bits/wordsize.h> | ||
| 6 | |||
| 7 | #if __WORDSIZE == 32 && defined __riscv_float_abi_soft | ||
| 8 | # include <gnu/stubs-ilp32.h> | ||
| 9 | #endif | ||
| 10 | #if __WORDSIZE == 32 && defined __riscv_float_abi_double | ||
| 11 | # include <gnu/stubs-ilp32d.h> | ||
| 12 | #endif | ||
| 13 | #if __WORDSIZE == 64 && defined __riscv_float_abi_soft | ||
| 14 | # include <gnu/stubs-lp64.h> | ||
| 15 | #endif | ||
| 16 | #if __WORDSIZE == 64 && defined __riscv_float_abi_double | ||
| 17 | # include <gnu/stubs-lp64d.h> | ||
| 18 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/riscv64-linux-gnu/ieee754.h deleted-170| ... | @@ -1,170 +0,0 @@ | ||
| 1 | /* Copyright (C) 1992-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _IEEE754_H | ||
| 19 | #define _IEEE754_H 1 | ||
| 20 | |||
| 21 | #include <features.h> | ||
| 22 | |||
| 23 | #include <bits/endian.h> | ||
| 24 | |||
| 25 | __BEGIN_DECLS | ||
| 26 | |||
| 27 | union ieee754_float | ||
| 28 | { | ||
| 29 | float f; | ||
| 30 | |||
| 31 | /* This is the IEEE 754 single-precision format. */ | ||
| 32 | struct | ||
| 33 | { | ||
| 34 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 35 | 	unsigned int negative:1; | ||
| 36 | 	unsigned int exponent:8; | ||
| 37 | 	unsigned int mantissa:23; | ||
| 38 | #endif				/* Big endian. */ | ||
| 39 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 40 | 	unsigned int mantissa:23; | ||
| 41 | 	unsigned int exponent:8; | ||
| 42 | 	unsigned int negative:1; | ||
| 43 | #endif				/* Little endian. */ | ||
| 44 | } ieee; | ||
| 45 | |||
| 46 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 47 | struct | ||
| 48 | { | ||
| 49 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 50 | 	unsigned int negative:1; | ||
| 51 | 	unsigned int exponent:8; | ||
| 52 | 	unsigned int quiet_nan:1; | ||
| 53 | 	unsigned int mantissa:22; | ||
| 54 | #endif				/* Big endian. */ | ||
| 55 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 56 | 	unsigned int mantissa:22; | ||
| 57 | 	unsigned int quiet_nan:1; | ||
| 58 | 	unsigned int exponent:8; | ||
| 59 | 	unsigned int negative:1; | ||
| 60 | #endif				/* Little endian. */ | ||
| 61 | } ieee_nan; | ||
| 62 | }; | ||
| 63 | |||
| 64 | #define IEEE754_FLOAT_BIAS	0x7f /* Added to exponent. */ | ||
| 65 | |||
| 66 | |||
| 67 | union ieee754_double | ||
| 68 | { | ||
| 69 | double d; | ||
| 70 | |||
| 71 | /* This is the IEEE 754 double-precision format. */ | ||
| 72 | struct | ||
| 73 | { | ||
| 74 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 75 | 	unsigned int negative:1; | ||
| 76 | 	unsigned int exponent:11; | ||
| 77 | 	/* Together these comprise the mantissa. */ | ||
| 78 | 	unsigned int mantissa0:20; | ||
| 79 | 	unsigned int mantissa1:32; | ||
| 80 | #endif				/* Big endian. */ | ||
| 81 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 82 | 	/* Together these comprise the mantissa. */ | ||
| 83 | 	unsigned int mantissa1:32; | ||
| 84 | 	unsigned int mantissa0:20; | ||
| 85 | 	unsigned int exponent:11; | ||
| 86 | 	unsigned int negative:1; | ||
| 87 | #endif				/* Little endian. */ | ||
| 88 | } ieee; | ||
| 89 | |||
| 90 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 91 | struct | ||
| 92 | { | ||
| 93 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 94 | 	unsigned int negative:1; | ||
| 95 | 	unsigned int exponent:11; | ||
| 96 | 	unsigned int quiet_nan:1; | ||
| 97 | 	/* Together these comprise the mantissa. */ | ||
| 98 | 	unsigned int mantissa0:19; | ||
| 99 | 	unsigned int mantissa1:32; | ||
| 100 | #else | ||
| 101 | 	/* Together these comprise the mantissa. */ | ||
| 102 | 	unsigned int mantissa1:32; | ||
| 103 | 	unsigned int mantissa0:19; | ||
| 104 | 	unsigned int quiet_nan:1; | ||
| 105 | 	unsigned int exponent:11; | ||
| 106 | 	unsigned int negative:1; | ||
| 107 | #endif | ||
| 108 | } ieee_nan; | ||
| 109 | }; | ||
| 110 | |||
| 111 | #define IEEE754_DOUBLE_BIAS	0x3ff /* Added to exponent. */ | ||
| 112 | |||
| 113 | |||
| 114 | union ieee854_long_double | ||
| 115 | { | ||
| 116 | long double d; | ||
| 117 | |||
| 118 | /* This is the IEEE 854 quad-precision format. */ | ||
| 119 | struct | ||
| 120 | { | ||
| 121 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 122 | 	unsigned int negative:1; | ||
| 123 | 	unsigned int exponent:15; | ||
| 124 | 	/* Together these comprise the mantissa. */ | ||
| 125 | 	unsigned int mantissa0:16; | ||
| 126 | 	unsigned int mantissa1:32; | ||
| 127 | 	unsigned int mantissa2:32; | ||
| 128 | 	unsigned int mantissa3:32; | ||
| 129 | #endif				/* Big endian. */ | ||
| 130 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 131 | 	/* Together these comprise the mantissa. */ | ||
| 132 | 	unsigned int mantissa3:32; | ||
| 133 | 	unsigned int mantissa2:32; | ||
| 134 | 	unsigned int mantissa1:32; | ||
| 135 | 	unsigned int mantissa0:16; | ||
| 136 | 	unsigned int exponent:15; | ||
| 137 | 	unsigned int negative:1; | ||
| 138 | #endif				/* Little endian. */ | ||
| 139 | } ieee; | ||
| 140 | |||
| 141 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 142 | struct | ||
| 143 | { | ||
| 144 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 145 | 	unsigned int negative:1; | ||
| 146 | 	unsigned int exponent:15; | ||
| 147 | 	unsigned int quiet_nan:1; | ||
| 148 | 	/* Together these comprise the mantissa. */ | ||
| 149 | 	unsigned int mantissa0:15; | ||
| 150 | 	unsigned int mantissa1:32; | ||
| 151 | 	unsigned int mantissa2:32; | ||
| 152 | 	unsigned int mantissa3:32; | ||
| 153 | #else | ||
| 154 | 	/* Together these comprise the mantissa. */ | ||
| 155 | 	unsigned int mantissa3:32; | ||
| 156 | 	unsigned int mantissa2:32; | ||
| 157 | 	unsigned int mantissa1:32; | ||
| 158 | 	unsigned int mantissa0:15; | ||
| 159 | 	unsigned int quiet_nan:1; | ||
| 160 | 	unsigned int exponent:15; | ||
| 161 | 	unsigned int negative:1; | ||
| 162 | #endif | ||
| 163 | } ieee_nan; | ||
| 164 | }; | ||
| 165 | |||
| 166 | #define IEEE854_LONG_DOUBLE_BIAS 0x3fff /* Added to exponent. */ | ||
| 167 | |||
| 168 | __END_DECLS | ||
| 169 | |||
| 170 | #endif /* ieee754.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/riscv64-linux-gnu/sys/asm.h deleted-66| ... | @@ -1,66 +0,0 @@ | ||
| 1 | /* Miscellaneous macros. | ||
| 2 | Copyright (C) 2000-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_ASM_H | ||
| 20 | #define _SYS_ASM_H | ||
| 21 | |||
| 22 | /* Macros to handle different pointer/register sizes for 32/64-bit code. */ | ||
| 23 | #if __riscv_xlen == 64 | ||
| 24 | # define PTRLOG 3 | ||
| 25 | # define SZREG 8 | ||
| 26 | # define REG_S sd | ||
| 27 | # define REG_L ld | ||
| 28 | #elif __riscv_xlen == 32 | ||
| 29 | # define PTRLOG 2 | ||
| 30 | # define SZREG 4 | ||
| 31 | # define REG_S sw | ||
| 32 | # define REG_L lw | ||
| 33 | #else | ||
| 34 | # error __riscv_xlen must equal 32 or 64 | ||
| 35 | #endif | ||
| 36 | |||
| 37 | #if !defined __riscv_float_abi_soft | ||
| 38 | /* For ABI uniformity, reserve 8 bytes for floats, even if double-precision | ||
| 39 | floating-point is not supported in hardware. */ | ||
| 40 | # if defined __riscv_float_abi_double | ||
| 41 | # define FREG_L fld | ||
| 42 | # define FREG_S fsd | ||
| 43 | # define SZFREG 8 | ||
| 44 | # else | ||
| 45 | # error unsupported FLEN | ||
| 46 | # endif | ||
| 47 | #endif | ||
| 48 | |||
| 49 | /* Declare leaf routine. */ | ||
| 50 | #define	LEAF(symbol)				\ | ||
| 51 | 		.globl	symbol;			\ | ||
| 52 | 		.align	2;			\ | ||
| 53 | 		.type	symbol,@function;	\ | ||
| 54 | symbol:						\ | ||
| 55 | 		cfi_startproc; | ||
| 56 | |||
| 57 | /* Mark end of function. */ | ||
| 58 | #undef END | ||
| 59 | #define END(function)				\ | ||
| 60 | 		cfi_endproc;			\ | ||
| 61 | 		.size	function,.-function | ||
| 62 | |||
| 63 | /* Stack alignment. */ | ||
| 64 | #define ALMASK	~15 | ||
| 65 | |||
| 66 | #endif /* sys/asm.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/riscv64-linux-gnu/sys/cachectl.h deleted-32| ... | @@ -1,32 +0,0 @@ | ||
| 1 | /* RISC-V instruction cache flushing interface | ||
| 2 | Copyright (C) 2017-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library. If not, see | ||
| 18 | <https://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifndef _SYS_CACHECTL_H | ||
| 21 | #define _SYS_CACHECTL_H 1 | ||
| 22 | |||
| 23 | #include <features.h> | ||
| 24 | |||
| 25 | __BEGIN_DECLS | ||
| 26 | |||
| 27 | extern int __riscv_flush_icache (void *__start, void *__end, | ||
| 28 | 				 unsigned long int __flags); | ||
| 29 | |||
| 30 | __END_DECLS | ||
| 31 | |||
| 32 | #endif /* sys/cachectl.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/riscv64-linux-gnu/sys/ucontext.h deleted-110| ... | @@ -1,110 +0,0 @@ | ||
| 1 | /* struct ucontext definition, RISC-V version. | ||
| 2 | Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* Don't rely on this, the interface is currently messed up and may need to | ||
| 20 | be broken to be fixed. */ | ||
| 21 | #ifndef _SYS_UCONTEXT_H | ||
| 22 | #define _SYS_UCONTEXT_H	1 | ||
| 23 | |||
| 24 | #include <features.h> | ||
| 25 | |||
| 26 | #include <bits/types/sigset_t.h> | ||
| 27 | #include <bits/types/stack_t.h> | ||
| 28 | |||
| 29 | typedef unsigned long int __riscv_mc_gp_state[32]; | ||
| 30 | |||
| 31 | #ifdef __USE_MISC | ||
| 32 | # define NGREG	32 | ||
| 33 | |||
| 34 | # define REG_PC 0 | ||
| 35 | # define REG_RA 1 | ||
| 36 | # define REG_SP 2 | ||
| 37 | # define REG_TP 4 | ||
| 38 | # define REG_S0 8 | ||
| 39 | # define REG_S1 9 | ||
| 40 | # define REG_A0 10 | ||
| 41 | # define REG_S2 18 | ||
| 42 | # define REG_NARGS 8 | ||
| 43 | |||
| 44 | typedef unsigned long int greg_t; | ||
| 45 | |||
| 46 | /* Container for all general registers. */ | ||
| 47 | typedef __riscv_mc_gp_state gregset_t; | ||
| 48 | |||
| 49 | /* Container for floating-point state. */ | ||
| 50 | typedef union __riscv_mc_fp_state fpregset_t; | ||
| 51 | #endif | ||
| 52 | |||
| 53 | struct __riscv_mc_f_ext_state | ||
| 54 | { | ||
| 55 | unsigned int __f[32]; | ||
| 56 | unsigned int __fcsr; | ||
| 57 | }; | ||
| 58 | |||
| 59 | struct __riscv_mc_d_ext_state | ||
| 60 | { | ||
| 61 | unsigned long long int __f[32]; | ||
| 62 | unsigned int __fcsr; | ||
| 63 | }; | ||
| 64 | |||
| 65 | struct __riscv_mc_q_ext_state | ||
| 66 | { | ||
| 67 | unsigned long long int __f[64] __attribute__ ((__aligned__ (16))); | ||
| 68 | unsigned int __fcsr; | ||
| 69 | /* Reserved for expansion of sigcontext structure. Currently zeroed | ||
| 70 | upon signal, and must be zero upon sigreturn. */ | ||
| 71 | unsigned int __glibc_reserved[3]; | ||
| 72 | }; | ||
| 73 | |||
| 74 | union __riscv_mc_fp_state | ||
| 75 | { | ||
| 76 | struct __riscv_mc_f_ext_state __f; | ||
| 77 | struct __riscv_mc_d_ext_state __d; | ||
| 78 | struct __riscv_mc_q_ext_state __q; | ||
| 79 | }; | ||
| 80 | |||
| 81 | typedef struct mcontext_t | ||
| 82 | { | ||
| 83 | __riscv_mc_gp_state __gregs; | ||
| 84 | union __riscv_mc_fp_state __fpregs; | ||
| 85 | } mcontext_t; | ||
| 86 | |||
| 87 | /* Userlevel context. */ | ||
| 88 | typedef struct ucontext_t | ||
| 89 | { | ||
| 90 | unsigned long int __uc_flags; | ||
| 91 | struct ucontext_t *uc_link; | ||
| 92 | stack_t uc_stack; | ||
| 93 | sigset_t uc_sigmask; | ||
| 94 | /* There's some padding here to allow sigset_t to be expanded in the | ||
| 95 | future. Though this is unlikely, other architectures put uc_sigmask | ||
| 96 | at the end of this structure and explicitly state it can be | ||
| 97 | expanded, so we didn't want to box ourselves in here. */ | ||
| 98 | char __glibc_reserved[1024 / 8 - sizeof (sigset_t)]; | ||
| 99 | /* We can't put uc_sigmask at the end of this structure because we need | ||
| 100 | to be able to expand sigcontext in the future. For example, the | ||
| 101 | vector ISA extension will almost certainly add ISA state. We want | ||
| 102 | to ensure all user-visible ISA state can be saved and restored via a | ||
| 103 | ucontext, so we're putting this at the end in order to allow for | ||
| 104 | infinite extensibility. Since we know this will be extended and we | ||
| 105 | assume sigset_t won't be extended an extreme amount, we're | ||
| 106 | prioritizing this. */ | ||
| 107 | mcontext_t uc_mcontext; | ||
| 108 | } ucontext_t; | ||
| 109 | |||
| 110 | #endif /* sys/ucontext.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/riscv64-linux-gnu/sys/user.h deleted-23| ... | @@ -1,23 +0,0 @@ | ||
| 1 | /* Copyright (C) 2001-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_USER_H | ||
| 19 | #define _SYS_USER_H	1 | ||
| 20 | |||
| 21 | |||
| 22 | |||
| 23 | #endif	/* _SYS_USER_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/sparc-linux-gnu/gnu/lib-names-64.h created+27| ... | @@ -0,0 +1,27 @@ | ||
| 1 | /* This file is automatically generated. */ | ||
| 2 | #ifndef __GNU_LIB_NAMES_H | ||
| 3 | # error "Never use <gnu/lib-names-64.h> directly; include <gnu/lib-names.h> instead." | ||
| 4 | #endif | ||
| 5 | |||
| 6 | #define LD_LINUX_SO "ld-linux.so.2" | ||
| 7 | #define LD_SO "ld-linux.so.2" | ||
| 8 | #define LIBANL_SO "libanl.so.1" | ||
| 9 | #define LIBBROKENLOCALE_SO "libBrokenLocale.so.1" | ||
| 10 | #define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0" | ||
| 11 | #define LIBC_SO "libc.so.6" | ||
| 12 | #define LIBDL_SO "libdl.so.2" | ||
| 13 | #define LIBGCC_S_SO "libgcc_s.so.1" | ||
| 14 | #define LIBMVEC_SO "libmvec.so.1" | ||
| 15 | #define LIBM_SO "libm.so.6" | ||
| 16 | #define LIBNSL_SO "libnsl.so.1" | ||
| 17 | #define LIBNSS_COMPAT_SO "libnss_compat.so.2" | ||
| 18 | #define LIBNSS_DB_SO "libnss_db.so.2" | ||
| 19 | #define LIBNSS_DNS_SO "libnss_dns.so.2" | ||
| 20 | #define LIBNSS_FILES_SO "libnss_files.so.2" | ||
| 21 | #define LIBNSS_HESIOD_SO "libnss_hesiod.so.2" | ||
| 22 | #define LIBNSS_LDAP_SO "libnss_ldap.so.2" | ||
| 23 | #define LIBPTHREAD_SO "libpthread.so.0" | ||
| 24 | #define LIBRESOLV_SO "libresolv.so.2" | ||
| 25 | #define LIBRT_SO "librt.so.1" | ||
| 26 | #define LIBTHREAD_DB_SO "libthread_db.so.1" | ||
| 27 | #define LIBUTIL_SO "libutil.so.1" | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/a.out.h deleted-174| ... | @@ -1,174 +0,0 @@ | ||
| 1 | #ifndef __A_OUT_GNU_H__ | ||
| 2 | #define __A_OUT_GNU_H__ | ||
| 3 | |||
| 4 | #include <bits/a.out.h> | ||
| 5 | |||
| 6 | #define __GNU_EXEC_MACROS__ | ||
| 7 | |||
| 8 | struct exec | ||
| 9 | { | ||
| 10 | unsigned char a_dynamic:1;	/* A __DYNAMIC is in this image. */ | ||
| 11 | unsigned char a_toolversion:7; | ||
| 12 | unsigned char a_machtype; | ||
| 13 | unsigned short a_info; | ||
| 14 | unsigned int a_text;		/* Length of text, in bytes. */ | ||
| 15 | unsigned int a_data;		/* Length of data, in bytes. */ | ||
| 16 | unsigned int a_bss;		/* Length of bss, in bytes. */ | ||
| 17 | unsigned int a_syms;		/* Length of symbol table, in bytes. */ | ||
| 18 | unsigned int a_entry;		/* Where program begins. */ | ||
| 19 | unsigned int a_trsize; | ||
| 20 | unsigned int a_drsize; | ||
| 21 | }; | ||
| 22 | |||
| 23 | enum machine_type | ||
| 24 | { | ||
| 25 | M_OLDSUN2 = 0, | ||
| 26 | M_68010 = 1, | ||
| 27 | M_68020 = 2, | ||
| 28 | M_SPARC = 3, | ||
| 29 | M_386 = 100, | ||
| 30 | M_MIPS1 = 151, | ||
| 31 | M_MIPS2 = 152 | ||
| 32 | }; | ||
| 33 | |||
| 34 | #define N_MAGIC(exec)	((exec).a_info & 0xffff) | ||
| 35 | #define N_MACHTYPE(exec) ((enum machine_type)(((exec).a_info >> 16) & 0xff)) | ||
| 36 | #define N_FLAGS(exec)	(((exec).a_info >> 24) & 0xff) | ||
| 37 | #define N_SET_INFO(exec, magic, type, flags) \ | ||
| 38 | ((exec).a_info = ((magic) & 0xffff)					\ | ||
| 39 | | (((int)(type) & 0xff) << 16)					\ | ||
| 40 | | (((flags) & 0xff) << 24)) | ||
| 41 | #define N_SET_MAGIC(exec, magic) \ | ||
| 42 | ((exec).a_info = ((exec).a_info & 0xffff0000) | ((magic) & 0xffff)) | ||
| 43 | #define N_SET_MACHTYPE(exec, machtype) \ | ||
| 44 | ((exec).a_info =							\ | ||
| 45 | ((exec).a_info&0xff00ffff) | ((((int)(machtype))&0xff) << 16)) | ||
| 46 | #define N_SET_FLAGS(exec, flags) \ | ||
| 47 | ((exec).a_info =							\ | ||
| 48 | ((exec).a_info&0x00ffffff) | (((flags) & 0xff) << 24)) | ||
| 49 | |||
| 50 | /* Code indicating object file or impure executable. */ | ||
| 51 | #define OMAGIC 0407 | ||
| 52 | /* Code indicating pure executable. */ | ||
| 53 | #define NMAGIC 0410 | ||
| 54 | /* Code indicating demand-paged executable. */ | ||
| 55 | #define ZMAGIC 0413 | ||
| 56 | /* This indicates a demand-paged executable with the header in the text. | ||
| 57 | The first page is unmapped to help trap NULL pointer references. */ | ||
| 58 | #define QMAGIC 0314 | ||
| 59 | /* Code indicating core file. */ | ||
| 60 | #define CMAGIC 0421 | ||
| 61 | |||
| 62 | #define N_TRSIZE(a)	((a).a_trsize) | ||
| 63 | #define N_DRSIZE(a)	((a).a_drsize) | ||
| 64 | #define N_SYMSIZE(a)	((a).a_syms) | ||
| 65 | #define N_BADMAG(x) \ | ||
| 66 | (N_MAGIC(x) != OMAGIC	&& N_MAGIC(x) != NMAGIC				\ | ||
| 67 | && N_MAGIC(x) != ZMAGIC && N_MAGIC(x) != QMAGIC) | ||
| 68 | #define _N_HDROFF(x)	(1024 - sizeof (struct exec)) | ||
| 69 | #define N_TXTOFF(x) \ | ||
| 70 | (N_MAGIC(x) == ZMAGIC ? 0 : sizeof (struct exec)) | ||
| 71 | #define N_DATOFF(x)	(N_TXTOFF(x) + (x).a_text) | ||
| 72 | #define N_TRELOFF(x)	(N_DATOFF(x) + (x).a_data) | ||
| 73 | #define N_DRELOFF(x)	(N_TRELOFF(x) + N_TRSIZE(x)) | ||
| 74 | #define N_SYMOFF(x) \ | ||
| 75 | (N_TXTOFF(x) + (x).a_text + (x).a_data + (x).a_trsize + (x).a_drsize) | ||
| 76 | #define N_STROFF(x)	(N_SYMOFF(x) + N_SYMSIZE(x)) | ||
| 77 | |||
| 78 | #define SPARC_PGSIZE	0x2000 | ||
| 79 | |||
| 80 | /* Address of text segment in memory after it is loaded. */ | ||
| 81 | #define N_TXTADDR(x) \ | ||
| 82 | (unsigned long)(((N_MAGIC(x) == ZMAGIC) && ((x).a_entry < SPARC_PGSIZE)) \ | ||
| 83 | 		 ? 0 : SPARC_PGSIZE) | ||
| 84 | |||
| 85 | /* Address of data segment in memory after it is loaded. */ | ||
| 86 | #define SEGMENT_SIZE	SPARC_PGSIZE | ||
| 87 | |||
| 88 | #define _N_SEGMENT_ROUND(x) (((x) + SEGMENT_SIZE - 1) & ~(SEGMENT_SIZE - 1)) | ||
| 89 | #define _N_TXTENDADDR(x) (N_TXTADDR(x)+(x).a_text) | ||
| 90 | |||
| 91 | #define N_DATADDR(x) \ | ||
| 92 | (N_MAGIC(x)==OMAGIC							\ | ||
| 93 | ? (N_TXTADDR(x) + (x).a_text)					\ | ||
| 94 | : (unsigned long)(_N_SEGMENT_ROUND (_N_TXTENDADDR(x)))) | ||
| 95 | #define N_BSSADDR(x) (N_DATADDR(x) + (x).a_data) | ||
| 96 | |||
| 97 | #if !defined (N_NLIST_DECLARED) | ||
| 98 | struct nlist | ||
| 99 | { | ||
| 100 | union | ||
| 101 | { | ||
| 102 | char *n_name; | ||
| 103 | struct nlist *n_next; | ||
| 104 | long n_strx; | ||
| 105 | } n_un; | ||
| 106 | unsigned char n_type; | ||
| 107 | char n_other; | ||
| 108 | short n_desc; | ||
| 109 | unsigned long n_value; | ||
| 110 | }; | ||
| 111 | #endif /* no N_NLIST_DECLARED. */ | ||
| 112 | |||
| 113 | #define N_UNDF	0 | ||
| 114 | #define N_ABS	2 | ||
| 115 | #define N_TEXT	4 | ||
| 116 | #define N_DATA	6 | ||
| 117 | #define N_BSS	8 | ||
| 118 | #define N_FN	15 | ||
| 119 | #define N_EXT	1 | ||
| 120 | #define N_TYPE	036 | ||
| 121 | #define N_STAB	0340 | ||
| 122 | #define N_INDR	0xa | ||
| 123 | #define	N_SETA	0x14	/* Absolute set element symbol. */ | ||
| 124 | #define	N_SETT	0x16	/* Text set element symbol. */ | ||
| 125 | #define	N_SETD	0x18	/* Data set element symbol. */ | ||
| 126 | #define	N_SETB	0x1A	/* Bss set element symbol. */ | ||
| 127 | #define N_SETV	0x1C	/* Pointer to set vector in data area. */ | ||
| 128 | |||
| 129 | #if !defined (N_RELOCATION_INFO_DECLARED) | ||
| 130 | enum reloc_type | ||
| 131 | { | ||
| 132 | RELOC_8, | ||
| 133 | RELOC_16, | ||
| 134 | RELOC_32, | ||
| 135 | RELOC_DISP8, | ||
| 136 | RELOC_DISP16, | ||
| 137 | RELOC_DISP32, | ||
| 138 | RELOC_WDISP30, | ||
| 139 | RELOC_WDISP22, | ||
| 140 | RELOC_HI22, | ||
| 141 | RELOC_22, | ||
| 142 | RELOC_13, | ||
| 143 | RELOC_LO10, | ||
| 144 | RELOC_SFA_BASE, | ||
| 145 | RELOC_SFA_OFF13, | ||
| 146 | RELOC_BASE10, | ||
| 147 | RELOC_BASE13, | ||
| 148 | RELOC_BASE22, | ||
| 149 | RELOC_PC10, | ||
| 150 | RELOC_PC22, | ||
| 151 | RELOC_JMP_TBL, | ||
| 152 | RELOC_SEGOFF16, | ||
| 153 | RELOC_GLOB_DAT, | ||
| 154 | RELOC_JMP_SLOT, | ||
| 155 | RELOC_RELATIVE | ||
| 156 | }; | ||
| 157 | |||
| 158 | /* This structure describes a single relocation to be performed. | ||
| 159 | The text-relocation section of the file is a vector of these structures, | ||
| 160 | all of which apply to the text section. | ||
| 161 | Likewise, the data-relocation section applies to the data section. */ | ||
| 162 | |||
| 163 | struct relocation_info | ||
| 164 | { | ||
| 165 | unsigned int r_address; | ||
| 166 | unsigned int r_index:24; | ||
| 167 | unsigned int r_extern:1; | ||
| 168 | int r_pad:2; | ||
| 169 | enum reloc_type r_type:5; | ||
| 170 | int r_addend; | ||
| 171 | }; | ||
| 172 | #endif /* no N_RELOCATION_INFO_DECLARED. */ | ||
| 173 | |||
| 174 | #endif /* __A_OUT_GNU_H__ */ | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/bits/a.out.h deleted-13| ... | @@ -1,13 +0,0 @@ | ||
| 1 | #ifndef __A_OUT_GNU_H__ | ||
| 2 | # error "Never use <bits/a.out.h> directly; include <a.out.h> instead." | ||
| 3 | #endif | ||
| 4 | |||
| 5 | #include <bits/wordsize.h> | ||
| 6 | |||
| 7 | #if __WORDSIZE == 64 | ||
| 8 | |||
| 9 | /* Signal to users of this header that this architecture really doesn't | ||
| 10 | support a.out binary format. */ | ||
| 11 | #define __NO_A_OUT_SUPPORT 1 | ||
| 12 | |||
| 13 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/bits/endianness.h deleted-16| ... | @@ -1,16 +0,0 @@ | ||
| 1 | #ifndef _BITS_ENDIANNESS_H | ||
| 2 | #define _BITS_ENDIANNESS_H 1 | ||
| 3 | |||
| 4 | #ifndef _BITS_ENDIAN_H | ||
| 5 | # error "Never use <bits/endianness.h> directly; include <endian.h> instead." | ||
| 6 | #endif | ||
| 7 | |||
| 8 | /* Sparc is big-endian, but v9 supports endian conversion on loads/stores | ||
| 9 | and GCC supports such a mode. Be prepared. */ | ||
| 10 | #ifdef __LITTLE_ENDIAN__ | ||
| 11 | # define __BYTE_ORDER __LITTLE_ENDIAN | ||
| 12 | #else | ||
| 13 | # define __BYTE_ORDER __BIG_ENDIAN | ||
| 14 | #endif | ||
| 15 | |||
| 16 | #endif /* bits/endianness.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/bits/environments.h deleted-96| ... | @@ -1,96 +0,0 @@ | ||
| 1 | /* Copyright (C) 1999-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _UNISTD_H | ||
| 19 | # error "Never include this file directly. Use <unistd.h> instead" | ||
| 20 | #endif | ||
| 21 | |||
| 22 | #include <bits/wordsize.h> | ||
| 23 | |||
| 24 | /* This header should define the following symbols under the described | ||
| 25 | situations. A value `1' means that the model is always supported, | ||
| 26 | `-1' means it is never supported. Undefined means it cannot be | ||
| 27 | statically decided. | ||
| 28 | |||
| 29 | _POSIX_V7_ILP32_OFF32 32bit int, long, pointers, and off_t type | ||
| 30 | _POSIX_V7_ILP32_OFFBIG 32bit int, long, and pointers and larger off_t type | ||
| 31 | |||
| 32 | _POSIX_V7_LP64_OFF32	 64bit long and pointers and 32bit off_t type | ||
| 33 | _POSIX_V7_LPBIG_OFFBIG 64bit long and pointers and large off_t type | ||
| 34 | |||
| 35 | The macros _POSIX_V6_ILP32_OFF32, _POSIX_V6_ILP32_OFFBIG, | ||
| 36 | _POSIX_V6_LP64_OFF32, _POSIX_V6_LPBIG_OFFBIG, _XBS5_ILP32_OFF32, | ||
| 37 | _XBS5_ILP32_OFFBIG, _XBS5_LP64_OFF32, and _XBS5_LPBIG_OFFBIG were | ||
| 38 | used in previous versions of the Unix standard and are available | ||
| 39 | only for compatibility. | ||
| 40 | */ | ||
| 41 | |||
| 42 | #if __WORDSIZE == 64 | ||
| 43 | |||
| 44 | /* Environments with 32-bit wide pointers are optionally provided. | ||
| 45 | Therefore following macros aren't defined: | ||
| 46 | # undef _POSIX_V7_ILP32_OFF32 | ||
| 47 | # undef _POSIX_V7_ILP32_OFFBIG | ||
| 48 | # undef _POSIX_V6_ILP32_OFF32 | ||
| 49 | # undef _POSIX_V6_ILP32_OFFBIG | ||
| 50 | # undef _XBS5_ILP32_OFF32 | ||
| 51 | # undef _XBS5_ILP32_OFFBIG | ||
| 52 | and users need to check at runtime. */ | ||
| 53 | |||
| 54 | /* We also have no use (for now) for an environment with bigger pointers | ||
| 55 | and offsets. */ | ||
| 56 | # define _POSIX_V7_LPBIG_OFFBIG	-1 | ||
| 57 | # define _POSIX_V6_LPBIG_OFFBIG	-1 | ||
| 58 | # define _XBS5_LPBIG_OFFBIG	-1 | ||
| 59 | |||
| 60 | /* By default we have 64-bit wide `long int', pointers and `off_t'. */ | ||
| 61 | # define _POSIX_V7_LP64_OFF64	1 | ||
| 62 | # define _POSIX_V6_LP64_OFF64	1 | ||
| 63 | # define _XBS5_LP64_OFF64	1 | ||
| 64 | |||
| 65 | #else /* __WORDSIZE == 32 */ | ||
| 66 | |||
| 67 | /* By default we have 32-bit wide `int', `long int', pointers and `off_t' | ||
| 68 | and all platforms support LFS. */ | ||
| 69 | # define _POSIX_V7_ILP32_OFF32	1 | ||
| 70 | # define _POSIX_V7_ILP32_OFFBIG	1 | ||
| 71 | # define _POSIX_V6_ILP32_OFF32	1 | ||
| 72 | # define _POSIX_V6_ILP32_OFFBIG	1 | ||
| 73 | # define _XBS5_ILP32_OFF32	1 | ||
| 74 | # define _XBS5_ILP32_OFFBIG	1 | ||
| 75 | |||
| 76 | /* We optionally provide an environment with the above size but an 64-bit | ||
| 77 | side `off_t'. Therefore we don't define _POSIX_V7_ILP32_OFFBIG. */ | ||
| 78 | |||
| 79 | /* Environments with 64-bit wide pointers can be provided, | ||
| 80 | so these macros aren't defined: | ||
| 81 | # undef _POSIX_V7_LP64_OFF64 | ||
| 82 | # undef _POSIX_V7_LPBIG_OFFBIG | ||
| 83 | # undef _POSIX_V6_LP64_OFF64 | ||
| 84 | # undef _POSIX_V6_LPBIG_OFFBIG | ||
| 85 | # undef _XBS5_LP64_OFF64 | ||
| 86 | # undef _XBS5_LPBIG_OFFBIG | ||
| 87 | and sysconf tests for it at runtime. */ | ||
| 88 | |||
| 89 | #endif /* __WORDSIZE == 32 */ | ||
| 90 | |||
| 91 | #define __ILP32_OFF32_CFLAGS	"-m32" | ||
| 92 | #define __ILP32_OFFBIG_CFLAGS	"-m32 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" | ||
| 93 | #define __ILP32_OFF32_LDFLAGS	"-m32" | ||
| 94 | #define __ILP32_OFFBIG_LDFLAGS	"-m32" | ||
| 95 | #define __LP64_OFF64_CFLAGS	"-m64" | ||
| 96 | #define __LP64_OFF64_LDFLAGS	"-m64" | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/bits/epoll.h deleted-27| ... | @@ -1,27 +0,0 @@ | ||
| 1 | /* Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_SYS_EPOLL_H | ||
| 19 | # error "Never use <bits/epoll.h> directly; include <sys/epoll.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Flags to be passed to epoll_create1. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | EPOLL_CLOEXEC = 0x400000 | ||
| 26 | #define EPOLL_CLOEXEC EPOLL_CLOEXEC | ||
| 27 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/bits/errno.h deleted-53| ... | @@ -1,53 +0,0 @@ | ||
| 1 | /* Error constants. Linux/Sparc specific version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_ERRNO_H | ||
| 20 | #define _BITS_ERRNO_H 1 | ||
| 21 | |||
| 22 | #if !defined _ERRNO_H | ||
| 23 | # error "Never include <bits/errno.h> directly; use <errno.h> instead." | ||
| 24 | #endif | ||
| 25 | |||
| 26 | # include <linux/errno.h> | ||
| 27 | |||
| 28 | /* Older Linux headers do not define these constants. */ | ||
| 29 | # ifndef ENOTSUP | ||
| 30 | # define ENOTSUP		EOPNOTSUPP | ||
| 31 | # endif | ||
| 32 | |||
| 33 | # ifndef ECANCELED | ||
| 34 | # define ECANCELED		127 | ||
| 35 | # endif | ||
| 36 | |||
| 37 | # ifndef EOWNERDEAD | ||
| 38 | # define EOWNERDEAD		132 | ||
| 39 | # endif | ||
| 40 | |||
| 41 | # ifndef ENOTRECOVERABLE | ||
| 42 | # define ENOTRECOVERABLE	133 | ||
| 43 | # endif | ||
| 44 | |||
| 45 | # ifndef ERFKILL | ||
| 46 | # define ERFKILL		134 | ||
| 47 | # endif | ||
| 48 | |||
| 49 | # ifndef EHWPOISON | ||
| 50 | # define EHWPOISON		135 | ||
| 51 | # endif | ||
| 52 | |||
| 53 | #endif /* bits/errno.h. */ | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/bits/eventfd.h deleted-31| ... | @@ -1,31 +0,0 @@ | ||
| 1 | /* Copyright (C) 2007-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_SYS_EVENTFD_H | ||
| 19 | # error "Never use <bits/eventfd.h> directly; include <sys/eventfd.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Flags for eventfd. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | EFD_SEMAPHORE = 0x000001, | ||
| 26 | #define EFD_SEMAPHORE EFD_SEMAPHORE | ||
| 27 | EFD_CLOEXEC = 0x400000, | ||
| 28 | #define EFD_CLOEXEC EFD_CLOEXEC | ||
| 29 | EFD_NONBLOCK = 0x004000 | ||
| 30 | #define EFD_NONBLOCK EFD_NONBLOCK | ||
| 31 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/bits/fcntl.h deleted-101| ... | @@ -1,101 +0,0 @@ | ||
| 1 | /* O_*, F_*, FD_* bit values for Linux/SPARC. | ||
| 2 | Copyright (C) 1995-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _FCNTL_H | ||
| 20 | # error "Never use <bits/fcntl.h> directly; include <fcntl.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <bits/wordsize.h> | ||
| 24 | |||
| 25 | #define O_APPEND	0x0008 | ||
| 26 | #define O_ASYNC		0x0040 | ||
| 27 | #define O_CREAT		0x0200	/* not fcntl */ | ||
| 28 | #define O_TRUNC		0x0400	/* not fcntl */ | ||
| 29 | #define O_EXCL		0x0800	/* not fcntl */ | ||
| 30 | #define O_SYNC		0x802000 | ||
| 31 | #define O_NONBLOCK	0x4000 | ||
| 32 | #define O_NDELAY	(0x0004 | O_NONBLOCK) | ||
| 33 | #define O_NOCTTY 0x8000 /* not fcntl */ | ||
| 34 | |||
| 35 | #define __O_DIRECTORY	0x10000 /* must be a directory */ | ||
| 36 | #define __O_NOFOLLOW	0x20000 /* don't follow links */ | ||
| 37 | #define __O_CLOEXEC	0x400000 /* Set close_on_exit. */ | ||
| 38 | |||
| 39 | #define __O_DIRECT	0x100000 /* direct disk access hint */ | ||
| 40 | #define __O_NOATIME	0x200000 /* Do not set atime. */ | ||
| 41 | #define __O_PATH	0x1000000 /* Resolve pathname but do not open file. */ | ||
| 42 | #define __O_TMPFILE	0x2010000 /* Atomically create nameless file. */ | ||
| 43 | |||
| 44 | #if __WORDSIZE == 64 | ||
| 45 | # define __O_LARGEFILE	0 | ||
| 46 | #else | ||
| 47 | # define __O_LARGEFILE	0x40000 | ||
| 48 | #endif | ||
| 49 | |||
| 50 | #define __O_DSYNC	0x2000	/* Synchronize data. */ | ||
| 51 | |||
| 52 | |||
| 53 | #define __F_GETOWN	5	/* Get owner (process receiving SIGIO). */ | ||
| 54 | #define __F_SETOWN	6	/* Set owner (process receiving SIGIO). */ | ||
| 55 | |||
| 56 | #ifndef __USE_FILE_OFFSET64 | ||
| 57 | # define F_GETLK	7	/* Get record locking info. */ | ||
| 58 | # define F_SETLK	8	/* Set record locking info (non-blocking). */ | ||
| 59 | # define F_SETLKW	9	/* Set record locking info (blocking). */ | ||
| 60 | #endif | ||
| 61 | |||
| 62 | #if __WORDSIZE == 64 | ||
| 63 | # define F_GETLK64	7	/* Get record locking info. */ | ||
| 64 | # define F_SETLK64	8	/* Set record locking info (non-blocking). */ | ||
| 65 | # define F_SETLKW64	9	/* Set record locking info (blocking). */ | ||
| 66 | #endif | ||
| 67 | |||
| 68 | /* For posix fcntl() and `l_type' field of a `struct flock' for lockf(). */ | ||
| 69 | #define F_RDLCK		1	/* Read lock. */ | ||
| 70 | #define F_WRLCK		2	/* Write lock. */ | ||
| 71 | #define F_UNLCK		3	/* Remove lock. */ | ||
| 72 | |||
| 73 | struct flock | ||
| 74 | { | ||
| 75 | short int l_type;	/* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK. */ | ||
| 76 | short int l_whence;	/* Where `l_start' is relative to (like `lseek'). */ | ||
| 77 | #ifndef __USE_FILE_OFFSET64 | ||
| 78 | __off_t l_start;	/* Offset where the lock begins. */ | ||
| 79 | __off_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 80 | #else | ||
| 81 | __off64_t l_start;	/* Offset where the lock begins. */ | ||
| 82 | __off64_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 83 | #endif | ||
| 84 | __pid_t l_pid;	/* Process holding the lock. */ | ||
| 85 | short int __glibc_reserved; | ||
| 86 | }; | ||
| 87 | |||
| 88 | #ifdef __USE_LARGEFILE64 | ||
| 89 | struct flock64 | ||
| 90 | { | ||
| 91 | short int l_type;	/* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK. */ | ||
| 92 | short int l_whence;	/* Where `l_start' is relative to (like `lseek'). */ | ||
| 93 | __off64_t l_start;	/* Offset where the lock begins. */ | ||
| 94 | __off64_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 95 | __pid_t l_pid;	/* Process holding the lock. */ | ||
| 96 | short int __glibc_reserved; | ||
| 97 | }; | ||
| 98 | #endif | ||
| 99 | |||
| 100 | /* Include generic Linux declarations. */ | ||
| 101 | #include <bits/fcntl-linux.h> | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/bits/fenv.h deleted-92| ... | @@ -1,92 +0,0 @@ | ||
| 1 | /* Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _FENV_H | ||
| 19 | # error "Never use <bits/fenv.h> directly; include <fenv.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | #include <bits/wordsize.h> | ||
| 23 | |||
| 24 | |||
| 25 | /* Define bits representing the exception. We use the bit positions | ||
| 26 | of the appropriate accrued exception bits from the FSR. */ | ||
| 27 | enum | ||
| 28 | { | ||
| 29 | FE_INVALID = | ||
| 30 | #define FE_INVALID	(1 << 9) | ||
| 31 | FE_INVALID, | ||
| 32 | FE_OVERFLOW = | ||
| 33 | #define FE_OVERFLOW	(1 << 8) | ||
| 34 | FE_OVERFLOW, | ||
| 35 | FE_UNDERFLOW = | ||
| 36 | #define FE_UNDERFLOW	(1 << 7) | ||
| 37 | FE_UNDERFLOW, | ||
| 38 | FE_DIVBYZERO = | ||
| 39 | #define FE_DIVBYZERO	(1 << 6) | ||
| 40 | FE_DIVBYZERO, | ||
| 41 | FE_INEXACT = | ||
| 42 | #define FE_INEXACT	(1 << 5) | ||
| 43 | FE_INEXACT | ||
| 44 | }; | ||
| 45 | |||
| 46 | #define FE_ALL_EXCEPT \ | ||
| 47 | 	(FE_INEXACT | FE_DIVBYZERO | FE_UNDERFLOW | FE_OVERFLOW | FE_INVALID) | ||
| 48 | |||
| 49 | /* The Sparc FPU supports all of the four defined rounding modes. We | ||
| 50 | use again the bit positions in the FPU control word as the values | ||
| 51 | for the appropriate macros. */ | ||
| 52 | enum | ||
| 53 | { | ||
| 54 | FE_TONEAREST = | ||
| 55 | #define FE_TONEAREST	(0 << 30) | ||
| 56 | FE_TONEAREST, | ||
| 57 | FE_TOWARDZERO = | ||
| 58 | #define FE_TOWARDZERO	(1 << 30) | ||
| 59 | FE_TOWARDZERO, | ||
| 60 | FE_UPWARD = | ||
| 61 | #define FE_UPWARD	(-0x7fffffff - 1) /* (2 << 30) */ | ||
| 62 | FE_UPWARD, | ||
| 63 | FE_DOWNWARD = | ||
| 64 | #define FE_DOWNWARD	(-0x40000000) /* (3 << 30) */ | ||
| 65 | FE_DOWNWARD | ||
| 66 | }; | ||
| 67 | |||
| 68 | #define __FE_ROUND_MASK	(3U << 30) | ||
| 69 | |||
| 70 | |||
| 71 | /* Type representing exception flags. */ | ||
| 72 | typedef unsigned long int fexcept_t; | ||
| 73 | |||
| 74 | |||
| 75 | /* Type representing floating-point environment. */ | ||
| 76 | typedef unsigned long int fenv_t; | ||
| 77 | |||
| 78 | /* If the default argument is used we use this value. */ | ||
| 79 | #define FE_DFL_ENV	((const fenv_t *) -1) | ||
| 80 | |||
| 81 | #ifdef __USE_GNU | ||
| 82 | /* Floating-point environment where none of the exception is masked. */ | ||
| 83 | # define FE_NOMASK_ENV	((const fenv_t *) -2) | ||
| 84 | #endif | ||
| 85 | |||
| 86 | #if __GLIBC_USE (IEC_60559_BFP_EXT_C23) | ||
| 87 | /* Type representing floating-point control modes. */ | ||
| 88 | typedef unsigned long int femode_t; | ||
| 89 | |||
| 90 | /* Default floating-point control modes. */ | ||
| 91 | # define FE_DFL_MODE	((const femode_t *) -1L) | ||
| 92 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/bits/hwcap.h deleted-51| ... | @@ -1,51 +0,0 @@ | ||
| 1 | /* Defines for bits in AT_HWCAP. | ||
| 2 | Copyright (C) 2011-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #if !defined(_SYS_AUXV_H) && !defined(_SYSDEPS_SYSDEP_H) | ||
| 20 | # error "Never include <bits/hwcap.h> directly; use <sys/auxv.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #define HWCAP_SPARC_FLUSH	0x00000001 | ||
| 24 | #define HWCAP_SPARC_STBAR	0x00000002 | ||
| 25 | #define HWCAP_SPARC_SWAP	0x00000004 | ||
| 26 | #define HWCAP_SPARC_MULDIV	0x00000008 | ||
| 27 | #define HWCAP_SPARC_V9		0x00000010 | ||
| 28 | #define HWCAP_SPARC_ULTRA3	0x00000020 | ||
| 29 | #define HWCAP_SPARC_BLKINIT	0x00000040 | ||
| 30 | #define HWCAP_SPARC_N2		0x00000080 | ||
| 31 | #define HWCAP_SPARC_MUL32	0x00000100 | ||
| 32 | #define HWCAP_SPARC_DIV32	0x00000200 | ||
| 33 | #define HWCAP_SPARC_FSMULD	0x00000400 | ||
| 34 | #define HWCAP_SPARC_V8PLUS	0x00000800 | ||
| 35 | #define HWCAP_SPARC_POPC	0x00001000 | ||
| 36 | #define HWCAP_SPARC_VIS		0x00002000 | ||
| 37 | #define HWCAP_SPARC_VIS2	0x00004000 | ||
| 38 | #define HWCAP_SPARC_ASI_BLK_INIT 0x00008000 | ||
| 39 | #define HWCAP_SPARC_FMAF	0x00010000 | ||
| 40 | #define HWCAP_SPARC_VIS3	0x00020000 | ||
| 41 | #define HWCAP_SPARC_HPC		0x00040000 | ||
| 42 | #define HWCAP_SPARC_RANDOM	0x00080000 | ||
| 43 | #define HWCAP_SPARC_TRANS	0x00100000 | ||
| 44 | #define HWCAP_SPARC_FJFMAU	0x00200000 | ||
| 45 | #define HWCAP_SPARC_IMA		0x00400000 | ||
| 46 | #define HWCAP_SPARC_ASI_CACHE_SPARING \ | ||
| 47 | 				0x00800000 | ||
| 48 | #define HWCAP_SPARC_PAUSE	0x01000000 | ||
| 49 | #define HWCAP_SPARC_CBCOND	0x02000000 | ||
| 50 | #define HWCAP_SPARC_CRYPTO	0x04000000 | ||
| 51 | #define HWCAP_SPARC_ADP		0x08000000 | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/bits/inotify.h deleted-29| ... | @@ -1,29 +0,0 @@ | ||
| 1 | /* Copyright (C) 2005-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_SYS_INOTIFY_H | ||
| 19 | # error "Never use <bits/inotify.h> directly; include <sys/inotify.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Flags for the parameter of inotify_init1. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | IN_CLOEXEC = 0x400000, | ||
| 26 | #define IN_CLOEXEC IN_CLOEXEC | ||
| 27 | IN_NONBLOCK = 0x004000 | ||
| 28 | #define IN_NONBLOCK IN_NONBLOCK | ||
| 29 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/bits/ioctls.h deleted-36| ... | @@ -1,36 +0,0 @@ | ||
| 1 | /* Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_IOCTL_H | ||
| 19 | # error "Never use <bits/ioctls.h> directly; include <sys/ioctl.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Use the definitions from the kernel header files. */ | ||
| 23 | #include <asm/ioctls.h> | ||
| 24 | |||
| 25 | /* Oh well, this is necessary since the kernel data structure is | ||
| 26 | different from the user-level version. */ | ||
| 27 | #undef TCGETS | ||
| 28 | #undef TCSETS | ||
| 29 | #undef TCSETSW | ||
| 30 | #undef TCSETSF | ||
| 31 | #define TCGETS	_IOR ('T', 8, char[36]) | ||
| 32 | #define TCSETS	_IOW ('T', 9, char[36]) | ||
| 33 | #define TCSETSW	_IOW ('T', 10, char[36]) | ||
| 34 | #define TCSETSF	_IOW ('T', 11, char[36]) | ||
| 35 | |||
| 36 | #include <linux/sockios.h> | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/bits/ipc-perm.h deleted-36| ... | @@ -1,36 +0,0 @@ | ||
| 1 | /* struct ipc_perm definition. Linux/sparc version. | ||
| 2 | Copyright (C) 1995-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_IPC_H | ||
| 20 | # error "Never use <bits/ipc-perm.h> directly; include <sys/ipc.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Data structure used to pass permission information to IPC operations. */ | ||
| 24 | struct ipc_perm | ||
| 25 | { | ||
| 26 | __key_t __key;			/* Key. */ | ||
| 27 | __uid_t uid;			/* Owner's user ID. */ | ||
| 28 | __gid_t gid;			/* Owner's group ID. */ | ||
| 29 | __uid_t cuid;			/* Creator's user ID. */ | ||
| 30 | __gid_t cgid;			/* Creator's group ID. */ | ||
| 31 | __mode_t mode;			/* Read/write permission. */ | ||
| 32 | unsigned short int __pad1; | ||
| 33 | unsigned short int __seq;		/* Sequence number. */ | ||
| 34 | __extension__ unsigned long long int __glibc_reserved1; | ||
| 35 | __extension__ unsigned long long int __glibc_reserved2; | ||
| 36 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/bits/link.h deleted-99| ... | @@ -1,99 +0,0 @@ | ||
| 1 | /* Machine-specific audit interfaces for dynamic linker. SPARC version. | ||
| 2 | Copyright (C) 2005-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef	_LINK_H | ||
| 20 | # error "Never include <bits/link.h> directly; use <link.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #if __WORDSIZE == 32 | ||
| 24 | |||
| 25 | typedef struct La_sparc32_regs | ||
| 26 | { | ||
| 27 | uint32_t lr_lreg[8]; /* %l0 through %l7 */ | ||
| 28 | uint32_t lr_reg[6]; /* %o0 through %o5 */ | ||
| 29 | uint32_t lr_sp; /* %o6 */ | ||
| 30 | uint32_t lr_ra; /* %o7 */ | ||
| 31 | uint32_t lr_struct; /* Pass-by-reference struct pointer */ | ||
| 32 | } La_sparc32_regs; | ||
| 33 | |||
| 34 | typedef struct La_sparc32_retval | ||
| 35 | { | ||
| 36 | uint32_t lrv_reg[2]; /* %o0 and %o1 */ | ||
| 37 | double lrv_fpreg[2]; /* %f0 and %f2 */ | ||
| 38 | } La_sparc32_retval; | ||
| 39 | |||
| 40 | #else | ||
| 41 | |||
| 42 | typedef struct La_sparc64_regs | ||
| 43 | { | ||
| 44 | uint64_t lr_lreg[8]; /* %l0 through %l7 */ | ||
| 45 | uint64_t lr_reg[6];	/* %o0 through %o5 */ | ||
| 46 | uint64_t lr_sp;	/* %o6 */ | ||
| 47 | uint64_t lr_ra;	/* %o7 */ | ||
| 48 | double lr_fpreg[16];	/* %f0 through %f30 */ | ||
| 49 | } La_sparc64_regs; | ||
| 50 | |||
| 51 | typedef struct La_sparc64_retval | ||
| 52 | { | ||
| 53 | uint64_t lrv_reg[4]; /* %o0 through %o3 */ | ||
| 54 | double lrv_fprev[4]; /* %f0 through %f8 */ | ||
| 55 | } La_sparc64_retval; | ||
| 56 | |||
| 57 | #endif | ||
| 58 | |||
| 59 | __BEGIN_DECLS | ||
| 60 | |||
| 61 | #if __WORDSIZE == 32 | ||
| 62 | |||
| 63 | extern Elf32_Addr la_sparc32_gnu_pltenter (Elf32_Sym *__sym, | ||
| 64 | 					 unsigned int __ndx, | ||
| 65 | 					 uintptr_t *__refcook, | ||
| 66 | 					 uintptr_t *__defcook, | ||
| 67 | 					 La_sparc32_regs *__regs, | ||
| 68 | 					 unsigned int *__flags, | ||
| 69 | 					 const char *__symname, | ||
| 70 | 					 long int *__framesizep); | ||
| 71 | extern unsigned int la_sparc32_gnu_pltexit (Elf32_Sym *__sym, | ||
| 72 | 					 unsigned int __ndx, | ||
| 73 | 					 uintptr_t *__refcook, | ||
| 74 | 					 uintptr_t *__defcook, | ||
| 75 | 					 const La_sparc32_regs *__inregs, | ||
| 76 | 					 La_sparc32_retval *__outregs, | ||
| 77 | 					 const char *__symname); | ||
| 78 | |||
| 79 | #else | ||
| 80 | |||
| 81 | extern Elf64_Addr la_sparc64_gnu_pltenter (Elf64_Sym *__sym, | ||
| 82 | 					 unsigned int __ndx, | ||
| 83 | 					 uintptr_t *__refcook, | ||
| 84 | 					 uintptr_t *__defcook, | ||
| 85 | 					 La_sparc64_regs *__regs, | ||
| 86 | 					 unsigned int *__flags, | ||
| 87 | 					 const char *__symname, | ||
| 88 | 					 long int *__framesizep); | ||
| 89 | extern unsigned int la_sparc64_gnu_pltexit (Elf64_Sym *__sym, | ||
| 90 | 					 unsigned int __ndx, | ||
| 91 | 					 uintptr_t *__refcook, | ||
| 92 | 					 uintptr_t *__defcook, | ||
| 93 | 					 const La_sparc64_regs *__inregs, | ||
| 94 | 					 La_sparc64_retval *__outregs, | ||
| 95 | 					 const char *__symname); | ||
| 96 | |||
| 97 | #endif | ||
| 98 | |||
| 99 | __END_DECLS | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/bits/long-double.h deleted-27| ... | @@ -1,27 +0,0 @@ | ||
| 1 | /* Properties of long double type. SPARC version. | ||
| 2 | Copyright (C) 2016-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #include <bits/wordsize.h> | ||
| 20 | |||
| 21 | #if !defined __NO_LONG_DOUBLE_MATH && __WORDSIZE == 32 | ||
| 22 | # define __LONG_DOUBLE_MATH_OPTIONAL 1 | ||
| 23 | # ifndef __LONG_DOUBLE_128__ | ||
| 24 | # define __NO_LONG_DOUBLE_MATH 1 | ||
| 25 | # endif | ||
| 26 | #endif | ||
| 27 | #define __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI 0 | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/bits/mman.h deleted-53| ... | @@ -1,53 +0,0 @@ | ||
| 1 | /* Definitions for POSIX memory map interface. Linux/SPARC version. | ||
| 2 | Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_MMAN_H | ||
| 20 | # error "Never use <bits/mman.h> directly; include <sys/mman.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* The following definitions basically come from the kernel headers. | ||
| 24 | But the kernel header is not namespace clean. */ | ||
| 25 | |||
| 26 | |||
| 27 | /* These are Linux-specific. */ | ||
| 28 | #define MAP_GROWSDOWN	0x0200		/* Stack-like segment. */ | ||
| 29 | #define MAP_DENYWRITE	0x0800		/* ETXTBSY */ | ||
| 30 | #define MAP_EXECUTABLE	0x1000		/* Mark it as an executable. */ | ||
| 31 | #define MAP_LOCKED	0x0100		/* Lock the mapping. */ | ||
| 32 | #define MAP_NORESERVE	0x0040		/* Don't check for reservations. */ | ||
| 33 | #define _MAP_NEW	0x80000000	/* Binary compatibility with SunOS. */ | ||
| 34 | #define MAP_POPULATE	0x8000		/* Populate (prefault) pagetables. */ | ||
| 35 | #define MAP_NONBLOCK	0x10000		/* Do not block on IO. */ | ||
| 36 | #define MAP_STACK	0x20000		/* Allocation is for a stack. */ | ||
| 37 | #define MAP_HUGETLB	0x40000		/* Create huge page mapping. */ | ||
| 38 | #define MAP_SYNC	0x80000		/* Perform synchronous page | ||
| 39 | 					 faults for the mapping. */ | ||
| 40 | #define MAP_FIXED_NOREPLACE 0x100000	/* MAP_FIXED but do not unmap | ||
| 41 | 					 underlying mapping. */ | ||
| 42 | |||
| 43 | /* Flags for `mlockall'. */ | ||
| 44 | #define MCL_CURRENT	0x2000		/* Lock all currently mapped pages. */ | ||
| 45 | #define MCL_FUTURE	0x4000		/* Lock all additions to address | ||
| 46 | 					 space. */ | ||
| 47 | #define MCL_ONFAULT	0x8000		/* Lock all pages that are | ||
| 48 | 					 faulted in. */ | ||
| 49 | /* Include generic Linux declarations. */ | ||
| 50 | #include <bits/mman-linux.h> | ||
| 51 | |||
| 52 | /* Other flags. */ | ||
| 53 | #define MAP_RENAME	MAP_ANONYMOUS | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/bits/poll.h deleted-49| ... | @@ -1,49 +0,0 @@ | ||
| 1 | /* Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_POLL_H | ||
| 19 | # error "Never use <bits/poll.h> directly; include <sys/poll.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Event types that can be polled for. These bits may be set in `events' | ||
| 23 | to indicate the interesting event types; they will appear in `revents' | ||
| 24 | to indicate the status of the file descriptor. */ | ||
| 25 | #define POLLIN		0x001		/* There is data to read. */ | ||
| 26 | #define POLLPRI		0x002		/* There is urgent data to read. */ | ||
| 27 | #define POLLOUT		0x004		/* Writing now will not block. */ | ||
| 28 | |||
| 29 | #if defined __USE_XOPEN || defined __USE_XOPEN2K8 | ||
| 30 | /* These values are defined in XPG4.2. */ | ||
| 31 | # define POLLRDNORM	0x040		/* Normal data may be read. */ | ||
| 32 | # define POLLRDBAND	0x080		/* Priority data may be read. */ | ||
| 33 | # define POLLWRNORM	POLLOUT		/* Writing now will not block. */ | ||
| 34 | # define POLLWRBAND	0x100		/* Priority data may be written. */ | ||
| 35 | #endif | ||
| 36 | |||
| 37 | #ifdef __USE_GNU | ||
| 38 | /* These are extensions for Linux. */ | ||
| 39 | # define POLLMSG	0x200 | ||
| 40 | # define POLLREMOVE	0x400 | ||
| 41 | # define POLLRDHUP	0x800 | ||
| 42 | #endif | ||
| 43 | |||
| 44 | /* Event types always implicitly polled for. These bits need not be set in | ||
| 45 | `events', but they will appear in `revents' to indicate the status of | ||
| 46 | the file descriptor. */ | ||
| 47 | #define POLLERR		0x008		/* Error condition. */ | ||
| 48 | #define POLLHUP		0x010		/* Hung up. */ | ||
| 49 | #define POLLNVAL	0x020		/* Invalid polling request. */ | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/bits/procfs-extra.h deleted-88| ... | @@ -1,88 +0,0 @@ | ||
| 1 | /* Extra sys/procfs.h definitions. SPARC version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_PROCFS_H | ||
| 20 | # error "Never include <bits/procfs-extra.h> directly; use <sys/procfs.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #if __WORDSIZE == 64 | ||
| 24 | |||
| 25 | /* Provide 32-bit variants so that BFD can read 32-bit | ||
| 26 | core files. */ | ||
| 27 | #define ELF_NGREG32		38 | ||
| 28 | typedef struct | ||
| 29 | { | ||
| 30 | union | ||
| 31 | { | ||
| 32 | 	unsigned int	pr_regs[32]; | ||
| 33 | 	double		pr_dregs[16]; | ||
| 34 | }			pr_fr; | ||
| 35 | unsigned int	__glibc_reserved; | ||
| 36 | unsigned int	pr_fsr; | ||
| 37 | unsigned char	pr_qcnt; | ||
| 38 | unsigned char	pr_q_entrysize; | ||
| 39 | unsigned char	pr_en; | ||
| 40 | unsigned int	pr_q[64]; | ||
| 41 | } elf_fpregset_t32; | ||
| 42 | |||
| 43 | typedef unsigned int elf_greg_t32; | ||
| 44 | typedef elf_greg_t32 elf_gregset_t32[ELF_NGREG32]; | ||
| 45 | |||
| 46 | struct elf_prstatus32 | ||
| 47 | { | ||
| 48 | struct elf_siginfo pr_info;		/* Info associated with signal. */ | ||
| 49 | short int pr_cursig;		/* Current signal. */ | ||
| 50 | unsigned int pr_sigpend;	/* Set of pending signals. */ | ||
| 51 | unsigned int pr_sighold;	/* Set of held signals. */ | ||
| 52 | __pid_t pr_pid; | ||
| 53 | __pid_t pr_ppid; | ||
| 54 | __pid_t pr_pgrp; | ||
| 55 | __pid_t pr_sid; | ||
| 56 | struct | ||
| 57 | { | ||
| 58 | 	int tv_sec, tv_usec; | ||
| 59 | } pr_utime,			/* User time. */ | ||
| 60 | pr_stime,			/* System time. */ | ||
| 61 | pr_cutime,			/* Cumulative user time. */ | ||
| 62 | pr_cstime;			/* Cumulative system time. */ | ||
| 63 | elf_gregset_t32 pr_reg;		/* GP registers. */ | ||
| 64 | int pr_fpvalid;			/* True if math copro being used. */ | ||
| 65 | }; | ||
| 66 | |||
| 67 | struct elf_prpsinfo32 | ||
| 68 | { | ||
| 69 | char pr_state;			/* Numeric process state. */ | ||
| 70 | char pr_sname;			/* Char for pr_state. */ | ||
| 71 | char pr_zomb;			/* Zombie. */ | ||
| 72 | char pr_nice;			/* Nice val. */ | ||
| 73 | unsigned int pr_flag;		/* Flags. */ | ||
| 74 | unsigned short int pr_uid; | ||
| 75 | unsigned short int pr_gid; | ||
| 76 | int pr_pid, pr_ppid, pr_pgrp, pr_sid; | ||
| 77 | /* Lots missing */ | ||
| 78 | char pr_fname[16];			/* Filename of executable. */ | ||
| 79 | char pr_psargs[ELF_PRARGSZ];	/* Initial part of arg list. */ | ||
| 80 | }; | ||
| 81 | |||
| 82 | typedef elf_gregset_t32 prgregset32_t; | ||
| 83 | typedef elf_fpregset_t32 prfpregset32_t; | ||
| 84 | |||
| 85 | typedef struct elf_prstatus32 prstatus32_t; | ||
| 86 | typedef struct elf_prpsinfo32 prpsinfo32_t; | ||
| 87 | |||
| 88 | #endif /* sparc64 */ | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/bits/procfs-id.h deleted-30| ... | @@ -1,30 +0,0 @@ | ||
| 1 | /* Types of pr_uid and pr_gid in struct elf_prpsinfo. SPARC version. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library; if not, see | ||
| 18 | <https://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifndef _SYS_PROCFS_H | ||
| 21 | # error "Never include <bits/procfs-id.h> directly; use <sys/procfs.h> instead." | ||
| 22 | #endif | ||
| 23 | |||
| 24 | #if __WORDSIZE == 64 | ||
| 25 | typedef unsigned int __pr_uid_t; | ||
| 26 | typedef unsigned int __pr_gid_t; | ||
| 27 | #else | ||
| 28 | typedef unsigned short int __pr_uid_t; | ||
| 29 | typedef unsigned short int __pr_gid_t; | ||
| 30 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/bits/procfs.h deleted-61| ... | @@ -1,61 +0,0 @@ | ||
| 1 | /* Types for registers for sys/procfs.h. SPARC version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_PROCFS_H | ||
| 20 | # error "Never include <bits/procfs.h> directly; use <sys/procfs.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <signal.h> | ||
| 24 | #include <sys/ucontext.h> | ||
| 25 | #include <bits/wordsize.h> | ||
| 26 | |||
| 27 | #if __WORDSIZE == 64 | ||
| 28 | |||
| 29 | #define ELF_NGREG		36 | ||
| 30 | |||
| 31 | typedef struct | ||
| 32 | { | ||
| 33 | unsigned long	pr_regs[32]; | ||
| 34 | unsigned long	pr_fsr; | ||
| 35 | unsigned long	pr_gsr; | ||
| 36 | unsigned long	pr_fprs; | ||
| 37 | } elf_fpregset_t; | ||
| 38 | |||
| 39 | #else /* sparc32 */ | ||
| 40 | |||
| 41 | #define ELF_NGREG		38 | ||
| 42 | |||
| 43 | typedef struct | ||
| 44 | { | ||
| 45 | union | ||
| 46 | { | ||
| 47 | 	unsigned long	pr_regs[32]; | ||
| 48 | 	double		pr_dregs[16]; | ||
| 49 | }			pr_fr; | ||
| 50 | unsigned long	__glibc_reserved; | ||
| 51 | unsigned long	pr_fsr; | ||
| 52 | unsigned char	pr_qcnt; | ||
| 53 | unsigned char	pr_q_entrysize; | ||
| 54 | unsigned char	pr_en; | ||
| 55 | unsigned int	pr_q[64]; | ||
| 56 | } elf_fpregset_t; | ||
| 57 | |||
| 58 | #endif /* sparc32 */ | ||
| 59 | |||
| 60 | typedef unsigned long elf_greg_t; | ||
| 61 | typedef elf_greg_t elf_gregset_t[ELF_NGREG]; | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/bits/pthread_stack_min.h deleted-20| ... | @@ -1,20 +0,0 @@ | ||
| 1 | /* Definition of PTHREAD_STACK_MIN. Linux/SPARC version. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Library General Public License as | ||
| 7 | published by the Free Software Foundation; either version 2 of the | ||
| 8 | License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Library General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Library General Public | ||
| 16 | License along with the GNU C Library; see the file COPYING.LIB. If | ||
| 17 | not, see <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* Minimum size for a thread. We are free to choose a reasonable value. */ | ||
| 20 | #define PTHREAD_STACK_MIN	24576 | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/bits/resource.h deleted-238| ... | @@ -1,238 +0,0 @@ | ||
| 1 | /* Bit values & structures for resource limits. Linux/SPARC version. | ||
| 2 | Copyright (C) 1994-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_RESOURCE_H | ||
| 20 | # error "Never use <bits/resource.h> directly; include <sys/resource.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <bits/types.h> | ||
| 24 | |||
| 25 | /* Transmute defines to enumerations. The macro re-definitions are | ||
| 26 | necessary because some programs want to test for operating system | ||
| 27 | features with #ifdef RUSAGE_SELF. In ISO C the reflexive | ||
| 28 | definition is a no-op. */ | ||
| 29 | |||
| 30 | /* Kinds of resource limit. */ | ||
| 31 | enum __rlimit_resource | ||
| 32 | { | ||
| 33 | /* Per-process CPU limit, in seconds. */ | ||
| 34 | RLIMIT_CPU = 0, | ||
| 35 | #define RLIMIT_CPU RLIMIT_CPU | ||
| 36 | |||
| 37 | /* Largest file that can be created, in bytes. */ | ||
| 38 | RLIMIT_FSIZE = 1, | ||
| 39 | #define	RLIMIT_FSIZE RLIMIT_FSIZE | ||
| 40 | |||
| 41 | /* Maximum size of data segment, in bytes. */ | ||
| 42 | RLIMIT_DATA = 2, | ||
| 43 | #define	RLIMIT_DATA RLIMIT_DATA | ||
| 44 | |||
| 45 | /* Maximum size of stack segment, in bytes. */ | ||
| 46 | RLIMIT_STACK = 3, | ||
| 47 | #define	RLIMIT_STACK RLIMIT_STACK | ||
| 48 | |||
| 49 | /* Largest core file that can be created, in bytes. */ | ||
| 50 | RLIMIT_CORE = 4, | ||
| 51 | #define	RLIMIT_CORE RLIMIT_CORE | ||
| 52 | |||
| 53 | /* Largest resident set size, in bytes. | ||
| 54 | This affects swapping; processes that are exceeding their | ||
| 55 | resident set size will be more likely to have physical memory | ||
| 56 | taken from them. */ | ||
| 57 | __RLIMIT_RSS = 5, | ||
| 58 | #define	RLIMIT_RSS __RLIMIT_RSS | ||
| 59 | |||
| 60 | /* Number of open files. */ | ||
| 61 | RLIMIT_NOFILE = 6, | ||
| 62 | __RLIMIT_OFILE = RLIMIT_NOFILE, /* BSD name for same. */ | ||
| 63 | #define RLIMIT_NOFILE RLIMIT_NOFILE | ||
| 64 | #define RLIMIT_OFILE __RLIMIT_OFILE | ||
| 65 | |||
| 66 | /* Address space limit (?) */ | ||
| 67 | RLIMIT_AS = 9, | ||
| 68 | #define RLIMIT_AS RLIMIT_AS | ||
| 69 | |||
| 70 | /* Number of processes. */ | ||
| 71 | __RLIMIT_NPROC = 7, | ||
| 72 | #define RLIMIT_NPROC __RLIMIT_NPROC | ||
| 73 | |||
| 74 | /* Locked-in-memory address space. */ | ||
| 75 | __RLIMIT_MEMLOCK = 8, | ||
| 76 | #define RLIMIT_MEMLOCK __RLIMIT_MEMLOCK | ||
| 77 | |||
| 78 | /* Maximum number of file locks. */ | ||
| 79 | __RLIMIT_LOCKS = 10, | ||
| 80 | #define RLIMIT_LOCKS __RLIMIT_LOCKS | ||
| 81 | |||
| 82 | /* Maximum number of pending signals. */ | ||
| 83 | __RLIMIT_SIGPENDING = 11, | ||
| 84 | #define RLIMIT_SIGPENDING __RLIMIT_SIGPENDING | ||
| 85 | |||
| 86 | /* Maximum bytes in POSIX message queues. */ | ||
| 87 | __RLIMIT_MSGQUEUE = 12, | ||
| 88 | #define RLIMIT_MSGQUEUE __RLIMIT_MSGQUEUE | ||
| 89 | |||
| 90 | /* Maximum nice priority allowed to raise to. | ||
| 91 | Nice levels 19 .. -20 correspond to 0 .. 39 | ||
| 92 | values of this resource limit. */ | ||
| 93 | __RLIMIT_NICE = 13, | ||
| 94 | #define RLIMIT_NICE __RLIMIT_NICE | ||
| 95 | |||
| 96 | /* Maximum realtime priority allowed for non-priviledged | ||
| 97 | processes. */ | ||
| 98 | __RLIMIT_RTPRIO = 14, | ||
| 99 | #define RLIMIT_RTPRIO __RLIMIT_RTPRIO | ||
| 100 | |||
| 101 | /* Maximum CPU time in microseconds that a process scheduled under a real-time | ||
| 102 | scheduling policy may consume without making a blocking system | ||
| 103 | call before being forcibly descheduled. */ | ||
| 104 | __RLIMIT_RTTIME = 15, | ||
| 105 | #define RLIMIT_RTTIME __RLIMIT_RTTIME | ||
| 106 | |||
| 107 | __RLIMIT_NLIMITS = 16, | ||
| 108 | __RLIM_NLIMITS = __RLIMIT_NLIMITS | ||
| 109 | #define RLIMIT_NLIMITS __RLIMIT_NLIMITS | ||
| 110 | #define RLIM_NLIMITS __RLIM_NLIMITS | ||
| 111 | }; | ||
| 112 | |||
| 113 | /* Value to indicate that there is no limit. */ | ||
| 114 | #if __WORDSIZE == 64 | ||
| 115 | |||
| 116 | #ifndef __USE_FILE_OFFSET64 | ||
| 117 | # define RLIM_INFINITY ((unsigned long int)(~0UL)) | ||
| 118 | #else | ||
| 119 | # define RLIM_INFINITY 0xffffffffffffffffuLL | ||
| 120 | #endif | ||
| 121 | |||
| 122 | #ifdef __USE_LARGEFILE64 | ||
| 123 | # define RLIM64_INFINITY 0xffffffffffffffffuLL | ||
| 124 | #endif | ||
| 125 | |||
| 126 | #else | ||
| 127 | |||
| 128 | #ifndef __USE_FILE_OFFSET64 | ||
| 129 | # define RLIM_INFINITY ((long int)(~0UL >> 1)) | ||
| 130 | #else | ||
| 131 | # define RLIM_INFINITY 0xffffffffffffffffLL | ||
| 132 | #endif | ||
| 133 | |||
| 134 | #ifdef __USE_LARGEFILE64 | ||
| 135 | # define RLIM64_INFINITY 0xffffffffffffffffLL | ||
| 136 | #endif | ||
| 137 | |||
| 138 | #endif | ||
| 139 | |||
| 140 | /* We can represent all limits. */ | ||
| 141 | #define RLIM_SAVED_MAX	RLIM_INFINITY | ||
| 142 | #define RLIM_SAVED_CUR	RLIM_INFINITY | ||
| 143 | |||
| 144 | |||
| 145 | /* Type for resource quantity measurement. */ | ||
| 146 | #ifndef __USE_FILE_OFFSET64 | ||
| 147 | typedef __rlim_t rlim_t; | ||
| 148 | #else | ||
| 149 | typedef __rlim64_t rlim_t; | ||
| 150 | #endif | ||
| 151 | #ifdef __USE_LARGEFILE64 | ||
| 152 | typedef __rlim64_t rlim64_t; | ||
| 153 | #endif | ||
| 154 | |||
| 155 | struct rlimit | ||
| 156 | { | ||
| 157 | /* The current (soft) limit. */ | ||
| 158 | rlim_t rlim_cur; | ||
| 159 | /* The hard limit. */ | ||
| 160 | rlim_t rlim_max; | ||
| 161 | }; | ||
| 162 | |||
| 163 | #ifdef __USE_LARGEFILE64 | ||
| 164 | struct rlimit64 | ||
| 165 | { | ||
| 166 | /* The current (soft) limit. */ | ||
| 167 | rlim64_t rlim_cur; | ||
| 168 | /* The hard limit. */ | ||
| 169 | rlim64_t rlim_max; | ||
| 170 | }; | ||
| 171 | #endif | ||
| 172 | |||
| 173 | /* Whose usage statistics do you want? */ | ||
| 174 | enum __rusage_who | ||
| 175 | { | ||
| 176 | /* The calling process. */ | ||
| 177 | RUSAGE_SELF = 0, | ||
| 178 | #define RUSAGE_SELF RUSAGE_SELF | ||
| 179 | |||
| 180 | /* All of its terminated child processes. */ | ||
| 181 | RUSAGE_CHILDREN = -1 | ||
| 182 | #define RUSAGE_CHILDREN RUSAGE_CHILDREN | ||
| 183 | |||
| 184 | #ifdef __USE_GNU | ||
| 185 | , | ||
| 186 | /* The calling thread. */ | ||
| 187 | RUSAGE_THREAD = 1 | ||
| 188 | # define RUSAGE_THREAD RUSAGE_THREAD | ||
| 189 | /* Name for the same functionality on Solaris. */ | ||
| 190 | # define RUSAGE_LWP RUSAGE_THREAD | ||
| 191 | #endif | ||
| 192 | }; | ||
| 193 | |||
| 194 | #include <bits/types/struct_timeval.h> | ||
| 195 | #include <bits/types/struct_rusage.h> | ||
| 196 | |||
| 197 | /* Priority limits. */ | ||
| 198 | #define PRIO_MIN	-20	/* Minimum priority a process can have. */ | ||
| 199 | #define PRIO_MAX	20	/* Maximum priority a process can have. */ | ||
| 200 | |||
| 201 | /* The type of the WHICH argument to `getpriority' and `setpriority', | ||
| 202 | indicating what flavor of entity the WHO argument specifies. */ | ||
| 203 | enum __priority_which | ||
| 204 | { | ||
| 205 | PRIO_PROCESS = 0,		/* WHO is a process ID. */ | ||
| 206 | #define PRIO_PROCESS PRIO_PROCESS | ||
| 207 | PRIO_PGRP = 1,		/* WHO is a process group ID. */ | ||
| 208 | #define PRIO_PGRP PRIO_PGRP | ||
| 209 | PRIO_USER = 2			/* WHO is a user ID. */ | ||
| 210 | #define PRIO_USER PRIO_USER | ||
| 211 | }; | ||
| 212 | |||
| 213 | __BEGIN_DECLS | ||
| 214 | |||
| 215 | #ifdef __USE_GNU | ||
| 216 | /* Modify and return resource limits of a process atomically. */ | ||
| 217 | # ifndef __USE_FILE_OFFSET64 | ||
| 218 | extern int prlimit (__pid_t __pid, enum __rlimit_resource __resource, | ||
| 219 | 		 const struct rlimit *__new_limit, | ||
| 220 | 		 struct rlimit *__old_limit) __THROW; | ||
| 221 | # else | ||
| 222 | # ifdef __REDIRECT_NTH | ||
| 223 | extern int __REDIRECT_NTH (prlimit, (__pid_t __pid, | ||
| 224 | 				 enum __rlimit_resource __resource, | ||
| 225 | 				 const struct rlimit *__new_limit, | ||
| 226 | 				 struct rlimit *__old_limit), prlimit64); | ||
| 227 | # else | ||
| 228 | # define prlimit prlimit64 | ||
| 229 | # endif | ||
| 230 | # endif | ||
| 231 | # ifdef __USE_LARGEFILE64 | ||
| 232 | extern int prlimit64 (__pid_t __pid, enum __rlimit_resource __resource, | ||
| 233 | 		 const struct rlimit64 *__new_limit, | ||
| 234 | 		 struct rlimit64 *__old_limit) __THROW; | ||
| 235 | # endif | ||
| 236 | #endif | ||
| 237 | |||
| 238 | __END_DECLS | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/bits/rseq.h deleted-29| ... | @@ -1,29 +0,0 @@ | ||
| 1 | /* Restartable Sequences architecture header. Stub version. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_RSEQ_H | ||
| 19 | # error "Never use <bits/rseq.h> directly; include <sys/rseq.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* RSEQ_SIG is a signature required before each abort handler code. | ||
| 23 | |||
| 24 | It is a 32-bit value that maps to actual architecture code compiled | ||
| 25 | into applications and libraries. It needs to be defined for each | ||
| 26 | architecture. When choosing this value, it needs to be taken into | ||
| 27 | account that generating invalid instructions may have ill effects on | ||
| 28 | tools like objdump, and may also have impact on the CPU speculative | ||
| 29 | execution efficiency in some cases. */ | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/bits/setjmp.h deleted-67| ... | @@ -1,67 +0,0 @@ | ||
| 1 | /* Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _BITS_SETJMP_H | ||
| 19 | #define _BITS_SETJMP_H 1 | ||
| 20 | |||
| 21 | #if !defined _SETJMP_H && !defined _PTHREAD_H | ||
| 22 | # error "Never include <bits/setjmp.h> directly; use <setjmp.h> instead." | ||
| 23 | #endif | ||
| 24 | |||
| 25 | #include <bits/wordsize.h> | ||
| 26 | |||
| 27 | #if __WORDSIZE == 64 | ||
| 28 | |||
| 29 | #ifndef _ASM | ||
| 30 | typedef struct __sparc64_jmp_buf | ||
| 31 | { | ||
| 32 | struct __sparc64_jmp_buf	*__uc_link; | ||
| 33 | unsigned long		__uc_flags; | ||
| 34 | unsigned long		__uc_sigmask; | ||
| 35 | struct __sparc64_jmp_buf_mcontext | ||
| 36 | { | ||
| 37 | 	unsigned long		__mc_gregs[19]; | ||
| 38 | 	unsigned long		__mc_fp; | ||
| 39 | 	unsigned long		__mc_i7; | ||
| 40 | 	struct __sparc64_jmp_buf_fpu | ||
| 41 | 	 { | ||
| 42 | 	 union | ||
| 43 | 	 { | ||
| 44 | 		unsigned int	__sregs[32]; | ||
| 45 | 		unsigned long	__dregs[32]; | ||
| 46 | 		long double	__qregs[16]; | ||
| 47 | 	 }			__mcfpu_fpregs; | ||
| 48 | 	 unsigned long	__mcfpu_fprs; | ||
| 49 | 	 unsigned long	__mcfpu_gsr; | ||
| 50 | 	 void		*__mcfpu_fq; | ||
| 51 | 	 unsigned char	__mcfpu_qcnt; | ||
| 52 | 	 unsigned char	__mcfpu_qentsz; | ||
| 53 | 	 unsigned char	__mcfpu_enab; | ||
| 54 | 	 }			__mc_fpregs; | ||
| 55 | }				__uc_mcontext; | ||
| 56 | } __jmp_buf[1]; | ||
| 57 | #endif | ||
| 58 | |||
| 59 | #else | ||
| 60 | |||
| 61 | #ifndef _ASM | ||
| 62 | typedef int __jmp_buf[3]; | ||
| 63 | #endif | ||
| 64 | |||
| 65 | #endif | ||
| 66 | |||
| 67 | #endif /* bits/setjmp.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/bits/shmlba.h deleted-29| ... | @@ -1,29 +0,0 @@ | ||
| 1 | /* Define SHMLBA. SPARC version. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SHM_H | ||
| 20 | # error "Never use <bits/shmlba.h> directly; include <sys/shm.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | __BEGIN_DECLS | ||
| 24 | |||
| 25 | /* Segment low boundary address multiple. */ | ||
| 26 | #define SHMLBA		(__getshmlba ()) | ||
| 27 | extern int __getshmlba (void) __attribute__ ((__const__)); | ||
| 28 | |||
| 29 | __END_DECLS | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/bits/sigaction.h deleted-89| ... | @@ -1,89 +0,0 @@ | ||
| 1 | /* The proper definitions for Linux/SPARC sigaction. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_SIGACTION_H | ||
| 20 | #define _BITS_SIGACTION_H 1 | ||
| 21 | |||
| 22 | #ifndef _SIGNAL_H | ||
| 23 | # error "Never include <bits/sigaction.h> directly; use <signal.h> instead." | ||
| 24 | #endif | ||
| 25 | |||
| 26 | #include <bits/wordsize.h> | ||
| 27 | |||
| 28 | /* Structure describing the action to be taken when a signal arrives. */ | ||
| 29 | struct sigaction | ||
| 30 | { | ||
| 31 | /* Signal handler. */ | ||
| 32 | #if defined __USE_POSIX199309 || defined __USE_XOPEN_EXTENDED | ||
| 33 | union | ||
| 34 | { | ||
| 35 | 	/* Used if SA_SIGINFO is not set. */ | ||
| 36 | 	__sighandler_t sa_handler; | ||
| 37 | 	/* Used if SA_SIGINFO is set. */ | ||
| 38 | 	void (*sa_sigaction) (int, siginfo_t *, void *); | ||
| 39 | } | ||
| 40 | __sigaction_handler; | ||
| 41 | # define sa_handler	__sigaction_handler.sa_handler | ||
| 42 | # define sa_sigaction	__sigaction_handler.sa_sigaction | ||
| 43 | #else | ||
| 44 | __sighandler_t sa_handler; | ||
| 45 | #endif | ||
| 46 | |||
| 47 | /* Additional set of signals to be blocked. */ | ||
| 48 | __sigset_t sa_mask; | ||
| 49 | |||
| 50 | /* Special flags. */ | ||
| 51 | #if __WORDSIZE == 64 | ||
| 52 | int __glibc_reserved0; | ||
| 53 | #endif | ||
| 54 | int sa_flags; | ||
| 55 | |||
| 56 | /* Not used by Linux/Sparc yet. */ | ||
| 57 | void (*sa_restorer) (void); | ||
| 58 | }; | ||
| 59 | |||
| 60 | |||
| 61 | /* Bits in `sa_flags'. */ | ||
| 62 | #define	SA_NOCLDSTOP 0x00000008 /* Don't send SIGCHLD when children stop. */ | ||
| 63 | #define SA_NOCLDWAIT 0x00000100 /* Don't create zombie on child death. */ | ||
| 64 | #define SA_SIGINFO 0x00000200 /* Invoke signal-catching function with | ||
| 65 | 				 three arguments instead of one. */ | ||
| 66 | #if defined __USE_XOPEN_EXTENDED || defined __USE_MISC | ||
| 67 | # define SA_ONSTACK 0x00000001 /* Use signal stack by using `sa_restorer'. */ | ||
| 68 | #endif | ||
| 69 | #if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8 | ||
| 70 | # define SA_RESTART 0x00000002 /* Restart syscall on signal return. */ | ||
| 71 | # define SA_NODEFER 0x00000020 /* Don't automatically block the signal when | ||
| 72 | 				 its handler is being executed. */ | ||
| 73 | # define SA_RESETHAND 0x00000004 /* Reset to SIG_DFL on entry to handler. */ | ||
| 74 | #endif | ||
| 75 | #ifdef __USE_MISC | ||
| 76 | # define SA_INTERRUPT 0x00000010 /* Historical no-op. */ | ||
| 77 | |||
| 78 | /* Some aliases for the SA_ constants. */ | ||
| 79 | # define SA_NOMASK SA_NODEFER | ||
| 80 | # define SA_ONESHOT SA_RESETHAND | ||
| 81 | # define SA_STACK SA_ONSTACK | ||
| 82 | #endif | ||
| 83 | |||
| 84 | /* Values for the HOW argument to `sigprocmask'. */ | ||
| 85 | #define	SIG_BLOCK 1		 /* Block signals. */ | ||
| 86 | #define	SIG_UNBLOCK 2		 /* Unblock signals. */ | ||
| 87 | #define	SIG_SETMASK 4		 /* Set the set of blocked signals. */ | ||
| 88 | |||
| 89 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/bits/sigcontext.h deleted-82| ... | @@ -1,82 +0,0 @@ | ||
| 1 | /* Copyright (C) 2000-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _BITS_SIGCONTEXT_H | ||
| 19 | #define _BITS_SIGCONTEXT_H 1 | ||
| 20 | |||
| 21 | #if !defined _SIGNAL_H && !defined _SYS_UCONTEXT_H | ||
| 22 | # error "Never use <bits/sigcontext.h> directly; include <signal.h> instead." | ||
| 23 | #endif | ||
| 24 | |||
| 25 | #include <bits/wordsize.h> | ||
| 26 | |||
| 27 | #if __WORDSIZE == 32 | ||
| 28 | |||
| 29 | /* It is quite hard to choose what to put here, because | ||
| 30 | Linux/sparc32 had at least 3 totally incompatible | ||
| 31 | signal stack layouts. | ||
| 32 | This one is for the "new" style signals, which are | ||
| 33 | now delivered unless SA_SIGINFO is requested. */ | ||
| 34 | |||
| 35 | struct sigcontext | ||
| 36 | { | ||
| 37 | struct | ||
| 38 | { | ||
| 39 | 	unsigned int	psr; | ||
| 40 | 	unsigned int	pc; | ||
| 41 | 	unsigned int	npc; | ||
| 42 | 	unsigned int	y; | ||
| 43 | 	unsigned int	u_regs[16]; /* globals and ins */ | ||
| 44 | }			si_regs; | ||
| 45 | int			si_mask; | ||
| 46 | }; | ||
| 47 | |||
| 48 | #else /* sparc64 */ | ||
| 49 | |||
| 50 | typedef struct | ||
| 51 | { | ||
| 52 | unsigned int	si_float_regs [64]; | ||
| 53 | unsigned long	si_fsr; | ||
| 54 | unsigned long	si_gsr; | ||
| 55 | unsigned long	si_fprs; | ||
| 56 | } __siginfo_fpu_t; | ||
| 57 | |||
| 58 | struct sigcontext | ||
| 59 | { | ||
| 60 | char		sigc_info[128]; | ||
| 61 | struct | ||
| 62 | { | ||
| 63 | 	unsigned long	u_regs[16]; /* globals and ins */ | ||
| 64 | 	unsigned long	tstate; | ||
| 65 | 	unsigned long	tpc; | ||
| 66 | 	unsigned long	tnpc; | ||
| 67 | 	unsigned int	y; | ||
| 68 | 	unsigned int	fprs; | ||
| 69 | }			sigc_regs; | ||
| 70 | __siginfo_fpu_t *	sigc_fpu_save; | ||
| 71 | struct | ||
| 72 | { | ||
| 73 | 	void *		ss_sp; | ||
| 74 | 	int		ss_flags; | ||
| 75 | 	unsigned long	ss_size; | ||
| 76 | }			sigc_stack; | ||
| 77 | unsigned long	sigc_mask; | ||
| 78 | }; | ||
| 79 | |||
| 80 | #endif /* sparc64 */ | ||
| 81 | |||
| 82 | #endif /* bits/sigcontext.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/bits/siginfo-arch.h deleted-17| ... | @@ -1,17 +0,0 @@ | ||
| 1 | /* Architecture-specific adjustments to siginfo_t. SPARC version. */ | ||
| 2 | #ifndef _BITS_SIGINFO_ARCH_H | ||
| 3 | #define _BITS_SIGINFO_ARCH_H 1 | ||
| 4 | |||
| 5 | /* The kernel uses int instead of long int (as in POSIX). In 32-bit | ||
| 6 | mode, we can still use long int, but in 64-bit mode, we need to | ||
| 7 | deviate from POSIX. */ | ||
| 8 | #if __WORDSIZE == 64 | ||
| 9 | # define __SI_BAND_TYPE int | ||
| 10 | #endif | ||
| 11 | |||
| 12 | #define __SI_SIGFAULT_ADDL \ | ||
| 13 | int _si_trapno; | ||
| 14 | |||
| 15 | #define si_trapno	_sifields._sigfault._si_trapno | ||
| 16 | |||
| 17 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/bits/siginfo-consts-arch.h deleted-12| ... | @@ -1,12 +0,0 @@ | ||
| 1 | /* Architecture-specific additional siginfo constants. SPARC version. */ | ||
| 2 | #ifndef _BITS_SIGINFO_CONSTS_ARCH_H | ||
| 3 | #define _BITS_SIGINFO_CONSTS_ARCH_H 1 | ||
| 4 | |||
| 5 | /* `si_code' values for SIGEMT signal. */ | ||
| 6 | enum | ||
| 7 | { | ||
| 8 | EMT_TAGOVF = 1	/* Tag overflow. */ | ||
| 9 | #define EMT_TAGOVF	EMT_TAGOVF | ||
| 10 | }; | ||
| 11 | |||
| 12 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/bits/signalfd.h deleted-29| ... | @@ -1,29 +0,0 @@ | ||
| 1 | /* Copyright (C) 2007-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_SYS_SIGNALFD_H | ||
| 19 | # error "Never use <bits/signalfd.h> directly; include <sys/signalfd.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Flags for signalfd. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | SFD_CLOEXEC = 0x400000, | ||
| 26 | #define SFD_CLOEXEC SFD_CLOEXEC | ||
| 27 | SFD_NONBLOCK = 0x004000 | ||
| 28 | #define SFD_NONBLOCK SFD_NONBLOCK | ||
| 29 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/bits/signum-arch.h deleted-66| ... | @@ -1,66 +0,0 @@ | ||
| 1 | /* Signal number definitions. Linux/SPARC version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_SIGNUM_ARCH_H | ||
| 20 | #define _BITS_SIGNUM_ARCH_H 1 | ||
| 21 | |||
| 22 | #ifndef _SIGNAL_H | ||
| 23 | #error "Never include <bits/signum-arch.h> directly; use <signal.h> instead." | ||
| 24 | #endif | ||
| 25 | |||
| 26 | /* Adjustments and additions to the signal number constants for | ||
| 27 | Linux/SPARC systems. Signal values on this platform were chosen | ||
| 28 | for SunOS binary compatibility. */ | ||
| 29 | |||
| 30 | #define SIGEMT		 7	/* Emulator trap. */ | ||
| 31 | #define SIGLOST		29	/* Resource lost (Sun); server died (GNU). */ | ||
| 32 | #define SIGPWR		SIGLOST	/* Power failure imminent (SysV). */ | ||
| 33 | |||
| 34 | /* Historical signals specified by POSIX. */ | ||
| 35 | #define SIGBUS		10	/* Bus error. */ | ||
| 36 | #define SIGSYS		12	/* Bad system call. */ | ||
| 37 | |||
| 38 | /* New(er) POSIX signals (1003.1-2008, 1003.1-2013). */ | ||
| 39 | #define SIGURG		16	/* Urgent data is available at a socket. */ | ||
| 40 | #define SIGSTOP		17	/* Stop, unblockable. */ | ||
| 41 | #define SIGTSTP		18	/* Keyboard stop. */ | ||
| 42 | #define SIGCONT		19	/* Continue. */ | ||
| 43 | #define SIGCHLD		20	/* Child terminated or stopped. */ | ||
| 44 | #define SIGTTIN		21	/* Background read from control terminal. */ | ||
| 45 | #define SIGTTOU		22	/* Background write to control terminal. */ | ||
| 46 | #define SIGPOLL		23	/* Pollable event occurred (System V). */ | ||
| 47 | #define SIGXCPU		24	/* CPU time limit exceeded. */ | ||
| 48 | #define SIGVTALRM	26	/* Virtual timer expired. */ | ||
| 49 | #define SIGPROF		27	/* Profiling timer expired. */ | ||
| 50 | #define SIGXFSZ		25	/* File size limit exceeded. */ | ||
| 51 | #define SIGUSR1		30	/* User-defined signal 1. */ | ||
| 52 | #define SIGUSR2		31	/* User-defined signal 2. */ | ||
| 53 | |||
| 54 | /* Nonstandard signals found in all modern POSIX systems | ||
| 55 | (including both BSD and Linux). */ | ||
| 56 | #define SIGWINCH	28	/* Window size change (4.3 BSD, Sun). */ | ||
| 57 | |||
| 58 | /* Archaic names for compatibility. */ | ||
| 59 | #define SIGIO		SIGPOLL /* I/O now possible (4.2 BSD). */ | ||
| 60 | #define SIGIOT		SIGABRT /* IOT instruction, abort() on a PDP-11. */ | ||
| 61 | #define SIGCLD		SIGCHLD /* Old System V name */ | ||
| 62 | |||
| 63 | #define __SIGRTMIN	32 | ||
| 64 | #define __SIGRTMAX	64 | ||
| 65 | |||
| 66 | #endif	/* <signal.h> included. */ | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/bits/sigstack.h deleted-32| ... | @@ -1,32 +0,0 @@ | ||
| 1 | /* sigstack, sigaltstack definitions. | ||
| 2 | Copyright (C) 1998-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_SIGSTACK_H | ||
| 20 | #define _BITS_SIGSTACK_H 1 | ||
| 21 | |||
| 22 | #if !defined _SIGNAL_H && !defined _SYS_UCONTEXT_H | ||
| 23 | # error "Never include this file directly. Use <signal.h> instead" | ||
| 24 | #endif | ||
| 25 | |||
| 26 | /* Minimum stack size for a signal handler. */ | ||
| 27 | #define MINSIGSTKSZ	4096 | ||
| 28 | |||
| 29 | /* System default stack size. */ | ||
| 30 | #define SIGSTKSZ	16384 | ||
| 31 | |||
| 32 | #endif /* bits/sigstack.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/bits/socket-constants.h deleted-70| ... | @@ -1,70 +0,0 @@ | ||
| 1 | /* Socket constants which vary among Linux architectures. Version for SPARC. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SOCKET_H | ||
| 20 | # error "Never include <bits/socket-constants.h> directly; use <sys/socket.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #define SOL_SOCKET 65535 | ||
| 24 | #define SO_ACCEPTCONN 32768 | ||
| 25 | #define SO_BROADCAST 32 | ||
| 26 | #define SO_DONTROUTE 16 | ||
| 27 | #define SO_ERROR 4103 | ||
| 28 | #define SO_KEEPALIVE 8 | ||
| 29 | #define SO_LINGER 128 | ||
| 30 | #define SO_OOBINLINE 256 | ||
| 31 | #define SO_RCVBUF 4098 | ||
| 32 | #define SO_RCVLOWAT 2048 | ||
| 33 | #define SO_REUSEADDR 4 | ||
| 34 | #define SO_SNDBUF 4097 | ||
| 35 | #define SO_SNDLOWAT 4096 | ||
| 36 | #define SO_TYPE 4104 | ||
| 37 | |||
| 38 | #if __TIMESIZE == 64 | ||
| 39 | # define SO_RCVTIMEO 8192 | ||
| 40 | # define SO_SNDTIMEO 16384 | ||
| 41 | # define SO_TIMESTAMP 29 | ||
| 42 | # define SO_TIMESTAMPNS 33 | ||
| 43 | # define SO_TIMESTAMPING 35 | ||
| 44 | #else | ||
| 45 | # define SO_RCVTIMEO_OLD 8192 | ||
| 46 | # define SO_SNDTIMEO_OLD 16384 | ||
| 47 | # define SO_RCVTIMEO_NEW 68 | ||
| 48 | # define SO_SNDTIMEO_NEW 69 | ||
| 49 | |||
| 50 | # define SO_TIMESTAMP_OLD 0x001d | ||
| 51 | # define SO_TIMESTAMPNS_OLD 0x0021 | ||
| 52 | # define SO_TIMESTAMPING_OLD 0x0023 | ||
| 53 | # define SO_TIMESTAMP_NEW 0x0046 | ||
| 54 | # define SO_TIMESTAMPNS_NEW 0x0042 | ||
| 55 | # define SO_TIMESTAMPING_NEW 0x0043 | ||
| 56 | |||
| 57 | # ifdef __USE_TIME64_REDIRECTS | ||
| 58 | # define SO_RCVTIMEO SO_RCVTIMEO_NEW | ||
| 59 | # define SO_SNDTIMEO SO_SNDTIMEO_NEW | ||
| 60 | # define SO_TIMESTAMP SO_TIMESTAMP_NEW | ||
| 61 | # define SO_TIMESTAMPNS SO_TIMESTAMPNS_NEW | ||
| 62 | # define SO_TIMESTAMPING SO_TIMESTAMPING_NEW | ||
| 63 | # else | ||
| 64 | # define SO_RCVTIMEO SO_RCVTIMEO_OLD | ||
| 65 | # define SO_SNDTIMEO SO_SNDTIMEO_OLD | ||
| 66 | # define SO_TIMESTAMP SO_TIMESTAMP_OLD | ||
| 67 | # define SO_TIMESTAMPNS SO_TIMESTAMPNS_OLD | ||
| 68 | # define SO_TIMESTAMPING SO_TIMESTAMPING_OLD | ||
| 69 | # endif | ||
| 70 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/bits/socket_type.h deleted-55| ... | @@ -1,55 +0,0 @@ | ||
| 1 | /* Define enum __socket_type for Linux/SPARC. | ||
| 2 | Copyright (C) 1991-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SOCKET_H | ||
| 20 | # error "Never include <bits/socket_type.h> directly; use <sys/socket.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Types of sockets. */ | ||
| 24 | enum __socket_type | ||
| 25 | { | ||
| 26 | SOCK_STREAM = 1,		/* Sequenced, reliable, connection-based | ||
| 27 | 				 byte streams. */ | ||
| 28 | #define SOCK_STREAM SOCK_STREAM | ||
| 29 | SOCK_DGRAM = 2,		/* Connectionless, unreliable datagrams | ||
| 30 | 				 of fixed maximum length. */ | ||
| 31 | #define SOCK_DGRAM SOCK_DGRAM | ||
| 32 | SOCK_RAW = 3,			/* Raw protocol interface. */ | ||
| 33 | #define SOCK_RAW SOCK_RAW | ||
| 34 | SOCK_RDM = 4,			/* Reliably-delivered messages. */ | ||
| 35 | #define SOCK_RDM SOCK_RDM | ||
| 36 | SOCK_SEQPACKET = 5,		/* Sequenced, reliable, connection-based, | ||
| 37 | 				 datagrams of fixed maximum length. */ | ||
| 38 | #define SOCK_SEQPACKET SOCK_SEQPACKET | ||
| 39 | SOCK_DCCP = 6,		/* Datagram Congestion Control Protocol. */ | ||
| 40 | #define SOCK_DCCP SOCK_DCCP | ||
| 41 | SOCK_PACKET = 10,		/* Linux specific way of getting packets | ||
| 42 | 				 at the dev level. For writing rarp and | ||
| 43 | 				 other similar things on the user level. */ | ||
| 44 | #define SOCK_PACKET SOCK_PACKET | ||
| 45 | |||
| 46 | /* Flags to be ORed into the type parameter of socket and socketpair and | ||
| 47 | used for the flags parameter of paccept. */ | ||
| 48 | |||
| 49 | SOCK_CLOEXEC = 0x400000,	/* Atomically set close-on-exec flag for the | ||
| 50 | 				 new descriptor(s). */ | ||
| 51 | #define SOCK_CLOEXEC SOCK_CLOEXEC | ||
| 52 | SOCK_NONBLOCK = 0x004000	/* Atomically mark descriptor(s) as | ||
| 53 | 				 non-blocking. */ | ||
| 54 | #define SOCK_NONBLOCK SOCK_NONBLOCK | ||
| 55 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/bits/struct_rwlock.h deleted-58| ... | @@ -1,58 +0,0 @@ | ||
| 1 | /* SPARC internal rwlock struct definitions. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library; if not, see | ||
| 18 | <http://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifndef _RWLOCK_INTERNAL_H | ||
| 21 | #define _RWLOCK_INTERNAL_H | ||
| 22 | |||
| 23 | struct __pthread_rwlock_arch_t | ||
| 24 | { | ||
| 25 | unsigned int __readers; | ||
| 26 | unsigned int __writers; | ||
| 27 | unsigned int __wrphase_futex; | ||
| 28 | unsigned int __writers_futex; | ||
| 29 | unsigned int __pad3; | ||
| 30 | unsigned int __pad4; | ||
| 31 | #if __WORDSIZE == 64 | ||
| 32 | int __cur_writer; | ||
| 33 | int __shared; | ||
| 34 | unsigned long int __pad1; | ||
| 35 | unsigned long int __pad2; | ||
| 36 | /* FLAGS must stay at this position in the structure to maintain | ||
| 37 | binary compatibility. */ | ||
| 38 | unsigned int __flags; | ||
| 39 | #else | ||
| 40 | unsigned char __pad1; | ||
| 41 | unsigned char __pad2; | ||
| 42 | unsigned char __shared; | ||
| 43 | /* FLAGS must stay at this position in the structure to maintain | ||
| 44 | binary compatibility. */ | ||
| 45 | unsigned char __flags; | ||
| 46 | int __cur_writer; | ||
| 47 | #endif | ||
| 48 | }; | ||
| 49 | |||
| 50 | #if __WORDSIZE == 64 | ||
| 51 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 52 | 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags | ||
| 53 | #else | ||
| 54 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 55 | 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0 | ||
| 56 | #endif | ||
| 57 | |||
| 58 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/bits/struct_stat.h deleted-139| ... | @@ -1,139 +0,0 @@ | ||
| 1 | /* Definition for struct stat. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #if !defined _SYS_STAT_H && !defined _FCNTL_H | ||
| 20 | # error "Never include <bits/struct_stat.h> directly; use <sys/stat.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef _BITS_STRUCT_STAT_H | ||
| 24 | #define _BITS_STRUCT_STAT_H	1 | ||
| 25 | |||
| 26 | #include <bits/endian.h> | ||
| 27 | #include <bits/wordsize.h> | ||
| 28 | |||
| 29 | struct stat | ||
| 30 | { | ||
| 31 | #ifdef __USE_TIME64_REDIRECTS | ||
| 32 | # include <bits/struct_stat_time64_helper.h> | ||
| 33 | #else | ||
| 34 | __dev_t st_dev;			/* Device. */ | ||
| 35 | # if __WORDSIZE == 64 || !defined __USE_FILE_OFFSET64 | ||
| 36 | unsigned short int __pad1; | ||
| 37 | __ino_t st_ino;			/* File serial number.	*/ | ||
| 38 | # else | ||
| 39 | __ino64_t st_ino;			/* File serial number.	*/ | ||
| 40 | # endif | ||
| 41 | __mode_t st_mode;			/* File mode. */ | ||
| 42 | __nlink_t st_nlink;			/* Link count. */ | ||
| 43 | __uid_t st_uid;			/* User ID of the file's owner.	*/ | ||
| 44 | __gid_t st_gid;			/* Group ID of the file's group.*/ | ||
| 45 | __dev_t st_rdev;			/* Device number, if device. */ | ||
| 46 | unsigned short int __pad2; | ||
| 47 | # ifndef __USE_FILE_OFFSET64 | ||
| 48 | __off_t st_size;			/* Size of file, in bytes. */ | ||
| 49 | # else | ||
| 50 | __off64_t st_size;			/* Size of file, in bytes. */ | ||
| 51 | # endif | ||
| 52 | __blksize_t st_blksize;		/* Optimal block size for I/O. */ | ||
| 53 | |||
| 54 | # ifndef __USE_FILE_OFFSET64 | ||
| 55 | __blkcnt_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 56 | # else | ||
| 57 | __blkcnt64_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 58 | # endif | ||
| 59 | # ifdef __USE_XOPEN2K8 | ||
| 60 | /* Nanosecond resolution timestamps are stored in a format | ||
| 61 | equivalent to 'struct timespec'. This is the type used | ||
| 62 | whenever possible but the Unix namespace rules do not allow the | ||
| 63 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 64 | Therefore we have to handle the use of this header in strictly | ||
| 65 | standard-compliant sources special. */ | ||
| 66 | struct timespec st_atim;		/* Time of last access. */ | ||
| 67 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 68 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 69 | # define st_atime st_atim.tv_sec	/* Backward compatibility. */ | ||
| 70 | # define st_mtime st_mtim.tv_sec | ||
| 71 | # define st_ctime st_ctim.tv_sec | ||
| 72 | # else | ||
| 73 | __time_t st_atime;			/* Time of last access. */ | ||
| 74 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 75 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 76 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 77 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 78 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 79 | # endif | ||
| 80 | unsigned long int __glibc_reserved4; | ||
| 81 | unsigned long int __glibc_reserved5; | ||
| 82 | #endif /* __USE_TIME64_REDIRECTS */ | ||
| 83 | }; | ||
| 84 | |||
| 85 | #ifdef __USE_LARGEFILE64 | ||
| 86 | struct stat64 | ||
| 87 | { | ||
| 88 | # ifdef __USE_TIME64_REDIRECTS | ||
| 89 | # include <bits/struct_stat_time64_helper.h> | ||
| 90 | # else | ||
| 91 | __dev_t st_dev;			/* Device. */ | ||
| 92 | # if __WORDSIZE == 64 | ||
| 93 | unsigned short int __pad1; | ||
| 94 | # endif | ||
| 95 | __ino64_t st_ino;			/* File serial number.	*/ | ||
| 96 | __mode_t st_mode;			/* File mode. */ | ||
| 97 | __nlink_t st_nlink;			/* Link count. */ | ||
| 98 | __uid_t st_uid;			/* User ID of the file's owner.	*/ | ||
| 99 | __gid_t st_gid;			/* Group ID of the file's group.*/ | ||
| 100 | __dev_t st_rdev;			/* Device number, if device. */ | ||
| 101 | unsigned short int __pad2; | ||
| 102 | __off64_t st_size;			/* Size of file, in bytes. */ | ||
| 103 | __blksize_t st_blksize;		/* Optimal block size for I/O. */ | ||
| 104 | |||
| 105 | __blkcnt64_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 106 | # ifdef __USE_XOPEN2K8 | ||
| 107 | /* Nanosecond resolution timestamps are stored in a format | ||
| 108 | equivalent to 'struct timespec'. This is the type used | ||
| 109 | whenever possible but the Unix namespace rules do not allow the | ||
| 110 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 111 | Therefore we have to handle the use of this header in strictly | ||
| 112 | standard-compliant sources special. */ | ||
| 113 | struct timespec st_atim;		/* Time of last access. */ | ||
| 114 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 115 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 116 | # define st_atime st_atim.tv_sec	/* Backward compatibility. */ | ||
| 117 | # define st_mtime st_mtim.tv_sec | ||
| 118 | # define st_ctime st_ctim.tv_sec | ||
| 119 | # else | ||
| 120 | __time_t st_atime;			/* Time of last access. */ | ||
| 121 | unsigned long int st_atimensec;	/* Nscecs of last access. */ | ||
| 122 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 123 | unsigned long int st_mtimensec;	/* Nsecs of last modification. */ | ||
| 124 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 125 | unsigned long int st_ctimensec;	/* Nsecs of last status change. */ | ||
| 126 | # endif | ||
| 127 | unsigned long int __glibc_reserved4; | ||
| 128 | unsigned long int __glibc_reserved5; | ||
| 129 | # endif /* __USE_TIME64_REDIRECTS */ | ||
| 130 | }; | ||
| 131 | #endif | ||
| 132 | |||
| 133 | /* Tell code we have these members. */ | ||
| 134 | #define	_STATBUF_ST_BLKSIZE | ||
| 135 | #define _STATBUF_ST_RDEV | ||
| 136 | /* Nanosecond resolution time values are supported. */ | ||
| 137 | #define _STATBUF_ST_NSEC | ||
| 138 | |||
| 139 | #endif /* _BITS_STRUCT_STAT_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/bits/termios-baud.h deleted-46| ... | @@ -1,46 +0,0 @@ | ||
| 1 | /* termios baud rate selection definitions. Linux/sparc version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-baud.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifdef __USE_MISC | ||
| 24 | # define CBAUD 0x0000100f | ||
| 25 | # define CBAUDEX 0x00001000 | ||
| 26 | # define CIBAUD	 0x100f0000	/* input baud rate (not used) */ | ||
| 27 | # define CMSPAR 0x40000000	/* mark or space (stick) parity */ | ||
| 28 | # define CRTSCTS 0x80000000	/* flow control */ | ||
| 29 | #endif | ||
| 30 | |||
| 31 | #define B57600 0x00001001 | ||
| 32 | #define B115200 0x00001002 | ||
| 33 | #define B230400 0x00001003 | ||
| 34 | #define B460800 0x00001004 | ||
| 35 | #define B76800 0x00001005 | ||
| 36 | #define B153600 0x00001006 | ||
| 37 | #define B307200 0x00001007 | ||
| 38 | #define B614400 0x00001008 | ||
| 39 | #define B921600 0x00001009 | ||
| 40 | #define B500000 0x0000100a | ||
| 41 | #define B576000 0x0000100b | ||
| 42 | #define B1000000 0x0000100c | ||
| 43 | #define B1152000 0x0000100d | ||
| 44 | #define B1500000 0x0000100e | ||
| 45 | #define B2000000 0x0000100f | ||
| 46 | #define __MAX_BAUD B2000000 | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/bits/termios-c_cc.h deleted-43| ... | @@ -1,43 +0,0 @@ | ||
| 1 | /* termios c_cc symbolic constant definitions. Linux/sparc version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-c_cc.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* c_cc characters */ | ||
| 24 | #define VINTR 0 | ||
| 25 | #define VQUIT 1 | ||
| 26 | #define VERASE 2 | ||
| 27 | #define VKILL 3 | ||
| 28 | #define VEOF 4 | ||
| 29 | #define VEOL 5 | ||
| 30 | #define VEOL2 6 | ||
| 31 | #define VSWTC 7 | ||
| 32 | #define VSTART 8 | ||
| 33 | #define VSTOP 9 | ||
| 34 | #define VSUSP 10 | ||
| 35 | #define VDSUSP 11		/* SunOS POSIX nicety I do believe... */ | ||
| 36 | #define VREPRINT 12 | ||
| 37 | #define VDISCARD 13 | ||
| 38 | #define VWERASE 14 | ||
| 39 | #define VLNEXT 15 | ||
| 40 | |||
| 41 | /* User apps assume vmin/vtime is shared with eof/eol */ | ||
| 42 | #define VMIN VEOF | ||
| 43 | #define VTIME VEOL | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/bits/termios-c_oflag.h deleted-64| ... | @@ -1,64 +0,0 @@ | ||
| 1 | /* termios output mode definitions. Linux/sparc version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-c_oflag.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* c_oflag bits */ | ||
| 24 | #define OPOST	0x00000001 | ||
| 25 | #define OLCUC	0x00000002 | ||
| 26 | #define ONLCR	0x00000004 | ||
| 27 | #define OCRNL	0x00000008 | ||
| 28 | #define ONOCR	0x00000010 | ||
| 29 | #define ONLRET	0x00000020 | ||
| 30 | #define OFILL	0x00000040 | ||
| 31 | #define OFDEL	0x00000080 | ||
| 32 | #if defined __USE_MISC || defined __USE_XOPEN | ||
| 33 | # define NLDLY	0x00000100 | ||
| 34 | # define NL0	0x00000000 | ||
| 35 | # define NL1	0x00000100 | ||
| 36 | # define CRDLY	0x00000600 | ||
| 37 | # define CR0	0x00000000 | ||
| 38 | # define CR1	0x00000200 | ||
| 39 | # define CR2	0x00000400 | ||
| 40 | # define CR3	0x00000600 | ||
| 41 | # define TABDLY	0x00001800 | ||
| 42 | # define TAB0	0x00000000 | ||
| 43 | # define TAB1	0x00000800 | ||
| 44 | # define TAB2	0x00001000 | ||
| 45 | # define TAB3	0x00001800 | ||
| 46 | # define BSDLY	0x00002000 | ||
| 47 | # define BS0	0x00000000 | ||
| 48 | # define BS1	0x00002000 | ||
| 49 | #define FFDLY	0x00008000 | ||
| 50 | #define FF0	0x00000000 | ||
| 51 | #define FF1	0x00008000 | ||
| 52 | #endif | ||
| 53 | #define VTDLY	0x00004000 | ||
| 54 | #define VT0	0x00000000 | ||
| 55 | #define VT1	0x00004000 | ||
| 56 | |||
| 57 | # if defined __USE_GNU | ||
| 58 | #define PAGEOUT 0x00010000	/* SUNOS specific */ | ||
| 59 | #define WRAP 0x00020000	/* SUNOS specific */ | ||
| 60 | # endif | ||
| 61 | |||
| 62 | #ifdef __USE_MISC | ||
| 63 | # define XTABS	0x00001800 | ||
| 64 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/bits/termios-struct.h deleted-34| ... | @@ -1,34 +0,0 @@ | ||
| 1 | /* struct termios definition. Linux/sparc version. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _TERMIOS_H | ||
| 20 | # error "Never include <bits/termios-struct.h> directly; use <termios.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #define NCCS 17 | ||
| 24 | struct termios | ||
| 25 | { | ||
| 26 | tcflag_t c_iflag;		/* input mode flags */ | ||
| 27 | tcflag_t c_oflag;		/* output mode flags */ | ||
| 28 | tcflag_t c_cflag;		/* control mode flags */ | ||
| 29 | tcflag_t c_lflag;		/* local mode flags */ | ||
| 30 | cc_t c_line;		/* line discipline */ | ||
| 31 | cc_t c_cc[NCCS];		/* control characters */ | ||
| 32 | #define _HAVE_STRUCT_TERMIOS_C_ISPEED 0 | ||
| 33 | #define _HAVE_STRUCT_TERMIOS_C_OSPEED 0 | ||
| 34 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/bits/timerfd.h deleted-29| ... | @@ -1,29 +0,0 @@ | ||
| 1 | /* Copyright (C) 2008-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_SYS_TIMERFD_H | ||
| 19 | # error "Never use <bits/timerfd.h> directly; include <sys/timerfd.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Bits to be set in the FLAGS parameter of `timerfd_create'. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | TFD_CLOEXEC = 0x400000, | ||
| 26 | #define TFD_CLOEXEC TFD_CLOEXEC | ||
| 27 | TFD_NONBLOCK = 0x004000 | ||
| 28 | #define TFD_NONBLOCK TFD_NONBLOCK | ||
| 29 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/bits/timesize.h deleted-22| ... | @@ -1,22 +0,0 @@ | ||
| 1 | /* Bit size of the time_t type at glibc build time, Linux/sparc. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #include <bits/wordsize.h> | ||
| 20 | |||
| 21 | /* Size in bits of the 'time_t' type of the default ABI. */ | ||
| 22 | #define __TIMESIZE	__WORDSIZE | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/bits/types/struct_msqid_ds.h deleted-53| ... | @@ -1,53 +0,0 @@ | ||
| 1 | /* Linux/SPARC implementation of the SysV message struct msqid_ds. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_MSG_H | ||
| 20 | # error "Never use <bits/msq.h> directly; include <sys/msg.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #include <bits/types/time_t.h> | ||
| 24 | |||
| 25 | /* Structure of record for one message inside the kernel. | ||
| 26 | The type `struct msg' is opaque. */ | ||
| 27 | struct msqid_ds | ||
| 28 | { | ||
| 29 | #ifdef __USE_TIME64_REDIRECTS | ||
| 30 | # include <bits/types/struct_msqid64_ds_helper.h> | ||
| 31 | #else | ||
| 32 | struct ipc_perm msg_perm;	/* structure describing operation permission */ | ||
| 33 | # if __TIMESIZE == 32 | ||
| 34 | unsigned long int __msg_stime_high; | ||
| 35 | __time_t msg_stime;		/* time of last msgsnd command */ | ||
| 36 | unsigned long int __msg_rtime_high; | ||
| 37 | __time_t msg_rtime;		/* time of last msgsnd command */ | ||
| 38 | unsigned long int __msg_ctime_high; | ||
| 39 | __time_t msg_ctime;		/* time of last change */ | ||
| 40 | # else | ||
| 41 | __time_t msg_stime;		/* time of last msgsnd command */ | ||
| 42 | __time_t msg_rtime;		/* time of last msgsnd command */ | ||
| 43 | __time_t msg_ctime;		/* time of last change */ | ||
| 44 | # endif | ||
| 45 | __syscall_ulong_t __msg_cbytes; /* current number of bytes on queue */ | ||
| 46 | msgqnum_t msg_qnum;		/* number of messages currently on queue */ | ||
| 47 | msglen_t msg_qbytes;		/* max number of bytes allowed on queue */ | ||
| 48 | __pid_t msg_lspid;		/* pid of last msgsnd() */ | ||
| 49 | __pid_t msg_lrpid;		/* pid of last msgrcv() */ | ||
| 50 | __syscall_ulong_t __glibc_reserved4; | ||
| 51 | __syscall_ulong_t __glibc_reserved5; | ||
| 52 | #endif | ||
| 53 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/bits/types/struct_semid_ds.h deleted-43| ... | @@ -1,43 +0,0 @@ | ||
| 1 | /* Sparc implementation of the semaphore struct semid_ds | ||
| 2 | Copyright (C) 1995-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SEM_H | ||
| 20 | # error "Never include <bits/types/struct_semid_ds.h> directly; use <sys/sem.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Data structure describing a set of semaphores. */ | ||
| 24 | struct semid_ds | ||
| 25 | { | ||
| 26 | #ifdef __USE_TIME64_REDIRECTS | ||
| 27 | # include <bits/types/struct_semid64_ds_helper.h> | ||
| 28 | #else | ||
| 29 | struct ipc_perm sem_perm; /* operation permission struct */ | ||
| 30 | # if __TIMESIZE == 32 | ||
| 31 | __syscall_ulong_t __sem_otime_high; | ||
| 32 | __time_t sem_otime; /* last semop() time */ | ||
| 33 | __syscall_ulong_t __sem_ctime_high; | ||
| 34 | __time_t sem_ctime; /* last time changed by semctl() */ | ||
| 35 | # else | ||
| 36 | __time_t sem_otime; /* last semop() time */ | ||
| 37 | __time_t sem_ctime; /* last time changed by semctl() */ | ||
| 38 | # endif | ||
| 39 | __syscall_ulong_t sem_nsems; /* number of semaphores in set */ | ||
| 40 | __syscall_ulong_t __glibc_reserved3; | ||
| 41 | __syscall_ulong_t __glibc_reserved4; | ||
| 42 | #endif | ||
| 43 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/bits/types/struct_shmid_ds.h deleted-49| ... | @@ -1,49 +0,0 @@ | ||
| 1 | /* Linux/SPARC implementation of the shared memory struct shmid_ds. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SHM_H | ||
| 20 | # error "Never include <bits/types/struct_shmid_ds.h> directly; use <sys/shm.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Data structure describing a shared memory segment. */ | ||
| 24 | struct shmid_ds | ||
| 25 | { | ||
| 26 | #ifdef __USE_TIME64_REDIRECTS | ||
| 27 | # include <bits/types/struct_shmid64_ds_helper.h> | ||
| 28 | #else | ||
| 29 | struct ipc_perm shm_perm;		/* operation permission struct */ | ||
| 30 | # if __TIMESIZE == 32 | ||
| 31 | unsigned long int __shm_atime_high; | ||
| 32 | __time_t shm_atime;			/* time of last shmat() */ | ||
| 33 | unsigned long int __shm_dtime_high; | ||
| 34 | __time_t shm_dtime;			/* time of last shmdt() */ | ||
| 35 | unsigned long int __shm_ctime_high; | ||
| 36 | __time_t shm_ctime;			/* time of last change by shmctl() */ | ||
| 37 | # else | ||
| 38 | __time_t shm_atime;			/* time of last shmat() */ | ||
| 39 | __time_t shm_dtime;			/* time of last shmdt() */ | ||
| 40 | __time_t shm_ctime;			/* time of last change by shmctl() */ | ||
| 41 | # endif | ||
| 42 | size_t shm_segsz;			/* size of segment in bytes */ | ||
| 43 | __pid_t shm_cpid;			/* pid of creator */ | ||
| 44 | __pid_t shm_lpid;			/* pid of last shmop */ | ||
| 45 | shmatt_t shm_nattch;		/* number of current attaches */ | ||
| 46 | __syscall_ulong_t __glibc_reserved5; | ||
| 47 | __syscall_ulong_t __glibc_reserved6; | ||
| 48 | #endif | ||
| 49 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/bits/typesizes.h deleted-95| ... | @@ -1,95 +0,0 @@ | ||
| 1 | /* bits/typesizes.h -- underlying types for *_t. Linux/SPARC version. | ||
| 2 | Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_TYPES_H | ||
| 20 | # error "Never include <bits/typesizes.h> directly; use <sys/types.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef	_BITS_TYPESIZES_H | ||
| 24 | #define	_BITS_TYPESIZES_H	1 | ||
| 25 | |||
| 26 | /* See <bits/types.h> for the meaning of these macros. This file exists so | ||
| 27 | that <bits/types.h> need not vary across different GNU platforms. */ | ||
| 28 | |||
| 29 | #define __DEV_T_TYPE		__UQUAD_TYPE | ||
| 30 | #define __UID_T_TYPE		__U32_TYPE | ||
| 31 | #define __GID_T_TYPE		__U32_TYPE | ||
| 32 | #define __INO_T_TYPE		__ULONGWORD_TYPE | ||
| 33 | #define __INO64_T_TYPE		__UQUAD_TYPE | ||
| 34 | #define __MODE_T_TYPE		__U32_TYPE | ||
| 35 | #define __NLINK_T_TYPE		__U32_TYPE | ||
| 36 | #define __OFF_T_TYPE		__SLONGWORD_TYPE | ||
| 37 | #define __OFF64_T_TYPE		__SQUAD_TYPE | ||
| 38 | #define __PID_T_TYPE		__S32_TYPE | ||
| 39 | #define __RLIM_T_TYPE		__ULONGWORD_TYPE | ||
| 40 | #define __RLIM64_T_TYPE		__UQUAD_TYPE | ||
| 41 | #define	__BLKCNT_T_TYPE		__SLONGWORD_TYPE | ||
| 42 | #define	__BLKCNT64_T_TYPE	__SQUAD_TYPE | ||
| 43 | #define	__FSBLKCNT_T_TYPE	__ULONGWORD_TYPE | ||
| 44 | #define	__FSBLKCNT64_T_TYPE	__UQUAD_TYPE | ||
| 45 | #define	__FSFILCNT_T_TYPE	__ULONGWORD_TYPE | ||
| 46 | #define	__FSFILCNT64_T_TYPE	__UQUAD_TYPE | ||
| 47 | #define	__FSWORD_T_TYPE		__SWORD_TYPE | ||
| 48 | #define	__ID_T_TYPE		__U32_TYPE | ||
| 49 | #define __CLOCK_T_TYPE		__SLONGWORD_TYPE | ||
| 50 | #define __TIME_T_TYPE		__SLONGWORD_TYPE | ||
| 51 | #define __USECONDS_T_TYPE	__U32_TYPE | ||
| 52 | #define __SUSECONDS_T_TYPE	__S32_TYPE | ||
| 53 | #define __SUSECONDS64_T_TYPE	__SQUAD_TYPE | ||
| 54 | #define __DADDR_T_TYPE		__S32_TYPE | ||
| 55 | #define __KEY_T_TYPE		__S32_TYPE | ||
| 56 | #define __CLOCKID_T_TYPE	__S32_TYPE | ||
| 57 | #define __TIMER_T_TYPE		void * | ||
| 58 | #define __BLKSIZE_T_TYPE	__SLONGWORD_TYPE | ||
| 59 | #define __FSID_T_TYPE		struct { int __val[2]; } | ||
| 60 | #define __SSIZE_T_TYPE		__SWORD_TYPE | ||
| 61 | #define __SYSCALL_SLONG_TYPE	__SLONGWORD_TYPE | ||
| 62 | #define __SYSCALL_ULONG_TYPE	__ULONGWORD_TYPE | ||
| 63 | #define __CPU_MASK_TYPE 	__ULONGWORD_TYPE | ||
| 64 | |||
| 65 | #if defined __arch64__ || defined __sparcv9 | ||
| 66 | /* Tell the libc code that off_t and off64_t are actually the same type | ||
| 67 | for all ABI purposes, even if possibly expressed as different base types | ||
| 68 | for C type-checking purposes. */ | ||
| 69 | # define __OFF_T_MATCHES_OFF64_T	1 | ||
| 70 | |||
| 71 | /* Same for ino_t and ino64_t. */ | ||
| 72 | # define __INO_T_MATCHES_INO64_T	1 | ||
| 73 | |||
| 74 | /* And for __rlim_t and __rlim64_t. */ | ||
| 75 | # define __RLIM_T_MATCHES_RLIM64_T	1 | ||
| 76 | |||
| 77 | /* And for fsblkcnt_t, fsblkcnt64_t, fsfilcnt_t and fsfilcnt64_t. */ | ||
| 78 | # define __STATFS_MATCHES_STATFS64 1 | ||
| 79 | |||
| 80 | /* And for getitimer, setitimer and rusage */ | ||
| 81 | # define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 1 | ||
| 82 | #else | ||
| 83 | # define __RLIM_T_MATCHES_RLIM64_T	0 | ||
| 84 | |||
| 85 | # define __STATFS_MATCHES_STATFS64 0 | ||
| 86 | |||
| 87 | /* And for getitimer, setitimer and rusage */ | ||
| 88 | # define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 0 | ||
| 89 | #endif | ||
| 90 | |||
| 91 | /* Number of descriptors that can fit in an `fd_set'. */ | ||
| 92 | #define	__FD_SETSIZE		1024 | ||
| 93 | |||
| 94 | |||
| 95 | #endif /* bits/typesizes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/bits/wordsize.h deleted-10| ... | @@ -1,10 +0,0 @@ | ||
| 1 | /* Determine the wordsize from the preprocessor defines. */ | ||
| 2 | |||
| 3 | #if defined __arch64__ || defined __sparcv9 | ||
| 4 | # define __WORDSIZE	64 | ||
| 5 | #else | ||
| 6 | # define __WORDSIZE	32 | ||
| 7 | # define __WORDSIZE32_SIZE_ULONG	0 | ||
| 8 | # define __WORDSIZE32_PTRDIFF_LONG	0 | ||
| 9 | #endif | ||
| 10 | #define __WORDSIZE_TIME64_COMPAT32	1 | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/fpu_control.h deleted-76| ... | @@ -1,76 +0,0 @@ | ||
| 1 | /* FPU control word bits. SPARC version. | ||
| 2 | Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _FPU_CONTROL_H | ||
| 20 | #define _FPU_CONTROL_H	1 | ||
| 21 | |||
| 22 | |||
| 23 | #include <features.h> | ||
| 24 | #include <bits/wordsize.h> | ||
| 25 | |||
| 26 | /* masking of interrupts */ | ||
| 27 | #define _FPU_MASK_IM 0x08000000 | ||
| 28 | #define _FPU_MASK_OM 0x04000000 | ||
| 29 | #define _FPU_MASK_UM 0x02000000 | ||
| 30 | #define _FPU_MASK_ZM 0x01000000 | ||
| 31 | #define _FPU_MASK_PM 0x00800000 | ||
| 32 | |||
| 33 | /* precision control */ | ||
| 34 | #define _FPU_EXTENDED 0x00000000 /* RECOMMENDED */ | ||
| 35 | #define _FPU_DOUBLE 0x20000000 | ||
| 36 | #define _FPU_80BIT 0x30000000 | ||
| 37 | #define _FPU_SINGLE 0x10000000 /* DO NOT USE */ | ||
| 38 | |||
| 39 | /* rounding control / Sparc */ | ||
| 40 | #define _FPU_RC_DOWN 0xc0000000 | ||
| 41 | #define _FPU_RC_UP 0x80000000 | ||
| 42 | #define _FPU_RC_ZERO 0x40000000 | ||
| 43 | #define _FPU_RC_NEAREST 0x0 /* RECOMMENDED */ | ||
| 44 | |||
| 45 | #define _FPU_RESERVED 0x303e0000 /* Reserved bits in cw */ | ||
| 46 | |||
| 47 | |||
| 48 | /* Now two recommended cw */ | ||
| 49 | |||
| 50 | /* Linux and IEEE default: | ||
| 51 | - extended precision | ||
| 52 | - rounding to nearest | ||
| 53 | - no exceptions */ | ||
| 54 | #define _FPU_DEFAULT 0x0 | ||
| 55 | #define _FPU_IEEE 0x0 | ||
| 56 | |||
| 57 | /* Type of the control word. */ | ||
| 58 | typedef unsigned long int fpu_control_t; | ||
| 59 | |||
| 60 | #if __WORDSIZE == 64 | ||
| 61 | # define _FPU_GETCW(cw) __asm__ __volatile__ ("stx %%fsr,%0" : "=m" (*&cw)) | ||
| 62 | # define _FPU_SETCW(cw) __asm__ __volatile__ ("ldx %0,%%fsr" : : "m" (*&cw)) | ||
| 63 | #else | ||
| 64 | # ifdef __leon__ | ||
| 65 | /* Prevent stfsr from being placed directly after other fp instruction. */ | ||
| 66 | # define _FPU_GETCW(cw) __asm__ __volatile__ ("nop; st %%fsr,%0" : "=m" (*&cw)) | ||
| 67 | # else | ||
| 68 | # define _FPU_GETCW(cw) __asm__ __volatile__ ("st %%fsr,%0" : "=m" (*&cw)) | ||
| 69 | # endif | ||
| 70 | # define _FPU_SETCW(cw) __asm__ __volatile__ ("ld %0,%%fsr" : : "m" (*&cw)) | ||
| 71 | #endif | ||
| 72 | |||
| 73 | /* Default control word set at startup. */ | ||
| 74 | extern fpu_control_t __fpu_control; | ||
| 75 | |||
| 76 | #endif	/* fpu_control.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/gnu/lib-names-64.h deleted-27| ... | @@ -1,27 +0,0 @@ | ||
| 1 | /* This file is automatically generated. */ | ||
| 2 | #ifndef __GNU_LIB_NAMES_H | ||
| 3 | # error "Never use <gnu/lib-names-64.h> directly; include <gnu/lib-names.h> instead." | ||
| 4 | #endif | ||
| 5 | |||
| 6 | #define LD_LINUX_SO "ld-linux.so.2" | ||
| 7 | #define LD_SO "ld-linux.so.2" | ||
| 8 | #define LIBANL_SO "libanl.so.1" | ||
| 9 | #define LIBBROKENLOCALE_SO "libBrokenLocale.so.1" | ||
| 10 | #define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0" | ||
| 11 | #define LIBC_SO "libc.so.6" | ||
| 12 | #define LIBDL_SO "libdl.so.2" | ||
| 13 | #define LIBGCC_S_SO "libgcc_s.so.1" | ||
| 14 | #define LIBMVEC_SO "libmvec.so.1" | ||
| 15 | #define LIBM_SO "libm.so.6" | ||
| 16 | #define LIBNSL_SO "libnsl.so.1" | ||
| 17 | #define LIBNSS_COMPAT_SO "libnss_compat.so.2" | ||
| 18 | #define LIBNSS_DB_SO "libnss_db.so.2" | ||
| 19 | #define LIBNSS_DNS_SO "libnss_dns.so.2" | ||
| 20 | #define LIBNSS_FILES_SO "libnss_files.so.2" | ||
| 21 | #define LIBNSS_HESIOD_SO "libnss_hesiod.so.2" | ||
| 22 | #define LIBNSS_LDAP_SO "libnss_ldap.so.2" | ||
| 23 | #define LIBPTHREAD_SO "libpthread.so.0" | ||
| 24 | #define LIBRESOLV_SO "libresolv.so.2" | ||
| 25 | #define LIBRT_SO "librt.so.1" | ||
| 26 | #define LIBTHREAD_DB_SO "libthread_db.so.1" | ||
| 27 | #define LIBUTIL_SO "libutil.so.1" | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/gnu/lib-names.h deleted-16| ... | @@ -1,16 +0,0 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | It defines macros to allow user program to find the shared | ||
| 3 | library files which come as part of GNU libc. */ | ||
| 4 | #ifndef __GNU_LIB_NAMES_H | ||
| 5 | #define __GNU_LIB_NAMES_H	1 | ||
| 6 | |||
| 7 | #include <bits/wordsize.h> | ||
| 8 | |||
| 9 | #if __WORDSIZE == 32 | ||
| 10 | # include <gnu/lib-names-32.h> | ||
| 11 | #endif | ||
| 12 | #if __WORDSIZE == 64 | ||
| 13 | # include <gnu/lib-names-64.h> | ||
| 14 | #endif | ||
| 15 | |||
| 16 | #endif	/* gnu/lib-names.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/gnu/stubs.h deleted-12| ... | @@ -1,12 +0,0 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | This file selects the right generated file of `__stub_FUNCTION' macros | ||
| 3 | based on the architecture being compiled for. */ | ||
| 4 | |||
| 5 | #include <bits/wordsize.h> | ||
| 6 | |||
| 7 | #if __WORDSIZE == 32 | ||
| 8 | # include <gnu/stubs-32.h> | ||
| 9 | #endif | ||
| 10 | #if __WORDSIZE == 64 | ||
| 11 | # include <gnu/stubs-64.h> | ||
| 12 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/ieee754.h deleted-170| ... | @@ -1,170 +0,0 @@ | ||
| 1 | /* Copyright (C) 1992-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _IEEE754_H | ||
| 19 | #define _IEEE754_H 1 | ||
| 20 | |||
| 21 | #include <features.h> | ||
| 22 | |||
| 23 | #include <bits/endian.h> | ||
| 24 | |||
| 25 | __BEGIN_DECLS | ||
| 26 | |||
| 27 | union ieee754_float | ||
| 28 | { | ||
| 29 | float f; | ||
| 30 | |||
| 31 | /* This is the IEEE 754 single-precision format. */ | ||
| 32 | struct | ||
| 33 | { | ||
| 34 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 35 | 	unsigned int negative:1; | ||
| 36 | 	unsigned int exponent:8; | ||
| 37 | 	unsigned int mantissa:23; | ||
| 38 | #endif				/* Big endian. */ | ||
| 39 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 40 | 	unsigned int mantissa:23; | ||
| 41 | 	unsigned int exponent:8; | ||
| 42 | 	unsigned int negative:1; | ||
| 43 | #endif				/* Little endian. */ | ||
| 44 | } ieee; | ||
| 45 | |||
| 46 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 47 | struct | ||
| 48 | { | ||
| 49 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 50 | 	unsigned int negative:1; | ||
| 51 | 	unsigned int exponent:8; | ||
| 52 | 	unsigned int quiet_nan:1; | ||
| 53 | 	unsigned int mantissa:22; | ||
| 54 | #endif				/* Big endian. */ | ||
| 55 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 56 | 	unsigned int mantissa:22; | ||
| 57 | 	unsigned int quiet_nan:1; | ||
| 58 | 	unsigned int exponent:8; | ||
| 59 | 	unsigned int negative:1; | ||
| 60 | #endif				/* Little endian. */ | ||
| 61 | } ieee_nan; | ||
| 62 | }; | ||
| 63 | |||
| 64 | #define IEEE754_FLOAT_BIAS	0x7f /* Added to exponent. */ | ||
| 65 | |||
| 66 | |||
| 67 | union ieee754_double | ||
| 68 | { | ||
| 69 | double d; | ||
| 70 | |||
| 71 | /* This is the IEEE 754 double-precision format. */ | ||
| 72 | struct | ||
| 73 | { | ||
| 74 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 75 | 	unsigned int negative:1; | ||
| 76 | 	unsigned int exponent:11; | ||
| 77 | 	/* Together these comprise the mantissa. */ | ||
| 78 | 	unsigned int mantissa0:20; | ||
| 79 | 	unsigned int mantissa1:32; | ||
| 80 | #endif				/* Big endian. */ | ||
| 81 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 82 | 	/* Together these comprise the mantissa. */ | ||
| 83 | 	unsigned int mantissa1:32; | ||
| 84 | 	unsigned int mantissa0:20; | ||
| 85 | 	unsigned int exponent:11; | ||
| 86 | 	unsigned int negative:1; | ||
| 87 | #endif				/* Little endian. */ | ||
| 88 | } ieee; | ||
| 89 | |||
| 90 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 91 | struct | ||
| 92 | { | ||
| 93 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 94 | 	unsigned int negative:1; | ||
| 95 | 	unsigned int exponent:11; | ||
| 96 | 	unsigned int quiet_nan:1; | ||
| 97 | 	/* Together these comprise the mantissa. */ | ||
| 98 | 	unsigned int mantissa0:19; | ||
| 99 | 	unsigned int mantissa1:32; | ||
| 100 | #else | ||
| 101 | 	/* Together these comprise the mantissa. */ | ||
| 102 | 	unsigned int mantissa1:32; | ||
| 103 | 	unsigned int mantissa0:19; | ||
| 104 | 	unsigned int quiet_nan:1; | ||
| 105 | 	unsigned int exponent:11; | ||
| 106 | 	unsigned int negative:1; | ||
| 107 | #endif | ||
| 108 | } ieee_nan; | ||
| 109 | }; | ||
| 110 | |||
| 111 | #define IEEE754_DOUBLE_BIAS	0x3ff /* Added to exponent. */ | ||
| 112 | |||
| 113 | |||
| 114 | union ieee854_long_double | ||
| 115 | { | ||
| 116 | long double d; | ||
| 117 | |||
| 118 | /* This is the IEEE 854 quad-precision format. */ | ||
| 119 | struct | ||
| 120 | { | ||
| 121 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 122 | 	unsigned int negative:1; | ||
| 123 | 	unsigned int exponent:15; | ||
| 124 | 	/* Together these comprise the mantissa. */ | ||
| 125 | 	unsigned int mantissa0:16; | ||
| 126 | 	unsigned int mantissa1:32; | ||
| 127 | 	unsigned int mantissa2:32; | ||
| 128 | 	unsigned int mantissa3:32; | ||
| 129 | #endif				/* Big endian. */ | ||
| 130 | #if	__BYTE_ORDER == __LITTLE_ENDIAN | ||
| 131 | 	/* Together these comprise the mantissa. */ | ||
| 132 | 	unsigned int mantissa3:32; | ||
| 133 | 	unsigned int mantissa2:32; | ||
| 134 | 	unsigned int mantissa1:32; | ||
| 135 | 	unsigned int mantissa0:16; | ||
| 136 | 	unsigned int exponent:15; | ||
| 137 | 	unsigned int negative:1; | ||
| 138 | #endif				/* Little endian. */ | ||
| 139 | } ieee; | ||
| 140 | |||
| 141 | /* This format makes it easier to see if a NaN is a signalling NaN. */ | ||
| 142 | struct | ||
| 143 | { | ||
| 144 | #if	__BYTE_ORDER == __BIG_ENDIAN | ||
| 145 | 	unsigned int negative:1; | ||
| 146 | 	unsigned int exponent:15; | ||
| 147 | 	unsigned int quiet_nan:1; | ||
| 148 | 	/* Together these comprise the mantissa. */ | ||
| 149 | 	unsigned int mantissa0:15; | ||
| 150 | 	unsigned int mantissa1:32; | ||
| 151 | 	unsigned int mantissa2:32; | ||
| 152 | 	unsigned int mantissa3:32; | ||
| 153 | #else | ||
| 154 | 	/* Together these comprise the mantissa. */ | ||
| 155 | 	unsigned int mantissa3:32; | ||
| 156 | 	unsigned int mantissa2:32; | ||
| 157 | 	unsigned int mantissa1:32; | ||
| 158 | 	unsigned int mantissa0:15; | ||
| 159 | 	unsigned int quiet_nan:1; | ||
| 160 | 	unsigned int exponent:15; | ||
| 161 | 	unsigned int negative:1; | ||
| 162 | #endif | ||
| 163 | } ieee_nan; | ||
| 164 | }; | ||
| 165 | |||
| 166 | #define IEEE854_LONG_DOUBLE_BIAS 0x3fff /* Added to exponent. */ | ||
| 167 | |||
| 168 | __END_DECLS | ||
| 169 | |||
| 170 | #endif /* ieee754.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/sys/ptrace.h deleted-247| ... | @@ -1,247 +0,0 @@ | ||
| 1 | /* `ptrace' debugger support interface. Linux/SPARC version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_PTRACE_H | ||
| 20 | #define _SYS_PTRACE_H	1 | ||
| 21 | |||
| 22 | #include <features.h> | ||
| 23 | #include <bits/types.h> | ||
| 24 | #include <bits/wordsize.h> | ||
| 25 | |||
| 26 | /* Linux/SPARC kernels up to 2.3.18 do not care much | ||
| 27 | about what namespace pollution, so use a kludge now. */ | ||
| 28 | #undef PTRACE_GETREGS | ||
| 29 | #undef PTRACE_SETREGS | ||
| 30 | #undef PTRACE_GETFPREGS | ||
| 31 | #undef PTRACE_SETFPREGS | ||
| 32 | #undef PTRACE_READDATA | ||
| 33 | #undef PTRACE_WRITEDATA | ||
| 34 | #undef PTRACE_READTEXT | ||
| 35 | #undef PTRACE_WRITETEXT | ||
| 36 | #undef PTRACE_SUNDETACH | ||
| 37 | |||
| 38 | __BEGIN_DECLS | ||
| 39 | |||
| 40 | /* Type of the REQUEST argument to `ptrace.' */ | ||
| 41 | enum __ptrace_request | ||
| 42 | { | ||
| 43 | /* Indicate that the process making this request should be traced. | ||
| 44 | All signals received by this process can be intercepted by its | ||
| 45 | parent, and its parent can use the other `ptrace' requests. */ | ||
| 46 | PTRACE_TRACEME = 0, | ||
| 47 | #define PT_TRACE_ME PTRACE_TRACEME | ||
| 48 | |||
| 49 | /* Return the word in the process's text space at address ADDR. */ | ||
| 50 | PTRACE_PEEKTEXT = 1, | ||
| 51 | #define PT_READ_I PTRACE_PEEKTEXT | ||
| 52 | |||
| 53 | /* Return the word in the process's data space at address ADDR. */ | ||
| 54 | PTRACE_PEEKDATA = 2, | ||
| 55 | #define PT_READ_D PTRACE_PEEKDATA | ||
| 56 | |||
| 57 | /* Return the word in the process's user area at offset ADDR. */ | ||
| 58 | PTRACE_PEEKUSER = 3, | ||
| 59 | #define PT_READ_U PTRACE_PEEKUSER | ||
| 60 | |||
| 61 | /* Write the word DATA into the process's text space at address ADDR. */ | ||
| 62 | PTRACE_POKETEXT = 4, | ||
| 63 | #define PT_WRITE_I PTRACE_POKETEXT | ||
| 64 | |||
| 65 | /* Write the word DATA into the process's data space at address ADDR. */ | ||
| 66 | PTRACE_POKEDATA = 5, | ||
| 67 | #define PT_WRITE_D PTRACE_POKEDATA | ||
| 68 | |||
| 69 | /* Write the word DATA into the process's user area at offset ADDR. */ | ||
| 70 | PTRACE_POKEUSER = 6, | ||
| 71 | #define PT_WRITE_U PTRACE_POKEUSER | ||
| 72 | |||
| 73 | /* Continue the process. */ | ||
| 74 | PTRACE_CONT = 7, | ||
| 75 | #define PT_CONTINUE PTRACE_CONT | ||
| 76 | |||
| 77 | /* Kill the process. */ | ||
| 78 | PTRACE_KILL = 8, | ||
| 79 | #define PT_KILL PTRACE_KILL | ||
| 80 | |||
| 81 | /* Single step the process. */ | ||
| 82 | PTRACE_SINGLESTEP = 9, | ||
| 83 | #define PT_STEP PTRACE_SINGLESTEP | ||
| 84 | |||
| 85 | /* Detach from a process attached to with PTRACE_ATTACH. */ | ||
| 86 | PTRACE_DETACH = 11, | ||
| 87 | #define PT_DETACH PTRACE_DETACH | ||
| 88 | |||
| 89 | /* This define is needed for older programs which were | ||
| 90 | trying to work around sparc-linux ptrace nastiness. */ | ||
| 91 | #define PTRACE_SUNDETACH PTRACE_DETACH | ||
| 92 | |||
| 93 | #if __WORDSIZE == 32 | ||
| 94 | |||
| 95 | /* Get all general purpose registers used by a processes. | ||
| 96 | This is not supported on all machines. */ | ||
| 97 | PTRACE_GETREGS = 12, | ||
| 98 | #define PT_GETREGS PTRACE_GETREGS | ||
| 99 | |||
| 100 | /* Set all general purpose registers used by a processes. | ||
| 101 | This is not supported on all machines. */ | ||
| 102 | PTRACE_SETREGS = 13, | ||
| 103 | #define PT_SETREGS PTRACE_SETREGS | ||
| 104 | |||
| 105 | /* Get all floating point registers used by a processes. | ||
| 106 | This is not supported on all machines. */ | ||
| 107 | PTRACE_GETFPREGS = 14, | ||
| 108 | #define PT_GETFPREGS PTRACE_GETFPREGS | ||
| 109 | |||
| 110 | /* Set all floating point registers used by a processes. | ||
| 111 | This is not supported on all machines. */ | ||
| 112 | PTRACE_SETFPREGS = 15, | ||
| 113 | #define PT_SETFPREGS PTRACE_SETFPREGS | ||
| 114 | |||
| 115 | #endif | ||
| 116 | |||
| 117 | /* Attach to a process that is already running. */ | ||
| 118 | PTRACE_ATTACH = 16, | ||
| 119 | #define PT_ATTACH PTRACE_ATTACH | ||
| 120 | |||
| 121 | /* Write several bytes at a time. */ | ||
| 122 | PTRACE_WRITEDATA = 17, | ||
| 123 | #define PTRACE_WRITEDATA PTRACE_WRITEDATA | ||
| 124 | |||
| 125 | /* Read several bytes at a time. */ | ||
| 126 | PTRACE_READTEXT = 18, | ||
| 127 | #define PTRACE_READTEXT PTRACE_READTEXT | ||
| 128 | #define PTRACE_READDATA PTRACE_READTEXT | ||
| 129 | |||
| 130 | /* Write several bytes at a time. */ | ||
| 131 | PTRACE_WRITETEXT = 19, | ||
| 132 | #define PTRACE_WRITETEXT PTRACE_WRITETEXT | ||
| 133 | |||
| 134 | #if __WORDSIZE == 64 | ||
| 135 | |||
| 136 | /* Get all general purpose registers used by a processes. | ||
| 137 | This is not supported on all machines. */ | ||
| 138 | PTRACE_GETREGS = 22, | ||
| 139 | #define PT_GETREGS PTRACE_GETREGS | ||
| 140 | |||
| 141 | /* Set all general purpose registers used by a processes. | ||
| 142 | This is not supported on all machines. */ | ||
| 143 | PTRACE_SETREGS = 23, | ||
| 144 | #define PT_SETREGS PTRACE_SETREGS | ||
| 145 | |||
| 146 | #endif | ||
| 147 | |||
| 148 | /* Continue and stop at the next entry to or return from syscall. */ | ||
| 149 | PTRACE_SYSCALL = 24, | ||
| 150 | #define PTRACE_SYSCALL PTRACE_SYSCALL | ||
| 151 | |||
| 152 | #if __WORDSIZE == 64 | ||
| 153 | |||
| 154 | /* Get all floating point registers used by a processes. | ||
| 155 | This is not supported on all machines. */ | ||
| 156 | PTRACE_GETFPREGS = 25, | ||
| 157 | #define PT_GETFPREGS PTRACE_GETFPREGS | ||
| 158 | |||
| 159 | /* Set all floating point registers used by a processes. | ||
| 160 | This is not supported on all machines. */ | ||
| 161 | PTRACE_SETFPREGS = 26, | ||
| 162 | #define PT_SETFPREGS PTRACE_SETFPREGS | ||
| 163 | |||
| 164 | #endif | ||
| 165 | |||
| 166 | /* Set ptrace filter options. */ | ||
| 167 | PTRACE_SETOPTIONS = 0x4200, | ||
| 168 | #define PT_SETOPTIONS PTRACE_SETOPTIONS | ||
| 169 | |||
| 170 | /* Get last ptrace message. */ | ||
| 171 | PTRACE_GETEVENTMSG = 0x4201, | ||
| 172 | #define PT_GETEVENTMSG PTRACE_GETEVENTMSG | ||
| 173 | |||
| 174 | /* Get siginfo for process. */ | ||
| 175 | PTRACE_GETSIGINFO = 0x4202, | ||
| 176 | #define PT_GETSIGINFO PTRACE_GETSIGINFO | ||
| 177 | |||
| 178 | /* Set new siginfo for process. */ | ||
| 179 | PTRACE_SETSIGINFO = 0x4203, | ||
| 180 | #define PT_SETSIGINFO PTRACE_SETSIGINFO | ||
| 181 | |||
| 182 | /* Get register content. */ | ||
| 183 | PTRACE_GETREGSET = 0x4204, | ||
| 184 | #define PTRACE_GETREGSET PTRACE_GETREGSET | ||
| 185 | |||
| 186 | /* Set register content. */ | ||
| 187 | PTRACE_SETREGSET = 0x4205, | ||
| 188 | #define PTRACE_SETREGSET PTRACE_SETREGSET | ||
| 189 | |||
| 190 | /* Like PTRACE_ATTACH, but do not force tracee to trap and do not affect | ||
| 191 | signal or group stop state. */ | ||
| 192 | PTRACE_SEIZE = 0x4206, | ||
| 193 | #define PTRACE_SEIZE PTRACE_SEIZE | ||
| 194 | |||
| 195 | /* Trap seized tracee. */ | ||
| 196 | PTRACE_INTERRUPT = 0x4207, | ||
| 197 | #define PTRACE_INTERRUPT PTRACE_INTERRUPT | ||
| 198 | |||
| 199 | /* Wait for next group event. */ | ||
| 200 | PTRACE_LISTEN = 0x4208, | ||
| 201 | #define PTRACE_LISTEN PTRACE_LISTEN | ||
| 202 | |||
| 203 | /* Retrieve siginfo_t structures without removing signals from a queue. */ | ||
| 204 | PTRACE_PEEKSIGINFO = 0x4209, | ||
| 205 | #define PTRACE_PEEKSIGINFO PTRACE_PEEKSIGINFO | ||
| 206 | |||
| 207 | /* Get the mask of blocked signals. */ | ||
| 208 | PTRACE_GETSIGMASK = 0x420a, | ||
| 209 | #define PTRACE_GETSIGMASK PTRACE_GETSIGMASK | ||
| 210 | |||
| 211 | /* Change the mask of blocked signals. */ | ||
| 212 | PTRACE_SETSIGMASK = 0x420b, | ||
| 213 | #define PTRACE_SETSIGMASK PTRACE_SETSIGMASK | ||
| 214 | |||
| 215 | /* Get seccomp BPF filters. */ | ||
| 216 | PTRACE_SECCOMP_GET_FILTER = 0x420c, | ||
| 217 | #define PTRACE_SECCOMP_GET_FILTER PTRACE_SECCOMP_GET_FILTER | ||
| 218 | |||
| 219 | /* Get seccomp BPF filter metadata. */ | ||
| 220 | PTRACE_SECCOMP_GET_METADATA = 0x420d, | ||
| 221 | #define PTRACE_SECCOMP_GET_METADATA PTRACE_SECCOMP_GET_METADATA | ||
| 222 | |||
| 223 | /* Get information about system call. */ | ||
| 224 | PTRACE_GET_SYSCALL_INFO = 0x420e, | ||
| 225 | #define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO | ||
| 226 | |||
| 227 | /* Get rseq configuration information. */ | ||
| 228 | PTRACE_GET_RSEQ_CONFIGURATION = 0x420f, | ||
| 229 | #define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION | ||
| 230 | |||
| 231 | /* Set configuration for syscall user dispatch. */ | ||
| 232 | PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG = 0x4210, | ||
| 233 | #define PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG \ | ||
| 234 | PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG | ||
| 235 | |||
| 236 | /* Get configuration for syscall user dispatch. */ | ||
| 237 | PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG = 0x4211 | ||
| 238 | #define PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG \ | ||
| 239 | PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG | ||
| 240 | }; | ||
| 241 | |||
| 242 | |||
| 243 | #include <bits/ptrace-shared.h> | ||
| 244 | |||
| 245 | __END_DECLS | ||
| 246 | |||
| 247 | #endif /* _SYS_PTRACE_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/sys/ucontext.h deleted-304| ... | @@ -1,304 +0,0 @@ | ||
| 1 | /* Copyright (C) 1998-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_UCONTEXT_H | ||
| 19 | #define _SYS_UCONTEXT_H	1 | ||
| 20 | |||
| 21 | #include <features.h> | ||
| 22 | |||
| 23 | #include <bits/types/sigset_t.h> | ||
| 24 | #include <bits/types/stack_t.h> | ||
| 25 | |||
| 26 | #include <bits/wordsize.h> | ||
| 27 | |||
| 28 | |||
| 29 | #ifdef __USE_MISC | ||
| 30 | # define __ctx(fld) fld | ||
| 31 | #else | ||
| 32 | # define __ctx(fld) __ ## fld | ||
| 33 | #endif | ||
| 34 | |||
| 35 | #if __WORDSIZE == 64 | ||
| 36 | |||
| 37 | #define __MC_NGREG	19 | ||
| 38 | #ifdef __USE_MISC | ||
| 39 | # define MC_TSTATE	0 | ||
| 40 | # define MC_PC		1 | ||
| 41 | # define MC_NPC		2 | ||
| 42 | # define MC_Y		3 | ||
| 43 | # define MC_G1		4 | ||
| 44 | # define MC_G2		5 | ||
| 45 | # define MC_G3		6 | ||
| 46 | # define MC_G4		7 | ||
| 47 | # define MC_G5		8 | ||
| 48 | # define MC_G6		9 | ||
| 49 | # define MC_G7		10 | ||
| 50 | # define MC_O0		11 | ||
| 51 | # define MC_O1		12 | ||
| 52 | # define MC_O2		13 | ||
| 53 | # define MC_O3		14 | ||
| 54 | # define MC_O4		15 | ||
| 55 | # define MC_O5		16 | ||
| 56 | # define MC_O6		17 | ||
| 57 | # define MC_O7		18 | ||
| 58 | # define MC_NGREG	__MC_NGREG | ||
| 59 | #endif | ||
| 60 | |||
| 61 | typedef unsigned long mc_greg_t; | ||
| 62 | typedef mc_greg_t mc_gregset_t[__MC_NGREG]; | ||
| 63 | |||
| 64 | #ifdef __USE_MISC | ||
| 65 | # define MC_MAXFPQ	16 | ||
| 66 | #endif | ||
| 67 | struct __mc_fq { | ||
| 68 | 	unsigned long	*__ctx(mcfq_addr); | ||
| 69 | 	unsigned int	__ctx(mcfq_insn); | ||
| 70 | }; | ||
| 71 | |||
| 72 | typedef struct { | ||
| 73 | 	union { | ||
| 74 | 		unsigned int	__ctx(sregs)[32]; | ||
| 75 | 		unsigned long	__ctx(dregs)[32]; | ||
| 76 | 		long double	__ctx(qregs)[16]; | ||
| 77 | 	} __ctx(mcfpu_fregs); | ||
| 78 | 	unsigned long	__ctx(mcfpu_fsr); | ||
| 79 | 	unsigned long	__ctx(mcfpu_fprs); | ||
| 80 | 	unsigned long	__ctx(mcfpu_gsr); | ||
| 81 | 	struct __mc_fq	*__ctx(mcfpu_fq); | ||
| 82 | 	unsigned char	__ctx(mcfpu_qcnt); | ||
| 83 | 	unsigned char	__ctx(mcfpu_qentsz); | ||
| 84 | 	unsigned char	__ctx(mcfpu_enab); | ||
| 85 | } mc_fpu_t; | ||
| 86 | |||
| 87 | typedef struct { | ||
| 88 | 	mc_gregset_t	__ctx(mc_gregs); | ||
| 89 | 	mc_greg_t	__ctx(mc_fp); | ||
| 90 | 	mc_greg_t	__ctx(mc_i7); | ||
| 91 | 	mc_fpu_t	__ctx(mc_fpregs); | ||
| 92 | } mcontext_t; | ||
| 93 | |||
| 94 | typedef struct ucontext_t { | ||
| 95 | 	struct ucontext_t	*uc_link; | ||
| 96 | 	unsigned long		__ctx(uc_flags); | ||
| 97 | 	unsigned long		__uc_sigmask; | ||
| 98 | 	mcontext_t		uc_mcontext; | ||
| 99 | 	stack_t			uc_stack; | ||
| 100 | 	sigset_t		uc_sigmask; | ||
| 101 | } ucontext_t; | ||
| 102 | |||
| 103 | #endif /* __WORDISIZE == 64 */ | ||
| 104 | |||
| 105 | /* | ||
| 106 | * Location of the users' stored registers relative to R0. | ||
| 107 | * Usage is as an index into a gregset_t array or as u.u_ar0[XX]. | ||
| 108 | */ | ||
| 109 | #ifdef __USE_MISC | ||
| 110 | # define REG_PSR (0) | ||
| 111 | # define REG_PC (1) | ||
| 112 | # define REG_nPC (2) | ||
| 113 | # define REG_Y (3) | ||
| 114 | # define REG_G1 (4) | ||
| 115 | # define REG_G2 (5) | ||
| 116 | # define REG_G3 (6) | ||
| 117 | # define REG_G4 (7) | ||
| 118 | # define REG_G5 (8) | ||
| 119 | # define REG_G6 (9) | ||
| 120 | # define REG_G7 (10) | ||
| 121 | # define REG_O0 (11) | ||
| 122 | # define REG_O1 (12) | ||
| 123 | # define REG_O2 (13) | ||
| 124 | # define REG_O3 (14) | ||
| 125 | # define REG_O4 (15) | ||
| 126 | # define REG_O5 (16) | ||
| 127 | # define REG_O6 (17) | ||
| 128 | # define REG_O7 (18) | ||
| 129 | #endif | ||
| 130 | |||
| 131 | /* | ||
| 132 | * A gregset_t is defined as an array type for compatibility with the reference | ||
| 133 | * source. This is important due to differences in the way the C language | ||
| 134 | * treats arrays and structures as parameters. | ||
| 135 | * | ||
| 136 | * Note that NGREG is really (sizeof (struct regs) / sizeof (greg_t)), | ||
| 137 | * but that the ABI defines it absolutely to be 21 (resp. 19). | ||
| 138 | */ | ||
| 139 | |||
| 140 | #if __WORDSIZE == 64 | ||
| 141 | |||
| 142 | # define __NGREG 21 | ||
| 143 | # ifdef __USE_MISC | ||
| 144 | # define REG_ASI	(19) | ||
| 145 | # define REG_FPRS (20) | ||
| 146 | |||
| 147 | # define NGREG __NGREG | ||
| 148 | # endif | ||
| 149 | typedef long greg_t; | ||
| 150 | |||
| 151 | #else /* __WORDSIZE == 32 */ | ||
| 152 | |||
| 153 | # define __NGREG 19 | ||
| 154 | # ifdef __USE_MISC | ||
| 155 | # define NGREG __NGREG | ||
| 156 | # endif | ||
| 157 | typedef int greg_t; | ||
| 158 | |||
| 159 | #endif /* __WORDSIZE == 32 */ | ||
| 160 | |||
| 161 | typedef greg_t gregset_t[__NGREG]; | ||
| 162 | |||
| 163 | /* | ||
| 164 | * The following structures define how a register window can appear on the | ||
| 165 | * stack. This structure is available (when required) through the `gwins' | ||
| 166 | * field of an mcontext (nested within ucontext). SPARC_MAXWINDOW is the | ||
| 167 | * maximum number of outstanding registers window defined in the SPARC | ||
| 168 | * architecture (*not* implementation). | ||
| 169 | */ | ||
| 170 | # define __SPARC_MAXREGWINDOW	31	/* max windows in SPARC arch. */ | ||
| 171 | #ifdef __USE_MISC | ||
| 172 | # define SPARC_MAXREGWINDOW	__SPARC_MAXREGWINDOW | ||
| 173 | #endif | ||
| 174 | struct __rwindow | ||
| 175 | { | ||
| 176 | greg_t __ctx(rw_local)[8];			/* locals */ | ||
| 177 | greg_t __ctx(rw_in)[8];			/* ins */ | ||
| 178 | }; | ||
| 179 | |||
| 180 | #ifdef __USE_MISC | ||
| 181 | # define rw_fp __ctx(rw_in)[6]		/* frame pointer */ | ||
| 182 | # define rw_rtn __ctx(rw_in)[7]		/* return address */ | ||
| 183 | #endif | ||
| 184 | |||
| 185 | typedef struct | ||
| 186 | { | ||
| 187 | int __ctx(wbcnt); | ||
| 188 | int *__ctx(spbuf)[__SPARC_MAXREGWINDOW]; | ||
| 189 | struct __rwindow __ctx(wbuf)[__SPARC_MAXREGWINDOW]; | ||
| 190 | } gwindows_t; | ||
| 191 | |||
| 192 | /* | ||
| 193 | * Floating point definitions. | ||
| 194 | */ | ||
| 195 | |||
| 196 | #ifdef __USE_MISC | ||
| 197 | # define MAXFPQ	16	/* max # of fpu queue entries currently supported */ | ||
| 198 | #endif | ||
| 199 | |||
| 200 | /* | ||
| 201 | * struct fq defines the minimal format of a floating point instruction queue | ||
| 202 | * entry. The size of entries in the floating point queue are implementation | ||
| 203 | * dependent. The union FQu is guaranteed to be the first field in any ABI | ||
| 204 | * conformant system implementation. Any additional fields provided by an | ||
| 205 | * implementation should not be used applications designed to be ABI conformant. */ | ||
| 206 | |||
| 207 | struct __fpq | ||
| 208 | { | ||
| 209 | unsigned long *__ctx(fpq_addr);		/* address */ | ||
| 210 | unsigned long __ctx(fpq_instr);		/* instruction */ | ||
| 211 | }; | ||
| 212 | |||
| 213 | struct __fq | ||
| 214 | { | ||
| 215 | union				/* FPU inst/addr queue */ | ||
| 216 | { | ||
| 217 | double __ctx(whole); | ||
| 218 | struct __fpq __ctx(fpq); | ||
| 219 | } __ctx(FQu); | ||
| 220 | }; | ||
| 221 | |||
| 222 | #ifdef __USE_MISC | ||
| 223 | # define FPU_REGS_TYPE unsigned | ||
| 224 | # define FPU_DREGS_TYPE unsigned long long | ||
| 225 | # define V7_FPU_FSR_TYPE unsigned | ||
| 226 | # define V9_FPU_FSR_TYPE unsigned long long | ||
| 227 | # define V9_FPU_FPRS_TYPE unsigned | ||
| 228 | #endif | ||
| 229 | |||
| 230 | #if __WORDSIZE == 64 | ||
| 231 | |||
| 232 | typedef struct | ||
| 233 | { | ||
| 234 | union {				/* FPU floating point regs */ | ||
| 235 | unsigned		__ctx(fpu_regs)[32];	/* 32 singles */ | ||
| 236 | double __ctx(fpu_dregs)[32];	/* 32 doubles */ | ||
| 237 | long double	__ctx(fpu_qregs)[16]; /* 16 quads */ | ||
| 238 | } __ctx(fpu_fr); | ||
| 239 | struct __fq *__ctx(fpu_q);		/* ptr to array of FQ entries */ | ||
| 240 | unsigned long __ctx(fpu_fsr);		/* FPU status register */ | ||
| 241 | unsigned char __ctx(fpu_qcnt);		/* # of entries in saved FQ */ | ||
| 242 | unsigned char __ctx(fpu_q_entrysize);	/* # of bytes per FQ entry */ | ||
| 243 | unsigned char __ctx(fpu_en);		/* flag signifying fpu in use */ | ||
| 244 | } fpregset_t; | ||
| 245 | |||
| 246 | #else /* __WORDSIZE == 32 */ | ||
| 247 | |||
| 248 | typedef struct | ||
| 249 | { | ||
| 250 | union {				/* FPU floating point regs */ | ||
| 251 | __extension__ unsigned long long __ctx(fpu_regs)[32];	/* 32 singles */ | ||
| 252 | double __ctx(fpu_dregs)[16];	/* 16 doubles */ | ||
| 253 | } __ctx(fpu_fr); | ||
| 254 | struct __fq *__ctx(fpu_q);		/* ptr to array of FQ entries */ | ||
| 255 | unsigned __ctx(fpu_fsr);		/* FPU status register */ | ||
| 256 | unsigned char __ctx(fpu_qcnt);		/* # of entries in saved FQ */ | ||
| 257 | unsigned char __ctx(fpu_q_entrysize);	/* # of bytes per FQ entry */ | ||
| 258 | unsigned char __ctx(fpu_en);		/* flag signifying fpu in use */ | ||
| 259 | } fpregset_t; | ||
| 260 | |||
| 261 | /* | ||
| 262 | * The following structure is for associating extra register state with | ||
| 263 | * the ucontext structure and is kept within the uc_mcontext filler area. | ||
| 264 | * | ||
| 265 | * If (xrs_id == XRS_ID) then the xrs_ptr field is a valid pointer to | ||
| 266 | * extra register state. The exact format of the extra register state | ||
| 267 | * pointed to by xrs_ptr is platform-dependent. | ||
| 268 | * | ||
| 269 | * Note: a platform may or may not manage extra register state. | ||
| 270 | */ | ||
| 271 | typedef struct | ||
| 272 | { | ||
| 273 | unsigned int __ctx(xrs_id);		/* indicates xrs_ptr validity */ | ||
| 274 | void * __ctx(xrs_ptr);		/* ptr to extra reg state */ | ||
| 275 | } xrs_t; | ||
| 276 | |||
| 277 | #ifdef __USE_MISC | ||
| 278 | # define XRS_ID	0x78727300		/* the string "xrs" */ | ||
| 279 | #endif | ||
| 280 | |||
| 281 | typedef struct | ||
| 282 | { | ||
| 283 | gregset_t __ctx(gregs);		/* general register set */ | ||
| 284 | gwindows_t *__ctx(gwins);		/* POSSIBLE pointer to register | ||
| 285 | 					 windows */ | ||
| 286 | fpregset_t __ctx(fpregs);		/* floating point register set */ | ||
| 287 | xrs_t __ctx(xrs);		/* POSSIBLE extra register state | ||
| 288 | 					 association */ | ||
| 289 | long __glibc_reserved1[19]; | ||
| 290 | } mcontext_t; | ||
| 291 | |||
| 292 | |||
| 293 | /* Userlevel context. */ | ||
| 294 | typedef struct ucontext_t | ||
| 295 | { | ||
| 296 | unsigned long __ctx(uc_flags); | ||
| 297 | struct ucontext_t *uc_link; | ||
| 298 | sigset_t	 uc_sigmask; | ||
| 299 | stack_t uc_stack; | ||
| 300 | mcontext_t uc_mcontext; | ||
| 301 | } ucontext_t; | ||
| 302 | |||
| 303 | #endif /* __WORDSIZE == 32 */ | ||
| 304 | #endif /* sys/ucontext.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/sparc64-linux-gnu/sys/user.h deleted-86| ... | @@ -1,86 +0,0 @@ | ||
| 1 | /* Copyright (C) 2003-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_USER_H | ||
| 19 | #define _SYS_USER_H	1 | ||
| 20 | |||
| 21 | #include <stddef.h> | ||
| 22 | |||
| 23 | struct sunos_regs | ||
| 24 | { | ||
| 25 | unsigned int psr, pc, npc, y; | ||
| 26 | unsigned int regs[15]; | ||
| 27 | }; | ||
| 28 | |||
| 29 | struct sunos_fpqueue | ||
| 30 | { | ||
| 31 | unsigned int *addr; | ||
| 32 | unsigned int inst; | ||
| 33 | }; | ||
| 34 | |||
| 35 | struct sunos_fp | ||
| 36 | { | ||
| 37 | union | ||
| 38 | { | ||
| 39 | unsigned int regs[32]; | ||
| 40 | double reg_dbls[16]; | ||
| 41 | } fregs; | ||
| 42 | unsigned int fsr; | ||
| 43 | unsigned int flags; | ||
| 44 | unsigned int extra; | ||
| 45 | unsigned int fpq_count; | ||
| 46 | struct sunos_fpqueue fpq[16]; | ||
| 47 | }; | ||
| 48 | |||
| 49 | struct sunos_fpu | ||
| 50 | { | ||
| 51 | struct sunos_fp fpstatus; | ||
| 52 | }; | ||
| 53 | |||
| 54 | /* The SunOS core file header layout. */ | ||
| 55 | struct user { | ||
| 56 | unsigned int magic; | ||
| 57 | unsigned int len; | ||
| 58 | struct sunos_regs regs; | ||
| 59 | struct | ||
| 60 | { | ||
| 61 | unsigned char a_dynamic :1; | ||
| 62 | unsigned char a_toolversion :7; | ||
| 63 | unsigned char a_machtype; | ||
| 64 | unsigned short a_info; | ||
| 65 | unsigned int a_text; | ||
| 66 | unsigned int a_data; | ||
| 67 | unsigned int a_bss; | ||
| 68 | unsigned int a_syms; | ||
| 69 | unsigned int a_entry; | ||
| 70 | unsigned int a_trsize; | ||
| 71 | unsigned int a_drsize; | ||
| 72 | } uexec; | ||
| 73 | int signal; | ||
| 74 | size_t u_tsize; | ||
| 75 | size_t u_dsize; | ||
| 76 | size_t u_ssize; | ||
| 77 | char u_comm[17]; | ||
| 78 | struct sunos_fpu fpu; | ||
| 79 | unsigned int sigcode; | ||
| 80 | }; | ||
| 81 | |||
| 82 | #define NBPG			0x2000 | ||
| 83 | #define UPAGES			1 | ||
| 84 | #define SUNOS_CORE_MAGIC	0x080456 | ||
| 85 | |||
| 86 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/x86-linux-gnu/gnu/lib-names-64.h created+27| ... | @@ -0,0 +1,27 @@ | ||
| 1 | /* This file is automatically generated. */ | ||
| 2 | #ifndef __GNU_LIB_NAMES_H | ||
| 3 | # error "Never use <gnu/lib-names-64.h> directly; include <gnu/lib-names.h> instead." | ||
| 4 | #endif | ||
| 5 | |||
| 6 | #define LD_LINUX_X86_64_SO "ld-linux-x86-64.so.2" | ||
| 7 | #define LD_SO "ld-linux-x86-64.so.2" | ||
| 8 | #define LIBANL_SO "libanl.so.1" | ||
| 9 | #define LIBBROKENLOCALE_SO "libBrokenLocale.so.1" | ||
| 10 | #define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0" | ||
| 11 | #define LIBC_SO "libc.so.6" | ||
| 12 | #define LIBDL_SO "libdl.so.2" | ||
| 13 | #define LIBGCC_S_SO "libgcc_s.so.1" | ||
| 14 | #define LIBMVEC_SO "libmvec.so.1" | ||
| 15 | #define LIBM_SO "libm.so.6" | ||
| 16 | #define LIBNSL_SO "libnsl.so.1" | ||
| 17 | #define LIBNSS_COMPAT_SO "libnss_compat.so.2" | ||
| 18 | #define LIBNSS_DB_SO "libnss_db.so.2" | ||
| 19 | #define LIBNSS_DNS_SO "libnss_dns.so.2" | ||
| 20 | #define LIBNSS_FILES_SO "libnss_files.so.2" | ||
| 21 | #define LIBNSS_HESIOD_SO "libnss_hesiod.so.2" | ||
| 22 | #define LIBNSS_LDAP_SO "libnss_ldap.so.2" | ||
| 23 | #define LIBPTHREAD_SO "libpthread.so.0" | ||
| 24 | #define LIBRESOLV_SO "libresolv.so.2" | ||
| 25 | #define LIBRT_SO "librt.so.1" | ||
| 26 | #define LIBTHREAD_DB_SO "libthread_db.so.1" | ||
| 27 | #define LIBUTIL_SO "libutil.so.1" | ||
| \ No newline at end of file | |||
lib/libc/include/x86-linux-gnu/gnu/lib-names-x32.h created+27| ... | @@ -0,0 +1,27 @@ | ||
| 1 | /* This file is automatically generated. */ | ||
| 2 | #ifndef __GNU_LIB_NAMES_H | ||
| 3 | # error "Never use <gnu/lib-names-x32.h> directly; include <gnu/lib-names.h> instead." | ||
| 4 | #endif | ||
| 5 | |||
| 6 | #define LD_LINUX_X32_SO "ld-linux-x32.so.2" | ||
| 7 | #define LD_SO "ld-linux-x32.so.2" | ||
| 8 | #define LIBANL_SO "libanl.so.1" | ||
| 9 | #define LIBBROKENLOCALE_SO "libBrokenLocale.so.1" | ||
| 10 | #define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0" | ||
| 11 | #define LIBC_SO "libc.so.6" | ||
| 12 | #define LIBDL_SO "libdl.so.2" | ||
| 13 | #define LIBGCC_S_SO "libgcc_s.so.1" | ||
| 14 | #define LIBMVEC_SO "libmvec.so.1" | ||
| 15 | #define LIBM_SO "libm.so.6" | ||
| 16 | #define LIBNSL_SO "libnsl.so.1" | ||
| 17 | #define LIBNSS_COMPAT_SO "libnss_compat.so.2" | ||
| 18 | #define LIBNSS_DB_SO "libnss_db.so.2" | ||
| 19 | #define LIBNSS_DNS_SO "libnss_dns.so.2" | ||
| 20 | #define LIBNSS_FILES_SO "libnss_files.so.2" | ||
| 21 | #define LIBNSS_HESIOD_SO "libnss_hesiod.so.2" | ||
| 22 | #define LIBNSS_LDAP_SO "libnss_ldap.so.2" | ||
| 23 | #define LIBPTHREAD_SO "libpthread.so.0" | ||
| 24 | #define LIBRESOLV_SO "libresolv.so.2" | ||
| 25 | #define LIBRT_SO "librt.so.1" | ||
| 26 | #define LIBTHREAD_DB_SO "libthread_db.so.1" | ||
| 27 | #define LIBUTIL_SO "libutil.so.1" | ||
| \ No newline at end of file | |||
lib/libc/include/x86-linux-gnu/gnu/stubs-64.h created+17| ... | @@ -0,0 +1,17 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | It defines a symbol `__stub_FUNCTION' for each function | ||
| 3 | in the C library which is a stub, meaning it will fail | ||
| 4 | every time called, usually setting errno to ENOSYS. */ | ||
| 5 | |||
| 6 | #ifdef _LIBC | ||
| 7 | #error Applications may not define the macro _LIBC | ||
| 8 | #endif | ||
| 9 | |||
| 10 | #define __stub___compat_bdflush | ||
| 11 | #define __stub_chflags | ||
| 12 | #define __stub_fchflags | ||
| 13 | #define __stub_gtty | ||
| 14 | #define __stub_revoke | ||
| 15 | #define __stub_setlogin | ||
| 16 | #define __stub_sigreturn | ||
| 17 | #define __stub_stty | ||
| \ No newline at end of file | |||
lib/libc/include/x86-linux-gnu/gnu/stubs-x32.h created+22| ... | @@ -0,0 +1,22 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | It defines a symbol `__stub_FUNCTION' for each function | ||
| 3 | in the C library which is a stub, meaning it will fail | ||
| 4 | every time called, usually setting errno to ENOSYS. */ | ||
| 5 | |||
| 6 | #ifdef _LIBC | ||
| 7 | #error Applications may not define the macro _LIBC | ||
| 8 | #endif | ||
| 9 | |||
| 10 | #define __stub___compat_bdflush | ||
| 11 | #define __stub___compat_create_module | ||
| 12 | #define __stub___compat_get_kernel_syms | ||
| 13 | #define __stub___compat_nfsservctl | ||
| 14 | #define __stub___compat_query_module | ||
| 15 | #define __stub___compat_uselib | ||
| 16 | #define __stub_chflags | ||
| 17 | #define __stub_fchflags | ||
| 18 | #define __stub_gtty | ||
| 19 | #define __stub_revoke | ||
| 20 | #define __stub_setlogin | ||
| 21 | #define __stub_sigreturn | ||
| 22 | #define __stub_stty | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnu/bits/a.out.h deleted-11| ... | @@ -1,11 +0,0 @@ | ||
| 1 | #ifndef __A_OUT_GNU_H__ | ||
| 2 | # error "Never use <bits/a.out.h> directly; include <a.out.h> instead." | ||
| 3 | #endif | ||
| 4 | |||
| 5 | #ifdef __x86_64__ | ||
| 6 | |||
| 7 | /* Signal to users of this header that this architecture really doesn't | ||
| 8 | support a.out binary format. */ | ||
| 9 | #define __NO_A_OUT_SUPPORT 1 | ||
| 10 | |||
| 11 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnu/bits/dl_find_object.h deleted-29| ... | @@ -1,29 +0,0 @@ | ||
| 1 | /* x86 definitions for finding objects. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _DLFCN_H | ||
| 20 | # error "Never use <bits/dl_find_object.h> directly; include <dlfcn.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifdef __x86_64__ | ||
| 24 | # define DLFO_STRUCT_HAS_EH_DBASE 0 | ||
| 25 | #else | ||
| 26 | # define DLFO_STRUCT_HAS_EH_DBASE 1 | ||
| 27 | #endif | ||
| 28 | #define DLFO_STRUCT_HAS_EH_COUNT 0 | ||
| 29 | #define DLFO_EH_SEGMENT_TYPE PT_GNU_EH_FRAME | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnu/bits/endianness.h deleted-11| ... | @@ -1,11 +0,0 @@ | ||
| 1 | #ifndef _BITS_ENDIANNESS_H | ||
| 2 | #define _BITS_ENDIANNESS_H 1 | ||
| 3 | |||
| 4 | #ifndef _BITS_ENDIAN_H | ||
| 5 | # error "Never use <bits/endianness.h> directly; include <endian.h> instead." | ||
| 6 | #endif | ||
| 7 | |||
| 8 | /* i386/x86_64 are little-endian. */ | ||
| 9 | #define __BYTE_ORDER __LITTLE_ENDIAN | ||
| 10 | |||
| 11 | #endif /* bits/endianness.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnu/bits/environments.h deleted-105| ... | @@ -1,105 +0,0 @@ | ||
| 1 | /* Copyright (C) 1999-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _UNISTD_H | ||
| 19 | # error "Never include this file directly. Use <unistd.h> instead" | ||
| 20 | #endif | ||
| 21 | |||
| 22 | #include <bits/wordsize.h> | ||
| 23 | |||
| 24 | /* This header should define the following symbols under the described | ||
| 25 | situations. A value `1' means that the model is always supported, | ||
| 26 | `-1' means it is never supported. Undefined means it cannot be | ||
| 27 | statically decided. | ||
| 28 | |||
| 29 | _POSIX_V7_ILP32_OFF32 32bit int, long, pointers, and off_t type | ||
| 30 | _POSIX_V7_ILP32_OFFBIG 32bit int, long, and pointers and larger off_t type | ||
| 31 | |||
| 32 | _POSIX_V7_LP64_OFF32	 64bit long and pointers and 32bit off_t type | ||
| 33 | _POSIX_V7_LPBIG_OFFBIG 64bit long and pointers and large off_t type | ||
| 34 | |||
| 35 | The macros _POSIX_V6_ILP32_OFF32, _POSIX_V6_ILP32_OFFBIG, | ||
| 36 | _POSIX_V6_LP64_OFF32, _POSIX_V6_LPBIG_OFFBIG, _XBS5_ILP32_OFF32, | ||
| 37 | _XBS5_ILP32_OFFBIG, _XBS5_LP64_OFF32, and _XBS5_LPBIG_OFFBIG were | ||
| 38 | used in previous versions of the Unix standard and are available | ||
| 39 | only for compatibility. | ||
| 40 | */ | ||
| 41 | |||
| 42 | #if __WORDSIZE == 64 | ||
| 43 | |||
| 44 | /* Environments with 32-bit wide pointers are optionally provided. | ||
| 45 | Therefore following macros aren't defined: | ||
| 46 | # undef _POSIX_V7_ILP32_OFF32 | ||
| 47 | # undef _POSIX_V7_ILP32_OFFBIG | ||
| 48 | # undef _POSIX_V6_ILP32_OFF32 | ||
| 49 | # undef _POSIX_V6_ILP32_OFFBIG | ||
| 50 | # undef _XBS5_ILP32_OFF32 | ||
| 51 | # undef _XBS5_ILP32_OFFBIG | ||
| 52 | and users need to check at runtime. */ | ||
| 53 | |||
| 54 | /* We also have no use (for now) for an environment with bigger pointers | ||
| 55 | and offsets. */ | ||
| 56 | # define _POSIX_V7_LPBIG_OFFBIG	-1 | ||
| 57 | # define _POSIX_V6_LPBIG_OFFBIG	-1 | ||
| 58 | # define _XBS5_LPBIG_OFFBIG	-1 | ||
| 59 | |||
| 60 | /* By default we have 64-bit wide `long int', pointers and `off_t'. */ | ||
| 61 | # define _POSIX_V7_LP64_OFF64	1 | ||
| 62 | # define _POSIX_V6_LP64_OFF64	1 | ||
| 63 | # define _XBS5_LP64_OFF64	1 | ||
| 64 | |||
| 65 | #else /* __WORDSIZE == 32 */ | ||
| 66 | |||
| 67 | /* We have 32-bit wide `int', `long int' and pointers and all platforms | ||
| 68 | support LFS. -mx32 has 64-bit wide `off_t'. */ | ||
| 69 | # define _POSIX_V7_ILP32_OFFBIG	1 | ||
| 70 | # define _POSIX_V6_ILP32_OFFBIG 1 | ||
| 71 | # define _XBS5_ILP32_OFFBIG	1 | ||
| 72 | |||
| 73 | # ifndef __x86_64__ | ||
| 74 | /* -m32 has 32-bit wide `off_t'. */ | ||
| 75 | # define _POSIX_V7_ILP32_OFF32	1 | ||
| 76 | # define _POSIX_V6_ILP32_OFF32	1 | ||
| 77 | # define _XBS5_ILP32_OFF32	1 | ||
| 78 | # endif | ||
| 79 | |||
| 80 | /* We optionally provide an environment with the above size but an 64-bit | ||
| 81 | side `off_t'. Therefore we don't define _POSIX_V7_ILP32_OFFBIG. */ | ||
| 82 | |||
| 83 | /* Environments with 64-bit wide pointers can be provided, | ||
| 84 | so these macros aren't defined: | ||
| 85 | # undef _POSIX_V7_LP64_OFF64 | ||
| 86 | # undef _POSIX_V7_LPBIG_OFFBIG | ||
| 87 | # undef _POSIX_V6_LP64_OFF64 | ||
| 88 | # undef _POSIX_V6_LPBIG_OFFBIG | ||
| 89 | # undef _XBS5_LP64_OFF64 | ||
| 90 | # undef _XBS5_LPBIG_OFFBIG | ||
| 91 | and sysconf tests for it at runtime. */ | ||
| 92 | |||
| 93 | #endif /* __WORDSIZE == 32 */ | ||
| 94 | |||
| 95 | #define __ILP32_OFF32_CFLAGS	"-m32" | ||
| 96 | #define __ILP32_OFF32_LDFLAGS	"-m32" | ||
| 97 | #if defined __x86_64__ && defined __ILP32__ | ||
| 98 | # define __ILP32_OFFBIG_CFLAGS	"-mx32" | ||
| 99 | # define __ILP32_OFFBIG_LDFLAGS	"-mx32" | ||
| 100 | #else | ||
| 101 | # define __ILP32_OFFBIG_CFLAGS	"-m32 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" | ||
| 102 | # define __ILP32_OFFBIG_LDFLAGS	"-m32" | ||
| 103 | #endif | ||
| 104 | #define __LP64_OFF64_CFLAGS	"-m64" | ||
| 105 | #define __LP64_OFF64_LDFLAGS	"-m64" | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnu/bits/epoll.h deleted-29| ... | @@ -1,29 +0,0 @@ | ||
| 1 | /* Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_SYS_EPOLL_H | ||
| 19 | # error "Never use <bits/epoll.h> directly; include <sys/epoll.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Flags to be passed to epoll_create1. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | EPOLL_CLOEXEC = 02000000 | ||
| 26 | #define EPOLL_CLOEXEC EPOLL_CLOEXEC | ||
| 27 | }; | ||
| 28 | |||
| 29 | #define __EPOLL_PACKED __attribute__ ((__packed__)) | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnu/bits/fcntl.h deleted-61| ... | @@ -1,61 +0,0 @@ | ||
| 1 | /* O_*, F_*, FD_* bit values for Linux/x86. | ||
| 2 | Copyright (C) 2001-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _FCNTL_H | ||
| 20 | # error "Never use <bits/fcntl.h> directly; include <fcntl.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifdef __x86_64__ | ||
| 24 | # define __O_LARGEFILE	0 | ||
| 25 | #endif | ||
| 26 | |||
| 27 | #ifdef __x86_64__ | ||
| 28 | /* Not necessary, we always have 64-bit offsets. */ | ||
| 29 | # define F_GETLK64	5	/* Get record locking info. */ | ||
| 30 | # define F_SETLK64	6	/* Set record locking info (non-blocking). */ | ||
| 31 | # define F_SETLKW64	7	/* Set record locking info (blocking).	*/ | ||
| 32 | #endif | ||
| 33 | |||
| 34 | |||
| 35 | struct flock | ||
| 36 | { | ||
| 37 | short int l_type;	/* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK.	*/ | ||
| 38 | short int l_whence;	/* Where `l_start' is relative to (like `lseek'). */ | ||
| 39 | #ifndef __USE_FILE_OFFSET64 | ||
| 40 | __off_t l_start;	/* Offset where the lock begins. */ | ||
| 41 | __off_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 42 | #else | ||
| 43 | __off64_t l_start;	/* Offset where the lock begins. */ | ||
| 44 | __off64_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 45 | #endif | ||
| 46 | __pid_t l_pid;	/* Process holding the lock. */ | ||
| 47 | }; | ||
| 48 | |||
| 49 | #ifdef __USE_LARGEFILE64 | ||
| 50 | struct flock64 | ||
| 51 | { | ||
| 52 | short int l_type;	/* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK.	*/ | ||
| 53 | short int l_whence;	/* Where `l_start' is relative to (like `lseek'). */ | ||
| 54 | __off64_t l_start;	/* Offset where the lock begins. */ | ||
| 55 | __off64_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 56 | __pid_t l_pid;	/* Process holding the lock. */ | ||
| 57 | }; | ||
| 58 | #endif | ||
| 59 | |||
| 60 | /* Include generic Linux declarations. */ | ||
| 61 | #include <bits/fcntl-linux.h> | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnu/bits/fenv.h deleted-116| ... | @@ -1,116 +0,0 @@ | ||
| 1 | /* Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _FENV_H | ||
| 19 | # error "Never use <bits/fenv.h> directly; include <fenv.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Define bits representing the exception. We use the bit positions | ||
| 23 | of the appropriate bits in the FPU control word. */ | ||
| 24 | enum | ||
| 25 | { | ||
| 26 | FE_INVALID = | ||
| 27 | #define FE_INVALID	0x01 | ||
| 28 | FE_INVALID, | ||
| 29 | __FE_DENORM = 0x02, | ||
| 30 | FE_DIVBYZERO = | ||
| 31 | #define FE_DIVBYZERO	0x04 | ||
| 32 | FE_DIVBYZERO, | ||
| 33 | FE_OVERFLOW = | ||
| 34 | #define FE_OVERFLOW	0x08 | ||
| 35 | FE_OVERFLOW, | ||
| 36 | FE_UNDERFLOW = | ||
| 37 | #define FE_UNDERFLOW	0x10 | ||
| 38 | FE_UNDERFLOW, | ||
| 39 | FE_INEXACT = | ||
| 40 | #define FE_INEXACT	0x20 | ||
| 41 | FE_INEXACT | ||
| 42 | }; | ||
| 43 | |||
| 44 | #define FE_ALL_EXCEPT \ | ||
| 45 | 	(FE_INEXACT | FE_DIVBYZERO | FE_UNDERFLOW | FE_OVERFLOW | FE_INVALID) | ||
| 46 | |||
| 47 | /* The ix87 FPU supports all of the four defined rounding modes. We | ||
| 48 | use again the bit positions in the FPU control word as the values | ||
| 49 | for the appropriate macros. */ | ||
| 50 | enum | ||
| 51 | { | ||
| 52 | FE_TONEAREST = | ||
| 53 | #define FE_TONEAREST	0 | ||
| 54 | FE_TONEAREST, | ||
| 55 | FE_DOWNWARD = | ||
| 56 | #define FE_DOWNWARD	0x400 | ||
| 57 | FE_DOWNWARD, | ||
| 58 | FE_UPWARD = | ||
| 59 | #define FE_UPWARD	0x800 | ||
| 60 | FE_UPWARD, | ||
| 61 | FE_TOWARDZERO = | ||
| 62 | #define FE_TOWARDZERO	0xc00 | ||
| 63 | FE_TOWARDZERO | ||
| 64 | }; | ||
| 65 | |||
| 66 | |||
| 67 | /* Type representing exception flags. */ | ||
| 68 | typedef unsigned short int fexcept_t; | ||
| 69 | |||
| 70 | |||
| 71 | /* Type representing floating-point environment. This structure | ||
| 72 | corresponds to the layout of the block written by the `fstenv' | ||
| 73 | instruction and has additional fields for the contents of the MXCSR | ||
| 74 | register as written by the `stmxcsr' instruction. */ | ||
| 75 | typedef struct | ||
| 76 | { | ||
| 77 | unsigned short int __control_word; | ||
| 78 | unsigned short int __glibc_reserved1; | ||
| 79 | unsigned short int __status_word; | ||
| 80 | unsigned short int __glibc_reserved2; | ||
| 81 | unsigned short int __tags; | ||
| 82 | unsigned short int __glibc_reserved3; | ||
| 83 | unsigned int __eip; | ||
| 84 | unsigned short int __cs_selector; | ||
| 85 | unsigned int __opcode:11; | ||
| 86 | unsigned int __glibc_reserved4:5; | ||
| 87 | unsigned int __data_offset; | ||
| 88 | unsigned short int __data_selector; | ||
| 89 | unsigned short int __glibc_reserved5; | ||
| 90 | #ifdef __x86_64__ | ||
| 91 | unsigned int __mxcsr; | ||
| 92 | #endif | ||
| 93 | } | ||
| 94 | fenv_t; | ||
| 95 | |||
| 96 | /* If the default argument is used we use this value. */ | ||
| 97 | #define FE_DFL_ENV	((const fenv_t *) -1) | ||
| 98 | |||
| 99 | #ifdef __USE_GNU | ||
| 100 | /* Floating-point environment where none of the exception is masked. */ | ||
| 101 | # define FE_NOMASK_ENV	((const fenv_t *) -2) | ||
| 102 | #endif | ||
| 103 | |||
| 104 | #if __GLIBC_USE (IEC_60559_BFP_EXT_C23) | ||
| 105 | /* Type representing floating-point control modes. */ | ||
| 106 | typedef struct | ||
| 107 | { | ||
| 108 | unsigned short int __control_word; | ||
| 109 | unsigned short int __glibc_reserved; | ||
| 110 | unsigned int __mxcsr; | ||
| 111 | } | ||
| 112 | femode_t; | ||
| 113 | |||
| 114 | /* Default floating-point control modes. */ | ||
| 115 | # define FE_DFL_MODE	((const femode_t *) -1L) | ||
| 116 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnu/bits/floatn.h deleted-129| ... | @@ -1,129 +0,0 @@ | ||
| 1 | /* Macros to control TS 18661-3 glibc features on x86. | ||
| 2 | Copyright (C) 2017-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_FLOATN_H | ||
| 20 | #define _BITS_FLOATN_H | ||
| 21 | |||
| 22 | #include <features.h> | ||
| 23 | |||
| 24 | /* Defined to 1 if the current compiler invocation provides a | ||
| 25 | floating-point type with the IEEE 754 binary128 format, and this | ||
| 26 | glibc includes corresponding *f128 interfaces for it. The required | ||
| 27 | libgcc support was added some time after the basic compiler | ||
| 28 | support, for x86_64 and x86. */ | ||
| 29 | #if (defined __x86_64__							\ | ||
| 30 | ? __GNUC_PREREQ (4, 3)						\ | ||
| 31 | : (defined __GNU__ ? __GNUC_PREREQ (4, 5) : __GNUC_PREREQ (4, 4))) \ | ||
| 32 | || __glibc_clang_prereq (3, 4) | ||
| 33 | # define __HAVE_FLOAT128 1 | ||
| 34 | #else | ||
| 35 | # define __HAVE_FLOAT128 0 | ||
| 36 | #endif | ||
| 37 | |||
| 38 | /* Defined to 1 if __HAVE_FLOAT128 is 1 and the type is ABI-distinct | ||
| 39 | from the default float, double and long double types in this glibc. */ | ||
| 40 | #if __HAVE_FLOAT128 | ||
| 41 | # define __HAVE_DISTINCT_FLOAT128 1 | ||
| 42 | #else | ||
| 43 | # define __HAVE_DISTINCT_FLOAT128 0 | ||
| 44 | #endif | ||
| 45 | |||
| 46 | /* Defined to 1 if the current compiler invocation provides a | ||
| 47 | floating-point type with the right format for _Float64x, and this | ||
| 48 | glibc includes corresponding *f64x interfaces for it. */ | ||
| 49 | #define __HAVE_FLOAT64X 1 | ||
| 50 | |||
| 51 | /* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format | ||
| 52 | of long double. Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has | ||
| 53 | the format of _Float128, which must be different from that of long | ||
| 54 | double. */ | ||
| 55 | #define __HAVE_FLOAT64X_LONG_DOUBLE 1 | ||
| 56 | |||
| 57 | #ifndef __ASSEMBLER__ | ||
| 58 | |||
| 59 | /* Defined to concatenate the literal suffix to be used with _Float128 | ||
| 60 | types, if __HAVE_FLOAT128 is 1. */ | ||
| 61 | # if __HAVE_FLOAT128 | ||
| 62 | # if !__GNUC_PREREQ (7, 0) \ | ||
| 63 | || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) \ | ||
| 64 | || defined __clang__ | ||
| 65 | /* The literal suffix f128 exists only since GCC 7.0. */ | ||
| 66 | # define __f128(x) x##q | ||
| 67 | # else | ||
| 68 | # define __f128(x) x##f128 | ||
| 69 | # endif | ||
| 70 | # endif | ||
| 71 | |||
| 72 | /* Defined to a complex binary128 type if __HAVE_FLOAT128 is 1. */ | ||
| 73 | # if __HAVE_FLOAT128 | ||
| 74 | # if !__GNUC_PREREQ (7, 0) \ | ||
| 75 | || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) \ | ||
| 76 | || defined __clang__ | ||
| 77 | /* Add a typedef for older GCC compilers which don't natively support | ||
| 78 | _Complex _Float128. */ | ||
| 79 | typedef _Complex float __cfloat128 __attribute__ ((__mode__ (__TC__))); | ||
| 80 | # define __CFLOAT128 __cfloat128 | ||
| 81 | # else | ||
| 82 | # define __CFLOAT128 _Complex _Float128 | ||
| 83 | # endif | ||
| 84 | # endif | ||
| 85 | |||
| 86 | /* The remaining of this file provides support for older compilers. */ | ||
| 87 | # if __HAVE_FLOAT128 | ||
| 88 | |||
| 89 | /* The type _Float128 exists only since GCC 7.0. */ | ||
| 90 | # if !__GNUC_PREREQ (7, 0) \ | ||
| 91 | || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) \ | ||
| 92 | || __glibc_clang_prereq (3, 4) | ||
| 93 | typedef __float128 _Float128; | ||
| 94 | # endif | ||
| 95 | |||
| 96 | /* __builtin_huge_valf128 doesn't exist before GCC 7.0 nor Clang 7.0. */ | ||
| 97 | # if !__GNUC_PREREQ (7, 0) && !__glibc_clang_prereq (7, 0) | ||
| 98 | # define __builtin_huge_valf128() ((_Float128) __builtin_huge_val ()) | ||
| 99 | # endif | ||
| 100 | |||
| 101 | /* Older GCC has only a subset of built-in functions for _Float128 on | ||
| 102 | x86, and __builtin_infq is not usable in static initializers. | ||
| 103 | Converting a narrower sNaN to _Float128 produces a quiet NaN, so | ||
| 104 | attempts to use _Float128 sNaNs will not work properly with older | ||
| 105 | compilers. */ | ||
| 106 | # if !__GNUC_PREREQ (7, 0) && !defined __clang__ | ||
| 107 | # define __builtin_copysignf128 __builtin_copysignq | ||
| 108 | # define __builtin_fabsf128 __builtin_fabsq | ||
| 109 | # define __builtin_inff128() ((_Float128) __builtin_inf ()) | ||
| 110 | # define __builtin_nanf128(x) ((_Float128) __builtin_nan (x)) | ||
| 111 | # define __builtin_nansf128(x) ((_Float128) __builtin_nans (x)) | ||
| 112 | # endif | ||
| 113 | |||
| 114 | /* In math/math.h, __MATH_TG will expand signbit to __builtin_signbit*, | ||
| 115 | e.g.: __builtin_signbitf128, before GCC 6. However, there has never | ||
| 116 | been a __builtin_signbitf128 in GCC and the type-generic builtin is | ||
| 117 | only available since GCC 6. signbit is expanded to __builtin_signbit | ||
| 118 | after Clang 3.3. */ | ||
| 119 | # if !__GNUC_PREREQ (6, 0) | ||
| 120 | # define __builtin_signbitf128 __signbitf128 | ||
| 121 | # endif | ||
| 122 | |||
| 123 | # endif | ||
| 124 | |||
| 125 | #endif /* !__ASSEMBLER__. */ | ||
| 126 | |||
| 127 | #include <bits/floatn-common.h> | ||
| 128 | |||
| 129 | #endif /* _BITS_FLOATN_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnu/bits/flt-eval-method.h deleted-33| ... | @@ -1,33 +0,0 @@ | ||
| 1 | /* Define __GLIBC_FLT_EVAL_METHOD. x86 version. | ||
| 2 | Copyright (C) 2016-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _MATH_H | ||
| 20 | # error "Never use <bits/flt-eval-method.h> directly; include <math.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifdef __FLT_EVAL_METHOD__ | ||
| 24 | # if __FLT_EVAL_METHOD__ == -1 | ||
| 25 | # define __GLIBC_FLT_EVAL_METHOD	2 | ||
| 26 | # else | ||
| 27 | # define __GLIBC_FLT_EVAL_METHOD	__FLT_EVAL_METHOD__ | ||
| 28 | # endif | ||
| 29 | #elif defined __x86_64__ | ||
| 30 | # define __GLIBC_FLT_EVAL_METHOD	0 | ||
| 31 | #else | ||
| 32 | # define __GLIBC_FLT_EVAL_METHOD	2 | ||
| 33 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnu/bits/fp-logb.h deleted-24| ... | @@ -1,24 +0,0 @@ | ||
| 1 | /* Define __FP_LOGB0_IS_MIN and __FP_LOGBNAN_IS_MIN. x86 version. | ||
| 2 | Copyright (C) 2016-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _MATH_H | ||
| 20 | # error "Never use <bits/fp-logb.h> directly; include <math.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #define __FP_LOGB0_IS_MIN	1 | ||
| 24 | #define __FP_LOGBNAN_IS_MIN	1 | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnu/bits/indirect-return.h deleted-37| ... | @@ -1,37 +0,0 @@ | ||
| 1 | /* Definition of __INDIRECT_RETURN. x86 version. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _UCONTEXT_H | ||
| 20 | # error "Never include <bits/indirect-return.h> directly; use <ucontext.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* On x86, swapcontext returns via indirect branch when the shadow stack | ||
| 24 | is enabled. Define __INDIRECT_RETURN to indicate whether swapcontext | ||
| 25 | returns via indirect branch. */ | ||
| 26 | #if defined __CET__ && (__CET__ & 2) != 0 | ||
| 27 | # if __glibc_has_attribute (__indirect_return__) | ||
| 28 | # define __INDIRECT_RETURN __attribute__ ((__indirect_return__)) | ||
| 29 | # else | ||
| 30 | /* Newer compilers provide the indirect_return attribute, but without | ||
| 31 | it we can use returns_twice to affect the optimizer in the same | ||
| 32 | way and avoid unsafe optimizations. */ | ||
| 33 | # define __INDIRECT_RETURN __attribute__ ((__returns_twice__)) | ||
| 34 | # endif | ||
| 35 | #else | ||
| 36 | # define __INDIRECT_RETURN | ||
| 37 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnu/bits/ipctypes.h deleted-33| ... | @@ -1,33 +0,0 @@ | ||
| 1 | /* bits/ipctypes.h -- Define some types used by SysV IPC/MSG/SHM. | ||
| 2 | Copyright (C) 2012-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_IPC_H | ||
| 20 | # error "Never use <bits/ipctypes.h> directly; include <sys/ipc.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef _BITS_IPCTYPES_H | ||
| 24 | #define _BITS_IPCTYPES_H	1 | ||
| 25 | |||
| 26 | /* Used in `struct shmid_ds'. */ | ||
| 27 | # ifdef __x86_64__ | ||
| 28 | typedef int __ipc_pid_t; | ||
| 29 | # else | ||
| 30 | typedef unsigned short int __ipc_pid_t; | ||
| 31 | # endif | ||
| 32 | |||
| 33 | #endif /* bits/ipctypes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnu/bits/iscanonical.h deleted-54| ... | @@ -1,54 +0,0 @@ | ||
| 1 | /* Define iscanonical macro. ldbl-96 version. | ||
| 2 | Copyright (C) 2016-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _MATH_H | ||
| 20 | # error "Never use <bits/iscanonical.h> directly; include <math.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | extern int __iscanonicall (long double __x) | ||
| 24 | __THROW __attribute__ ((__const__)); | ||
| 25 | #define __iscanonicalf(x) ((void) (__typeof (x)) (x), 1) | ||
| 26 | #define __iscanonical(x) ((void) (__typeof (x)) (x), 1) | ||
| 27 | #if __HAVE_DISTINCT_FLOAT128 | ||
| 28 | # define __iscanonicalf128(x) ((void) (__typeof (x)) (x), 1) | ||
| 29 | #endif | ||
| 30 | |||
| 31 | /* Return nonzero value if X is canonical. In IEEE interchange binary | ||
| 32 | formats, all values are canonical, but the argument must still be | ||
| 33 | converted to its semantic type for any exceptions arising from the | ||
| 34 | conversion, before being discarded; in extended precision, there | ||
| 35 | are encodings that are not consistently handled as corresponding to | ||
| 36 | any particular value of the type, and we return 0 for those. */ | ||
| 37 | #ifndef __cplusplus | ||
| 38 | # define iscanonical(x) __MATH_TG ((x), __iscanonical, (x)) | ||
| 39 | #else | ||
| 40 | /* In C++ mode, __MATH_TG cannot be used, because it relies on | ||
| 41 | __builtin_types_compatible_p, which is a C-only builtin. On the | ||
| 42 | other hand, overloading provides the means to distinguish between | ||
| 43 | the floating-point types. The overloading resolution will match | ||
| 44 | the correct parameter (regardless of type qualifiers (i.e.: const | ||
| 45 | and volatile)). */ | ||
| 46 | extern "C++" { | ||
| 47 | inline int iscanonical (float __val) { return __iscanonicalf (__val); } | ||
| 48 | inline int iscanonical (double __val) { return __iscanonical (__val); } | ||
| 49 | inline int iscanonical (long double __val) { return __iscanonicall (__val); } | ||
| 50 | # if __HAVE_DISTINCT_FLOAT128 | ||
| 51 | inline int iscanonical (_Float128 __val) { return __iscanonicalf128 (__val); } | ||
| 52 | # endif | ||
| 53 | } | ||
| 54 | #endif /* __cplusplus */ | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnu/bits/link.h deleted-159| ... | @@ -1,159 +0,0 @@ | ||
| 1 | /* Copyright (C) 2004-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_LINK_H | ||
| 19 | # error "Never include <bits/link.h> directly; use <link.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | |||
| 23 | #ifndef __x86_64__ | ||
| 24 | /* Registers for entry into PLT on IA-32. */ | ||
| 25 | typedef struct La_i86_regs | ||
| 26 | { | ||
| 27 | uint32_t lr_edx; | ||
| 28 | uint32_t lr_ecx; | ||
| 29 | uint32_t lr_eax; | ||
| 30 | uint32_t lr_ebp; | ||
| 31 | uint32_t lr_esp; | ||
| 32 | } La_i86_regs; | ||
| 33 | |||
| 34 | /* Return values for calls from PLT on IA-32. */ | ||
| 35 | typedef struct La_i86_retval | ||
| 36 | { | ||
| 37 | uint32_t lrv_eax; | ||
| 38 | uint32_t lrv_edx; | ||
| 39 | long double lrv_st0; | ||
| 40 | long double lrv_st1; | ||
| 41 | uint64_t __glibc_unused1; | ||
| 42 | uint64_t __glibc_unused2; | ||
| 43 | } La_i86_retval; | ||
| 44 | |||
| 45 | |||
| 46 | __BEGIN_DECLS | ||
| 47 | |||
| 48 | extern Elf32_Addr la_i86_gnu_pltenter (Elf32_Sym *__sym, unsigned int __ndx, | ||
| 49 | 				 uintptr_t *__refcook, | ||
| 50 | 				 uintptr_t *__defcook, | ||
| 51 | 				 La_i86_regs *__regs, | ||
| 52 | 				 unsigned int *__flags, | ||
| 53 | 				 const char *__symname, | ||
| 54 | 				 long int *__framesizep); | ||
| 55 | extern unsigned int la_i86_gnu_pltexit (Elf32_Sym *__sym, unsigned int __ndx, | ||
| 56 | 					uintptr_t *__refcook, | ||
| 57 | 					uintptr_t *__defcook, | ||
| 58 | 					const La_i86_regs *__inregs, | ||
| 59 | 					La_i86_retval *__outregs, | ||
| 60 | 					const char *symname); | ||
| 61 | |||
| 62 | __END_DECLS | ||
| 63 | |||
| 64 | #else | ||
| 65 | |||
| 66 | /* Registers for entry into PLT on x86-64. */ | ||
| 67 | # if __GNUC_PREREQ (4,0) | ||
| 68 | typedef float La_x86_64_xmm __attribute__ ((__vector_size__ (16))); | ||
| 69 | typedef float La_x86_64_ymm | ||
| 70 | __attribute__ ((__vector_size__ (32), __aligned__ (16))); | ||
| 71 | typedef double La_x86_64_zmm | ||
| 72 | __attribute__ ((__vector_size__ (64), __aligned__ (16))); | ||
| 73 | # else | ||
| 74 | typedef float La_x86_64_xmm __attribute__ ((__mode__ (__V4SF__))); | ||
| 75 | # endif | ||
| 76 | |||
| 77 | typedef union | ||
| 78 | { | ||
| 79 | # if __GNUC_PREREQ (4,0) | ||
| 80 | La_x86_64_ymm ymm[2]; | ||
| 81 | La_x86_64_zmm zmm[1]; | ||
| 82 | # endif | ||
| 83 | La_x86_64_xmm xmm[4]; | ||
| 84 | } La_x86_64_vector __attribute__ ((__aligned__ (16))); | ||
| 85 | |||
| 86 | typedef struct La_x86_64_regs | ||
| 87 | { | ||
| 88 | uint64_t lr_rdx; | ||
| 89 | uint64_t lr_r8; | ||
| 90 | uint64_t lr_r9; | ||
| 91 | uint64_t lr_rcx; | ||
| 92 | uint64_t lr_rsi; | ||
| 93 | uint64_t lr_rdi; | ||
| 94 | uint64_t lr_rbp; | ||
| 95 | uint64_t lr_rsp; | ||
| 96 | La_x86_64_xmm lr_xmm[8]; | ||
| 97 | La_x86_64_vector lr_vector[8]; | ||
| 98 | #ifndef __ILP32__ | ||
| 99 | __int128_t __glibc_unused1[4]; | ||
| 100 | #endif | ||
| 101 | } La_x86_64_regs; | ||
| 102 | |||
| 103 | /* Return values for calls from PLT on x86-64. */ | ||
| 104 | typedef struct La_x86_64_retval | ||
| 105 | { | ||
| 106 | uint64_t lrv_rax; | ||
| 107 | uint64_t lrv_rdx; | ||
| 108 | La_x86_64_xmm lrv_xmm0; | ||
| 109 | La_x86_64_xmm lrv_xmm1; | ||
| 110 | long double lrv_st0; | ||
| 111 | long double lrv_st1; | ||
| 112 | La_x86_64_vector lrv_vector0; | ||
| 113 | La_x86_64_vector lrv_vector1; | ||
| 114 | #ifndef __ILP32__ | ||
| 115 | __int128_t __glibc_unused1; | ||
| 116 | __int128_t __glibc_unused2; | ||
| 117 | #endif | ||
| 118 | } La_x86_64_retval; | ||
| 119 | |||
| 120 | #define La_x32_regs La_x86_64_regs | ||
| 121 | #define La_x32_retval La_x86_64_retval | ||
| 122 | |||
| 123 | __BEGIN_DECLS | ||
| 124 | |||
| 125 | extern Elf64_Addr la_x86_64_gnu_pltenter (Elf64_Sym *__sym, | ||
| 126 | 					 unsigned int __ndx, | ||
| 127 | 					 uintptr_t *__refcook, | ||
| 128 | 					 uintptr_t *__defcook, | ||
| 129 | 					 La_x86_64_regs *__regs, | ||
| 130 | 					 unsigned int *__flags, | ||
| 131 | 					 const char *__symname, | ||
| 132 | 					 long int *__framesizep); | ||
| 133 | extern unsigned int la_x86_64_gnu_pltexit (Elf64_Sym *__sym, | ||
| 134 | 					 unsigned int __ndx, | ||
| 135 | 					 uintptr_t *__refcook, | ||
| 136 | 					 uintptr_t *__defcook, | ||
| 137 | 					 const La_x86_64_regs *__inregs, | ||
| 138 | 					 La_x86_64_retval *__outregs, | ||
| 139 | 					 const char *__symname); | ||
| 140 | |||
| 141 | extern Elf32_Addr la_x32_gnu_pltenter (Elf32_Sym *__sym, | ||
| 142 | 				 unsigned int __ndx, | ||
| 143 | 				 uintptr_t *__refcook, | ||
| 144 | 				 uintptr_t *__defcook, | ||
| 145 | 				 La_x32_regs *__regs, | ||
| 146 | 				 unsigned int *__flags, | ||
| 147 | 				 const char *__symname, | ||
| 148 | 				 long int *__framesizep); | ||
| 149 | extern unsigned int la_x32_gnu_pltexit (Elf32_Sym *__sym, | ||
| 150 | 					unsigned int __ndx, | ||
| 151 | 					uintptr_t *__refcook, | ||
| 152 | 					uintptr_t *__defcook, | ||
| 153 | 					const La_x32_regs *__inregs, | ||
| 154 | 					La_x32_retval *__outregs, | ||
| 155 | 					const char *__symname); | ||
| 156 | |||
| 157 | __END_DECLS | ||
| 158 | |||
| 159 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnu/bits/long-double.h deleted-21| ... | @@ -1,21 +0,0 @@ | ||
| 1 | /* Properties of long double type. ldbl-96 version. | ||
| 2 | Copyright (C) 2016-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* long double is distinct from double, so there is nothing to | ||
| 20 | define here. */ | ||
| 21 | #define __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI 0 | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnu/bits/math-vector.h deleted-147| ... | @@ -1,147 +0,0 @@ | ||
| 1 | /* Platform-specific SIMD declarations of math functions. | ||
| 2 | Copyright (C) 2014-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _MATH_H | ||
| 20 | # error "Never include <bits/math-vector.h> directly;\ | ||
| 21 | include <math.h> instead." | ||
| 22 | #endif | ||
| 23 | |||
| 24 | /* Get default empty definitions for simd declarations. */ | ||
| 25 | #include <bits/libm-simd-decl-stubs.h> | ||
| 26 | |||
| 27 | #if defined __x86_64__ && defined __FAST_MATH__ | ||
| 28 | # if defined _OPENMP && _OPENMP >= 201307 | ||
| 29 | /* OpenMP case. */ | ||
| 30 | # define __DECL_SIMD_x86_64 _Pragma ("omp declare simd notinbranch") | ||
| 31 | # elif __GNUC_PREREQ (6,0) | ||
| 32 | /* W/o OpenMP use GCC 6.* __attribute__ ((__simd__)). */ | ||
| 33 | # define __DECL_SIMD_x86_64 __attribute__ ((__simd__ ("notinbranch"))) | ||
| 34 | # endif | ||
| 35 | |||
| 36 | # ifdef __DECL_SIMD_x86_64 | ||
| 37 | # undef __DECL_SIMD_cos | ||
| 38 | # define __DECL_SIMD_cos __DECL_SIMD_x86_64 | ||
| 39 | # undef __DECL_SIMD_cosf | ||
| 40 | # define __DECL_SIMD_cosf __DECL_SIMD_x86_64 | ||
| 41 | # undef __DECL_SIMD_sin | ||
| 42 | # define __DECL_SIMD_sin __DECL_SIMD_x86_64 | ||
| 43 | # undef __DECL_SIMD_sinf | ||
| 44 | # define __DECL_SIMD_sinf __DECL_SIMD_x86_64 | ||
| 45 | # undef __DECL_SIMD_sincos | ||
| 46 | # define __DECL_SIMD_sincos __DECL_SIMD_x86_64 | ||
| 47 | # undef __DECL_SIMD_sincosf | ||
| 48 | # define __DECL_SIMD_sincosf __DECL_SIMD_x86_64 | ||
| 49 | # undef __DECL_SIMD_log | ||
| 50 | # define __DECL_SIMD_log __DECL_SIMD_x86_64 | ||
| 51 | # undef __DECL_SIMD_logf | ||
| 52 | # define __DECL_SIMD_logf __DECL_SIMD_x86_64 | ||
| 53 | # undef __DECL_SIMD_exp | ||
| 54 | # define __DECL_SIMD_exp __DECL_SIMD_x86_64 | ||
| 55 | # undef __DECL_SIMD_expf | ||
| 56 | # define __DECL_SIMD_expf __DECL_SIMD_x86_64 | ||
| 57 | # undef __DECL_SIMD_pow | ||
| 58 | # define __DECL_SIMD_pow __DECL_SIMD_x86_64 | ||
| 59 | # undef __DECL_SIMD_powf | ||
| 60 | # define __DECL_SIMD_powf __DECL_SIMD_x86_64 | ||
| 61 | # undef __DECL_SIMD_acos | ||
| 62 | # define __DECL_SIMD_acos __DECL_SIMD_x86_64 | ||
| 63 | # undef __DECL_SIMD_acosf | ||
| 64 | # define __DECL_SIMD_acosf __DECL_SIMD_x86_64 | ||
| 65 | # undef __DECL_SIMD_atan | ||
| 66 | # define __DECL_SIMD_atan __DECL_SIMD_x86_64 | ||
| 67 | # undef __DECL_SIMD_atanf | ||
| 68 | # define __DECL_SIMD_atanf __DECL_SIMD_x86_64 | ||
| 69 | # undef __DECL_SIMD_asin | ||
| 70 | # define __DECL_SIMD_asin __DECL_SIMD_x86_64 | ||
| 71 | # undef __DECL_SIMD_asinf | ||
| 72 | # define __DECL_SIMD_asinf __DECL_SIMD_x86_64 | ||
| 73 | # undef __DECL_SIMD_hypot | ||
| 74 | # define __DECL_SIMD_hypot __DECL_SIMD_x86_64 | ||
| 75 | # undef __DECL_SIMD_hypotf | ||
| 76 | # define __DECL_SIMD_hypotf __DECL_SIMD_x86_64 | ||
| 77 | # undef __DECL_SIMD_exp2 | ||
| 78 | # define __DECL_SIMD_exp2 __DECL_SIMD_x86_64 | ||
| 79 | # undef __DECL_SIMD_exp2f | ||
| 80 | # define __DECL_SIMD_exp2f __DECL_SIMD_x86_64 | ||
| 81 | # undef __DECL_SIMD_exp10 | ||
| 82 | # define __DECL_SIMD_exp10 __DECL_SIMD_x86_64 | ||
| 83 | # undef __DECL_SIMD_exp10f | ||
| 84 | # define __DECL_SIMD_exp10f __DECL_SIMD_x86_64 | ||
| 85 | # undef __DECL_SIMD_cosh | ||
| 86 | # define __DECL_SIMD_cosh __DECL_SIMD_x86_64 | ||
| 87 | # undef __DECL_SIMD_coshf | ||
| 88 | # define __DECL_SIMD_coshf __DECL_SIMD_x86_64 | ||
| 89 | # undef __DECL_SIMD_expm1 | ||
| 90 | # define __DECL_SIMD_expm1 __DECL_SIMD_x86_64 | ||
| 91 | # undef __DECL_SIMD_expm1f | ||
| 92 | # define __DECL_SIMD_expm1f __DECL_SIMD_x86_64 | ||
| 93 | # undef __DECL_SIMD_sinh | ||
| 94 | # define __DECL_SIMD_sinh __DECL_SIMD_x86_64 | ||
| 95 | # undef __DECL_SIMD_sinhf | ||
| 96 | # define __DECL_SIMD_sinhf __DECL_SIMD_x86_64 | ||
| 97 | # undef __DECL_SIMD_cbrt | ||
| 98 | # define __DECL_SIMD_cbrt __DECL_SIMD_x86_64 | ||
| 99 | # undef __DECL_SIMD_cbrtf | ||
| 100 | # define __DECL_SIMD_cbrtf __DECL_SIMD_x86_64 | ||
| 101 | # undef __DECL_SIMD_atan2 | ||
| 102 | # define __DECL_SIMD_atan2 __DECL_SIMD_x86_64 | ||
| 103 | # undef __DECL_SIMD_atan2f | ||
| 104 | # define __DECL_SIMD_atan2f __DECL_SIMD_x86_64 | ||
| 105 | # undef __DECL_SIMD_log10 | ||
| 106 | # define __DECL_SIMD_log10 __DECL_SIMD_x86_64 | ||
| 107 | # undef __DECL_SIMD_log10f | ||
| 108 | # define __DECL_SIMD_log10f __DECL_SIMD_x86_64 | ||
| 109 | # undef __DECL_SIMD_log2 | ||
| 110 | # define __DECL_SIMD_log2 __DECL_SIMD_x86_64 | ||
| 111 | # undef __DECL_SIMD_log2f | ||
| 112 | # define __DECL_SIMD_log2f __DECL_SIMD_x86_64 | ||
| 113 | # undef __DECL_SIMD_log1p | ||
| 114 | # define __DECL_SIMD_log1p __DECL_SIMD_x86_64 | ||
| 115 | # undef __DECL_SIMD_log1pf | ||
| 116 | # define __DECL_SIMD_log1pf __DECL_SIMD_x86_64 | ||
| 117 | # undef __DECL_SIMD_atanh | ||
| 118 | # define __DECL_SIMD_atanh __DECL_SIMD_x86_64 | ||
| 119 | # undef __DECL_SIMD_atanhf | ||
| 120 | # define __DECL_SIMD_atanhf __DECL_SIMD_x86_64 | ||
| 121 | # undef __DECL_SIMD_acosh | ||
| 122 | # define __DECL_SIMD_acosh __DECL_SIMD_x86_64 | ||
| 123 | # undef __DECL_SIMD_acoshf | ||
| 124 | # define __DECL_SIMD_acoshf __DECL_SIMD_x86_64 | ||
| 125 | # undef __DECL_SIMD_erf | ||
| 126 | # define __DECL_SIMD_erf __DECL_SIMD_x86_64 | ||
| 127 | # undef __DECL_SIMD_erff | ||
| 128 | # define __DECL_SIMD_erff __DECL_SIMD_x86_64 | ||
| 129 | # undef __DECL_SIMD_tanh | ||
| 130 | # define __DECL_SIMD_tanh __DECL_SIMD_x86_64 | ||
| 131 | # undef __DECL_SIMD_tanhf | ||
| 132 | # define __DECL_SIMD_tanhf __DECL_SIMD_x86_64 | ||
| 133 | # undef __DECL_SIMD_asinh | ||
| 134 | # define __DECL_SIMD_asinh __DECL_SIMD_x86_64 | ||
| 135 | # undef __DECL_SIMD_asinhf | ||
| 136 | # define __DECL_SIMD_asinhf __DECL_SIMD_x86_64 | ||
| 137 | # undef __DECL_SIMD_erfc | ||
| 138 | # define __DECL_SIMD_erfc __DECL_SIMD_x86_64 | ||
| 139 | # undef __DECL_SIMD_erfcf | ||
| 140 | # define __DECL_SIMD_erfcf __DECL_SIMD_x86_64 | ||
| 141 | # undef __DECL_SIMD_tan | ||
| 142 | # define __DECL_SIMD_tan __DECL_SIMD_x86_64 | ||
| 143 | # undef __DECL_SIMD_tanf | ||
| 144 | # define __DECL_SIMD_tanf __DECL_SIMD_x86_64 | ||
| 145 | |||
| 146 | # endif | ||
| 147 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnu/bits/mman.h deleted-38| ... | @@ -1,38 +0,0 @@ | ||
| 1 | /* Definitions for POSIX memory map interface. Linux/x86_64 version. | ||
| 2 | Copyright (C) 2001-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_MMAN_H | ||
| 20 | # error "Never use <bits/mman.h> directly; include <sys/mman.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* The following definitions basically come from the kernel headers. | ||
| 24 | But the kernel header is not namespace clean. */ | ||
| 25 | |||
| 26 | /* Other flags. */ | ||
| 27 | #define MAP_32BIT	0x40		/* Only give out 32-bit addresses. */ | ||
| 28 | #define MAP_ABOVE4G	0x80		/* Only map above 4GB. */ | ||
| 29 | |||
| 30 | #ifdef __USE_MISC | ||
| 31 | /* Set up a restore token in the newly allocated shadow stack */ | ||
| 32 | # define SHADOW_STACK_SET_TOKEN 0x1 | ||
| 33 | #endif | ||
| 34 | |||
| 35 | #include <bits/mman-map-flags-generic.h> | ||
| 36 | |||
| 37 | /* Include generic Linux declarations. */ | ||
| 38 | #include <bits/mman-linux.h> | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnu/bits/procfs-id.h deleted-30| ... | @@ -1,30 +0,0 @@ | ||
| 1 | /* Types of pr_uid and pr_gid in struct elf_prpsinfo. x86 version. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library; if not, see | ||
| 18 | <https://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifndef _SYS_PROCFS_H | ||
| 21 | # error "Never include <bits/procfs-id.h> directly; use <sys/procfs.h> instead." | ||
| 22 | #endif | ||
| 23 | |||
| 24 | #if __WORDSIZE == 32 | ||
| 25 | typedef unsigned short int __pr_uid_t; | ||
| 26 | typedef unsigned short int __pr_gid_t; | ||
| 27 | #else | ||
| 28 | typedef unsigned int __pr_uid_t; | ||
| 29 | typedef unsigned int __pr_gid_t; | ||
| 30 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnu/bits/procfs.h deleted-50| ... | @@ -1,50 +0,0 @@ | ||
| 1 | /* Types for registers for sys/procfs.h. x86 version. | ||
| 2 | Copyright (C) 2001-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_PROCFS_H | ||
| 20 | # error "Never include <bits/procfs.h> directly; use <sys/procfs.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Type for a general-purpose register. */ | ||
| 24 | #ifdef __x86_64__ | ||
| 25 | __extension__ typedef unsigned long long elf_greg_t; | ||
| 26 | #else | ||
| 27 | typedef unsigned long elf_greg_t; | ||
| 28 | #endif | ||
| 29 | |||
| 30 | /* And the whole bunch of them. We could have used `struct | ||
| 31 | user_regs_struct' directly in the typedef, but tradition says that | ||
| 32 | the register set is an array, which does have some peculiar | ||
| 33 | semantics, so leave it that way. */ | ||
| 34 | #define ELF_NGREG (sizeof (struct user_regs_struct) / sizeof (elf_greg_t)) | ||
| 35 | typedef elf_greg_t elf_gregset_t[ELF_NGREG]; | ||
| 36 | |||
| 37 | #ifndef __x86_64__ | ||
| 38 | /* Register set for the floating-point registers. */ | ||
| 39 | typedef struct user_fpregs_struct elf_fpregset_t; | ||
| 40 | |||
| 41 | /* Register set for the extended floating-point registers. Includes | ||
| 42 | the Pentium III SSE registers in addition to the classic | ||
| 43 | floating-point stuff. */ | ||
| 44 | typedef struct user_fpxregs_struct elf_fpxregset_t; | ||
| 45 | #else | ||
| 46 | /* Register set for the extended floating-point registers. Includes | ||
| 47 | the Pentium III SSE registers in addition to the classic | ||
| 48 | floating-point stuff. */ | ||
| 49 | typedef struct user_fpregs_struct elf_fpregset_t; | ||
| 50 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h deleted-55| ... | @@ -1,55 +0,0 @@ | ||
| 1 | /* Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _BITS_PTHREADTYPES_ARCH_H | ||
| 19 | #define _BITS_PTHREADTYPES_ARCH_H	1 | ||
| 20 | |||
| 21 | #include <bits/wordsize.h> | ||
| 22 | |||
| 23 | #ifdef __x86_64__ | ||
| 24 | # if __WORDSIZE == 64 | ||
| 25 | # define __SIZEOF_PTHREAD_MUTEX_T 40 | ||
| 26 | # define __SIZEOF_PTHREAD_ATTR_T 56 | ||
| 27 | # define __SIZEOF_PTHREAD_RWLOCK_T 56 | ||
| 28 | # define __SIZEOF_PTHREAD_BARRIER_T 32 | ||
| 29 | # else | ||
| 30 | # define __SIZEOF_PTHREAD_MUTEX_T 32 | ||
| 31 | # define __SIZEOF_PTHREAD_ATTR_T 32 | ||
| 32 | # define __SIZEOF_PTHREAD_RWLOCK_T 44 | ||
| 33 | # define __SIZEOF_PTHREAD_BARRIER_T 20 | ||
| 34 | # endif | ||
| 35 | #else | ||
| 36 | # define __SIZEOF_PTHREAD_MUTEX_T 24 | ||
| 37 | # define __SIZEOF_PTHREAD_ATTR_T 36 | ||
| 38 | # define __SIZEOF_PTHREAD_RWLOCK_T 32 | ||
| 39 | # define __SIZEOF_PTHREAD_BARRIER_T 20 | ||
| 40 | #endif | ||
| 41 | #define __SIZEOF_PTHREAD_MUTEXATTR_T 4 | ||
| 42 | #define __SIZEOF_PTHREAD_COND_T 48 | ||
| 43 | #define __SIZEOF_PTHREAD_CONDATTR_T 4 | ||
| 44 | #define __SIZEOF_PTHREAD_RWLOCKATTR_T 8 | ||
| 45 | #define __SIZEOF_PTHREAD_BARRIERATTR_T 4 | ||
| 46 | |||
| 47 | #define __LOCK_ALIGNMENT | ||
| 48 | #define __ONCE_ALIGNMENT | ||
| 49 | |||
| 50 | #ifndef __x86_64__ | ||
| 51 | /* Extra attributes for the cleanup functions. */ | ||
| 52 | # define __cleanup_fct_attribute __attribute__ ((__regparm__ (1))) | ||
| 53 | #endif | ||
| 54 | |||
| 55 | #endif	/* bits/pthreadtypes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnu/bits/rseq.h deleted-30| ... | @@ -1,30 +0,0 @@ | ||
| 1 | /* Restartable Sequences Linux x86 architecture header. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_RSEQ_H | ||
| 19 | # error "Never use <bits/rseq.h> directly; include <sys/rseq.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* RSEQ_SIG is a signature required before each abort handler code. | ||
| 23 | |||
| 24 | RSEQ_SIG is used with the following reserved undefined instructions, which | ||
| 25 | trap in user-space: | ||
| 26 | |||
| 27 | x86-32: 0f b9 3d 53 30 05 53 ud1 0x53053053,%edi | ||
| 28 | x86-64: 0f b9 3d 53 30 05 53 ud1 0x53053053(%rip),%edi */ | ||
| 29 | |||
| 30 | #define RSEQ_SIG 0x53053053 | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnu/bits/setjmp.h deleted-40| ... | @@ -1,40 +0,0 @@ | ||
| 1 | /* Copyright (C) 2001-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | /* Define the machine-dependent type `jmp_buf'. x86-64 version. */ | ||
| 19 | #ifndef _BITS_SETJMP_H | ||
| 20 | #define _BITS_SETJMP_H 1 | ||
| 21 | |||
| 22 | #if !defined _SETJMP_H && !defined _PTHREAD_H | ||
| 23 | # error "Never include <bits/setjmp.h> directly; use <setjmp.h> instead." | ||
| 24 | #endif | ||
| 25 | |||
| 26 | #include <bits/wordsize.h> | ||
| 27 | |||
| 28 | #ifndef _ASM | ||
| 29 | |||
| 30 | # if __WORDSIZE == 64 | ||
| 31 | typedef long int __jmp_buf[8]; | ||
| 32 | # elif defined __x86_64__ | ||
| 33 | __extension__ typedef long long int __jmp_buf[8]; | ||
| 34 | # else | ||
| 35 | typedef int __jmp_buf[6]; | ||
| 36 | # endif | ||
| 37 | |||
| 38 | #endif | ||
| 39 | |||
| 40 | #endif /* bits/setjmp.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnu/bits/sigcontext.h deleted-196| ... | @@ -1,196 +0,0 @@ | ||
| 1 | /* Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.	 See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _BITS_SIGCONTEXT_H | ||
| 19 | #define _BITS_SIGCONTEXT_H 1 | ||
| 20 | |||
| 21 | #if !defined _SIGNAL_H && !defined _SYS_UCONTEXT_H | ||
| 22 | # error "Never use <bits/sigcontext.h> directly; include <signal.h> instead." | ||
| 23 | #endif | ||
| 24 | |||
| 25 | #include <bits/types.h> | ||
| 26 | |||
| 27 | #define FP_XSTATE_MAGIC1	0x46505853U | ||
| 28 | #define FP_XSTATE_MAGIC2	0x46505845U | ||
| 29 | #define FP_XSTATE_MAGIC2_SIZE	sizeof (FP_XSTATE_MAGIC2) | ||
| 30 | |||
| 31 | struct _fpx_sw_bytes | ||
| 32 | { | ||
| 33 | __uint32_t magic1; | ||
| 34 | __uint32_t extended_size; | ||
| 35 | __uint64_t xstate_bv; | ||
| 36 | __uint32_t xstate_size; | ||
| 37 | __uint32_t __glibc_reserved1[7]; | ||
| 38 | }; | ||
| 39 | |||
| 40 | struct _fpreg | ||
| 41 | { | ||
| 42 | unsigned short significand[4]; | ||
| 43 | unsigned short exponent; | ||
| 44 | }; | ||
| 45 | |||
| 46 | struct _fpxreg | ||
| 47 | { | ||
| 48 | unsigned short significand[4]; | ||
| 49 | unsigned short exponent; | ||
| 50 | unsigned short __glibc_reserved1[3]; | ||
| 51 | }; | ||
| 52 | |||
| 53 | struct _xmmreg | ||
| 54 | { | ||
| 55 | __uint32_t	element[4]; | ||
| 56 | }; | ||
| 57 | |||
| 58 | |||
| 59 | |||
| 60 | #ifndef __x86_64__ | ||
| 61 | |||
| 62 | struct _fpstate | ||
| 63 | { | ||
| 64 | /* Regular FPU environment. */ | ||
| 65 | __uint32_t	cw; | ||
| 66 | __uint32_t		sw; | ||
| 67 | __uint32_t		tag; | ||
| 68 | __uint32_t		ipoff; | ||
| 69 | __uint32_t		cssel; | ||
| 70 | __uint32_t		dataoff; | ||
| 71 | __uint32_t		datasel; | ||
| 72 | struct _fpreg	_st[8]; | ||
| 73 | unsigned short status; | ||
| 74 | unsigned short magic; | ||
| 75 | |||
| 76 | /* FXSR FPU environment. */ | ||
| 77 | __uint32_t		_fxsr_env[6]; | ||
| 78 | __uint32_t		mxcsr; | ||
| 79 | __uint32_t		__glibc_reserved1; | ||
| 80 | struct _fpxreg	_fxsr_st[8]; | ||
| 81 | struct _xmmreg	_xmm[8]; | ||
| 82 | __uint32_t		__glibc_reserved2[56]; | ||
| 83 | }; | ||
| 84 | |||
| 85 | #ifndef sigcontext_struct | ||
| 86 | /* Kernel headers before 2.1.1 define a struct sigcontext_struct, but | ||
| 87 | we need sigcontext. Some packages have come to rely on | ||
| 88 | sigcontext_struct being defined on 32-bit x86, so define this for | ||
| 89 | their benefit. */ | ||
| 90 | # define sigcontext_struct sigcontext | ||
| 91 | #endif | ||
| 92 | |||
| 93 | #define X86_FXSR_MAGIC		0x0000 | ||
| 94 | |||
| 95 | struct sigcontext | ||
| 96 | { | ||
| 97 | unsigned short gs, __gsh; | ||
| 98 | unsigned short fs, __fsh; | ||
| 99 | unsigned short es, __esh; | ||
| 100 | unsigned short ds, __dsh; | ||
| 101 | unsigned long edi; | ||
| 102 | unsigned long esi; | ||
| 103 | unsigned long ebp; | ||
| 104 | unsigned long esp; | ||
| 105 | unsigned long ebx; | ||
| 106 | unsigned long edx; | ||
| 107 | unsigned long ecx; | ||
| 108 | unsigned long eax; | ||
| 109 | unsigned long trapno; | ||
| 110 | unsigned long err; | ||
| 111 | unsigned long eip; | ||
| 112 | unsigned short cs, __csh; | ||
| 113 | unsigned long eflags; | ||
| 114 | unsigned long esp_at_signal; | ||
| 115 | unsigned short ss, __ssh; | ||
| 116 | struct _fpstate * fpstate; | ||
| 117 | unsigned long oldmask; | ||
| 118 | unsigned long cr2; | ||
| 119 | }; | ||
| 120 | |||
| 121 | #else /* __x86_64__ */ | ||
| 122 | |||
| 123 | struct _fpstate | ||
| 124 | { | ||
| 125 | /* FPU environment matching the 64-bit FXSAVE layout. */ | ||
| 126 | __uint16_t		cwd; | ||
| 127 | __uint16_t		swd; | ||
| 128 | __uint16_t		ftw; | ||
| 129 | __uint16_t		fop; | ||
| 130 | __uint64_t		rip; | ||
| 131 | __uint64_t		rdp; | ||
| 132 | __uint32_t		mxcsr; | ||
| 133 | __uint32_t		mxcr_mask; | ||
| 134 | struct _fpxreg	_st[8]; | ||
| 135 | struct _xmmreg	_xmm[16]; | ||
| 136 | __uint32_t		__glibc_reserved1[24]; | ||
| 137 | }; | ||
| 138 | |||
| 139 | struct sigcontext | ||
| 140 | { | ||
| 141 | __uint64_t r8; | ||
| 142 | __uint64_t r9; | ||
| 143 | __uint64_t r10; | ||
| 144 | __uint64_t r11; | ||
| 145 | __uint64_t r12; | ||
| 146 | __uint64_t r13; | ||
| 147 | __uint64_t r14; | ||
| 148 | __uint64_t r15; | ||
| 149 | __uint64_t rdi; | ||
| 150 | __uint64_t rsi; | ||
| 151 | __uint64_t rbp; | ||
| 152 | __uint64_t rbx; | ||
| 153 | __uint64_t rdx; | ||
| 154 | __uint64_t rax; | ||
| 155 | __uint64_t rcx; | ||
| 156 | __uint64_t rsp; | ||
| 157 | __uint64_t rip; | ||
| 158 | __uint64_t eflags; | ||
| 159 | unsigned short cs; | ||
| 160 | unsigned short gs; | ||
| 161 | unsigned short fs; | ||
| 162 | unsigned short __pad0; | ||
| 163 | __uint64_t err; | ||
| 164 | __uint64_t trapno; | ||
| 165 | __uint64_t oldmask; | ||
| 166 | __uint64_t cr2; | ||
| 167 | __extension__ union | ||
| 168 | { | ||
| 169 | struct _fpstate * fpstate; | ||
| 170 | __uint64_t __fpstate_word; | ||
| 171 | }; | ||
| 172 | __uint64_t __reserved1 [8]; | ||
| 173 | }; | ||
| 174 | |||
| 175 | #endif /* __x86_64__ */ | ||
| 176 | |||
| 177 | struct _xsave_hdr | ||
| 178 | { | ||
| 179 | __uint64_t xstate_bv; | ||
| 180 | __uint64_t __glibc_reserved1[2]; | ||
| 181 | __uint64_t __glibc_reserved2[5]; | ||
| 182 | }; | ||
| 183 | |||
| 184 | struct _ymmh_state | ||
| 185 | { | ||
| 186 | __uint32_t ymmh_space[64]; | ||
| 187 | }; | ||
| 188 | |||
| 189 | struct _xstate | ||
| 190 | { | ||
| 191 | struct _fpstate fpstate; | ||
| 192 | struct _xsave_hdr xstate_hdr; | ||
| 193 | struct _ymmh_state ymmh; | ||
| 194 | }; | ||
| 195 | |||
| 196 | #endif /* _BITS_SIGCONTEXT_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnu/bits/siginfo-arch.h deleted-17| ... | @@ -1,17 +0,0 @@ | ||
| 1 | /* Architecture-specific adjustments to siginfo_t. x86 version. */ | ||
| 2 | #ifndef _BITS_SIGINFO_ARCH_H | ||
| 3 | #define _BITS_SIGINFO_ARCH_H 1 | ||
| 4 | |||
| 5 | #if defined __x86_64__ && __WORDSIZE == 32 | ||
| 6 | /* si_utime and si_stime must be 4 byte aligned for x32 to match the | ||
| 7 | kernel. We align siginfo_t to 8 bytes so that si_utime and | ||
| 8 | si_stime are actually aligned to 8 bytes since their offsets are | ||
| 9 | multiple of 8 bytes. Note: with some compilers, the alignment | ||
| 10 | attribute would be ignored if it were put in __SI_CLOCK_T instead | ||
| 11 | of encapsulated in a typedef. */ | ||
| 12 | typedef __clock_t __attribute__ ((__aligned__ (4))) __sigchld_clock_t; | ||
| 13 | # define __SI_ALIGNMENT __attribute__ ((__aligned__ (8))) | ||
| 14 | # define __SI_CLOCK_T __sigchld_clock_t | ||
| 15 | #endif | ||
| 16 | |||
| 17 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnu/bits/struct_mutex.h deleted-63| ... | @@ -1,63 +0,0 @@ | ||
| 1 | /* x86 internal mutex struct definitions. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <http://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _THREAD_MUTEX_INTERNAL_H | ||
| 20 | #define _THREAD_MUTEX_INTERNAL_H 1 | ||
| 21 | |||
| 22 | struct __pthread_mutex_s | ||
| 23 | { | ||
| 24 | int __lock; | ||
| 25 | unsigned int __count; | ||
| 26 | int __owner; | ||
| 27 | #ifdef __x86_64__ | ||
| 28 | unsigned int __nusers; | ||
| 29 | #endif | ||
| 30 | /* KIND must stay at this position in the structure to maintain | ||
| 31 | binary compatibility with static initializers. */ | ||
| 32 | int __kind; | ||
| 33 | #ifdef __x86_64__ | ||
| 34 | short __spins; | ||
| 35 | short __elision; | ||
| 36 | __pthread_list_t __list; | ||
| 37 | # define __PTHREAD_MUTEX_HAVE_PREV 1 | ||
| 38 | #else | ||
| 39 | unsigned int __nusers; | ||
| 40 | __extension__ union | ||
| 41 | { | ||
| 42 | struct | ||
| 43 | { | ||
| 44 | short __espins; | ||
| 45 | short __eelision; | ||
| 46 | # define __spins __elision_data.__espins | ||
| 47 | # define __elision __elision_data.__eelision | ||
| 48 | } __elision_data; | ||
| 49 | __pthread_slist_t __list; | ||
| 50 | }; | ||
| 51 | # define __PTHREAD_MUTEX_HAVE_PREV 0 | ||
| 52 | #endif | ||
| 53 | }; | ||
| 54 | |||
| 55 | #ifdef __x86_64__ | ||
| 56 | # define __PTHREAD_MUTEX_INITIALIZER(__kind) \ | ||
| 57 | 0, 0, 0, 0, __kind, 0, 0, { NULL, NULL } | ||
| 58 | #else | ||
| 59 | # define __PTHREAD_MUTEX_INITIALIZER(__kind) \ | ||
| 60 | 0, 0, 0, __kind, 0, { { 0, 0 } } | ||
| 61 | #endif | ||
| 62 | |||
| 63 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnu/bits/struct_rwlock.h deleted-65| ... | @@ -1,65 +0,0 @@ | ||
| 1 | /* x86 internal rwlock struct definitions. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library; if not, see | ||
| 18 | <http://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifndef _RWLOCK_INTERNAL_H | ||
| 21 | #define _RWLOCK_INTERNAL_H | ||
| 22 | |||
| 23 | struct __pthread_rwlock_arch_t | ||
| 24 | { | ||
| 25 | unsigned int __readers; | ||
| 26 | unsigned int __writers; | ||
| 27 | unsigned int __wrphase_futex; | ||
| 28 | unsigned int __writers_futex; | ||
| 29 | unsigned int __pad3; | ||
| 30 | unsigned int __pad4; | ||
| 31 | #ifdef __x86_64__ | ||
| 32 | int __cur_writer; | ||
| 33 | int __shared; | ||
| 34 | signed char __rwelision; | ||
| 35 | # ifdef __ILP32__ | ||
| 36 | unsigned char __pad1[3]; | ||
| 37 | # define __PTHREAD_RWLOCK_ELISION_EXTRA 0, { 0, 0, 0 } | ||
| 38 | # else | ||
| 39 | unsigned char __pad1[7]; | ||
| 40 | # define __PTHREAD_RWLOCK_ELISION_EXTRA 0, { 0, 0, 0, 0, 0, 0, 0 } | ||
| 41 | # endif | ||
| 42 | unsigned long int __pad2; | ||
| 43 | /* FLAGS must stay at this position in the structure to maintain | ||
| 44 | binary compatibility. */ | ||
| 45 | unsigned int __flags; | ||
| 46 | #else /* __x86_64__ */ | ||
| 47 | /* FLAGS must stay at this position in the structure to maintain | ||
| 48 | binary compatibility. */ | ||
| 49 | unsigned char __flags; | ||
| 50 | unsigned char __shared; | ||
| 51 | signed char __rwelision; | ||
| 52 | unsigned char __pad2; | ||
| 53 | int __cur_writer; | ||
| 54 | #endif | ||
| 55 | }; | ||
| 56 | |||
| 57 | #ifdef __x86_64__ | ||
| 58 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 59 | 0, 0, 0, 0, 0, 0, 0, 0, __PTHREAD_RWLOCK_ELISION_EXTRA, 0, __flags | ||
| 60 | #else | ||
| 61 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 62 | 0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0 | ||
| 63 | #endif | ||
| 64 | |||
| 65 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnu/bits/struct_stat.h deleted-165| ... | @@ -1,165 +0,0 @@ | ||
| 1 | /* Definition for struct stat. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #if !defined _SYS_STAT_H && !defined _FCNTL_H | ||
| 20 | # error "Never include <bits/struct_stat.h> directly; use <sys/stat.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef _BITS_STRUCT_STAT_H | ||
| 24 | #define _BITS_STRUCT_STAT_H	1 | ||
| 25 | |||
| 26 | struct stat | ||
| 27 | { | ||
| 28 | #ifdef __USE_TIME64_REDIRECTS | ||
| 29 | # include <bits/struct_stat_time64_helper.h> | ||
| 30 | #else | ||
| 31 | __dev_t st_dev;		/* Device. */ | ||
| 32 | # ifndef __x86_64__ | ||
| 33 | unsigned short int __pad1; | ||
| 34 | # endif | ||
| 35 | # if defined __x86_64__ || !defined __USE_FILE_OFFSET64 | ||
| 36 | __ino_t st_ino;		/* File serial number.	*/ | ||
| 37 | # else | ||
| 38 | __ino_t __st_ino;			/* 32bit file serial number.	*/ | ||
| 39 | # endif | ||
| 40 | # ifndef __x86_64__ | ||
| 41 | __mode_t st_mode;			/* File mode. */ | ||
| 42 | __nlink_t st_nlink;			/* Link count. */ | ||
| 43 | # else | ||
| 44 | __nlink_t st_nlink;		/* Link count. */ | ||
| 45 | __mode_t st_mode;		/* File mode. */ | ||
| 46 | # endif | ||
| 47 | __uid_t st_uid;		/* User ID of the file's owner.	*/ | ||
| 48 | __gid_t st_gid;		/* Group ID of the file's group.*/ | ||
| 49 | # ifdef __x86_64__ | ||
| 50 | int __pad0; | ||
| 51 | # endif | ||
| 52 | __dev_t st_rdev;		/* Device number, if device. */ | ||
| 53 | # ifndef __x86_64__ | ||
| 54 | unsigned short int __pad2; | ||
| 55 | # endif | ||
| 56 | # if defined __x86_64__ || !defined __USE_FILE_OFFSET64 | ||
| 57 | __off_t st_size;			/* Size of file, in bytes. */ | ||
| 58 | # else | ||
| 59 | __off64_t st_size;			/* Size of file, in bytes. */ | ||
| 60 | # endif | ||
| 61 | __blksize_t st_blksize;	/* Optimal block size for I/O. */ | ||
| 62 | # if defined __x86_64__ || !defined __USE_FILE_OFFSET64 | ||
| 63 | __blkcnt_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 64 | # else | ||
| 65 | __blkcnt64_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 66 | # endif | ||
| 67 | # ifdef __USE_XOPEN2K8 | ||
| 68 | /* Nanosecond resolution timestamps are stored in a format | ||
| 69 | equivalent to 'struct timespec'. This is the type used | ||
| 70 | whenever possible but the Unix namespace rules do not allow the | ||
| 71 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 72 | Therefore we have to handle the use of this header in strictly | ||
| 73 | standard-compliant sources special. */ | ||
| 74 | struct timespec st_atim;		/* Time of last access. */ | ||
| 75 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 76 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 77 | # define st_atime st_atim.tv_sec	/* Backward compatibility. */ | ||
| 78 | # define st_mtime st_mtim.tv_sec | ||
| 79 | # define st_ctime st_ctim.tv_sec | ||
| 80 | # else | ||
| 81 | __time_t st_atime;			/* Time of last access. */ | ||
| 82 | __syscall_ulong_t st_atimensec;	/* Nscecs of last access. */ | ||
| 83 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 84 | __syscall_ulong_t st_mtimensec;	/* Nsecs of last modification. */ | ||
| 85 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 86 | __syscall_ulong_t st_ctimensec;	/* Nsecs of last status change. */ | ||
| 87 | # endif | ||
| 88 | # ifdef __x86_64__ | ||
| 89 | __syscall_slong_t __glibc_reserved[3]; | ||
| 90 | # else | ||
| 91 | # ifndef __USE_FILE_OFFSET64 | ||
| 92 | unsigned long int __glibc_reserved4; | ||
| 93 | unsigned long int __glibc_reserved5; | ||
| 94 | # else | ||
| 95 | __ino64_t st_ino;			/* File serial number.	*/ | ||
| 96 | # endif | ||
| 97 | # endif | ||
| 98 | #endif /* __USE_TIME64_REDIRECTS */ | ||
| 99 | }; | ||
| 100 | |||
| 101 | #ifdef __USE_LARGEFILE64 | ||
| 102 | /* Note stat64 has the same shape as stat for x86-64. */ | ||
| 103 | struct stat64 | ||
| 104 | { | ||
| 105 | # ifdef __USE_TIME64_REDIRECTS | ||
| 106 | # include <bits/struct_stat_time64_helper.h> | ||
| 107 | # else | ||
| 108 | __dev_t st_dev;		/* Device. */ | ||
| 109 | # ifdef __x86_64__ | ||
| 110 | __ino64_t st_ino;		/* File serial number. */ | ||
| 111 | __nlink_t st_nlink;		/* Link count. */ | ||
| 112 | __mode_t st_mode;		/* File mode. */ | ||
| 113 | # else | ||
| 114 | unsigned int __pad1; | ||
| 115 | __ino_t __st_ino;			/* 32bit file serial number.	*/ | ||
| 116 | __mode_t st_mode;			/* File mode. */ | ||
| 117 | __nlink_t st_nlink;			/* Link count. */ | ||
| 118 | # endif | ||
| 119 | __uid_t st_uid;		/* User ID of the file's owner.	*/ | ||
| 120 | __gid_t st_gid;		/* Group ID of the file's group.*/ | ||
| 121 | # ifdef __x86_64__ | ||
| 122 | int __pad0; | ||
| 123 | __dev_t st_rdev;		/* Device number, if device. */ | ||
| 124 | __off_t st_size;		/* Size of file, in bytes. */ | ||
| 125 | # else | ||
| 126 | __dev_t st_rdev;			/* Device number, if device. */ | ||
| 127 | unsigned int __pad2; | ||
| 128 | __off64_t st_size;			/* Size of file, in bytes. */ | ||
| 129 | # endif | ||
| 130 | __blksize_t st_blksize;	/* Optimal block size for I/O. */ | ||
| 131 | __blkcnt64_t st_blocks;	/* Nr. 512-byte blocks allocated. */ | ||
| 132 | # ifdef __USE_XOPEN2K8 | ||
| 133 | /* Nanosecond resolution timestamps are stored in a format | ||
| 134 | equivalent to 'struct timespec'. This is the type used | ||
| 135 | whenever possible but the Unix namespace rules do not allow the | ||
| 136 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 137 | Therefore we have to handle the use of this header in strictly | ||
| 138 | standard-compliant sources special. */ | ||
| 139 | struct timespec st_atim;		/* Time of last access. */ | ||
| 140 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 141 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 142 | # else | ||
| 143 | __time_t st_atime;			/* Time of last access. */ | ||
| 144 | __syscall_ulong_t st_atimensec;	/* Nscecs of last access. */ | ||
| 145 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 146 | __syscall_ulong_t st_mtimensec;	/* Nsecs of last modification. */ | ||
| 147 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 148 | __syscall_ulong_t st_ctimensec;	/* Nsecs of last status change. */ | ||
| 149 | # endif | ||
| 150 | # ifdef __x86_64__ | ||
| 151 | __syscall_slong_t __glibc_reserved[3]; | ||
| 152 | # else | ||
| 153 | __ino64_t st_ino;			/* File serial number.		*/ | ||
| 154 | # endif | ||
| 155 | # endif /* __USE_TIME64_REDIRECTS */ | ||
| 156 | }; | ||
| 157 | #endif | ||
| 158 | |||
| 159 | /* Tell code we have these members. */ | ||
| 160 | #define	_STATBUF_ST_BLKSIZE | ||
| 161 | #define _STATBUF_ST_RDEV | ||
| 162 | /* Nanosecond resolution time values are supported. */ | ||
| 163 | #define _STATBUF_ST_NSEC | ||
| 164 | |||
| 165 | #endif /* _BITS_STRUCT_STAT_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnu/bits/timesize.h deleted-27| ... | @@ -1,27 +0,0 @@ | ||
| 1 | /* Bit size of the time_t type at glibc build time, x86-64 and x32 case. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #include <bits/wordsize.h> | ||
| 20 | |||
| 21 | #if defined __x86_64__ && defined __ILP32__ | ||
| 22 | /* For x32, time is 64-bit even though word size is 32-bit. */ | ||
| 23 | # define __TIMESIZE	64 | ||
| 24 | #else | ||
| 25 | /* For others, time size is word size. */ | ||
| 26 | # define __TIMESIZE	__WORDSIZE | ||
| 27 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnu/bits/types/struct_semid_ds.h deleted-38| ... | @@ -1,38 +0,0 @@ | ||
| 1 | /* x86 implementation of the semaphore struct semid_ds. | ||
| 2 | Copyright (C) 1995-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SEM_H | ||
| 20 | # error "Never include <bits/types/struct_semid_ds.h> directly; use <sys/sem.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Data structure describing a set of semaphores. */ | ||
| 24 | struct semid_ds | ||
| 25 | { | ||
| 26 | #ifdef __USE_TIME64_REDIRECTS | ||
| 27 | # include <bits/types/struct_semid64_ds_helper.h> | ||
| 28 | #else | ||
| 29 | struct ipc_perm sem_perm; /* operation permission struct */ | ||
| 30 | __time_t sem_otime; /* last semop() time */ | ||
| 31 | __syscall_ulong_t __sem_otime_high; | ||
| 32 | __time_t sem_ctime; /* last time changed by semctl() */ | ||
| 33 | __syscall_ulong_t __sem_ctime_high; | ||
| 34 | __syscall_ulong_t sem_nsems; /* number of semaphores in set */ | ||
| 35 | __syscall_ulong_t __glibc_reserved3; | ||
| 36 | __syscall_ulong_t __glibc_reserved4; | ||
| 37 | #endif | ||
| 38 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnu/bits/typesizes.h deleted-106| ... | @@ -1,106 +0,0 @@ | ||
| 1 | /* bits/typesizes.h -- underlying types for *_t. Linux/x86-64 version. | ||
| 2 | Copyright (C) 2012-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_TYPES_H | ||
| 20 | # error "Never include <bits/typesizes.h> directly; use <sys/types.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef	_BITS_TYPESIZES_H | ||
| 24 | #define	_BITS_TYPESIZES_H	1 | ||
| 25 | |||
| 26 | /* See <bits/types.h> for the meaning of these macros. This file exists so | ||
| 27 | that <bits/types.h> need not vary across different GNU platforms. */ | ||
| 28 | |||
| 29 | /* X32 kernel interface is 64-bit. */ | ||
| 30 | #if defined __x86_64__ && defined __ILP32__ | ||
| 31 | # define __SYSCALL_SLONG_TYPE	__SQUAD_TYPE | ||
| 32 | # define __SYSCALL_ULONG_TYPE	__UQUAD_TYPE | ||
| 33 | #else | ||
| 34 | # define __SYSCALL_SLONG_TYPE	__SLONGWORD_TYPE | ||
| 35 | # define __SYSCALL_ULONG_TYPE	__ULONGWORD_TYPE | ||
| 36 | #endif | ||
| 37 | |||
| 38 | #define __DEV_T_TYPE		__UQUAD_TYPE | ||
| 39 | #define __UID_T_TYPE		__U32_TYPE | ||
| 40 | #define __GID_T_TYPE		__U32_TYPE | ||
| 41 | #define __INO_T_TYPE		__SYSCALL_ULONG_TYPE | ||
| 42 | #define __INO64_T_TYPE		__UQUAD_TYPE | ||
| 43 | #define __MODE_T_TYPE		__U32_TYPE | ||
| 44 | #ifdef __x86_64__ | ||
| 45 | # define __NLINK_T_TYPE		__SYSCALL_ULONG_TYPE | ||
| 46 | # define __FSWORD_T_TYPE	__SYSCALL_SLONG_TYPE | ||
| 47 | #else | ||
| 48 | # define __NLINK_T_TYPE		__UWORD_TYPE | ||
| 49 | # define __FSWORD_T_TYPE	__SWORD_TYPE | ||
| 50 | #endif | ||
| 51 | #define __OFF_T_TYPE		__SYSCALL_SLONG_TYPE | ||
| 52 | #define __OFF64_T_TYPE		__SQUAD_TYPE | ||
| 53 | #define __PID_T_TYPE		__S32_TYPE | ||
| 54 | #define __RLIM_T_TYPE		__SYSCALL_ULONG_TYPE | ||
| 55 | #define __RLIM64_T_TYPE		__UQUAD_TYPE | ||
| 56 | #define __BLKCNT_T_TYPE		__SYSCALL_SLONG_TYPE | ||
| 57 | #define __BLKCNT64_T_TYPE	__SQUAD_TYPE | ||
| 58 | #define __FSBLKCNT_T_TYPE	__SYSCALL_ULONG_TYPE | ||
| 59 | #define __FSBLKCNT64_T_TYPE	__UQUAD_TYPE | ||
| 60 | #define __FSFILCNT_T_TYPE	__SYSCALL_ULONG_TYPE | ||
| 61 | #define __FSFILCNT64_T_TYPE	__UQUAD_TYPE | ||
| 62 | #define __ID_T_TYPE		__U32_TYPE | ||
| 63 | #define __CLOCK_T_TYPE		__SYSCALL_SLONG_TYPE | ||
| 64 | #define __TIME_T_TYPE		__SYSCALL_SLONG_TYPE | ||
| 65 | #define __USECONDS_T_TYPE	__U32_TYPE | ||
| 66 | #define __SUSECONDS_T_TYPE	__SYSCALL_SLONG_TYPE | ||
| 67 | #define __SUSECONDS64_T_TYPE	__SQUAD_TYPE | ||
| 68 | #define __DADDR_T_TYPE		__S32_TYPE | ||
| 69 | #define __KEY_T_TYPE		__S32_TYPE | ||
| 70 | #define __CLOCKID_T_TYPE	__S32_TYPE | ||
| 71 | #define __TIMER_T_TYPE		void * | ||
| 72 | #define __BLKSIZE_T_TYPE	__SYSCALL_SLONG_TYPE | ||
| 73 | #define __FSID_T_TYPE		struct { int __val[2]; } | ||
| 74 | #define __SSIZE_T_TYPE		__SWORD_TYPE | ||
| 75 | #define __CPU_MASK_TYPE 	__SYSCALL_ULONG_TYPE | ||
| 76 | |||
| 77 | #ifdef __x86_64__ | ||
| 78 | /* Tell the libc code that off_t and off64_t are actually the same type | ||
| 79 | for all ABI purposes, even if possibly expressed as different base types | ||
| 80 | for C type-checking purposes. */ | ||
| 81 | # define __OFF_T_MATCHES_OFF64_T	1 | ||
| 82 | |||
| 83 | /* Same for ino_t and ino64_t. */ | ||
| 84 | # define __INO_T_MATCHES_INO64_T	1 | ||
| 85 | |||
| 86 | /* And for __rlim_t and __rlim64_t. */ | ||
| 87 | # define __RLIM_T_MATCHES_RLIM64_T	1 | ||
| 88 | |||
| 89 | /* And for fsblkcnt_t, fsblkcnt64_t, fsfilcnt_t and fsfilcnt64_t. */ | ||
| 90 | # define __STATFS_MATCHES_STATFS64 1 | ||
| 91 | |||
| 92 | /* And for getitimer, setitimer and rusage */ | ||
| 93 | # define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 1 | ||
| 94 | #else | ||
| 95 | # define __RLIM_T_MATCHES_RLIM64_T	0 | ||
| 96 | |||
| 97 | # define __STATFS_MATCHES_STATFS64 0 | ||
| 98 | |||
| 99 | # define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 0 | ||
| 100 | #endif | ||
| 101 | |||
| 102 | /* Number of descriptors that can fit in an `fd_set'. */ | ||
| 103 | #define __FD_SETSIZE		1024 | ||
| 104 | |||
| 105 | |||
| 106 | #endif /* bits/typesizes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnu/bits/wordsize.h deleted-16| ... | @@ -1,16 +0,0 @@ | ||
| 1 | /* Determine the wordsize from the preprocessor defines. */ | ||
| 2 | |||
| 3 | #if defined __x86_64__ && !defined __ILP32__ | ||
| 4 | # define __WORDSIZE	64 | ||
| 5 | #else | ||
| 6 | # define __WORDSIZE	32 | ||
| 7 | #define __WORDSIZE32_SIZE_ULONG		0 | ||
| 8 | #define __WORDSIZE32_PTRDIFF_LONG	0 | ||
| 9 | #endif | ||
| 10 | |||
| 11 | #define __WORDSIZE_TIME64_COMPAT32 1 | ||
| 12 | |||
| 13 | #ifdef __x86_64__ | ||
| 14 | /* Both x86-64 and x32 use the 64-bit system call interface. */ | ||
| 15 | # define __SYSCALL_WORDSIZE		64 | ||
| 16 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnu/finclude/math-vector-fortran.h deleted-127| ... | @@ -1,127 +0,0 @@ | ||
| 1 | ! Platform-specific declarations of SIMD math functions for Fortran. -*- f90 -*- | ||
| 2 | ! Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | ! This file is part of the GNU C Library. | ||
| 4 | ! | ||
| 5 | ! The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | ! modify it under the terms of the GNU Lesser General Public | ||
| 7 | ! License as published by the Free Software Foundation; either | ||
| 8 | ! version 2.1 of the License, or (at your option) any later version. | ||
| 9 | ! | ||
| 10 | ! The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | ! but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | ! Lesser General Public License for more details. | ||
| 14 | ! | ||
| 15 | ! You should have received a copy of the GNU Lesser General Public | ||
| 16 | ! License along with the GNU C Library; if not, see | ||
| 17 | ! <https://www.gnu.org/licenses/>. | ||
| 18 | |||
| 19 | !GCC$ builtin (cos) attributes simd (notinbranch) if('x86_64') | ||
| 20 | !GCC$ builtin (cosf) attributes simd (notinbranch) if('x86_64') | ||
| 21 | !GCC$ builtin (sin) attributes simd (notinbranch) if('x86_64') | ||
| 22 | !GCC$ builtin (sinf) attributes simd (notinbranch) if('x86_64') | ||
| 23 | !GCC$ builtin (sincos) attributes simd (notinbranch) if('x86_64') | ||
| 24 | !GCC$ builtin (sincosf) attributes simd (notinbranch) if('x86_64') | ||
| 25 | !GCC$ builtin (log) attributes simd (notinbranch) if('x86_64') | ||
| 26 | !GCC$ builtin (logf) attributes simd (notinbranch) if('x86_64') | ||
| 27 | !GCC$ builtin (exp) attributes simd (notinbranch) if('x86_64') | ||
| 28 | !GCC$ builtin (expf) attributes simd (notinbranch) if('x86_64') | ||
| 29 | !GCC$ builtin (pow) attributes simd (notinbranch) if('x86_64') | ||
| 30 | !GCC$ builtin (powf) attributes simd (notinbranch) if('x86_64') | ||
| 31 | !GCC$ builtin (acos) attributes simd (notinbranch) if('x86_64') | ||
| 32 | !GCC$ builtin (acosf) attributes simd (notinbranch) if('x86_64') | ||
| 33 | !GCC$ builtin (atan) attributes simd (notinbranch) if('x86_64') | ||
| 34 | !GCC$ builtin (atanf) attributes simd (notinbranch) if('x86_64') | ||
| 35 | !GCC$ builtin (asin) attributes simd (notinbranch) if('x86_64') | ||
| 36 | !GCC$ builtin (asinf) attributes simd (notinbranch) if('x86_64') | ||
| 37 | !GCC$ builtin (hypot) attributes simd (notinbranch) if('x86_64') | ||
| 38 | !GCC$ builtin (hypotf) attributes simd (notinbranch) if('x86_64') | ||
| 39 | !GCC$ builtin (exp2) attributes simd (notinbranch) if('x86_64') | ||
| 40 | !GCC$ builtin (exp2f) attributes simd (notinbranch) if('x86_64') | ||
| 41 | !GCC$ builtin (exp10) attributes simd (notinbranch) if('x86_64') | ||
| 42 | !GCC$ builtin (exp10f) attributes simd (notinbranch) if('x86_64') | ||
| 43 | !GCC$ builtin (cosh) attributes simd (notinbranch) if('x86_64') | ||
| 44 | !GCC$ builtin (coshf) attributes simd (notinbranch) if('x86_64') | ||
| 45 | !GCC$ builtin (expm1) attributes simd (notinbranch) if('x86_64') | ||
| 46 | !GCC$ builtin (expm1f) attributes simd (notinbranch) if('x86_64') | ||
| 47 | !GCC$ builtin (sinh) attributes simd (notinbranch) if('x86_64') | ||
| 48 | !GCC$ builtin (sinhf) attributes simd (notinbranch) if('x86_64') | ||
| 49 | !GCC$ builtin (cbrt) attributes simd (notinbranch) if('x86_64') | ||
| 50 | !GCC$ builtin (cbrtf) attributes simd (notinbranch) if('x86_64') | ||
| 51 | !GCC$ builtin (atan2) attributes simd (notinbranch) if('x86_64') | ||
| 52 | !GCC$ builtin (atan2f) attributes simd (notinbranch) if('x86_64') | ||
| 53 | !GCC$ builtin (log10) attributes simd (notinbranch) if('x86_64') | ||
| 54 | !GCC$ builtin (log10f) attributes simd (notinbranch) if('x86_64') | ||
| 55 | !GCC$ builtin (log2) attributes simd (notinbranch) if('x86_64') | ||
| 56 | !GCC$ builtin (log2f) attributes simd (notinbranch) if('x86_64') | ||
| 57 | !GCC$ builtin (log1p) attributes simd (notinbranch) if('x86_64') | ||
| 58 | !GCC$ builtin (log1pf) attributes simd (notinbranch) if('x86_64') | ||
| 59 | !GCC$ builtin (atanh) attributes simd (notinbranch) if('x86_64') | ||
| 60 | !GCC$ builtin (atanhf) attributes simd (notinbranch) if('x86_64') | ||
| 61 | !GCC$ builtin (acosh) attributes simd (notinbranch) if('x86_64') | ||
| 62 | !GCC$ builtin (acoshf) attributes simd (notinbranch) if('x86_64') | ||
| 63 | !GCC$ builtin (erf) attributes simd (notinbranch) if('x86_64') | ||
| 64 | !GCC$ builtin (erff) attributes simd (notinbranch) if('x86_64') | ||
| 65 | !GCC$ builtin (tanh) attributes simd (notinbranch) if('x86_64') | ||
| 66 | !GCC$ builtin (tanhf) attributes simd (notinbranch) if('x86_64') | ||
| 67 | !GCC$ builtin (asinh) attributes simd (notinbranch) if('x86_64') | ||
| 68 | !GCC$ builtin (asinhf) attributes simd (notinbranch) if('x86_64') | ||
| 69 | !GCC$ builtin (erfc) attributes simd (notinbranch) if('x86_64') | ||
| 70 | !GCC$ builtin (erfcf) attributes simd (notinbranch) if('x86_64') | ||
| 71 | !GCC$ builtin (tan) attributes simd (notinbranch) if('x86_64') | ||
| 72 | !GCC$ builtin (tanf) attributes simd (notinbranch) if('x86_64') | ||
| 73 | |||
| 74 | !GCC$ builtin (cos) attributes simd (notinbranch) if('x32') | ||
| 75 | !GCC$ builtin (cosf) attributes simd (notinbranch) if('x32') | ||
| 76 | !GCC$ builtin (sin) attributes simd (notinbranch) if('x32') | ||
| 77 | !GCC$ builtin (sinf) attributes simd (notinbranch) if('x32') | ||
| 78 | !GCC$ builtin (sincos) attributes simd (notinbranch) if('x32') | ||
| 79 | !GCC$ builtin (sincosf) attributes simd (notinbranch) if('x32') | ||
| 80 | !GCC$ builtin (log) attributes simd (notinbranch) if('x32') | ||
| 81 | !GCC$ builtin (logf) attributes simd (notinbranch) if('x32') | ||
| 82 | !GCC$ builtin (exp) attributes simd (notinbranch) if('x32') | ||
| 83 | !GCC$ builtin (expf) attributes simd (notinbranch) if('x32') | ||
| 84 | !GCC$ builtin (pow) attributes simd (notinbranch) if('x32') | ||
| 85 | !GCC$ builtin (powf) attributes simd (notinbranch) if('x32') | ||
| 86 | !GCC$ builtin (acos) attributes simd (notinbranch) if('x32') | ||
| 87 | !GCC$ builtin (acosf) attributes simd (notinbranch) if('x32') | ||
| 88 | !GCC$ builtin (atan) attributes simd (notinbranch) if('x32') | ||
| 89 | !GCC$ builtin (atanf) attributes simd (notinbranch) if('x32') | ||
| 90 | !GCC$ builtin (asin) attributes simd (notinbranch) if('x32') | ||
| 91 | !GCC$ builtin (asinf) attributes simd (notinbranch) if('x32') | ||
| 92 | !GCC$ builtin (hypot) attributes simd (notinbranch) if('x32') | ||
| 93 | !GCC$ builtin (hypotf) attributes simd (notinbranch) if('x32') | ||
| 94 | !GCC$ builtin (exp2) attributes simd (notinbranch) if('x32') | ||
| 95 | !GCC$ builtin (exp2f) attributes simd (notinbranch) if('x32') | ||
| 96 | !GCC$ builtin (exp10) attributes simd (notinbranch) if('x32') | ||
| 97 | !GCC$ builtin (exp10f) attributes simd (notinbranch) if('x32') | ||
| 98 | !GCC$ builtin (cosh) attributes simd (notinbranch) if('x32') | ||
| 99 | !GCC$ builtin (coshf) attributes simd (notinbranch) if('x32') | ||
| 100 | !GCC$ builtin (expm1) attributes simd (notinbranch) if('x32') | ||
| 101 | !GCC$ builtin (expm1f) attributes simd (notinbranch) if('x32') | ||
| 102 | !GCC$ builtin (sinh) attributes simd (notinbranch) if('x32') | ||
| 103 | !GCC$ builtin (sinhf) attributes simd (notinbranch) if('x32') | ||
| 104 | !GCC$ builtin (cbrt) attributes simd (notinbranch) if('x32') | ||
| 105 | !GCC$ builtin (cbrtf) attributes simd (notinbranch) if('x32') | ||
| 106 | !GCC$ builtin (atan2) attributes simd (notinbranch) if('x32') | ||
| 107 | !GCC$ builtin (atan2f) attributes simd (notinbranch) if('x32') | ||
| 108 | !GCC$ builtin (log10) attributes simd (notinbranch) if('x32') | ||
| 109 | !GCC$ builtin (log10f) attributes simd (notinbranch) if('x32') | ||
| 110 | !GCC$ builtin (log2) attributes simd (notinbranch) if('x32') | ||
| 111 | !GCC$ builtin (log2f) attributes simd (notinbranch) if('x32') | ||
| 112 | !GCC$ builtin (log1p) attributes simd (notinbranch) if('x32') | ||
| 113 | !GCC$ builtin (log1pf) attributes simd (notinbranch) if('x32') | ||
| 114 | !GCC$ builtin (atanh) attributes simd (notinbranch) if('x32') | ||
| 115 | !GCC$ builtin (atanhf) attributes simd (notinbranch) if('x32') | ||
| 116 | !GCC$ builtin (acosh) attributes simd (notinbranch) if('x32') | ||
| 117 | !GCC$ builtin (acoshf) attributes simd (notinbranch) if('x32') | ||
| 118 | !GCC$ builtin (erf) attributes simd (notinbranch) if('x32') | ||
| 119 | !GCC$ builtin (erff) attributes simd (notinbranch) if('x32') | ||
| 120 | !GCC$ builtin (tanh) attributes simd (notinbranch) if('x32') | ||
| 121 | !GCC$ builtin (tanhf) attributes simd (notinbranch) if('x32') | ||
| 122 | !GCC$ builtin (asinh) attributes simd (notinbranch) if('x32') | ||
| 123 | !GCC$ builtin (asinhf) attributes simd (notinbranch) if('x32') | ||
| 124 | !GCC$ builtin (erfc) attributes simd (notinbranch) if('x32') | ||
| 125 | !GCC$ builtin (erfcf) attributes simd (notinbranch) if('x32') | ||
| 126 | !GCC$ builtin (tan) attributes simd (notinbranch) if('x32') | ||
| 127 | !GCC$ builtin (tanf) attributes simd (notinbranch) if('x32') | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnu/fpu_control.h deleted-108| ... | @@ -1,108 +0,0 @@ | ||
| 1 | /* FPU control word bits. x86 version. | ||
| 2 | Copyright (C) 1993-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _FPU_CONTROL_H | ||
| 20 | #define _FPU_CONTROL_H	1 | ||
| 21 | |||
| 22 | /* Note that this file sets on x86-64 only the x87 FPU, it does not | ||
| 23 | touch the SSE unit. */ | ||
| 24 | |||
| 25 | /* Here is the dirty part. Set up your 387 through the control word | ||
| 26 | * (cw) register. | ||
| 27 | * | ||
| 28 | * 15-13 12 11-10 9-8 7-6 5 4 3 2 1 0 | ||
| 29 | * | reserved | IC | RC | PC | reserved | PM | UM | OM | ZM | DM | IM | ||
| 30 | * | ||
| 31 | * IM: Invalid operation mask | ||
| 32 | * DM: Denormalized operand mask | ||
| 33 | * ZM: Zero-divide mask | ||
| 34 | * OM: Overflow mask | ||
| 35 | * UM: Underflow mask | ||
| 36 | * PM: Precision (inexact result) mask | ||
| 37 | * | ||
| 38 | * Mask bit is 1 means no interrupt. | ||
| 39 | * | ||
| 40 | * PC: Precision control | ||
| 41 | * 11 - round to extended precision | ||
| 42 | * 10 - round to double precision | ||
| 43 | * 00 - round to single precision | ||
| 44 | * | ||
| 45 | * RC: Rounding control | ||
| 46 | * 00 - rounding to nearest | ||
| 47 | * 01 - rounding down (toward - infinity) | ||
| 48 | * 10 - rounding up (toward + infinity) | ||
| 49 | * 11 - rounding toward zero | ||
| 50 | * | ||
| 51 | * IC: Infinity control | ||
| 52 | * That is for 8087 and 80287 only. | ||
| 53 | * | ||
| 54 | * The hardware default is 0x037f which we use. | ||
| 55 | */ | ||
| 56 | |||
| 57 | #include <features.h> | ||
| 58 | |||
| 59 | /* masking of interrupts */ | ||
| 60 | #define _FPU_MASK_IM 0x01 | ||
| 61 | #define _FPU_MASK_DM 0x02 | ||
| 62 | #define _FPU_MASK_ZM 0x04 | ||
| 63 | #define _FPU_MASK_OM 0x08 | ||
| 64 | #define _FPU_MASK_UM 0x10 | ||
| 65 | #define _FPU_MASK_PM 0x20 | ||
| 66 | |||
| 67 | /* precision control */ | ||
| 68 | #define _FPU_EXTENDED 0x300	/* libm requires double extended precision. */ | ||
| 69 | #define _FPU_DOUBLE 0x200 | ||
| 70 | #define _FPU_SINGLE 0x0 | ||
| 71 | |||
| 72 | /* rounding control */ | ||
| 73 | #define _FPU_RC_NEAREST 0x0 /* RECOMMENDED */ | ||
| 74 | #define _FPU_RC_DOWN 0x400 | ||
| 75 | #define _FPU_RC_UP 0x800 | ||
| 76 | #define _FPU_RC_ZERO 0xC00 | ||
| 77 | |||
| 78 | #define _FPU_RESERVED 0xF0C0 /* Reserved bits in cw */ | ||
| 79 | |||
| 80 | |||
| 81 | /* The fdlibm code requires strict IEEE double precision arithmetic, | ||
| 82 | and no interrupts for exceptions, rounding to nearest. */ | ||
| 83 | |||
| 84 | #define _FPU_DEFAULT 0x037f | ||
| 85 | |||
| 86 | /* IEEE: same as above. */ | ||
| 87 | #define _FPU_IEEE 0x037f | ||
| 88 | |||
| 89 | /* Type of the control word. */ | ||
| 90 | typedef unsigned int fpu_control_t __attribute__ ((__mode__ (__HI__))); | ||
| 91 | |||
| 92 | /* Macros for accessing the hardware control word. "*&" is used to | ||
| 93 | work around a bug in older versions of GCC. __volatile__ is used | ||
| 94 | to support combination of writing the control register and reading | ||
| 95 | it back. Without __volatile__, the old value may be used for reading | ||
| 96 | back under compiler optimization. | ||
| 97 | |||
| 98 | Note that the use of these macros is not sufficient anymore with | ||
| 99 | recent hardware nor on x86-64. Some floating point operations are | ||
| 100 | executed in the SSE/SSE2 engines which have their own control and | ||
| 101 | status register. */ | ||
| 102 | #define _FPU_GETCW(cw) __asm__ __volatile__ ("fnstcw %0" : "=m" (*&cw)) | ||
| 103 | #define _FPU_SETCW(cw) __asm__ __volatile__ ("fldcw %0" : : "m" (*&cw)) | ||
| 104 | |||
| 105 | /* Default control word set at startup. */ | ||
| 106 | extern fpu_control_t __fpu_control; | ||
| 107 | |||
| 108 | #endif	/* fpu_control.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnu/gnu/lib-names-64.h deleted-27| ... | @@ -1,27 +0,0 @@ | ||
| 1 | /* This file is automatically generated. */ | ||
| 2 | #ifndef __GNU_LIB_NAMES_H | ||
| 3 | # error "Never use <gnu/lib-names-64.h> directly; include <gnu/lib-names.h> instead." | ||
| 4 | #endif | ||
| 5 | |||
| 6 | #define LD_LINUX_X86_64_SO "ld-linux-x86-64.so.2" | ||
| 7 | #define LD_SO "ld-linux-x86-64.so.2" | ||
| 8 | #define LIBANL_SO "libanl.so.1" | ||
| 9 | #define LIBBROKENLOCALE_SO "libBrokenLocale.so.1" | ||
| 10 | #define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0" | ||
| 11 | #define LIBC_SO "libc.so.6" | ||
| 12 | #define LIBDL_SO "libdl.so.2" | ||
| 13 | #define LIBGCC_S_SO "libgcc_s.so.1" | ||
| 14 | #define LIBMVEC_SO "libmvec.so.1" | ||
| 15 | #define LIBM_SO "libm.so.6" | ||
| 16 | #define LIBNSL_SO "libnsl.so.1" | ||
| 17 | #define LIBNSS_COMPAT_SO "libnss_compat.so.2" | ||
| 18 | #define LIBNSS_DB_SO "libnss_db.so.2" | ||
| 19 | #define LIBNSS_DNS_SO "libnss_dns.so.2" | ||
| 20 | #define LIBNSS_FILES_SO "libnss_files.so.2" | ||
| 21 | #define LIBNSS_HESIOD_SO "libnss_hesiod.so.2" | ||
| 22 | #define LIBNSS_LDAP_SO "libnss_ldap.so.2" | ||
| 23 | #define LIBPTHREAD_SO "libpthread.so.0" | ||
| 24 | #define LIBRESOLV_SO "libresolv.so.2" | ||
| 25 | #define LIBRT_SO "librt.so.1" | ||
| 26 | #define LIBTHREAD_DB_SO "libthread_db.so.1" | ||
| 27 | #define LIBUTIL_SO "libutil.so.1" | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnu/gnu/lib-names.h deleted-17| ... | @@ -1,17 +0,0 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | It defines macros to allow user program to find the shared | ||
| 3 | library files which come as part of GNU libc. */ | ||
| 4 | #ifndef __GNU_LIB_NAMES_H | ||
| 5 | #define __GNU_LIB_NAMES_H	1 | ||
| 6 | |||
| 7 | #if !defined __x86_64__ | ||
| 8 | # include <gnu/lib-names-32.h> | ||
| 9 | #endif | ||
| 10 | #if defined __x86_64__ && defined __LP64__ | ||
| 11 | # include <gnu/lib-names-64.h> | ||
| 12 | #endif | ||
| 13 | #if defined __x86_64__ && defined __ILP32__ | ||
| 14 | # include <gnu/lib-names-x32.h> | ||
| 15 | #endif | ||
| 16 | |||
| 17 | #endif	/* gnu/lib-names.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnu/gnu/stubs-64.h deleted-17| ... | @@ -1,17 +0,0 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | It defines a symbol `__stub_FUNCTION' for each function | ||
| 3 | in the C library which is a stub, meaning it will fail | ||
| 4 | every time called, usually setting errno to ENOSYS. */ | ||
| 5 | |||
| 6 | #ifdef _LIBC | ||
| 7 | #error Applications may not define the macro _LIBC | ||
| 8 | #endif | ||
| 9 | |||
| 10 | #define __stub___compat_bdflush | ||
| 11 | #define __stub_chflags | ||
| 12 | #define __stub_fchflags | ||
| 13 | #define __stub_gtty | ||
| 14 | #define __stub_revoke | ||
| 15 | #define __stub_setlogin | ||
| 16 | #define __stub_sigreturn | ||
| 17 | #define __stub_stty | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnu/gnu/stubs.h deleted-14| ... | @@ -1,14 +0,0 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | This file selects the right generated file of `__stub_FUNCTION' macros | ||
| 3 | based on the architecture being compiled for. */ | ||
| 4 | |||
| 5 | |||
| 6 | #if !defined __x86_64__ | ||
| 7 | # include <gnu/stubs-32.h> | ||
| 8 | #endif | ||
| 9 | #if defined __x86_64__ && defined __LP64__ | ||
| 10 | # include <gnu/stubs-64.h> | ||
| 11 | #endif | ||
| 12 | #if defined __x86_64__ && defined __ILP32__ | ||
| 13 | # include <gnu/stubs-x32.h> | ||
| 14 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnu/sys/elf.h deleted-29| ... | @@ -1,29 +0,0 @@ | ||
| 1 | /* Copyright (C) 1998-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_ELF_H | ||
| 19 | #define _SYS_ELF_H	1 | ||
| 20 | |||
| 21 | #ifdef __x86_64__ | ||
| 22 | # error This header is unsupported on x86-64. | ||
| 23 | #else | ||
| 24 | # warning "This header is obsolete; use <sys/procfs.h> instead." | ||
| 25 | |||
| 26 | # include <sys/procfs.h> | ||
| 27 | #endif | ||
| 28 | |||
| 29 | #endif	/* _SYS_ELF_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnu/sys/ptrace.h deleted-216| ... | @@ -1,216 +0,0 @@ | ||
| 1 | /* `ptrace' debugger support interface. Linux/x86 version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library; if not, see | ||
| 18 | <https://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifndef _SYS_PTRACE_H | ||
| 21 | #define _SYS_PTRACE_H	1 | ||
| 22 | |||
| 23 | #include <features.h> | ||
| 24 | #include <bits/types.h> | ||
| 25 | |||
| 26 | __BEGIN_DECLS | ||
| 27 | |||
| 28 | /* Type of the REQUEST argument to `ptrace.' */ | ||
| 29 | enum __ptrace_request | ||
| 30 | { | ||
| 31 | /* Indicate that the process making this request should be traced. | ||
| 32 | All signals received by this process can be intercepted by its | ||
| 33 | parent, and its parent can use the other `ptrace' requests. */ | ||
| 34 | PTRACE_TRACEME = 0, | ||
| 35 | #define PT_TRACE_ME PTRACE_TRACEME | ||
| 36 | |||
| 37 | /* Return the word in the process's text space at address ADDR. */ | ||
| 38 | PTRACE_PEEKTEXT = 1, | ||
| 39 | #define PT_READ_I PTRACE_PEEKTEXT | ||
| 40 | |||
| 41 | /* Return the word in the process's data space at address ADDR. */ | ||
| 42 | PTRACE_PEEKDATA = 2, | ||
| 43 | #define PT_READ_D PTRACE_PEEKDATA | ||
| 44 | |||
| 45 | /* Return the word in the process's user area at offset ADDR. */ | ||
| 46 | PTRACE_PEEKUSER = 3, | ||
| 47 | #define PT_READ_U PTRACE_PEEKUSER | ||
| 48 | |||
| 49 | /* Write the word DATA into the process's text space at address ADDR. */ | ||
| 50 | PTRACE_POKETEXT = 4, | ||
| 51 | #define PT_WRITE_I PTRACE_POKETEXT | ||
| 52 | |||
| 53 | /* Write the word DATA into the process's data space at address ADDR. */ | ||
| 54 | PTRACE_POKEDATA = 5, | ||
| 55 | #define PT_WRITE_D PTRACE_POKEDATA | ||
| 56 | |||
| 57 | /* Write the word DATA into the process's user area at offset ADDR. */ | ||
| 58 | PTRACE_POKEUSER = 6, | ||
| 59 | #define PT_WRITE_U PTRACE_POKEUSER | ||
| 60 | |||
| 61 | /* Continue the process. */ | ||
| 62 | PTRACE_CONT = 7, | ||
| 63 | #define PT_CONTINUE PTRACE_CONT | ||
| 64 | |||
| 65 | /* Kill the process. */ | ||
| 66 | PTRACE_KILL = 8, | ||
| 67 | #define PT_KILL PTRACE_KILL | ||
| 68 | |||
| 69 | /* Single step the process. */ | ||
| 70 | PTRACE_SINGLESTEP = 9, | ||
| 71 | #define PT_STEP PTRACE_SINGLESTEP | ||
| 72 | |||
| 73 | /* Get all general purpose registers used by a processes. */ | ||
| 74 | PTRACE_GETREGS = 12, | ||
| 75 | #define PT_GETREGS PTRACE_GETREGS | ||
| 76 | |||
| 77 | /* Set all general purpose registers used by a processes. */ | ||
| 78 | PTRACE_SETREGS = 13, | ||
| 79 | #define PT_SETREGS PTRACE_SETREGS | ||
| 80 | |||
| 81 | /* Get all floating point registers used by a processes. */ | ||
| 82 | PTRACE_GETFPREGS = 14, | ||
| 83 | #define PT_GETFPREGS PTRACE_GETFPREGS | ||
| 84 | |||
| 85 | /* Set all floating point registers used by a processes. */ | ||
| 86 | PTRACE_SETFPREGS = 15, | ||
| 87 | #define PT_SETFPREGS PTRACE_SETFPREGS | ||
| 88 | |||
| 89 | /* Attach to a process that is already running. */ | ||
| 90 | PTRACE_ATTACH = 16, | ||
| 91 | #define PT_ATTACH PTRACE_ATTACH | ||
| 92 | |||
| 93 | /* Detach from a process attached to with PTRACE_ATTACH. */ | ||
| 94 | PTRACE_DETACH = 17, | ||
| 95 | #define PT_DETACH PTRACE_DETACH | ||
| 96 | |||
| 97 | /* Get all extended floating point registers used by a processes. */ | ||
| 98 | PTRACE_GETFPXREGS = 18, | ||
| 99 | #define PT_GETFPXREGS PTRACE_GETFPXREGS | ||
| 100 | |||
| 101 | /* Set all extended floating point registers used by a processes. */ | ||
| 102 | PTRACE_SETFPXREGS = 19, | ||
| 103 | #define PT_SETFPXREGS PTRACE_SETFPXREGS | ||
| 104 | |||
| 105 | /* Continue and stop at the next entry to or return from syscall. */ | ||
| 106 | PTRACE_SYSCALL = 24, | ||
| 107 | #define PT_SYSCALL PTRACE_SYSCALL | ||
| 108 | |||
| 109 | /* Get a TLS entry in the GDT. */ | ||
| 110 | PTRACE_GET_THREAD_AREA = 25, | ||
| 111 | #define PT_GET_THREAD_AREA PTRACE_GET_THREAD_AREA | ||
| 112 | |||
| 113 | /* Change a TLS entry in the GDT. */ | ||
| 114 | PTRACE_SET_THREAD_AREA = 26, | ||
| 115 | #define PT_SET_THREAD_AREA PTRACE_SET_THREAD_AREA | ||
| 116 | |||
| 117 | #ifdef __x86_64__ | ||
| 118 | /* Access TLS data. */ | ||
| 119 | PTRACE_ARCH_PRCTL = 30, | ||
| 120 | # define PT_ARCH_PRCTL PTRACE_ARCH_PRCTL | ||
| 121 | #endif | ||
| 122 | |||
| 123 | /* Continue and stop at the next syscall, it will not be executed. */ | ||
| 124 | PTRACE_SYSEMU = 31, | ||
| 125 | #define PT_SYSEMU PTRACE_SYSEMU | ||
| 126 | |||
| 127 | /* Single step the process, the next syscall will not be executed. */ | ||
| 128 | PTRACE_SYSEMU_SINGLESTEP = 32, | ||
| 129 | #define PT_SYSEMU_SINGLESTEP PTRACE_SYSEMU_SINGLESTEP | ||
| 130 | |||
| 131 | /* Execute process until next taken branch. */ | ||
| 132 | PTRACE_SINGLEBLOCK = 33, | ||
| 133 | #define PT_STEPBLOCK PTRACE_SINGLEBLOCK | ||
| 134 | |||
| 135 | /* Set ptrace filter options. */ | ||
| 136 | PTRACE_SETOPTIONS = 0x4200, | ||
| 137 | #define PT_SETOPTIONS PTRACE_SETOPTIONS | ||
| 138 | |||
| 139 | /* Get last ptrace message. */ | ||
| 140 | PTRACE_GETEVENTMSG = 0x4201, | ||
| 141 | #define PT_GETEVENTMSG PTRACE_GETEVENTMSG | ||
| 142 | |||
| 143 | /* Get siginfo for process. */ | ||
| 144 | PTRACE_GETSIGINFO = 0x4202, | ||
| 145 | #define PT_GETSIGINFO PTRACE_GETSIGINFO | ||
| 146 | |||
| 147 | /* Set new siginfo for process. */ | ||
| 148 | PTRACE_SETSIGINFO = 0x4203, | ||
| 149 | #define PT_SETSIGINFO PTRACE_SETSIGINFO | ||
| 150 | |||
| 151 | /* Get register content. */ | ||
| 152 | PTRACE_GETREGSET = 0x4204, | ||
| 153 | #define PTRACE_GETREGSET PTRACE_GETREGSET | ||
| 154 | |||
| 155 | /* Set register content. */ | ||
| 156 | PTRACE_SETREGSET = 0x4205, | ||
| 157 | #define PTRACE_SETREGSET PTRACE_SETREGSET | ||
| 158 | |||
| 159 | /* Like PTRACE_ATTACH, but do not force tracee to trap and do not affect | ||
| 160 | signal or group stop state. */ | ||
| 161 | PTRACE_SEIZE = 0x4206, | ||
| 162 | #define PTRACE_SEIZE PTRACE_SEIZE | ||
| 163 | |||
| 164 | /* Trap seized tracee. */ | ||
| 165 | PTRACE_INTERRUPT = 0x4207, | ||
| 166 | #define PTRACE_INTERRUPT PTRACE_INTERRUPT | ||
| 167 | |||
| 168 | /* Wait for next group event. */ | ||
| 169 | PTRACE_LISTEN = 0x4208, | ||
| 170 | #define PTRACE_LISTEN PTRACE_LISTEN | ||
| 171 | |||
| 172 | /* Retrieve siginfo_t structures without removing signals from a queue. */ | ||
| 173 | PTRACE_PEEKSIGINFO = 0x4209, | ||
| 174 | #define PTRACE_PEEKSIGINFO PTRACE_PEEKSIGINFO | ||
| 175 | |||
| 176 | /* Get the mask of blocked signals. */ | ||
| 177 | PTRACE_GETSIGMASK = 0x420a, | ||
| 178 | #define PTRACE_GETSIGMASK PTRACE_GETSIGMASK | ||
| 179 | |||
| 180 | /* Change the mask of blocked signals. */ | ||
| 181 | PTRACE_SETSIGMASK = 0x420b, | ||
| 182 | #define PTRACE_SETSIGMASK PTRACE_SETSIGMASK | ||
| 183 | |||
| 184 | /* Get seccomp BPF filters. */ | ||
| 185 | PTRACE_SECCOMP_GET_FILTER = 0x420c, | ||
| 186 | #define PTRACE_SECCOMP_GET_FILTER PTRACE_SECCOMP_GET_FILTER | ||
| 187 | |||
| 188 | /* Get seccomp BPF filter metadata. */ | ||
| 189 | PTRACE_SECCOMP_GET_METADATA = 0x420d, | ||
| 190 | #define PTRACE_SECCOMP_GET_METADATA PTRACE_SECCOMP_GET_METADATA | ||
| 191 | |||
| 192 | /* Get information about system call. */ | ||
| 193 | PTRACE_GET_SYSCALL_INFO = 0x420e, | ||
| 194 | #define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO | ||
| 195 | |||
| 196 | /* Get rseq configuration information. */ | ||
| 197 | PTRACE_GET_RSEQ_CONFIGURATION = 0x420f, | ||
| 198 | #define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION | ||
| 199 | |||
| 200 | /* Set configuration for syscall user dispatch. */ | ||
| 201 | PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG = 0x4210, | ||
| 202 | #define PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG \ | ||
| 203 | PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG | ||
| 204 | |||
| 205 | /* Get configuration for syscall user dispatch. */ | ||
| 206 | PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG = 0x4211 | ||
| 207 | #define PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG \ | ||
| 208 | PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG | ||
| 209 | }; | ||
| 210 | |||
| 211 | |||
| 212 | #include <bits/ptrace-shared.h> | ||
| 213 | |||
| 214 | __END_DECLS | ||
| 215 | |||
| 216 | #endif /* _SYS_PTRACE_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnu/sys/ucontext.h deleted-262| ... | @@ -1,262 +0,0 @@ | ||
| 1 | /* Copyright (C) 2001-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_UCONTEXT_H | ||
| 19 | #define _SYS_UCONTEXT_H	1 | ||
| 20 | |||
| 21 | #include <features.h> | ||
| 22 | |||
| 23 | #include <bits/types.h> | ||
| 24 | #include <bits/types/sigset_t.h> | ||
| 25 | #include <bits/types/stack_t.h> | ||
| 26 | |||
| 27 | |||
| 28 | #ifdef __USE_MISC | ||
| 29 | # define __ctx(fld) fld | ||
| 30 | #else | ||
| 31 | # define __ctx(fld) __ ## fld | ||
| 32 | #endif | ||
| 33 | |||
| 34 | #ifdef __x86_64__ | ||
| 35 | |||
| 36 | /* Type for general register. */ | ||
| 37 | __extension__ typedef long long int greg_t; | ||
| 38 | |||
| 39 | /* Number of general registers. */ | ||
| 40 | #define __NGREG	23 | ||
| 41 | #ifdef __USE_MISC | ||
| 42 | # define NGREG	__NGREG | ||
| 43 | #endif | ||
| 44 | |||
| 45 | /* Container for all general registers. */ | ||
| 46 | typedef greg_t gregset_t[__NGREG]; | ||
| 47 | |||
| 48 | #ifdef __USE_GNU | ||
| 49 | /* Number of each register in the `gregset_t' array. */ | ||
| 50 | enum | ||
| 51 | { | ||
| 52 | REG_R8 = 0, | ||
| 53 | # define REG_R8		REG_R8 | ||
| 54 | REG_R9, | ||
| 55 | # define REG_R9		REG_R9 | ||
| 56 | REG_R10, | ||
| 57 | # define REG_R10	REG_R10 | ||
| 58 | REG_R11, | ||
| 59 | # define REG_R11	REG_R11 | ||
| 60 | REG_R12, | ||
| 61 | # define REG_R12	REG_R12 | ||
| 62 | REG_R13, | ||
| 63 | # define REG_R13	REG_R13 | ||
| 64 | REG_R14, | ||
| 65 | # define REG_R14	REG_R14 | ||
| 66 | REG_R15, | ||
| 67 | # define REG_R15	REG_R15 | ||
| 68 | REG_RDI, | ||
| 69 | # define REG_RDI	REG_RDI | ||
| 70 | REG_RSI, | ||
| 71 | # define REG_RSI	REG_RSI | ||
| 72 | REG_RBP, | ||
| 73 | # define REG_RBP	REG_RBP | ||
| 74 | REG_RBX, | ||
| 75 | # define REG_RBX	REG_RBX | ||
| 76 | REG_RDX, | ||
| 77 | # define REG_RDX	REG_RDX | ||
| 78 | REG_RAX, | ||
| 79 | # define REG_RAX	REG_RAX | ||
| 80 | REG_RCX, | ||
| 81 | # define REG_RCX	REG_RCX | ||
| 82 | REG_RSP, | ||
| 83 | # define REG_RSP	REG_RSP | ||
| 84 | REG_RIP, | ||
| 85 | # define REG_RIP	REG_RIP | ||
| 86 | REG_EFL, | ||
| 87 | # define REG_EFL	REG_EFL | ||
| 88 | REG_CSGSFS,		/* Actually short cs, gs, fs, __pad0. */ | ||
| 89 | # define REG_CSGSFS	REG_CSGSFS | ||
| 90 | REG_ERR, | ||
| 91 | # define REG_ERR	REG_ERR | ||
| 92 | REG_TRAPNO, | ||
| 93 | # define REG_TRAPNO	REG_TRAPNO | ||
| 94 | REG_OLDMASK, | ||
| 95 | # define REG_OLDMASK	REG_OLDMASK | ||
| 96 | REG_CR2 | ||
| 97 | # define REG_CR2	REG_CR2 | ||
| 98 | }; | ||
| 99 | #endif | ||
| 100 | |||
| 101 | struct _libc_fpxreg | ||
| 102 | { | ||
| 103 | unsigned short int __ctx(significand)[4]; | ||
| 104 | unsigned short int __ctx(exponent); | ||
| 105 | unsigned short int __glibc_reserved1[3]; | ||
| 106 | }; | ||
| 107 | |||
| 108 | struct _libc_xmmreg | ||
| 109 | { | ||
| 110 | __uint32_t	__ctx(element)[4]; | ||
| 111 | }; | ||
| 112 | |||
| 113 | struct _libc_fpstate | ||
| 114 | { | ||
| 115 | /* 64-bit FXSAVE format. */ | ||
| 116 | __uint16_t		__ctx(cwd); | ||
| 117 | __uint16_t		__ctx(swd); | ||
| 118 | __uint16_t		__ctx(ftw); | ||
| 119 | __uint16_t		__ctx(fop); | ||
| 120 | __uint64_t		__ctx(rip); | ||
| 121 | __uint64_t		__ctx(rdp); | ||
| 122 | __uint32_t		__ctx(mxcsr); | ||
| 123 | __uint32_t		__ctx(mxcr_mask); | ||
| 124 | struct _libc_fpxreg	_st[8]; | ||
| 125 | struct _libc_xmmreg	_xmm[16]; | ||
| 126 | __uint32_t		__glibc_reserved1[24]; | ||
| 127 | }; | ||
| 128 | |||
| 129 | /* Structure to describe FPU registers. */ | ||
| 130 | typedef struct _libc_fpstate *fpregset_t; | ||
| 131 | |||
| 132 | /* Context to describe whole processor state. */ | ||
| 133 | typedef struct | ||
| 134 | { | ||
| 135 | gregset_t __ctx(gregs); | ||
| 136 | /* Note that fpregs is a pointer. */ | ||
| 137 | fpregset_t __ctx(fpregs); | ||
| 138 | __extension__ unsigned long long __reserved1 [8]; | ||
| 139 | } mcontext_t; | ||
| 140 | |||
| 141 | /* Userlevel context. */ | ||
| 142 | typedef struct ucontext_t | ||
| 143 | { | ||
| 144 | unsigned long int __ctx(uc_flags); | ||
| 145 | struct ucontext_t *uc_link; | ||
| 146 | stack_t uc_stack; | ||
| 147 | mcontext_t uc_mcontext; | ||
| 148 | sigset_t uc_sigmask; | ||
| 149 | struct _libc_fpstate __fpregs_mem; | ||
| 150 | __extension__ unsigned long long int __ssp[4]; | ||
| 151 | } ucontext_t; | ||
| 152 | |||
| 153 | #else /* !__x86_64__ */ | ||
| 154 | |||
| 155 | /* Type for general register. */ | ||
| 156 | typedef int greg_t; | ||
| 157 | |||
| 158 | /* Number of general registers. */ | ||
| 159 | #define __NGREG	19 | ||
| 160 | #ifdef __USE_MISC | ||
| 161 | # define NGREG	__NGREG | ||
| 162 | #endif | ||
| 163 | |||
| 164 | /* Container for all general registers. */ | ||
| 165 | typedef greg_t gregset_t[__NGREG]; | ||
| 166 | |||
| 167 | #ifdef __USE_GNU | ||
| 168 | /* Number of each register is the `gregset_t' array. */ | ||
| 169 | enum | ||
| 170 | { | ||
| 171 | REG_GS = 0, | ||
| 172 | # define REG_GS		REG_GS | ||
| 173 | REG_FS, | ||
| 174 | # define REG_FS		REG_FS | ||
| 175 | REG_ES, | ||
| 176 | # define REG_ES		REG_ES | ||
| 177 | REG_DS, | ||
| 178 | # define REG_DS		REG_DS | ||
| 179 | REG_EDI, | ||
| 180 | # define REG_EDI	REG_EDI | ||
| 181 | REG_ESI, | ||
| 182 | # define REG_ESI	REG_ESI | ||
| 183 | REG_EBP, | ||
| 184 | # define REG_EBP	REG_EBP | ||
| 185 | REG_ESP, | ||
| 186 | # define REG_ESP	REG_ESP | ||
| 187 | REG_EBX, | ||
| 188 | # define REG_EBX	REG_EBX | ||
| 189 | REG_EDX, | ||
| 190 | # define REG_EDX	REG_EDX | ||
| 191 | REG_ECX, | ||
| 192 | # define REG_ECX	REG_ECX | ||
| 193 | REG_EAX, | ||
| 194 | # define REG_EAX	REG_EAX | ||
| 195 | REG_TRAPNO, | ||
| 196 | # define REG_TRAPNO	REG_TRAPNO | ||
| 197 | REG_ERR, | ||
| 198 | # define REG_ERR	REG_ERR | ||
| 199 | REG_EIP, | ||
| 200 | # define REG_EIP	REG_EIP | ||
| 201 | REG_CS, | ||
| 202 | # define REG_CS		REG_CS | ||
| 203 | REG_EFL, | ||
| 204 | # define REG_EFL	REG_EFL | ||
| 205 | REG_UESP, | ||
| 206 | # define REG_UESP	REG_UESP | ||
| 207 | REG_SS | ||
| 208 | # define REG_SS	REG_SS | ||
| 209 | }; | ||
| 210 | #endif | ||
| 211 | |||
| 212 | /* Definitions taken from the kernel headers. */ | ||
| 213 | struct _libc_fpreg | ||
| 214 | { | ||
| 215 | unsigned short int __ctx(significand)[4]; | ||
| 216 | unsigned short int __ctx(exponent); | ||
| 217 | }; | ||
| 218 | |||
| 219 | struct _libc_fpstate | ||
| 220 | { | ||
| 221 | unsigned long int __ctx(cw); | ||
| 222 | unsigned long int __ctx(sw); | ||
| 223 | unsigned long int __ctx(tag); | ||
| 224 | unsigned long int __ctx(ipoff); | ||
| 225 | unsigned long int __ctx(cssel); | ||
| 226 | unsigned long int __ctx(dataoff); | ||
| 227 | unsigned long int __ctx(datasel); | ||
| 228 | struct _libc_fpreg _st[8]; | ||
| 229 | unsigned long int __ctx(status); | ||
| 230 | }; | ||
| 231 | |||
| 232 | /* Structure to describe FPU registers. */ | ||
| 233 | typedef struct _libc_fpstate *fpregset_t; | ||
| 234 | |||
| 235 | /* Context to describe whole processor state. */ | ||
| 236 | typedef struct | ||
| 237 | { | ||
| 238 | gregset_t __ctx(gregs); | ||
| 239 | /* Due to Linux's history we have to use a pointer here. The SysV/i386 | ||
| 240 | ABI requires a struct with the values. */ | ||
| 241 | fpregset_t __ctx(fpregs); | ||
| 242 | unsigned long int __ctx(oldmask); | ||
| 243 | unsigned long int __ctx(cr2); | ||
| 244 | } mcontext_t; | ||
| 245 | |||
| 246 | /* Userlevel context. */ | ||
| 247 | typedef struct ucontext_t | ||
| 248 | { | ||
| 249 | unsigned long int __ctx(uc_flags); | ||
| 250 | struct ucontext_t *uc_link; | ||
| 251 | stack_t uc_stack; | ||
| 252 | mcontext_t uc_mcontext; | ||
| 253 | sigset_t uc_sigmask; | ||
| 254 | struct _libc_fpstate __fpregs_mem; | ||
| 255 | unsigned long int __ssp[4]; | ||
| 256 | } ucontext_t; | ||
| 257 | |||
| 258 | #endif /* !__x86_64__ */ | ||
| 259 | |||
| 260 | #undef __ctx | ||
| 261 | |||
| 262 | #endif /* sys/ucontext.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnu/sys/user.h deleted-180| ... | @@ -1,180 +0,0 @@ | ||
| 1 | /* Copyright (C) 2001-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_USER_H | ||
| 19 | #define _SYS_USER_H	1 | ||
| 20 | |||
| 21 | /* The whole purpose of this file is for GDB and GDB only. Don't read | ||
| 22 | too much into it. Don't use it for anything other than GDB unless | ||
| 23 | you know what you are doing. */ | ||
| 24 | |||
| 25 | #ifdef __x86_64__ | ||
| 26 | |||
| 27 | struct user_fpregs_struct | ||
| 28 | { | ||
| 29 | unsigned short int	cwd; | ||
| 30 | unsigned short int	swd; | ||
| 31 | unsigned short int	ftw; | ||
| 32 | unsigned short int	fop; | ||
| 33 | __extension__ unsigned long long int rip; | ||
| 34 | __extension__ unsigned long long int rdp; | ||
| 35 | unsigned int		mxcsr; | ||
| 36 | unsigned int		mxcr_mask; | ||
| 37 | unsigned int		st_space[32]; /* 8*16 bytes for each FP-reg = 128 bytes */ | ||
| 38 | unsigned int		xmm_space[64]; /* 16*16 bytes for each XMM-reg = 256 bytes */ | ||
| 39 | unsigned int		padding[24]; | ||
| 40 | }; | ||
| 41 | |||
| 42 | struct user_regs_struct | ||
| 43 | { | ||
| 44 | __extension__ unsigned long long int r15; | ||
| 45 | __extension__ unsigned long long int r14; | ||
| 46 | __extension__ unsigned long long int r13; | ||
| 47 | __extension__ unsigned long long int r12; | ||
| 48 | __extension__ unsigned long long int rbp; | ||
| 49 | __extension__ unsigned long long int rbx; | ||
| 50 | __extension__ unsigned long long int r11; | ||
| 51 | __extension__ unsigned long long int r10; | ||
| 52 | __extension__ unsigned long long int r9; | ||
| 53 | __extension__ unsigned long long int r8; | ||
| 54 | __extension__ unsigned long long int rax; | ||
| 55 | __extension__ unsigned long long int rcx; | ||
| 56 | __extension__ unsigned long long int rdx; | ||
| 57 | __extension__ unsigned long long int rsi; | ||
| 58 | __extension__ unsigned long long int rdi; | ||
| 59 | __extension__ unsigned long long int orig_rax; | ||
| 60 | __extension__ unsigned long long int rip; | ||
| 61 | __extension__ unsigned long long int cs; | ||
| 62 | __extension__ unsigned long long int eflags; | ||
| 63 | __extension__ unsigned long long int rsp; | ||
| 64 | __extension__ unsigned long long int ss; | ||
| 65 | __extension__ unsigned long long int fs_base; | ||
| 66 | __extension__ unsigned long long int gs_base; | ||
| 67 | __extension__ unsigned long long int ds; | ||
| 68 | __extension__ unsigned long long int es; | ||
| 69 | __extension__ unsigned long long int fs; | ||
| 70 | __extension__ unsigned long long int gs; | ||
| 71 | }; | ||
| 72 | |||
| 73 | struct user | ||
| 74 | { | ||
| 75 | struct user_regs_struct	regs; | ||
| 76 | int				u_fpvalid; | ||
| 77 | struct user_fpregs_struct	i387; | ||
| 78 | __extension__ unsigned long long int	u_tsize; | ||
| 79 | __extension__ unsigned long long int	u_dsize; | ||
| 80 | __extension__ unsigned long long int	u_ssize; | ||
| 81 | __extension__ unsigned long long int	start_code; | ||
| 82 | __extension__ unsigned long long int	start_stack; | ||
| 83 | __extension__ long long int		signal; | ||
| 84 | int				reserved; | ||
| 85 | __extension__ union | ||
| 86 | { | ||
| 87 | struct user_regs_struct*	u_ar0; | ||
| 88 | __extension__ unsigned long long int	__u_ar0_word; | ||
| 89 | }; | ||
| 90 | __extension__ union | ||
| 91 | { | ||
| 92 | struct user_fpregs_struct*	u_fpstate; | ||
| 93 | __extension__ unsigned long long int	__u_fpstate_word; | ||
| 94 | }; | ||
| 95 | __extension__ unsigned long long int	magic; | ||
| 96 | char				u_comm [32]; | ||
| 97 | __extension__ unsigned long long int	u_debugreg [8]; | ||
| 98 | }; | ||
| 99 | |||
| 100 | #else | ||
| 101 | /* These are the 32-bit x86 structures. */ | ||
| 102 | struct user_fpregs_struct | ||
| 103 | { | ||
| 104 | long int cwd; | ||
| 105 | long int swd; | ||
| 106 | long int twd; | ||
| 107 | long int fip; | ||
| 108 | long int fcs; | ||
| 109 | long int foo; | ||
| 110 | long int fos; | ||
| 111 | long int st_space [20]; | ||
| 112 | }; | ||
| 113 | |||
| 114 | struct user_fpxregs_struct | ||
| 115 | { | ||
| 116 | unsigned short int cwd; | ||
| 117 | unsigned short int swd; | ||
| 118 | unsigned short int twd; | ||
| 119 | unsigned short int fop; | ||
| 120 | long int fip; | ||
| 121 | long int fcs; | ||
| 122 | long int foo; | ||
| 123 | long int fos; | ||
| 124 | long int mxcsr; | ||
| 125 | long int reserved; | ||
| 126 | long int st_space[32]; /* 8*16 bytes for each FP-reg = 128 bytes */ | ||
| 127 | long int xmm_space[32]; /* 8*16 bytes for each XMM-reg = 128 bytes */ | ||
| 128 | long int padding[56]; | ||
| 129 | }; | ||
| 130 | |||
| 131 | struct user_regs_struct | ||
| 132 | { | ||
| 133 | long int ebx; | ||
| 134 | long int ecx; | ||
| 135 | long int edx; | ||
| 136 | long int esi; | ||
| 137 | long int edi; | ||
| 138 | long int ebp; | ||
| 139 | long int eax; | ||
| 140 | long int xds; | ||
| 141 | long int xes; | ||
| 142 | long int xfs; | ||
| 143 | long int xgs; | ||
| 144 | long int orig_eax; | ||
| 145 | long int eip; | ||
| 146 | long int xcs; | ||
| 147 | long int eflags; | ||
| 148 | long int esp; | ||
| 149 | long int xss; | ||
| 150 | }; | ||
| 151 | |||
| 152 | struct user | ||
| 153 | { | ||
| 154 | struct user_regs_struct	regs; | ||
| 155 | int				u_fpvalid; | ||
| 156 | struct user_fpregs_struct	i387; | ||
| 157 | unsigned long int		u_tsize; | ||
| 158 | unsigned long int		u_dsize; | ||
| 159 | unsigned long int		u_ssize; | ||
| 160 | unsigned long int		start_code; | ||
| 161 | unsigned long int		start_stack; | ||
| 162 | long int			signal; | ||
| 163 | int				reserved; | ||
| 164 | struct user_regs_struct*	u_ar0; | ||
| 165 | struct user_fpregs_struct*	u_fpstate; | ||
| 166 | unsigned long int		magic; | ||
| 167 | char				u_comm [32]; | ||
| 168 | int				u_debugreg [8]; | ||
| 169 | }; | ||
| 170 | #endif /* __x86_64__ */ | ||
| 171 | |||
| 172 | #define PAGE_SHIFT		12 | ||
| 173 | #define PAGE_SIZE		(1UL << PAGE_SHIFT) | ||
| 174 | #define PAGE_MASK		(~(PAGE_SIZE-1)) | ||
| 175 | #define NBPG			PAGE_SIZE | ||
| 176 | #define UPAGES			1 | ||
| 177 | #define HOST_TEXT_START_ADDR	(u.start_code) | ||
| 178 | #define HOST_STACK_END_ADDR	(u.start_stack + u.u_ssize * NBPG) | ||
| 179 | |||
| 180 | #endif	/* _SYS_USER_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnux32/bits/a.out.h deleted-11| ... | @@ -1,11 +0,0 @@ | ||
| 1 | #ifndef __A_OUT_GNU_H__ | ||
| 2 | # error "Never use <bits/a.out.h> directly; include <a.out.h> instead." | ||
| 3 | #endif | ||
| 4 | |||
| 5 | #ifdef __x86_64__ | ||
| 6 | |||
| 7 | /* Signal to users of this header that this architecture really doesn't | ||
| 8 | support a.out binary format. */ | ||
| 9 | #define __NO_A_OUT_SUPPORT 1 | ||
| 10 | |||
| 11 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnux32/bits/dl_find_object.h deleted-29| ... | @@ -1,29 +0,0 @@ | ||
| 1 | /* x86 definitions for finding objects. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _DLFCN_H | ||
| 20 | # error "Never use <bits/dl_find_object.h> directly; include <dlfcn.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifdef __x86_64__ | ||
| 24 | # define DLFO_STRUCT_HAS_EH_DBASE 0 | ||
| 25 | #else | ||
| 26 | # define DLFO_STRUCT_HAS_EH_DBASE 1 | ||
| 27 | #endif | ||
| 28 | #define DLFO_STRUCT_HAS_EH_COUNT 0 | ||
| 29 | #define DLFO_EH_SEGMENT_TYPE PT_GNU_EH_FRAME | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnux32/bits/endianness.h deleted-11| ... | @@ -1,11 +0,0 @@ | ||
| 1 | #ifndef _BITS_ENDIANNESS_H | ||
| 2 | #define _BITS_ENDIANNESS_H 1 | ||
| 3 | |||
| 4 | #ifndef _BITS_ENDIAN_H | ||
| 5 | # error "Never use <bits/endianness.h> directly; include <endian.h> instead." | ||
| 6 | #endif | ||
| 7 | |||
| 8 | /* i386/x86_64 are little-endian. */ | ||
| 9 | #define __BYTE_ORDER __LITTLE_ENDIAN | ||
| 10 | |||
| 11 | #endif /* bits/endianness.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnux32/bits/environments.h deleted-105| ... | @@ -1,105 +0,0 @@ | ||
| 1 | /* Copyright (C) 1999-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _UNISTD_H | ||
| 19 | # error "Never include this file directly. Use <unistd.h> instead" | ||
| 20 | #endif | ||
| 21 | |||
| 22 | #include <bits/wordsize.h> | ||
| 23 | |||
| 24 | /* This header should define the following symbols under the described | ||
| 25 | situations. A value `1' means that the model is always supported, | ||
| 26 | `-1' means it is never supported. Undefined means it cannot be | ||
| 27 | statically decided. | ||
| 28 | |||
| 29 | _POSIX_V7_ILP32_OFF32 32bit int, long, pointers, and off_t type | ||
| 30 | _POSIX_V7_ILP32_OFFBIG 32bit int, long, and pointers and larger off_t type | ||
| 31 | |||
| 32 | _POSIX_V7_LP64_OFF32	 64bit long and pointers and 32bit off_t type | ||
| 33 | _POSIX_V7_LPBIG_OFFBIG 64bit long and pointers and large off_t type | ||
| 34 | |||
| 35 | The macros _POSIX_V6_ILP32_OFF32, _POSIX_V6_ILP32_OFFBIG, | ||
| 36 | _POSIX_V6_LP64_OFF32, _POSIX_V6_LPBIG_OFFBIG, _XBS5_ILP32_OFF32, | ||
| 37 | _XBS5_ILP32_OFFBIG, _XBS5_LP64_OFF32, and _XBS5_LPBIG_OFFBIG were | ||
| 38 | used in previous versions of the Unix standard and are available | ||
| 39 | only for compatibility. | ||
| 40 | */ | ||
| 41 | |||
| 42 | #if __WORDSIZE == 64 | ||
| 43 | |||
| 44 | /* Environments with 32-bit wide pointers are optionally provided. | ||
| 45 | Therefore following macros aren't defined: | ||
| 46 | # undef _POSIX_V7_ILP32_OFF32 | ||
| 47 | # undef _POSIX_V7_ILP32_OFFBIG | ||
| 48 | # undef _POSIX_V6_ILP32_OFF32 | ||
| 49 | # undef _POSIX_V6_ILP32_OFFBIG | ||
| 50 | # undef _XBS5_ILP32_OFF32 | ||
| 51 | # undef _XBS5_ILP32_OFFBIG | ||
| 52 | and users need to check at runtime. */ | ||
| 53 | |||
| 54 | /* We also have no use (for now) for an environment with bigger pointers | ||
| 55 | and offsets. */ | ||
| 56 | # define _POSIX_V7_LPBIG_OFFBIG	-1 | ||
| 57 | # define _POSIX_V6_LPBIG_OFFBIG	-1 | ||
| 58 | # define _XBS5_LPBIG_OFFBIG	-1 | ||
| 59 | |||
| 60 | /* By default we have 64-bit wide `long int', pointers and `off_t'. */ | ||
| 61 | # define _POSIX_V7_LP64_OFF64	1 | ||
| 62 | # define _POSIX_V6_LP64_OFF64	1 | ||
| 63 | # define _XBS5_LP64_OFF64	1 | ||
| 64 | |||
| 65 | #else /* __WORDSIZE == 32 */ | ||
| 66 | |||
| 67 | /* We have 32-bit wide `int', `long int' and pointers and all platforms | ||
| 68 | support LFS. -mx32 has 64-bit wide `off_t'. */ | ||
| 69 | # define _POSIX_V7_ILP32_OFFBIG	1 | ||
| 70 | # define _POSIX_V6_ILP32_OFFBIG 1 | ||
| 71 | # define _XBS5_ILP32_OFFBIG	1 | ||
| 72 | |||
| 73 | # ifndef __x86_64__ | ||
| 74 | /* -m32 has 32-bit wide `off_t'. */ | ||
| 75 | # define _POSIX_V7_ILP32_OFF32	1 | ||
| 76 | # define _POSIX_V6_ILP32_OFF32	1 | ||
| 77 | # define _XBS5_ILP32_OFF32	1 | ||
| 78 | # endif | ||
| 79 | |||
| 80 | /* We optionally provide an environment with the above size but an 64-bit | ||
| 81 | side `off_t'. Therefore we don't define _POSIX_V7_ILP32_OFFBIG. */ | ||
| 82 | |||
| 83 | /* Environments with 64-bit wide pointers can be provided, | ||
| 84 | so these macros aren't defined: | ||
| 85 | # undef _POSIX_V7_LP64_OFF64 | ||
| 86 | # undef _POSIX_V7_LPBIG_OFFBIG | ||
| 87 | # undef _POSIX_V6_LP64_OFF64 | ||
| 88 | # undef _POSIX_V6_LPBIG_OFFBIG | ||
| 89 | # undef _XBS5_LP64_OFF64 | ||
| 90 | # undef _XBS5_LPBIG_OFFBIG | ||
| 91 | and sysconf tests for it at runtime. */ | ||
| 92 | |||
| 93 | #endif /* __WORDSIZE == 32 */ | ||
| 94 | |||
| 95 | #define __ILP32_OFF32_CFLAGS	"-m32" | ||
| 96 | #define __ILP32_OFF32_LDFLAGS	"-m32" | ||
| 97 | #if defined __x86_64__ && defined __ILP32__ | ||
| 98 | # define __ILP32_OFFBIG_CFLAGS	"-mx32" | ||
| 99 | # define __ILP32_OFFBIG_LDFLAGS	"-mx32" | ||
| 100 | #else | ||
| 101 | # define __ILP32_OFFBIG_CFLAGS	"-m32 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" | ||
| 102 | # define __ILP32_OFFBIG_LDFLAGS	"-m32" | ||
| 103 | #endif | ||
| 104 | #define __LP64_OFF64_CFLAGS	"-m64" | ||
| 105 | #define __LP64_OFF64_LDFLAGS	"-m64" | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnux32/bits/epoll.h deleted-29| ... | @@ -1,29 +0,0 @@ | ||
| 1 | /* Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_SYS_EPOLL_H | ||
| 19 | # error "Never use <bits/epoll.h> directly; include <sys/epoll.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Flags to be passed to epoll_create1. */ | ||
| 23 | enum | ||
| 24 | { | ||
| 25 | EPOLL_CLOEXEC = 02000000 | ||
| 26 | #define EPOLL_CLOEXEC EPOLL_CLOEXEC | ||
| 27 | }; | ||
| 28 | |||
| 29 | #define __EPOLL_PACKED __attribute__ ((__packed__)) | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnux32/bits/fcntl.h deleted-61| ... | @@ -1,61 +0,0 @@ | ||
| 1 | /* O_*, F_*, FD_* bit values for Linux/x86. | ||
| 2 | Copyright (C) 2001-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _FCNTL_H | ||
| 20 | # error "Never use <bits/fcntl.h> directly; include <fcntl.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifdef __x86_64__ | ||
| 24 | # define __O_LARGEFILE	0 | ||
| 25 | #endif | ||
| 26 | |||
| 27 | #ifdef __x86_64__ | ||
| 28 | /* Not necessary, we always have 64-bit offsets. */ | ||
| 29 | # define F_GETLK64	5	/* Get record locking info. */ | ||
| 30 | # define F_SETLK64	6	/* Set record locking info (non-blocking). */ | ||
| 31 | # define F_SETLKW64	7	/* Set record locking info (blocking).	*/ | ||
| 32 | #endif | ||
| 33 | |||
| 34 | |||
| 35 | struct flock | ||
| 36 | { | ||
| 37 | short int l_type;	/* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK.	*/ | ||
| 38 | short int l_whence;	/* Where `l_start' is relative to (like `lseek'). */ | ||
| 39 | #ifndef __USE_FILE_OFFSET64 | ||
| 40 | __off_t l_start;	/* Offset where the lock begins. */ | ||
| 41 | __off_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 42 | #else | ||
| 43 | __off64_t l_start;	/* Offset where the lock begins. */ | ||
| 44 | __off64_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 45 | #endif | ||
| 46 | __pid_t l_pid;	/* Process holding the lock. */ | ||
| 47 | }; | ||
| 48 | |||
| 49 | #ifdef __USE_LARGEFILE64 | ||
| 50 | struct flock64 | ||
| 51 | { | ||
| 52 | short int l_type;	/* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK.	*/ | ||
| 53 | short int l_whence;	/* Where `l_start' is relative to (like `lseek'). */ | ||
| 54 | __off64_t l_start;	/* Offset where the lock begins. */ | ||
| 55 | __off64_t l_len;	/* Size of the locked area; zero means until EOF. */ | ||
| 56 | __pid_t l_pid;	/* Process holding the lock. */ | ||
| 57 | }; | ||
| 58 | #endif | ||
| 59 | |||
| 60 | /* Include generic Linux declarations. */ | ||
| 61 | #include <bits/fcntl-linux.h> | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnux32/bits/fenv.h deleted-116| ... | @@ -1,116 +0,0 @@ | ||
| 1 | /* Copyright (C) 1997-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _FENV_H | ||
| 19 | # error "Never use <bits/fenv.h> directly; include <fenv.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* Define bits representing the exception. We use the bit positions | ||
| 23 | of the appropriate bits in the FPU control word. */ | ||
| 24 | enum | ||
| 25 | { | ||
| 26 | FE_INVALID = | ||
| 27 | #define FE_INVALID	0x01 | ||
| 28 | FE_INVALID, | ||
| 29 | __FE_DENORM = 0x02, | ||
| 30 | FE_DIVBYZERO = | ||
| 31 | #define FE_DIVBYZERO	0x04 | ||
| 32 | FE_DIVBYZERO, | ||
| 33 | FE_OVERFLOW = | ||
| 34 | #define FE_OVERFLOW	0x08 | ||
| 35 | FE_OVERFLOW, | ||
| 36 | FE_UNDERFLOW = | ||
| 37 | #define FE_UNDERFLOW	0x10 | ||
| 38 | FE_UNDERFLOW, | ||
| 39 | FE_INEXACT = | ||
| 40 | #define FE_INEXACT	0x20 | ||
| 41 | FE_INEXACT | ||
| 42 | }; | ||
| 43 | |||
| 44 | #define FE_ALL_EXCEPT \ | ||
| 45 | 	(FE_INEXACT | FE_DIVBYZERO | FE_UNDERFLOW | FE_OVERFLOW | FE_INVALID) | ||
| 46 | |||
| 47 | /* The ix87 FPU supports all of the four defined rounding modes. We | ||
| 48 | use again the bit positions in the FPU control word as the values | ||
| 49 | for the appropriate macros. */ | ||
| 50 | enum | ||
| 51 | { | ||
| 52 | FE_TONEAREST = | ||
| 53 | #define FE_TONEAREST	0 | ||
| 54 | FE_TONEAREST, | ||
| 55 | FE_DOWNWARD = | ||
| 56 | #define FE_DOWNWARD	0x400 | ||
| 57 | FE_DOWNWARD, | ||
| 58 | FE_UPWARD = | ||
| 59 | #define FE_UPWARD	0x800 | ||
| 60 | FE_UPWARD, | ||
| 61 | FE_TOWARDZERO = | ||
| 62 | #define FE_TOWARDZERO	0xc00 | ||
| 63 | FE_TOWARDZERO | ||
| 64 | }; | ||
| 65 | |||
| 66 | |||
| 67 | /* Type representing exception flags. */ | ||
| 68 | typedef unsigned short int fexcept_t; | ||
| 69 | |||
| 70 | |||
| 71 | /* Type representing floating-point environment. This structure | ||
| 72 | corresponds to the layout of the block written by the `fstenv' | ||
| 73 | instruction and has additional fields for the contents of the MXCSR | ||
| 74 | register as written by the `stmxcsr' instruction. */ | ||
| 75 | typedef struct | ||
| 76 | { | ||
| 77 | unsigned short int __control_word; | ||
| 78 | unsigned short int __glibc_reserved1; | ||
| 79 | unsigned short int __status_word; | ||
| 80 | unsigned short int __glibc_reserved2; | ||
| 81 | unsigned short int __tags; | ||
| 82 | unsigned short int __glibc_reserved3; | ||
| 83 | unsigned int __eip; | ||
| 84 | unsigned short int __cs_selector; | ||
| 85 | unsigned int __opcode:11; | ||
| 86 | unsigned int __glibc_reserved4:5; | ||
| 87 | unsigned int __data_offset; | ||
| 88 | unsigned short int __data_selector; | ||
| 89 | unsigned short int __glibc_reserved5; | ||
| 90 | #ifdef __x86_64__ | ||
| 91 | unsigned int __mxcsr; | ||
| 92 | #endif | ||
| 93 | } | ||
| 94 | fenv_t; | ||
| 95 | |||
| 96 | /* If the default argument is used we use this value. */ | ||
| 97 | #define FE_DFL_ENV	((const fenv_t *) -1) | ||
| 98 | |||
| 99 | #ifdef __USE_GNU | ||
| 100 | /* Floating-point environment where none of the exception is masked. */ | ||
| 101 | # define FE_NOMASK_ENV	((const fenv_t *) -2) | ||
| 102 | #endif | ||
| 103 | |||
| 104 | #if __GLIBC_USE (IEC_60559_BFP_EXT_C23) | ||
| 105 | /* Type representing floating-point control modes. */ | ||
| 106 | typedef struct | ||
| 107 | { | ||
| 108 | unsigned short int __control_word; | ||
| 109 | unsigned short int __glibc_reserved; | ||
| 110 | unsigned int __mxcsr; | ||
| 111 | } | ||
| 112 | femode_t; | ||
| 113 | |||
| 114 | /* Default floating-point control modes. */ | ||
| 115 | # define FE_DFL_MODE	((const femode_t *) -1L) | ||
| 116 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnux32/bits/floatn.h deleted-129| ... | @@ -1,129 +0,0 @@ | ||
| 1 | /* Macros to control TS 18661-3 glibc features on x86. | ||
| 2 | Copyright (C) 2017-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_FLOATN_H | ||
| 20 | #define _BITS_FLOATN_H | ||
| 21 | |||
| 22 | #include <features.h> | ||
| 23 | |||
| 24 | /* Defined to 1 if the current compiler invocation provides a | ||
| 25 | floating-point type with the IEEE 754 binary128 format, and this | ||
| 26 | glibc includes corresponding *f128 interfaces for it. The required | ||
| 27 | libgcc support was added some time after the basic compiler | ||
| 28 | support, for x86_64 and x86. */ | ||
| 29 | #if (defined __x86_64__							\ | ||
| 30 | ? __GNUC_PREREQ (4, 3)						\ | ||
| 31 | : (defined __GNU__ ? __GNUC_PREREQ (4, 5) : __GNUC_PREREQ (4, 4))) \ | ||
| 32 | || __glibc_clang_prereq (3, 4) | ||
| 33 | # define __HAVE_FLOAT128 1 | ||
| 34 | #else | ||
| 35 | # define __HAVE_FLOAT128 0 | ||
| 36 | #endif | ||
| 37 | |||
| 38 | /* Defined to 1 if __HAVE_FLOAT128 is 1 and the type is ABI-distinct | ||
| 39 | from the default float, double and long double types in this glibc. */ | ||
| 40 | #if __HAVE_FLOAT128 | ||
| 41 | # define __HAVE_DISTINCT_FLOAT128 1 | ||
| 42 | #else | ||
| 43 | # define __HAVE_DISTINCT_FLOAT128 0 | ||
| 44 | #endif | ||
| 45 | |||
| 46 | /* Defined to 1 if the current compiler invocation provides a | ||
| 47 | floating-point type with the right format for _Float64x, and this | ||
| 48 | glibc includes corresponding *f64x interfaces for it. */ | ||
| 49 | #define __HAVE_FLOAT64X 1 | ||
| 50 | |||
| 51 | /* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format | ||
| 52 | of long double. Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has | ||
| 53 | the format of _Float128, which must be different from that of long | ||
| 54 | double. */ | ||
| 55 | #define __HAVE_FLOAT64X_LONG_DOUBLE 1 | ||
| 56 | |||
| 57 | #ifndef __ASSEMBLER__ | ||
| 58 | |||
| 59 | /* Defined to concatenate the literal suffix to be used with _Float128 | ||
| 60 | types, if __HAVE_FLOAT128 is 1. */ | ||
| 61 | # if __HAVE_FLOAT128 | ||
| 62 | # if !__GNUC_PREREQ (7, 0) \ | ||
| 63 | || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) \ | ||
| 64 | || defined __clang__ | ||
| 65 | /* The literal suffix f128 exists only since GCC 7.0. */ | ||
| 66 | # define __f128(x) x##q | ||
| 67 | # else | ||
| 68 | # define __f128(x) x##f128 | ||
| 69 | # endif | ||
| 70 | # endif | ||
| 71 | |||
| 72 | /* Defined to a complex binary128 type if __HAVE_FLOAT128 is 1. */ | ||
| 73 | # if __HAVE_FLOAT128 | ||
| 74 | # if !__GNUC_PREREQ (7, 0) \ | ||
| 75 | || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) \ | ||
| 76 | || defined __clang__ | ||
| 77 | /* Add a typedef for older GCC compilers which don't natively support | ||
| 78 | _Complex _Float128. */ | ||
| 79 | typedef _Complex float __cfloat128 __attribute__ ((__mode__ (__TC__))); | ||
| 80 | # define __CFLOAT128 __cfloat128 | ||
| 81 | # else | ||
| 82 | # define __CFLOAT128 _Complex _Float128 | ||
| 83 | # endif | ||
| 84 | # endif | ||
| 85 | |||
| 86 | /* The remaining of this file provides support for older compilers. */ | ||
| 87 | # if __HAVE_FLOAT128 | ||
| 88 | |||
| 89 | /* The type _Float128 exists only since GCC 7.0. */ | ||
| 90 | # if !__GNUC_PREREQ (7, 0) \ | ||
| 91 | || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) \ | ||
| 92 | || __glibc_clang_prereq (3, 4) | ||
| 93 | typedef __float128 _Float128; | ||
| 94 | # endif | ||
| 95 | |||
| 96 | /* __builtin_huge_valf128 doesn't exist before GCC 7.0 nor Clang 7.0. */ | ||
| 97 | # if !__GNUC_PREREQ (7, 0) && !__glibc_clang_prereq (7, 0) | ||
| 98 | # define __builtin_huge_valf128() ((_Float128) __builtin_huge_val ()) | ||
| 99 | # endif | ||
| 100 | |||
| 101 | /* Older GCC has only a subset of built-in functions for _Float128 on | ||
| 102 | x86, and __builtin_infq is not usable in static initializers. | ||
| 103 | Converting a narrower sNaN to _Float128 produces a quiet NaN, so | ||
| 104 | attempts to use _Float128 sNaNs will not work properly with older | ||
| 105 | compilers. */ | ||
| 106 | # if !__GNUC_PREREQ (7, 0) && !defined __clang__ | ||
| 107 | # define __builtin_copysignf128 __builtin_copysignq | ||
| 108 | # define __builtin_fabsf128 __builtin_fabsq | ||
| 109 | # define __builtin_inff128() ((_Float128) __builtin_inf ()) | ||
| 110 | # define __builtin_nanf128(x) ((_Float128) __builtin_nan (x)) | ||
| 111 | # define __builtin_nansf128(x) ((_Float128) __builtin_nans (x)) | ||
| 112 | # endif | ||
| 113 | |||
| 114 | /* In math/math.h, __MATH_TG will expand signbit to __builtin_signbit*, | ||
| 115 | e.g.: __builtin_signbitf128, before GCC 6. However, there has never | ||
| 116 | been a __builtin_signbitf128 in GCC and the type-generic builtin is | ||
| 117 | only available since GCC 6. signbit is expanded to __builtin_signbit | ||
| 118 | after Clang 3.3. */ | ||
| 119 | # if !__GNUC_PREREQ (6, 0) | ||
| 120 | # define __builtin_signbitf128 __signbitf128 | ||
| 121 | # endif | ||
| 122 | |||
| 123 | # endif | ||
| 124 | |||
| 125 | #endif /* !__ASSEMBLER__. */ | ||
| 126 | |||
| 127 | #include <bits/floatn-common.h> | ||
| 128 | |||
| 129 | #endif /* _BITS_FLOATN_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnux32/bits/flt-eval-method.h deleted-33| ... | @@ -1,33 +0,0 @@ | ||
| 1 | /* Define __GLIBC_FLT_EVAL_METHOD. x86 version. | ||
| 2 | Copyright (C) 2016-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _MATH_H | ||
| 20 | # error "Never use <bits/flt-eval-method.h> directly; include <math.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifdef __FLT_EVAL_METHOD__ | ||
| 24 | # if __FLT_EVAL_METHOD__ == -1 | ||
| 25 | # define __GLIBC_FLT_EVAL_METHOD	2 | ||
| 26 | # else | ||
| 27 | # define __GLIBC_FLT_EVAL_METHOD	__FLT_EVAL_METHOD__ | ||
| 28 | # endif | ||
| 29 | #elif defined __x86_64__ | ||
| 30 | # define __GLIBC_FLT_EVAL_METHOD	0 | ||
| 31 | #else | ||
| 32 | # define __GLIBC_FLT_EVAL_METHOD	2 | ||
| 33 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnux32/bits/fp-logb.h deleted-24| ... | @@ -1,24 +0,0 @@ | ||
| 1 | /* Define __FP_LOGB0_IS_MIN and __FP_LOGBNAN_IS_MIN. x86 version. | ||
| 2 | Copyright (C) 2016-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _MATH_H | ||
| 20 | # error "Never use <bits/fp-logb.h> directly; include <math.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #define __FP_LOGB0_IS_MIN	1 | ||
| 24 | #define __FP_LOGBNAN_IS_MIN	1 | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnux32/bits/indirect-return.h deleted-37| ... | @@ -1,37 +0,0 @@ | ||
| 1 | /* Definition of __INDIRECT_RETURN. x86 version. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _UCONTEXT_H | ||
| 20 | # error "Never include <bits/indirect-return.h> directly; use <ucontext.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* On x86, swapcontext returns via indirect branch when the shadow stack | ||
| 24 | is enabled. Define __INDIRECT_RETURN to indicate whether swapcontext | ||
| 25 | returns via indirect branch. */ | ||
| 26 | #if defined __CET__ && (__CET__ & 2) != 0 | ||
| 27 | # if __glibc_has_attribute (__indirect_return__) | ||
| 28 | # define __INDIRECT_RETURN __attribute__ ((__indirect_return__)) | ||
| 29 | # else | ||
| 30 | /* Newer compilers provide the indirect_return attribute, but without | ||
| 31 | it we can use returns_twice to affect the optimizer in the same | ||
| 32 | way and avoid unsafe optimizations. */ | ||
| 33 | # define __INDIRECT_RETURN __attribute__ ((__returns_twice__)) | ||
| 34 | # endif | ||
| 35 | #else | ||
| 36 | # define __INDIRECT_RETURN | ||
| 37 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnux32/bits/ipctypes.h deleted-33| ... | @@ -1,33 +0,0 @@ | ||
| 1 | /* bits/ipctypes.h -- Define some types used by SysV IPC/MSG/SHM. | ||
| 2 | Copyright (C) 2012-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_IPC_H | ||
| 20 | # error "Never use <bits/ipctypes.h> directly; include <sys/ipc.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef _BITS_IPCTYPES_H | ||
| 24 | #define _BITS_IPCTYPES_H	1 | ||
| 25 | |||
| 26 | /* Used in `struct shmid_ds'. */ | ||
| 27 | # ifdef __x86_64__ | ||
| 28 | typedef int __ipc_pid_t; | ||
| 29 | # else | ||
| 30 | typedef unsigned short int __ipc_pid_t; | ||
| 31 | # endif | ||
| 32 | |||
| 33 | #endif /* bits/ipctypes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnux32/bits/iscanonical.h deleted-54| ... | @@ -1,54 +0,0 @@ | ||
| 1 | /* Define iscanonical macro. ldbl-96 version. | ||
| 2 | Copyright (C) 2016-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _MATH_H | ||
| 20 | # error "Never use <bits/iscanonical.h> directly; include <math.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | extern int __iscanonicall (long double __x) | ||
| 24 | __THROW __attribute__ ((__const__)); | ||
| 25 | #define __iscanonicalf(x) ((void) (__typeof (x)) (x), 1) | ||
| 26 | #define __iscanonical(x) ((void) (__typeof (x)) (x), 1) | ||
| 27 | #if __HAVE_DISTINCT_FLOAT128 | ||
| 28 | # define __iscanonicalf128(x) ((void) (__typeof (x)) (x), 1) | ||
| 29 | #endif | ||
| 30 | |||
| 31 | /* Return nonzero value if X is canonical. In IEEE interchange binary | ||
| 32 | formats, all values are canonical, but the argument must still be | ||
| 33 | converted to its semantic type for any exceptions arising from the | ||
| 34 | conversion, before being discarded; in extended precision, there | ||
| 35 | are encodings that are not consistently handled as corresponding to | ||
| 36 | any particular value of the type, and we return 0 for those. */ | ||
| 37 | #ifndef __cplusplus | ||
| 38 | # define iscanonical(x) __MATH_TG ((x), __iscanonical, (x)) | ||
| 39 | #else | ||
| 40 | /* In C++ mode, __MATH_TG cannot be used, because it relies on | ||
| 41 | __builtin_types_compatible_p, which is a C-only builtin. On the | ||
| 42 | other hand, overloading provides the means to distinguish between | ||
| 43 | the floating-point types. The overloading resolution will match | ||
| 44 | the correct parameter (regardless of type qualifiers (i.e.: const | ||
| 45 | and volatile)). */ | ||
| 46 | extern "C++" { | ||
| 47 | inline int iscanonical (float __val) { return __iscanonicalf (__val); } | ||
| 48 | inline int iscanonical (double __val) { return __iscanonical (__val); } | ||
| 49 | inline int iscanonical (long double __val) { return __iscanonicall (__val); } | ||
| 50 | # if __HAVE_DISTINCT_FLOAT128 | ||
| 51 | inline int iscanonical (_Float128 __val) { return __iscanonicalf128 (__val); } | ||
| 52 | # endif | ||
| 53 | } | ||
| 54 | #endif /* __cplusplus */ | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnux32/bits/link.h deleted-159| ... | @@ -1,159 +0,0 @@ | ||
| 1 | /* Copyright (C) 2004-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef	_LINK_H | ||
| 19 | # error "Never include <bits/link.h> directly; use <link.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | |||
| 23 | #ifndef __x86_64__ | ||
| 24 | /* Registers for entry into PLT on IA-32. */ | ||
| 25 | typedef struct La_i86_regs | ||
| 26 | { | ||
| 27 | uint32_t lr_edx; | ||
| 28 | uint32_t lr_ecx; | ||
| 29 | uint32_t lr_eax; | ||
| 30 | uint32_t lr_ebp; | ||
| 31 | uint32_t lr_esp; | ||
| 32 | } La_i86_regs; | ||
| 33 | |||
| 34 | /* Return values for calls from PLT on IA-32. */ | ||
| 35 | typedef struct La_i86_retval | ||
| 36 | { | ||
| 37 | uint32_t lrv_eax; | ||
| 38 | uint32_t lrv_edx; | ||
| 39 | long double lrv_st0; | ||
| 40 | long double lrv_st1; | ||
| 41 | uint64_t __glibc_unused1; | ||
| 42 | uint64_t __glibc_unused2; | ||
| 43 | } La_i86_retval; | ||
| 44 | |||
| 45 | |||
| 46 | __BEGIN_DECLS | ||
| 47 | |||
| 48 | extern Elf32_Addr la_i86_gnu_pltenter (Elf32_Sym *__sym, unsigned int __ndx, | ||
| 49 | 				 uintptr_t *__refcook, | ||
| 50 | 				 uintptr_t *__defcook, | ||
| 51 | 				 La_i86_regs *__regs, | ||
| 52 | 				 unsigned int *__flags, | ||
| 53 | 				 const char *__symname, | ||
| 54 | 				 long int *__framesizep); | ||
| 55 | extern unsigned int la_i86_gnu_pltexit (Elf32_Sym *__sym, unsigned int __ndx, | ||
| 56 | 					uintptr_t *__refcook, | ||
| 57 | 					uintptr_t *__defcook, | ||
| 58 | 					const La_i86_regs *__inregs, | ||
| 59 | 					La_i86_retval *__outregs, | ||
| 60 | 					const char *symname); | ||
| 61 | |||
| 62 | __END_DECLS | ||
| 63 | |||
| 64 | #else | ||
| 65 | |||
| 66 | /* Registers for entry into PLT on x86-64. */ | ||
| 67 | # if __GNUC_PREREQ (4,0) | ||
| 68 | typedef float La_x86_64_xmm __attribute__ ((__vector_size__ (16))); | ||
| 69 | typedef float La_x86_64_ymm | ||
| 70 | __attribute__ ((__vector_size__ (32), __aligned__ (16))); | ||
| 71 | typedef double La_x86_64_zmm | ||
| 72 | __attribute__ ((__vector_size__ (64), __aligned__ (16))); | ||
| 73 | # else | ||
| 74 | typedef float La_x86_64_xmm __attribute__ ((__mode__ (__V4SF__))); | ||
| 75 | # endif | ||
| 76 | |||
| 77 | typedef union | ||
| 78 | { | ||
| 79 | # if __GNUC_PREREQ (4,0) | ||
| 80 | La_x86_64_ymm ymm[2]; | ||
| 81 | La_x86_64_zmm zmm[1]; | ||
| 82 | # endif | ||
| 83 | La_x86_64_xmm xmm[4]; | ||
| 84 | } La_x86_64_vector __attribute__ ((__aligned__ (16))); | ||
| 85 | |||
| 86 | typedef struct La_x86_64_regs | ||
| 87 | { | ||
| 88 | uint64_t lr_rdx; | ||
| 89 | uint64_t lr_r8; | ||
| 90 | uint64_t lr_r9; | ||
| 91 | uint64_t lr_rcx; | ||
| 92 | uint64_t lr_rsi; | ||
| 93 | uint64_t lr_rdi; | ||
| 94 | uint64_t lr_rbp; | ||
| 95 | uint64_t lr_rsp; | ||
| 96 | La_x86_64_xmm lr_xmm[8]; | ||
| 97 | La_x86_64_vector lr_vector[8]; | ||
| 98 | #ifndef __ILP32__ | ||
| 99 | __int128_t __glibc_unused1[4]; | ||
| 100 | #endif | ||
| 101 | } La_x86_64_regs; | ||
| 102 | |||
| 103 | /* Return values for calls from PLT on x86-64. */ | ||
| 104 | typedef struct La_x86_64_retval | ||
| 105 | { | ||
| 106 | uint64_t lrv_rax; | ||
| 107 | uint64_t lrv_rdx; | ||
| 108 | La_x86_64_xmm lrv_xmm0; | ||
| 109 | La_x86_64_xmm lrv_xmm1; | ||
| 110 | long double lrv_st0; | ||
| 111 | long double lrv_st1; | ||
| 112 | La_x86_64_vector lrv_vector0; | ||
| 113 | La_x86_64_vector lrv_vector1; | ||
| 114 | #ifndef __ILP32__ | ||
| 115 | __int128_t __glibc_unused1; | ||
| 116 | __int128_t __glibc_unused2; | ||
| 117 | #endif | ||
| 118 | } La_x86_64_retval; | ||
| 119 | |||
| 120 | #define La_x32_regs La_x86_64_regs | ||
| 121 | #define La_x32_retval La_x86_64_retval | ||
| 122 | |||
| 123 | __BEGIN_DECLS | ||
| 124 | |||
| 125 | extern Elf64_Addr la_x86_64_gnu_pltenter (Elf64_Sym *__sym, | ||
| 126 | 					 unsigned int __ndx, | ||
| 127 | 					 uintptr_t *__refcook, | ||
| 128 | 					 uintptr_t *__defcook, | ||
| 129 | 					 La_x86_64_regs *__regs, | ||
| 130 | 					 unsigned int *__flags, | ||
| 131 | 					 const char *__symname, | ||
| 132 | 					 long int *__framesizep); | ||
| 133 | extern unsigned int la_x86_64_gnu_pltexit (Elf64_Sym *__sym, | ||
| 134 | 					 unsigned int __ndx, | ||
| 135 | 					 uintptr_t *__refcook, | ||
| 136 | 					 uintptr_t *__defcook, | ||
| 137 | 					 const La_x86_64_regs *__inregs, | ||
| 138 | 					 La_x86_64_retval *__outregs, | ||
| 139 | 					 const char *__symname); | ||
| 140 | |||
| 141 | extern Elf32_Addr la_x32_gnu_pltenter (Elf32_Sym *__sym, | ||
| 142 | 				 unsigned int __ndx, | ||
| 143 | 				 uintptr_t *__refcook, | ||
| 144 | 				 uintptr_t *__defcook, | ||
| 145 | 				 La_x32_regs *__regs, | ||
| 146 | 				 unsigned int *__flags, | ||
| 147 | 				 const char *__symname, | ||
| 148 | 				 long int *__framesizep); | ||
| 149 | extern unsigned int la_x32_gnu_pltexit (Elf32_Sym *__sym, | ||
| 150 | 					unsigned int __ndx, | ||
| 151 | 					uintptr_t *__refcook, | ||
| 152 | 					uintptr_t *__defcook, | ||
| 153 | 					const La_x32_regs *__inregs, | ||
| 154 | 					La_x32_retval *__outregs, | ||
| 155 | 					const char *__symname); | ||
| 156 | |||
| 157 | __END_DECLS | ||
| 158 | |||
| 159 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnux32/bits/long-double.h deleted-21| ... | @@ -1,21 +0,0 @@ | ||
| 1 | /* Properties of long double type. ldbl-96 version. | ||
| 2 | Copyright (C) 2016-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | /* long double is distinct from double, so there is nothing to | ||
| 20 | define here. */ | ||
| 21 | #define __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI 0 | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnux32/bits/math-vector.h deleted-147| ... | @@ -1,147 +0,0 @@ | ||
| 1 | /* Platform-specific SIMD declarations of math functions. | ||
| 2 | Copyright (C) 2014-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _MATH_H | ||
| 20 | # error "Never include <bits/math-vector.h> directly;\ | ||
| 21 | include <math.h> instead." | ||
| 22 | #endif | ||
| 23 | |||
| 24 | /* Get default empty definitions for simd declarations. */ | ||
| 25 | #include <bits/libm-simd-decl-stubs.h> | ||
| 26 | |||
| 27 | #if defined __x86_64__ && defined __FAST_MATH__ | ||
| 28 | # if defined _OPENMP && _OPENMP >= 201307 | ||
| 29 | /* OpenMP case. */ | ||
| 30 | # define __DECL_SIMD_x86_64 _Pragma ("omp declare simd notinbranch") | ||
| 31 | # elif __GNUC_PREREQ (6,0) | ||
| 32 | /* W/o OpenMP use GCC 6.* __attribute__ ((__simd__)). */ | ||
| 33 | # define __DECL_SIMD_x86_64 __attribute__ ((__simd__ ("notinbranch"))) | ||
| 34 | # endif | ||
| 35 | |||
| 36 | # ifdef __DECL_SIMD_x86_64 | ||
| 37 | # undef __DECL_SIMD_cos | ||
| 38 | # define __DECL_SIMD_cos __DECL_SIMD_x86_64 | ||
| 39 | # undef __DECL_SIMD_cosf | ||
| 40 | # define __DECL_SIMD_cosf __DECL_SIMD_x86_64 | ||
| 41 | # undef __DECL_SIMD_sin | ||
| 42 | # define __DECL_SIMD_sin __DECL_SIMD_x86_64 | ||
| 43 | # undef __DECL_SIMD_sinf | ||
| 44 | # define __DECL_SIMD_sinf __DECL_SIMD_x86_64 | ||
| 45 | # undef __DECL_SIMD_sincos | ||
| 46 | # define __DECL_SIMD_sincos __DECL_SIMD_x86_64 | ||
| 47 | # undef __DECL_SIMD_sincosf | ||
| 48 | # define __DECL_SIMD_sincosf __DECL_SIMD_x86_64 | ||
| 49 | # undef __DECL_SIMD_log | ||
| 50 | # define __DECL_SIMD_log __DECL_SIMD_x86_64 | ||
| 51 | # undef __DECL_SIMD_logf | ||
| 52 | # define __DECL_SIMD_logf __DECL_SIMD_x86_64 | ||
| 53 | # undef __DECL_SIMD_exp | ||
| 54 | # define __DECL_SIMD_exp __DECL_SIMD_x86_64 | ||
| 55 | # undef __DECL_SIMD_expf | ||
| 56 | # define __DECL_SIMD_expf __DECL_SIMD_x86_64 | ||
| 57 | # undef __DECL_SIMD_pow | ||
| 58 | # define __DECL_SIMD_pow __DECL_SIMD_x86_64 | ||
| 59 | # undef __DECL_SIMD_powf | ||
| 60 | # define __DECL_SIMD_powf __DECL_SIMD_x86_64 | ||
| 61 | # undef __DECL_SIMD_acos | ||
| 62 | # define __DECL_SIMD_acos __DECL_SIMD_x86_64 | ||
| 63 | # undef __DECL_SIMD_acosf | ||
| 64 | # define __DECL_SIMD_acosf __DECL_SIMD_x86_64 | ||
| 65 | # undef __DECL_SIMD_atan | ||
| 66 | # define __DECL_SIMD_atan __DECL_SIMD_x86_64 | ||
| 67 | # undef __DECL_SIMD_atanf | ||
| 68 | # define __DECL_SIMD_atanf __DECL_SIMD_x86_64 | ||
| 69 | # undef __DECL_SIMD_asin | ||
| 70 | # define __DECL_SIMD_asin __DECL_SIMD_x86_64 | ||
| 71 | # undef __DECL_SIMD_asinf | ||
| 72 | # define __DECL_SIMD_asinf __DECL_SIMD_x86_64 | ||
| 73 | # undef __DECL_SIMD_hypot | ||
| 74 | # define __DECL_SIMD_hypot __DECL_SIMD_x86_64 | ||
| 75 | # undef __DECL_SIMD_hypotf | ||
| 76 | # define __DECL_SIMD_hypotf __DECL_SIMD_x86_64 | ||
| 77 | # undef __DECL_SIMD_exp2 | ||
| 78 | # define __DECL_SIMD_exp2 __DECL_SIMD_x86_64 | ||
| 79 | # undef __DECL_SIMD_exp2f | ||
| 80 | # define __DECL_SIMD_exp2f __DECL_SIMD_x86_64 | ||
| 81 | # undef __DECL_SIMD_exp10 | ||
| 82 | # define __DECL_SIMD_exp10 __DECL_SIMD_x86_64 | ||
| 83 | # undef __DECL_SIMD_exp10f | ||
| 84 | # define __DECL_SIMD_exp10f __DECL_SIMD_x86_64 | ||
| 85 | # undef __DECL_SIMD_cosh | ||
| 86 | # define __DECL_SIMD_cosh __DECL_SIMD_x86_64 | ||
| 87 | # undef __DECL_SIMD_coshf | ||
| 88 | # define __DECL_SIMD_coshf __DECL_SIMD_x86_64 | ||
| 89 | # undef __DECL_SIMD_expm1 | ||
| 90 | # define __DECL_SIMD_expm1 __DECL_SIMD_x86_64 | ||
| 91 | # undef __DECL_SIMD_expm1f | ||
| 92 | # define __DECL_SIMD_expm1f __DECL_SIMD_x86_64 | ||
| 93 | # undef __DECL_SIMD_sinh | ||
| 94 | # define __DECL_SIMD_sinh __DECL_SIMD_x86_64 | ||
| 95 | # undef __DECL_SIMD_sinhf | ||
| 96 | # define __DECL_SIMD_sinhf __DECL_SIMD_x86_64 | ||
| 97 | # undef __DECL_SIMD_cbrt | ||
| 98 | # define __DECL_SIMD_cbrt __DECL_SIMD_x86_64 | ||
| 99 | # undef __DECL_SIMD_cbrtf | ||
| 100 | # define __DECL_SIMD_cbrtf __DECL_SIMD_x86_64 | ||
| 101 | # undef __DECL_SIMD_atan2 | ||
| 102 | # define __DECL_SIMD_atan2 __DECL_SIMD_x86_64 | ||
| 103 | # undef __DECL_SIMD_atan2f | ||
| 104 | # define __DECL_SIMD_atan2f __DECL_SIMD_x86_64 | ||
| 105 | # undef __DECL_SIMD_log10 | ||
| 106 | # define __DECL_SIMD_log10 __DECL_SIMD_x86_64 | ||
| 107 | # undef __DECL_SIMD_log10f | ||
| 108 | # define __DECL_SIMD_log10f __DECL_SIMD_x86_64 | ||
| 109 | # undef __DECL_SIMD_log2 | ||
| 110 | # define __DECL_SIMD_log2 __DECL_SIMD_x86_64 | ||
| 111 | # undef __DECL_SIMD_log2f | ||
| 112 | # define __DECL_SIMD_log2f __DECL_SIMD_x86_64 | ||
| 113 | # undef __DECL_SIMD_log1p | ||
| 114 | # define __DECL_SIMD_log1p __DECL_SIMD_x86_64 | ||
| 115 | # undef __DECL_SIMD_log1pf | ||
| 116 | # define __DECL_SIMD_log1pf __DECL_SIMD_x86_64 | ||
| 117 | # undef __DECL_SIMD_atanh | ||
| 118 | # define __DECL_SIMD_atanh __DECL_SIMD_x86_64 | ||
| 119 | # undef __DECL_SIMD_atanhf | ||
| 120 | # define __DECL_SIMD_atanhf __DECL_SIMD_x86_64 | ||
| 121 | # undef __DECL_SIMD_acosh | ||
| 122 | # define __DECL_SIMD_acosh __DECL_SIMD_x86_64 | ||
| 123 | # undef __DECL_SIMD_acoshf | ||
| 124 | # define __DECL_SIMD_acoshf __DECL_SIMD_x86_64 | ||
| 125 | # undef __DECL_SIMD_erf | ||
| 126 | # define __DECL_SIMD_erf __DECL_SIMD_x86_64 | ||
| 127 | # undef __DECL_SIMD_erff | ||
| 128 | # define __DECL_SIMD_erff __DECL_SIMD_x86_64 | ||
| 129 | # undef __DECL_SIMD_tanh | ||
| 130 | # define __DECL_SIMD_tanh __DECL_SIMD_x86_64 | ||
| 131 | # undef __DECL_SIMD_tanhf | ||
| 132 | # define __DECL_SIMD_tanhf __DECL_SIMD_x86_64 | ||
| 133 | # undef __DECL_SIMD_asinh | ||
| 134 | # define __DECL_SIMD_asinh __DECL_SIMD_x86_64 | ||
| 135 | # undef __DECL_SIMD_asinhf | ||
| 136 | # define __DECL_SIMD_asinhf __DECL_SIMD_x86_64 | ||
| 137 | # undef __DECL_SIMD_erfc | ||
| 138 | # define __DECL_SIMD_erfc __DECL_SIMD_x86_64 | ||
| 139 | # undef __DECL_SIMD_erfcf | ||
| 140 | # define __DECL_SIMD_erfcf __DECL_SIMD_x86_64 | ||
| 141 | # undef __DECL_SIMD_tan | ||
| 142 | # define __DECL_SIMD_tan __DECL_SIMD_x86_64 | ||
| 143 | # undef __DECL_SIMD_tanf | ||
| 144 | # define __DECL_SIMD_tanf __DECL_SIMD_x86_64 | ||
| 145 | |||
| 146 | # endif | ||
| 147 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnux32/bits/mman.h deleted-38| ... | @@ -1,38 +0,0 @@ | ||
| 1 | /* Definitions for POSIX memory map interface. Linux/x86_64 version. | ||
| 2 | Copyright (C) 2001-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_MMAN_H | ||
| 20 | # error "Never use <bits/mman.h> directly; include <sys/mman.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* The following definitions basically come from the kernel headers. | ||
| 24 | But the kernel header is not namespace clean. */ | ||
| 25 | |||
| 26 | /* Other flags. */ | ||
| 27 | #define MAP_32BIT	0x40		/* Only give out 32-bit addresses. */ | ||
| 28 | #define MAP_ABOVE4G	0x80		/* Only map above 4GB. */ | ||
| 29 | |||
| 30 | #ifdef __USE_MISC | ||
| 31 | /* Set up a restore token in the newly allocated shadow stack */ | ||
| 32 | # define SHADOW_STACK_SET_TOKEN 0x1 | ||
| 33 | #endif | ||
| 34 | |||
| 35 | #include <bits/mman-map-flags-generic.h> | ||
| 36 | |||
| 37 | /* Include generic Linux declarations. */ | ||
| 38 | #include <bits/mman-linux.h> | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnux32/bits/procfs-id.h deleted-30| ... | @@ -1,30 +0,0 @@ | ||
| 1 | /* Types of pr_uid and pr_gid in struct elf_prpsinfo. x86 version. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library; if not, see | ||
| 18 | <https://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifndef _SYS_PROCFS_H | ||
| 21 | # error "Never include <bits/procfs-id.h> directly; use <sys/procfs.h> instead." | ||
| 22 | #endif | ||
| 23 | |||
| 24 | #if __WORDSIZE == 32 | ||
| 25 | typedef unsigned short int __pr_uid_t; | ||
| 26 | typedef unsigned short int __pr_gid_t; | ||
| 27 | #else | ||
| 28 | typedef unsigned int __pr_uid_t; | ||
| 29 | typedef unsigned int __pr_gid_t; | ||
| 30 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnux32/bits/procfs.h deleted-50| ... | @@ -1,50 +0,0 @@ | ||
| 1 | /* Types for registers for sys/procfs.h. x86 version. | ||
| 2 | Copyright (C) 2001-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_PROCFS_H | ||
| 20 | # error "Never include <bits/procfs.h> directly; use <sys/procfs.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Type for a general-purpose register. */ | ||
| 24 | #ifdef __x86_64__ | ||
| 25 | __extension__ typedef unsigned long long elf_greg_t; | ||
| 26 | #else | ||
| 27 | typedef unsigned long elf_greg_t; | ||
| 28 | #endif | ||
| 29 | |||
| 30 | /* And the whole bunch of them. We could have used `struct | ||
| 31 | user_regs_struct' directly in the typedef, but tradition says that | ||
| 32 | the register set is an array, which does have some peculiar | ||
| 33 | semantics, so leave it that way. */ | ||
| 34 | #define ELF_NGREG (sizeof (struct user_regs_struct) / sizeof (elf_greg_t)) | ||
| 35 | typedef elf_greg_t elf_gregset_t[ELF_NGREG]; | ||
| 36 | |||
| 37 | #ifndef __x86_64__ | ||
| 38 | /* Register set for the floating-point registers. */ | ||
| 39 | typedef struct user_fpregs_struct elf_fpregset_t; | ||
| 40 | |||
| 41 | /* Register set for the extended floating-point registers. Includes | ||
| 42 | the Pentium III SSE registers in addition to the classic | ||
| 43 | floating-point stuff. */ | ||
| 44 | typedef struct user_fpxregs_struct elf_fpxregset_t; | ||
| 45 | #else | ||
| 46 | /* Register set for the extended floating-point registers. Includes | ||
| 47 | the Pentium III SSE registers in addition to the classic | ||
| 48 | floating-point stuff. */ | ||
| 49 | typedef struct user_fpregs_struct elf_fpregset_t; | ||
| 50 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnux32/bits/pthreadtypes-arch.h deleted-55| ... | @@ -1,55 +0,0 @@ | ||
| 1 | /* Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _BITS_PTHREADTYPES_ARCH_H | ||
| 19 | #define _BITS_PTHREADTYPES_ARCH_H	1 | ||
| 20 | |||
| 21 | #include <bits/wordsize.h> | ||
| 22 | |||
| 23 | #ifdef __x86_64__ | ||
| 24 | # if __WORDSIZE == 64 | ||
| 25 | # define __SIZEOF_PTHREAD_MUTEX_T 40 | ||
| 26 | # define __SIZEOF_PTHREAD_ATTR_T 56 | ||
| 27 | # define __SIZEOF_PTHREAD_RWLOCK_T 56 | ||
| 28 | # define __SIZEOF_PTHREAD_BARRIER_T 32 | ||
| 29 | # else | ||
| 30 | # define __SIZEOF_PTHREAD_MUTEX_T 32 | ||
| 31 | # define __SIZEOF_PTHREAD_ATTR_T 32 | ||
| 32 | # define __SIZEOF_PTHREAD_RWLOCK_T 44 | ||
| 33 | # define __SIZEOF_PTHREAD_BARRIER_T 20 | ||
| 34 | # endif | ||
| 35 | #else | ||
| 36 | # define __SIZEOF_PTHREAD_MUTEX_T 24 | ||
| 37 | # define __SIZEOF_PTHREAD_ATTR_T 36 | ||
| 38 | # define __SIZEOF_PTHREAD_RWLOCK_T 32 | ||
| 39 | # define __SIZEOF_PTHREAD_BARRIER_T 20 | ||
| 40 | #endif | ||
| 41 | #define __SIZEOF_PTHREAD_MUTEXATTR_T 4 | ||
| 42 | #define __SIZEOF_PTHREAD_COND_T 48 | ||
| 43 | #define __SIZEOF_PTHREAD_CONDATTR_T 4 | ||
| 44 | #define __SIZEOF_PTHREAD_RWLOCKATTR_T 8 | ||
| 45 | #define __SIZEOF_PTHREAD_BARRIERATTR_T 4 | ||
| 46 | |||
| 47 | #define __LOCK_ALIGNMENT | ||
| 48 | #define __ONCE_ALIGNMENT | ||
| 49 | |||
| 50 | #ifndef __x86_64__ | ||
| 51 | /* Extra attributes for the cleanup functions. */ | ||
| 52 | # define __cleanup_fct_attribute __attribute__ ((__regparm__ (1))) | ||
| 53 | #endif | ||
| 54 | |||
| 55 | #endif	/* bits/pthreadtypes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnux32/bits/rseq.h deleted-30| ... | @@ -1,30 +0,0 @@ | ||
| 1 | /* Restartable Sequences Linux x86 architecture header. | ||
| 2 | Copyright (C) 2021-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_RSEQ_H | ||
| 19 | # error "Never use <bits/rseq.h> directly; include <sys/rseq.h> instead." | ||
| 20 | #endif | ||
| 21 | |||
| 22 | /* RSEQ_SIG is a signature required before each abort handler code. | ||
| 23 | |||
| 24 | RSEQ_SIG is used with the following reserved undefined instructions, which | ||
| 25 | trap in user-space: | ||
| 26 | |||
| 27 | x86-32: 0f b9 3d 53 30 05 53 ud1 0x53053053,%edi | ||
| 28 | x86-64: 0f b9 3d 53 30 05 53 ud1 0x53053053(%rip),%edi */ | ||
| 29 | |||
| 30 | #define RSEQ_SIG 0x53053053 | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnux32/bits/setjmp.h deleted-40| ... | @@ -1,40 +0,0 @@ | ||
| 1 | /* Copyright (C) 2001-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | /* Define the machine-dependent type `jmp_buf'. x86-64 version. */ | ||
| 19 | #ifndef _BITS_SETJMP_H | ||
| 20 | #define _BITS_SETJMP_H 1 | ||
| 21 | |||
| 22 | #if !defined _SETJMP_H && !defined _PTHREAD_H | ||
| 23 | # error "Never include <bits/setjmp.h> directly; use <setjmp.h> instead." | ||
| 24 | #endif | ||
| 25 | |||
| 26 | #include <bits/wordsize.h> | ||
| 27 | |||
| 28 | #ifndef _ASM | ||
| 29 | |||
| 30 | # if __WORDSIZE == 64 | ||
| 31 | typedef long int __jmp_buf[8]; | ||
| 32 | # elif defined __x86_64__ | ||
| 33 | __extension__ typedef long long int __jmp_buf[8]; | ||
| 34 | # else | ||
| 35 | typedef int __jmp_buf[6]; | ||
| 36 | # endif | ||
| 37 | |||
| 38 | #endif | ||
| 39 | |||
| 40 | #endif /* bits/setjmp.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnux32/bits/sigcontext.h deleted-196| ... | @@ -1,196 +0,0 @@ | ||
| 1 | /* Copyright (C) 2002-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.	 See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _BITS_SIGCONTEXT_H | ||
| 19 | #define _BITS_SIGCONTEXT_H 1 | ||
| 20 | |||
| 21 | #if !defined _SIGNAL_H && !defined _SYS_UCONTEXT_H | ||
| 22 | # error "Never use <bits/sigcontext.h> directly; include <signal.h> instead." | ||
| 23 | #endif | ||
| 24 | |||
| 25 | #include <bits/types.h> | ||
| 26 | |||
| 27 | #define FP_XSTATE_MAGIC1	0x46505853U | ||
| 28 | #define FP_XSTATE_MAGIC2	0x46505845U | ||
| 29 | #define FP_XSTATE_MAGIC2_SIZE	sizeof (FP_XSTATE_MAGIC2) | ||
| 30 | |||
| 31 | struct _fpx_sw_bytes | ||
| 32 | { | ||
| 33 | __uint32_t magic1; | ||
| 34 | __uint32_t extended_size; | ||
| 35 | __uint64_t xstate_bv; | ||
| 36 | __uint32_t xstate_size; | ||
| 37 | __uint32_t __glibc_reserved1[7]; | ||
| 38 | }; | ||
| 39 | |||
| 40 | struct _fpreg | ||
| 41 | { | ||
| 42 | unsigned short significand[4]; | ||
| 43 | unsigned short exponent; | ||
| 44 | }; | ||
| 45 | |||
| 46 | struct _fpxreg | ||
| 47 | { | ||
| 48 | unsigned short significand[4]; | ||
| 49 | unsigned short exponent; | ||
| 50 | unsigned short __glibc_reserved1[3]; | ||
| 51 | }; | ||
| 52 | |||
| 53 | struct _xmmreg | ||
| 54 | { | ||
| 55 | __uint32_t	element[4]; | ||
| 56 | }; | ||
| 57 | |||
| 58 | |||
| 59 | |||
| 60 | #ifndef __x86_64__ | ||
| 61 | |||
| 62 | struct _fpstate | ||
| 63 | { | ||
| 64 | /* Regular FPU environment. */ | ||
| 65 | __uint32_t	cw; | ||
| 66 | __uint32_t		sw; | ||
| 67 | __uint32_t		tag; | ||
| 68 | __uint32_t		ipoff; | ||
| 69 | __uint32_t		cssel; | ||
| 70 | __uint32_t		dataoff; | ||
| 71 | __uint32_t		datasel; | ||
| 72 | struct _fpreg	_st[8]; | ||
| 73 | unsigned short status; | ||
| 74 | unsigned short magic; | ||
| 75 | |||
| 76 | /* FXSR FPU environment. */ | ||
| 77 | __uint32_t		_fxsr_env[6]; | ||
| 78 | __uint32_t		mxcsr; | ||
| 79 | __uint32_t		__glibc_reserved1; | ||
| 80 | struct _fpxreg	_fxsr_st[8]; | ||
| 81 | struct _xmmreg	_xmm[8]; | ||
| 82 | __uint32_t		__glibc_reserved2[56]; | ||
| 83 | }; | ||
| 84 | |||
| 85 | #ifndef sigcontext_struct | ||
| 86 | /* Kernel headers before 2.1.1 define a struct sigcontext_struct, but | ||
| 87 | we need sigcontext. Some packages have come to rely on | ||
| 88 | sigcontext_struct being defined on 32-bit x86, so define this for | ||
| 89 | their benefit. */ | ||
| 90 | # define sigcontext_struct sigcontext | ||
| 91 | #endif | ||
| 92 | |||
| 93 | #define X86_FXSR_MAGIC		0x0000 | ||
| 94 | |||
| 95 | struct sigcontext | ||
| 96 | { | ||
| 97 | unsigned short gs, __gsh; | ||
| 98 | unsigned short fs, __fsh; | ||
| 99 | unsigned short es, __esh; | ||
| 100 | unsigned short ds, __dsh; | ||
| 101 | unsigned long edi; | ||
| 102 | unsigned long esi; | ||
| 103 | unsigned long ebp; | ||
| 104 | unsigned long esp; | ||
| 105 | unsigned long ebx; | ||
| 106 | unsigned long edx; | ||
| 107 | unsigned long ecx; | ||
| 108 | unsigned long eax; | ||
| 109 | unsigned long trapno; | ||
| 110 | unsigned long err; | ||
| 111 | unsigned long eip; | ||
| 112 | unsigned short cs, __csh; | ||
| 113 | unsigned long eflags; | ||
| 114 | unsigned long esp_at_signal; | ||
| 115 | unsigned short ss, __ssh; | ||
| 116 | struct _fpstate * fpstate; | ||
| 117 | unsigned long oldmask; | ||
| 118 | unsigned long cr2; | ||
| 119 | }; | ||
| 120 | |||
| 121 | #else /* __x86_64__ */ | ||
| 122 | |||
| 123 | struct _fpstate | ||
| 124 | { | ||
| 125 | /* FPU environment matching the 64-bit FXSAVE layout. */ | ||
| 126 | __uint16_t		cwd; | ||
| 127 | __uint16_t		swd; | ||
| 128 | __uint16_t		ftw; | ||
| 129 | __uint16_t		fop; | ||
| 130 | __uint64_t		rip; | ||
| 131 | __uint64_t		rdp; | ||
| 132 | __uint32_t		mxcsr; | ||
| 133 | __uint32_t		mxcr_mask; | ||
| 134 | struct _fpxreg	_st[8]; | ||
| 135 | struct _xmmreg	_xmm[16]; | ||
| 136 | __uint32_t		__glibc_reserved1[24]; | ||
| 137 | }; | ||
| 138 | |||
| 139 | struct sigcontext | ||
| 140 | { | ||
| 141 | __uint64_t r8; | ||
| 142 | __uint64_t r9; | ||
| 143 | __uint64_t r10; | ||
| 144 | __uint64_t r11; | ||
| 145 | __uint64_t r12; | ||
| 146 | __uint64_t r13; | ||
| 147 | __uint64_t r14; | ||
| 148 | __uint64_t r15; | ||
| 149 | __uint64_t rdi; | ||
| 150 | __uint64_t rsi; | ||
| 151 | __uint64_t rbp; | ||
| 152 | __uint64_t rbx; | ||
| 153 | __uint64_t rdx; | ||
| 154 | __uint64_t rax; | ||
| 155 | __uint64_t rcx; | ||
| 156 | __uint64_t rsp; | ||
| 157 | __uint64_t rip; | ||
| 158 | __uint64_t eflags; | ||
| 159 | unsigned short cs; | ||
| 160 | unsigned short gs; | ||
| 161 | unsigned short fs; | ||
| 162 | unsigned short __pad0; | ||
| 163 | __uint64_t err; | ||
| 164 | __uint64_t trapno; | ||
| 165 | __uint64_t oldmask; | ||
| 166 | __uint64_t cr2; | ||
| 167 | __extension__ union | ||
| 168 | { | ||
| 169 | struct _fpstate * fpstate; | ||
| 170 | __uint64_t __fpstate_word; | ||
| 171 | }; | ||
| 172 | __uint64_t __reserved1 [8]; | ||
| 173 | }; | ||
| 174 | |||
| 175 | #endif /* __x86_64__ */ | ||
| 176 | |||
| 177 | struct _xsave_hdr | ||
| 178 | { | ||
| 179 | __uint64_t xstate_bv; | ||
| 180 | __uint64_t __glibc_reserved1[2]; | ||
| 181 | __uint64_t __glibc_reserved2[5]; | ||
| 182 | }; | ||
| 183 | |||
| 184 | struct _ymmh_state | ||
| 185 | { | ||
| 186 | __uint32_t ymmh_space[64]; | ||
| 187 | }; | ||
| 188 | |||
| 189 | struct _xstate | ||
| 190 | { | ||
| 191 | struct _fpstate fpstate; | ||
| 192 | struct _xsave_hdr xstate_hdr; | ||
| 193 | struct _ymmh_state ymmh; | ||
| 194 | }; | ||
| 195 | |||
| 196 | #endif /* _BITS_SIGCONTEXT_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnux32/bits/siginfo-arch.h deleted-17| ... | @@ -1,17 +0,0 @@ | ||
| 1 | /* Architecture-specific adjustments to siginfo_t. x86 version. */ | ||
| 2 | #ifndef _BITS_SIGINFO_ARCH_H | ||
| 3 | #define _BITS_SIGINFO_ARCH_H 1 | ||
| 4 | |||
| 5 | #if defined __x86_64__ && __WORDSIZE == 32 | ||
| 6 | /* si_utime and si_stime must be 4 byte aligned for x32 to match the | ||
| 7 | kernel. We align siginfo_t to 8 bytes so that si_utime and | ||
| 8 | si_stime are actually aligned to 8 bytes since their offsets are | ||
| 9 | multiple of 8 bytes. Note: with some compilers, the alignment | ||
| 10 | attribute would be ignored if it were put in __SI_CLOCK_T instead | ||
| 11 | of encapsulated in a typedef. */ | ||
| 12 | typedef __clock_t __attribute__ ((__aligned__ (4))) __sigchld_clock_t; | ||
| 13 | # define __SI_ALIGNMENT __attribute__ ((__aligned__ (8))) | ||
| 14 | # define __SI_CLOCK_T __sigchld_clock_t | ||
| 15 | #endif | ||
| 16 | |||
| 17 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnux32/bits/struct_mutex.h deleted-63| ... | @@ -1,63 +0,0 @@ | ||
| 1 | /* x86 internal mutex struct definitions. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <http://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _THREAD_MUTEX_INTERNAL_H | ||
| 20 | #define _THREAD_MUTEX_INTERNAL_H 1 | ||
| 21 | |||
| 22 | struct __pthread_mutex_s | ||
| 23 | { | ||
| 24 | int __lock; | ||
| 25 | unsigned int __count; | ||
| 26 | int __owner; | ||
| 27 | #ifdef __x86_64__ | ||
| 28 | unsigned int __nusers; | ||
| 29 | #endif | ||
| 30 | /* KIND must stay at this position in the structure to maintain | ||
| 31 | binary compatibility with static initializers. */ | ||
| 32 | int __kind; | ||
| 33 | #ifdef __x86_64__ | ||
| 34 | short __spins; | ||
| 35 | short __elision; | ||
| 36 | __pthread_list_t __list; | ||
| 37 | # define __PTHREAD_MUTEX_HAVE_PREV 1 | ||
| 38 | #else | ||
| 39 | unsigned int __nusers; | ||
| 40 | __extension__ union | ||
| 41 | { | ||
| 42 | struct | ||
| 43 | { | ||
| 44 | short __espins; | ||
| 45 | short __eelision; | ||
| 46 | # define __spins __elision_data.__espins | ||
| 47 | # define __elision __elision_data.__eelision | ||
| 48 | } __elision_data; | ||
| 49 | __pthread_slist_t __list; | ||
| 50 | }; | ||
| 51 | # define __PTHREAD_MUTEX_HAVE_PREV 0 | ||
| 52 | #endif | ||
| 53 | }; | ||
| 54 | |||
| 55 | #ifdef __x86_64__ | ||
| 56 | # define __PTHREAD_MUTEX_INITIALIZER(__kind) \ | ||
| 57 | 0, 0, 0, 0, __kind, 0, 0, { NULL, NULL } | ||
| 58 | #else | ||
| 59 | # define __PTHREAD_MUTEX_INITIALIZER(__kind) \ | ||
| 60 | 0, 0, 0, __kind, 0, { { 0, 0 } } | ||
| 61 | #endif | ||
| 62 | |||
| 63 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnux32/bits/struct_rwlock.h deleted-65| ... | @@ -1,65 +0,0 @@ | ||
| 1 | /* x86 internal rwlock struct definitions. | ||
| 2 | Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library; if not, see | ||
| 18 | <http://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifndef _RWLOCK_INTERNAL_H | ||
| 21 | #define _RWLOCK_INTERNAL_H | ||
| 22 | |||
| 23 | struct __pthread_rwlock_arch_t | ||
| 24 | { | ||
| 25 | unsigned int __readers; | ||
| 26 | unsigned int __writers; | ||
| 27 | unsigned int __wrphase_futex; | ||
| 28 | unsigned int __writers_futex; | ||
| 29 | unsigned int __pad3; | ||
| 30 | unsigned int __pad4; | ||
| 31 | #ifdef __x86_64__ | ||
| 32 | int __cur_writer; | ||
| 33 | int __shared; | ||
| 34 | signed char __rwelision; | ||
| 35 | # ifdef __ILP32__ | ||
| 36 | unsigned char __pad1[3]; | ||
| 37 | # define __PTHREAD_RWLOCK_ELISION_EXTRA 0, { 0, 0, 0 } | ||
| 38 | # else | ||
| 39 | unsigned char __pad1[7]; | ||
| 40 | # define __PTHREAD_RWLOCK_ELISION_EXTRA 0, { 0, 0, 0, 0, 0, 0, 0 } | ||
| 41 | # endif | ||
| 42 | unsigned long int __pad2; | ||
| 43 | /* FLAGS must stay at this position in the structure to maintain | ||
| 44 | binary compatibility. */ | ||
| 45 | unsigned int __flags; | ||
| 46 | #else /* __x86_64__ */ | ||
| 47 | /* FLAGS must stay at this position in the structure to maintain | ||
| 48 | binary compatibility. */ | ||
| 49 | unsigned char __flags; | ||
| 50 | unsigned char __shared; | ||
| 51 | signed char __rwelision; | ||
| 52 | unsigned char __pad2; | ||
| 53 | int __cur_writer; | ||
| 54 | #endif | ||
| 55 | }; | ||
| 56 | |||
| 57 | #ifdef __x86_64__ | ||
| 58 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 59 | 0, 0, 0, 0, 0, 0, 0, 0, __PTHREAD_RWLOCK_ELISION_EXTRA, 0, __flags | ||
| 60 | #else | ||
| 61 | # define __PTHREAD_RWLOCK_INITIALIZER(__flags) \ | ||
| 62 | 0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0 | ||
| 63 | #endif | ||
| 64 | |||
| 65 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnux32/bits/struct_stat.h deleted-165| ... | @@ -1,165 +0,0 @@ | ||
| 1 | /* Definition for struct stat. | ||
| 2 | Copyright (C) 2020-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library. If not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #if !defined _SYS_STAT_H && !defined _FCNTL_H | ||
| 20 | # error "Never include <bits/struct_stat.h> directly; use <sys/stat.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef _BITS_STRUCT_STAT_H | ||
| 24 | #define _BITS_STRUCT_STAT_H	1 | ||
| 25 | |||
| 26 | struct stat | ||
| 27 | { | ||
| 28 | #ifdef __USE_TIME64_REDIRECTS | ||
| 29 | # include <bits/struct_stat_time64_helper.h> | ||
| 30 | #else | ||
| 31 | __dev_t st_dev;		/* Device. */ | ||
| 32 | # ifndef __x86_64__ | ||
| 33 | unsigned short int __pad1; | ||
| 34 | # endif | ||
| 35 | # if defined __x86_64__ || !defined __USE_FILE_OFFSET64 | ||
| 36 | __ino_t st_ino;		/* File serial number.	*/ | ||
| 37 | # else | ||
| 38 | __ino_t __st_ino;			/* 32bit file serial number.	*/ | ||
| 39 | # endif | ||
| 40 | # ifndef __x86_64__ | ||
| 41 | __mode_t st_mode;			/* File mode. */ | ||
| 42 | __nlink_t st_nlink;			/* Link count. */ | ||
| 43 | # else | ||
| 44 | __nlink_t st_nlink;		/* Link count. */ | ||
| 45 | __mode_t st_mode;		/* File mode. */ | ||
| 46 | # endif | ||
| 47 | __uid_t st_uid;		/* User ID of the file's owner.	*/ | ||
| 48 | __gid_t st_gid;		/* Group ID of the file's group.*/ | ||
| 49 | # ifdef __x86_64__ | ||
| 50 | int __pad0; | ||
| 51 | # endif | ||
| 52 | __dev_t st_rdev;		/* Device number, if device. */ | ||
| 53 | # ifndef __x86_64__ | ||
| 54 | unsigned short int __pad2; | ||
| 55 | # endif | ||
| 56 | # if defined __x86_64__ || !defined __USE_FILE_OFFSET64 | ||
| 57 | __off_t st_size;			/* Size of file, in bytes. */ | ||
| 58 | # else | ||
| 59 | __off64_t st_size;			/* Size of file, in bytes. */ | ||
| 60 | # endif | ||
| 61 | __blksize_t st_blksize;	/* Optimal block size for I/O. */ | ||
| 62 | # if defined __x86_64__ || !defined __USE_FILE_OFFSET64 | ||
| 63 | __blkcnt_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 64 | # else | ||
| 65 | __blkcnt64_t st_blocks;		/* Number 512-byte blocks allocated. */ | ||
| 66 | # endif | ||
| 67 | # ifdef __USE_XOPEN2K8 | ||
| 68 | /* Nanosecond resolution timestamps are stored in a format | ||
| 69 | equivalent to 'struct timespec'. This is the type used | ||
| 70 | whenever possible but the Unix namespace rules do not allow the | ||
| 71 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 72 | Therefore we have to handle the use of this header in strictly | ||
| 73 | standard-compliant sources special. */ | ||
| 74 | struct timespec st_atim;		/* Time of last access. */ | ||
| 75 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 76 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 77 | # define st_atime st_atim.tv_sec	/* Backward compatibility. */ | ||
| 78 | # define st_mtime st_mtim.tv_sec | ||
| 79 | # define st_ctime st_ctim.tv_sec | ||
| 80 | # else | ||
| 81 | __time_t st_atime;			/* Time of last access. */ | ||
| 82 | __syscall_ulong_t st_atimensec;	/* Nscecs of last access. */ | ||
| 83 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 84 | __syscall_ulong_t st_mtimensec;	/* Nsecs of last modification. */ | ||
| 85 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 86 | __syscall_ulong_t st_ctimensec;	/* Nsecs of last status change. */ | ||
| 87 | # endif | ||
| 88 | # ifdef __x86_64__ | ||
| 89 | __syscall_slong_t __glibc_reserved[3]; | ||
| 90 | # else | ||
| 91 | # ifndef __USE_FILE_OFFSET64 | ||
| 92 | unsigned long int __glibc_reserved4; | ||
| 93 | unsigned long int __glibc_reserved5; | ||
| 94 | # else | ||
| 95 | __ino64_t st_ino;			/* File serial number.	*/ | ||
| 96 | # endif | ||
| 97 | # endif | ||
| 98 | #endif /* __USE_TIME64_REDIRECTS */ | ||
| 99 | }; | ||
| 100 | |||
| 101 | #ifdef __USE_LARGEFILE64 | ||
| 102 | /* Note stat64 has the same shape as stat for x86-64. */ | ||
| 103 | struct stat64 | ||
| 104 | { | ||
| 105 | # ifdef __USE_TIME64_REDIRECTS | ||
| 106 | # include <bits/struct_stat_time64_helper.h> | ||
| 107 | # else | ||
| 108 | __dev_t st_dev;		/* Device. */ | ||
| 109 | # ifdef __x86_64__ | ||
| 110 | __ino64_t st_ino;		/* File serial number. */ | ||
| 111 | __nlink_t st_nlink;		/* Link count. */ | ||
| 112 | __mode_t st_mode;		/* File mode. */ | ||
| 113 | # else | ||
| 114 | unsigned int __pad1; | ||
| 115 | __ino_t __st_ino;			/* 32bit file serial number.	*/ | ||
| 116 | __mode_t st_mode;			/* File mode. */ | ||
| 117 | __nlink_t st_nlink;			/* Link count. */ | ||
| 118 | # endif | ||
| 119 | __uid_t st_uid;		/* User ID of the file's owner.	*/ | ||
| 120 | __gid_t st_gid;		/* Group ID of the file's group.*/ | ||
| 121 | # ifdef __x86_64__ | ||
| 122 | int __pad0; | ||
| 123 | __dev_t st_rdev;		/* Device number, if device. */ | ||
| 124 | __off_t st_size;		/* Size of file, in bytes. */ | ||
| 125 | # else | ||
| 126 | __dev_t st_rdev;			/* Device number, if device. */ | ||
| 127 | unsigned int __pad2; | ||
| 128 | __off64_t st_size;			/* Size of file, in bytes. */ | ||
| 129 | # endif | ||
| 130 | __blksize_t st_blksize;	/* Optimal block size for I/O. */ | ||
| 131 | __blkcnt64_t st_blocks;	/* Nr. 512-byte blocks allocated. */ | ||
| 132 | # ifdef __USE_XOPEN2K8 | ||
| 133 | /* Nanosecond resolution timestamps are stored in a format | ||
| 134 | equivalent to 'struct timespec'. This is the type used | ||
| 135 | whenever possible but the Unix namespace rules do not allow the | ||
| 136 | identifier 'timespec' to appear in the <sys/stat.h> header. | ||
| 137 | Therefore we have to handle the use of this header in strictly | ||
| 138 | standard-compliant sources special. */ | ||
| 139 | struct timespec st_atim;		/* Time of last access. */ | ||
| 140 | struct timespec st_mtim;		/* Time of last modification. */ | ||
| 141 | struct timespec st_ctim;		/* Time of last status change. */ | ||
| 142 | # else | ||
| 143 | __time_t st_atime;			/* Time of last access. */ | ||
| 144 | __syscall_ulong_t st_atimensec;	/* Nscecs of last access. */ | ||
| 145 | __time_t st_mtime;			/* Time of last modification. */ | ||
| 146 | __syscall_ulong_t st_mtimensec;	/* Nsecs of last modification. */ | ||
| 147 | __time_t st_ctime;			/* Time of last status change. */ | ||
| 148 | __syscall_ulong_t st_ctimensec;	/* Nsecs of last status change. */ | ||
| 149 | # endif | ||
| 150 | # ifdef __x86_64__ | ||
| 151 | __syscall_slong_t __glibc_reserved[3]; | ||
| 152 | # else | ||
| 153 | __ino64_t st_ino;			/* File serial number.		*/ | ||
| 154 | # endif | ||
| 155 | # endif /* __USE_TIME64_REDIRECTS */ | ||
| 156 | }; | ||
| 157 | #endif | ||
| 158 | |||
| 159 | /* Tell code we have these members. */ | ||
| 160 | #define	_STATBUF_ST_BLKSIZE | ||
| 161 | #define _STATBUF_ST_RDEV | ||
| 162 | /* Nanosecond resolution time values are supported. */ | ||
| 163 | #define _STATBUF_ST_NSEC | ||
| 164 | |||
| 165 | #endif /* _BITS_STRUCT_STAT_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnux32/bits/timesize.h deleted-27| ... | @@ -1,27 +0,0 @@ | ||
| 1 | /* Bit size of the time_t type at glibc build time, x86-64 and x32 case. | ||
| 2 | Copyright (C) 2018-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #include <bits/wordsize.h> | ||
| 20 | |||
| 21 | #if defined __x86_64__ && defined __ILP32__ | ||
| 22 | /* For x32, time is 64-bit even though word size is 32-bit. */ | ||
| 23 | # define __TIMESIZE	64 | ||
| 24 | #else | ||
| 25 | /* For others, time size is word size. */ | ||
| 26 | # define __TIMESIZE	__WORDSIZE | ||
| 27 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnux32/bits/types/struct_semid_ds.h deleted-38| ... | @@ -1,38 +0,0 @@ | ||
| 1 | /* x86 implementation of the semaphore struct semid_ds. | ||
| 2 | Copyright (C) 1995-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _SYS_SEM_H | ||
| 20 | # error "Never include <bits/types/struct_semid_ds.h> directly; use <sys/sem.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | /* Data structure describing a set of semaphores. */ | ||
| 24 | struct semid_ds | ||
| 25 | { | ||
| 26 | #ifdef __USE_TIME64_REDIRECTS | ||
| 27 | # include <bits/types/struct_semid64_ds_helper.h> | ||
| 28 | #else | ||
| 29 | struct ipc_perm sem_perm; /* operation permission struct */ | ||
| 30 | __time_t sem_otime; /* last semop() time */ | ||
| 31 | __syscall_ulong_t __sem_otime_high; | ||
| 32 | __time_t sem_ctime; /* last time changed by semctl() */ | ||
| 33 | __syscall_ulong_t __sem_ctime_high; | ||
| 34 | __syscall_ulong_t sem_nsems; /* number of semaphores in set */ | ||
| 35 | __syscall_ulong_t __glibc_reserved3; | ||
| 36 | __syscall_ulong_t __glibc_reserved4; | ||
| 37 | #endif | ||
| 38 | }; | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnux32/bits/typesizes.h deleted-106| ... | @@ -1,106 +0,0 @@ | ||
| 1 | /* bits/typesizes.h -- underlying types for *_t. Linux/x86-64 version. | ||
| 2 | Copyright (C) 2012-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _BITS_TYPES_H | ||
| 20 | # error "Never include <bits/typesizes.h> directly; use <sys/types.h> instead." | ||
| 21 | #endif | ||
| 22 | |||
| 23 | #ifndef	_BITS_TYPESIZES_H | ||
| 24 | #define	_BITS_TYPESIZES_H	1 | ||
| 25 | |||
| 26 | /* See <bits/types.h> for the meaning of these macros. This file exists so | ||
| 27 | that <bits/types.h> need not vary across different GNU platforms. */ | ||
| 28 | |||
| 29 | /* X32 kernel interface is 64-bit. */ | ||
| 30 | #if defined __x86_64__ && defined __ILP32__ | ||
| 31 | # define __SYSCALL_SLONG_TYPE	__SQUAD_TYPE | ||
| 32 | # define __SYSCALL_ULONG_TYPE	__UQUAD_TYPE | ||
| 33 | #else | ||
| 34 | # define __SYSCALL_SLONG_TYPE	__SLONGWORD_TYPE | ||
| 35 | # define __SYSCALL_ULONG_TYPE	__ULONGWORD_TYPE | ||
| 36 | #endif | ||
| 37 | |||
| 38 | #define __DEV_T_TYPE		__UQUAD_TYPE | ||
| 39 | #define __UID_T_TYPE		__U32_TYPE | ||
| 40 | #define __GID_T_TYPE		__U32_TYPE | ||
| 41 | #define __INO_T_TYPE		__SYSCALL_ULONG_TYPE | ||
| 42 | #define __INO64_T_TYPE		__UQUAD_TYPE | ||
| 43 | #define __MODE_T_TYPE		__U32_TYPE | ||
| 44 | #ifdef __x86_64__ | ||
| 45 | # define __NLINK_T_TYPE		__SYSCALL_ULONG_TYPE | ||
| 46 | # define __FSWORD_T_TYPE	__SYSCALL_SLONG_TYPE | ||
| 47 | #else | ||
| 48 | # define __NLINK_T_TYPE		__UWORD_TYPE | ||
| 49 | # define __FSWORD_T_TYPE	__SWORD_TYPE | ||
| 50 | #endif | ||
| 51 | #define __OFF_T_TYPE		__SYSCALL_SLONG_TYPE | ||
| 52 | #define __OFF64_T_TYPE		__SQUAD_TYPE | ||
| 53 | #define __PID_T_TYPE		__S32_TYPE | ||
| 54 | #define __RLIM_T_TYPE		__SYSCALL_ULONG_TYPE | ||
| 55 | #define __RLIM64_T_TYPE		__UQUAD_TYPE | ||
| 56 | #define __BLKCNT_T_TYPE		__SYSCALL_SLONG_TYPE | ||
| 57 | #define __BLKCNT64_T_TYPE	__SQUAD_TYPE | ||
| 58 | #define __FSBLKCNT_T_TYPE	__SYSCALL_ULONG_TYPE | ||
| 59 | #define __FSBLKCNT64_T_TYPE	__UQUAD_TYPE | ||
| 60 | #define __FSFILCNT_T_TYPE	__SYSCALL_ULONG_TYPE | ||
| 61 | #define __FSFILCNT64_T_TYPE	__UQUAD_TYPE | ||
| 62 | #define __ID_T_TYPE		__U32_TYPE | ||
| 63 | #define __CLOCK_T_TYPE		__SYSCALL_SLONG_TYPE | ||
| 64 | #define __TIME_T_TYPE		__SYSCALL_SLONG_TYPE | ||
| 65 | #define __USECONDS_T_TYPE	__U32_TYPE | ||
| 66 | #define __SUSECONDS_T_TYPE	__SYSCALL_SLONG_TYPE | ||
| 67 | #define __SUSECONDS64_T_TYPE	__SQUAD_TYPE | ||
| 68 | #define __DADDR_T_TYPE		__S32_TYPE | ||
| 69 | #define __KEY_T_TYPE		__S32_TYPE | ||
| 70 | #define __CLOCKID_T_TYPE	__S32_TYPE | ||
| 71 | #define __TIMER_T_TYPE		void * | ||
| 72 | #define __BLKSIZE_T_TYPE	__SYSCALL_SLONG_TYPE | ||
| 73 | #define __FSID_T_TYPE		struct { int __val[2]; } | ||
| 74 | #define __SSIZE_T_TYPE		__SWORD_TYPE | ||
| 75 | #define __CPU_MASK_TYPE 	__SYSCALL_ULONG_TYPE | ||
| 76 | |||
| 77 | #ifdef __x86_64__ | ||
| 78 | /* Tell the libc code that off_t and off64_t are actually the same type | ||
| 79 | for all ABI purposes, even if possibly expressed as different base types | ||
| 80 | for C type-checking purposes. */ | ||
| 81 | # define __OFF_T_MATCHES_OFF64_T	1 | ||
| 82 | |||
| 83 | /* Same for ino_t and ino64_t. */ | ||
| 84 | # define __INO_T_MATCHES_INO64_T	1 | ||
| 85 | |||
| 86 | /* And for __rlim_t and __rlim64_t. */ | ||
| 87 | # define __RLIM_T_MATCHES_RLIM64_T	1 | ||
| 88 | |||
| 89 | /* And for fsblkcnt_t, fsblkcnt64_t, fsfilcnt_t and fsfilcnt64_t. */ | ||
| 90 | # define __STATFS_MATCHES_STATFS64 1 | ||
| 91 | |||
| 92 | /* And for getitimer, setitimer and rusage */ | ||
| 93 | # define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 1 | ||
| 94 | #else | ||
| 95 | # define __RLIM_T_MATCHES_RLIM64_T	0 | ||
| 96 | |||
| 97 | # define __STATFS_MATCHES_STATFS64 0 | ||
| 98 | |||
| 99 | # define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 0 | ||
| 100 | #endif | ||
| 101 | |||
| 102 | /* Number of descriptors that can fit in an `fd_set'. */ | ||
| 103 | #define __FD_SETSIZE		1024 | ||
| 104 | |||
| 105 | |||
| 106 | #endif /* bits/typesizes.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnux32/bits/wordsize.h deleted-16| ... | @@ -1,16 +0,0 @@ | ||
| 1 | /* Determine the wordsize from the preprocessor defines. */ | ||
| 2 | |||
| 3 | #if defined __x86_64__ && !defined __ILP32__ | ||
| 4 | # define __WORDSIZE	64 | ||
| 5 | #else | ||
| 6 | # define __WORDSIZE	32 | ||
| 7 | #define __WORDSIZE32_SIZE_ULONG		0 | ||
| 8 | #define __WORDSIZE32_PTRDIFF_LONG	0 | ||
| 9 | #endif | ||
| 10 | |||
| 11 | #define __WORDSIZE_TIME64_COMPAT32 1 | ||
| 12 | |||
| 13 | #ifdef __x86_64__ | ||
| 14 | /* Both x86-64 and x32 use the 64-bit system call interface. */ | ||
| 15 | # define __SYSCALL_WORDSIZE		64 | ||
| 16 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnux32/finclude/math-vector-fortran.h deleted-127| ... | @@ -1,127 +0,0 @@ | ||
| 1 | ! Platform-specific declarations of SIMD math functions for Fortran. -*- f90 -*- | ||
| 2 | ! Copyright (C) 2019-2025 Free Software Foundation, Inc. | ||
| 3 | ! This file is part of the GNU C Library. | ||
| 4 | ! | ||
| 5 | ! The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | ! modify it under the terms of the GNU Lesser General Public | ||
| 7 | ! License as published by the Free Software Foundation; either | ||
| 8 | ! version 2.1 of the License, or (at your option) any later version. | ||
| 9 | ! | ||
| 10 | ! The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | ! but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | ! Lesser General Public License for more details. | ||
| 14 | ! | ||
| 15 | ! You should have received a copy of the GNU Lesser General Public | ||
| 16 | ! License along with the GNU C Library; if not, see | ||
| 17 | ! <https://www.gnu.org/licenses/>. | ||
| 18 | |||
| 19 | !GCC$ builtin (cos) attributes simd (notinbranch) if('x86_64') | ||
| 20 | !GCC$ builtin (cosf) attributes simd (notinbranch) if('x86_64') | ||
| 21 | !GCC$ builtin (sin) attributes simd (notinbranch) if('x86_64') | ||
| 22 | !GCC$ builtin (sinf) attributes simd (notinbranch) if('x86_64') | ||
| 23 | !GCC$ builtin (sincos) attributes simd (notinbranch) if('x86_64') | ||
| 24 | !GCC$ builtin (sincosf) attributes simd (notinbranch) if('x86_64') | ||
| 25 | !GCC$ builtin (log) attributes simd (notinbranch) if('x86_64') | ||
| 26 | !GCC$ builtin (logf) attributes simd (notinbranch) if('x86_64') | ||
| 27 | !GCC$ builtin (exp) attributes simd (notinbranch) if('x86_64') | ||
| 28 | !GCC$ builtin (expf) attributes simd (notinbranch) if('x86_64') | ||
| 29 | !GCC$ builtin (pow) attributes simd (notinbranch) if('x86_64') | ||
| 30 | !GCC$ builtin (powf) attributes simd (notinbranch) if('x86_64') | ||
| 31 | !GCC$ builtin (acos) attributes simd (notinbranch) if('x86_64') | ||
| 32 | !GCC$ builtin (acosf) attributes simd (notinbranch) if('x86_64') | ||
| 33 | !GCC$ builtin (atan) attributes simd (notinbranch) if('x86_64') | ||
| 34 | !GCC$ builtin (atanf) attributes simd (notinbranch) if('x86_64') | ||
| 35 | !GCC$ builtin (asin) attributes simd (notinbranch) if('x86_64') | ||
| 36 | !GCC$ builtin (asinf) attributes simd (notinbranch) if('x86_64') | ||
| 37 | !GCC$ builtin (hypot) attributes simd (notinbranch) if('x86_64') | ||
| 38 | !GCC$ builtin (hypotf) attributes simd (notinbranch) if('x86_64') | ||
| 39 | !GCC$ builtin (exp2) attributes simd (notinbranch) if('x86_64') | ||
| 40 | !GCC$ builtin (exp2f) attributes simd (notinbranch) if('x86_64') | ||
| 41 | !GCC$ builtin (exp10) attributes simd (notinbranch) if('x86_64') | ||
| 42 | !GCC$ builtin (exp10f) attributes simd (notinbranch) if('x86_64') | ||
| 43 | !GCC$ builtin (cosh) attributes simd (notinbranch) if('x86_64') | ||
| 44 | !GCC$ builtin (coshf) attributes simd (notinbranch) if('x86_64') | ||
| 45 | !GCC$ builtin (expm1) attributes simd (notinbranch) if('x86_64') | ||
| 46 | !GCC$ builtin (expm1f) attributes simd (notinbranch) if('x86_64') | ||
| 47 | !GCC$ builtin (sinh) attributes simd (notinbranch) if('x86_64') | ||
| 48 | !GCC$ builtin (sinhf) attributes simd (notinbranch) if('x86_64') | ||
| 49 | !GCC$ builtin (cbrt) attributes simd (notinbranch) if('x86_64') | ||
| 50 | !GCC$ builtin (cbrtf) attributes simd (notinbranch) if('x86_64') | ||
| 51 | !GCC$ builtin (atan2) attributes simd (notinbranch) if('x86_64') | ||
| 52 | !GCC$ builtin (atan2f) attributes simd (notinbranch) if('x86_64') | ||
| 53 | !GCC$ builtin (log10) attributes simd (notinbranch) if('x86_64') | ||
| 54 | !GCC$ builtin (log10f) attributes simd (notinbranch) if('x86_64') | ||
| 55 | !GCC$ builtin (log2) attributes simd (notinbranch) if('x86_64') | ||
| 56 | !GCC$ builtin (log2f) attributes simd (notinbranch) if('x86_64') | ||
| 57 | !GCC$ builtin (log1p) attributes simd (notinbranch) if('x86_64') | ||
| 58 | !GCC$ builtin (log1pf) attributes simd (notinbranch) if('x86_64') | ||
| 59 | !GCC$ builtin (atanh) attributes simd (notinbranch) if('x86_64') | ||
| 60 | !GCC$ builtin (atanhf) attributes simd (notinbranch) if('x86_64') | ||
| 61 | !GCC$ builtin (acosh) attributes simd (notinbranch) if('x86_64') | ||
| 62 | !GCC$ builtin (acoshf) attributes simd (notinbranch) if('x86_64') | ||
| 63 | !GCC$ builtin (erf) attributes simd (notinbranch) if('x86_64') | ||
| 64 | !GCC$ builtin (erff) attributes simd (notinbranch) if('x86_64') | ||
| 65 | !GCC$ builtin (tanh) attributes simd (notinbranch) if('x86_64') | ||
| 66 | !GCC$ builtin (tanhf) attributes simd (notinbranch) if('x86_64') | ||
| 67 | !GCC$ builtin (asinh) attributes simd (notinbranch) if('x86_64') | ||
| 68 | !GCC$ builtin (asinhf) attributes simd (notinbranch) if('x86_64') | ||
| 69 | !GCC$ builtin (erfc) attributes simd (notinbranch) if('x86_64') | ||
| 70 | !GCC$ builtin (erfcf) attributes simd (notinbranch) if('x86_64') | ||
| 71 | !GCC$ builtin (tan) attributes simd (notinbranch) if('x86_64') | ||
| 72 | !GCC$ builtin (tanf) attributes simd (notinbranch) if('x86_64') | ||
| 73 | |||
| 74 | !GCC$ builtin (cos) attributes simd (notinbranch) if('x32') | ||
| 75 | !GCC$ builtin (cosf) attributes simd (notinbranch) if('x32') | ||
| 76 | !GCC$ builtin (sin) attributes simd (notinbranch) if('x32') | ||
| 77 | !GCC$ builtin (sinf) attributes simd (notinbranch) if('x32') | ||
| 78 | !GCC$ builtin (sincos) attributes simd (notinbranch) if('x32') | ||
| 79 | !GCC$ builtin (sincosf) attributes simd (notinbranch) if('x32') | ||
| 80 | !GCC$ builtin (log) attributes simd (notinbranch) if('x32') | ||
| 81 | !GCC$ builtin (logf) attributes simd (notinbranch) if('x32') | ||
| 82 | !GCC$ builtin (exp) attributes simd (notinbranch) if('x32') | ||
| 83 | !GCC$ builtin (expf) attributes simd (notinbranch) if('x32') | ||
| 84 | !GCC$ builtin (pow) attributes simd (notinbranch) if('x32') | ||
| 85 | !GCC$ builtin (powf) attributes simd (notinbranch) if('x32') | ||
| 86 | !GCC$ builtin (acos) attributes simd (notinbranch) if('x32') | ||
| 87 | !GCC$ builtin (acosf) attributes simd (notinbranch) if('x32') | ||
| 88 | !GCC$ builtin (atan) attributes simd (notinbranch) if('x32') | ||
| 89 | !GCC$ builtin (atanf) attributes simd (notinbranch) if('x32') | ||
| 90 | !GCC$ builtin (asin) attributes simd (notinbranch) if('x32') | ||
| 91 | !GCC$ builtin (asinf) attributes simd (notinbranch) if('x32') | ||
| 92 | !GCC$ builtin (hypot) attributes simd (notinbranch) if('x32') | ||
| 93 | !GCC$ builtin (hypotf) attributes simd (notinbranch) if('x32') | ||
| 94 | !GCC$ builtin (exp2) attributes simd (notinbranch) if('x32') | ||
| 95 | !GCC$ builtin (exp2f) attributes simd (notinbranch) if('x32') | ||
| 96 | !GCC$ builtin (exp10) attributes simd (notinbranch) if('x32') | ||
| 97 | !GCC$ builtin (exp10f) attributes simd (notinbranch) if('x32') | ||
| 98 | !GCC$ builtin (cosh) attributes simd (notinbranch) if('x32') | ||
| 99 | !GCC$ builtin (coshf) attributes simd (notinbranch) if('x32') | ||
| 100 | !GCC$ builtin (expm1) attributes simd (notinbranch) if('x32') | ||
| 101 | !GCC$ builtin (expm1f) attributes simd (notinbranch) if('x32') | ||
| 102 | !GCC$ builtin (sinh) attributes simd (notinbranch) if('x32') | ||
| 103 | !GCC$ builtin (sinhf) attributes simd (notinbranch) if('x32') | ||
| 104 | !GCC$ builtin (cbrt) attributes simd (notinbranch) if('x32') | ||
| 105 | !GCC$ builtin (cbrtf) attributes simd (notinbranch) if('x32') | ||
| 106 | !GCC$ builtin (atan2) attributes simd (notinbranch) if('x32') | ||
| 107 | !GCC$ builtin (atan2f) attributes simd (notinbranch) if('x32') | ||
| 108 | !GCC$ builtin (log10) attributes simd (notinbranch) if('x32') | ||
| 109 | !GCC$ builtin (log10f) attributes simd (notinbranch) if('x32') | ||
| 110 | !GCC$ builtin (log2) attributes simd (notinbranch) if('x32') | ||
| 111 | !GCC$ builtin (log2f) attributes simd (notinbranch) if('x32') | ||
| 112 | !GCC$ builtin (log1p) attributes simd (notinbranch) if('x32') | ||
| 113 | !GCC$ builtin (log1pf) attributes simd (notinbranch) if('x32') | ||
| 114 | !GCC$ builtin (atanh) attributes simd (notinbranch) if('x32') | ||
| 115 | !GCC$ builtin (atanhf) attributes simd (notinbranch) if('x32') | ||
| 116 | !GCC$ builtin (acosh) attributes simd (notinbranch) if('x32') | ||
| 117 | !GCC$ builtin (acoshf) attributes simd (notinbranch) if('x32') | ||
| 118 | !GCC$ builtin (erf) attributes simd (notinbranch) if('x32') | ||
| 119 | !GCC$ builtin (erff) attributes simd (notinbranch) if('x32') | ||
| 120 | !GCC$ builtin (tanh) attributes simd (notinbranch) if('x32') | ||
| 121 | !GCC$ builtin (tanhf) attributes simd (notinbranch) if('x32') | ||
| 122 | !GCC$ builtin (asinh) attributes simd (notinbranch) if('x32') | ||
| 123 | !GCC$ builtin (asinhf) attributes simd (notinbranch) if('x32') | ||
| 124 | !GCC$ builtin (erfc) attributes simd (notinbranch) if('x32') | ||
| 125 | !GCC$ builtin (erfcf) attributes simd (notinbranch) if('x32') | ||
| 126 | !GCC$ builtin (tan) attributes simd (notinbranch) if('x32') | ||
| 127 | !GCC$ builtin (tanf) attributes simd (notinbranch) if('x32') | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnux32/fpu_control.h deleted-108| ... | @@ -1,108 +0,0 @@ | ||
| 1 | /* FPU control word bits. x86 version. | ||
| 2 | Copyright (C) 1993-2025 Free Software Foundation, Inc. | ||
| 3 | This file is part of the GNU C Library. | ||
| 4 | |||
| 5 | The GNU C Library is free software; you can redistribute it and/or | ||
| 6 | modify it under the terms of the GNU Lesser General Public | ||
| 7 | License as published by the Free Software Foundation; either | ||
| 8 | version 2.1 of the License, or (at your option) any later version. | ||
| 9 | |||
| 10 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 13 | Lesser General Public License for more details. | ||
| 14 | |||
| 15 | You should have received a copy of the GNU Lesser General Public | ||
| 16 | License along with the GNU C Library; if not, see | ||
| 17 | <https://www.gnu.org/licenses/>. */ | ||
| 18 | |||
| 19 | #ifndef _FPU_CONTROL_H | ||
| 20 | #define _FPU_CONTROL_H	1 | ||
| 21 | |||
| 22 | /* Note that this file sets on x86-64 only the x87 FPU, it does not | ||
| 23 | touch the SSE unit. */ | ||
| 24 | |||
| 25 | /* Here is the dirty part. Set up your 387 through the control word | ||
| 26 | * (cw) register. | ||
| 27 | * | ||
| 28 | * 15-13 12 11-10 9-8 7-6 5 4 3 2 1 0 | ||
| 29 | * | reserved | IC | RC | PC | reserved | PM | UM | OM | ZM | DM | IM | ||
| 30 | * | ||
| 31 | * IM: Invalid operation mask | ||
| 32 | * DM: Denormalized operand mask | ||
| 33 | * ZM: Zero-divide mask | ||
| 34 | * OM: Overflow mask | ||
| 35 | * UM: Underflow mask | ||
| 36 | * PM: Precision (inexact result) mask | ||
| 37 | * | ||
| 38 | * Mask bit is 1 means no interrupt. | ||
| 39 | * | ||
| 40 | * PC: Precision control | ||
| 41 | * 11 - round to extended precision | ||
| 42 | * 10 - round to double precision | ||
| 43 | * 00 - round to single precision | ||
| 44 | * | ||
| 45 | * RC: Rounding control | ||
| 46 | * 00 - rounding to nearest | ||
| 47 | * 01 - rounding down (toward - infinity) | ||
| 48 | * 10 - rounding up (toward + infinity) | ||
| 49 | * 11 - rounding toward zero | ||
| 50 | * | ||
| 51 | * IC: Infinity control | ||
| 52 | * That is for 8087 and 80287 only. | ||
| 53 | * | ||
| 54 | * The hardware default is 0x037f which we use. | ||
| 55 | */ | ||
| 56 | |||
| 57 | #include <features.h> | ||
| 58 | |||
| 59 | /* masking of interrupts */ | ||
| 60 | #define _FPU_MASK_IM 0x01 | ||
| 61 | #define _FPU_MASK_DM 0x02 | ||
| 62 | #define _FPU_MASK_ZM 0x04 | ||
| 63 | #define _FPU_MASK_OM 0x08 | ||
| 64 | #define _FPU_MASK_UM 0x10 | ||
| 65 | #define _FPU_MASK_PM 0x20 | ||
| 66 | |||
| 67 | /* precision control */ | ||
| 68 | #define _FPU_EXTENDED 0x300	/* libm requires double extended precision. */ | ||
| 69 | #define _FPU_DOUBLE 0x200 | ||
| 70 | #define _FPU_SINGLE 0x0 | ||
| 71 | |||
| 72 | /* rounding control */ | ||
| 73 | #define _FPU_RC_NEAREST 0x0 /* RECOMMENDED */ | ||
| 74 | #define _FPU_RC_DOWN 0x400 | ||
| 75 | #define _FPU_RC_UP 0x800 | ||
| 76 | #define _FPU_RC_ZERO 0xC00 | ||
| 77 | |||
| 78 | #define _FPU_RESERVED 0xF0C0 /* Reserved bits in cw */ | ||
| 79 | |||
| 80 | |||
| 81 | /* The fdlibm code requires strict IEEE double precision arithmetic, | ||
| 82 | and no interrupts for exceptions, rounding to nearest. */ | ||
| 83 | |||
| 84 | #define _FPU_DEFAULT 0x037f | ||
| 85 | |||
| 86 | /* IEEE: same as above. */ | ||
| 87 | #define _FPU_IEEE 0x037f | ||
| 88 | |||
| 89 | /* Type of the control word. */ | ||
| 90 | typedef unsigned int fpu_control_t __attribute__ ((__mode__ (__HI__))); | ||
| 91 | |||
| 92 | /* Macros for accessing the hardware control word. "*&" is used to | ||
| 93 | work around a bug in older versions of GCC. __volatile__ is used | ||
| 94 | to support combination of writing the control register and reading | ||
| 95 | it back. Without __volatile__, the old value may be used for reading | ||
| 96 | back under compiler optimization. | ||
| 97 | |||
| 98 | Note that the use of these macros is not sufficient anymore with | ||
| 99 | recent hardware nor on x86-64. Some floating point operations are | ||
| 100 | executed in the SSE/SSE2 engines which have their own control and | ||
| 101 | status register. */ | ||
| 102 | #define _FPU_GETCW(cw) __asm__ __volatile__ ("fnstcw %0" : "=m" (*&cw)) | ||
| 103 | #define _FPU_SETCW(cw) __asm__ __volatile__ ("fldcw %0" : : "m" (*&cw)) | ||
| 104 | |||
| 105 | /* Default control word set at startup. */ | ||
| 106 | extern fpu_control_t __fpu_control; | ||
| 107 | |||
| 108 | #endif	/* fpu_control.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnux32/gnu/lib-names-x32.h deleted-27| ... | @@ -1,27 +0,0 @@ | ||
| 1 | /* This file is automatically generated. */ | ||
| 2 | #ifndef __GNU_LIB_NAMES_H | ||
| 3 | # error "Never use <gnu/lib-names-x32.h> directly; include <gnu/lib-names.h> instead." | ||
| 4 | #endif | ||
| 5 | |||
| 6 | #define LD_LINUX_X32_SO "ld-linux-x32.so.2" | ||
| 7 | #define LD_SO "ld-linux-x32.so.2" | ||
| 8 | #define LIBANL_SO "libanl.so.1" | ||
| 9 | #define LIBBROKENLOCALE_SO "libBrokenLocale.so.1" | ||
| 10 | #define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0" | ||
| 11 | #define LIBC_SO "libc.so.6" | ||
| 12 | #define LIBDL_SO "libdl.so.2" | ||
| 13 | #define LIBGCC_S_SO "libgcc_s.so.1" | ||
| 14 | #define LIBMVEC_SO "libmvec.so.1" | ||
| 15 | #define LIBM_SO "libm.so.6" | ||
| 16 | #define LIBNSL_SO "libnsl.so.1" | ||
| 17 | #define LIBNSS_COMPAT_SO "libnss_compat.so.2" | ||
| 18 | #define LIBNSS_DB_SO "libnss_db.so.2" | ||
| 19 | #define LIBNSS_DNS_SO "libnss_dns.so.2" | ||
| 20 | #define LIBNSS_FILES_SO "libnss_files.so.2" | ||
| 21 | #define LIBNSS_HESIOD_SO "libnss_hesiod.so.2" | ||
| 22 | #define LIBNSS_LDAP_SO "libnss_ldap.so.2" | ||
| 23 | #define LIBPTHREAD_SO "libpthread.so.0" | ||
| 24 | #define LIBRESOLV_SO "libresolv.so.2" | ||
| 25 | #define LIBRT_SO "librt.so.1" | ||
| 26 | #define LIBTHREAD_DB_SO "libthread_db.so.1" | ||
| 27 | #define LIBUTIL_SO "libutil.so.1" | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnux32/gnu/lib-names.h deleted-17| ... | @@ -1,17 +0,0 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | It defines macros to allow user program to find the shared | ||
| 3 | library files which come as part of GNU libc. */ | ||
| 4 | #ifndef __GNU_LIB_NAMES_H | ||
| 5 | #define __GNU_LIB_NAMES_H	1 | ||
| 6 | |||
| 7 | #if !defined __x86_64__ | ||
| 8 | # include <gnu/lib-names-32.h> | ||
| 9 | #endif | ||
| 10 | #if defined __x86_64__ && defined __LP64__ | ||
| 11 | # include <gnu/lib-names-64.h> | ||
| 12 | #endif | ||
| 13 | #if defined __x86_64__ && defined __ILP32__ | ||
| 14 | # include <gnu/lib-names-x32.h> | ||
| 15 | #endif | ||
| 16 | |||
| 17 | #endif	/* gnu/lib-names.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnux32/gnu/stubs-x32.h deleted-22| ... | @@ -1,22 +0,0 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | It defines a symbol `__stub_FUNCTION' for each function | ||
| 3 | in the C library which is a stub, meaning it will fail | ||
| 4 | every time called, usually setting errno to ENOSYS. */ | ||
| 5 | |||
| 6 | #ifdef _LIBC | ||
| 7 | #error Applications may not define the macro _LIBC | ||
| 8 | #endif | ||
| 9 | |||
| 10 | #define __stub___compat_bdflush | ||
| 11 | #define __stub___compat_create_module | ||
| 12 | #define __stub___compat_get_kernel_syms | ||
| 13 | #define __stub___compat_nfsservctl | ||
| 14 | #define __stub___compat_query_module | ||
| 15 | #define __stub___compat_uselib | ||
| 16 | #define __stub_chflags | ||
| 17 | #define __stub_fchflags | ||
| 18 | #define __stub_gtty | ||
| 19 | #define __stub_revoke | ||
| 20 | #define __stub_setlogin | ||
| 21 | #define __stub_sigreturn | ||
| 22 | #define __stub_stty | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnux32/gnu/stubs.h deleted-14| ... | @@ -1,14 +0,0 @@ | ||
| 1 | /* This file is automatically generated. | ||
| 2 | This file selects the right generated file of `__stub_FUNCTION' macros | ||
| 3 | based on the architecture being compiled for. */ | ||
| 4 | |||
| 5 | |||
| 6 | #if !defined __x86_64__ | ||
| 7 | # include <gnu/stubs-32.h> | ||
| 8 | #endif | ||
| 9 | #if defined __x86_64__ && defined __LP64__ | ||
| 10 | # include <gnu/stubs-64.h> | ||
| 11 | #endif | ||
| 12 | #if defined __x86_64__ && defined __ILP32__ | ||
| 13 | # include <gnu/stubs-x32.h> | ||
| 14 | #endif | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnux32/sys/elf.h deleted-29| ... | @@ -1,29 +0,0 @@ | ||
| 1 | /* Copyright (C) 1998-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_ELF_H | ||
| 19 | #define _SYS_ELF_H	1 | ||
| 20 | |||
| 21 | #ifdef __x86_64__ | ||
| 22 | # error This header is unsupported on x86-64. | ||
| 23 | #else | ||
| 24 | # warning "This header is obsolete; use <sys/procfs.h> instead." | ||
| 25 | |||
| 26 | # include <sys/procfs.h> | ||
| 27 | #endif | ||
| 28 | |||
| 29 | #endif	/* _SYS_ELF_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnux32/sys/ptrace.h deleted-216| ... | @@ -1,216 +0,0 @@ | ||
| 1 | /* `ptrace' debugger support interface. Linux/x86 version. | ||
| 2 | Copyright (C) 1996-2025 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | This file is part of the GNU C Library. | ||
| 5 | |||
| 6 | The GNU C Library is free software; you can redistribute it and/or | ||
| 7 | modify it under the terms of the GNU Lesser General Public | ||
| 8 | License as published by the Free Software Foundation; either | ||
| 9 | version 2.1 of the License, or (at your option) any later version. | ||
| 10 | |||
| 11 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 14 | Lesser General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU Lesser General Public | ||
| 17 | License along with the GNU C Library; if not, see | ||
| 18 | <https://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #ifndef _SYS_PTRACE_H | ||
| 21 | #define _SYS_PTRACE_H	1 | ||
| 22 | |||
| 23 | #include <features.h> | ||
| 24 | #include <bits/types.h> | ||
| 25 | |||
| 26 | __BEGIN_DECLS | ||
| 27 | |||
| 28 | /* Type of the REQUEST argument to `ptrace.' */ | ||
| 29 | enum __ptrace_request | ||
| 30 | { | ||
| 31 | /* Indicate that the process making this request should be traced. | ||
| 32 | All signals received by this process can be intercepted by its | ||
| 33 | parent, and its parent can use the other `ptrace' requests. */ | ||
| 34 | PTRACE_TRACEME = 0, | ||
| 35 | #define PT_TRACE_ME PTRACE_TRACEME | ||
| 36 | |||
| 37 | /* Return the word in the process's text space at address ADDR. */ | ||
| 38 | PTRACE_PEEKTEXT = 1, | ||
| 39 | #define PT_READ_I PTRACE_PEEKTEXT | ||
| 40 | |||
| 41 | /* Return the word in the process's data space at address ADDR. */ | ||
| 42 | PTRACE_PEEKDATA = 2, | ||
| 43 | #define PT_READ_D PTRACE_PEEKDATA | ||
| 44 | |||
| 45 | /* Return the word in the process's user area at offset ADDR. */ | ||
| 46 | PTRACE_PEEKUSER = 3, | ||
| 47 | #define PT_READ_U PTRACE_PEEKUSER | ||
| 48 | |||
| 49 | /* Write the word DATA into the process's text space at address ADDR. */ | ||
| 50 | PTRACE_POKETEXT = 4, | ||
| 51 | #define PT_WRITE_I PTRACE_POKETEXT | ||
| 52 | |||
| 53 | /* Write the word DATA into the process's data space at address ADDR. */ | ||
| 54 | PTRACE_POKEDATA = 5, | ||
| 55 | #define PT_WRITE_D PTRACE_POKEDATA | ||
| 56 | |||
| 57 | /* Write the word DATA into the process's user area at offset ADDR. */ | ||
| 58 | PTRACE_POKEUSER = 6, | ||
| 59 | #define PT_WRITE_U PTRACE_POKEUSER | ||
| 60 | |||
| 61 | /* Continue the process. */ | ||
| 62 | PTRACE_CONT = 7, | ||
| 63 | #define PT_CONTINUE PTRACE_CONT | ||
| 64 | |||
| 65 | /* Kill the process. */ | ||
| 66 | PTRACE_KILL = 8, | ||
| 67 | #define PT_KILL PTRACE_KILL | ||
| 68 | |||
| 69 | /* Single step the process. */ | ||
| 70 | PTRACE_SINGLESTEP = 9, | ||
| 71 | #define PT_STEP PTRACE_SINGLESTEP | ||
| 72 | |||
| 73 | /* Get all general purpose registers used by a processes. */ | ||
| 74 | PTRACE_GETREGS = 12, | ||
| 75 | #define PT_GETREGS PTRACE_GETREGS | ||
| 76 | |||
| 77 | /* Set all general purpose registers used by a processes. */ | ||
| 78 | PTRACE_SETREGS = 13, | ||
| 79 | #define PT_SETREGS PTRACE_SETREGS | ||
| 80 | |||
| 81 | /* Get all floating point registers used by a processes. */ | ||
| 82 | PTRACE_GETFPREGS = 14, | ||
| 83 | #define PT_GETFPREGS PTRACE_GETFPREGS | ||
| 84 | |||
| 85 | /* Set all floating point registers used by a processes. */ | ||
| 86 | PTRACE_SETFPREGS = 15, | ||
| 87 | #define PT_SETFPREGS PTRACE_SETFPREGS | ||
| 88 | |||
| 89 | /* Attach to a process that is already running. */ | ||
| 90 | PTRACE_ATTACH = 16, | ||
| 91 | #define PT_ATTACH PTRACE_ATTACH | ||
| 92 | |||
| 93 | /* Detach from a process attached to with PTRACE_ATTACH. */ | ||
| 94 | PTRACE_DETACH = 17, | ||
| 95 | #define PT_DETACH PTRACE_DETACH | ||
| 96 | |||
| 97 | /* Get all extended floating point registers used by a processes. */ | ||
| 98 | PTRACE_GETFPXREGS = 18, | ||
| 99 | #define PT_GETFPXREGS PTRACE_GETFPXREGS | ||
| 100 | |||
| 101 | /* Set all extended floating point registers used by a processes. */ | ||
| 102 | PTRACE_SETFPXREGS = 19, | ||
| 103 | #define PT_SETFPXREGS PTRACE_SETFPXREGS | ||
| 104 | |||
| 105 | /* Continue and stop at the next entry to or return from syscall. */ | ||
| 106 | PTRACE_SYSCALL = 24, | ||
| 107 | #define PT_SYSCALL PTRACE_SYSCALL | ||
| 108 | |||
| 109 | /* Get a TLS entry in the GDT. */ | ||
| 110 | PTRACE_GET_THREAD_AREA = 25, | ||
| 111 | #define PT_GET_THREAD_AREA PTRACE_GET_THREAD_AREA | ||
| 112 | |||
| 113 | /* Change a TLS entry in the GDT. */ | ||
| 114 | PTRACE_SET_THREAD_AREA = 26, | ||
| 115 | #define PT_SET_THREAD_AREA PTRACE_SET_THREAD_AREA | ||
| 116 | |||
| 117 | #ifdef __x86_64__ | ||
| 118 | /* Access TLS data. */ | ||
| 119 | PTRACE_ARCH_PRCTL = 30, | ||
| 120 | # define PT_ARCH_PRCTL PTRACE_ARCH_PRCTL | ||
| 121 | #endif | ||
| 122 | |||
| 123 | /* Continue and stop at the next syscall, it will not be executed. */ | ||
| 124 | PTRACE_SYSEMU = 31, | ||
| 125 | #define PT_SYSEMU PTRACE_SYSEMU | ||
| 126 | |||
| 127 | /* Single step the process, the next syscall will not be executed. */ | ||
| 128 | PTRACE_SYSEMU_SINGLESTEP = 32, | ||
| 129 | #define PT_SYSEMU_SINGLESTEP PTRACE_SYSEMU_SINGLESTEP | ||
| 130 | |||
| 131 | /* Execute process until next taken branch. */ | ||
| 132 | PTRACE_SINGLEBLOCK = 33, | ||
| 133 | #define PT_STEPBLOCK PTRACE_SINGLEBLOCK | ||
| 134 | |||
| 135 | /* Set ptrace filter options. */ | ||
| 136 | PTRACE_SETOPTIONS = 0x4200, | ||
| 137 | #define PT_SETOPTIONS PTRACE_SETOPTIONS | ||
| 138 | |||
| 139 | /* Get last ptrace message. */ | ||
| 140 | PTRACE_GETEVENTMSG = 0x4201, | ||
| 141 | #define PT_GETEVENTMSG PTRACE_GETEVENTMSG | ||
| 142 | |||
| 143 | /* Get siginfo for process. */ | ||
| 144 | PTRACE_GETSIGINFO = 0x4202, | ||
| 145 | #define PT_GETSIGINFO PTRACE_GETSIGINFO | ||
| 146 | |||
| 147 | /* Set new siginfo for process. */ | ||
| 148 | PTRACE_SETSIGINFO = 0x4203, | ||
| 149 | #define PT_SETSIGINFO PTRACE_SETSIGINFO | ||
| 150 | |||
| 151 | /* Get register content. */ | ||
| 152 | PTRACE_GETREGSET = 0x4204, | ||
| 153 | #define PTRACE_GETREGSET PTRACE_GETREGSET | ||
| 154 | |||
| 155 | /* Set register content. */ | ||
| 156 | PTRACE_SETREGSET = 0x4205, | ||
| 157 | #define PTRACE_SETREGSET PTRACE_SETREGSET | ||
| 158 | |||
| 159 | /* Like PTRACE_ATTACH, but do not force tracee to trap and do not affect | ||
| 160 | signal or group stop state. */ | ||
| 161 | PTRACE_SEIZE = 0x4206, | ||
| 162 | #define PTRACE_SEIZE PTRACE_SEIZE | ||
| 163 | |||
| 164 | /* Trap seized tracee. */ | ||
| 165 | PTRACE_INTERRUPT = 0x4207, | ||
| 166 | #define PTRACE_INTERRUPT PTRACE_INTERRUPT | ||
| 167 | |||
| 168 | /* Wait for next group event. */ | ||
| 169 | PTRACE_LISTEN = 0x4208, | ||
| 170 | #define PTRACE_LISTEN PTRACE_LISTEN | ||
| 171 | |||
| 172 | /* Retrieve siginfo_t structures without removing signals from a queue. */ | ||
| 173 | PTRACE_PEEKSIGINFO = 0x4209, | ||
| 174 | #define PTRACE_PEEKSIGINFO PTRACE_PEEKSIGINFO | ||
| 175 | |||
| 176 | /* Get the mask of blocked signals. */ | ||
| 177 | PTRACE_GETSIGMASK = 0x420a, | ||
| 178 | #define PTRACE_GETSIGMASK PTRACE_GETSIGMASK | ||
| 179 | |||
| 180 | /* Change the mask of blocked signals. */ | ||
| 181 | PTRACE_SETSIGMASK = 0x420b, | ||
| 182 | #define PTRACE_SETSIGMASK PTRACE_SETSIGMASK | ||
| 183 | |||
| 184 | /* Get seccomp BPF filters. */ | ||
| 185 | PTRACE_SECCOMP_GET_FILTER = 0x420c, | ||
| 186 | #define PTRACE_SECCOMP_GET_FILTER PTRACE_SECCOMP_GET_FILTER | ||
| 187 | |||
| 188 | /* Get seccomp BPF filter metadata. */ | ||
| 189 | PTRACE_SECCOMP_GET_METADATA = 0x420d, | ||
| 190 | #define PTRACE_SECCOMP_GET_METADATA PTRACE_SECCOMP_GET_METADATA | ||
| 191 | |||
| 192 | /* Get information about system call. */ | ||
| 193 | PTRACE_GET_SYSCALL_INFO = 0x420e, | ||
| 194 | #define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO | ||
| 195 | |||
| 196 | /* Get rseq configuration information. */ | ||
| 197 | PTRACE_GET_RSEQ_CONFIGURATION = 0x420f, | ||
| 198 | #define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION | ||
| 199 | |||
| 200 | /* Set configuration for syscall user dispatch. */ | ||
| 201 | PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG = 0x4210, | ||
| 202 | #define PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG \ | ||
| 203 | PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG | ||
| 204 | |||
| 205 | /* Get configuration for syscall user dispatch. */ | ||
| 206 | PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG = 0x4211 | ||
| 207 | #define PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG \ | ||
| 208 | PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG | ||
| 209 | }; | ||
| 210 | |||
| 211 | |||
| 212 | #include <bits/ptrace-shared.h> | ||
| 213 | |||
| 214 | __END_DECLS | ||
| 215 | |||
| 216 | #endif /* _SYS_PTRACE_H */ | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnux32/sys/ucontext.h deleted-262| ... | @@ -1,262 +0,0 @@ | ||
| 1 | /* Copyright (C) 2001-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_UCONTEXT_H | ||
| 19 | #define _SYS_UCONTEXT_H	1 | ||
| 20 | |||
| 21 | #include <features.h> | ||
| 22 | |||
| 23 | #include <bits/types.h> | ||
| 24 | #include <bits/types/sigset_t.h> | ||
| 25 | #include <bits/types/stack_t.h> | ||
| 26 | |||
| 27 | |||
| 28 | #ifdef __USE_MISC | ||
| 29 | # define __ctx(fld) fld | ||
| 30 | #else | ||
| 31 | # define __ctx(fld) __ ## fld | ||
| 32 | #endif | ||
| 33 | |||
| 34 | #ifdef __x86_64__ | ||
| 35 | |||
| 36 | /* Type for general register. */ | ||
| 37 | __extension__ typedef long long int greg_t; | ||
| 38 | |||
| 39 | /* Number of general registers. */ | ||
| 40 | #define __NGREG	23 | ||
| 41 | #ifdef __USE_MISC | ||
| 42 | # define NGREG	__NGREG | ||
| 43 | #endif | ||
| 44 | |||
| 45 | /* Container for all general registers. */ | ||
| 46 | typedef greg_t gregset_t[__NGREG]; | ||
| 47 | |||
| 48 | #ifdef __USE_GNU | ||
| 49 | /* Number of each register in the `gregset_t' array. */ | ||
| 50 | enum | ||
| 51 | { | ||
| 52 | REG_R8 = 0, | ||
| 53 | # define REG_R8		REG_R8 | ||
| 54 | REG_R9, | ||
| 55 | # define REG_R9		REG_R9 | ||
| 56 | REG_R10, | ||
| 57 | # define REG_R10	REG_R10 | ||
| 58 | REG_R11, | ||
| 59 | # define REG_R11	REG_R11 | ||
| 60 | REG_R12, | ||
| 61 | # define REG_R12	REG_R12 | ||
| 62 | REG_R13, | ||
| 63 | # define REG_R13	REG_R13 | ||
| 64 | REG_R14, | ||
| 65 | # define REG_R14	REG_R14 | ||
| 66 | REG_R15, | ||
| 67 | # define REG_R15	REG_R15 | ||
| 68 | REG_RDI, | ||
| 69 | # define REG_RDI	REG_RDI | ||
| 70 | REG_RSI, | ||
| 71 | # define REG_RSI	REG_RSI | ||
| 72 | REG_RBP, | ||
| 73 | # define REG_RBP	REG_RBP | ||
| 74 | REG_RBX, | ||
| 75 | # define REG_RBX	REG_RBX | ||
| 76 | REG_RDX, | ||
| 77 | # define REG_RDX	REG_RDX | ||
| 78 | REG_RAX, | ||
| 79 | # define REG_RAX	REG_RAX | ||
| 80 | REG_RCX, | ||
| 81 | # define REG_RCX	REG_RCX | ||
| 82 | REG_RSP, | ||
| 83 | # define REG_RSP	REG_RSP | ||
| 84 | REG_RIP, | ||
| 85 | # define REG_RIP	REG_RIP | ||
| 86 | REG_EFL, | ||
| 87 | # define REG_EFL	REG_EFL | ||
| 88 | REG_CSGSFS,		/* Actually short cs, gs, fs, __pad0. */ | ||
| 89 | # define REG_CSGSFS	REG_CSGSFS | ||
| 90 | REG_ERR, | ||
| 91 | # define REG_ERR	REG_ERR | ||
| 92 | REG_TRAPNO, | ||
| 93 | # define REG_TRAPNO	REG_TRAPNO | ||
| 94 | REG_OLDMASK, | ||
| 95 | # define REG_OLDMASK	REG_OLDMASK | ||
| 96 | REG_CR2 | ||
| 97 | # define REG_CR2	REG_CR2 | ||
| 98 | }; | ||
| 99 | #endif | ||
| 100 | |||
| 101 | struct _libc_fpxreg | ||
| 102 | { | ||
| 103 | unsigned short int __ctx(significand)[4]; | ||
| 104 | unsigned short int __ctx(exponent); | ||
| 105 | unsigned short int __glibc_reserved1[3]; | ||
| 106 | }; | ||
| 107 | |||
| 108 | struct _libc_xmmreg | ||
| 109 | { | ||
| 110 | __uint32_t	__ctx(element)[4]; | ||
| 111 | }; | ||
| 112 | |||
| 113 | struct _libc_fpstate | ||
| 114 | { | ||
| 115 | /* 64-bit FXSAVE format. */ | ||
| 116 | __uint16_t		__ctx(cwd); | ||
| 117 | __uint16_t		__ctx(swd); | ||
| 118 | __uint16_t		__ctx(ftw); | ||
| 119 | __uint16_t		__ctx(fop); | ||
| 120 | __uint64_t		__ctx(rip); | ||
| 121 | __uint64_t		__ctx(rdp); | ||
| 122 | __uint32_t		__ctx(mxcsr); | ||
| 123 | __uint32_t		__ctx(mxcr_mask); | ||
| 124 | struct _libc_fpxreg	_st[8]; | ||
| 125 | struct _libc_xmmreg	_xmm[16]; | ||
| 126 | __uint32_t		__glibc_reserved1[24]; | ||
| 127 | }; | ||
| 128 | |||
| 129 | /* Structure to describe FPU registers. */ | ||
| 130 | typedef struct _libc_fpstate *fpregset_t; | ||
| 131 | |||
| 132 | /* Context to describe whole processor state. */ | ||
| 133 | typedef struct | ||
| 134 | { | ||
| 135 | gregset_t __ctx(gregs); | ||
| 136 | /* Note that fpregs is a pointer. */ | ||
| 137 | fpregset_t __ctx(fpregs); | ||
| 138 | __extension__ unsigned long long __reserved1 [8]; | ||
| 139 | } mcontext_t; | ||
| 140 | |||
| 141 | /* Userlevel context. */ | ||
| 142 | typedef struct ucontext_t | ||
| 143 | { | ||
| 144 | unsigned long int __ctx(uc_flags); | ||
| 145 | struct ucontext_t *uc_link; | ||
| 146 | stack_t uc_stack; | ||
| 147 | mcontext_t uc_mcontext; | ||
| 148 | sigset_t uc_sigmask; | ||
| 149 | struct _libc_fpstate __fpregs_mem; | ||
| 150 | __extension__ unsigned long long int __ssp[4]; | ||
| 151 | } ucontext_t; | ||
| 152 | |||
| 153 | #else /* !__x86_64__ */ | ||
| 154 | |||
| 155 | /* Type for general register. */ | ||
| 156 | typedef int greg_t; | ||
| 157 | |||
| 158 | /* Number of general registers. */ | ||
| 159 | #define __NGREG	19 | ||
| 160 | #ifdef __USE_MISC | ||
| 161 | # define NGREG	__NGREG | ||
| 162 | #endif | ||
| 163 | |||
| 164 | /* Container for all general registers. */ | ||
| 165 | typedef greg_t gregset_t[__NGREG]; | ||
| 166 | |||
| 167 | #ifdef __USE_GNU | ||
| 168 | /* Number of each register is the `gregset_t' array. */ | ||
| 169 | enum | ||
| 170 | { | ||
| 171 | REG_GS = 0, | ||
| 172 | # define REG_GS		REG_GS | ||
| 173 | REG_FS, | ||
| 174 | # define REG_FS		REG_FS | ||
| 175 | REG_ES, | ||
| 176 | # define REG_ES		REG_ES | ||
| 177 | REG_DS, | ||
| 178 | # define REG_DS		REG_DS | ||
| 179 | REG_EDI, | ||
| 180 | # define REG_EDI	REG_EDI | ||
| 181 | REG_ESI, | ||
| 182 | # define REG_ESI	REG_ESI | ||
| 183 | REG_EBP, | ||
| 184 | # define REG_EBP	REG_EBP | ||
| 185 | REG_ESP, | ||
| 186 | # define REG_ESP	REG_ESP | ||
| 187 | REG_EBX, | ||
| 188 | # define REG_EBX	REG_EBX | ||
| 189 | REG_EDX, | ||
| 190 | # define REG_EDX	REG_EDX | ||
| 191 | REG_ECX, | ||
| 192 | # define REG_ECX	REG_ECX | ||
| 193 | REG_EAX, | ||
| 194 | # define REG_EAX	REG_EAX | ||
| 195 | REG_TRAPNO, | ||
| 196 | # define REG_TRAPNO	REG_TRAPNO | ||
| 197 | REG_ERR, | ||
| 198 | # define REG_ERR	REG_ERR | ||
| 199 | REG_EIP, | ||
| 200 | # define REG_EIP	REG_EIP | ||
| 201 | REG_CS, | ||
| 202 | # define REG_CS		REG_CS | ||
| 203 | REG_EFL, | ||
| 204 | # define REG_EFL	REG_EFL | ||
| 205 | REG_UESP, | ||
| 206 | # define REG_UESP	REG_UESP | ||
| 207 | REG_SS | ||
| 208 | # define REG_SS	REG_SS | ||
| 209 | }; | ||
| 210 | #endif | ||
| 211 | |||
| 212 | /* Definitions taken from the kernel headers. */ | ||
| 213 | struct _libc_fpreg | ||
| 214 | { | ||
| 215 | unsigned short int __ctx(significand)[4]; | ||
| 216 | unsigned short int __ctx(exponent); | ||
| 217 | }; | ||
| 218 | |||
| 219 | struct _libc_fpstate | ||
| 220 | { | ||
| 221 | unsigned long int __ctx(cw); | ||
| 222 | unsigned long int __ctx(sw); | ||
| 223 | unsigned long int __ctx(tag); | ||
| 224 | unsigned long int __ctx(ipoff); | ||
| 225 | unsigned long int __ctx(cssel); | ||
| 226 | unsigned long int __ctx(dataoff); | ||
| 227 | unsigned long int __ctx(datasel); | ||
| 228 | struct _libc_fpreg _st[8]; | ||
| 229 | unsigned long int __ctx(status); | ||
| 230 | }; | ||
| 231 | |||
| 232 | /* Structure to describe FPU registers. */ | ||
| 233 | typedef struct _libc_fpstate *fpregset_t; | ||
| 234 | |||
| 235 | /* Context to describe whole processor state. */ | ||
| 236 | typedef struct | ||
| 237 | { | ||
| 238 | gregset_t __ctx(gregs); | ||
| 239 | /* Due to Linux's history we have to use a pointer here. The SysV/i386 | ||
| 240 | ABI requires a struct with the values. */ | ||
| 241 | fpregset_t __ctx(fpregs); | ||
| 242 | unsigned long int __ctx(oldmask); | ||
| 243 | unsigned long int __ctx(cr2); | ||
| 244 | } mcontext_t; | ||
| 245 | |||
| 246 | /* Userlevel context. */ | ||
| 247 | typedef struct ucontext_t | ||
| 248 | { | ||
| 249 | unsigned long int __ctx(uc_flags); | ||
| 250 | struct ucontext_t *uc_link; | ||
| 251 | stack_t uc_stack; | ||
| 252 | mcontext_t uc_mcontext; | ||
| 253 | sigset_t uc_sigmask; | ||
| 254 | struct _libc_fpstate __fpregs_mem; | ||
| 255 | unsigned long int __ssp[4]; | ||
| 256 | } ucontext_t; | ||
| 257 | |||
| 258 | #endif /* !__x86_64__ */ | ||
| 259 | |||
| 260 | #undef __ctx | ||
| 261 | |||
| 262 | #endif /* sys/ucontext.h */ | ||
| \ No newline at end of file | |||
lib/libc/include/x86_64-linux-gnux32/sys/user.h deleted-180| ... | @@ -1,180 +0,0 @@ | ||
| 1 | /* Copyright (C) 2001-2025 Free Software Foundation, Inc. | ||
| 2 | This file is part of the GNU C Library. | ||
| 3 | |||
| 4 | The GNU C Library is free software; you can redistribute it and/or | ||
| 5 | modify it under the terms of the GNU Lesser General Public | ||
| 6 | License as published by the Free Software Foundation; either | ||
| 7 | version 2.1 of the License, or (at your option) any later version. | ||
| 8 | |||
| 9 | The GNU C Library is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 12 | Lesser General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU Lesser General Public | ||
| 15 | License along with the GNU C Library; if not, see | ||
| 16 | <https://www.gnu.org/licenses/>. */ | ||
| 17 | |||
| 18 | #ifndef _SYS_USER_H | ||
| 19 | #define _SYS_USER_H	1 | ||
| 20 | |||
| 21 | /* The whole purpose of this file is for GDB and GDB only. Don't read | ||
| 22 | too much into it. Don't use it for anything other than GDB unless | ||
| 23 | you know what you are doing. */ | ||
| 24 | |||
| 25 | #ifdef __x86_64__ | ||
| 26 | |||
| 27 | struct user_fpregs_struct | ||
| 28 | { | ||
| 29 | unsigned short int	cwd; | ||
| 30 | unsigned short int	swd; | ||
| 31 | unsigned short int	ftw; | ||
| 32 | unsigned short int	fop; | ||
| 33 | __extension__ unsigned long long int rip; | ||
| 34 | __extension__ unsigned long long int rdp; | ||
| 35 | unsigned int		mxcsr; | ||
| 36 | unsigned int		mxcr_mask; | ||
| 37 | unsigned int		st_space[32]; /* 8*16 bytes for each FP-reg = 128 bytes */ | ||
| 38 | unsigned int		xmm_space[64]; /* 16*16 bytes for each XMM-reg = 256 bytes */ | ||
| 39 | unsigned int		padding[24]; | ||
| 40 | }; | ||
| 41 | |||
| 42 | struct user_regs_struct | ||
| 43 | { | ||
| 44 | __extension__ unsigned long long int r15; | ||
| 45 | __extension__ unsigned long long int r14; | ||
| 46 | __extension__ unsigned long long int r13; | ||
| 47 | __extension__ unsigned long long int r12; | ||
| 48 | __extension__ unsigned long long int rbp; | ||
| 49 | __extension__ unsigned long long int rbx; | ||
| 50 | __extension__ unsigned long long int r11; | ||
| 51 | __extension__ unsigned long long int r10; | ||
| 52 | __extension__ unsigned long long int r9; | ||
| 53 | __extension__ unsigned long long int r8; | ||
| 54 | __extension__ unsigned long long int rax; | ||
| 55 | __extension__ unsigned long long int rcx; | ||
| 56 | __extension__ unsigned long long int rdx; | ||
| 57 | __extension__ unsigned long long int rsi; | ||
| 58 | __extension__ unsigned long long int rdi; | ||
| 59 | __extension__ unsigned long long int orig_rax; | ||
| 60 | __extension__ unsigned long long int rip; | ||
| 61 | __extension__ unsigned long long int cs; | ||
| 62 | __extension__ unsigned long long int eflags; | ||
| 63 | __extension__ unsigned long long int rsp; | ||
| 64 | __extension__ unsigned long long int ss; | ||
| 65 | __extension__ unsigned long long int fs_base; | ||
| 66 | __extension__ unsigned long long int gs_base; | ||
| 67 | __extension__ unsigned long long int ds; | ||
| 68 | __extension__ unsigned long long int es; | ||
| 69 | __extension__ unsigned long long int fs; | ||
| 70 | __extension__ unsigned long long int gs; | ||
| 71 | }; | ||
| 72 | |||
| 73 | struct user | ||
| 74 | { | ||
| 75 | struct user_regs_struct	regs; | ||
| 76 | int				u_fpvalid; | ||
| 77 | struct user_fpregs_struct	i387; | ||
| 78 | __extension__ unsigned long long int	u_tsize; | ||
| 79 | __extension__ unsigned long long int	u_dsize; | ||
| 80 | __extension__ unsigned long long int	u_ssize; | ||
| 81 | __extension__ unsigned long long int	start_code; | ||
| 82 | __extension__ unsigned long long int	start_stack; | ||
| 83 | __extension__ long long int		signal; | ||
| 84 | int				reserved; | ||
| 85 | __extension__ union | ||
| 86 | { | ||
| 87 | struct user_regs_struct*	u_ar0; | ||
| 88 | __extension__ unsigned long long int	__u_ar0_word; | ||
| 89 | }; | ||
| 90 | __extension__ union | ||
| 91 | { | ||
| 92 | struct user_fpregs_struct*	u_fpstate; | ||
| 93 | __extension__ unsigned long long int	__u_fpstate_word; | ||
| 94 | }; | ||
| 95 | __extension__ unsigned long long int	magic; | ||
| 96 | char				u_comm [32]; | ||
| 97 | __extension__ unsigned long long int	u_debugreg [8]; | ||
| 98 | }; | ||
| 99 | |||
| 100 | #else | ||
| 101 | /* These are the 32-bit x86 structures. */ | ||
| 102 | struct user_fpregs_struct | ||
| 103 | { | ||
| 104 | long int cwd; | ||
| 105 | long int swd; | ||
| 106 | long int twd; | ||
| 107 | long int fip; | ||
| 108 | long int fcs; | ||
| 109 | long int foo; | ||
| 110 | long int fos; | ||
| 111 | long int st_space [20]; | ||
| 112 | }; | ||
| 113 | |||
| 114 | struct user_fpxregs_struct | ||
| 115 | { | ||
| 116 | unsigned short int cwd; | ||
| 117 | unsigned short int swd; | ||
| 118 | unsigned short int twd; | ||
| 119 | unsigned short int fop; | ||
| 120 | long int fip; | ||
| 121 | long int fcs; | ||
| 122 | long int foo; | ||
| 123 | long int fos; | ||
| 124 | long int mxcsr; | ||
| 125 | long int reserved; | ||
| 126 | long int st_space[32]; /* 8*16 bytes for each FP-reg = 128 bytes */ | ||
| 127 | long int xmm_space[32]; /* 8*16 bytes for each XMM-reg = 128 bytes */ | ||
| 128 | long int padding[56]; | ||
| 129 | }; | ||
| 130 | |||
| 131 | struct user_regs_struct | ||
| 132 | { | ||
| 133 | long int ebx; | ||
| 134 | long int ecx; | ||
| 135 | long int edx; | ||
| 136 | long int esi; | ||
| 137 | long int edi; | ||
| 138 | long int ebp; | ||
| 139 | long int eax; | ||
| 140 | long int xds; | ||
| 141 | long int xes; | ||
| 142 | long int xfs; | ||
| 143 | long int xgs; | ||
| 144 | long int orig_eax; | ||
| 145 | long int eip; | ||
| 146 | long int xcs; | ||
| 147 | long int eflags; | ||
| 148 | long int esp; | ||
| 149 | long int xss; | ||
| 150 | }; | ||
| 151 | |||
| 152 | struct user | ||
| 153 | { | ||
| 154 | struct user_regs_struct	regs; | ||
| 155 | int				u_fpvalid; | ||
| 156 | struct user_fpregs_struct	i387; | ||
| 157 | unsigned long int		u_tsize; | ||
| 158 | unsigned long int		u_dsize; | ||
| 159 | unsigned long int		u_ssize; | ||
| 160 | unsigned long int		start_code; | ||
| 161 | unsigned long int		start_stack; | ||
| 162 | long int			signal; | ||
| 163 | int				reserved; | ||
| 164 | struct user_regs_struct*	u_ar0; | ||
| 165 | struct user_fpregs_struct*	u_fpstate; | ||
| 166 | unsigned long int		magic; | ||
| 167 | char				u_comm [32]; | ||
| 168 | int				u_debugreg [8]; | ||
| 169 | }; | ||
| 170 | #endif /* __x86_64__ */ | ||
| 171 | |||
| 172 | #define PAGE_SHIFT		12 | ||
| 173 | #define PAGE_SIZE		(1UL << PAGE_SHIFT) | ||
| 174 | #define PAGE_MASK		(~(PAGE_SIZE-1)) | ||
| 175 | #define NBPG			PAGE_SIZE | ||
| 176 | #define UPAGES			1 | ||
| 177 | #define HOST_TEXT_START_ADDR	(u.start_code) | ||
| 178 | #define HOST_STACK_END_ADDR	(u.start_stack + u.u_ssize * NBPG) | ||
| 179 | |||
| 180 | #endif	/* _SYS_USER_H */ | ||
| \ No newline at end of file | |||
lib/std/zig/LibCDirs.zig+6| ... | @@ -170,6 +170,8 @@ pub fn detectFromBuilding( | ... | @@ -170,6 +170,8 @@ pub fn detectFromBuilding( |
| 170 | // Some architecture families are handled by the same set of headers. | 170 | // Some architecture families are handled by the same set of headers. |
| 171 | const arch_name = if (target.isMuslLibC() or target.isWasiLibC()) | 171 | const arch_name = if (target.isMuslLibC() or target.isWasiLibC()) |
| 172 | std.zig.target.muslArchNameHeaders(target.cpu.arch) | 172 | std.zig.target.muslArchNameHeaders(target.cpu.arch) |
| 173 | else if (target.isGnuLibC()) | ||
| 174 | std.zig.target.glibcArchNameHeaders(target.cpu.arch) | ||
| 173 | else if (target.isFreeBSDLibC()) | 175 | else if (target.isFreeBSDLibC()) |
| 174 | std.zig.target.freebsdArchNameHeaders(target.cpu.arch) | 176 | std.zig.target.freebsdArchNameHeaders(target.cpu.arch) |
| 175 | else if (target.isNetBSDLibC()) | 177 | else if (target.isNetBSDLibC()) |
| ... | @@ -179,6 +181,10 @@ pub fn detectFromBuilding( | ... | @@ -179,6 +181,10 @@ pub fn detectFromBuilding( |
| 179 | const os_name = @tagName(target.os.tag); | 181 | const os_name = @tagName(target.os.tag); |
| 180 | const abi_name = if (target.isMuslLibC()) | 182 | const abi_name = if (target.isMuslLibC()) |
| 181 | std.zig.target.muslAbiNameHeaders(target.abi) | 183 | std.zig.target.muslAbiNameHeaders(target.abi) |
| 184 | else if (target.isGnuLibC()) | ||
| 185 | std.zig.target.glibcAbiNameHeaders(target.abi) | ||
| 186 | else if (target.isNetBSDLibC()) | ||
| 187 | std.zig.target.netbsdAbiNameHeaders(target.abi) | ||
| 182 | else | 188 | else |
| 183 | @tagName(target.abi); | 189 | @tagName(target.abi); |
| 184 | const arch_include_dir = try std.fmt.allocPrint( | 190 | const arch_include_dir = try std.fmt.allocPrint( |
lib/std/zig/target.zig+26| ... | @@ -233,6 +233,25 @@ pub fn muslAbiNameHeaders(abi: std.Target.Abi) [:0]const u8 { | ... | @@ -233,6 +233,25 @@ pub fn muslAbiNameHeaders(abi: std.Target.Abi) [:0]const u8 { |
| 233 | }; | 233 | }; |
| 234 | } | 234 | } |
| 235 | 235 | ||
| 236 | pub fn glibcArchNameHeaders(arch: std.Target.Cpu.Arch) [:0]const u8 { | ||
| 237 | return switch (arch) { | ||
| 238 | .aarch64, .aarch64_be => "aarch64", | ||
| 239 | .arm, .armeb => "arm", | ||
| 240 | .loongarch64 => "loongarch", | ||
| 241 | .mips, .mipsel, .mips64, .mips64el => "mips", | ||
| 242 | .powerpc, .powerpc64, .powerpc64le => "powerpc", | ||
| 243 | .riscv32, .riscv64 => "riscv", | ||
| 244 | .sparc, .sparc64 => "sparc", | ||
| 245 | .x86, .x86_64 => "x86", | ||
| 246 | else => @tagName(arch), | ||
| 247 | }; | ||
| 248 | } | ||
| 249 | |||
| 250 | pub fn glibcAbiNameHeaders(abi: std.Target.Abi) [:0]const u8 { | ||
| 251 | _ = abi; | ||
| 252 | return "gnu"; | ||
| 253 | } | ||
| 254 | |||
| 236 | pub fn freebsdArchNameHeaders(arch: std.Target.Cpu.Arch) [:0]const u8 { | 255 | pub fn freebsdArchNameHeaders(arch: std.Target.Cpu.Arch) [:0]const u8 { |
| 237 | return switch (arch) { | 256 | return switch (arch) { |
| 238 | .powerpc64le => "powerpc64", | 257 | .powerpc64le => "powerpc64", |
| ... | @@ -250,6 +269,13 @@ pub fn netbsdArchNameHeaders(arch: std.Target.Cpu.Arch) [:0]const u8 { | ... | @@ -250,6 +269,13 @@ pub fn netbsdArchNameHeaders(arch: std.Target.Cpu.Arch) [:0]const u8 { |
| 250 | }; | 269 | }; |
| 251 | } | 270 | } |
| 252 | 271 | ||
| 272 | pub fn netbsdAbiNameHeaders(abi: std.Target.Abi) [:0]const u8 { | ||
| 273 | return switch (abi) { | ||
| 274 | .eabi, .eabihf => "eabi", | ||
| 275 | else => "none", | ||
| 276 | }; | ||
| 277 | } | ||
| 278 | |||
| 253 | pub fn isLibCLibName(target: std.Target, name: []const u8) bool { | 279 | pub fn isLibCLibName(target: std.Target, name: []const u8) bool { |
| 254 | const ignore_case = target.os.tag.isDarwin() or target.os.tag == .windows; | 280 | const ignore_case = target.os.tag.isDarwin() or target.os.tag == .windows; |
| 255 | 281 |
src/libs/glibc.zig+4-1| ... | @@ -463,7 +463,10 @@ fn add_include_dirs(comp: *Compilation, arena: Allocator, args: *std.ArrayList([ | ... | @@ -463,7 +463,10 @@ fn add_include_dirs(comp: *Compilation, arena: Allocator, args: *std.ArrayList([ |
| 463 | 463 | ||
| 464 | try args.append("-I"); | 464 | try args.append("-I"); |
| 465 | try args.append(try std.fmt.allocPrint(arena, "{s}" ++ s ++ "libc" ++ s ++ "include" ++ s ++ "{s}-{s}-{s}", .{ | 465 | try args.append(try std.fmt.allocPrint(arena, "{s}" ++ s ++ "libc" ++ s ++ "include" ++ s ++ "{s}-{s}-{s}", .{ |
| 466 | comp.dirs.zig_lib.path orelse ".", @tagName(target.cpu.arch), @tagName(target.os.tag), @tagName(target.abi), | 466 | comp.dirs.zig_lib.path orelse ".", |
| 467 | std.zig.target.glibcArchNameHeaders(target.cpu.arch), | ||
| 468 | @tagName(target.os.tag), | ||
| 469 | std.zig.target.glibcAbiNameHeaders(target.abi), | ||
| 467 | })); | 470 | })); |
| 468 | 471 | ||
| 469 | try args.append("-I"); | 472 | try args.append("-I"); |
src/libs/netbsd.zig+1-1| ... | @@ -100,7 +100,7 @@ pub fn buildCrtFile(comp: *Compilation, crt_file: CrtFile, prog_node: std.Progre | ... | @@ -100,7 +100,7 @@ pub fn buildCrtFile(comp: *Compilation, crt_file: CrtFile, prog_node: std.Progre |
| 100 | try includePath(comp, arena, try std.fmt.allocPrint(arena, "{s}-{s}-{s}", .{ | 100 | try includePath(comp, arena, try std.fmt.allocPrint(arena, "{s}-{s}-{s}", .{ |
| 101 | std.zig.target.netbsdArchNameHeaders(target.cpu.arch), | 101 | std.zig.target.netbsdArchNameHeaders(target.cpu.arch), |
| 102 | @tagName(target.os.tag), | 102 | @tagName(target.os.tag), |
| 103 | @tagName(target.abi), | 103 | std.zig.target.netbsdAbiNameHeaders(target.abi), |
| 104 | })), | 104 | })), |
| 105 | "-I", | 105 | "-I", |
| 106 | try includePath(comp, arena, "generic-netbsd"), | 106 | try includePath(comp, arena, "generic-netbsd"), |
tools/process_headers.zig+62-74| ... | @@ -21,41 +21,42 @@ const Blake3 = std.crypto.hash.Blake3; | ... | @@ -21,41 +21,42 @@ const Blake3 = std.crypto.hash.Blake3; |
| 21 | const LibCTarget = struct { | 21 | const LibCTarget = struct { |
| 22 | arch: Arch, | 22 | arch: Arch, |
| 23 | abi: Abi, | 23 | abi: Abi, |
| 24 | dest: ?[]const u8 = null, | ||
| 24 | }; | 25 | }; |
| 25 | 26 | ||
| 26 | const glibc_targets = [_]LibCTarget{ | 27 | const glibc_targets = [_]LibCTarget{ |
| 27 | .{ .arch = .arc, .abi = .gnu }, | 28 | .{ .arch = .arc, .abi = .gnu }, |
| 28 | .{ .arch = .arm, .abi = .gnueabi }, | 29 | .{ .arch = .arm, .abi = .gnueabi, .dest = "arm-linux-gnu" }, |
| 29 | .{ .arch = .arm, .abi = .gnueabihf }, | 30 | .{ .arch = .arm, .abi = .gnueabihf, .dest = "arm-linux-gnu" }, |
| 30 | .{ .arch = .armeb, .abi = .gnueabi }, | 31 | .{ .arch = .armeb, .abi = .gnueabi, .dest = "arm-linux-gnu" }, |
| 31 | .{ .arch = .armeb, .abi = .gnueabihf }, | 32 | .{ .arch = .armeb, .abi = .gnueabihf, .dest = "arm-linux-gnu" }, |
| 32 | .{ .arch = .aarch64, .abi = .gnu }, | 33 | .{ .arch = .aarch64, .abi = .gnu, .dest = "aarch64-linux-gnu" }, |
| 33 | .{ .arch = .aarch64_be, .abi = .gnu }, | 34 | .{ .arch = .aarch64_be, .abi = .gnu, .dest = "aarch64-linux-gnu" }, |
| 34 | .{ .arch = .csky, .abi = .gnueabi }, | 35 | .{ .arch = .csky, .abi = .gnueabi, .dest = "csky-linux-gnu" }, |
| 35 | .{ .arch = .csky, .abi = .gnueabihf }, | 36 | .{ .arch = .csky, .abi = .gnueabihf, .dest = "csky-linux-gnu" }, |
| 36 | .{ .arch = .loongarch64, .abi = .gnu }, | 37 | .{ .arch = .loongarch64, .abi = .gnu, .dest = "loongarch-linux-gnu" }, |
| 37 | .{ .arch = .loongarch64, .abi = .gnusf }, | 38 | .{ .arch = .loongarch64, .abi = .gnusf, .dest = "loongarch-linux-gnu" }, |
| 38 | .{ .arch = .m68k, .abi = .gnu }, | 39 | .{ .arch = .m68k, .abi = .gnu }, |
| 39 | .{ .arch = .mips, .abi = .gnueabi }, | 40 | .{ .arch = .mips, .abi = .gnueabi, .dest = "mips-linux-gnu" }, |
| 40 | .{ .arch = .mips, .abi = .gnueabihf }, | 41 | .{ .arch = .mips, .abi = .gnueabihf, .dest = "mips-linux-gnu" }, |
| 41 | .{ .arch = .mipsel, .abi = .gnueabi }, | 42 | .{ .arch = .mipsel, .abi = .gnueabi, .dest = "mips-linux-gnu" }, |
| 42 | .{ .arch = .mipsel, .abi = .gnueabihf }, | 43 | .{ .arch = .mipsel, .abi = .gnueabihf, .dest = "mips-linux-gnu" }, |
| 43 | .{ .arch = .mips64, .abi = .gnuabi64 }, | 44 | .{ .arch = .mips64, .abi = .gnuabi64, .dest = "mips-linux-gnu" }, |
| 44 | .{ .arch = .mips64, .abi = .gnuabin32 }, | 45 | .{ .arch = .mips64, .abi = .gnuabin32, .dest = "mips-linux-gnu" }, |
| 45 | .{ .arch = .mips64el, .abi = .gnuabi64 }, | 46 | .{ .arch = .mips64el, .abi = .gnuabi64, .dest = "mips-linux-gnu" }, |
| 46 | .{ .arch = .mips64el, .abi = .gnuabin32 }, | 47 | .{ .arch = .mips64el, .abi = .gnuabin32, .dest = "mips-linux-gnu" }, |
| 47 | .{ .arch = .powerpc, .abi = .gnueabi }, | 48 | .{ .arch = .powerpc, .abi = .gnueabi, .dest = "powerpc-linux-gnu" }, |
| 48 | .{ .arch = .powerpc, .abi = .gnueabihf }, | 49 | .{ .arch = .powerpc, .abi = .gnueabihf, .dest = "powerpc-linux-gnu" }, |
| 49 | .{ .arch = .powerpc64, .abi = .gnu }, | 50 | .{ .arch = .powerpc64, .abi = .gnu, .dest = "powerpc-linux-gnu" }, |
| 50 | .{ .arch = .powerpc64le, .abi = .gnu }, | 51 | .{ .arch = .powerpc64le, .abi = .gnu, .dest = "powerpc-linux-gnu" }, |
| 51 | .{ .arch = .riscv32, .abi = .gnu }, | 52 | .{ .arch = .riscv32, .abi = .gnu, .dest = "riscv-linux-gnu" }, |
| 52 | .{ .arch = .riscv64, .abi = .gnu }, | 53 | .{ .arch = .riscv64, .abi = .gnu, .dest = "riscv-linux-gnu" }, |
| 53 | .{ .arch = .s390x, .abi = .gnu }, | 54 | .{ .arch = .s390x, .abi = .gnu }, |
| 54 | .{ .arch = .sparc, .abi = .gnu }, | 55 | .{ .arch = .sparc, .abi = .gnu, .dest = "sparc-linux-gnu" }, |
| 55 | .{ .arch = .sparc64, .abi = .gnu }, | 56 | .{ .arch = .sparc64, .abi = .gnu, .dest = "sparc-linux-gnu" }, |
| 56 | .{ .arch = .x86, .abi = .gnu }, | 57 | .{ .arch = .x86, .abi = .gnu, .dest = "x86-linux-gnu" }, |
| 57 | .{ .arch = .x86_64, .abi = .gnu }, | 58 | .{ .arch = .x86_64, .abi = .gnu, .dest = "x86-linux-gnu" }, |
| 58 | .{ .arch = .x86_64, .abi = .gnux32 }, | 59 | .{ .arch = .x86_64, .abi = .gnux32, .dest = "x86-linux-gnu" }, |
| 59 | }; | 60 | }; |
| 60 | 61 | ||
| 61 | const musl_targets = [_]LibCTarget{ | 62 | const musl_targets = [_]LibCTarget{ |
| ... | @@ -88,43 +89,20 @@ const freebsd_targets = [_]LibCTarget{ | ... | @@ -88,43 +89,20 @@ const freebsd_targets = [_]LibCTarget{ |
| 88 | }; | 89 | }; |
| 89 | 90 | ||
| 90 | const netbsd_targets = [_]LibCTarget{ | 91 | const netbsd_targets = [_]LibCTarget{ |
| 91 | .{ .arch = .arm, .abi = .eabi }, | 92 | .{ .arch = .arm, .abi = .eabi, .dest = "arm-netbsd-eabi" }, |
| 92 | .{ .arch = .arm, .abi = .eabihf }, | 93 | .{ .arch = .arm, .abi = .eabihf, .dest = "arm-netbsd-eabi" }, |
| 93 | .{ .arch = .aarch64, .abi = .none }, | 94 | .{ .arch = .aarch64, .abi = .none }, |
| 94 | .{ .arch = .m68k, .abi = .none }, | 95 | .{ .arch = .m68k, .abi = .none }, |
| 95 | .{ .arch = .mips, .abi = .eabi }, | 96 | .{ .arch = .mips, .abi = .eabi, .dest = "mips-netbsd-eabi" }, |
| 96 | .{ .arch = .mips, .abi = .eabihf }, | 97 | .{ .arch = .mips, .abi = .eabihf, .dest = "mips-netbsd-eabi" }, |
| 97 | .{ .arch = .powerpc, .abi = .eabi }, | 98 | .{ .arch = .powerpc, .abi = .eabi, .dest = "powerpc-netbsd-eabi" }, |
| 98 | .{ .arch = .powerpc, .abi = .eabihf }, | 99 | .{ .arch = .powerpc, .abi = .eabihf, .dest = "powerpc-netbsd-eabi" }, |
| 99 | .{ .arch = .sparc, .abi = .none }, | 100 | .{ .arch = .sparc, .abi = .none }, |
| 100 | .{ .arch = .sparc64, .abi = .none }, | 101 | .{ .arch = .sparc64, .abi = .none }, |
| 101 | .{ .arch = .x86, .abi = .none }, | 102 | .{ .arch = .x86, .abi = .none }, |
| 102 | .{ .arch = .x86_64, .abi = .none }, | 103 | .{ .arch = .x86_64, .abi = .none }, |
| 103 | }; | 104 | }; |
| 104 | 105 | ||
| 105 | const DestTarget = struct { | ||
| 106 | arch: Arch, | ||
| 107 | os: OsTag, | ||
| 108 | abi: Abi, | ||
| 109 | |||
| 110 | const HashContext = struct { | ||
| 111 | pub fn hash(self: @This(), a: DestTarget) u32 { | ||
| 112 | _ = self; | ||
| 113 | return @intFromEnum(a.arch) +% | ||
| 114 | (@intFromEnum(a.os) *% @as(u32, 4202347608)) +% | ||
| 115 | (@intFromEnum(a.abi) *% @as(u32, 4082223418)); | ||
| 116 | } | ||
| 117 | |||
| 118 | pub fn eql(self: @This(), a: DestTarget, b: DestTarget, b_index: usize) bool { | ||
| 119 | _ = self; | ||
| 120 | _ = b_index; | ||
| 121 | return a.arch == b.arch and | ||
| 122 | a.os == b.os and | ||
| 123 | a.abi == b.abi; | ||
| 124 | } | ||
| 125 | }; | ||
| 126 | }; | ||
| 127 | |||
| 128 | const Contents = struct { | 106 | const Contents = struct { |
| 129 | bytes: []const u8, | 107 | bytes: []const u8, |
| 130 | hit_count: usize, | 108 | hit_count: usize, |
| ... | @@ -138,7 +116,7 @@ const Contents = struct { | ... | @@ -138,7 +116,7 @@ const Contents = struct { |
| 138 | }; | 116 | }; |
| 139 | 117 | ||
| 140 | const HashToContents = std.StringHashMap(Contents); | 118 | const HashToContents = std.StringHashMap(Contents); |
| 141 | const TargetToHash = std.ArrayHashMap(DestTarget, []const u8, DestTarget.HashContext, true); | 119 | const TargetToHash = std.StringArrayHashMap([]const u8); |
| 142 | const PathTable = std.StringHashMap(*TargetToHash); | 120 | const PathTable = std.StringHashMap(*TargetToHash); |
| 143 | 121 | ||
| 144 | const LibCVendor = enum { | 122 | const LibCVendor = enum { |
| ... | @@ -236,15 +214,16 @@ pub fn main() !void { | ... | @@ -236,15 +214,16 @@ pub fn main() !void { |
| 236 | else => unreachable, | 214 | else => unreachable, |
| 237 | }, | 215 | }, |
| 238 | }; | 216 | }; |
| 239 | const dest_target = DestTarget{ | 217 | |
| 240 | .arch = libc_target.arch, | 218 | const dest_target = if (libc_target.dest) |dest| dest else try std.fmt.allocPrint(allocator, "{s}-{s}-{s}", .{ |
| 241 | .os = switch (vendor) { | 219 | @tagName(libc_target.arch), |
| 242 | .musl, .glibc => .linux, | 220 | switch (vendor) { |
| 243 | .freebsd => .freebsd, | 221 | .musl, .glibc => "linux", |
| 244 | .netbsd => .netbsd, | 222 | .freebsd => "freebsd", |
| 223 | .netbsd => "netbsd", | ||
| 245 | }, | 224 | }, |
| 246 | .abi = libc_target.abi, | 225 | @tagName(libc_target.abi), |
| 247 | }; | 226 | }); |
| 248 | 227 | ||
| 249 | search: for (search_paths.items) |search_path| { | 228 | search: for (search_paths.items) |search_path| { |
| 250 | const sub_path = switch (vendor) { | 229 | const sub_path = switch (vendor) { |
| ... | @@ -307,7 +286,21 @@ pub fn main() !void { | ... | @@ -307,7 +286,21 @@ pub fn main() !void { |
| 307 | path_gop.value_ptr.* = ptr; | 286 | path_gop.value_ptr.* = ptr; |
| 308 | break :blk ptr; | 287 | break :blk ptr; |
| 309 | }; | 288 | }; |
| 310 | try target_to_hash.putNoClobber(dest_target, hash); | 289 | // When `dest` is set, there are a few rare cases where we expect to overwrite a header. For |
| 290 | // example, `bits/long-double.h` differs very slightly between `powerpc64le-linux-gnu` and | ||
| 291 | // other `powerpc*-linux-gnu` targets, and we unify those targets as `powerpc-linux-gnu`. In | ||
| 292 | // such cases, we manually patch the affected header after processing, so it's fine that | ||
| 293 | // only one header wins here. | ||
| 294 | if (libc_target.dest != null) { | ||
| 295 | const hash_gop = try target_to_hash.getOrPut(dest_target); | ||
| 296 | if (hash_gop.found_existing) std.debug.print("overwrote: {s} {s} {s}\n", .{ | ||
| 297 | libc_dir, | ||
| 298 | rel_path, | ||
| 299 | dest_target, | ||
| 300 | }) else hash_gop.value_ptr.* = hash; | ||
| 301 | } else { | ||
| 302 | try target_to_hash.putNoClobber(dest_target, hash); | ||
| 303 | } | ||
| 311 | }, | 304 | }, |
| 312 | else => std.debug.print("warning: weird file: {s}\n", .{full_path}), | 305 | else => std.debug.print("warning: weird file: {s}\n", .{full_path}), |
| 313 | } | 306 | } |
| ... | @@ -363,12 +356,7 @@ pub fn main() !void { | ... | @@ -363,12 +356,7 @@ pub fn main() !void { |
| 363 | if (contents.is_generic) continue; | 356 | if (contents.is_generic) continue; |
| 364 | 357 | ||
| 365 | const dest_target = hash_kv.key_ptr.*; | 358 | const dest_target = hash_kv.key_ptr.*; |
| 366 | const out_subpath = try std.fmt.allocPrint(allocator, "{s}-{s}-{s}", .{ | 359 | const full_path = try std.fs.path.join(allocator, &[_][]const u8{ out_dir, dest_target, path_kv.key_ptr.* }); |
| 367 | @tagName(dest_target.arch), | ||
| 368 | @tagName(dest_target.os), | ||
| 369 | @tagName(dest_target.abi), | ||
| 370 | }); | ||
| 371 | const full_path = try std.fs.path.join(allocator, &[_][]const u8{ out_dir, out_subpath, path_kv.key_ptr.* }); | ||
| 372 | try std.fs.cwd().makePath(std.fs.path.dirname(full_path).?); | 360 | try std.fs.cwd().makePath(std.fs.path.dirname(full_path).?); |
| 373 | try std.fs.cwd().writeFile(.{ .sub_path = full_path, .data = contents.bytes }); | 361 | try std.fs.cwd().writeFile(.{ .sub_path = full_path, .data = contents.bytes }); |
| 374 | } | 362 | } |