authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2024-06-06 12:23:59-04:00
committergravatar for noreply@github.comGitHub <noreply@github.com> 2024-06-06 12:23:59-04:00
log4d499359d58886ba321ef0cd524ee7f7aac0d6ae
tree201a98c14fcacf076de5054995873add2499ffc8
parent3964b2a315ae999288b861cdbf3eb04eb625b477
parent1118ea2e341503eb1e45add3b0e833751e34d94e
signaturebadge-check Signed by PGP key B5690EEEBB952194

Merge pull request #20207 from ziglang/glibc-2.39

add support for targeting glibc 2.39

1543 files changed, 7129 insertions(+), 2968 deletions(-)

lib/libc/glibc/LICENSES+21
......@@ -389,3 +389,24 @@ Copyright 2001 by Stephen L. Moshier <moshier@na-net.ornl.gov>
389389 You should have received a copy of the GNU Lesser General Public
390390 License along with this library; if not, see
391391 <https://www.gnu.org/licenses/>. */
392
393Copyright (c) 1995 IBM Corporation
394
395Permission is hereby granted, free of charge, to any person obtaining
396a copy of this software and associated documentation files (the
397'Software'), to deal in the Software without restriction, including
398without limitation the rights to use, copy, modify, merge, publish,
399distribute, sublicense, and/or sell copies of the Software, and to
400permit persons to whom the Software is furnished to do so, subject to
401the following conditions:
402
403The above copyright notice and this permission notice shall be
404included in all copies or substantial portions of the Software.
405
406THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
407EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
408MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
409IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
410CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
411TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
412SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
lib/libc/glibc/abilists
Binary files a/lib/libc/glibc/abilists and b/lib/libc/glibc/abilists differ
lib/libc/glibc/bits/byteswap.h+1-1
......@@ -1,5 +1,5 @@
11/* Macros and inline functions to swap the order of bytes in integer values.
2 Copyright (C) 1997-2023 Free Software Foundation, Inc.
2 Copyright (C) 1997-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/bits/floatn-common.h+1-1
......@@ -1,6 +1,6 @@
11/* Macros to control TS 18661-3 glibc features where the same
22 definitions are appropriate for all platforms.
3 Copyright (C) 2017-2023 Free Software Foundation, Inc.
3 Copyright (C) 2017-2024 Free Software Foundation, Inc.
44 This file is part of the GNU C Library.
55
66 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/bits/libc-header-start.h+1-1
......@@ -1,5 +1,5 @@
11/* Handle feature test macros at the start of a header.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/bits/long-double.h+1-1
......@@ -1,5 +1,5 @@
11/* Properties of long double type.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/bits/select.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/bits/signum-generic.h+1-1
......@@ -1,5 +1,5 @@
11/* Signal number constants. Generic template.
2 Copyright (C) 1991-2023 Free Software Foundation, Inc.
2 Copyright (C) 1991-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/bits/stat.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1992-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1992-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/bits/stdint-intn.h+1-1
......@@ -1,5 +1,5 @@
11/* Define intN_t types.
2 Copyright (C) 2017-2023 Free Software Foundation, Inc.
2 Copyright (C) 2017-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/bits/stdlib-bsearch.h+1-1
......@@ -1,5 +1,5 @@
11/* Perform binary search - inline version.
2 Copyright (C) 1991-2023 Free Software Foundation, Inc.
2 Copyright (C) 1991-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/bits/time64.h+1-1
......@@ -1,5 +1,5 @@
11/* bits/time64.h -- underlying types for __time64_t. Generic version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/bits/timesize.h+1-1
......@@ -1,5 +1,5 @@
11/* Bit size of the time_t type at glibc build time, general case.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/bits/types/struct_sched_param.h+1-1
......@@ -1,5 +1,5 @@
11/* Sched parameter structure. Generic version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/bits/typesizes.h+1-1
......@@ -1,5 +1,5 @@
11/* bits/typesizes.h -- underlying types for *_t. Generic version.
2 Copyright (C) 2002-2023 Free Software Foundation, Inc.
2 Copyright (C) 2002-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/bits/uintn-identity.h+1-1
......@@ -1,5 +1,5 @@
11/* Inline functions to return unsigned integer values unchanged.
2 Copyright (C) 2017-2023 Free Software Foundation, Inc.
2 Copyright (C) 2017-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/bits/waitflags.h+1-1
......@@ -1,5 +1,5 @@
11/* Definitions of flag bits for `waitpid' et al.
2 Copyright (C) 1992-2023 Free Software Foundation, Inc.
2 Copyright (C) 1992-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/bits/waitstatus.h+1-1
......@@ -1,5 +1,5 @@
11/* Definitions of status bits for `wait' et al.
2 Copyright (C) 1992-2023 Free Software Foundation, Inc.
2 Copyright (C) 1992-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/csu/errno.c+1-1
......@@ -1,5 +1,5 @@
11/* Definition of `errno' variable. Canonical version.
2 Copyright (C) 2002-2023 Free Software Foundation, Inc.
2 Copyright (C) 2002-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/debug/stack_chk_fail_local.c+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2005-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2005-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/elf/elf.h+129-3
......@@ -1,5 +1,5 @@
11/* This file defines standard ELF types, structures, and macros.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
......@@ -791,9 +791,12 @@ typedef struct
791791 Register */
792792#define NT_PPC_PKEY 0x110 /* Memory Protection Keys
793793 registers. */
794#define NT_PPC_DEXCR 0x111 /* PowerPC DEXCR registers. */
795#define NT_PPC_HASHKEYR 0x112 /* PowerPC HASHKEYR register. */
794796#define NT_386_TLS 0x200 /* i386 TLS slots (struct user_desc) */
795797#define NT_386_IOPERM 0x201 /* x86 io permission bitmap (1=deny) */
796798#define NT_X86_XSTATE 0x202 /* x86 extended state using xsave */
799#define NT_X86_SHSTK 0x204 /* x86 SHSTK state */
797800#define NT_S390_HIGH_GPRS 0x300 /* s390 upper register halves */
798801#define NT_S390_TIMER 0x301 /* s390 timer register */
799802#define NT_S390_TODCMP 0x302 /* s390 TOD clock comparator register */
......@@ -832,6 +835,8 @@ typedef struct
832835#define NT_MIPS_DSP 0x800 /* MIPS DSP ASE registers. */
833836#define NT_MIPS_FP_MODE 0x801 /* MIPS floating-point mode. */
834837#define NT_MIPS_MSA 0x802 /* MIPS SIMD registers. */
838#define NT_RISCV_CSR 0x900 /* RISC-V Control and Status Registers */
839#define NT_RISCV_VECTOR 0x901 /* RISC-V vector registers */
835840#define NT_LOONGARCH_CPUCFG 0xa00 /* LoongArch CPU config registers. */
836841#define NT_LOONGARCH_CSR 0xa01 /* LoongArch control and
837842 status registers. */
......@@ -841,6 +846,8 @@ typedef struct
841846 SIMD Extension registers. */
842847#define NT_LOONGARCH_LBT 0xa04 /* LoongArch Loongson Binary
843848 Translation registers. */
849#define NT_LOONGARCH_HW_BREAK 0xa05 /* LoongArch hardware breakpoint registers */
850#define NT_LOONGARCH_HW_WATCH 0xa06 /* LoongArch hardware watchpoint registers */
844851
845852/* Legal values for the note segment descriptor types for object files. */
846853
......@@ -1685,11 +1692,25 @@ typedef struct
16851692#define EF_MIPS_PIC 2 /* Contains PIC code. */
16861693#define EF_MIPS_CPIC 4 /* Uses PIC calling sequence. */
16871694#define EF_MIPS_XGOT 8
1688#define EF_MIPS_64BIT_WHIRL 16
1695#define EF_MIPS_UCODE 16
16891696#define EF_MIPS_ABI2 32
16901697#define EF_MIPS_ABI_ON32 64
1698#define EF_MIPS_OPTIONS_FIRST 0x00000080 /* Process the .MIPS.options
1699 section first by ld. */
1700#define EF_MIPS_32BITMODE 0x00000100 /* Indicates code compiled for
1701 a 64-bit machine in 32-bit
1702 mode (regs are 32-bits
1703 wide). */
16911704#define EF_MIPS_FP64 512 /* Uses FP64 (12 callee-saved). */
16921705#define EF_MIPS_NAN2008 1024 /* Uses IEEE 754-2008 NaN encoding. */
1706#define EF_MIPS_ARCH_ASE 0x0f000000 /* Architectural Extensions
1707 used by this file. */
1708#define EF_MIPS_ARCH_ASE_MDMX 0x08000000 /* Use MDMX multimedia
1709 extensions. */
1710#define EF_MIPS_ARCH_ASE_M16 0x04000000 /* Use MIPS-16 ISA
1711 extensions. */
1712#define EF_MIPS_ARCH_ASE_MICROMIPS 0x02000000 /* Use MICROMIPS ISA
1713 extensions. */
16931714#define EF_MIPS_ARCH 0xf0000000 /* MIPS architecture level. */
16941715
16951716/* Legal values for MIPS architecture level. */
......@@ -1703,6 +1724,38 @@ typedef struct
17031724#define EF_MIPS_ARCH_64 0x60000000 /* MIPS64 code. */
17041725#define EF_MIPS_ARCH_32R2 0x70000000 /* MIPS32r2 code. */
17051726#define EF_MIPS_ARCH_64R2 0x80000000 /* MIPS64r2 code. */
1727#define EF_MIPS_ARCH_32R6 0x90000000 /* MIPS32r6 code. */
1728#define EF_MIPS_ARCH_64R6 0xa0000000 /* MIPS64r6 code. */
1729#define EF_MIPS_ABI 0x0000F000 /* The ABI of the file. Also
1730 see EF_MIPS_ABI2 above. */
1731#define EF_MIPS_ABI_O32 0x00001000 /* The original o32 abi. */
1732#define EF_MIPS_ABI_O64 0x00002000 /* O32 extended to work on
1733 64 bit architectures. */
1734#define EF_MIPS_ABI_EABI32 0x00003000 /* EABI in 32 bit mode. */
1735#define EF_MIPS_ABI_EABI64 0x00004000 /* EABI in 64 bit mode. */
1736#define EF_MIPS_MACH 0x00FF0000
1737#define EF_MIPS_MACH_3900 0x00810000
1738#define EF_MIPS_MACH_4010 0x00820000
1739#define EF_MIPS_MACH_4100 0x00830000
1740#define EF_MIPS_MACH_ALLEGREX 0x00840000
1741#define EF_MIPS_MACH_4650 0x00850000
1742#define EF_MIPS_MACH_4120 0x00870000
1743#define EF_MIPS_MACH_4111 0x00880000
1744#define EF_MIPS_MACH_SB1 0x008a0000
1745#define EF_MIPS_MACH_OCTEON 0x008b0000
1746#define EF_MIPS_MACH_XLR 0x008c0000
1747#define EF_MIPS_MACH_OCTEON2 0x008d0000
1748#define EF_MIPS_MACH_OCTEON3 0x008e0000
1749#define EF_MIPS_MACH_5400 0x00910000
1750#define EF_MIPS_MACH_5900 0x00920000
1751#define EF_MIPS_MACH_IAMR2 0x00930000
1752#define EF_MIPS_MACH_5500 0x00980000
1753#define EF_MIPS_MACH_9000 0x00990000
1754#define EF_MIPS_MACH_LS2E 0x00A00000
1755#define EF_MIPS_MACH_LS2F 0x00A10000
1756#define EF_MIPS_MACH_GS464 0x00A20000
1757#define EF_MIPS_MACH_GS464E 0x00A30000
1758#define EF_MIPS_MACH_GS264E 0x00A40000
17061759
17071760/* The following are unofficial names and should not be used. */
17081761
......@@ -1763,6 +1816,7 @@ typedef struct
17631816#define SHT_MIPS_EH_REGION 0x70000027
17641817#define SHT_MIPS_XLATE_OLD 0x70000028
17651818#define SHT_MIPS_PDR_EXCEPTION 0x70000029
1819#define SHT_MIPS_ABIFLAGS 0x7000002a
17661820#define SHT_MIPS_XHASH 0x7000002b
17671821
17681822/* Legal values for sh_flags field of Elf32_Shdr. */
......@@ -1931,10 +1985,68 @@ typedef struct
19311985#define R_MIPS_TLS_TPREL_HI16 49 /* TP-relative offset, high 16 bits */
19321986#define R_MIPS_TLS_TPREL_LO16 50 /* TP-relative offset, low 16 bits */
19331987#define R_MIPS_GLOB_DAT 51
1988#define R_MIPS_PC21_S2 60
1989#define R_MIPS_PC26_S2 61
1990#define R_MIPS_PC18_S3 62
1991#define R_MIPS_PC19_S2 63
1992#define R_MIPS_PCHI16 64
1993#define R_MIPS_PCLO16 65
1994#define R_MIPS16_26 100
1995#define R_MIPS16_GPREL 101
1996#define R_MIPS16_GOT16 102
1997#define R_MIPS16_CALL16 103
1998#define R_MIPS16_HI16 104
1999#define R_MIPS16_LO16 105
2000#define R_MIPS16_TLS_GD 106
2001#define R_MIPS16_TLS_LDM 107
2002#define R_MIPS16_TLS_DTPREL_HI16 108
2003#define R_MIPS16_TLS_DTPREL_LO16 109
2004#define R_MIPS16_TLS_GOTTPREL 110
2005#define R_MIPS16_TLS_TPREL_HI16 111
2006#define R_MIPS16_TLS_TPREL_LO16 112
2007#define R_MIPS16_PC16_S1 113
19342008#define R_MIPS_COPY 126
19352009#define R_MIPS_JUMP_SLOT 127
2010#define R_MIPS_RELATIVE 128
2011#define R_MICROMIPS_26_S1 133
2012#define R_MICROMIPS_HI16 134
2013#define R_MICROMIPS_LO16 135
2014#define R_MICROMIPS_GPREL16 136
2015#define R_MICROMIPS_LITERAL 137
2016#define R_MICROMIPS_GOT16 138
2017#define R_MICROMIPS_PC7_S1 139
2018#define R_MICROMIPS_PC10_S1 140
2019#define R_MICROMIPS_PC16_S1 141
2020#define R_MICROMIPS_CALL16 142
2021#define R_MICROMIPS_GOT_DISP 145
2022#define R_MICROMIPS_GOT_PAGE 146
2023#define R_MICROMIPS_GOT_OFST 147
2024#define R_MICROMIPS_GOT_HI16 148
2025#define R_MICROMIPS_GOT_LO16 149
2026#define R_MICROMIPS_SUB 150
2027#define R_MICROMIPS_HIGHER 151
2028#define R_MICROMIPS_HIGHEST 152
2029#define R_MICROMIPS_CALL_HI16 153
2030#define R_MICROMIPS_CALL_LO16 154
2031#define R_MICROMIPS_SCN_DISP 155
2032#define R_MICROMIPS_JALR 156
2033#define R_MICROMIPS_HI0_LO16 157
2034#define R_MICROMIPS_TLS_GD 162
2035#define R_MICROMIPS_TLS_LDM 163
2036#define R_MICROMIPS_TLS_DTPREL_HI16 164
2037#define R_MICROMIPS_TLS_DTPREL_LO16 165
2038#define R_MICROMIPS_TLS_GOTTPREL 166
2039#define R_MICROMIPS_TLS_TPREL_HI16 169
2040#define R_MICROMIPS_TLS_TPREL_LO16 170
2041#define R_MICROMIPS_GPREL7_S2 172
2042#define R_MICROMIPS_PC23_S2 173
2043#define R_MIPS_PC32 248
2044#define R_MIPS_EH 249
2045#define R_MIPS_GNU_REL16_S2 250
2046#define R_MIPS_GNU_VTINHERIT 253
2047#define R_MIPS_GNU_VTENTRY 254
19362048/* Keep this the last entry. */
1937#define R_MIPS_NUM 128
2049#define R_MIPS_NUM 255
19382050
19392051/* Legal values for p_type field of Elf32_Phdr. */
19402052
......@@ -3527,6 +3639,11 @@ enum
35273639/* x86-64 sh_type values. */
35283640#define SHT_X86_64_UNWIND 0x70000001 /* Unwind information. */
35293641
3642/* x86-64 d_tag values. */
3643#define DT_X86_64_PLT (DT_LOPROC + 0)
3644#define DT_X86_64_PLTSZ (DT_LOPROC + 1)
3645#define DT_X86_64_PLTENT (DT_LOPROC + 3)
3646#define DT_X86_64_NUM 4
35303647
35313648/* AM33 relocations. */
35323649#define R_MN10300_NONE 0 /* No reloc. */
......@@ -4205,6 +4322,15 @@ enum
42054322#define R_LARCH_TLS_GD_HI20 98
42064323#define R_LARCH_32_PCREL 99
42074324#define R_LARCH_RELAX 100
4325#define R_LARCH_DELETE 101
4326#define R_LARCH_ALIGN 102
4327#define R_LARCH_PCREL20_S2 103
4328#define R_LARCH_CFA 104
4329#define R_LARCH_ADD6 105
4330#define R_LARCH_SUB6 106
4331#define R_LARCH_ADD_ULEB128 107
4332#define R_LARCH_SUB_ULEB128 108
4333#define R_LARCH_64_PCREL 109
42084334
42094335/* ARC specific declarations. */
42104336
lib/libc/glibc/include/libc-pointer-arith.h+1-1
......@@ -1,5 +1,5 @@
11/* Helper macros for pointer arithmetic.
2 Copyright (C) 2012-2023 Free Software Foundation, Inc.
2 Copyright (C) 2012-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/include/libc-symbols.h+3-1
......@@ -1,6 +1,6 @@
11/* Support macros for making weak and strong aliases for symbols,
22 and for using symbol sets and linker warnings with GNU ld.
3 Copyright (C) 1995-2023 Free Software Foundation, Inc.
3 Copyright (C) 1995-2024 Free Software Foundation, Inc.
44 This file is part of the GNU C Library.
55
66 The GNU C Library is free software; you can redistribute it and/or
......@@ -612,8 +612,10 @@ for linking")
612612#endif
613613
614614#if IS_IN (libmvec)
615# define libmvec_hidden_proto(name, attrs...) hidden_proto (name, ##attrs)
615616# define libmvec_hidden_def(name) hidden_def (name)
616617#else
618# define libmvec_hidden_proto(name, attrs...)
617619# define libmvec_hidden_def(name)
618620#endif
619621
lib/libc/glibc/include/stap-probe.h+1-1
......@@ -1,5 +1,5 @@
11/* Macros for defining Systemtap <sys/sdt.h> static probe points.
2 Copyright (C) 2012-2023 Free Software Foundation, Inc.
2 Copyright (C) 2012-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/include/stdlib.h+3-7
......@@ -59,6 +59,8 @@ libc_hidden_proto (__isoc23_strtoull_l)
5959 libc_hidden_proto. */
6060# undef strtol
6161# define strtol __isoc23_strtol
62# undef atoi
63# define atoi(nptr) __isoc23_strtol(nptr, NULL, 10)
6264# undef strtoul
6365# define strtoul __isoc23_strtoul
6466# undef strtoll
......@@ -147,8 +149,6 @@ extern int __posix_openpt (int __oflag) attribute_hidden;
147149extern int __add_to_environ (const char *name, const char *value,
148150 const char *combines, int replace)
149151 attribute_hidden;
150extern void _quicksort (void *const pbase, size_t total_elems,
151 size_t size, __compar_d_fn_t cmp, void *arg);
152152
153153extern int __on_exit (void (*__func) (int __status, void *__arg), void *__arg);
154154
......@@ -157,11 +157,7 @@ libc_hidden_proto (__cxa_atexit);
157157
158158extern int __cxa_thread_atexit_impl (void (*func) (void *), void *arg,
159159 void *d);
160extern void __call_tls_dtors (void)
161#ifndef SHARED
162 __attribute__ ((weak))
163#endif
164 ;
160extern void __call_tls_dtors (void);
165161libc_hidden_proto (__call_tls_dtors)
166162
167163extern void __cxa_finalize (void *d);
lib/libc/glibc/io/bits/statx.h+1-1
......@@ -1,5 +1,5 @@
11/* statx-related definitions and declarations. Generic version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/io/fcntl.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/io/mknod.c+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1995-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1995-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/io/sys/stat.h+2-2
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
......@@ -251,7 +251,7 @@ extern int __REDIRECT_NTH (fstat64, (int __fd, struct stat64 *__buf),
251251 __nonnull ((2));
252252# else
253253# define stat64 __stat64_time64
254# define fstat64 __fstat64_time
254# define fstat64 __fstat64_time64
255255# endif
256256# endif
257257#endif
lib/libc/glibc/locale/bits/types/__locale_t.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition of struct __locale_struct and __locale_t.
2 Copyright (C) 1997-2023 Free Software Foundation, Inc.
2 Copyright (C) 1997-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/locale/bits/types/locale_t.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition of locale_t.
2 Copyright (C) 2017-2023 Free Software Foundation, Inc.
2 Copyright (C) 2017-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/misc/sys/cdefs.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1992-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1992-2024 Free Software Foundation, Inc.
22 Copyright The GNU Toolchain Authors.
33 This file is part of the GNU C Library.
44
lib/libc/glibc/misc/sys/select.h+1-1
......@@ -1,5 +1,5 @@
11/* `fd_set' type and related macros, and `select'/`pselect' declarations.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/posix/bits/cpu-set.h+1-1
......@@ -1,6 +1,6 @@
11/* Definition of the cpu_set_t structure used by the POSIX 1003.1b-1993
22 scheduling interface.
3 Copyright (C) 1996-2023 Free Software Foundation, Inc.
3 Copyright (C) 1996-2024 Free Software Foundation, Inc.
44 This file is part of the GNU C Library.
55
66 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/posix/bits/types.h+1-1
......@@ -1,5 +1,5 @@
11/* bits/types.h -- definitions of __*_t types underlying *_t types.
2 Copyright (C) 2002-2023 Free Software Foundation, Inc.
2 Copyright (C) 2002-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/posix/sys/types.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/signal/signal.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/stdlib/alloca.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1992-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1992-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/stdlib/bits/stdlib-float.h+1-1
......@@ -1,5 +1,5 @@
11/* Floating-point inline functions for stdlib.h.
2 Copyright (C) 2012-2023 Free Software Foundation, Inc.
2 Copyright (C) 2012-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/stdlib/errno.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/stdlib/exit.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/stdlib/stdlib.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 Copyright The GNU Toolchain Authors.
33 This file is part of the GNU C Library.
44
lib/libc/glibc/string/bits/endian.h+1-1
......@@ -1,5 +1,5 @@
11/* Endian macros for string.h functions
2 Copyright (C) 1992-2023 Free Software Foundation, Inc.
2 Copyright (C) 1992-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/string/endian.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1992-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1992-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/aarch64/crti.S+1-1
......@@ -1,5 +1,5 @@
11/* Special .init and .fini section support for AArch64.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
lib/libc/glibc/sysdeps/aarch64/crtn.S+1-1
......@@ -1,5 +1,5 @@
11/* Special .init and .fini section support for AArch64.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
lib/libc/glibc/sysdeps/aarch64/nptl/bits/pthreadtypes-arch.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2002-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2002-2024 Free Software Foundation, Inc.
22
33 This file is part of the GNU C Library.
44
lib/libc/glibc/sysdeps/aarch64/start.S+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1995-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1995-2024 Free Software Foundation, Inc.
22
33 This file is part of the GNU C Library.
44
lib/libc/glibc/sysdeps/aarch64/sysdep.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22
33 This file is part of the GNU C Library.
44
lib/libc/glibc/sysdeps/alpha/crti.S+1-1
......@@ -1,5 +1,5 @@
11/* Special .init and .fini section support for Alpha.
2 Copyright (C) 2001-2023 Free Software Foundation, Inc.
2 Copyright (C) 2001-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/alpha/crtn.S+1-1
......@@ -1,5 +1,5 @@
11/* Special .init and .fini section support for Alpha.
2 Copyright (C) 2001-2023 Free Software Foundation, Inc.
2 Copyright (C) 2001-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/alpha/start.S+1-1
......@@ -1,5 +1,5 @@
11/* Startup code for Alpha/ELF.
2 Copyright (C) 1993-2023 Free Software Foundation, Inc.
2 Copyright (C) 1993-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/arc/sysdep.h+1-1
......@@ -1,5 +1,5 @@
11/* Assembler macros for ARC.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/arm/arm-features.h+1-1
......@@ -1,5 +1,5 @@
11/* Macros to test for CPU features on ARM. Generic ARM version.
2 Copyright (C) 2012-2023 Free Software Foundation, Inc.
2 Copyright (C) 2012-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/arm/crti.S+1-1
......@@ -1,5 +1,5 @@
11/* Special .init and .fini section support for ARM.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/arm/crtn.S+1-1
......@@ -1,5 +1,5 @@
11/* Special .init and .fini section support for ARM.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/arm/start.S+1-1
......@@ -1,5 +1,5 @@
11/* Startup code for ARM & ELF
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/arm/sysdep.h+1-1
......@@ -1,5 +1,5 @@
11/* Assembler macros for ARM.
2 Copyright (C) 1997-2023 Free Software Foundation, Inc.
2 Copyright (C) 1997-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/csky/sysdep.h+1-1
......@@ -1,5 +1,5 @@
11/* Assembler macros for C-SKY.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/generic/dl-dtprocnum.h+1-1
......@@ -1,5 +1,5 @@
11/* Configuration of lookup functions.
2 Copyright (C) 2000-2023 Free Software Foundation, Inc.
2 Copyright (C) 2000-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/generic/dl-sysdep.h+1-1
......@@ -1,5 +1,5 @@
11/* System-specific settings for dynamic linker code. Generic version.
2 Copyright (C) 2002-2023 Free Software Foundation, Inc.
2 Copyright (C) 2002-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/generic/dwarf2.h+1-1
......@@ -1,6 +1,6 @@
11/* Declarations and definitions of codes relating to the DWARF2 symbolic
22 debugging information format.
3 Copyright (C) 1992-2023 Free Software Foundation, Inc.
3 Copyright (C) 1992-2024 Free Software Foundation, Inc.
44
55 This file is part of the GNU C Library.
66
lib/libc/glibc/sysdeps/generic/libc-lock.h+1-1
......@@ -1,5 +1,5 @@
11/* libc-internal interface for mutex locks. Stub version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/generic/libc-symver.h+1-1
......@@ -1,5 +1,5 @@
11/* Symbol version management.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/generic/single-thread.h+1-1
......@@ -1,5 +1,5 @@
11/* Single thread optimization, generic version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/generic/sysdep.h+1-1
......@@ -1,5 +1,5 @@
11/* Generic asm macros used on many machines.
2 Copyright (C) 1991-2023 Free Software Foundation, Inc.
2 Copyright (C) 1991-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/generic/tls.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition for thread-local data handling. Generic version.
2 Copyright (C) 2002-2023 Free Software Foundation, Inc.
2 Copyright (C) 2002-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/hppa/crti.S+1-1
......@@ -1,5 +1,5 @@
11/* Special .init and .fini section support for HPPA
2 Copyright (C) 2000-2023 Free Software Foundation, Inc.
2 Copyright (C) 2000-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/hppa/crtn.S+1-1
......@@ -1,5 +1,5 @@
11/* Special .init and .fini section support for HPPA
2 Copyright (C) 2000-2023 Free Software Foundation, Inc.
2 Copyright (C) 2000-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/hppa/nptl/bits/pthreadtypes-arch.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2005-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2005-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/hppa/start.S+1-1
......@@ -1,5 +1,5 @@
11/* ELF startup code for HPPA.
2 Copyright (C) 2002-2023 Free Software Foundation, Inc.
2 Copyright (C) 2002-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/hppa/sysdep.h+1-1
......@@ -1,5 +1,5 @@
11/* Assembler macros for HP/PA.
2 Copyright (C) 1999-2023 Free Software Foundation, Inc.
2 Copyright (C) 1999-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/htl/bits/pthread.h+1-1
......@@ -1,5 +1,5 @@
11/* Pthread data structures. Generic version.
2 Copyright (C) 2002-2023 Free Software Foundation, Inc.
2 Copyright (C) 2002-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/htl/bits/thread-shared-types.h+1-1
......@@ -1,5 +1,5 @@
11/* Common threading primitives definitions for both POSIX and C11.
2 Copyright (C) 2017-2023 Free Software Foundation, Inc.
2 Copyright (C) 2017-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/htl/libc-lockP.h+1-1
......@@ -1,5 +1,5 @@
11/* Private libc-internal interface for mutex locks.
2 Copyright (C) 2015-2023 Free Software Foundation, Inc.
2 Copyright (C) 2015-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/htl/pthread.h+1-1
......@@ -1,5 +1,5 @@
11/* Posix threads. Hurd version.
2 Copyright (C) 2000-2023 Free Software Foundation, Inc.
2 Copyright (C) 2000-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/i386/crti.S+1-3
......@@ -1,5 +1,5 @@
11/* Special .init and .fini section support for x86.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
......@@ -61,7 +61,6 @@
6161 .hidden _init
6262 .type _init, @function
6363_init:
64 _CET_ENDBR
6564 pushl %ebx
6665 /* Maintain 16-byte stack alignment for called functions. */
6766 subl $8, %esp
......@@ -82,7 +81,6 @@ _init:
8281 .hidden _fini
8382 .type _fini, @function
8483_fini:
85 _CET_ENDBR
8684 pushl %ebx
8785 subl $8, %esp
8886 LOAD_PIC_REG (bx)
lib/libc/glibc/sysdeps/i386/crtn.S+1-1
......@@ -1,5 +1,5 @@
11/* Special .init and .fini section support for x86.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/i386/htl/bits/pthreadtypes-arch.h+1-1
......@@ -1,5 +1,5 @@
11/* Machine-specific pthread type layouts. Hurd i386 version.
2 Copyright (C) 2002-2023 Free Software Foundation, Inc.
2 Copyright (C) 2002-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/i386/start.S+1-2
......@@ -1,5 +1,5 @@
11/* Startup code compliant to the ELF i386 ABI.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
......@@ -132,7 +132,6 @@ ENTRY (_start)
132132
133133#if defined PIC && !defined SHARED
134134__wrap_main:
135 _CET_ENDBR
136135 jmp main@PLT
137136#endif
138137END (_start)
lib/libc/glibc/sysdeps/i386/symbol-hacks.h+1-1
......@@ -1,5 +1,5 @@
11/* Hacks needed for symbol manipulation. i386 version.
2 Copyright (C) 2017-2023 Free Software Foundation, Inc.
2 Copyright (C) 2017-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/i386/sysdep.h+12-1
......@@ -1,5 +1,5 @@
11/* Assembler macros for i386.
2 Copyright (C) 1991-2023 Free Software Foundation, Inc.
2 Copyright (C) 1991-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
......@@ -18,6 +18,8 @@
1818
1919#include <sysdeps/x86/sysdep.h>
2020
21#define CET_ENABLED 0
22
2123/* It is desirable that the names of PIC thunks match those used by
2224 GCC so that multiple copies are eliminated by the linker. Because
2325 GCC 4.6 and earlier use __i686 in the names, it is necessary to
......@@ -37,6 +39,15 @@
3739
3840/* Syntactic details of assembler. */
3941
42/* Define an entry point visible from C. */
43#define ENTRY_P2ALIGN(name, alignment) \
44 .globl C_SYMBOL_NAME(name); \
45 .type C_SYMBOL_NAME(name),@function; \
46 .align ALIGNARG(alignment); \
47 C_LABEL(name) \
48 cfi_startproc; \
49 CALL_MCOUNT
50
4051/* If compiled for profiling, call `mcount' at the start of each function. */
4152#ifdef PROF
4253/* The mcount code relies on a normal frame pointer being on the stack
lib/libc/glibc/sysdeps/ia64/crti.S deleted-162
......@@ -1,162 +0,0 @@
1/* Special .init and .fini section support for IA64.
2 Copyright (C) 2000-2023 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 In addition to the permissions in the GNU Lesser General Public
11 License, the Free Software Foundation gives you unlimited
12 permission to link the compiled version of this file with other
13 programs, and to distribute those programs without any restriction
14 coming from the use of this file. (The GNU Lesser General Public
15 License restrictions do apply in other respects; for example, they
16 cover modification of the file, and distribution when not linked
17 into another program.)
18
19 Note that people who make modified versions of this file are not
20 obligated to grant this special exception for their modified
21 versions; it is their choice whether to do so. The GNU Lesser
22 General Public License gives permission to release a modified
23 version without this exception; this exception also makes it
24 possible to release a modified version which carries forward this
25 exception.
26
27 The GNU C Library is distributed in the hope that it will be useful,
28 but WITHOUT ANY WARRANTY; without even the implied warranty of
29 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
30 Lesser General Public License for more details.
31
32 You should have received a copy of the GNU Lesser General Public
33 License along with the GNU C Library. If not, see
34 <https://www.gnu.org/licenses/>. */
35
36/* crti.S puts a function prologue at the beginning of the .init and
37 .fini sections and defines global symbols for those addresses, so
38 they can be called as functions. The symbols _init and _fini are
39 magic and cause the linker to emit DT_INIT and DT_FINI. */
40
41#include <libc-symbols.h>
42#include <sysdep.h>
43#undef ret
44
45#ifndef PREINIT_FUNCTION
46# define PREINIT_FUNCTION __gmon_start__
47#endif
48
49#ifndef PREINIT_FUNCTION_WEAK
50# define PREINIT_FUNCTION_WEAK 1
51#endif
52
53#if PREINIT_FUNCTION_WEAK
54 weak_extern (PREINIT_FUNCTION)
55#else
56 .hidden PREINIT_FUNCTION
57#endif
58
59/* If we have working .init_array support, we want to keep the .init
60 section empty (apart from the mandatory prologue/epilogue. This
61 ensures that the default unwind conventions (return-pointer in b0,
62 frame state in ar.pfs, etc.) will do the Right Thing. To ensure
63 an empty .init section, we register gmon_initializer() via the
64 .init_array.
65
66 --davidm 02/10/29 */
67
68#if PREINIT_FUNCTION_WEAK
69/* This blob of assembly code is one simple C function:
70
71static void
72__attribute__ ((used))
73gmon_initializer (void)
74{
75 extern void weak_function __gmon_start__ (void);
76
77 if (__gmon_start__)
78 (*__gmon_start__)();
79}
80 */
81 .text
82 .align 64
83 .proc gmon_initializer#
84gmon_initializer:
85 .prologue 12, 32
86 .mmi
87 .save ar.pfs, r33
88 alloc r33 = ar.pfs, 0, 3, 0, 0
89 addl r14 = @ltoff(@fptr(PREINIT_FUNCTION#)), gp
90 .save rp, r32
91 mov r32 = b0
92 .mmi
93 mov r34 = r1
94 .body
95 ;;
96 ld8 r14 = [r14]
97 nop 0
98 ;;
99 .mib
100 cmp.eq p6, p7 = 0, r14
101 nop 0
102 (p6) br.cond.spnt .L1
103 ;;
104 .mib
105 nop 0
106 nop 0
107 br.call.sptk.many b0 = PREINIT_FUNCTION#
108 ;;
109 .mmi
110 mov r1 = r34
111 nop 0
112 nop 0
113.L1:
114 .mii
115 nop 0
116 mov ar.pfs = r33
117 nop 0
118 ;;
119 .mib
120 nop 0
121 mov b0 = r32
122 br.ret.sptk.many b0
123 .endp gmon_initializer#
124# undef PREINIT_FUNCTION
125# define PREINIT_FUNCTION gmon_initializer
126#endif
127 .section .init_array, "aw"
128 data8 @fptr(PREINIT_FUNCTION)
129
130 .section .init,"ax",@progbits
131 .global _init#
132 .hidden _init#
133 .proc _init#
134_init:
135 .prologue
136 .save ar.pfs, r34
137 alloc r34 = ar.pfs, 0, 3, 0, 0
138 .vframe r32
139 mov r32 = r12
140 .save rp, r33
141 mov r33 = b0
142 .body
143 adds r12 = -16, r12
144 ;; /* see gmon_initializer() above */
145 .endp _init#
146
147 .section .fini,"ax",@progbits
148 .global _fini#
149 .hidden _fini#
150 .proc _fini#
151_fini:
152 .prologue
153 .save ar.pfs, r34
154 alloc r34 = ar.pfs, 0, 3, 0, 0
155 .vframe r32
156 mov r32 = r12
157 .save rp, r33
158 mov r33 = b0
159 .body
160 adds r12 = -16, r12
161 ;;
162 .endp _fini#
lib/libc/glibc/sysdeps/ia64/crtn.S deleted-69
......@@ -1,69 +0,0 @@
1/* Special .init and .fini section support for ARM.
2 Copyright (C) 2000-2023 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 In addition to the permissions in the GNU Lesser General Public
11 License, the Free Software Foundation gives you unlimited
12 permission to link the compiled version of this file with other
13 programs, and to distribute those programs without any restriction
14 coming from the use of this file. (The GNU Lesser General Public
15 License restrictions do apply in other respects; for example, they
16 cover modification of the file, and distribution when not linked
17 into another program.)
18
19 Note that people who make modified versions of this file are not
20 obligated to grant this special exception for their modified
21 versions; it is their choice whether to do so. The GNU Lesser
22 General Public License gives permission to release a modified
23 version without this exception; this exception also makes it
24 possible to release a modified version which carries forward this
25 exception.
26
27 The GNU C Library is distributed in the hope that it will be useful,
28 but WITHOUT ANY WARRANTY; without even the implied warranty of
29 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
30 Lesser General Public License for more details.
31
32 You should have received a copy of the GNU Lesser General Public
33 License along with the GNU C Library. If not, see
34 <https://www.gnu.org/licenses/>. */
35
36#include <sysdep.h>
37#undef ret
38
39/* crtn.S puts function epilogues in the .init and .fini sections
40 corresponding to the prologues in crti.S. */
41
42 .section .init,"ax",@progbits
43 .proc _init#
44_init:
45 .prologue
46 .save ar.pfs, r34
47 .vframe r32
48 .save rp, r33
49 .body
50 .regstk 0,2,0,0
51 mov r12 = r32
52 mov ar.pfs = r34
53 mov b0 = r33
54 br.ret.sptk.many b0
55 .endp _init#
56
57 .section .fini,"ax",@progbits
58 .proc _fini#
59_fini:
60 .prologue
61 .save ar.pfs, r34
62 .vframe r32
63 .save rp, r33
64 .body
65 mov r12 = r32
66 mov ar.pfs = r34
67 mov b0 = r33
68 br.ret.sptk.many b0
69 .endp _fini#
lib/libc/glibc/sysdeps/ia64/dl-dtprocnum.h deleted-21
......@@ -1,21 +0,0 @@
1/* Configuration of lookup functions. IA-64 version.
2 Copyright (C) 2000-2023 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 You should have received a copy of the GNU Lesser General Public
16 License along with the GNU C Library; if not, see
17 <https://www.gnu.org/licenses/>. */
18
19/* Number of extra dynamic section entries for this architecture. By
20 default there are none. */
21#define DT_THISPROCNUM DT_IA_64_NUM
lib/libc/glibc/sysdeps/ia64/entry.h deleted-8
......@@ -1,8 +0,0 @@
1#include <link.h>
2#include <dl-fptr.h>
3
4extern void _start (void);
5
6/* The function's entry point is stored in the first word of the
7 function descriptor (plabel) of _start(). */
8#define ENTRY_POINT ELF_PTR_TO_FDESC (_start)->ip
lib/libc/glibc/sysdeps/ia64/start.S deleted-112
......@@ -1,112 +0,0 @@
1/* Copyright (C) 1999-2023 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 In addition to the permissions in the GNU Lesser General Public
10 License, the Free Software Foundation gives you unlimited
11 permission to link the compiled version of this file with other
12 programs, and to distribute those programs without any restriction
13 coming from the use of this file. (The GNU Lesser General Public
14 License restrictions do apply in other respects; for example, they
15 cover modification of the file, and distribution when not linked
16 into another program.)
17
18 Note that people who make modified versions of this file are not
19 obligated to grant this special exception for their modified
20 versions; it is their choice whether to do so. The GNU Lesser
21 General Public License gives permission to release a modified
22 version without this exception; this exception also makes it
23 possible to release a modified version which carries forward this
24 exception.
25
26 The GNU C Library is distributed in the hope that it will be useful,
27 but WITHOUT ANY WARRANTY; without even the implied warranty of
28 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
29 Lesser General Public License for more details.
30
31 You should have received a copy of the GNU Lesser General Public
32 License along with the GNU C Library; if not, see
33 <https://www.gnu.org/licenses/>. */
34
35#include <sysdep.h>
36
37#include <asm/fpu.h>
38
39/*
40 * Arguments for __libc_start_main:
41 * out0: main
42 * out1: argc
43 * out2: argv
44 * out3: init
45 * out4: fini
46 * out5: rtld_fini
47 * out6: stack_end
48 */
49
50 .align 32
51 .global _start
52
53 .proc _start
54 .type _start,@function
55_start:
56 .prologue
57 .save rp, r0
58 .body
59 .prologue
60 { .mlx
61 alloc r2 = ar.pfs,0,0,7,0
62 movl r3 = FPSR_DEFAULT
63 }
64 { .mlx
65 adds out2 = 16, sp /* get address of argc value */
66 movl gp = @gprel(0f)
67 ;;
68 }
690: { .mmi
70 ld8 out1 = [out2], 8 /* load argc and move out2 to become argv */
71 mov.m r10 = ar.bsp /* fetch rbs base address */
72 mov r9 = ip
73 ;;
74 }
75 { .mii
76 mov ar.fpsr = r3
77 sub gp = r9, gp /* back-compute gp value */
78 adds out6 = 16, sp /* highest non-environment stack address */
79 ;;
80 }
81 {
82 addl r11 = @ltoff(__libc_ia64_register_backing_store_base), gp
83 addl out0 = @ltoff(@fptr(main)), gp
84 mov out3 = r0 /* Used to be init. */
85 ;;
86 }
87 { .mmi
88 ld8 r3 = [r11] /* pointer to __libc_ia64_register_backing_store_base */
89 ld8 out0 = [out0] /* pointer to `main' function descriptor */
90 mov out4 = r0 /* Used to be fini. */
91 ;;
92 }
93 .body
94 { .mib
95 st8 [r3] = r10
96 mov out5 = ret0 /* dynamic linker destructor */
97 br.call.sptk.few rp = __libc_start_main
98 }
99 { .mib
100 break 0 /* break miserably if we ever return */
101 }
102 .endp _start
103
104/* Define a symbol for the first piece of initialized data. */
105 .data
106 .globl __data_start
107__data_start:
108 .long 0
109 .weak data_start
110 data_start = __data_start
111
112 .common __libc_ia64_register_backing_store_base, 8, 8
lib/libc/glibc/sysdeps/ia64/sysdep.h deleted-61
......@@ -1,61 +0,0 @@
1/* Copyright (C) 2000-2023 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#include <sysdeps/generic/sysdep.h>
19
20#ifdef __ASSEMBLER__
21
22/* Macros to help writing .prologue directives in assembly code. */
23#define ASM_UNW_PRLG_RP 0x8
24#define ASM_UNW_PRLG_PFS 0x4
25#define ASM_UNW_PRLG_PSP 0x2
26#define ASM_UNW_PRLG_PR 0x1
27#define ASM_UNW_PRLG_GRSAVE(ninputs) (32+(ninputs))
28
29#define ENTRY(name) \
30 .text; \
31 .align 32; \
32 .proc C_SYMBOL_NAME(name); \
33 .global C_SYMBOL_NAME(name); \
34 C_LABEL(name) \
35 CALL_MCOUNT
36
37#define LOCAL_ENTRY(name) \
38 .text; \
39 .align 32; \
40 .proc C_SYMBOL_NAME(name); \
41 C_LABEL(name) \
42 CALL_MCOUNT
43
44#define LEAF(name) \
45 .text; \
46 .align 32; \
47 .proc C_SYMBOL_NAME(name); \
48 .global name; \
49 C_LABEL(name)
50
51#define LOCAL_LEAF(name) \
52 .text; \
53 .align 32; \
54 .proc C_SYMBOL_NAME(name); \
55 C_LABEL(name)
56
57/* Mark the end of function SYM. */
58#undef END
59#define END(sym) .endp C_SYMBOL_NAME(sym)
60
61#endif /* ASSEMBLER */
lib/libc/glibc/sysdeps/m68k/coldfire/sysdep.h+1-1
......@@ -1,5 +1,5 @@
11/* Assembler macros for Coldfire.
2 Copyright (C) 1998-2023 Free Software Foundation, Inc.
2 Copyright (C) 1998-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/m68k/crti.S+1-1
......@@ -1,5 +1,5 @@
11/* Special .init and .fini section support for m68k.
2 Copyright (C) 2012-2023 Free Software Foundation, Inc.
2 Copyright (C) 2012-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/m68k/crtn.S+1-1
......@@ -1,5 +1,5 @@
11/* Special .init and .fini section support for m68k.
2 Copyright (C) 2012-2023 Free Software Foundation, Inc.
2 Copyright (C) 2012-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/m68k/m680x0/sysdep.h+8-1
......@@ -1,5 +1,5 @@
11/* Assembler macros for m680x0.
2 Copyright (C) 2010-2023 Free Software Foundation, Inc.
2 Copyright (C) 2010-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
......@@ -37,3 +37,10 @@
3737 OP " " SRC "(" PC "), " DST
3838
3939#endif /* __ASSEMBLER__ */
40
41# if defined __mc68020__ || defined __mc68030__ || defined __mc68040__ \
42 || defined __mc68060__
43# define M68K_SCALE_AVAILABLE 1
44# else
45# define M68K_SCALE_AVAILABLE 0
46# endif
lib/libc/glibc/sysdeps/m68k/nptl/bits/pthreadtypes-arch.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2010-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2010-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/m68k/start.S+1-1
......@@ -1,5 +1,5 @@
11/* Startup code compliant to the ELF m68k ABI.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/m68k/symbol-hacks.h+1-1
......@@ -1,5 +1,5 @@
11/* Hacks needed for symbol manipulation. m68k version.
2 Copyright (C) 2017-2023 Free Software Foundation, Inc.
2 Copyright (C) 2017-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/m68k/sysdep.h+1-1
......@@ -1,5 +1,5 @@
11/* Assembler macros for m68k.
2 Copyright (C) 1998-2023 Free Software Foundation, Inc.
2 Copyright (C) 1998-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/mach/libc-lock.h+1-1
......@@ -1,5 +1,5 @@
11/* libc-internal interface for mutex locks. Mach cthreads version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/mach/sysdep.h+1-8
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1994-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1994-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
......@@ -56,13 +56,6 @@
5656/* This is not used on all machines. */
5757#endif
5858
59/* Set variables ARGC, ARGV, and ENVP for the arguments
60 left on the stack by the microkernel. */
61#ifndef SNARF_ARGS
62#define SNARF_ARGS(argc, argv, envp)
63#error SNARF_ARGS not defined by sysdeps/mach/MACHINE/sysdep.h
64#endif
65
6659/* LOSE can be defined as the `halt' instruction or something
6760 similar which will cause the process to die in a characteristic
6861 way suggesting a bug. */
lib/libc/glibc/sysdeps/microblaze/crti.S+1-1
......@@ -1,5 +1,5 @@
11/* Special .init and .fini section support for MicroBlaze.
2 Copyright (C) 2012-2023 Free Software Foundation, Inc.
2 Copyright (C) 2012-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/microblaze/crtn.S+1-1
......@@ -1,5 +1,5 @@
11/* Special .init and .fini section support for MicroBlaze.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/microblaze/start.S+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1995-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1995-2024 Free Software Foundation, Inc.
22
33 This file is part of the GNU C Library.
44
lib/libc/glibc/sysdeps/microblaze/sysdep.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22
33 This file is part of the GNU C Library.
44
lib/libc/glibc/sysdeps/mips/dl-dtprocnum.h+1-1
......@@ -1,5 +1,5 @@
11/* Configuration of lookup functions. MIPS version.
2 Copyright (C) 2000-2023 Free Software Foundation, Inc.
2 Copyright (C) 2000-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/mips/mips32/crti.S+1-1
......@@ -1,5 +1,5 @@
11/* Special .init and .fini section support for MIPS (o32).
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/mips/mips32/crtn.S+1-1
......@@ -1,5 +1,5 @@
11/* Special .init and .fini section support for MIPS (o32).
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/mips/mips64/n32/crti.S+1-1
......@@ -1,5 +1,5 @@
11/* Special .init and .fini section support for MIPS (n32).
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/mips/mips64/n32/crtn.S+1-1
......@@ -1,5 +1,5 @@
11/* Special .init and .fini section support for MIPS (n32).
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/mips/mips64/n64/crti.S+1-1
......@@ -1,5 +1,5 @@
11/* Special .init and .fini section support for MIPS (n64).
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/mips/mips64/n64/crtn.S+1-1
......@@ -1,5 +1,5 @@
11/* Special .init and .fini section support for MIPS (n64).
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/mips/nptl/bits/pthreadtypes-arch.h+1-1
......@@ -1,5 +1,5 @@
11/* Machine-specific pthread type layouts. MIPS version.
2 Copyright (C) 2005-2023 Free Software Foundation, Inc.
2 Copyright (C) 2005-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/mips/start.S+1-1
......@@ -1,5 +1,5 @@
11/* Startup code compliant to the ELF Mips ABI.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/nios2/sysdep.h+1-1
......@@ -1,5 +1,5 @@
11/* Assembler macros for Nios II.
2 Copyright (C) 2015-2023 Free Software Foundation, Inc.
2 Copyright (C) 2015-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/nptl/bits/pthreadtypes.h+1-1
......@@ -1,5 +1,5 @@
11/* Declaration of common pthread types for all architectures.
2 Copyright (C) 2017-2023 Free Software Foundation, Inc.
2 Copyright (C) 2017-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/nptl/bits/thread-shared-types.h+1-1
......@@ -1,5 +1,5 @@
11/* Common threading primitives definitions for both POSIX and C11.
2 Copyright (C) 2017-2023 Free Software Foundation, Inc.
2 Copyright (C) 2017-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/nptl/libc-lock.h+1-1
......@@ -1,5 +1,5 @@
11/* libc-internal interface for mutex locks. NPTL version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/nptl/libc-lockP.h+1-1
......@@ -1,5 +1,5 @@
11/* Private libc-internal interface for mutex locks. NPTL version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/nptl/pthread.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2002-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2002-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/powerpc/powerpc32/crti.S+1-1
......@@ -1,5 +1,5 @@
11/* Special .init and .fini section support for PowerPC.
2 Copyright (C) 2012-2023 Free Software Foundation, Inc.
2 Copyright (C) 2012-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/powerpc/powerpc32/crtn.S+1-1
......@@ -1,5 +1,5 @@
11/* Special .init and .fini section support for PowerPC.
2 Copyright (C) 2012-2023 Free Software Foundation, Inc.
2 Copyright (C) 2012-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/powerpc/powerpc32/start.S+1-1
......@@ -1,5 +1,5 @@
11/* Startup code for programs linked with GNU libc.
2 Copyright (C) 1998-2023 Free Software Foundation, Inc.
2 Copyright (C) 1998-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/powerpc/powerpc32/symbol-hacks.h+1-1
......@@ -1,5 +1,5 @@
11/* Hacks needed for symbol manipulation. powerpc version.
2 Copyright (C) 2017-2023 Free Software Foundation, Inc.
2 Copyright (C) 2017-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/powerpc/powerpc32/sysdep.h+1-1
......@@ -1,5 +1,5 @@
11/* Assembly macros for 32-bit PowerPC.
2 Copyright (C) 1999-2023 Free Software Foundation, Inc.
2 Copyright (C) 1999-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/powerpc/powerpc64/crti.S+1-1
......@@ -1,5 +1,5 @@
11/* Special .init and .fini section support for PowerPC64.
2 Copyright (C) 2012-2023 Free Software Foundation, Inc.
2 Copyright (C) 2012-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/powerpc/powerpc64/crtn.S+1-1
......@@ -1,5 +1,5 @@
11/* Special .init and .fini section support for PowerPC64.
2 Copyright (C) 2012-2023 Free Software Foundation, Inc.
2 Copyright (C) 2012-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/powerpc/powerpc64/dl-dtprocnum.h+1-1
......@@ -1,5 +1,5 @@
11/* Configuration of lookup functions. PowerPC64 version.
2 Copyright (C) 2002-2023 Free Software Foundation, Inc.
2 Copyright (C) 2002-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/powerpc/powerpc64/start.S+1-1
......@@ -1,5 +1,5 @@
11/* Startup code for programs linked with GNU libc. PowerPC64 version.
2 Copyright (C) 1998-2023 Free Software Foundation, Inc.
2 Copyright (C) 1998-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/powerpc/powerpc64/sysdep.h+1-1
......@@ -1,5 +1,5 @@
11/* Assembly macros for 64-bit PowerPC.
2 Copyright (C) 2002-2023 Free Software Foundation, Inc.
2 Copyright (C) 2002-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/powerpc/sysdep.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1999-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1999-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/riscv/nptl/bits/pthreadtypes-arch.h+1-1
......@@ -1,5 +1,5 @@
11/* Machine-specific pthread type layouts. RISC-V version.
2 Copyright (C) 2011-2023 Free Software Foundation, Inc.
2 Copyright (C) 2011-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/riscv/start.S+12-1
......@@ -1,5 +1,5 @@
11/* Startup code compliant to the ELF RISC-V ABI.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
......@@ -50,7 +50,13 @@ ENTRY (ENTRY_POINT)
5050 call load_gp
5151 mv a5, a0 /* rtld_fini. */
5252 /* main may be in a shared library. */
53#if defined PIC && !defined SHARED
54 /* Avoid relocation in static PIE since _start is called before it
55 is relocated. */
56 lla a0, __wrap_main
57#else
5358 la a0, main
59#endif
5460 REG_L a1, 0(sp) /* argc. */
5561 addi a2, sp, SZREG /* argv. */
5662 andi sp, sp, ALMASK /* Align stack. */
......@@ -62,6 +68,11 @@ ENTRY (ENTRY_POINT)
6268 ebreak
6369END (ENTRY_POINT)
6470
71#if defined PIC && !defined SHARED
72__wrap_main:
73 tail main@plt
74#endif
75
6576/* Dynamic links need the global pointer to be initialized prior to calling
6677 any shared library's initializers, so we use preinit_array to load it.
6778 This doesn't cut it for static links, though, since the global pointer
lib/libc/glibc/sysdeps/s390/s390-32/crti.S+1-1
......@@ -1,5 +1,5 @@
11/* Special .init and .fini section support for S/390.
2 Copyright (C) 2000-2023 Free Software Foundation, Inc.
2 Copyright (C) 2000-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/s390/s390-32/crtn.S+1-1
......@@ -1,5 +1,5 @@
11/* Special .init and .fini section support for S/390.
2 Copyright (C) 2000-2023 Free Software Foundation, Inc.
2 Copyright (C) 2000-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/s390/s390-32/start.S+1-1
......@@ -1,5 +1,5 @@
11/* Startup code compliant to the ELF s390 ABI.
2 Copyright (C) 2000-2023 Free Software Foundation, Inc.
2 Copyright (C) 2000-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/s390/s390-32/symbol-hacks.h+1-1
......@@ -1,5 +1,5 @@
11/* Hacks needed for symbol manipulation. s390 version.
2 Copyright (C) 2017-2023 Free Software Foundation, Inc.
2 Copyright (C) 2017-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/s390/s390-32/sysdep.h+1-1
......@@ -1,5 +1,5 @@
11/* Assembler macros for s390.
2 Copyright (C) 2000-2023 Free Software Foundation, Inc.
2 Copyright (C) 2000-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/s390/s390-64/crti.S+2-2
......@@ -1,5 +1,5 @@
11/* Special .init and .fini section support for 64 bit S/390.
2 Copyright (C) 2001-2023 Free Software Foundation, Inc.
2 Copyright (C) 2001-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
......@@ -85,7 +85,7 @@ _init:
8585 .type _fini,@function
8686_fini:
8787 stmg %r6,%r15,48(%r15)
88 lgr %r1,%r15
88 lg %r1,120(%r15)
8989 aghi %r15,-160
9090 stg %r1,0(%r15)
9191 larl %r12,_GLOBAL_OFFSET_TABLE_
lib/libc/glibc/sysdeps/s390/s390-64/crtn.S+1-3
......@@ -1,5 +1,5 @@
11/* Special .init and .fini section support for 64 bit S/390.
2 Copyright (C) 2001-2023 Free Software Foundation, Inc.
2 Copyright (C) 2001-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
......@@ -37,13 +37,11 @@
3737 corresponding to the prologues in crti.S. */
3838
3939 .section .init
40 .align 4
4140 lg %r4,272(%r15)
4241 lmg %r6,%r15,208(%r15)
4342 br %r4
4443
4544 .section .fini
46 .align 4
4745 lg %r4,272(%r15)
4846 lmg %r6,%r15,208(%r15)
4947 br %r4
lib/libc/glibc/sysdeps/s390/s390-64/start.S+1-1
......@@ -1,5 +1,5 @@
11/* Startup code compliant to the 64 bit S/390 ELF ABI.
2 Copyright (C) 2001-2023 Free Software Foundation, Inc.
2 Copyright (C) 2001-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/s390/s390-64/sysdep.h+1-1
......@@ -1,5 +1,5 @@
11/* Assembler macros for 64 bit S/390.
2 Copyright (C) 2001-2023 Free Software Foundation, Inc.
2 Copyright (C) 2001-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/sh/crti.S+1-1
......@@ -1,5 +1,5 @@
11/* Special .init and .fini section support for SH.
2 Copyright (C) 2000-2023 Free Software Foundation, Inc.
2 Copyright (C) 2000-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/sh/crtn.S+1-1
......@@ -1,5 +1,5 @@
11/* Special .init and .fini section support for SH.
2 Copyright (C) 2000-2023 Free Software Foundation, Inc.
2 Copyright (C) 2000-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/sh/start.S+1-1
......@@ -1,5 +1,5 @@
11/* Startup code for SH & ELF.
2 Copyright (C) 1999-2023 Free Software Foundation, Inc.
2 Copyright (C) 1999-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/sh/sysdep.h+1-1
......@@ -1,5 +1,5 @@
11/* Assembler macros for SH.
2 Copyright (C) 1999-2023 Free Software Foundation, Inc.
2 Copyright (C) 1999-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/sparc/crti.S+1-1
......@@ -1,5 +1,5 @@
11/* Special .init and .fini section support for sparc.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/sparc/crtn.S+1-1
......@@ -1,5 +1,5 @@
11/* Special .init and .fini section support for sparc.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/sparc/dl-dtprocnum.h+1-1
......@@ -1,5 +1,5 @@
11/* Configuration of lookup functions. SPARC version.
2 Copyright (C) 2000-2023 Free Software Foundation, Inc.
2 Copyright (C) 2000-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/sparc/sparc32/start.S+1-1
......@@ -1,5 +1,5 @@
11/* Startup code for elf32-sparc
2 Copyright (C) 1997-2023 Free Software Foundation, Inc.
2 Copyright (C) 1997-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/sparc/sparc64/start.S+1-1
......@@ -1,5 +1,5 @@
11/* Startup code for elf64-sparc
2 Copyright (C) 1997-2023 Free Software Foundation, Inc.
2 Copyright (C) 1997-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/sparc/sysdep.h+10-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2011-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2011-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
......@@ -76,6 +76,15 @@ C_LABEL(name) \
7676 cfi_endproc; \
7777 .size name, . - name
7878
79#define ENTRY_NOCFI(name) \
80 .align 4; \
81 .global C_SYMBOL_NAME(name); \
82 .type name, @function; \
83C_LABEL(name)
84
85#define END_NOCFI(name) \
86 .size name, . - name
87
7988#undef LOC
8089#define LOC(name) .L##name
8190
lib/libc/glibc/sysdeps/unix/arm/sysdep.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/i386/sysdep.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/mips/mips32/sysdep.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1992-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1992-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/mips/mips64/sysdep.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1992-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1992-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/mips/sysdep.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1992-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1992-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/powerpc/sysdep.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sh/sysdep.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1999-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1999-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysdep.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/aarch64/kernel-features.h+1-1
......@@ -1,6 +1,6 @@
11/* Set flags signalling availability of kernel features based on given
22 kernel version number. AArch64 version.
3 Copyright (C) 2018-2023 Free Software Foundation, Inc.
3 Copyright (C) 2018-2024 Free Software Foundation, Inc.
44 This file is part of the GNU C Library.
55
66 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/aarch64/sys/elf.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1996-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1996-2024 Free Software Foundation, Inc.
22
33 This file is part of the GNU C Library.
44
lib/libc/glibc/sysdeps/unix/sysv/linux/aarch64/sysdep.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2005-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2005-2024 Free Software Foundation, Inc.
22
33 This file is part of the GNU C Library.
44
lib/libc/glibc/sysdeps/unix/sysv/linux/alpha/bits/typesizes.h+1-1
......@@ -1,5 +1,5 @@
11/* bits/typesizes.h -- underlying types for *_t. Linux/Alpha version.
2 Copyright (C) 2002-2023 Free Software Foundation, Inc.
2 Copyright (C) 2002-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/alpha/kernel-features.h+5-1
......@@ -1,6 +1,6 @@
11/* Set flags signalling availability of kernel features based on given
22 kernel version number.
3 Copyright (C) 2010-2023 Free Software Foundation, Inc.
3 Copyright (C) 2010-2024 Free Software Foundation, Inc.
44 This file is part of the GNU C Library.
55
66 The GNU C Library is free software; you can redistribute it and/or
......@@ -50,4 +50,8 @@
5050/* Alpha requires old sysvipc even being a 64-bit architecture. */
5151#undef __ASSUME_SYSVIPC_DEFAULT_IPC_64
5252
53/* Alpha does not provide clone3. */
54#undef __ASSUME_CLONE3
55#define __ASSUME_CLONE3 0
56
5357#endif /* _KERNEL_FEATURES_H */
lib/libc/glibc/sysdeps/unix/sysv/linux/alpha/sysdep.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1992-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1992-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/arc/sysdep.h+1-1
......@@ -1,5 +1,5 @@
11/* Assembler macros for ARC.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/arm/kernel-features.h+1-1
......@@ -1,6 +1,6 @@
11/* Set flags signalling availability of kernel features based on given
22 kernel version number.
3 Copyright (C) 2006-2023 Free Software Foundation, Inc.
3 Copyright (C) 2006-2024 Free Software Foundation, Inc.
44 This file is part of the GNU C Library.
55
66 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/arm/sys/elf.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1996-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1996-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/arm/sysdep.h+2-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1992-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1992-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
......@@ -362,6 +362,7 @@ __local_syscall_error: \
362362#define HAVE_CLOCK_GETTIME_VSYSCALL "__vdso_clock_gettime"
363363#define HAVE_CLOCK_GETTIME64_VSYSCALL "__vdso_clock_gettime64"
364364#define HAVE_GETTIMEOFDAY_VSYSCALL "__vdso_gettimeofday"
365#define HAVE_CLONE3_WRAPPER 1
365366
366367#define LOAD_ARGS_0()
367368#define ASM_ARGS_0
lib/libc/glibc/sysdeps/unix/sysv/linux/bits/stat.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1992-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1992-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/bits/timex.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1995-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1995-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/csky/kernel_stat.h+1-1
......@@ -1,5 +1,5 @@
11/* Internal definitions for stat functions. Linux/csky.
2 Copyright (C) 2011-2023 Free Software Foundation, Inc.
2 Copyright (C) 2011-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/csky/sysdep.h+1-1
......@@ -1,5 +1,5 @@
11/* Assembly macros for C-SKY.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/dl-sysdep.h+1-1
......@@ -1,5 +1,5 @@
11/* System-specific settings for dynamic linker code. Linux version.
2 Copyright (C) 2005-2023 Free Software Foundation, Inc.
2 Copyright (C) 2005-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/fstat.c+1-1
......@@ -1,5 +1,5 @@
11/* Get file status. Linux version.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/fstat64.c+39-3
......@@ -1,5 +1,5 @@
11/* Get file status. Linux version.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
......@@ -19,20 +19,56 @@
1919#define __fstat __redirect___fstat
2020#define fstat __redirect_fstat
2121#include <sys/stat.h>
22#undef __fstat
23#undef fstat
2224#include <fcntl.h>
23#include <kernel_stat.h>
24#include <stat_t64_cp.h>
25#include <internal-stat.h>
2526#include <errno.h>
2627
2728int
2829__fstat64_time64 (int fd, struct __stat64_t64 *buf)
2930{
31#if !FSTATAT_USE_STATX
32# if XSTAT_IS_XSTAT64
33 /* The __NR_stat macro is defined for all ABIs that also define
34 XSTAT_IS_STAT64, so to correctly identify alpha and sparc check
35 __NR_newfstatat (similar to what fstatat64 does). */
36# ifdef __NR_newfstatat
37 /* 64-bit kABI, e.g. aarch64, ia64, powerpc64*, s390x, riscv64, and
38 x86_64. */
39 return INLINE_SYSCALL_CALL (fstat, fd, buf);
40# elif defined __NR_fstat64
41# if STAT64_IS_KERNEL_STAT64
42 /* 64-bit kABI outlier, e.g. alpha */
43 return INLINE_SYSCALL_CALL (fstat64, fd, buf);
44# else
45 /* 64-bit kABI outlier, e.g. sparc64. */
46 struct kernel_stat64 kst64;
47 int r = INLINE_SYSCALL_CALL (fstat64, fd, &kst64);
48 if (r == 0)
49 __cp_stat64_kstat64 (buf, &kst64);
50 return r;
51# endif /* STAT64_IS_KERNEL_STAT64 */
52# endif
53# else /* XSTAT_IS_XSTAT64 */
54 /* 64-bit kabi outlier, e.g. mips64 and mips64-n32. */
55 struct kernel_stat kst;
56 int r = INLINE_SYSCALL_CALL (fstat, fd, &kst);
57 if (r == 0)
58 __cp_kstat_stat64_t64 (&kst, buf);
59 return r;
60# endif
61#else /* !FSTATAT_USE_STATX */
62 /* All kABIs with non-LFS support and with old 32-bit time_t support
63 e.g. arm, csky, i386, hppa, m68k, microblaze, nios2, sh, powerpc32,
64 and sparc32. */
3065 if (fd < 0)
3166 {
3267 __set_errno (EBADF);
3368 return -1;
3469 }
3570 return __fstatat64_time64 (fd, "", buf, AT_EMPTY_PATH);
71#endif
3672}
3773#if __TIMESIZE != 64
3874hidden_def (__fstat64_time64)
lib/libc/glibc/sysdeps/unix/sysv/linux/fstatat.c+1-1
......@@ -1,5 +1,5 @@
11/* Get file status. Linux version.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/fstatat64.c+4-12
......@@ -1,5 +1,5 @@
11/* Get file status. Linux version.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
......@@ -22,18 +22,12 @@
2222#include <sys/stat.h>
2323#include <fcntl.h>
2424#include <string.h>
25#include <kernel_stat.h>
2625#include <sysdep.h>
2726#include <time.h>
28#include <kstat_cp.h>
29#include <stat_t64_cp.h>
3027#include <sys/sysmacros.h>
28#include <internal-stat.h>
3129
32#if (__WORDSIZE == 32 \
33 && (!defined __SYSCALL_WORDSIZE || __SYSCALL_WORDSIZE == 32)) \
34 || defined STAT_HAS_TIME32 \
35 || (!defined __NR_newfstatat && !defined __NR_fstatat64)
36# define FSTATAT_USE_STATX 1
30#if FSTATAT_USE_STATX
3731
3832static inline int
3933fstatat64_time64_statx (int fd, const char *file, struct __stat64_t64 *buf,
......@@ -68,8 +62,6 @@ fstatat64_time64_statx (int fd, const char *file, struct __stat64_t64 *buf,
6862
6963 return r;
7064}
71#else
72# define FSTATAT_USE_STATX 0
7365#endif
7466
7567/* Only statx supports 64-bit timestamps for 32-bit architectures with
......@@ -94,7 +86,7 @@ fstatat64_time64_stat (int fd, const char *file, struct __stat64_t64 *buf,
9486
9587#if XSTAT_IS_XSTAT64
9688# ifdef __NR_newfstatat
97 /* 64-bit kABI, e.g. aarch64, ia64, powerpc64*, s390x, riscv64, and
89 /* 64-bit kABI, e.g. aarch64, powerpc64*, s390x, riscv64, and
9890 x86_64. */
9991 r = INTERNAL_SYSCALL_CALL (newfstatat, fd, file, buf, flag);
10092# elif defined __NR_fstatat64
lib/libc/glibc/sysdeps/unix/sysv/linux/hppa/kernel-features.h+1-1
......@@ -1,6 +1,6 @@
11/* Set flags signalling availability of kernel features based on given
22 kernel version number.
3 Copyright (C) 2006-2023 Free Software Foundation, Inc.
3 Copyright (C) 2006-2024 Free Software Foundation, Inc.
44 This file is part of the GNU C Library.
55
66 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/hppa/sysdep.h+1-1
......@@ -1,5 +1,5 @@
11/* Assembler macros for PA-RISC.
2 Copyright (C) 1999-2023 Free Software Foundation, Inc.
2 Copyright (C) 1999-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/i386/dl-sysdep.h+1-1
......@@ -1,5 +1,5 @@
11/* System-specific settings for dynamic linker code. i386 version.
2 Copyright (C) 2002-2023 Free Software Foundation, Inc.
2 Copyright (C) 2002-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/i386/kernel-features.h+1-1
......@@ -1,6 +1,6 @@
11/* Set flags signalling availability of kernel features based on given
22 kernel version number. i386 version.
3 Copyright (C) 1999-2023 Free Software Foundation, Inc.
3 Copyright (C) 1999-2024 Free Software Foundation, Inc.
44 This file is part of the GNU C Library.
55
66 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/i386/sysdep.h+1-6
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1992-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1992-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
......@@ -446,9 +446,4 @@ struct libc_do_syscall_args
446446
447447#endif /* __ASSEMBLER__ */
448448
449/* Each shadow stack slot takes 4 bytes. Assuming that each stack
450 frame takes 128 bytes, this is used to compute shadow stack size
451 from stack size. */
452#define STACK_SIZE_TO_SHADOW_STACK_SIZE_SHIFT 5
453
454449#endif /* linux/i386/sysdep.h */
lib/libc/glibc/sysdeps/unix/sysv/linux/ia64/dl-sysdep.h deleted-51
......@@ -1,51 +0,0 @@
1/* System-specific settings for dynamic linker code. IA-64 version.
2 Copyright (C) 2003-2023 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 You should have received a copy of the GNU Lesser General Public
16 License along with the GNU C Library; if not, see
17 <https://www.gnu.org/licenses/>. */
18
19#ifndef _LINUX_IA64_DL_SYSDEP_H
20#define _LINUX_IA64_DL_SYSDEP_H 1
21
22#include_next <dl-sysdep.h>
23
24/* Traditionally system calls have been made using break 0x100000. A
25 second method was introduced which, if possible, will use the EPC
26 instruction. To signal the presence and where to find the code the
27 kernel passes an AT_SYSINFO_EHDR pointer in the auxiliary vector to
28 the application. */
29#define NEED_DL_SYSINFO 1
30#define USE_DL_SYSINFO 1
31
32#ifndef __ASSEMBLER__
33/* Don't declare this as a function---we want it's entry-point, not
34 it's function descriptor... */
35extern int _dl_sysinfo_break attribute_hidden;
36# define DL_SYSINFO_DEFAULT ((uintptr_t) &_dl_sysinfo_break)
37# define DL_SYSINFO_IMPLEMENTATION \
38 asm (".text\n\t" \
39 ".hidden _dl_sysinfo_break\n\t" \
40 ".proc _dl_sysinfo_break\n\t" \
41 "_dl_sysinfo_break:\n\t" \
42 ".prologue\n\t" \
43 ".altrp b6\n\t" \
44 ".body\n\t" \
45 "break 0x100000;\n\t" \
46 "br.ret.sptk.many b6;\n\t" \
47 ".endp _dl_sysinfo_break\n\t" \
48 ".previous");
49#endif
50
51#endif /* dl-sysdep.h */
lib/libc/glibc/sysdeps/unix/sysv/linux/ia64/kernel-features.h deleted-37
......@@ -1,37 +0,0 @@
1/* Set flags signalling availability of kernel features based on given
2 kernel version number.
3 Copyright (C) 2010-2023 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 _KERNEL_FEATURES_H
21#define _KERNEL_FEATURES_H 1
22
23#include_next <kernel-features.h>
24
25#define __ASSUME_RECV_SYSCALL 1
26#define __ASSUME_SEND_SYSCALL 1
27#define __ASSUME_ACCEPT4_SYSCALL 1
28
29/* Support for statx was added in 5.1. */
30#if __LINUX_KERNEL_VERSION < 0x050100
31# undef __ASSUME_STATX
32#endif
33
34#undef __ASSUME_CLONE_DEFAULT
35#define __ASSUME_CLONE2
36
37#endif /* _KERNEL_FEATURES_H */
lib/libc/glibc/sysdeps/unix/sysv/linux/ia64/sysdep.h deleted-327
......@@ -1,327 +0,0 @@
1/* Copyright (C) 1999-2023 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 _LINUX_IA64_SYSDEP_H
19#define _LINUX_IA64_SYSDEP_H 1
20
21#include <sysdeps/unix/sysdep.h>
22#include <sysdeps/unix/sysv/linux/sysdep.h>
23#include <sysdeps/ia64/sysdep.h>
24#include <dl-sysdep.h>
25#include <tls.h>
26#include <asm/break.h>
27
28/* In order to get __set_errno() definition in INLINE_SYSCALL. */
29#ifndef __ASSEMBLER__
30#include <errno.h>
31#endif
32
33/* As of GAS v2.4.90.0.7, including a ".align" directive inside a
34 function will cause bad unwind info to be emitted (GAS doesn't know
35 how to account for the padding introduced by the .align directive).
36 Turning on this macro will work around this bug by introducing the
37 necessary padding explicitly. */
38#define GAS_ALIGN_BREAKS_UNWIND_INFO
39
40/* For Linux we can use the system call table in the header file
41 /usr/include/asm/unistd.h
42 of the kernel. But these symbols do not follow the SYS_* syntax
43 so we have to redefine the `SYS_ify' macro here. */
44#undef SYS_ify
45#define SYS_ify(syscall_name) __NR_##syscall_name
46
47#ifndef IA64_USE_NEW_STUB
48# if defined USE_DL_SYSINFO && IS_IN (libc)
49# define IA64_USE_NEW_STUB 1
50# else
51# define IA64_USE_NEW_STUB 0
52# endif
53#endif
54#if IA64_USE_NEW_STUB && !USE_DL_SYSINFO
55# error IA64_USE_NEW_STUB needs USE_DL_SYSINFO
56#endif
57
58#ifdef __ASSEMBLER__
59
60#undef CALL_MCOUNT
61#ifdef PROF
62# define CALL_MCOUNT \
63 .data; \
641: data8 0; /* XXX fixme: use .xdata8 once labels work */ \
65 .previous; \
66 .prologue; \
67 .save ar.pfs, r40; \
68 alloc out0 = ar.pfs, 8, 0, 4, 0; \
69 mov out1 = gp; \
70 .save rp, out2; \
71 mov out2 = rp; \
72 .body; \
73 ;; \
74 addl out3 = @ltoff(1b), gp; \
75 br.call.sptk.many rp = _mcount \
76 ;;
77#else
78# define CALL_MCOUNT /* Do nothing. */
79#endif
80
81/* Linux uses a negative return value to indicate syscall errors, unlike
82 most Unices, which use the condition codes' carry flag.
83
84 Since version 2.1 the return value of a system call might be negative
85 even if the call succeeded. E.g., the `lseek' system call might return
86 a large offset. Therefore we must not anymore test for < 0, but test
87 for a real error by making sure the value in %d0 is a real error
88 number. Linus said he will make sure the no syscall returns a value
89 in -1 .. -4095 as a valid result so we can safely test with -4095. */
90
91/* We don't want the label for the error handler to be visible in the symbol
92 table when we define it here. */
93#undef SYSCALL_ERROR_LABEL
94#define SYSCALL_ERROR_LABEL __syscall_error
95
96#undef PSEUDO
97#define PSEUDO(name, syscall_name, args) \
98 ENTRY(name) \
99 DO_CALL (SYS_ify(syscall_name)); \
100 cmp.eq p6,p0=-1,r10; \
101(p6) br.cond.spnt.few __syscall_error;
102
103#define DO_CALL_VIA_BREAK(num) \
104 mov r15=num; \
105 break __IA64_BREAK_SYSCALL
106
107#if IA64_USE_NEW_STUB
108# ifdef SHARED
109# define DO_CALL(num) \
110 .prologue; \
111 adds r2 = SYSINFO_OFFSET, r13;; \
112 ld8 r2 = [r2]; \
113 .save ar.pfs, r11; \
114 mov r11 = ar.pfs;; \
115 .body; \
116 mov r15 = num; \
117 mov b7 = r2; \
118 br.call.sptk.many b6 = b7;; \
119 .restore sp; \
120 mov ar.pfs = r11; \
121 .prologue; \
122 .body
123# else /* !SHARED */
124# define DO_CALL(num) \
125 .prologue; \
126 mov r15 = num; \
127 movl r2 = _dl_sysinfo;; \
128 ld8 r2 = [r2]; \
129 .save ar.pfs, r11; \
130 mov r11 = ar.pfs;; \
131 .body; \
132 mov b7 = r2; \
133 br.call.sptk.many b6 = b7;; \
134 .restore sp; \
135 mov ar.pfs = r11; \
136 .prologue; \
137 .body
138# endif
139#else
140# define DO_CALL(num) DO_CALL_VIA_BREAK(num)
141#endif
142
143#undef PSEUDO_END
144#define PSEUDO_END(name) .endp C_SYMBOL_NAME(name);
145
146#undef PSEUDO_NOERRNO
147#define PSEUDO_NOERRNO(name, syscall_name, args) \
148 ENTRY(name) \
149 DO_CALL (SYS_ify(syscall_name));
150
151#undef PSEUDO_END_NOERRNO
152#define PSEUDO_END_NOERRNO(name) .endp C_SYMBOL_NAME(name);
153
154#undef PSEUDO_ERRVAL
155#define PSEUDO_ERRVAL(name, syscall_name, args) \
156 ENTRY(name) \
157 DO_CALL (SYS_ify(syscall_name)); \
158 cmp.eq p6,p0=-1,r10; \
159(p6) mov r10=r8;
160
161
162#undef PSEUDO_END_ERRVAL
163#define PSEUDO_END_ERRVAL(name) .endp C_SYMBOL_NAME(name);
164
165#undef END
166#define END(name) \
167 .size C_SYMBOL_NAME(name), . - C_SYMBOL_NAME(name) ; \
168 .endp C_SYMBOL_NAME(name)
169
170#define ret br.ret.sptk.few b0
171#define ret_NOERRNO ret
172#define ret_ERRVAL ret
173
174#else /* not __ASSEMBLER__ */
175
176#undef HAVE_INTERNAL_BRK_ADDR_SYMBOL
177#define HAVE_INTERNAL_BRK_ADDR_SYMBOL 1
178
179#define BREAK_INSN_1(num) "break " #num ";;\n\t"
180#define BREAK_INSN(num) BREAK_INSN_1(num)
181
182/* On IA-64 we have stacked registers for passing arguments. The
183 "out" registers end up being the called function's "in"
184 registers.
185
186 Also, since we have plenty of registers we have two return values
187 from a syscall. r10 is set to -1 on error, whilst r8 contains the
188 (non-negative) errno on error or the return value on success.
189 */
190
191#if IA64_USE_NEW_STUB
192
193# define INTERNAL_SYSCALL_NCS(name, nr, args...) \
194({ \
195 LOAD_ARGS_##nr (args) \
196 register long _r8 __asm ("r8"); \
197 register long _r10 __asm ("r10"); \
198 register long _r15 __asm ("r15") = name; \
199 register void *_b7 __asm ("b7") = ((tcbhead_t *)__thread_self)->__private;\
200 LOAD_REGS_##nr \
201 /* \
202 * Don't specify any unwind info here. We mark ar.pfs as \
203 * clobbered. This will force the compiler to save ar.pfs \
204 * somewhere and emit appropriate unwind info for that save. \
205 */ \
206 __asm __volatile ("br.call.sptk.many b6=%0;;\n" \
207 : "=b"(_b7), "=r" (_r8), "=r" (_r10), "=r" (_r15) \
208 ASM_OUTARGS_##nr \
209 : "0" (_b7), "3" (_r15) ASM_ARGS_##nr \
210 : "memory", "ar.pfs" ASM_CLOBBERS_##nr); \
211 _r10 == -1 ? -_r8 : _r8; \
212})
213
214#else /* !IA64_USE_NEW_STUB */
215
216# define INTERNAL_SYSCALL_NCS(name, nr, args...) \
217({ \
218 LOAD_ARGS_##nr (args) \
219 register long _r8 asm ("r8"); \
220 register long _r10 asm ("r10"); \
221 register long _r15 asm ("r15") = name; \
222 LOAD_REGS_##nr \
223 __asm __volatile (BREAK_INSN (__IA64_BREAK_SYSCALL) \
224 : "=r" (_r8), "=r" (_r10), "=r" (_r15) \
225 ASM_OUTARGS_##nr \
226 : "2" (_r15) ASM_ARGS_##nr \
227 : "memory" ASM_CLOBBERS_##nr); \
228 _r10 == -1 ? -_r8 : _r8; \
229})
230
231#endif /* !IA64_USE_NEW_STUB */
232
233#define INTERNAL_SYSCALL(name, nr, args...) \
234 INTERNAL_SYSCALL_NCS (__NR_##name, nr, ##args)
235
236#define LOAD_ARGS_0()
237#define LOAD_REGS_0
238#define LOAD_ARGS_1(a1) \
239 long _arg1 = (long) (a1); \
240 LOAD_ARGS_0 ()
241#define LOAD_REGS_1 \
242 register long _out0 asm ("out0") = _arg1; \
243 LOAD_REGS_0
244#define LOAD_ARGS_2(a1, a2) \
245 long _arg2 = (long) (a2); \
246 LOAD_ARGS_1 (a1)
247#define LOAD_REGS_2 \
248 register long _out1 asm ("out1") = _arg2; \
249 LOAD_REGS_1
250#define LOAD_ARGS_3(a1, a2, a3) \
251 long _arg3 = (long) (a3); \
252 LOAD_ARGS_2 (a1, a2)
253#define LOAD_REGS_3 \
254 register long _out2 asm ("out2") = _arg3; \
255 LOAD_REGS_2
256#define LOAD_ARGS_4(a1, a2, a3, a4) \
257 long _arg4 = (long) (a4); \
258 LOAD_ARGS_3 (a1, a2, a3)
259#define LOAD_REGS_4 \
260 register long _out3 asm ("out3") = _arg4; \
261 LOAD_REGS_3
262#define LOAD_ARGS_5(a1, a2, a3, a4, a5) \
263 long _arg5 = (long) (a5); \
264 LOAD_ARGS_4 (a1, a2, a3, a4)
265#define LOAD_REGS_5 \
266 register long _out4 asm ("out4") = _arg5; \
267 LOAD_REGS_4
268#define LOAD_ARGS_6(a1, a2, a3, a4, a5, a6) \
269 long _arg6 = (long) (a6); \
270 LOAD_ARGS_5 (a1, a2, a3, a4, a5)
271#define LOAD_REGS_6 \
272 register long _out5 asm ("out5") = _arg6; \
273 LOAD_REGS_5
274
275#define ASM_OUTARGS_0
276#define ASM_OUTARGS_1 ASM_OUTARGS_0, "=r" (_out0)
277#define ASM_OUTARGS_2 ASM_OUTARGS_1, "=r" (_out1)
278#define ASM_OUTARGS_3 ASM_OUTARGS_2, "=r" (_out2)
279#define ASM_OUTARGS_4 ASM_OUTARGS_3, "=r" (_out3)
280#define ASM_OUTARGS_5 ASM_OUTARGS_4, "=r" (_out4)
281#define ASM_OUTARGS_6 ASM_OUTARGS_5, "=r" (_out5)
282
283#if IA64_USE_NEW_STUB
284#define ASM_ARGS_0
285#define ASM_ARGS_1 ASM_ARGS_0, "4" (_out0)
286#define ASM_ARGS_2 ASM_ARGS_1, "5" (_out1)
287#define ASM_ARGS_3 ASM_ARGS_2, "6" (_out2)
288#define ASM_ARGS_4 ASM_ARGS_3, "7" (_out3)
289#define ASM_ARGS_5 ASM_ARGS_4, "8" (_out4)
290#define ASM_ARGS_6 ASM_ARGS_5, "9" (_out5)
291#else
292#define ASM_ARGS_0
293#define ASM_ARGS_1 ASM_ARGS_0, "3" (_out0)
294#define ASM_ARGS_2 ASM_ARGS_1, "4" (_out1)
295#define ASM_ARGS_3 ASM_ARGS_2, "5" (_out2)
296#define ASM_ARGS_4 ASM_ARGS_3, "6" (_out3)
297#define ASM_ARGS_5 ASM_ARGS_4, "7" (_out4)
298#define ASM_ARGS_6 ASM_ARGS_5, "8" (_out5)
299#endif
300
301#define ASM_CLOBBERS_0 ASM_CLOBBERS_1, "out0"
302#define ASM_CLOBBERS_1 ASM_CLOBBERS_2, "out1"
303#define ASM_CLOBBERS_2 ASM_CLOBBERS_3, "out2"
304#define ASM_CLOBBERS_3 ASM_CLOBBERS_4, "out3"
305#define ASM_CLOBBERS_4 ASM_CLOBBERS_5, "out4"
306#define ASM_CLOBBERS_5 ASM_CLOBBERS_6, "out5"
307#define ASM_CLOBBERS_6_COMMON , "out6", "out7", \
308 /* Non-stacked integer registers, minus r8, r10, r15. */ \
309 "r2", "r3", "r9", "r11", "r13", "r14", "r16", "r17", "r18", \
310 "r19", "r20", "r21", "r22", "r23", "r24", "r25", "r26", "r27", \
311 "r28", "r29", "r30", "r31", \
312 /* Predicate registers. */ \
313 "p6", "p7", "p8", "p9", "p10", "p11", "p12", "p13", "p14", "p15", \
314 /* Non-rotating fp registers. */ \
315 "f6", "f7", "f8", "f9", "f10", "f11", "f12", "f13", "f14", "f15", \
316 /* Branch registers. */ \
317 "b6"
318
319#if IA64_USE_NEW_STUB
320# define ASM_CLOBBERS_6 ASM_CLOBBERS_6_COMMON
321#else
322# define ASM_CLOBBERS_6 ASM_CLOBBERS_6_COMMON , "b7"
323#endif
324
325#endif /* not __ASSEMBLER__ */
326
327#endif /* linux/ia64/sysdep.h */
lib/libc/glibc/sysdeps/unix/sysv/linux/include/sys/timex.h+1-1
......@@ -1,5 +1,5 @@
11/* Internal declarations for sys/timex.h.
2 Copyright (C) 2014-2023 Free Software Foundation, Inc.
2 Copyright (C) 2014-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/kernel-features.h+10-5
......@@ -1,6 +1,6 @@
11/* Set flags signalling availability of kernel features based on given
22 kernel version number.
3 Copyright (C) 1999-2023 Free Software Foundation, Inc.
3 Copyright (C) 1999-2024 Free Software Foundation, Inc.
44 This file is part of the GNU C Library.
55
66 The GNU C Library is free software; you can redistribute it and/or
......@@ -46,7 +46,7 @@
4646#define __ASSUME_STATFS64 1
4747
4848/* pselect/ppoll were introduced just after 2.6.16-rc1. On x86_64 and
49 SH this appeared first in 2.6.19-rc1, on ia64 in 2.6.22-rc1. */
49 SH this appeared first in 2.6.19-rc1. */
5050#define __ASSUME_PSELECT 1
5151
5252/* Support for inter-process robust mutexes was added in 2.6.17 (but
......@@ -146,8 +146,6 @@
146146 unsigned long tls)
147147
148148 The fourth variant is intended to be used as the default for newer ports,
149 Also IA64 uses the third variant but with __NR_clone2 instead of
150 __NR_clone.
151149
152150 The macros names to define the variant used for the architecture is
153151 similar to kernel:
......@@ -156,7 +154,6 @@
156154 - __ASSUME_CLONE_BACKWARDS2: for variant 2 (s390).
157155 - __ASSUME_CLONE_BACKWARDS3: for variant 3 (microblaze).
158156 - __ASSUME_CLONE_DEFAULT: for variant 4.
159 - __ASSUME_CLONE2: for clone2 with variant 3 (ia64).
160157 */
161158
162159#define __ASSUME_CLONE_DEFAULT 1
......@@ -252,4 +249,12 @@
252249# define __ASSUME_CLONE3 0
253250#endif
254251
252/* The fchmodat2 system call was introduced across all architectures
253 in Linux 6.6. */
254#if __LINUX_KERNEL_VERSION >= 0x060600
255# define __ASSUME_FCHMODAT2 1
256#else
257# define __ASSUME_FCHMODAT2 0
258#endif
259
255260#endif /* kernel-features.h */
lib/libc/glibc/sysdeps/unix/sysv/linux/kernel_stat.h+1-1
......@@ -1,5 +1,5 @@
11/* Internal definitions for stat functions.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/lstat.c+1-1
......@@ -1,5 +1,5 @@
11/* Get file status. Linux version.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/lstat64.c+1-1
......@@ -1,5 +1,5 @@
11/* Get file status.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/m68k/coldfire/sysdep.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2010-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2010-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/m68k/kernel-features.h+1-1
......@@ -1,6 +1,6 @@
11/* Set flags signalling availability of kernel features based on given
22 kernel version number.
3 Copyright (C) 2008-2023 Free Software Foundation, Inc.
3 Copyright (C) 2008-2024 Free Software Foundation, Inc.
44 This file is part of the GNU C Library.
55
66 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/m68k/m680x0/sysdep.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2010-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2010-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/m68k/sysdep.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1996-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1996-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/microblaze/kernel-features.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2011-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2011-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/microblaze/kernel_stat.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition of `struct stat' used in the kernel
2 Copyright (C) 2013-2023 Free Software Foundation, Inc.
2 Copyright (C) 2013-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
lib/libc/glibc/sysdeps/unix/sysv/linux/microblaze/sysdep.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2000-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2000-2024 Free Software Foundation, Inc.
22
33 This file is part of the GNU C Library.
44
lib/libc/glibc/sysdeps/unix/sysv/linux/mips/kernel-features.h+1-1
......@@ -1,6 +1,6 @@
11/* Set flags signalling availability of kernel features based on given
22 kernel version number.
3 Copyright (C) 1999-2023 Free Software Foundation, Inc.
3 Copyright (C) 1999-2024 Free Software Foundation, Inc.
44 This file is part of the GNU C Library.
55
66 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/mips/mips32/sysdep.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2000-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2000-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/mips/mips64/kstat_cp.h+1-1
......@@ -1,5 +1,5 @@
11/* Struct stat/stat64 to stat/stat64 conversion for Linux.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/mips/mips64/sysdep.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2000-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2000-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/mips/sysdep.h+3-1
......@@ -1,5 +1,5 @@
11/* Syscall definitions, Linux MIPS generic version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
......@@ -28,3 +28,5 @@
2828#endif
2929#define HAVE_GETTIMEOFDAY_VSYSCALL "__vdso_gettimeofday"
3030#define HAVE_CLOCK_GETRES_VSYSCALL "__vdso_clock_getres"
31
32#define HAVE_CLONE3_WRAPPER 1
lib/libc/glibc/sysdeps/unix/sysv/linux/mknodat.c+1-1
......@@ -1,5 +1,5 @@
11/* Create a special or ordinary file. Linux version.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/nios2/kernel_stat.h+1-1
......@@ -1,5 +1,5 @@
11/* Internal definitions for stat functions. Linux/nios2.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/nios2/sysdep.h+1-1
......@@ -1,5 +1,5 @@
11/* Assembler macros for Nios II.
2 Copyright (C) 2000-2023 Free Software Foundation, Inc.
2 Copyright (C) 2000-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/powerpc/kernel-features.h+1-1
......@@ -1,6 +1,6 @@
11/* Set flags signalling availability of kernel features based on given
22 kernel version number. PowerPC version.
3 Copyright (C) 1999-2023 Free Software Foundation, Inc.
3 Copyright (C) 1999-2024 Free Software Foundation, Inc.
44 This file is part of the GNU C Library.
55
66 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition of `struct stat' used in the kernel.
2 Copyright (C) 1997-2023 Free Software Foundation, Inc.
2 Copyright (C) 1997-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1992-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1992-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/powerpc/sysdep.h+1-1
......@@ -1,5 +1,5 @@
11/* Syscall definitions, Linux PowerPC generic version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/riscv/kernel-features.h+1-1
......@@ -1,6 +1,6 @@
11/* Set flags signalling availability of kernel features based on given
22 kernel version number. RISC-V version.
3 Copyright (C) 2018-2023 Free Software Foundation, Inc.
3 Copyright (C) 2018-2024 Free Software Foundation, Inc.
44 This file is part of the GNU C Library.
55
66 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/s390/bits/typesizes.h+1-1
......@@ -1,5 +1,5 @@
11/* bits/typesizes.h -- underlying types for *_t. Linux/s390 version.
2 Copyright (C) 2003-2023 Free Software Foundation, Inc.
2 Copyright (C) 2003-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/s390/kernel-features.h+1-1
......@@ -1,6 +1,6 @@
11/* Set flags signalling availability of kernel features based on given
22 kernel version number. S/390 version.
3 Copyright (C) 1999-2023 Free Software Foundation, Inc.
3 Copyright (C) 1999-2024 Free Software Foundation, Inc.
44 This file is part of the GNU C Library.
55
66 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2000-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2000-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h+1-1
......@@ -1,5 +1,5 @@
11/* Assembler macros for 64 bit S/390.
2 Copyright (C) 2001-2023 Free Software Foundation, Inc.
2 Copyright (C) 2001-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/s390/sys/elf.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2000-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2000-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/s390/sysdep.h+1-1
......@@ -1,5 +1,5 @@
11/* Syscall definitions, Linux s390 version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/sh/kernel-features.h+5-1
......@@ -1,6 +1,6 @@
11/* Set flags signalling availability of kernel features based on given
22 kernel version number. SH version.
3 Copyright (C) 1999-2023 Free Software Foundation, Inc.
3 Copyright (C) 1999-2024 Free Software Foundation, Inc.
44 This file is part of the GNU C Library.
55
66 The GNU C Library is free software; you can redistribute it and/or
......@@ -55,4 +55,8 @@
5555# undef __ASSUME_STATX
5656#endif
5757
58/* sh does not provide clone3. */
59#undef __ASSUME_CLONE3
60#define __ASSUME_CLONE3 0
61
5862#endif
lib/libc/glibc/sysdeps/unix/sysv/linux/sh/sysdep.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1992-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1992-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/single-thread.h+1-1
......@@ -1,5 +1,5 @@
11/* Single thread optimization, Linux version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/sparc/bits/typesizes.h+1-1
......@@ -1,5 +1,5 @@
11/* bits/typesizes.h -- underlying types for *_t. Linux/SPARC version.
2 Copyright (C) 2002-2023 Free Software Foundation, Inc.
2 Copyright (C) 2002-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/sparc/kernel-features.h+5-1
......@@ -1,6 +1,6 @@
11/* Set flags signalling availability of kernel features based on given
22 kernel version number. SPARC version.
3 Copyright (C) 1999-2023 Free Software Foundation, Inc.
3 Copyright (C) 1999-2024 Free Software Foundation, Inc.
44 This file is part of the GNU C Library.
55
66 The GNU C Library is free software; you can redistribute it and/or
......@@ -87,3 +87,7 @@
8787 (INLINE_CLONE_SYSCALL). */
8888#undef __ASSUME_CLONE_DEFAULT
8989#define __ASSUME_CLONE_BACKWARDS 1
90
91/* sparc does not provide clone3. */
92#undef __ASSUME_CLONE3
93#define __ASSUME_CLONE3 0
lib/libc/glibc/sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/sparc/sparc64/kstat_cp.h+1-1
......@@ -1,5 +1,5 @@
11/* Struct kernel_stat64 to stat64. Linux/SPARC version.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/sparc/sysdep.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2000-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2000-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/stat.c+1-1
......@@ -1,5 +1,5 @@
11/* Get file status. Linux version.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/stat64.c+1-1
......@@ -1,5 +1,5 @@
11/* Get file status. Linux version.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/stat_t64_cp.c+1-1
......@@ -1,5 +1,5 @@
11/* Struct stat/stat64 to stat/stat64 conversion for Linux.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/stat_t64_cp.h+1-1
......@@ -1,5 +1,5 @@
11/* Copy to/from struct stat with and without 64-bit time_t support.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/struct_stat_time64.h+1-1
......@@ -1,5 +1,5 @@
11/* Struct stat with 64-bit time support.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/sys/syscall.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1995-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1995-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/sys/timex.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1995-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1995-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/sysdep.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2015-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2015-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/x86/bits/typesizes.h+1-1
......@@ -1,5 +1,5 @@
11/* bits/typesizes.h -- underlying types for *_t. Linux/x86-64 version.
2 Copyright (C) 2012-2023 Free Software Foundation, Inc.
2 Copyright (C) 2012-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/x86/sys/elf.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1998-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1998-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/x86_64/kernel-features.h+1-1
......@@ -1,6 +1,6 @@
11/* Set flags signalling availability of kernel features based on given
22 kernel version number. x86-64 version.
3 Copyright (C) 1999-2023 Free Software Foundation, Inc.
3 Copyright (C) 1999-2024 Free Software Foundation, Inc.
44 This file is part of the GNU C Library.
55
66 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/x86_64/sysdep.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2001-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2001-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/sysv/linux/x86_64/x32/sysdep.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2012-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2012-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/unix/x86_64/sysdep.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/wordsize-32/divdi3-symbol-hacks.h+1-1
......@@ -1,5 +1,5 @@
11/* Hacks needed for divdi3 symbol manipulation.
2 Copyright (C) 2004-2023 Free Software Foundation, Inc.
2 Copyright (C) 2004-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/x86/nptl/bits/pthreadtypes-arch.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2002-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2002-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/x86/sysdep.h+1-45
......@@ -1,5 +1,5 @@
11/* Assembler macros for x86.
2 Copyright (C) 2017-2023 Free Software Foundation, Inc.
2 Copyright (C) 2017-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
......@@ -21,33 +21,6 @@
2121
2222#include <sysdeps/generic/sysdep.h>
2323
24/* __CET__ is defined by GCC with Control-Flow Protection values:
25
26enum cf_protection_level
27{
28 CF_NONE = 0,
29 CF_BRANCH = 1 << 0,
30 CF_RETURN = 1 << 1,
31 CF_FULL = CF_BRANCH | CF_RETURN,
32 CF_SET = 1 << 2
33};
34*/
35
36/* Set if CF_BRANCH (IBT) is enabled. */
37#define X86_FEATURE_1_IBT (1U << 0)
38/* Set if CF_RETURN (SHSTK) is enabled. */
39#define X86_FEATURE_1_SHSTK (1U << 1)
40
41#ifdef __CET__
42# define CET_ENABLED 1
43# define IBT_ENABLED (__CET__ & X86_FEATURE_1_IBT)
44# define SHSTK_ENABLED (__CET__ & X86_FEATURE_1_SHSTK)
45#else
46# define CET_ENABLED 0
47# define IBT_ENABLED 0
48# define SHSTK_ENABLED 0
49#endif
50
5124/* Offset for fxsave/xsave area used by _dl_runtime_resolve. Also need
5225 space to preserve RCX, RDX, RSI, RDI, R8, R9 and RAX. It must be
5326 aligned to 16 bytes for fxsave and 64 bytes for xsave. */
......@@ -66,27 +39,10 @@ enum cf_protection_level
6639
6740/* Syntactic details of assembler. */
6841
69#ifdef _CET_ENDBR
70# define _CET_NOTRACK notrack
71#else
72# define _CET_ENDBR
73# define _CET_NOTRACK
74#endif
75
7642/* ELF uses byte-counts for .align, most others use log2 of count of bytes. */
7743#define ALIGNARG(log2) 1<<log2
7844#define ASM_SIZE_DIRECTIVE(name) .size name,.-name;
7945
80/* Define an entry point visible from C. */
81#define ENTRY_P2ALIGN(name, alignment) \
82 .globl C_SYMBOL_NAME(name); \
83 .type C_SYMBOL_NAME(name),@function; \
84 .align ALIGNARG(alignment); \
85 C_LABEL(name) \
86 cfi_startproc; \
87 _CET_ENDBR; \
88 CALL_MCOUNT
89
9046/* Common entry 16 byte aligns. */
9147#define ENTRY(name) ENTRY_P2ALIGN (name, 4)
9248
lib/libc/glibc/sysdeps/x86_64/crti.S+1-1
......@@ -1,5 +1,5 @@
11/* Special .init and .fini section support for x86-64.
2 Copyright (C) 2012-2023 Free Software Foundation, Inc.
2 Copyright (C) 2012-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/x86_64/crtn.S+1-1
......@@ -1,5 +1,5 @@
11/* Special .init and .fini section support for x86-64.
2 Copyright (C) 2012-2023 Free Software Foundation, Inc.
2 Copyright (C) 2012-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/x86_64/start.S+1-1
......@@ -1,5 +1,5 @@
11/* Startup code compliant to the ELF x86-64 ABI.
2 Copyright (C) 2001-2023 Free Software Foundation, Inc.
2 Copyright (C) 2001-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/glibc/sysdeps/x86_64/sysdep.h+43-1
......@@ -1,5 +1,5 @@
11/* Assembler macros for x86-64.
2 Copyright (C) 2001-2023 Free Software Foundation, Inc.
2 Copyright (C) 2001-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
......@@ -26,10 +26,52 @@
2626# define LP_SIZE "8"
2727#endif
2828
29/* __CET__ is defined by GCC with Control-Flow Protection values:
30
31enum cf_protection_level
32{
33 CF_NONE = 0,
34 CF_BRANCH = 1 << 0,
35 CF_RETURN = 1 << 1,
36 CF_FULL = CF_BRANCH | CF_RETURN,
37 CF_SET = 1 << 2
38};
39*/
40
41/* Set if CF_BRANCH (IBT) is enabled. */
42#define X86_FEATURE_1_IBT (1U << 0)
43/* Set if CF_RETURN (SHSTK) is enabled. */
44#define X86_FEATURE_1_SHSTK (1U << 1)
45
46#ifdef __CET__
47# define CET_ENABLED 1
48# define SHSTK_ENABLED (__CET__ & X86_FEATURE_1_SHSTK)
49#else
50# define CET_ENABLED 0
51# define SHSTK_ENABLED 0
52#endif
53
2954#ifdef __ASSEMBLER__
3055
3156/* Syntactic details of assembler. */
3257
58#ifdef _CET_ENDBR
59# define _CET_NOTRACK notrack
60#else
61# define _CET_ENDBR
62# define _CET_NOTRACK
63#endif
64
65/* Define an entry point visible from C. */
66#define ENTRY_P2ALIGN(name, alignment) \
67 .globl C_SYMBOL_NAME(name); \
68 .type C_SYMBOL_NAME(name),@function; \
69 .align ALIGNARG(alignment); \
70 C_LABEL(name) \
71 cfi_startproc; \
72 _CET_ENDBR; \
73 CALL_MCOUNT
74
3375/* This macro is for setting proper CFI with DW_CFA_expression describing
3476 the register as saved relative to %rsp instead of relative to the CFA.
3577 Expression is DW_OP_drop, DW_OP_breg7 (%rsp is register 7), sleb128 offset
lib/libc/glibc/sysdeps/x86_64/x32/sysdep.h+1-1
......@@ -1,5 +1,5 @@
11/* Assembler macros for x32.
2 Copyright (C) 2012-2023 Free Software Foundation, Inc.
2 Copyright (C) 2012-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/aarch64-linux-gnu/bits/fcntl.h+1-1
......@@ -1,5 +1,5 @@
11/* O_*, F_*, FD_* bit values for the AArch64 Linux ABI.
2 Copyright (C) 2011-2023 Free Software Foundation, Inc.
2 Copyright (C) 2011-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
lib/libc/include/aarch64-linux-gnu/bits/fenv.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2004-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2004-2024 Free Software Foundation, Inc.
22
33 This file is part of the GNU C Library.
44
lib/libc/include/aarch64-linux-gnu/bits/floatn.h+1-1
......@@ -1,5 +1,5 @@
11/* Macros to control TS 18661-3 glibc features on ldbl-128 platforms.
2 Copyright (C) 2017-2023 Free Software Foundation, Inc.
2 Copyright (C) 2017-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/aarch64-linux-gnu/bits/fp-fast.h+1-1
......@@ -1,5 +1,5 @@
11/* Define FP_FAST_* macros. AArch64 version.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/aarch64-linux-gnu/bits/hwcap.h+4-2
......@@ -1,5 +1,5 @@
11/* Defines for bits in AT_HWCAP. AArch64 Linux version.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
......@@ -97,4 +97,6 @@
9797#define HWCAP2_SME_I16I32 (1UL << 39)
9898#define HWCAP2_SME_BI32I32 (1UL << 40)
9999#define HWCAP2_SME_B16B16 (1UL << 41)
100#define HWCAP2_SME_F16F16 (1UL << 42)
\ No newline at end of file
100#define HWCAP2_SME_F16F16 (1UL << 42)
101#define HWCAP2_MOPS (1UL << 43)
102#define HWCAP2_HBC (1UL << 44)
\ No newline at end of file
lib/libc/include/aarch64-linux-gnu/bits/link.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2005-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2005-2024 Free Software Foundation, Inc.
22
33 This file is part of the GNU C Library.
44
lib/libc/include/aarch64-linux-gnu/bits/long-double.h+1-1
......@@ -1,5 +1,5 @@
11/* Properties of long double type. ldbl-128 version.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/aarch64-linux-gnu/bits/math-vector.h+111-1
......@@ -1,6 +1,6 @@
11/* Platform-specific SIMD declarations of math functions.
22
3 Copyright (C) 2023 Free Software Foundation, Inc.
3 Copyright (C) 2023-2024 Free Software Foundation, Inc.
44 This file is part of the GNU C Library.
55
66 The GNU C Library is free software; you can redistribute it and/or
......@@ -25,6 +25,72 @@
2525/* Get default empty definitions for simd declarations. */
2626#include <bits/libm-simd-decl-stubs.h>
2727
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_asin
37# define __DECL_SIMD_asin __DECL_SIMD_aarch64
38# undef __DECL_SIMD_asinf
39# define __DECL_SIMD_asinf __DECL_SIMD_aarch64
40# undef __DECL_SIMD_atan
41# define __DECL_SIMD_atan __DECL_SIMD_aarch64
42# undef __DECL_SIMD_atanf
43# define __DECL_SIMD_atanf __DECL_SIMD_aarch64
44# undef __DECL_SIMD_atan2
45# define __DECL_SIMD_atan2 __DECL_SIMD_aarch64
46# undef __DECL_SIMD_atan2f
47# define __DECL_SIMD_atan2f __DECL_SIMD_aarch64
48# undef __DECL_SIMD_cos
49# define __DECL_SIMD_cos __DECL_SIMD_aarch64
50# undef __DECL_SIMD_cosf
51# define __DECL_SIMD_cosf __DECL_SIMD_aarch64
52# undef __DECL_SIMD_exp
53# define __DECL_SIMD_exp __DECL_SIMD_aarch64
54# undef __DECL_SIMD_expf
55# define __DECL_SIMD_expf __DECL_SIMD_aarch64
56# undef __DECL_SIMD_exp10
57# define __DECL_SIMD_exp10 __DECL_SIMD_aarch64
58# undef __DECL_SIMD_exp10f
59# define __DECL_SIMD_exp10f __DECL_SIMD_aarch64
60# undef __DECL_SIMD_exp2
61# define __DECL_SIMD_exp2 __DECL_SIMD_aarch64
62# undef __DECL_SIMD_exp2f
63# define __DECL_SIMD_exp2f __DECL_SIMD_aarch64
64# undef __DECL_SIMD_expm1
65# define __DECL_SIMD_expm1 __DECL_SIMD_aarch64
66# undef __DECL_SIMD_expm1f
67# define __DECL_SIMD_expm1f __DECL_SIMD_aarch64
68# undef __DECL_SIMD_log
69# define __DECL_SIMD_log __DECL_SIMD_aarch64
70# undef __DECL_SIMD_logf
71# define __DECL_SIMD_logf __DECL_SIMD_aarch64
72# undef __DECL_SIMD_log10
73# define __DECL_SIMD_log10 __DECL_SIMD_aarch64
74# undef __DECL_SIMD_log10f
75# define __DECL_SIMD_log10f __DECL_SIMD_aarch64
76# undef __DECL_SIMD_log1p
77# define __DECL_SIMD_log1p __DECL_SIMD_aarch64
78# undef __DECL_SIMD_log1pf
79# define __DECL_SIMD_log1pf __DECL_SIMD_aarch64
80# undef __DECL_SIMD_log2
81# define __DECL_SIMD_log2 __DECL_SIMD_aarch64
82# undef __DECL_SIMD_log2f
83# define __DECL_SIMD_log2f __DECL_SIMD_aarch64
84# undef __DECL_SIMD_sin
85# define __DECL_SIMD_sin __DECL_SIMD_aarch64
86# undef __DECL_SIMD_sinf
87# define __DECL_SIMD_sinf __DECL_SIMD_aarch64
88# undef __DECL_SIMD_tan
89# define __DECL_SIMD_tan __DECL_SIMD_aarch64
90# undef __DECL_SIMD_tanf
91# define __DECL_SIMD_tanf __DECL_SIMD_aarch64
92#endif
93
2894#if __GNUC_PREREQ(9, 0)
2995# define __ADVSIMD_VEC_MATH_SUPPORTED
3096typedef __Float32x4_t __f32x4_t;
......@@ -49,30 +115,74 @@ typedef __SVBool_t __sv_bool_t;
49115
50116# define __vpcs __attribute__ ((__aarch64_vector_pcs__))
51117
118__vpcs __f32x4_t _ZGVnN4vv_atan2f (__f32x4_t, __f32x4_t);
119__vpcs __f32x4_t _ZGVnN4v_acosf (__f32x4_t);
120__vpcs __f32x4_t _ZGVnN4v_asinf (__f32x4_t);
121__vpcs __f32x4_t _ZGVnN4v_atanf (__f32x4_t);
52122__vpcs __f32x4_t _ZGVnN4v_cosf (__f32x4_t);
53123__vpcs __f32x4_t _ZGVnN4v_expf (__f32x4_t);
124__vpcs __f32x4_t _ZGVnN4v_exp10f (__f32x4_t);
125__vpcs __f32x4_t _ZGVnN4v_exp2f (__f32x4_t);
126__vpcs __f32x4_t _ZGVnN4v_expm1f (__f32x4_t);
54127__vpcs __f32x4_t _ZGVnN4v_logf (__f32x4_t);
128__vpcs __f32x4_t _ZGVnN4v_log10f (__f32x4_t);
129__vpcs __f32x4_t _ZGVnN4v_log1pf (__f32x4_t);
130__vpcs __f32x4_t _ZGVnN4v_log2f (__f32x4_t);
55131__vpcs __f32x4_t _ZGVnN4v_sinf (__f32x4_t);
132__vpcs __f32x4_t _ZGVnN4v_tanf (__f32x4_t);
56133
134__vpcs __f64x2_t _ZGVnN2vv_atan2 (__f64x2_t, __f64x2_t);
135__vpcs __f64x2_t _ZGVnN2v_acos (__f64x2_t);
136__vpcs __f64x2_t _ZGVnN2v_asin (__f64x2_t);
137__vpcs __f64x2_t _ZGVnN2v_atan (__f64x2_t);
57138__vpcs __f64x2_t _ZGVnN2v_cos (__f64x2_t);
58139__vpcs __f64x2_t _ZGVnN2v_exp (__f64x2_t);
140__vpcs __f64x2_t _ZGVnN2v_exp10 (__f64x2_t);
141__vpcs __f64x2_t _ZGVnN2v_exp2 (__f64x2_t);
142__vpcs __f64x2_t _ZGVnN2v_expm1 (__f64x2_t);
59143__vpcs __f64x2_t _ZGVnN2v_log (__f64x2_t);
144__vpcs __f64x2_t _ZGVnN2v_log10 (__f64x2_t);
145__vpcs __f64x2_t _ZGVnN2v_log1p (__f64x2_t);
146__vpcs __f64x2_t _ZGVnN2v_log2 (__f64x2_t);
60147__vpcs __f64x2_t _ZGVnN2v_sin (__f64x2_t);
148__vpcs __f64x2_t _ZGVnN2v_tan (__f64x2_t);
61149
62150# undef __ADVSIMD_VEC_MATH_SUPPORTED
63151#endif /* __ADVSIMD_VEC_MATH_SUPPORTED */
64152
65153#ifdef __SVE_VEC_MATH_SUPPORTED
66154
155__sv_f32_t _ZGVsMxvv_atan2f (__sv_f32_t, __sv_f32_t, __sv_bool_t);
156__sv_f32_t _ZGVsMxv_acosf (__sv_f32_t, __sv_bool_t);
157__sv_f32_t _ZGVsMxv_asinf (__sv_f32_t, __sv_bool_t);
158__sv_f32_t _ZGVsMxv_atanf (__sv_f32_t, __sv_bool_t);
67159__sv_f32_t _ZGVsMxv_cosf (__sv_f32_t, __sv_bool_t);
68160__sv_f32_t _ZGVsMxv_expf (__sv_f32_t, __sv_bool_t);
161__sv_f32_t _ZGVsMxv_exp10f (__sv_f32_t, __sv_bool_t);
162__sv_f32_t _ZGVsMxv_exp2f (__sv_f32_t, __sv_bool_t);
163__sv_f32_t _ZGVsMxv_expm1f (__sv_f32_t, __sv_bool_t);
69164__sv_f32_t _ZGVsMxv_logf (__sv_f32_t, __sv_bool_t);
165__sv_f32_t _ZGVsMxv_log10f (__sv_f32_t, __sv_bool_t);
166__sv_f32_t _ZGVsMxv_log1pf (__sv_f32_t, __sv_bool_t);
167__sv_f32_t _ZGVsMxv_log2f (__sv_f32_t, __sv_bool_t);
70168__sv_f32_t _ZGVsMxv_sinf (__sv_f32_t, __sv_bool_t);
169__sv_f32_t _ZGVsMxv_tanf (__sv_f32_t, __sv_bool_t);
71170
171__sv_f64_t _ZGVsMxvv_atan2 (__sv_f64_t, __sv_f64_t, __sv_bool_t);
172__sv_f64_t _ZGVsMxv_acos (__sv_f64_t, __sv_bool_t);
173__sv_f64_t _ZGVsMxv_asin (__sv_f64_t, __sv_bool_t);
174__sv_f64_t _ZGVsMxv_atan (__sv_f64_t, __sv_bool_t);
72175__sv_f64_t _ZGVsMxv_cos (__sv_f64_t, __sv_bool_t);
73176__sv_f64_t _ZGVsMxv_exp (__sv_f64_t, __sv_bool_t);
177__sv_f64_t _ZGVsMxv_exp10 (__sv_f64_t, __sv_bool_t);
178__sv_f64_t _ZGVsMxv_exp2 (__sv_f64_t, __sv_bool_t);
179__sv_f64_t _ZGVsMxv_expm1 (__sv_f64_t, __sv_bool_t);
74180__sv_f64_t _ZGVsMxv_log (__sv_f64_t, __sv_bool_t);
181__sv_f64_t _ZGVsMxv_log10 (__sv_f64_t, __sv_bool_t);
182__sv_f64_t _ZGVsMxv_log1p (__sv_f64_t, __sv_bool_t);
183__sv_f64_t _ZGVsMxv_log2 (__sv_f64_t, __sv_bool_t);
75184__sv_f64_t _ZGVsMxv_sin (__sv_f64_t, __sv_bool_t);
185__sv_f64_t _ZGVsMxv_tan (__sv_f64_t, __sv_bool_t);
76186
77187# undef __SVE_VEC_MATH_SUPPORTED
78188#endif /* __SVE_VEC_MATH_SUPPORTED */
\ No newline at end of file
lib/libc/include/aarch64-linux-gnu/bits/mman.h+1-1
......@@ -1,5 +1,5 @@
11/* Definitions for POSIX memory map interface. Linux/AArch64 version.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/aarch64-linux-gnu/bits/procfs.h+1-1
......@@ -1,5 +1,5 @@
11/* Types for registers for sys/procfs.h. AArch64 version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
lib/libc/include/aarch64-linux-gnu/bits/pthread_stack_min.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition of PTHREAD_STACK_MIN. Linux/aarch64 version.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
lib/libc/include/aarch64-linux-gnu/bits/pthreadtypes-arch.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2002-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2002-2024 Free Software Foundation, Inc.
22
33 This file is part of the GNU C Library.
44
lib/libc/include/aarch64-linux-gnu/bits/rseq.h+1-1
......@@ -1,5 +1,5 @@
11/* Restartable Sequences Linux aarch64 architecture header.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33
44 The GNU C Library is free software; you can redistribute it and/or
55 modify it under the terms of the GNU Lesser General Public
lib/libc/include/aarch64-linux-gnu/bits/semaphore.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2002-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2002-2024 Free Software Foundation, Inc.
22
33 This file is part of the GNU C Library.
44
lib/libc/include/aarch64-linux-gnu/bits/setjmp.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22
33 This file is part of the GNU C Library.
44
lib/libc/include/aarch64-linux-gnu/bits/sigstack.h+1-1
......@@ -1,5 +1,5 @@
11/* sigstack, sigaltstack definitions.
2 Copyright (C) 2015-2023 Free Software Foundation, Inc.
2 Copyright (C) 2015-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/aarch64-linux-gnu/bits/struct_rwlock.h+1-1
......@@ -1,5 +1,5 @@
11/* AArch64 internal rwlock struct definitions.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
lib/libc/include/aarch64-linux-gnu/bits/struct_stat.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition for struct stat.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/aarch64-linux-gnu/bits/timesize.h+1-1
......@@ -1,5 +1,5 @@
11/* Bit size of the time_t type at glibc build time, general case.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/aarch64-linux-gnu/bits/typesizes.h+1-1
......@@ -1,5 +1,5 @@
11/* bits/typesizes.h -- underlying types for *_t. For the generic Linux ABI.
2 Copyright (C) 2011-2023 Free Software Foundation, Inc.
2 Copyright (C) 2011-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/aarch64-linux-gnu/bits/wordsize.h+1-1
......@@ -1,6 +1,6 @@
11/* Determine the wordsize from the preprocessor defines.
22
3 Copyright (C) 2016-2023 Free Software Foundation, Inc.
3 Copyright (C) 2016-2024 Free Software Foundation, Inc.
44 This file is part of the GNU C Library.
55
66 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/aarch64-linux-gnu/finclude/math-vector-fortran.h created+47
......@@ -0,0 +1,47 @@
1! Platform-specific declarations of SIMD math functions for Fortran. -*- f90 -*-
2! Copyright (C) 2019-2024 Free Software Foundation, Inc.
3! This file is part of the GNU C Library.
4!
5! The GNU C Library is free software; you can redistribute it and/or
6! modify it under the terms of the GNU Lesser General Public
7! License as published by the Free Software Foundation; either
8! version 2.1 of the License, or (at your option) any later version.
9!
10! The GNU C Library is distributed in the hope that it will be useful,
11! but WITHOUT ANY WARRANTY; without even the implied warranty of
12! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13! Lesser General Public License for more details.
14!
15! You should have received a copy 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-linux-gnu/fpu_control.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1996-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1996-2024 Free Software Foundation, Inc.
22
33 This file is part of the GNU C Library.
44
lib/libc/include/aarch64-linux-gnu/gnu/lib-names-lp64.h-1
......@@ -7,7 +7,6 @@
77#define LD_SO "ld-linux-aarch64.so.1"
88#define LIBANL_SO "libanl.so.1"
99#define LIBBROKENLOCALE_SO "libBrokenLocale.so.1"
10#define LIBCRYPT_SO "libcrypt.so.1"
1110#define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0"
1211#define LIBC_SO "libc.so.6"
1312#define LIBDL_SO "libdl.so.2"
lib/libc/include/aarch64-linux-gnu/ieee754.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1992-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1992-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/aarch64-linux-gnu/sys/elf.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1996-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1996-2024 Free Software Foundation, Inc.
22
33 This file is part of the GNU C Library.
44
lib/libc/include/aarch64-linux-gnu/sys/ptrace.h+14-2
......@@ -1,5 +1,5 @@
11/* `ptrace' debugger support interface. Linux/AArch64 version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
......@@ -59,6 +59,8 @@ __BEGIN_DECLS
5959#undef PTRACE_SECCOMP_GET_METADATA
6060#undef PTRACE_GET_SYSCALL_INFO
6161#undef PTRACE_GET_RSEQ_CONFIGURATION
62#undef PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG
63#undef PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG
6264
6365/* Type of the REQUEST argument to `ptrace.' */
6466enum __ptrace_request
......@@ -195,8 +197,18 @@ enum __ptrace_request
195197#define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO
196198
197199 /* Get rseq configuration information. */
198 PTRACE_GET_RSEQ_CONFIGURATION = 0x420f
200 PTRACE_GET_RSEQ_CONFIGURATION = 0x420f,
199201#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
200212};
201213
202214
lib/libc/include/aarch64-linux-gnu/sys/ucontext.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1998-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1998-2024 Free Software Foundation, Inc.
22
33 This file is part of the GNU C Library.
44
lib/libc/include/aarch64-linux-gnu/sys/user.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2009-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2009-2024 Free Software Foundation, Inc.
22
33 This file is part of the GNU C Library.
44
lib/libc/include/aarch64_be-linux-gnu/bits/fcntl.h+1-1
......@@ -1,5 +1,5 @@
11/* O_*, F_*, FD_* bit values for the AArch64 Linux ABI.
2 Copyright (C) 2011-2023 Free Software Foundation, Inc.
2 Copyright (C) 2011-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
lib/libc/include/aarch64_be-linux-gnu/bits/fenv.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2004-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2004-2024 Free Software Foundation, Inc.
22
33 This file is part of the GNU C Library.
44
lib/libc/include/aarch64_be-linux-gnu/bits/floatn.h+1-1
......@@ -1,5 +1,5 @@
11/* Macros to control TS 18661-3 glibc features on ldbl-128 platforms.
2 Copyright (C) 2017-2023 Free Software Foundation, Inc.
2 Copyright (C) 2017-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/aarch64_be-linux-gnu/bits/fp-fast.h+1-1
......@@ -1,5 +1,5 @@
11/* Define FP_FAST_* macros. AArch64 version.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/aarch64_be-linux-gnu/bits/hwcap.h+4-2
......@@ -1,5 +1,5 @@
11/* Defines for bits in AT_HWCAP. AArch64 Linux version.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
......@@ -97,4 +97,6 @@
9797#define HWCAP2_SME_I16I32 (1UL << 39)
9898#define HWCAP2_SME_BI32I32 (1UL << 40)
9999#define HWCAP2_SME_B16B16 (1UL << 41)
100#define HWCAP2_SME_F16F16 (1UL << 42)
\ No newline at end of file
100#define HWCAP2_SME_F16F16 (1UL << 42)
101#define HWCAP2_MOPS (1UL << 43)
102#define HWCAP2_HBC (1UL << 44)
\ No newline at end of file
lib/libc/include/aarch64_be-linux-gnu/bits/link.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2005-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2005-2024 Free Software Foundation, Inc.
22
33 This file is part of the GNU C Library.
44
lib/libc/include/aarch64_be-linux-gnu/bits/long-double.h+1-1
......@@ -1,5 +1,5 @@
11/* Properties of long double type. ldbl-128 version.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/aarch64_be-linux-gnu/bits/math-vector.h+111-1
......@@ -1,6 +1,6 @@
11/* Platform-specific SIMD declarations of math functions.
22
3 Copyright (C) 2023 Free Software Foundation, Inc.
3 Copyright (C) 2023-2024 Free Software Foundation, Inc.
44 This file is part of the GNU C Library.
55
66 The GNU C Library is free software; you can redistribute it and/or
......@@ -25,6 +25,72 @@
2525/* Get default empty definitions for simd declarations. */
2626#include <bits/libm-simd-decl-stubs.h>
2727
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_asin
37# define __DECL_SIMD_asin __DECL_SIMD_aarch64
38# undef __DECL_SIMD_asinf
39# define __DECL_SIMD_asinf __DECL_SIMD_aarch64
40# undef __DECL_SIMD_atan
41# define __DECL_SIMD_atan __DECL_SIMD_aarch64
42# undef __DECL_SIMD_atanf
43# define __DECL_SIMD_atanf __DECL_SIMD_aarch64
44# undef __DECL_SIMD_atan2
45# define __DECL_SIMD_atan2 __DECL_SIMD_aarch64
46# undef __DECL_SIMD_atan2f
47# define __DECL_SIMD_atan2f __DECL_SIMD_aarch64
48# undef __DECL_SIMD_cos
49# define __DECL_SIMD_cos __DECL_SIMD_aarch64
50# undef __DECL_SIMD_cosf
51# define __DECL_SIMD_cosf __DECL_SIMD_aarch64
52# undef __DECL_SIMD_exp
53# define __DECL_SIMD_exp __DECL_SIMD_aarch64
54# undef __DECL_SIMD_expf
55# define __DECL_SIMD_expf __DECL_SIMD_aarch64
56# undef __DECL_SIMD_exp10
57# define __DECL_SIMD_exp10 __DECL_SIMD_aarch64
58# undef __DECL_SIMD_exp10f
59# define __DECL_SIMD_exp10f __DECL_SIMD_aarch64
60# undef __DECL_SIMD_exp2
61# define __DECL_SIMD_exp2 __DECL_SIMD_aarch64
62# undef __DECL_SIMD_exp2f
63# define __DECL_SIMD_exp2f __DECL_SIMD_aarch64
64# undef __DECL_SIMD_expm1
65# define __DECL_SIMD_expm1 __DECL_SIMD_aarch64
66# undef __DECL_SIMD_expm1f
67# define __DECL_SIMD_expm1f __DECL_SIMD_aarch64
68# undef __DECL_SIMD_log
69# define __DECL_SIMD_log __DECL_SIMD_aarch64
70# undef __DECL_SIMD_logf
71# define __DECL_SIMD_logf __DECL_SIMD_aarch64
72# undef __DECL_SIMD_log10
73# define __DECL_SIMD_log10 __DECL_SIMD_aarch64
74# undef __DECL_SIMD_log10f
75# define __DECL_SIMD_log10f __DECL_SIMD_aarch64
76# undef __DECL_SIMD_log1p
77# define __DECL_SIMD_log1p __DECL_SIMD_aarch64
78# undef __DECL_SIMD_log1pf
79# define __DECL_SIMD_log1pf __DECL_SIMD_aarch64
80# undef __DECL_SIMD_log2
81# define __DECL_SIMD_log2 __DECL_SIMD_aarch64
82# undef __DECL_SIMD_log2f
83# define __DECL_SIMD_log2f __DECL_SIMD_aarch64
84# undef __DECL_SIMD_sin
85# define __DECL_SIMD_sin __DECL_SIMD_aarch64
86# undef __DECL_SIMD_sinf
87# define __DECL_SIMD_sinf __DECL_SIMD_aarch64
88# undef __DECL_SIMD_tan
89# define __DECL_SIMD_tan __DECL_SIMD_aarch64
90# undef __DECL_SIMD_tanf
91# define __DECL_SIMD_tanf __DECL_SIMD_aarch64
92#endif
93
2894#if __GNUC_PREREQ(9, 0)
2995# define __ADVSIMD_VEC_MATH_SUPPORTED
3096typedef __Float32x4_t __f32x4_t;
......@@ -49,30 +115,74 @@ typedef __SVBool_t __sv_bool_t;
49115
50116# define __vpcs __attribute__ ((__aarch64_vector_pcs__))
51117
118__vpcs __f32x4_t _ZGVnN4vv_atan2f (__f32x4_t, __f32x4_t);
119__vpcs __f32x4_t _ZGVnN4v_acosf (__f32x4_t);
120__vpcs __f32x4_t _ZGVnN4v_asinf (__f32x4_t);
121__vpcs __f32x4_t _ZGVnN4v_atanf (__f32x4_t);
52122__vpcs __f32x4_t _ZGVnN4v_cosf (__f32x4_t);
53123__vpcs __f32x4_t _ZGVnN4v_expf (__f32x4_t);
124__vpcs __f32x4_t _ZGVnN4v_exp10f (__f32x4_t);
125__vpcs __f32x4_t _ZGVnN4v_exp2f (__f32x4_t);
126__vpcs __f32x4_t _ZGVnN4v_expm1f (__f32x4_t);
54127__vpcs __f32x4_t _ZGVnN4v_logf (__f32x4_t);
128__vpcs __f32x4_t _ZGVnN4v_log10f (__f32x4_t);
129__vpcs __f32x4_t _ZGVnN4v_log1pf (__f32x4_t);
130__vpcs __f32x4_t _ZGVnN4v_log2f (__f32x4_t);
55131__vpcs __f32x4_t _ZGVnN4v_sinf (__f32x4_t);
132__vpcs __f32x4_t _ZGVnN4v_tanf (__f32x4_t);
56133
134__vpcs __f64x2_t _ZGVnN2vv_atan2 (__f64x2_t, __f64x2_t);
135__vpcs __f64x2_t _ZGVnN2v_acos (__f64x2_t);
136__vpcs __f64x2_t _ZGVnN2v_asin (__f64x2_t);
137__vpcs __f64x2_t _ZGVnN2v_atan (__f64x2_t);
57138__vpcs __f64x2_t _ZGVnN2v_cos (__f64x2_t);
58139__vpcs __f64x2_t _ZGVnN2v_exp (__f64x2_t);
140__vpcs __f64x2_t _ZGVnN2v_exp10 (__f64x2_t);
141__vpcs __f64x2_t _ZGVnN2v_exp2 (__f64x2_t);
142__vpcs __f64x2_t _ZGVnN2v_expm1 (__f64x2_t);
59143__vpcs __f64x2_t _ZGVnN2v_log (__f64x2_t);
144__vpcs __f64x2_t _ZGVnN2v_log10 (__f64x2_t);
145__vpcs __f64x2_t _ZGVnN2v_log1p (__f64x2_t);
146__vpcs __f64x2_t _ZGVnN2v_log2 (__f64x2_t);
60147__vpcs __f64x2_t _ZGVnN2v_sin (__f64x2_t);
148__vpcs __f64x2_t _ZGVnN2v_tan (__f64x2_t);
61149
62150# undef __ADVSIMD_VEC_MATH_SUPPORTED
63151#endif /* __ADVSIMD_VEC_MATH_SUPPORTED */
64152
65153#ifdef __SVE_VEC_MATH_SUPPORTED
66154
155__sv_f32_t _ZGVsMxvv_atan2f (__sv_f32_t, __sv_f32_t, __sv_bool_t);
156__sv_f32_t _ZGVsMxv_acosf (__sv_f32_t, __sv_bool_t);
157__sv_f32_t _ZGVsMxv_asinf (__sv_f32_t, __sv_bool_t);
158__sv_f32_t _ZGVsMxv_atanf (__sv_f32_t, __sv_bool_t);
67159__sv_f32_t _ZGVsMxv_cosf (__sv_f32_t, __sv_bool_t);
68160__sv_f32_t _ZGVsMxv_expf (__sv_f32_t, __sv_bool_t);
161__sv_f32_t _ZGVsMxv_exp10f (__sv_f32_t, __sv_bool_t);
162__sv_f32_t _ZGVsMxv_exp2f (__sv_f32_t, __sv_bool_t);
163__sv_f32_t _ZGVsMxv_expm1f (__sv_f32_t, __sv_bool_t);
69164__sv_f32_t _ZGVsMxv_logf (__sv_f32_t, __sv_bool_t);
165__sv_f32_t _ZGVsMxv_log10f (__sv_f32_t, __sv_bool_t);
166__sv_f32_t _ZGVsMxv_log1pf (__sv_f32_t, __sv_bool_t);
167__sv_f32_t _ZGVsMxv_log2f (__sv_f32_t, __sv_bool_t);
70168__sv_f32_t _ZGVsMxv_sinf (__sv_f32_t, __sv_bool_t);
169__sv_f32_t _ZGVsMxv_tanf (__sv_f32_t, __sv_bool_t);
71170
171__sv_f64_t _ZGVsMxvv_atan2 (__sv_f64_t, __sv_f64_t, __sv_bool_t);
172__sv_f64_t _ZGVsMxv_acos (__sv_f64_t, __sv_bool_t);
173__sv_f64_t _ZGVsMxv_asin (__sv_f64_t, __sv_bool_t);
174__sv_f64_t _ZGVsMxv_atan (__sv_f64_t, __sv_bool_t);
72175__sv_f64_t _ZGVsMxv_cos (__sv_f64_t, __sv_bool_t);
73176__sv_f64_t _ZGVsMxv_exp (__sv_f64_t, __sv_bool_t);
177__sv_f64_t _ZGVsMxv_exp10 (__sv_f64_t, __sv_bool_t);
178__sv_f64_t _ZGVsMxv_exp2 (__sv_f64_t, __sv_bool_t);
179__sv_f64_t _ZGVsMxv_expm1 (__sv_f64_t, __sv_bool_t);
74180__sv_f64_t _ZGVsMxv_log (__sv_f64_t, __sv_bool_t);
181__sv_f64_t _ZGVsMxv_log10 (__sv_f64_t, __sv_bool_t);
182__sv_f64_t _ZGVsMxv_log1p (__sv_f64_t, __sv_bool_t);
183__sv_f64_t _ZGVsMxv_log2 (__sv_f64_t, __sv_bool_t);
75184__sv_f64_t _ZGVsMxv_sin (__sv_f64_t, __sv_bool_t);
185__sv_f64_t _ZGVsMxv_tan (__sv_f64_t, __sv_bool_t);
76186
77187# undef __SVE_VEC_MATH_SUPPORTED
78188#endif /* __SVE_VEC_MATH_SUPPORTED */
\ No newline at end of file
lib/libc/include/aarch64_be-linux-gnu/bits/mman.h+1-1
......@@ -1,5 +1,5 @@
11/* Definitions for POSIX memory map interface. Linux/AArch64 version.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/aarch64_be-linux-gnu/bits/procfs.h+1-1
......@@ -1,5 +1,5 @@
11/* Types for registers for sys/procfs.h. AArch64 version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
lib/libc/include/aarch64_be-linux-gnu/bits/pthread_stack_min.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition of PTHREAD_STACK_MIN. Linux/aarch64 version.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
lib/libc/include/aarch64_be-linux-gnu/bits/pthreadtypes-arch.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2002-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2002-2024 Free Software Foundation, Inc.
22
33 This file is part of the GNU C Library.
44
lib/libc/include/aarch64_be-linux-gnu/bits/rseq.h+1-1
......@@ -1,5 +1,5 @@
11/* Restartable Sequences Linux aarch64 architecture header.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33
44 The GNU C Library is free software; you can redistribute it and/or
55 modify it under the terms of the GNU Lesser General Public
lib/libc/include/aarch64_be-linux-gnu/bits/semaphore.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2002-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2002-2024 Free Software Foundation, Inc.
22
33 This file is part of the GNU C Library.
44
lib/libc/include/aarch64_be-linux-gnu/bits/setjmp.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22
33 This file is part of the GNU C Library.
44
lib/libc/include/aarch64_be-linux-gnu/bits/sigstack.h+1-1
......@@ -1,5 +1,5 @@
11/* sigstack, sigaltstack definitions.
2 Copyright (C) 2015-2023 Free Software Foundation, Inc.
2 Copyright (C) 2015-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/aarch64_be-linux-gnu/bits/struct_rwlock.h+1-1
......@@ -1,5 +1,5 @@
11/* AArch64 internal rwlock struct definitions.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
lib/libc/include/aarch64_be-linux-gnu/bits/struct_stat.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition for struct stat.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/aarch64_be-linux-gnu/bits/timesize.h+1-1
......@@ -1,5 +1,5 @@
11/* Bit size of the time_t type at glibc build time, general case.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/aarch64_be-linux-gnu/bits/typesizes.h+1-1
......@@ -1,5 +1,5 @@
11/* bits/typesizes.h -- underlying types for *_t. For the generic Linux ABI.
2 Copyright (C) 2011-2023 Free Software Foundation, Inc.
2 Copyright (C) 2011-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/aarch64_be-linux-gnu/bits/wordsize.h+1-1
......@@ -1,6 +1,6 @@
11/* Determine the wordsize from the preprocessor defines.
22
3 Copyright (C) 2016-2023 Free Software Foundation, Inc.
3 Copyright (C) 2016-2024 Free Software Foundation, Inc.
44 This file is part of the GNU C Library.
55
66 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/aarch64_be-linux-gnu/finclude/math-vector-fortran.h created+47
......@@ -0,0 +1,47 @@
1! Platform-specific declarations of SIMD math functions for Fortran. -*- f90 -*-
2! Copyright (C) 2019-2024 Free Software Foundation, Inc.
3! This file is part of the GNU C Library.
4!
5! The GNU C Library is free software; you can redistribute it and/or
6! modify it under the terms of the GNU Lesser General Public
7! License as published by the Free Software Foundation; either
8! version 2.1 of the License, or (at your option) any later version.
9!
10! The GNU C Library is distributed in the hope that it will be useful,
11! but WITHOUT ANY WARRANTY; without even the implied warranty of
12! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13! Lesser General Public License for more details.
14!
15! You should have received a copy 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+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1996-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1996-2024 Free Software Foundation, Inc.
22
33 This file is part of the GNU C Library.
44
lib/libc/include/aarch64_be-linux-gnu/gnu/lib-names-lp64_be.h-1
......@@ -7,7 +7,6 @@
77#define LD_SO "ld-linux-aarch64_be.so.1"
88#define LIBANL_SO "libanl.so.1"
99#define LIBBROKENLOCALE_SO "libBrokenLocale.so.1"
10#define LIBCRYPT_SO "libcrypt.so.1"
1110#define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0"
1211#define LIBC_SO "libc.so.6"
1312#define LIBDL_SO "libdl.so.2"
lib/libc/include/aarch64_be-linux-gnu/ieee754.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1992-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1992-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/aarch64_be-linux-gnu/sys/elf.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1996-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1996-2024 Free Software Foundation, Inc.
22
33 This file is part of the GNU C Library.
44
lib/libc/include/aarch64_be-linux-gnu/sys/ptrace.h+14-2
......@@ -1,5 +1,5 @@
11/* `ptrace' debugger support interface. Linux/AArch64 version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
......@@ -59,6 +59,8 @@ __BEGIN_DECLS
5959#undef PTRACE_SECCOMP_GET_METADATA
6060#undef PTRACE_GET_SYSCALL_INFO
6161#undef PTRACE_GET_RSEQ_CONFIGURATION
62#undef PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG
63#undef PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG
6264
6365/* Type of the REQUEST argument to `ptrace.' */
6466enum __ptrace_request
......@@ -195,8 +197,18 @@ enum __ptrace_request
195197#define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO
196198
197199 /* Get rseq configuration information. */
198 PTRACE_GET_RSEQ_CONFIGURATION = 0x420f
200 PTRACE_GET_RSEQ_CONFIGURATION = 0x420f,
199201#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
200212};
201213
202214
lib/libc/include/aarch64_be-linux-gnu/sys/ucontext.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1998-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1998-2024 Free Software Foundation, Inc.
22
33 This file is part of the GNU C Library.
44
lib/libc/include/aarch64_be-linux-gnu/sys/user.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2009-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2009-2024 Free Software Foundation, Inc.
22
33 This file is part of the GNU C Library.
44
lib/libc/include/arm-linux-gnueabi/bits/dl_find_object.h+1-1
......@@ -1,5 +1,5 @@
11/* arm definitions for finding objects.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/arm-linux-gnueabi/bits/fcntl.h+1-1
......@@ -1,5 +1,5 @@
11/* O_*, F_*, FD_* bit values for Linux.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/arm-linux-gnueabi/bits/fenv.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2004-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2004-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/arm-linux-gnueabi/bits/floatn.h+1-1
......@@ -1,5 +1,5 @@
11/* Macros to control TS 18661-3 glibc features.
2 Copyright (C) 2017-2023 Free Software Foundation, Inc.
2 Copyright (C) 2017-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/arm-linux-gnueabi/bits/hwcap.h+1-1
......@@ -1,5 +1,5 @@
11/* Defines for bits in AT_HWCAP. ARM Linux version.
2 Copyright (C) 2012-2023 Free Software Foundation, Inc.
2 Copyright (C) 2012-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/arm-linux-gnueabi/bits/link.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2005-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2005-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/arm-linux-gnueabi/bits/long-double.h+1-1
......@@ -1,5 +1,5 @@
11/* Properties of long double type.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/arm-linux-gnueabi/bits/procfs-id.h+1-1
......@@ -1,5 +1,5 @@
11/* Types of pr_uid and pr_gid in struct elf_prpsinfo. Arm version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
lib/libc/include/arm-linux-gnueabi/bits/procfs.h+1-1
......@@ -1,5 +1,5 @@
11/* Types for registers for sys/procfs.h. Arm version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/arm-linux-gnueabi/bits/rseq.h+1-1
......@@ -1,5 +1,5 @@
11/* Restartable Sequences Linux arm architecture header.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33
44 The GNU C Library is free software; you can redistribute it and/or
55 modify it under the terms of the GNU Lesser General Public
lib/libc/include/arm-linux-gnueabi/bits/setjmp.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2004-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2004-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/arm-linux-gnueabi/bits/shmlba.h+1-1
......@@ -1,5 +1,5 @@
11/* Define SHMLBA. ARM version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/arm-linux-gnueabi/bits/struct_rwlock.h deleted-61
......@@ -1,61 +0,0 @@
1/* Default read-write lock implementation struct definitions.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 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#include <bits/endian.h>
23
24/* Generic struct for both POSIX read-write lock. New ports are expected
25 to use the default layout, however archictetures can redefine it to add
26 arch-specific extensions (such as lock-elision). The struct have a size
27 of 32 bytes on both LP32 and LP64 architectures. */
28
29struct __pthread_rwlock_arch_t
30{
31 unsigned int __readers;
32 unsigned int __writers;
33 unsigned int __wrphase_futex;
34 unsigned int __writers_futex;
35 unsigned int __pad3;
36 unsigned int __pad4;
37 /* FLAGS must stay at its position in the structure to maintain
38 binary compatibility. */
39#if __BYTE_ORDER == __BIG_ENDIAN
40 unsigned char __pad1;
41 unsigned char __pad2;
42 unsigned char __shared;
43 unsigned char __flags;
44#else
45 unsigned char __flags;
46 unsigned char __shared;
47 unsigned char __pad1;
48 unsigned char __pad2;
49#endif
50 int __cur_writer;
51};
52
53#if __BYTE_ORDER == __BIG_ENDIAN
54# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
55 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0
56#else
57# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
58 0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0
59#endif
60
61#endif
\ No newline at end of file
lib/libc/include/arm-linux-gnueabi/bits/struct_stat.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition for struct stat. Linux/arm version.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/arm-linux-gnueabi/bits/timesize.h+1-1
......@@ -1,5 +1,5 @@
11/* Bit size of the time_t type at glibc build time, Linux/ARM.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/arm-linux-gnueabi/bits/typesizes.h+1-1
......@@ -1,5 +1,5 @@
11/* bits/typesizes.h -- underlying types for *_t. ARM version.
2 Copyright (C) 2002-2023 Free Software Foundation, Inc.
2 Copyright (C) 2002-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/arm-linux-gnueabi/bits/wordsize.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1999-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1999-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/arm-linux-gnueabi/fpu_control.h+1-1
......@@ -1,5 +1,5 @@
11/* FPU control word definitions. ARM VFP version.
2 Copyright (C) 2004-2023 Free Software Foundation, Inc.
2 Copyright (C) 2004-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/arm-linux-gnueabi/sys/ptrace.h+12-2
......@@ -1,5 +1,5 @@
11/* `ptrace' debugger support interface. Linux/ARM version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
......@@ -204,8 +204,18 @@ enum __ptrace_request
204204#define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO
205205
206206 /* Get rseq configuration information. */
207 PTRACE_GET_RSEQ_CONFIGURATION = 0x420f
207 PTRACE_GET_RSEQ_CONFIGURATION = 0x420f,
208208#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
209219};
210220
211221
lib/libc/include/arm-linux-gnueabi/sys/ucontext.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1998-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1998-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/arm-linux-gnueabi/sys/user.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1998-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1998-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/arm-linux-gnueabihf/bits/dl_find_object.h+1-1
......@@ -1,5 +1,5 @@
11/* arm definitions for finding objects.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/arm-linux-gnueabihf/bits/fcntl.h+1-1
......@@ -1,5 +1,5 @@
11/* O_*, F_*, FD_* bit values for Linux.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/arm-linux-gnueabihf/bits/fenv.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2004-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2004-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/arm-linux-gnueabihf/bits/floatn.h+1-1
......@@ -1,5 +1,5 @@
11/* Macros to control TS 18661-3 glibc features.
2 Copyright (C) 2017-2023 Free Software Foundation, Inc.
2 Copyright (C) 2017-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/arm-linux-gnueabihf/bits/hwcap.h+1-1
......@@ -1,5 +1,5 @@
11/* Defines for bits in AT_HWCAP. ARM Linux version.
2 Copyright (C) 2012-2023 Free Software Foundation, Inc.
2 Copyright (C) 2012-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/arm-linux-gnueabihf/bits/link.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2005-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2005-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/arm-linux-gnueabihf/bits/long-double.h+1-1
......@@ -1,5 +1,5 @@
11/* Properties of long double type.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/arm-linux-gnueabihf/bits/procfs-id.h+1-1
......@@ -1,5 +1,5 @@
11/* Types of pr_uid and pr_gid in struct elf_prpsinfo. Arm version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
lib/libc/include/arm-linux-gnueabihf/bits/procfs.h+1-1
......@@ -1,5 +1,5 @@
11/* Types for registers for sys/procfs.h. Arm version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/arm-linux-gnueabihf/bits/rseq.h+1-1
......@@ -1,5 +1,5 @@
11/* Restartable Sequences Linux arm architecture header.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33
44 The GNU C Library is free software; you can redistribute it and/or
55 modify it under the terms of the GNU Lesser General Public
lib/libc/include/arm-linux-gnueabihf/bits/setjmp.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2004-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2004-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/arm-linux-gnueabihf/bits/shmlba.h+1-1
......@@ -1,5 +1,5 @@
11/* Define SHMLBA. ARM version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/arm-linux-gnueabihf/bits/struct_rwlock.h deleted-61
......@@ -1,61 +0,0 @@
1/* Default read-write lock implementation struct definitions.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 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#include <bits/endian.h>
23
24/* Generic struct for both POSIX read-write lock. New ports are expected
25 to use the default layout, however archictetures can redefine it to add
26 arch-specific extensions (such as lock-elision). The struct have a size
27 of 32 bytes on both LP32 and LP64 architectures. */
28
29struct __pthread_rwlock_arch_t
30{
31 unsigned int __readers;
32 unsigned int __writers;
33 unsigned int __wrphase_futex;
34 unsigned int __writers_futex;
35 unsigned int __pad3;
36 unsigned int __pad4;
37 /* FLAGS must stay at its position in the structure to maintain
38 binary compatibility. */
39#if __BYTE_ORDER == __BIG_ENDIAN
40 unsigned char __pad1;
41 unsigned char __pad2;
42 unsigned char __shared;
43 unsigned char __flags;
44#else
45 unsigned char __flags;
46 unsigned char __shared;
47 unsigned char __pad1;
48 unsigned char __pad2;
49#endif
50 int __cur_writer;
51};
52
53#if __BYTE_ORDER == __BIG_ENDIAN
54# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
55 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0
56#else
57# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
58 0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0
59#endif
60
61#endif
\ No newline at end of file
lib/libc/include/arm-linux-gnueabihf/bits/struct_stat.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition for struct stat. Linux/arm version.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/arm-linux-gnueabihf/bits/timesize.h+1-1
......@@ -1,5 +1,5 @@
11/* Bit size of the time_t type at glibc build time, Linux/ARM.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/arm-linux-gnueabihf/bits/typesizes.h+1-1
......@@ -1,5 +1,5 @@
11/* bits/typesizes.h -- underlying types for *_t. ARM version.
2 Copyright (C) 2002-2023 Free Software Foundation, Inc.
2 Copyright (C) 2002-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/arm-linux-gnueabihf/bits/wordsize.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1999-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1999-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/arm-linux-gnueabihf/fpu_control.h+1-1
......@@ -1,5 +1,5 @@
11/* FPU control word definitions. ARM VFP version.
2 Copyright (C) 2004-2023 Free Software Foundation, Inc.
2 Copyright (C) 2004-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/arm-linux-gnueabihf/sys/ptrace.h+12-2
......@@ -1,5 +1,5 @@
11/* `ptrace' debugger support interface. Linux/ARM version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
......@@ -204,8 +204,18 @@ enum __ptrace_request
204204#define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO
205205
206206 /* Get rseq configuration information. */
207 PTRACE_GET_RSEQ_CONFIGURATION = 0x420f
207 PTRACE_GET_RSEQ_CONFIGURATION = 0x420f,
208208#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
209219};
210220
211221
lib/libc/include/arm-linux-gnueabihf/sys/ucontext.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1998-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1998-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/arm-linux-gnueabihf/sys/user.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1998-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1998-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/armeb-linux-gnueabi/bits/dl_find_object.h+1-1
......@@ -1,5 +1,5 @@
11/* arm definitions for finding objects.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/armeb-linux-gnueabi/bits/fcntl.h+1-1
......@@ -1,5 +1,5 @@
11/* O_*, F_*, FD_* bit values for Linux.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/armeb-linux-gnueabi/bits/fenv.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2004-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2004-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/armeb-linux-gnueabi/bits/floatn.h+1-1
......@@ -1,5 +1,5 @@
11/* Macros to control TS 18661-3 glibc features.
2 Copyright (C) 2017-2023 Free Software Foundation, Inc.
2 Copyright (C) 2017-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/armeb-linux-gnueabi/bits/hwcap.h+1-1
......@@ -1,5 +1,5 @@
11/* Defines for bits in AT_HWCAP. ARM Linux version.
2 Copyright (C) 2012-2023 Free Software Foundation, Inc.
2 Copyright (C) 2012-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/armeb-linux-gnueabi/bits/link.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2005-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2005-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/armeb-linux-gnueabi/bits/long-double.h+1-1
......@@ -1,5 +1,5 @@
11/* Properties of long double type.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/armeb-linux-gnueabi/bits/procfs-id.h+1-1
......@@ -1,5 +1,5 @@
11/* Types of pr_uid and pr_gid in struct elf_prpsinfo. Arm version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
lib/libc/include/armeb-linux-gnueabi/bits/procfs.h+1-1
......@@ -1,5 +1,5 @@
11/* Types for registers for sys/procfs.h. Arm version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/armeb-linux-gnueabi/bits/rseq.h+1-1
......@@ -1,5 +1,5 @@
11/* Restartable Sequences Linux arm architecture header.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33
44 The GNU C Library is free software; you can redistribute it and/or
55 modify it under the terms of the GNU Lesser General Public
lib/libc/include/armeb-linux-gnueabi/bits/setjmp.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2004-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2004-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/armeb-linux-gnueabi/bits/shmlba.h+1-1
......@@ -1,5 +1,5 @@
11/* Define SHMLBA. ARM version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/armeb-linux-gnueabi/bits/struct_rwlock.h deleted-61
......@@ -1,61 +0,0 @@
1/* Default read-write lock implementation struct definitions.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 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#include <bits/endian.h>
23
24/* Generic struct for both POSIX read-write lock. New ports are expected
25 to use the default layout, however archictetures can redefine it to add
26 arch-specific extensions (such as lock-elision). The struct have a size
27 of 32 bytes on both LP32 and LP64 architectures. */
28
29struct __pthread_rwlock_arch_t
30{
31 unsigned int __readers;
32 unsigned int __writers;
33 unsigned int __wrphase_futex;
34 unsigned int __writers_futex;
35 unsigned int __pad3;
36 unsigned int __pad4;
37 /* FLAGS must stay at its position in the structure to maintain
38 binary compatibility. */
39#if __BYTE_ORDER == __BIG_ENDIAN
40 unsigned char __pad1;
41 unsigned char __pad2;
42 unsigned char __shared;
43 unsigned char __flags;
44#else
45 unsigned char __flags;
46 unsigned char __shared;
47 unsigned char __pad1;
48 unsigned char __pad2;
49#endif
50 int __cur_writer;
51};
52
53#if __BYTE_ORDER == __BIG_ENDIAN
54# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
55 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0
56#else
57# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
58 0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0
59#endif
60
61#endif
\ No newline at end of file
lib/libc/include/armeb-linux-gnueabi/bits/struct_stat.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition for struct stat. Linux/arm version.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/armeb-linux-gnueabi/bits/timesize.h+1-1
......@@ -1,5 +1,5 @@
11/* Bit size of the time_t type at glibc build time, Linux/ARM.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/armeb-linux-gnueabi/bits/typesizes.h+1-1
......@@ -1,5 +1,5 @@
11/* bits/typesizes.h -- underlying types for *_t. ARM version.
2 Copyright (C) 2002-2023 Free Software Foundation, Inc.
2 Copyright (C) 2002-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/armeb-linux-gnueabi/bits/wordsize.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1999-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1999-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/armeb-linux-gnueabi/fpu_control.h+1-1
......@@ -1,5 +1,5 @@
11/* FPU control word definitions. ARM VFP version.
2 Copyright (C) 2004-2023 Free Software Foundation, Inc.
2 Copyright (C) 2004-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/armeb-linux-gnueabi/sys/ptrace.h+12-2
......@@ -1,5 +1,5 @@
11/* `ptrace' debugger support interface. Linux/ARM version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
......@@ -204,8 +204,18 @@ enum __ptrace_request
204204#define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO
205205
206206 /* Get rseq configuration information. */
207 PTRACE_GET_RSEQ_CONFIGURATION = 0x420f
207 PTRACE_GET_RSEQ_CONFIGURATION = 0x420f,
208208#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
209219};
210220
211221
lib/libc/include/armeb-linux-gnueabi/sys/ucontext.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1998-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1998-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/armeb-linux-gnueabi/sys/user.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1998-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1998-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/armeb-linux-gnueabihf/bits/dl_find_object.h+1-1
......@@ -1,5 +1,5 @@
11/* arm definitions for finding objects.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/armeb-linux-gnueabihf/bits/fcntl.h+1-1
......@@ -1,5 +1,5 @@
11/* O_*, F_*, FD_* bit values for Linux.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/armeb-linux-gnueabihf/bits/fenv.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2004-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2004-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/armeb-linux-gnueabihf/bits/floatn.h+1-1
......@@ -1,5 +1,5 @@
11/* Macros to control TS 18661-3 glibc features.
2 Copyright (C) 2017-2023 Free Software Foundation, Inc.
2 Copyright (C) 2017-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/armeb-linux-gnueabihf/bits/hwcap.h+1-1
......@@ -1,5 +1,5 @@
11/* Defines for bits in AT_HWCAP. ARM Linux version.
2 Copyright (C) 2012-2023 Free Software Foundation, Inc.
2 Copyright (C) 2012-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/armeb-linux-gnueabihf/bits/link.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2005-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2005-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/armeb-linux-gnueabihf/bits/long-double.h+1-1
......@@ -1,5 +1,5 @@
11/* Properties of long double type.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/armeb-linux-gnueabihf/bits/procfs-id.h+1-1
......@@ -1,5 +1,5 @@
11/* Types of pr_uid and pr_gid in struct elf_prpsinfo. Arm version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
lib/libc/include/armeb-linux-gnueabihf/bits/procfs.h+1-1
......@@ -1,5 +1,5 @@
11/* Types for registers for sys/procfs.h. Arm version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/armeb-linux-gnueabihf/bits/rseq.h+1-1
......@@ -1,5 +1,5 @@
11/* Restartable Sequences Linux arm architecture header.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33
44 The GNU C Library is free software; you can redistribute it and/or
55 modify it under the terms of the GNU Lesser General Public
lib/libc/include/armeb-linux-gnueabihf/bits/setjmp.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2004-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2004-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/armeb-linux-gnueabihf/bits/shmlba.h+1-1
......@@ -1,5 +1,5 @@
11/* Define SHMLBA. ARM version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/armeb-linux-gnueabihf/bits/struct_rwlock.h deleted-61
......@@ -1,61 +0,0 @@
1/* Default read-write lock implementation struct definitions.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 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#include <bits/endian.h>
23
24/* Generic struct for both POSIX read-write lock. New ports are expected
25 to use the default layout, however archictetures can redefine it to add
26 arch-specific extensions (such as lock-elision). The struct have a size
27 of 32 bytes on both LP32 and LP64 architectures. */
28
29struct __pthread_rwlock_arch_t
30{
31 unsigned int __readers;
32 unsigned int __writers;
33 unsigned int __wrphase_futex;
34 unsigned int __writers_futex;
35 unsigned int __pad3;
36 unsigned int __pad4;
37 /* FLAGS must stay at its position in the structure to maintain
38 binary compatibility. */
39#if __BYTE_ORDER == __BIG_ENDIAN
40 unsigned char __pad1;
41 unsigned char __pad2;
42 unsigned char __shared;
43 unsigned char __flags;
44#else
45 unsigned char __flags;
46 unsigned char __shared;
47 unsigned char __pad1;
48 unsigned char __pad2;
49#endif
50 int __cur_writer;
51};
52
53#if __BYTE_ORDER == __BIG_ENDIAN
54# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
55 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0
56#else
57# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
58 0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0
59#endif
60
61#endif
\ No newline at end of file
lib/libc/include/armeb-linux-gnueabihf/bits/struct_stat.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition for struct stat. Linux/arm version.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/armeb-linux-gnueabihf/bits/timesize.h+1-1
......@@ -1,5 +1,5 @@
11/* Bit size of the time_t type at glibc build time, Linux/ARM.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/armeb-linux-gnueabihf/bits/typesizes.h+1-1
......@@ -1,5 +1,5 @@
11/* bits/typesizes.h -- underlying types for *_t. ARM version.
2 Copyright (C) 2002-2023 Free Software Foundation, Inc.
2 Copyright (C) 2002-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/armeb-linux-gnueabihf/bits/wordsize.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1999-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1999-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/armeb-linux-gnueabihf/fpu_control.h+1-1
......@@ -1,5 +1,5 @@
11/* FPU control word definitions. ARM VFP version.
2 Copyright (C) 2004-2023 Free Software Foundation, Inc.
2 Copyright (C) 2004-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/armeb-linux-gnueabihf/sys/ptrace.h+12-2
......@@ -1,5 +1,5 @@
11/* `ptrace' debugger support interface. Linux/ARM version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
......@@ -204,8 +204,18 @@ enum __ptrace_request
204204#define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO
205205
206206 /* Get rseq configuration information. */
207 PTRACE_GET_RSEQ_CONFIGURATION = 0x420f
207 PTRACE_GET_RSEQ_CONFIGURATION = 0x420f,
208208#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
209219};
210220
211221
lib/libc/include/armeb-linux-gnueabihf/sys/ucontext.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1998-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1998-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/armeb-linux-gnueabihf/sys/user.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1998-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1998-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/csky-linux-gnueabi/bits/fcntl.h+1-1
......@@ -1,5 +1,5 @@
11/* O_*, F_*, FD_* bit values for the generic Linux ABI.
2 Copyright (C) 2011-2023 Free Software Foundation, Inc.
2 Copyright (C) 2011-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/csky-linux-gnueabi/bits/fenv.h+1-1
......@@ -1,5 +1,5 @@
11/* Floating point environment. C-SKY version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/csky-linux-gnueabi/bits/floatn.h+1-1
......@@ -1,5 +1,5 @@
11/* Macros to control TS 18661-3 glibc features.
2 Copyright (C) 2017-2023 Free Software Foundation, Inc.
2 Copyright (C) 2017-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/csky-linux-gnueabi/bits/link.h+1-1
......@@ -1,5 +1,5 @@
11/* Machine-specific declarations for dynamic linker interface. C-SKY version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/csky-linux-gnueabi/bits/long-double.h+1-1
......@@ -1,5 +1,5 @@
11/* Properties of long double type.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/csky-linux-gnueabi/bits/procfs.h+1-1
......@@ -1,5 +1,5 @@
11/* Types for registers for sys/procfs.h. C-SKY version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/csky-linux-gnueabi/bits/rseq.h+1-1
......@@ -1,5 +1,5 @@
11/* Restartable Sequences architecture header. Stub version.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33
44 The GNU C Library is free software; you can redistribute it and/or
55 modify it under the terms of the GNU Lesser General Public
lib/libc/include/csky-linux-gnueabi/bits/setjmp.h+1-1
......@@ -1,5 +1,5 @@
11/* Define the machine-dependent type `jmp_buf'. C-SKY version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/csky-linux-gnueabi/bits/shmlba.h+1-1
......@@ -1,5 +1,5 @@
11/* Define SHMLBA. C-SKY version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/csky-linux-gnueabi/bits/statfs.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2011-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2011-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/csky-linux-gnueabi/bits/struct_rwlock.h deleted-61
......@@ -1,61 +0,0 @@
1/* Default read-write lock implementation struct definitions.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 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#include <bits/endian.h>
23
24/* Generic struct for both POSIX read-write lock. New ports are expected
25 to use the default layout, however archictetures can redefine it to add
26 arch-specific extensions (such as lock-elision). The struct have a size
27 of 32 bytes on both LP32 and LP64 architectures. */
28
29struct __pthread_rwlock_arch_t
30{
31 unsigned int __readers;
32 unsigned int __writers;
33 unsigned int __wrphase_futex;
34 unsigned int __writers_futex;
35 unsigned int __pad3;
36 unsigned int __pad4;
37 /* FLAGS must stay at its position in the structure to maintain
38 binary compatibility. */
39#if __BYTE_ORDER == __BIG_ENDIAN
40 unsigned char __pad1;
41 unsigned char __pad2;
42 unsigned char __shared;
43 unsigned char __flags;
44#else
45 unsigned char __flags;
46 unsigned char __shared;
47 unsigned char __pad1;
48 unsigned char __pad2;
49#endif
50 int __cur_writer;
51};
52
53#if __BYTE_ORDER == __BIG_ENDIAN
54# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
55 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0
56#else
57# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
58 0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0
59#endif
60
61#endif
\ No newline at end of file
lib/libc/include/csky-linux-gnueabi/bits/struct_stat.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition for struct stat. Linux/csky version.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/csky-linux-gnueabi/bits/timesize.h+1-1
......@@ -1,5 +1,5 @@
11/* Bit size of the time_t type at glibc build time, Linux/csky.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/csky-linux-gnueabi/bits/typesizes.h+1-1
......@@ -1,5 +1,5 @@
11/* bits/typesizes.h -- underlying types for *_t. For the generic Linux ABI.
2 Copyright (C) 2011-2023 Free Software Foundation, Inc.
2 Copyright (C) 2011-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/csky-linux-gnueabi/bits/wordsize.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1999-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1999-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/csky-linux-gnueabi/fpu_control.h+1-1
......@@ -1,5 +1,5 @@
11/* FPU control word bits. C-SKY version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/csky-linux-gnueabi/gnu/lib-names.h-1
......@@ -8,7 +8,6 @@
88#define LD_SO "ld-linux-cskyv2.so.1"
99#define LIBANL_SO "libanl.so.1"
1010#define LIBBROKENLOCALE_SO "libBrokenLocale.so.1"
11#define LIBCRYPT_SO "libcrypt.so.1"
1211#define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0"
1312#define LIBC_SO "libc.so.6"
1413#define LIBDL_SO "libdl.so.2"
lib/libc/include/csky-linux-gnueabi/sys/cachectl.h+1-1
......@@ -1,5 +1,5 @@
11/* C-SKY cache flushing interface.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/csky-linux-gnueabi/sys/ucontext.h+1-1
......@@ -1,5 +1,5 @@
11/* struct ucontext definition, C-SKY version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/csky-linux-gnueabi/sys/user.h+1-1
......@@ -1,6 +1,6 @@
11/* This file is not used by C-SKY GDB. ptrace can use pt_regs definition
22 from linux kernel directly.
3 Copyright (C) 2018-2023 Free Software Foundation, Inc.
3 Copyright (C) 2018-2024 Free Software Foundation, Inc.
44 This file is part of the GNU C Library.
55
66 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/csky-linux-gnueabihf/bits/fcntl.h+1-1
......@@ -1,5 +1,5 @@
11/* O_*, F_*, FD_* bit values for the generic Linux ABI.
2 Copyright (C) 2011-2023 Free Software Foundation, Inc.
2 Copyright (C) 2011-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/csky-linux-gnueabihf/bits/fenv.h+1-1
......@@ -1,5 +1,5 @@
11/* Floating point environment. C-SKY version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/csky-linux-gnueabihf/bits/floatn.h+1-1
......@@ -1,5 +1,5 @@
11/* Macros to control TS 18661-3 glibc features.
2 Copyright (C) 2017-2023 Free Software Foundation, Inc.
2 Copyright (C) 2017-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/csky-linux-gnueabihf/bits/link.h+1-1
......@@ -1,5 +1,5 @@
11/* Machine-specific declarations for dynamic linker interface. C-SKY version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/csky-linux-gnueabihf/bits/long-double.h+1-1
......@@ -1,5 +1,5 @@
11/* Properties of long double type.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/csky-linux-gnueabihf/bits/procfs.h+1-1
......@@ -1,5 +1,5 @@
11/* Types for registers for sys/procfs.h. C-SKY version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/csky-linux-gnueabihf/bits/rseq.h+1-1
......@@ -1,5 +1,5 @@
11/* Restartable Sequences architecture header. Stub version.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33
44 The GNU C Library is free software; you can redistribute it and/or
55 modify it under the terms of the GNU Lesser General Public
lib/libc/include/csky-linux-gnueabihf/bits/setjmp.h+1-1
......@@ -1,5 +1,5 @@
11/* Define the machine-dependent type `jmp_buf'. C-SKY version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/csky-linux-gnueabihf/bits/shmlba.h+1-1
......@@ -1,5 +1,5 @@
11/* Define SHMLBA. C-SKY version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/csky-linux-gnueabihf/bits/statfs.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2011-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2011-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/csky-linux-gnueabihf/bits/struct_rwlock.h deleted-61
......@@ -1,61 +0,0 @@
1/* Default read-write lock implementation struct definitions.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 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#include <bits/endian.h>
23
24/* Generic struct for both POSIX read-write lock. New ports are expected
25 to use the default layout, however archictetures can redefine it to add
26 arch-specific extensions (such as lock-elision). The struct have a size
27 of 32 bytes on both LP32 and LP64 architectures. */
28
29struct __pthread_rwlock_arch_t
30{
31 unsigned int __readers;
32 unsigned int __writers;
33 unsigned int __wrphase_futex;
34 unsigned int __writers_futex;
35 unsigned int __pad3;
36 unsigned int __pad4;
37 /* FLAGS must stay at its position in the structure to maintain
38 binary compatibility. */
39#if __BYTE_ORDER == __BIG_ENDIAN
40 unsigned char __pad1;
41 unsigned char __pad2;
42 unsigned char __shared;
43 unsigned char __flags;
44#else
45 unsigned char __flags;
46 unsigned char __shared;
47 unsigned char __pad1;
48 unsigned char __pad2;
49#endif
50 int __cur_writer;
51};
52
53#if __BYTE_ORDER == __BIG_ENDIAN
54# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
55 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0
56#else
57# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
58 0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0
59#endif
60
61#endif
\ No newline at end of file
lib/libc/include/csky-linux-gnueabihf/bits/struct_stat.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition for struct stat. Linux/csky version.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/csky-linux-gnueabihf/bits/timesize.h+1-1
......@@ -1,5 +1,5 @@
11/* Bit size of the time_t type at glibc build time, Linux/csky.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/csky-linux-gnueabihf/bits/typesizes.h+1-1
......@@ -1,5 +1,5 @@
11/* bits/typesizes.h -- underlying types for *_t. For the generic Linux ABI.
2 Copyright (C) 2011-2023 Free Software Foundation, Inc.
2 Copyright (C) 2011-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/csky-linux-gnueabihf/bits/wordsize.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1999-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1999-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/csky-linux-gnueabihf/fpu_control.h+1-1
......@@ -1,5 +1,5 @@
11/* FPU control word bits. C-SKY version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/csky-linux-gnueabihf/gnu/lib-names.h-1
......@@ -8,7 +8,6 @@
88#define LD_SO "ld-linux-cskyv2-hf.so.1"
99#define LIBANL_SO "libanl.so.1"
1010#define LIBBROKENLOCALE_SO "libBrokenLocale.so.1"
11#define LIBCRYPT_SO "libcrypt.so.1"
1211#define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0"
1312#define LIBC_SO "libc.so.6"
1413#define LIBDL_SO "libdl.so.2"
lib/libc/include/csky-linux-gnueabihf/sys/cachectl.h+1-1
......@@ -1,5 +1,5 @@
11/* C-SKY cache flushing interface.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/csky-linux-gnueabihf/sys/ucontext.h+1-1
......@@ -1,5 +1,5 @@
11/* struct ucontext definition, C-SKY version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/csky-linux-gnueabihf/sys/user.h+1-1
......@@ -1,6 +1,6 @@
11/* This file is not used by C-SKY GDB. ptrace can use pt_regs definition
22 from linux kernel directly.
3 Copyright (C) 2018-2023 Free Software Foundation, Inc.
3 Copyright (C) 2018-2024 Free Software Foundation, Inc.
44 This file is part of the GNU C Library.
55
66 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/aio.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1996-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1996-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/aliases.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1996-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1996-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/alloca.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1992-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1992-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/ar.h+1-1
......@@ -1,5 +1,5 @@
11/* Header describing `ar' archive file format.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/argp.h+1-1
......@@ -1,5 +1,5 @@
11/* Hierarchical argument parsing, layered over getopt.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44 Written by Miles Bader <miles@gnu.ai.mit.edu>.
55
lib/libc/include/generic-glibc/argz.h+1-1
......@@ -1,5 +1,5 @@
11/* Routines for dealing with '\0' separated arg vectors.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/arpa/inet.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/assert.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/argp-ldbl.h+1-1
......@@ -1,5 +1,5 @@
11/* Redirections for argp functions for -mlong-double-64.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/atomic_wide_counter.h+1-1
......@@ -1,5 +1,5 @@
11/* Monotonically increasing wide counters (at least 62 bits).
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/byteswap.h+1-1
......@@ -1,5 +1,5 @@
11/* Macros and inline functions to swap the order of bytes in integer values.
2 Copyright (C) 1997-2023 Free Software Foundation, Inc.
2 Copyright (C) 1997-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/cmathcalls.h+1-1
......@@ -1,6 +1,6 @@
11/* Prototype declarations for complex math functions;
22 helper file for <complex.h>.
3 Copyright (C) 1997-2023 Free Software Foundation, Inc.
3 Copyright (C) 1997-2024 Free Software Foundation, Inc.
44 This file is part of the GNU C Library.
55
66 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/confname.h+1-1
......@@ -1,5 +1,5 @@
11/* `sysconf', `pathconf', and `confstr' NAME values. Generic version.
2 Copyright (C) 1993-2023 Free Software Foundation, Inc.
2 Copyright (C) 1993-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/cpu-set.h+1-1
......@@ -1,6 +1,6 @@
11/* Definition of the cpu_set_t structure used by the POSIX 1003.1b-1993
22 scheduling interface.
3 Copyright (C) 1996-2023 Free Software Foundation, Inc.
3 Copyright (C) 1996-2024 Free Software Foundation, Inc.
44 This file is part of the GNU C Library.
55
66 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/dirent.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1996-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1996-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/dirent_ext.h+1-1
......@@ -1,5 +1,5 @@
11/* System-specific extensions of <dirent.h>. Linux version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/dl_find_object.h+1-1
......@@ -1,5 +1,5 @@
11/* System dependent definitions for finding objects by address.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/dlfcn.h+1-1
......@@ -1,5 +1,5 @@
11/* System dependent definitions for run-time dynamic loading.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/endian.h+1-1
......@@ -1,5 +1,5 @@
11/* Endian macros for string.h functions
2 Copyright (C) 1992-2023 Free Software Foundation, Inc.
2 Copyright (C) 1992-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/environments.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1999-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1999-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/epoll.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2002-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2002-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/err-ldbl.h+1-1
......@@ -1,5 +1,5 @@
11/* Redirections for err.h functions for -mlong-double-64.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/errno.h+1-1
......@@ -1,5 +1,5 @@
11/* Error constants. Linux specific version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/error-ldbl.h+1-1
......@@ -1,5 +1,5 @@
11/* Redirections for error.h functions for -mlong-double-64.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/error.h+1-1
......@@ -1,5 +1,5 @@
11/* Specializations for error functions.
2 Copyright (C) 2007-2023 Free Software Foundation, Inc.
2 Copyright (C) 2007-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/eventfd.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2007-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2007-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/fcntl-linux.h+13-1
......@@ -1,5 +1,5 @@
11/* O_*, F_*, FD_* bit values for Linux.
2 Copyright (C) 2001-2023 Free Software Foundation, Inc.
2 Copyright (C) 2001-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
......@@ -286,6 +286,7 @@ struct f_owner_ex
286286# define F_SEAL_WRITE 0x0008 /* Prevent writes. */
287287# define F_SEAL_FUTURE_WRITE 0x0010 /* Prevent future writes while
288288 mapped. */
289# define F_SEAL_EXEC 0x0020 /* Prevent chmod modifying exec bits. */
289290#endif
290291
291292#ifdef __USE_GNU
......@@ -367,6 +368,17 @@ struct file_handle
367368# define MAX_HANDLE_SZ 128
368369#endif
369370
371#ifdef __USE_GNU
372/* Flags for name_to_handle_at. See comment in fcntl.h about the use
373 of the same AT_* flag bits for different purposes in different
374 functions. */
375# define AT_HANDLE_FID AT_REMOVEDIR /* File handle is needed
376 to compare object
377 identity and may not
378 be usable to
379 open_by_handle_at. */
380#endif
381
370382__BEGIN_DECLS
371383
372384#ifdef __USE_GNU
lib/libc/include/generic-glibc/bits/fcntl.h+1-1
......@@ -1,5 +1,5 @@
11/* O_*, F_*, FD_* bit values for Linux.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/fcntl2.h+1-1
......@@ -1,5 +1,5 @@
11/* Checking macros for fcntl functions.
2 Copyright (C) 2007-2023 Free Software Foundation, Inc.
2 Copyright (C) 2007-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/fenv.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1998-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1998-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/floatn-common.h+1-1
......@@ -1,6 +1,6 @@
11/* Macros to control TS 18661-3 glibc features where the same
22 definitions are appropriate for all platforms.
3 Copyright (C) 2017-2023 Free Software Foundation, Inc.
3 Copyright (C) 2017-2024 Free Software Foundation, Inc.
44 This file is part of the GNU C Library.
55
66 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/floatn.h+1-1
......@@ -1,5 +1,5 @@
11/* Macros to control TS 18661-3 glibc features on MIPS platforms.
2 Copyright (C) 2017-2023 Free Software Foundation, Inc.
2 Copyright (C) 2017-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/flt-eval-method.h+1-1
......@@ -1,5 +1,5 @@
11/* Define __GLIBC_FLT_EVAL_METHOD.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/fp-fast.h+1-1
......@@ -1,5 +1,5 @@
11/* Define FP_FAST_* macros.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/fp-logb.h+1-1
......@@ -1,5 +1,5 @@
11/* Define __FP_LOGB0_IS_MIN and __FP_LOGBNAN_IS_MIN.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/getopt_core.h+1-1
......@@ -1,5 +1,5 @@
11/* Declarations for getopt (basic, portable features only).
2 Copyright (C) 1989-2023 Free Software Foundation, Inc.
2 Copyright (C) 1989-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library and is also part of gnulib.
44 Patches to this file should be submitted to both projects.
55
lib/libc/include/generic-glibc/bits/getopt_ext.h+1-1
......@@ -1,5 +1,5 @@
11/* Declarations for getopt (GNU extensions).
2 Copyright (C) 1989-2023 Free Software Foundation, Inc.
2 Copyright (C) 1989-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library and is also part of gnulib.
44 Patches to this file should be submitted to both projects.
55
lib/libc/include/generic-glibc/bits/getopt_posix.h+1-1
......@@ -1,5 +1,5 @@
11/* Declarations for getopt (POSIX compatibility shim).
2 Copyright (C) 1989-2023 Free Software Foundation, Inc.
2 Copyright (C) 1989-2024 Free Software Foundation, Inc.
33 Unlike the bulk of the getopt implementation, this file is NOT part
44 of gnulib.
55
lib/libc/include/generic-glibc/bits/hwcap.h+1-1
......@@ -1,5 +1,5 @@
11/* Defines for bits in AT_HWCAP.
2 Copyright (C) 2012-2023 Free Software Foundation, Inc.
2 Copyright (C) 2012-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/in.h+2-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
......@@ -129,6 +129,7 @@
129129#define IP_MULTICAST_ALL 49
130130#define IP_UNICAST_IF 50
131131#define IP_LOCAL_PORT_RANGE 51
132#define IP_PROTOCOL 52
132133
133134/* To select the IP level. */
134135#define SOL_IP 0
lib/libc/include/generic-glibc/bits/indirect-return.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition of __INDIRECT_RETURN. Generic version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/inotify.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2005-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2005-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/ioctl-types.h+1-1
......@@ -1,5 +1,5 @@
11/* Structure types for pre-termios terminal ioctls. Linux version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/ioctls.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1996-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1996-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/ipc-perm.h+1-1
......@@ -1,5 +1,5 @@
11/* struct ipc_perm definition.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/ipc.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1995-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1995-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/ipctypes.h+1-1
......@@ -1,5 +1,5 @@
11/* bits/ipctypes.h -- Define some types used by SysV IPC/MSG/SHM. Generic.
2 Copyright (C) 2002-2023 Free Software Foundation, Inc.
2 Copyright (C) 2002-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/iscanonical.h+1-1
......@@ -1,5 +1,5 @@
11/* Define iscanonical macro.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/libc-header-start.h+1-1
......@@ -1,5 +1,5 @@
11/* Handle feature test macros at the start of a header.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/libm-simd-decl-stubs.h+1-1
......@@ -1,5 +1,5 @@
11/* Empty definitions required for __MATHCALL_VEC unfolding in mathcalls.h.
2 Copyright (C) 2014-2023 Free Software Foundation, Inc.
2 Copyright (C) 2014-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/link.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2005-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2005-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/link_lavcurrent.h+1-1
......@@ -1,6 +1,6 @@
11/* Data structure for communication from the run-time dynamic linker for
22 loaded ELF shared objects. LAV_CURRENT definition.
3 Copyright (C) 2021-2023 Free Software Foundation, Inc.
3 Copyright (C) 2021-2024 Free Software Foundation, Inc.
44 This file is part of the GNU C Library.
55
66 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/local_lim.h+1-1
......@@ -1,5 +1,5 @@
11/* Minimum guaranteed maximum values for system limits. Linux version.
2 Copyright (C) 1993-2023 Free Software Foundation, Inc.
2 Copyright (C) 1993-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/locale.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition of locale category symbol values.
2 Copyright (C) 2001-2023 Free Software Foundation, Inc.
2 Copyright (C) 2001-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/long-double.h+1-1
......@@ -1,5 +1,5 @@
11/* Properties of long double type. MIPS version.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/math-vector.h+1-1
......@@ -1,5 +1,5 @@
11/* Platform-specific SIMD declarations of math functions.
2 Copyright (C) 2014-2023 Free Software Foundation, Inc.
2 Copyright (C) 2014-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/mathcalls-helper-functions.h+1-1
......@@ -1,5 +1,5 @@
11/* Prototype declarations for math classification macros helpers.
2 Copyright (C) 2017-2023 Free Software Foundation, Inc.
2 Copyright (C) 2017-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/mathcalls-narrow.h+1-1
......@@ -1,5 +1,5 @@
11/* Declare functions returning a narrower type.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/mathcalls.h+1-1
......@@ -1,5 +1,5 @@
11/* Prototype declarations for math functions; helper file for <math.h>.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/mathdef.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/mman-linux.h+1-1
......@@ -1,5 +1,5 @@
11/* Definitions for POSIX memory map interface. Linux generic version.
2 Copyright (C) 2001-2023 Free Software Foundation, Inc.
2 Copyright (C) 2001-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/mman-map-flags-generic.h+1-1
......@@ -1,5 +1,5 @@
11/* Definitions for POSIX memory map interface. Linux/generic version.
2 Copyright (C) 1997-2023 Free Software Foundation, Inc.
2 Copyright (C) 1997-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/mman-shared.h+1-1
......@@ -1,5 +1,5 @@
11/* Memory-mapping-related declarations/definitions, not architecture-specific.
2 Copyright (C) 2017-2023 Free Software Foundation, Inc.
2 Copyright (C) 2017-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/mman.h+1-1
......@@ -1,5 +1,5 @@
11/* Definitions for POSIX memory map interface. Linux/generic version.
2 Copyright (C) 1997-2023 Free Software Foundation, Inc.
2 Copyright (C) 1997-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/mman_ext.h+1-1
......@@ -1,5 +1,5 @@
11/* System-specific extensions of <sys/mman.h>, Linux version.
2 Copyright (C) 2022-2023 Free Software Foundation, Inc.
2 Copyright (C) 2022-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/monetary-ldbl.h+1-1
......@@ -1,5 +1,5 @@
11/* -mlong-double-64 compatibility mode for monetary functions.
2 Copyright (C) 2006-2023 Free Software Foundation, Inc.
2 Copyright (C) 2006-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/mqueue.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2004-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2004-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/mqueue2.h+1-1
......@@ -1,5 +1,5 @@
11/* Checking macros for mq functions.
2 Copyright (C) 2007-2023 Free Software Foundation, Inc.
2 Copyright (C) 2007-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/msq.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1995-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1995-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/netdb.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1996-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1996-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/param.h+1-1
......@@ -1,5 +1,5 @@
11/* Old-style Unix parameters and limits. Linux version.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/platform/features.h created+48
......@@ -0,0 +1,48 @@
1/* Inline functions for x86 CPU features.
2 This file is part of the GNU C Library.
3 Copyright (C) 2024 Free Software Foundation, Inc.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 You should have received a copy of the 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_PLATFORM_X86_H
20# error "Never include <bits/platform/features.h> directly; use <sys/platform/x86.h> instead."
21#endif
22
23/* Bits in the feature_1 field in TCB. */
24
25enum
26{
27 x86_feature_1_ibt = 1U << 0,
28 x86_feature_1_shstk = 1U << 1
29};
30
31static __inline__ _Bool
32x86_cpu_cet_active (unsigned int __index)
33{
34#ifdef __x86_64__
35 unsigned int __feature_1;
36# ifdef __LP64__
37 __asm__ ("mov %%fs:72, %0" : "=r" (__feature_1));
38# else
39 __asm__ ("mov %%fs:40, %0" : "=r" (__feature_1));
40# endif
41 if (__index == x86_cpu_IBT)
42 return __feature_1 & x86_feature_1_ibt;
43 else
44 return __feature_1 & x86_feature_1_shstk;
45#else
46 return false;
47#endif
48}
\ No newline at end of file
lib/libc/include/generic-glibc/bits/platform/x86.h+13-3
......@@ -1,6 +1,6 @@
11/* Constants and data structures for x86 CPU features.
22 This file is part of the GNU C Library.
3 Copyright (C) 2008-2023 Free Software Foundation, Inc.
3 Copyright (C) 2008-2024 Free Software Foundation, Inc.
44
55 The GNU C Library is free software; you can redistribute it and/or
66 modify it under the terms of the GNU Lesser General Public
......@@ -30,7 +30,8 @@ enum
3030 CPUID_INDEX_80000008,
3131 CPUID_INDEX_7_ECX_1,
3232 CPUID_INDEX_19,
33 CPUID_INDEX_14_ECX_0
33 CPUID_INDEX_14_ECX_0,
34 CPUID_INDEX_24_ECX_0
3435};
3536
3637struct cpuid_feature
......@@ -312,6 +313,7 @@ enum
312313 x86_cpu_AVX_NE_CONVERT = x86_cpu_index_7_ecx_1_edx + 5,
313314 x86_cpu_AMX_COMPLEX = x86_cpu_index_7_ecx_1_edx + 8,
314315 x86_cpu_PREFETCHI = x86_cpu_index_7_ecx_1_edx + 14,
316 x86_cpu_AVX10 = x86_cpu_index_7_ecx_1_edx + 19,
315317 x86_cpu_APX_F = x86_cpu_index_7_ecx_1_edx + 21,
316318
317319 x86_cpu_index_19_ebx
......@@ -325,5 +327,13 @@ enum
325327 = (CPUID_INDEX_14_ECX_0 * 8 * 4 * sizeof (unsigned int)
326328 + cpuid_register_index_ebx * 8 * sizeof (unsigned int)),
327329
328 x86_cpu_PTWRITE = x86_cpu_index_14_ecx_0_ebx + 4
330 x86_cpu_PTWRITE = x86_cpu_index_14_ecx_0_ebx + 4,
331
332 x86_cpu_index_24_ecx_0_ebx
333 = (CPUID_INDEX_24_ECX_0 * 8 * 4 * sizeof (unsigned int)
334 + cpuid_register_index_ebx * 8 * sizeof (unsigned int)),
335
336 x86_cpu_AVX10_XMM = x86_cpu_index_24_ecx_0_ebx + 16,
337 x86_cpu_AVX10_YMM = x86_cpu_index_24_ecx_0_ebx + 17,
338 x86_cpu_AVX10_ZMM = x86_cpu_index_24_ecx_0_ebx + 18,
329339};
\ No newline at end of file
lib/libc/include/generic-glibc/bits/poll.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/poll2.h+1-1
......@@ -1,5 +1,5 @@
11/* Checking macros for poll functions.
2 Copyright (C) 2012-2023 Free Software Foundation, Inc.
2 Copyright (C) 2012-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/posix1_lim.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/posix2_lim.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/posix_opt.h+1-1
......@@ -1,5 +1,5 @@
11/* Define POSIX options for Linux.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/ppc.h+1-1
......@@ -1,5 +1,5 @@
11/* Facilities specific to the PowerPC architecture on Linux
2 Copyright (C) 2012-2023 Free Software Foundation, Inc.
2 Copyright (C) 2012-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/printf-ldbl.h+1-1
......@@ -1,5 +1,5 @@
11/* -mlong-double-64 compatibility mode for <printf.h> functions.
2 Copyright (C) 2006-2023 Free Software Foundation, Inc.
2 Copyright (C) 2006-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/procfs-extra.h+1-1
......@@ -1,5 +1,5 @@
11/* Extra sys/procfs.h definitions. Generic Linux version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
lib/libc/include/generic-glibc/bits/procfs-id.h+1-1
......@@ -1,5 +1,5 @@
11/* Types of pr_uid and pr_gid in struct elf_prpsinfo. Generic Linux version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
lib/libc/include/generic-glibc/bits/procfs-prregset.h+1-1
......@@ -1,5 +1,5 @@
11/* Types of prgregset_t and prfpregset_t. Generic Linux version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
lib/libc/include/generic-glibc/bits/procfs.h+1-1
......@@ -1,5 +1,5 @@
11/* Types for registers for sys/procfs.h. MIPS version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/pthread_stack_min-dynamic.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition of PTHREAD_STACK_MIN, possibly dynamic.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/pthread_stack_min.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition of PTHREAD_STACK_MIN. Linux version.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/pthreadtypes-arch.h+1-1
......@@ -1,5 +1,5 @@
11/* Machine-specific pthread type layouts. Generic version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
lib/libc/include/generic-glibc/bits/pthreadtypes.h+1-1
......@@ -1,5 +1,5 @@
11/* Declaration of common pthread types for all architectures.
2 Copyright (C) 2017-2023 Free Software Foundation, Inc.
2 Copyright (C) 2017-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/ptrace-shared.h+11-1
......@@ -1,6 +1,6 @@
11/* `ptrace' debugger support interface. Linux version,
22 not architecture-specific.
3 Copyright (C) 1996-2023 Free Software Foundation, Inc.
3 Copyright (C) 1996-2024 Free Software Foundation, Inc.
44
55 This file is part of the GNU C Library.
66
......@@ -130,6 +130,16 @@ struct __ptrace_rseq_configuration
130130 __uint32_t pad;
131131};
132132
133/* Argument of PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG and
134 PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG. */
135struct __ptrace_sud_config
136{
137 __uint64_t mode;
138 __uint64_t selector;
139 __uint64_t offset;
140 __uint64_t len;
141};
142
133143/* Perform process tracing functions. REQUEST is one of the values
134144 above, and determines the action to be taken.
135145 For all requests except PTRACE_TRACEME, PID specifies the process to be
lib/libc/include/generic-glibc/bits/resource.h+1-1
......@@ -1,5 +1,5 @@
11/* Bit values & structures for resource limits. Linux version.
2 Copyright (C) 1994-2023 Free Software Foundation, Inc.
2 Copyright (C) 1994-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/rseq.h+1-1
......@@ -1,5 +1,5 @@
11/* Restartable Sequences Linux mips architecture header.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33
44 The GNU C Library is free software; you can redistribute it and/or
55 modify it under the terms of the GNU Lesser General Public
lib/libc/include/generic-glibc/bits/sched.h+1-1
......@@ -1,6 +1,6 @@
11/* Definitions of constants and data structure for POSIX 1003.1b-1993
22 scheduling interface.
3 Copyright (C) 1996-2023 Free Software Foundation, Inc.
3 Copyright (C) 1996-2024 Free Software Foundation, Inc.
44 This file is part of the GNU C Library.
55
66 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/select-decl.h+1-1
......@@ -1,5 +1,5 @@
11/* Checking routines for select functions. Declaration only.
2 Copyright (C) 2023 Free Software Foundation, Inc.
2 Copyright (C) 2023-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/select.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/select2.h+1-1
......@@ -1,5 +1,5 @@
11/* Checking macros for select functions.
2 Copyright (C) 2011-2023 Free Software Foundation, Inc.
2 Copyright (C) 2011-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/sem.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1995-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1995-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/semaphore.h+1-1
......@@ -1,5 +1,5 @@
11/* Generic POSIX semaphore type layout
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/setjmp.h+1-1
......@@ -1,5 +1,5 @@
11/* Define the machine-dependent type `jmp_buf'. MIPS version.
2 Copyright (C) 1992-2023 Free Software Foundation, Inc.
2 Copyright (C) 1992-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/setjmp2.h+1-1
......@@ -1,5 +1,5 @@
11/* Checking macros for setjmp functions.
2 Copyright (C) 2009-2023 Free Software Foundation, Inc.
2 Copyright (C) 2009-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/shm.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1995-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1995-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/shmlba.h+1-1
......@@ -1,5 +1,5 @@
11/* Define SHMLBA. Generic version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/sigaction.h+1-1
......@@ -1,5 +1,5 @@
11/* The proper definitions for Linux's sigaction.
2 Copyright (C) 1993-2023 Free Software Foundation, Inc.
2 Copyright (C) 1993-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/sigcontext.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1996-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1996-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/sigevent-consts.h+1-1
......@@ -1,5 +1,5 @@
11/* sigevent constants. Linux version.
2 Copyright (C) 1997-2023 Free Software Foundation, Inc.
2 Copyright (C) 1997-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/siginfo-consts.h+4-2
......@@ -1,5 +1,5 @@
11/* siginfo constants. Linux version.
2 Copyright (C) 1997-2023 Free Software Foundation, Inc.
2 Copyright (C) 1997-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
......@@ -134,8 +134,10 @@ enum
134134# define SEGV_ADIPERR SEGV_ADIPERR
135135 SEGV_MTEAERR, /* Asynchronous ARM MTE error. */
136136# define SEGV_MTEAERR SEGV_MTEAERR
137 SEGV_MTESERR /* Synchronous ARM MTE exception. */
137 SEGV_MTESERR, /* Synchronous ARM MTE exception. */
138138# define SEGV_MTESERR SEGV_MTESERR
139 SEGV_CPERR /* Control protection fault. */
140# define SEGV_CPERR SEGV_CPERR
139141};
140142
141143/* `si_code' values for SIGBUS signal. */
lib/libc/include/generic-glibc/bits/signal_ext.h+1-1
......@@ -1,5 +1,5 @@
11/* System-specific extensions of <signal.h>, Linux version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/signalfd.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2007-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2007-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/signum-arch.h+1-1
......@@ -1,5 +1,5 @@
11/* Signal number definitions. Linux version.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/signum-generic.h+1-1
......@@ -1,5 +1,5 @@
11/* Signal number constants. Generic template.
2 Copyright (C) 1991-2023 Free Software Foundation, Inc.
2 Copyright (C) 1991-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/sigstack.h+1-1
......@@ -1,5 +1,5 @@
11/* sigstack, sigaltstack definitions.
2 Copyright (C) 1998-2023 Free Software Foundation, Inc.
2 Copyright (C) 1998-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/sigstksz.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition of MINSIGSTKSZ and SIGSTKSZ. Linux version.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/sigthread.h+1-1
......@@ -1,5 +1,5 @@
11/* Signal handling function for threaded programs.
2 Copyright (C) 1998-2023 Free Software Foundation, Inc.
2 Copyright (C) 1998-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/sockaddr.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition of struct sockaddr_* common members and sizes, generic version.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/socket-constants.h+1-1
......@@ -1,5 +1,5 @@
11/* Socket constants which vary among Linux architectures.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/socket.h+5-1
......@@ -1,5 +1,5 @@
11/* System-specific socket constants and types. Linux version.
2 Copyright (C) 1991-2023 Free Software Foundation, Inc.
2 Copyright (C) 1991-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
......@@ -367,6 +367,10 @@ enum
367367#ifdef __USE_GNU
368368 , SCM_CREDENTIALS = 0x02 /* Credentials passing. */
369369# define SCM_CREDENTIALS SCM_CREDENTIALS
370 , SCM_SECURITY = 0x03 /* Security label. */
371# define SCM_SECURITY SCM_SECURITY
372 , SCM_PIDFD = 0x04 /* Pidfd. */
373# define SCM_PIDFD SCM_PIDFD
370374#endif
371375 };
372376
lib/libc/include/generic-glibc/bits/socket2.h+1-1
......@@ -1,5 +1,5 @@
11/* Checking macros for socket functions.
2 Copyright (C) 2005-2023 Free Software Foundation, Inc.
2 Copyright (C) 2005-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/socket_type.h+1-1
......@@ -1,5 +1,5 @@
11/* Define enum __socket_type for generic Linux.
2 Copyright (C) 1991-2023 Free Software Foundation, Inc.
2 Copyright (C) 1991-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/spawn_ext.h created+67
......@@ -0,0 +1,67 @@
1/* POSIX spawn extensions. Linux version.
2 Copyright (C) 2023-2024 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 You should have received a copy of the GNU Lesser General Public
16 License along with the GNU C Library; if not, see
17 <https://www.gnu.org/licenses/>. */
18
19#ifndef _SPAWN_H
20# error "Never include <bits/spawn-ext.h> directly; use <spawn.h> instead."
21#endif
22
23__BEGIN_DECLS
24
25#ifdef __USE_MISC
26
27/* Get the cgroupsv2 the attribute structure. */
28extern int posix_spawnattr_getcgroup_np (const posix_spawnattr_t *
29 __restrict __attr,
30 int *__restrict __cgroup)
31 __THROW __nonnull ((1, 2));
32
33/* Sore the cgroupsv2 the attribute structure. */
34extern int posix_spawnattr_setcgroup_np (posix_spawnattr_t *__attr,
35 int __cgroup)
36 __THROW __nonnull ((1));
37
38/* Spawn a new process executing PATH with the attributes describes in *ATTRP.
39 Before running the process perform the actions described in FACTS. Return
40 a PID file descriptor in PIDFD if process creation was successful and the
41 argument is non-null.
42
43 This function is a possible cancellation point and therefore not
44 marked with __THROW. */
45extern int pidfd_spawn (int *__restrict __pidfd,
46 const char *__restrict __path,
47 const posix_spawn_file_actions_t *__restrict __facts,
48 const posix_spawnattr_t *__restrict __attrp,
49 char *const __argv[__restrict_arr],
50 char *const __envp[__restrict_arr])
51 __nonnull ((2, 5));
52
53/* Similar to `pidfd_spawn' but search for FILE in the PATH.
54
55 This function is a possible cancellation point and therefore not
56 marked with __THROW. */
57extern int pidfd_spawnp (int *__restrict __pidfd,
58 const char *__restrict __file,
59 const posix_spawn_file_actions_t *__restrict __facts,
60 const posix_spawnattr_t *__restrict __attrp,
61 char *const __argv[__restrict_arr],
62 char *const __envp[__restrict_arr])
63 __nonnull ((1, 2, 5));
64
65#endif /* __USE_MISC */
66
67__END_DECLS
\ No newline at end of file
lib/libc/include/generic-glibc/bits/ss_flags.h+1-1
......@@ -1,5 +1,5 @@
11/* ss_flags values for stack_t. Linux version.
2 Copyright (C) 1998-2023 Free Software Foundation, Inc.
2 Copyright (C) 1998-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/stab.def+1-1
......@@ -1,5 +1,5 @@
11/* Table of DBX symbol codes for the GNU system.
2 Copyright (C) 1988, 1997-2023 Free Software Foundation, Inc.
2 Copyright (C) 1988, 1997-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/stat.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1992-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1992-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/statfs.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/statvfs.h+8-4
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
......@@ -51,7 +51,8 @@ struct statvfs
5151#endif
5252 unsigned long int f_flag;
5353 unsigned long int f_namemax;
54 int __f_spare[6];
54 unsigned int f_type;
55 int __f_spare[5];
5556 };
5657
5758#ifdef __USE_LARGEFILE64
......@@ -71,7 +72,8 @@ struct statvfs64
7172#endif
7273 unsigned long int f_flag;
7374 unsigned long int f_namemax;
74 int __f_spare[6];
75 unsigned int f_type;
76 int __f_spare[5];
7577 };
7678#endif
7779
......@@ -103,7 +105,9 @@ enum
103105# define ST_NOATIME ST_NOATIME
104106 ST_NODIRATIME = 2048, /* Do not update directory access times. */
105107# define ST_NODIRATIME ST_NODIRATIME
106 ST_RELATIME = 4096 /* Update atime relative to mtime/ctime. */
108 ST_RELATIME = 4096, /* Update atime relative to mtime/ctime. */
107109# define ST_RELATIME ST_RELATIME
110 ST_NOSYMFOLLOW = 8192 /* Do not follow symlinks. */
111# define ST_NOSYMFOLLOW ST_NOSYMFOLLOW
108112#endif /* Use GNU. */
109113};
\ No newline at end of file
lib/libc/include/generic-glibc/bits/statx-generic.h+1-1
......@@ -1,5 +1,5 @@
11/* Generic statx-related definitions and declarations.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/statx.h+1-1
......@@ -1,5 +1,5 @@
11/* statx-related definitions and declarations. Linux version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/stdint-intn.h+1-1
......@@ -1,5 +1,5 @@
11/* Define intN_t types.
2 Copyright (C) 2017-2023 Free Software Foundation, Inc.
2 Copyright (C) 2017-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/stdint-least.h created+36
......@@ -0,0 +1,36 @@
1/* Define int_leastN_t and uint_leastN types.
2 Copyright (C) 2024 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 You should have received a copy of the 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_STDINT_LEAST_H
20#define _BITS_STDINT_LEAST_H 1
21
22#include <bits/types.h>
23
24/* Signed. */
25typedef __int_least8_t int_least8_t;
26typedef __int_least16_t int_least16_t;
27typedef __int_least32_t int_least32_t;
28typedef __int_least64_t int_least64_t;
29
30/* Unsigned. */
31typedef __uint_least8_t uint_least8_t;
32typedef __uint_least16_t uint_least16_t;
33typedef __uint_least32_t uint_least32_t;
34typedef __uint_least64_t uint_least64_t;
35
36#endif /* bits/stdint-least.h */
\ No newline at end of file
lib/libc/include/generic-glibc/bits/stdint-uintn.h+1-1
......@@ -1,5 +1,5 @@
11/* Define uintN_t types.
2 Copyright (C) 2017-2023 Free Software Foundation, Inc.
2 Copyright (C) 2017-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/stdio-ldbl.h+1-1
......@@ -1,5 +1,5 @@
11/* -mlong-double-64 compatibility mode for stdio functions.
2 Copyright (C) 2006-2023 Free Software Foundation, Inc.
2 Copyright (C) 2006-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/stdio.h+1-1
......@@ -1,5 +1,5 @@
11/* Optimizing macros and inline functions for stdio functions.
2 Copyright (C) 1998-2023 Free Software Foundation, Inc.
2 Copyright (C) 1998-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/stdio2-decl.h+10-7
......@@ -1,5 +1,5 @@
11/* Checking macros for stdio functions. Declarations only.
2 Copyright (C) 2004-2023 Free Software Foundation, Inc.
2 Copyright (C) 2004-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
......@@ -47,10 +47,12 @@ extern int __vsnprintf_chk (char *__restrict __s, size_t __n, int __flag,
4747#if __USE_FORTIFY_LEVEL > 1
4848
4949extern int __fprintf_chk (FILE *__restrict __stream, int __flag,
50 const char *__restrict __format, ...);
50 const char *__restrict __format, ...)
51 __nonnull ((1));
5152extern int __printf_chk (int __flag, const char *__restrict __format, ...);
5253extern int __vfprintf_chk (FILE *__restrict __stream, int __flag,
53 const char *__restrict __format, __gnuc_va_list __ap);
54 const char *__restrict __format,
55 __gnuc_va_list __ap) __nonnull ((1));
5456extern int __vprintf_chk (int __flag, const char *__restrict __format,
5557 __gnuc_va_list __ap);
5658
......@@ -103,7 +105,7 @@ extern char *__REDIRECT (__fgets_chk_warn,
103105
104106extern char *__fgets_chk (char *__restrict __s, size_t __size, int __n,
105107 FILE *__restrict __stream)
106 __wur __attr_access ((__write_only__, 1, 3));
108 __wur __attr_access ((__write_only__, 1, 3)) __nonnull ((4));
107109
108110extern size_t __REDIRECT (__fread_alias,
109111 (void *__restrict __ptr, size_t __size,
......@@ -119,7 +121,7 @@ extern size_t __REDIRECT (__fread_chk_warn,
119121
120122extern size_t __fread_chk (void *__restrict __ptr, size_t __ptrlen,
121123 size_t __size, size_t __n,
122 FILE *__restrict __stream) __wur;
124 FILE *__restrict __stream) __wur __nonnull ((5));
123125
124126#ifdef __USE_GNU
125127extern char *__REDIRECT_FORTIFY (__fgets_unlocked_alias,
......@@ -135,7 +137,7 @@ extern char *__REDIRECT (__fgets_unlocked_chk_warn,
135137
136138extern char *__fgets_unlocked_chk (char *__restrict __s, size_t __size,
137139 int __n, FILE *__restrict __stream)
138 __wur __attr_access ((__write_only__, 1, 3));
140 __wur __attr_access ((__write_only__, 1, 3)) __nonnull ((4));
139141#endif
140142
141143#ifdef __USE_MISC
......@@ -154,7 +156,8 @@ extern size_t __REDIRECT (__fread_unlocked_chk_warn,
154156
155157extern size_t __fread_unlocked_chk (void *__restrict __ptr, size_t __ptrlen,
156158 size_t __size, size_t __n,
157 FILE *__restrict __stream) __wur;
159 FILE *__restrict __stream)
160 __wur __nonnull ((5));
158161#endif
159162
160163#endif /* bits/stdio2-decl.h. */
\ No newline at end of file
lib/libc/include/generic-glibc/bits/stdio2.h+9-7
......@@ -1,5 +1,5 @@
11/* Checking macros for stdio functions.
2 Copyright (C) 2004-2023 Free Software Foundation, Inc.
2 Copyright (C) 2004-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
......@@ -73,7 +73,7 @@ __NTH (vsnprintf (char *__restrict __s, size_t __n,
7373
7474#if __USE_FORTIFY_LEVEL > 1
7575# ifdef __va_arg_pack
76__fortify_function int
76__fortify_function __nonnull ((1)) int
7777fprintf (FILE *__restrict __stream, const char *__restrict __fmt, ...)
7878{
7979 return __fprintf_chk (__stream, __USE_FORTIFY_LEVEL - 1, __fmt,
......@@ -102,7 +102,7 @@ vprintf (const char *__restrict __fmt, __gnuc_va_list __ap)
102102#endif
103103}
104104
105__fortify_function int
105__fortify_function __nonnull ((1)) int
106106vfprintf (FILE *__restrict __stream,
107107 const char *__restrict __fmt, __gnuc_va_list __ap)
108108{
......@@ -191,7 +191,8 @@ gets (char *__str)
191191}
192192#endif
193193
194__fortify_function __wur __fortified_attr_access (__write_only__, 1, 2) char *
194__fortify_function __wur __fortified_attr_access (__write_only__, 1, 2)
195__nonnull ((3)) char *
195196fgets (char *__restrict __s, int __n, FILE *__restrict __stream)
196197{
197198 size_t sz = __glibc_objsize (__s);
......@@ -202,7 +203,7 @@ fgets (char *__restrict __s, int __n, FILE *__restrict __stream)
202203 return __fgets_chk (__s, sz, __n, __stream);
203204}
204205
205__fortify_function __wur size_t
206__fortify_function __wur __nonnull ((4)) size_t
206207fread (void *__restrict __ptr, size_t __size, size_t __n,
207208 FILE *__restrict __stream)
208209{
......@@ -215,7 +216,8 @@ fread (void *__restrict __ptr, size_t __size, size_t __n,
215216}
216217
217218#ifdef __USE_GNU
218__fortify_function __wur __fortified_attr_access (__write_only__, 1, 2) char *
219__fortify_function __wur __fortified_attr_access (__write_only__, 1, 2)
220__nonnull ((3)) char *
219221fgets_unlocked (char *__restrict __s, int __n, FILE *__restrict __stream)
220222{
221223 size_t sz = __glibc_objsize (__s);
......@@ -229,7 +231,7 @@ fgets_unlocked (char *__restrict __s, int __n, FILE *__restrict __stream)
229231
230232#ifdef __USE_MISC
231233# undef fread_unlocked
232__fortify_function __wur size_t
234__fortify_function __wur __nonnull ((4)) size_t
233235fread_unlocked (void *__restrict __ptr, size_t __size, size_t __n,
234236 FILE *__restrict __stream)
235237{
lib/libc/include/generic-glibc/bits/stdio_lim.h+1-1
......@@ -1,5 +1,5 @@
11/* System specific stdio.h definitions. Linux version.
2 Copyright (C) 2023 Free Software Foundation, Inc.
2 Copyright (C) 2023-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/stdlib-bsearch.h+1-1
......@@ -1,5 +1,5 @@
11/* Perform binary search - inline version.
2 Copyright (C) 1991-2023 Free Software Foundation, Inc.
2 Copyright (C) 1991-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/stdlib-float.h+1-1
......@@ -1,5 +1,5 @@
11/* Floating-point inline functions for stdlib.h.
2 Copyright (C) 2012-2023 Free Software Foundation, Inc.
2 Copyright (C) 2012-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/stdlib-ldbl.h+1-1
......@@ -1,5 +1,5 @@
11/* -mlong-double-64 compatibility mode for <stdlib.h> functions.
2 Copyright (C) 2006-2023 Free Software Foundation, Inc.
2 Copyright (C) 2006-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/stdlib.h+1-1
......@@ -1,5 +1,5 @@
11/* Checking macros for stdlib functions.
2 Copyright (C) 2005-2023 Free Software Foundation, Inc.
2 Copyright (C) 2005-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/string_fortified.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2004-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2004-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/strings_fortified.h+1-1
......@@ -1,5 +1,5 @@
11/* Fortify macros for strings.h functions.
2 Copyright (C) 2017-2023 Free Software Foundation, Inc.
2 Copyright (C) 2017-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/struct_mutex.h+1-1
......@@ -1,5 +1,5 @@
11/* Default mutex implementation struct definitions.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/struct_rwlock.h+18-28
......@@ -1,5 +1,5 @@
1/* MIPS internal rwlock struct definitions.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
1/* Default read-write lock implementation struct definitions.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
......@@ -16,8 +16,15 @@
1616 License along with the GNU C Library; if not, see
1717 <http://www.gnu.org/licenses/>. */
1818
19#ifndef _RWLOCK_INTERNAL_H
20#define _RWLOCK_INTERNAL_H
19#ifndef __RWLOCK_INTERNAL_H
20#define __RWLOCK_INTERNAL_H
21
22#include <bits/endian.h>
23
24/* Generic struct for both POSIX read-write lock. New ports are expected
25 to use the default layout, however archictetures can redefine it to add
26 arch-specific extensions (such as lock-elision). The struct have a size
27 of 32 bytes on both LP32 and LP64 architectures. */
2128
2229struct __pthread_rwlock_arch_t
2330{
......@@ -27,45 +34,28 @@ struct __pthread_rwlock_arch_t
2734 unsigned int __writers_futex;
2835 unsigned int __pad3;
2936 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
37 /* FLAGS must stay at its position in the structure to maintain
3638 binary compatibility. */
37 unsigned int __flags;
38# else
39# if __BYTE_ORDER == __BIG_ENDIAN
39#if __BYTE_ORDER == __BIG_ENDIAN
4040 unsigned char __pad1;
4141 unsigned char __pad2;
4242 unsigned char __shared;
43 /* FLAGS must stay at this position in the structure to maintain
44 binary compatibility. */
4543 unsigned char __flags;
46# else
47 /* FLAGS must stay at this position in the structure to maintain
48 binary compatibility. */
44#else
4945 unsigned char __flags;
5046 unsigned char __shared;
5147 unsigned char __pad1;
5248 unsigned char __pad2;
53# endif
54 int __cur_writer;
5549#endif
50 int __cur_writer;
5651};
5752
58#if _MIPS_SIM == _ABI64
53#if __BYTE_ORDER == __BIG_ENDIAN
5954# 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) \
6455 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0
65# else
66# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
56#else
57# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
6758 0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0
68# endif
6959#endif
7060
7161#endif
\ No newline at end of file
lib/libc/include/generic-glibc/bits/struct_stat.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition for struct stat.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/struct_stat_time64_helper.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition for helper to define struct stat with 64-bit time.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/syscall.h+26-2
......@@ -1,11 +1,11 @@
11/* Generated at libc build time from syscall list. */
2/* The system call list corresponds to kernel 6.4. */
2/* The system call list corresponds to kernel 6.7. */
33
44#ifndef _SYSCALL_H
55# error "Never use <bits/syscall.h> directly; include <sys/syscall.h> instead."
66#endif
77
8#define __GLIBC_LINUX_VERSION_CODE 394240
8#define __GLIBC_LINUX_VERSION_CODE 395008
99
1010#ifdef __NR_FAST_atomic_update
1111# define SYS_FAST_atomic_update __NR_FAST_atomic_update
......@@ -143,6 +143,10 @@
143143# define SYS_cacheflush __NR_cacheflush
144144#endif
145145
146#ifdef __NR_cachestat
147# define SYS_cachestat __NR_cachestat
148#endif
149
146150#ifdef __NR_capget
147151# define SYS_capget __NR_capget
148152#endif
......@@ -375,6 +379,10 @@
375379# define SYS_fchmodat __NR_fchmodat
376380#endif
377381
382#ifdef __NR_fchmodat2
383# define SYS_fchmodat2 __NR_fchmodat2
384#endif
385
378386#ifdef __NR_fchown
379387# define SYS_fchown __NR_fchown
380388#endif
......@@ -491,14 +499,26 @@
491499# define SYS_futex __NR_futex
492500#endif
493501
502#ifdef __NR_futex_requeue
503# define SYS_futex_requeue __NR_futex_requeue
504#endif
505
494506#ifdef __NR_futex_time64
495507# define SYS_futex_time64 __NR_futex_time64
496508#endif
497509
510#ifdef __NR_futex_wait
511# define SYS_futex_wait __NR_futex_wait
512#endif
513
498514#ifdef __NR_futex_waitv
499515# define SYS_futex_waitv __NR_futex_waitv
500516#endif
501517
518#ifdef __NR_futex_wake
519# define SYS_futex_wake __NR_futex_wake
520#endif
521
502522#ifdef __NR_futimesat
503523# define SYS_futimesat __NR_futimesat
504524#endif
......@@ -891,6 +911,10 @@
891911# define SYS_madvise __NR_madvise
892912#endif
893913
914#ifdef __NR_map_shadow_stack
915# define SYS_map_shadow_stack __NR_map_shadow_stack
916#endif
917
894918#ifdef __NR_mbind
895919# define SYS_mbind __NR_mbind
896920#endif
lib/libc/include/generic-glibc/bits/syslog-decl.h+1-1
......@@ -1,5 +1,5 @@
11/* Checking routines for syslog functions. Declaration only.
2 Copyright (C) 2023 Free Software Foundation, Inc.
2 Copyright (C) 2023-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/syslog-ldbl.h+1-1
......@@ -1,5 +1,5 @@
11/* -mlong-double-64 compatibility mode for syslog functions.
2 Copyright (C) 2006-2023 Free Software Foundation, Inc.
2 Copyright (C) 2006-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/syslog-path.h+1-1
......@@ -1,5 +1,5 @@
11/* <bits/syslog-path.h> -- _PATH_LOG definition
2 Copyright (C) 2006-2023 Free Software Foundation, Inc.
2 Copyright (C) 2006-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/syslog.h+1-1
......@@ -1,5 +1,5 @@
11/* Checking macros for syslog functions.
2 Copyright (C) 2005-2023 Free Software Foundation, Inc.
2 Copyright (C) 2005-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/sysmacros.h+1-1
......@@ -1,5 +1,5 @@
11/* Definitions of macros to access `dev_t' values.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/termios-baud.h+1-1
......@@ -1,5 +1,5 @@
11/* termios baud rate selection definitions. Linux/generic version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/termios-c_cc.h+1-1
......@@ -1,5 +1,5 @@
11/* termios c_cc symbolic constant definitions. Linux/generic version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/termios-c_cflag.h+1-1
......@@ -1,5 +1,5 @@
11/* termios control mode definitions. Linux/generic version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/termios-c_iflag.h+1-1
......@@ -1,5 +1,5 @@
11/* termios input mode definitions. Linux/generic version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/termios-c_lflag.h+1-1
......@@ -1,5 +1,5 @@
11/* termios local mode definitions. Linux/generic version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/termios-c_oflag.h+1-1
......@@ -1,5 +1,5 @@
11/* termios output mode definitions. Linux/generic version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/termios-misc.h+1-1
......@@ -1,5 +1,5 @@
11/* termios baud platform specific definitions. Linux/generic version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/termios-struct.h+1-1
......@@ -1,5 +1,5 @@
11/* struct termios definition. Linux/generic version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/termios-tcflow.h+1-1
......@@ -1,5 +1,5 @@
11/* termios tcflag symbolic constant definitions. Linux/generic version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/termios.h+1-1
......@@ -1,5 +1,5 @@
11/* termios type and macro definitions. Linux version.
2 Copyright (C) 1993-2023 Free Software Foundation, Inc.
2 Copyright (C) 1993-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/thread-shared-types.h+1-1
......@@ -1,5 +1,5 @@
11/* Common threading primitives definitions for both POSIX and C11.
2 Copyright (C) 2017-2023 Free Software Foundation, Inc.
2 Copyright (C) 2017-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/time.h+1-1
......@@ -1,5 +1,5 @@
11/* System-dependent timing definitions. Linux version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/time64.h+1-1
......@@ -1,5 +1,5 @@
11/* bits/time64.h -- underlying types for __time64_t. Generic version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/timerfd.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2008-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2008-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/timesize.h+1-1
......@@ -1,5 +1,5 @@
11/* Bit size of the time_t type at glibc build time, Linux/MIPS.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/timex.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1995-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1995-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/types.h+1-1
......@@ -1,5 +1,5 @@
11/* bits/types.h -- definitions of __*_t types underlying *_t types.
2 Copyright (C) 2002-2023 Free Software Foundation, Inc.
2 Copyright (C) 2002-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/types/__locale_t.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition of struct __locale_struct and __locale_t.
2 Copyright (C) 1997-2023 Free Software Foundation, Inc.
2 Copyright (C) 1997-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/types/__sigval_t.h+1-1
......@@ -1,5 +1,5 @@
11/* Define __sigval_t.
2 Copyright (C) 1997-2023 Free Software Foundation, Inc.
2 Copyright (C) 1997-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/types/cookie_io_functions_t.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/types/error_t.h+1-1
......@@ -1,5 +1,5 @@
11/* Define error_t.
2 Copyright (C) 1991-2023 Free Software Foundation, Inc.
2 Copyright (C) 1991-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/types/locale_t.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition of locale_t.
2 Copyright (C) 2017-2023 Free Software Foundation, Inc.
2 Copyright (C) 2017-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/types/stack_t.h+1-1
......@@ -1,5 +1,5 @@
11/* Define stack_t. Linux version.
2 Copyright (C) 1998-2023 Free Software Foundation, Inc.
2 Copyright (C) 1998-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/types/struct_FILE.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/types/struct___jmp_buf_tag.h+1-1
......@@ -1,5 +1,5 @@
11/* Define struct __jmp_buf_tag.
2 Copyright (C) 1991-2023 Free Software Foundation, Inc.
2 Copyright (C) 1991-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/types/struct_iovec.h+1-1
......@@ -1,5 +1,5 @@
11/* Define struct iovec.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/types/struct_msqid64_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* Generic implementation of the SysV message struct msqid64_ds.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/types/struct_msqid64_ds_helper.h+1-1
......@@ -1,5 +1,5 @@
11/* Common definitions for struct msqid_ds with 64-bit time.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/types/struct_msqid_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* Generic implementation of the SysV message struct msqid_ds.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/types/struct_rusage.h+1-1
......@@ -1,5 +1,5 @@
11/* Define struct rusage.
2 Copyright (C) 1994-2023 Free Software Foundation, Inc.
2 Copyright (C) 1994-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/types/struct_sched_param.h+1-1
......@@ -1,5 +1,5 @@
11/* Sched parameter structure. Generic version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/types/struct_semid64_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* Generic implementation of the semaphore struct semid64_ds.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/types/struct_semid64_ds_helper.h+1-1
......@@ -1,5 +1,5 @@
11/* Common definitions for struct semid_ds with 64-bit time.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/types/struct_semid_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* Generic implementation of the semaphore struct semid_ds.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/types/struct_shmid64_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* Generic implementation of the shared memory struct shmid_ds.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/types/struct_shmid64_ds_helper.h+1-1
......@@ -1,5 +1,5 @@
11/* Common definitions for struct semid_ds with 64-bit time.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/types/struct_shmid_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* Generic implementation of the shared memory struct shmid_ds.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/types/struct_sigstack.h+1-1
......@@ -1,5 +1,5 @@
11/* Define struct sigstack.
2 Copyright (C) 1998-2023 Free Software Foundation, Inc.
2 Copyright (C) 1998-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/types/struct_statx.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition of the generic version of struct statx.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/types/struct_statx_timestamp.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition of the generic version of struct statx_timestamp.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/typesizes.h+1-1
......@@ -1,5 +1,5 @@
11/* bits/typesizes.h -- underlying types for *_t. MIPS version.
2 Copyright (C) 2002-2023 Free Software Foundation, Inc.
2 Copyright (C) 2002-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/uintn-identity.h+1-1
......@@ -1,5 +1,5 @@
11/* Inline functions to return unsigned integer values unchanged.
2 Copyright (C) 2017-2023 Free Software Foundation, Inc.
2 Copyright (C) 2017-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/uio-ext.h+1-1
......@@ -1,5 +1,5 @@
11/* Operating system-specific extensions to sys/uio.h - Linux version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/uio_lim.h+1-1
......@@ -1,5 +1,5 @@
11/* Implementation limits related to sys/uio.h - Linux version.
2 Copyright (C) 2017-2023 Free Software Foundation, Inc.
2 Copyright (C) 2017-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/unistd-decl.h+1-1
......@@ -1,5 +1,5 @@
11/* Checking routines for unistd functions. Declaration only.
2 Copyright (C) 2023 Free Software Foundation, Inc.
2 Copyright (C) 2023-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/unistd.h+1-1
......@@ -1,5 +1,5 @@
11/* Checking macros for unistd functions.
2 Copyright (C) 2005-2023 Free Software Foundation, Inc.
2 Copyright (C) 2005-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/unistd_ext.h+1-1
......@@ -1,5 +1,5 @@
11/* System-specific extensions of <unistd.h>, Linux version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/utmp.h+1-1
......@@ -1,5 +1,5 @@
11/* The `struct utmp' type, describing entries in the utmp file.
2 Copyright (C) 1993-2023 Free Software Foundation, Inc.
2 Copyright (C) 1993-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/utmpx.h+1-1
......@@ -1,5 +1,5 @@
11/* Structures and definitions for the user accounting database. GNU version.
2 Copyright (C) 1997-2023 Free Software Foundation, Inc.
2 Copyright (C) 1997-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/utsname.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1995-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1995-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/waitflags.h+1-1
......@@ -1,5 +1,5 @@
11/* Definitions of flag bits for `waitpid' et al.
2 Copyright (C) 1992-2023 Free Software Foundation, Inc.
2 Copyright (C) 1992-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/waitstatus.h+1-1
......@@ -1,5 +1,5 @@
11/* Definitions of status bits for `wait' et al.
2 Copyright (C) 1992-2023 Free Software Foundation, Inc.
2 Copyright (C) 1992-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/wchar-ldbl.h+1-1
......@@ -1,5 +1,5 @@
11/* -mlong-double-64 compatibility mode for <wchar.h> functions.
2 Copyright (C) 2006-2023 Free Software Foundation, Inc.
2 Copyright (C) 2006-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/wchar.h+1-1
......@@ -1,5 +1,5 @@
11/* wchar_t type related definitions.
2 Copyright (C) 2000-2023 Free Software Foundation, Inc.
2 Copyright (C) 2000-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/wchar2-decl.h+1-1
......@@ -1,5 +1,5 @@
11/* Checking macros for wchar functions. Declarations only.
2 Copyright (C) 2004-2023 Free Software Foundation, Inc.
2 Copyright (C) 2004-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/wchar2.h+1-1
......@@ -1,5 +1,5 @@
11/* Checking macros for wchar functions.
2 Copyright (C) 2005-2023 Free Software Foundation, Inc.
2 Copyright (C) 2005-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/wctype-wchar.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1996-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1996-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/wordsize.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2002-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2002-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/bits/xopen_lim.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1996-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1996-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/byteswap.h+1-1
......@@ -1,5 +1,5 @@
11/* Swap byte order for 16, 32 and 64 bit values
2 Copyright (C) 1997-2023 Free Software Foundation, Inc.
2 Copyright (C) 1997-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/complex.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/cpio.h+1-1
......@@ -1,6 +1,6 @@
11/* Extended cpio format from POSIX.1.
22 This file is part of the GNU C Library.
3 Copyright (C) 1992-2023 Free Software Foundation, Inc.
3 Copyright (C) 1992-2024 Free Software Foundation, Inc.
44 NOTE: The canonical source of this file is maintained with the GNU cpio.
55
66 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/ctype.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/dirent.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/dlfcn.h+1-1
......@@ -1,5 +1,5 @@
11/* User functions for run-time dynamic loading.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/elf.h+129-3
......@@ -1,5 +1,5 @@
11/* This file defines standard ELF types, structures, and macros.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
......@@ -791,9 +791,12 @@ typedef struct
791791 Register */
792792#define NT_PPC_PKEY 0x110 /* Memory Protection Keys
793793 registers. */
794#define NT_PPC_DEXCR 0x111 /* PowerPC DEXCR registers. */
795#define NT_PPC_HASHKEYR 0x112 /* PowerPC HASHKEYR register. */
794796#define NT_386_TLS 0x200 /* i386 TLS slots (struct user_desc) */
795797#define NT_386_IOPERM 0x201 /* x86 io permission bitmap (1=deny) */
796798#define NT_X86_XSTATE 0x202 /* x86 extended state using xsave */
799#define NT_X86_SHSTK 0x204 /* x86 SHSTK state */
797800#define NT_S390_HIGH_GPRS 0x300 /* s390 upper register halves */
798801#define NT_S390_TIMER 0x301 /* s390 timer register */
799802#define NT_S390_TODCMP 0x302 /* s390 TOD clock comparator register */
......@@ -832,6 +835,8 @@ typedef struct
832835#define NT_MIPS_DSP 0x800 /* MIPS DSP ASE registers. */
833836#define NT_MIPS_FP_MODE 0x801 /* MIPS floating-point mode. */
834837#define NT_MIPS_MSA 0x802 /* MIPS SIMD registers. */
838#define NT_RISCV_CSR 0x900 /* RISC-V Control and Status Registers */
839#define NT_RISCV_VECTOR 0x901 /* RISC-V vector registers */
835840#define NT_LOONGARCH_CPUCFG 0xa00 /* LoongArch CPU config registers. */
836841#define NT_LOONGARCH_CSR 0xa01 /* LoongArch control and
837842 status registers. */
......@@ -841,6 +846,8 @@ typedef struct
841846 SIMD Extension registers. */
842847#define NT_LOONGARCH_LBT 0xa04 /* LoongArch Loongson Binary
843848 Translation registers. */
849#define NT_LOONGARCH_HW_BREAK 0xa05 /* LoongArch hardware breakpoint registers */
850#define NT_LOONGARCH_HW_WATCH 0xa06 /* LoongArch hardware watchpoint registers */
844851
845852/* Legal values for the note segment descriptor types for object files. */
846853
......@@ -1685,11 +1692,25 @@ typedef struct
16851692#define EF_MIPS_PIC 2 /* Contains PIC code. */
16861693#define EF_MIPS_CPIC 4 /* Uses PIC calling sequence. */
16871694#define EF_MIPS_XGOT 8
1688#define EF_MIPS_64BIT_WHIRL 16
1695#define EF_MIPS_UCODE 16
16891696#define EF_MIPS_ABI2 32
16901697#define EF_MIPS_ABI_ON32 64
1698#define EF_MIPS_OPTIONS_FIRST 0x00000080 /* Process the .MIPS.options
1699 section first by ld. */
1700#define EF_MIPS_32BITMODE 0x00000100 /* Indicates code compiled for
1701 a 64-bit machine in 32-bit
1702 mode (regs are 32-bits
1703 wide). */
16911704#define EF_MIPS_FP64 512 /* Uses FP64 (12 callee-saved). */
16921705#define EF_MIPS_NAN2008 1024 /* Uses IEEE 754-2008 NaN encoding. */
1706#define EF_MIPS_ARCH_ASE 0x0f000000 /* Architectural Extensions
1707 used by this file. */
1708#define EF_MIPS_ARCH_ASE_MDMX 0x08000000 /* Use MDMX multimedia
1709 extensions. */
1710#define EF_MIPS_ARCH_ASE_M16 0x04000000 /* Use MIPS-16 ISA
1711 extensions. */
1712#define EF_MIPS_ARCH_ASE_MICROMIPS 0x02000000 /* Use MICROMIPS ISA
1713 extensions. */
16931714#define EF_MIPS_ARCH 0xf0000000 /* MIPS architecture level. */
16941715
16951716/* Legal values for MIPS architecture level. */
......@@ -1703,6 +1724,38 @@ typedef struct
17031724#define EF_MIPS_ARCH_64 0x60000000 /* MIPS64 code. */
17041725#define EF_MIPS_ARCH_32R2 0x70000000 /* MIPS32r2 code. */
17051726#define EF_MIPS_ARCH_64R2 0x80000000 /* MIPS64r2 code. */
1727#define EF_MIPS_ARCH_32R6 0x90000000 /* MIPS32r6 code. */
1728#define EF_MIPS_ARCH_64R6 0xa0000000 /* MIPS64r6 code. */
1729#define EF_MIPS_ABI 0x0000F000 /* The ABI of the file. Also
1730 see EF_MIPS_ABI2 above. */
1731#define EF_MIPS_ABI_O32 0x00001000 /* The original o32 abi. */
1732#define EF_MIPS_ABI_O64 0x00002000 /* O32 extended to work on
1733 64 bit architectures. */
1734#define EF_MIPS_ABI_EABI32 0x00003000 /* EABI in 32 bit mode. */
1735#define EF_MIPS_ABI_EABI64 0x00004000 /* EABI in 64 bit mode. */
1736#define EF_MIPS_MACH 0x00FF0000
1737#define EF_MIPS_MACH_3900 0x00810000
1738#define EF_MIPS_MACH_4010 0x00820000
1739#define EF_MIPS_MACH_4100 0x00830000
1740#define EF_MIPS_MACH_ALLEGREX 0x00840000
1741#define EF_MIPS_MACH_4650 0x00850000
1742#define EF_MIPS_MACH_4120 0x00870000
1743#define EF_MIPS_MACH_4111 0x00880000
1744#define EF_MIPS_MACH_SB1 0x008a0000
1745#define EF_MIPS_MACH_OCTEON 0x008b0000
1746#define EF_MIPS_MACH_XLR 0x008c0000
1747#define EF_MIPS_MACH_OCTEON2 0x008d0000
1748#define EF_MIPS_MACH_OCTEON3 0x008e0000
1749#define EF_MIPS_MACH_5400 0x00910000
1750#define EF_MIPS_MACH_5900 0x00920000
1751#define EF_MIPS_MACH_IAMR2 0x00930000
1752#define EF_MIPS_MACH_5500 0x00980000
1753#define EF_MIPS_MACH_9000 0x00990000
1754#define EF_MIPS_MACH_LS2E 0x00A00000
1755#define EF_MIPS_MACH_LS2F 0x00A10000
1756#define EF_MIPS_MACH_GS464 0x00A20000
1757#define EF_MIPS_MACH_GS464E 0x00A30000
1758#define EF_MIPS_MACH_GS264E 0x00A40000
17061759
17071760/* The following are unofficial names and should not be used. */
17081761
......@@ -1763,6 +1816,7 @@ typedef struct
17631816#define SHT_MIPS_EH_REGION 0x70000027
17641817#define SHT_MIPS_XLATE_OLD 0x70000028
17651818#define SHT_MIPS_PDR_EXCEPTION 0x70000029
1819#define SHT_MIPS_ABIFLAGS 0x7000002a
17661820#define SHT_MIPS_XHASH 0x7000002b
17671821
17681822/* Legal values for sh_flags field of Elf32_Shdr. */
......@@ -1931,10 +1985,68 @@ typedef struct
19311985#define R_MIPS_TLS_TPREL_HI16 49 /* TP-relative offset, high 16 bits */
19321986#define R_MIPS_TLS_TPREL_LO16 50 /* TP-relative offset, low 16 bits */
19331987#define R_MIPS_GLOB_DAT 51
1988#define R_MIPS_PC21_S2 60
1989#define R_MIPS_PC26_S2 61
1990#define R_MIPS_PC18_S3 62
1991#define R_MIPS_PC19_S2 63
1992#define R_MIPS_PCHI16 64
1993#define R_MIPS_PCLO16 65
1994#define R_MIPS16_26 100
1995#define R_MIPS16_GPREL 101
1996#define R_MIPS16_GOT16 102
1997#define R_MIPS16_CALL16 103
1998#define R_MIPS16_HI16 104
1999#define R_MIPS16_LO16 105
2000#define R_MIPS16_TLS_GD 106
2001#define R_MIPS16_TLS_LDM 107
2002#define R_MIPS16_TLS_DTPREL_HI16 108
2003#define R_MIPS16_TLS_DTPREL_LO16 109
2004#define R_MIPS16_TLS_GOTTPREL 110
2005#define R_MIPS16_TLS_TPREL_HI16 111
2006#define R_MIPS16_TLS_TPREL_LO16 112
2007#define R_MIPS16_PC16_S1 113
19342008#define R_MIPS_COPY 126
19352009#define R_MIPS_JUMP_SLOT 127
2010#define R_MIPS_RELATIVE 128
2011#define R_MICROMIPS_26_S1 133
2012#define R_MICROMIPS_HI16 134
2013#define R_MICROMIPS_LO16 135
2014#define R_MICROMIPS_GPREL16 136
2015#define R_MICROMIPS_LITERAL 137
2016#define R_MICROMIPS_GOT16 138
2017#define R_MICROMIPS_PC7_S1 139
2018#define R_MICROMIPS_PC10_S1 140
2019#define R_MICROMIPS_PC16_S1 141
2020#define R_MICROMIPS_CALL16 142
2021#define R_MICROMIPS_GOT_DISP 145
2022#define R_MICROMIPS_GOT_PAGE 146
2023#define R_MICROMIPS_GOT_OFST 147
2024#define R_MICROMIPS_GOT_HI16 148
2025#define R_MICROMIPS_GOT_LO16 149
2026#define R_MICROMIPS_SUB 150
2027#define R_MICROMIPS_HIGHER 151
2028#define R_MICROMIPS_HIGHEST 152
2029#define R_MICROMIPS_CALL_HI16 153
2030#define R_MICROMIPS_CALL_LO16 154
2031#define R_MICROMIPS_SCN_DISP 155
2032#define R_MICROMIPS_JALR 156
2033#define R_MICROMIPS_HI0_LO16 157
2034#define R_MICROMIPS_TLS_GD 162
2035#define R_MICROMIPS_TLS_LDM 163
2036#define R_MICROMIPS_TLS_DTPREL_HI16 164
2037#define R_MICROMIPS_TLS_DTPREL_LO16 165
2038#define R_MICROMIPS_TLS_GOTTPREL 166
2039#define R_MICROMIPS_TLS_TPREL_HI16 169
2040#define R_MICROMIPS_TLS_TPREL_LO16 170
2041#define R_MICROMIPS_GPREL7_S2 172
2042#define R_MICROMIPS_PC23_S2 173
2043#define R_MIPS_PC32 248
2044#define R_MIPS_EH 249
2045#define R_MIPS_GNU_REL16_S2 250
2046#define R_MIPS_GNU_VTINHERIT 253
2047#define R_MIPS_GNU_VTENTRY 254
19362048/* Keep this the last entry. */
1937#define R_MIPS_NUM 128
2049#define R_MIPS_NUM 255
19382050
19392051/* Legal values for p_type field of Elf32_Phdr. */
19402052
......@@ -3527,6 +3639,11 @@ enum
35273639/* x86-64 sh_type values. */
35283640#define SHT_X86_64_UNWIND 0x70000001 /* Unwind information. */
35293641
3642/* x86-64 d_tag values. */
3643#define DT_X86_64_PLT (DT_LOPROC + 0)
3644#define DT_X86_64_PLTSZ (DT_LOPROC + 1)
3645#define DT_X86_64_PLTENT (DT_LOPROC + 3)
3646#define DT_X86_64_NUM 4
35303647
35313648/* AM33 relocations. */
35323649#define R_MN10300_NONE 0 /* No reloc. */
......@@ -4205,6 +4322,15 @@ enum
42054322#define R_LARCH_TLS_GD_HI20 98
42064323#define R_LARCH_32_PCREL 99
42074324#define R_LARCH_RELAX 100
4325#define R_LARCH_DELETE 101
4326#define R_LARCH_ALIGN 102
4327#define R_LARCH_PCREL20_S2 103
4328#define R_LARCH_CFA 104
4329#define R_LARCH_ADD6 105
4330#define R_LARCH_SUB6 106
4331#define R_LARCH_ADD_ULEB128 107
4332#define R_LARCH_SUB_ULEB128 108
4333#define R_LARCH_64_PCREL 109
42084334
42094335/* ARC specific declarations. */
42104336
lib/libc/include/generic-glibc/endian.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1992-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1992-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/envz.h+1-1
......@@ -1,5 +1,5 @@
11/* Routines for dealing with '\0' separated environment vectors
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/err.h+1-1
......@@ -1,5 +1,5 @@
11/* 4.4BSD utility functions for error messages.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/errno.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/error.h+1-1
......@@ -1,5 +1,5 @@
11/* Declaration for error-reporting function
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/execinfo.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1998-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1998-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/fcntl.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/features-time64.h+1-1
......@@ -1,5 +1,5 @@
11/* Features part to handle 64-bit time_t support.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/features.h+2-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
......@@ -231,6 +231,7 @@
231231# undef _ATFILE_SOURCE
232232# define _ATFILE_SOURCE 1
233233
234/* Zig patch */
234235# if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 34) || __GLIBC__ > 2
235236# undef _DYNAMIC_STACK_SIZE_SOURCE
236237# define _DYNAMIC_STACK_SIZE_SOURCE 1
lib/libc/include/generic-glibc/fenv.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/finclude/math-vector-fortran.h+1-1
......@@ -1,5 +1,5 @@
11! Platform-specific declarations of SIMD math functions for Fortran. -*- f90 -*-
2! Copyright (C) 2019-2023 Free Software Foundation, Inc.
2! Copyright (C) 2019-2024 Free Software Foundation, Inc.
33! This file is part of the GNU C Library.
44!
55! The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/fmtmsg.h+1-1
......@@ -1,5 +1,5 @@
11/* Message display handling.
2 Copyright (C) 1997-2023 Free Software Foundation, Inc.
2 Copyright (C) 1997-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/fnmatch.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/fpregdef.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/fpu_control.h+1-1
......@@ -1,5 +1,5 @@
11/* FPU control word bits. Mips version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/fts.h+1-1
......@@ -1,5 +1,5 @@
11/* File tree traversal functions declarations.
2 Copyright (C) 1994-2023 Free Software Foundation, Inc.
2 Copyright (C) 1994-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/ftw.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1992-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1992-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/gconv.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/getopt.h+1-1
......@@ -1,5 +1,5 @@
11/* Declarations for getopt.
2 Copyright (C) 1989-2023 Free Software Foundation, Inc.
2 Copyright (C) 1989-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44 Unlike the bulk of the getopt implementation, this file is NOT part
55 of gnulib; gnulib also has a getopt.h but it is different.
lib/libc/include/generic-glibc/glob.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/gnu-versions.h+1-1
......@@ -1,5 +1,5 @@
11/* Header with interface version macros for library pieces copied elsewhere.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/gnu/lib-names-32.h-1
......@@ -6,7 +6,6 @@
66#define LD_SO "ld.so.1"
77#define LIBANL_SO "libanl.so.1"
88#define LIBBROKENLOCALE_SO "libBrokenLocale.so.1"
9#define LIBCRYPT_SO "libcrypt.so.1"
109#define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0"
1110#define LIBC_SO "libc.so.6"
1211#define LIBDL_SO "libdl.so.2"
lib/libc/include/generic-glibc/gnu/lib-names-hard.h-1
......@@ -7,7 +7,6 @@
77#define LD_SO "ld-linux-armhf.so.3"
88#define LIBANL_SO "libanl.so.1"
99#define LIBBROKENLOCALE_SO "libBrokenLocale.so.1"
10#define LIBCRYPT_SO "libcrypt.so.1"
1110#define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0"
1211#define LIBC_SO "libc.so.6"
1312#define LIBDL_SO "libdl.so.2"
lib/libc/include/generic-glibc/gnu/lib-names-n32_hard.h-1
......@@ -6,7 +6,6 @@
66#define LD_SO "ld.so.1"
77#define LIBANL_SO "libanl.so.1"
88#define LIBBROKENLOCALE_SO "libBrokenLocale.so.1"
9#define LIBCRYPT_SO "libcrypt.so.1"
109#define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0"
1110#define LIBC_SO "libc.so.6"
1211#define LIBDL_SO "libdl.so.2"
lib/libc/include/generic-glibc/gnu/lib-names-n64_hard.h-1
......@@ -6,7 +6,6 @@
66#define LD_SO "ld.so.1"
77#define LIBANL_SO "libanl.so.1"
88#define LIBBROKENLOCALE_SO "libBrokenLocale.so.1"
9#define LIBCRYPT_SO "libcrypt.so.1"
109#define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0"
1110#define LIBC_SO "libc.so.6"
1211#define LIBDL_SO "libdl.so.2"
lib/libc/include/generic-glibc/gnu/lib-names-o32_hard.h-1
......@@ -6,7 +6,6 @@
66#define LD_SO "ld.so.1"
77#define LIBANL_SO "libanl.so.1"
88#define LIBBROKENLOCALE_SO "libBrokenLocale.so.1"
9#define LIBCRYPT_SO "libcrypt.so.1"
109#define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0"
1110#define LIBC_SO "libc.so.6"
1211#define LIBDL_SO "libdl.so.2"
lib/libc/include/generic-glibc/gnu/lib-names-o32_soft.h-1
......@@ -6,7 +6,6 @@
66#define LD_SO "ld.so.1"
77#define LIBANL_SO "libanl.so.1"
88#define LIBBROKENLOCALE_SO "libBrokenLocale.so.1"
9#define LIBCRYPT_SO "libcrypt.so.1"
109#define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0"
1110#define LIBC_SO "libc.so.6"
1211#define LIBDL_SO "libdl.so.2"
lib/libc/include/generic-glibc/gnu/lib-names-soft.h-1
......@@ -7,7 +7,6 @@
77#define LD_SO "ld-linux.so.3"
88#define LIBANL_SO "libanl.so.1"
99#define LIBBROKENLOCALE_SO "libBrokenLocale.so.1"
10#define LIBCRYPT_SO "libcrypt.so.1"
1110#define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0"
1211#define LIBC_SO "libc.so.6"
1312#define LIBDL_SO "libdl.so.2"
lib/libc/include/generic-glibc/gnu/libc-version.h+1-1
......@@ -1,5 +1,5 @@
11/* Interface to GNU libc specific functions for version information.
2 Copyright (C) 1998-2023 Free Software Foundation, Inc.
2 Copyright (C) 1998-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/grp.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/gshadow.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2009-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2009-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/iconv.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/ieee754.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1992-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1992-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/ifaddrs.h+1-1
......@@ -1,5 +1,5 @@
11/* ifaddrs.h -- declarations for getting network interface addresses
2 Copyright (C) 2002-2023 Free Software Foundation, Inc.
2 Copyright (C) 2002-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/inttypes.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/langinfo.h+1-1
......@@ -1,5 +1,5 @@
11/* Access to locale-dependent parameters.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/libgen.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1996-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1996-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/libintl.h+1-1
......@@ -1,5 +1,5 @@
11/* Message catalogs for internationalization.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44 This file is derived from the file libgettext.h in the GNU gettext package.
55
lib/libc/include/generic-glibc/limits.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/link.h+1-1
......@@ -1,6 +1,6 @@
11/* Data structure for communication from the run-time dynamic linker for
22 loaded ELF shared objects.
3 Copyright (C) 1995-2023 Free Software Foundation, Inc.
3 Copyright (C) 1995-2024 Free Software Foundation, Inc.
44 This file is part of the GNU C Library.
55
66 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/locale.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/malloc.h+1-1
......@@ -1,5 +1,5 @@
11/* Prototypes and definition for malloc implementation.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 Copyright The GNU Toolchain Authors.
44 This file is part of the GNU C Library.
55
lib/libc/include/generic-glibc/math.h+1-1
......@@ -1,5 +1,5 @@
11/* Declarations for math functions.
2 Copyright (C) 1991-2023 Free Software Foundation, Inc.
2 Copyright (C) 1991-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/mcheck.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1996-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1996-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/memory.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/mntent.h+1-1
......@@ -1,5 +1,5 @@
11/* Utilities for reading/writing fstab, mtab, etc.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/monetary.h+1-1
......@@ -1,5 +1,5 @@
11/* Header file for monetary value formatting functions.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/mqueue.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2004-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2004-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/net/ethernet.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/net/if.h+1-1
......@@ -1,5 +1,5 @@
11/* net/if.h -- declarations for inquiring about network interfaces
2 Copyright (C) 1997-2023 Free Software Foundation, Inc.
2 Copyright (C) 1997-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/net/if_arp.h+1-1
......@@ -1,5 +1,5 @@
11/* Definitions for Address Resolution Protocol.
2 Copyright (C) 1997-2023 Free Software Foundation, Inc.
2 Copyright (C) 1997-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/net/if_packet.h+1-1
......@@ -1,5 +1,5 @@
11/* Definitions for use with Linux SOCK_PACKET sockets.
2 Copyright (C) 1997-2023 Free Software Foundation, Inc.
2 Copyright (C) 1997-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/net/if_shaper.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1998-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1998-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/net/if_slip.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/net/route.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/netash/ash.h+1-1
......@@ -1,5 +1,5 @@
11/* Definitions for use with Linux AF_ASH sockets.
2 Copyright (C) 1998-2023 Free Software Foundation, Inc.
2 Copyright (C) 1998-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/netatalk/at.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/netax25/ax25.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/netdb.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1996-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1996-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/neteconet/ec.h+1-1
......@@ -1,5 +1,5 @@
11/* Definitions for use with Linux AF_ECONET sockets.
2 Copyright (C) 1998-2023 Free Software Foundation, Inc.
2 Copyright (C) 1998-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/netinet/ether.h+1-1
......@@ -1,5 +1,5 @@
11/* Functions for storing Ethernet addresses in ASCII and mapping to hostnames.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/netinet/icmp6.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/netinet/if_ether.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1996-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1996-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/netinet/if_fddi.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/netinet/if_tr.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/netinet/igmp.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/netinet/in.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/netinet/in_systm.h+1-1
......@@ -1,5 +1,5 @@
11/* System specific type definitions for networking code.
2 Copyright (C) 1997-2023 Free Software Foundation, Inc.
2 Copyright (C) 1997-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/netinet/ip.h+6-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
......@@ -191,6 +191,11 @@ struct ip_timestamp
191191 */
192192#define IPTOS_DSCP_VA 0xb0
193193
194/*
195 * Lower-Effort Per-Hop Behavior DSCP code point from RFC-8622, Section 12.
196 */
197#define IPTOS_DSCP_LE 0x04
198
194199/*
195200 * In RFC 2474, Section 4.2.2.1, the Class Selector Codepoints subsume
196201 * the old ToS Precedence values.
lib/libc/include/generic-glibc/netinet/ip6.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/netinet/ip_icmp.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/netinet/tcp.h+2-1
......@@ -272,6 +272,7 @@ struct tcp_info
272272
273273/* tcp_md5sig extension flags for TCP_MD5SIG_EXT. */
274274#define TCP_MD5SIG_FLAG_PREFIX 1 /* Address prefix length. */
275#define TCP_MD5SIG_FLAG_IFINDEX 2 /* Ifindex set. */
275276
276277struct tcp_md5sig
277278{
......@@ -279,7 +280,7 @@ struct tcp_md5sig
279280 uint8_t tcpm_flags; /* Extension flags. */
280281 uint8_t tcpm_prefixlen; /* Address prefix. */
281282 uint16_t tcpm_keylen; /* Key length. */
282 uint32_t __tcpm_pad; /* Zero. */
283 int tcpm_ifindex; /* Device index for scope. */
283284 uint8_t tcpm_key[TCP_MD5SIG_MAXKEYLEN]; /* Key (binary). */
284285};
285286
lib/libc/include/generic-glibc/netinet/udp.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/netipx/ipx.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/netiucv/iucv.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2007-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2007-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/netpacket/packet.h+2-1
......@@ -1,5 +1,5 @@
11/* Definitions for use with Linux AF_PACKET sockets.
2 Copyright (C) 1998-2023 Free Software Foundation, Inc.
2 Copyright (C) 1998-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
......@@ -64,6 +64,7 @@ struct sockaddr_ll
6464#define PACKET_ROLLOVER_STATS 21
6565#define PACKET_FANOUT_DATA 22
6666#define PACKET_IGNORE_OUTGOING 23
67#define PACKET_VNET_HDR_SZ 24
6768
6869struct packet_mreq
6970 {
lib/libc/include/generic-glibc/netrom/netrom.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/netrose/rose.h+1-1
......@@ -1,5 +1,5 @@
11/* Definitions for Rose packet radio address family.
2 Copyright (C) 1998-2023 Free Software Foundation, Inc.
2 Copyright (C) 1998-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/nl_types.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1996-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1996-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/nss.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1996-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1996-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/obstack.h+1-1
......@@ -1,5 +1,5 @@
11/* obstack.h - object stack macros
2 Copyright (C) 1988-2023 Free Software Foundation, Inc.
2 Copyright (C) 1988-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/printf.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/proc_service.h+1-1
......@@ -1,5 +1,5 @@
11/* Callback interface for libthread_db, functions users must define.
2 Copyright (C) 1999-2023 Free Software Foundation, Inc.
2 Copyright (C) 1999-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/pthread.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2002-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2002-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/pty.h+1-1
......@@ -1,5 +1,5 @@
11/* Functions for pseudo TTY handling.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/pwd.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/re_comp.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1996-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1996-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/regdef.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1994-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1994-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/regex.h+1-1
......@@ -1,6 +1,6 @@
11/* Definitions for data structures and routines for the regular
22 expression library.
3 Copyright (C) 1985, 1989-2023 Free Software Foundation, Inc.
3 Copyright (C) 1985, 1989-2024 Free Software Foundation, Inc.
44 This file is part of the GNU C Library.
55
66 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/regexp.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1996-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1996-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sched.h+1-1
......@@ -1,5 +1,5 @@
11/* Definitions for POSIX 1003.1b-1993 (aka POSIX.4) scheduling interface.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/scsi/scsi.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1998-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1998-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/scsi/scsi_ioctl.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1999-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1999-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/scsi/sg.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/search.h+1-1
......@@ -1,5 +1,5 @@
11/* Declarations for System V style searching functions.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/semaphore.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2002-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2002-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/setjmp.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sgidefs.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1996-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1996-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sgtty.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/shadow.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1996-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1996-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/signal.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/spawn.h+6-2
......@@ -1,5 +1,5 @@
11/* Definitions for POSIX spawn interface.
2 Copyright (C) 2000-2023 Free Software Foundation, Inc.
2 Copyright (C) 2000-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
......@@ -34,7 +34,8 @@ typedef struct
3434 sigset_t __ss;
3535 struct sched_param __sp;
3636 int __policy;
37 int __pad[16];
37 int __cgroup;
38 int __pad[15];
3839} posix_spawnattr_t;
3940
4041
......@@ -59,6 +60,7 @@ typedef struct
5960#ifdef __USE_GNU
6061# define POSIX_SPAWN_USEVFORK 0x40
6162# define POSIX_SPAWN_SETSID 0x80
63# define POSIX_SPAWN_SETCGROUP 0x100
6264#endif
6365
6466
......@@ -231,4 +233,6 @@ posix_spawn_file_actions_addtcsetpgrp_np (posix_spawn_file_actions_t *,
231233
232234__END_DECLS
233235
236#include <bits/spawn_ext.h>
237
234238#endif /* spawn.h */
\ No newline at end of file
lib/libc/include/generic-glibc/stdbit.h created+792
......@@ -0,0 +1,792 @@
1/* ISO C23 Standard: 7.18 - Bit and byte utilities <stdbit.h>.
2 Copyright (C) 2024 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 You should have received a copy of the GNU Lesser General Public
16 License along with the GNU C Library; if not, see
17 <https://www.gnu.org/licenses/>. */
18
19#ifndef _STDBIT_H
20#define _STDBIT_H 1
21
22#include <features.h>
23#include <bits/endian.h>
24#include <bits/stdint-intn.h>
25#include <bits/stdint-uintn.h>
26#include <bits/stdint-least.h>
27/* In C23, <stdbool.h> defines only an implementation-namespace macro,
28 so is OK to include here. Before C23, including <stdbool.h> allows
29 the header to use bool rather than _Bool unconditionally, and so to
30 compile as C++ (although the type-generic macros are not a good
31 form of type-generic interface for C++). */
32#include <stdbool.h>
33#define __need_size_t
34#include <stddef.h>
35
36#define __STDC_VERSION_STDBIT_H__ 202311L
37
38#define __STDC_ENDIAN_LITTLE__ __LITTLE_ENDIAN
39#define __STDC_ENDIAN_BIG__ __BIG_ENDIAN
40#define __STDC_ENDIAN_NATIVE__ __BYTE_ORDER
41
42__BEGIN_DECLS
43
44/* Use __pacify_uint16 (N) instead of (uint16_t) (N) when the cast is helpful
45 only to pacify older GCC (e.g., GCC 10 -Wconversion) or non-GCC (e.g
46 clang -Wimplicit-int-conversion). */
47#if __GNUC_PREREQ (11, 0)
48# define __pacify_uint8(n) (n)
49# define __pacify_uint16(n) (n)
50#else
51# define __pacify_uint8(n) ((uint8_t) (n))
52# define __pacify_uint16(n) ((uint16_t) (n))
53#endif
54
55/* Count leading zeros. */
56extern unsigned int stdc_leading_zeros_uc (unsigned char __x)
57 __THROW __attribute_const__;
58extern unsigned int stdc_leading_zeros_us (unsigned short __x)
59 __THROW __attribute_const__;
60extern unsigned int stdc_leading_zeros_ui (unsigned int __x)
61 __THROW __attribute_const__;
62extern unsigned int stdc_leading_zeros_ul (unsigned long int __x)
63 __THROW __attribute_const__;
64__extension__
65extern unsigned int stdc_leading_zeros_ull (unsigned long long int __x)
66 __THROW __attribute_const__;
67#define stdc_leading_zeros(x) \
68 (stdc_leading_zeros_ull (x) \
69 - (unsigned int) (8 * (sizeof (0ULL) - sizeof (x))))
70
71#if __GNUC_PREREQ (3, 4) || __glibc_has_builtin (__builtin_clzll)
72static __always_inline unsigned int
73__clz64_inline (uint64_t __x)
74{
75 return __x == 0 ? 64U : (unsigned int) __builtin_clzll (__x);
76}
77
78static __always_inline unsigned int
79__clz32_inline (uint32_t __x)
80{
81 return __x == 0 ? 32U : (unsigned int) __builtin_clz (__x);
82}
83
84static __always_inline unsigned int
85__clz16_inline (uint16_t __x)
86{
87 return __clz32_inline (__x) - 16;
88}
89
90static __always_inline unsigned int
91__clz8_inline (uint8_t __x)
92{
93 return __clz32_inline (__x) - 24;
94}
95
96# define stdc_leading_zeros_uc(x) (__clz8_inline (x))
97# define stdc_leading_zeros_us(x) (__clz16_inline (x))
98# define stdc_leading_zeros_ui(x) (__clz32_inline (x))
99# if __WORDSIZE == 64
100# define stdc_leading_zeros_ul(x) (__clz64_inline (x))
101# else
102# define stdc_leading_zeros_ul(x) (__clz32_inline (x))
103# endif
104# define stdc_leading_zeros_ull(x) (__clz64_inline (x))
105#endif
106
107/* Count leading ones. */
108extern unsigned int stdc_leading_ones_uc (unsigned char __x)
109 __THROW __attribute_const__;
110extern unsigned int stdc_leading_ones_us (unsigned short __x)
111 __THROW __attribute_const__;
112extern unsigned int stdc_leading_ones_ui (unsigned int __x)
113 __THROW __attribute_const__;
114extern unsigned int stdc_leading_ones_ul (unsigned long int __x)
115 __THROW __attribute_const__;
116__extension__
117extern unsigned int stdc_leading_ones_ull (unsigned long long int __x)
118 __THROW __attribute_const__;
119#define stdc_leading_ones(x) \
120 (stdc_leading_ones_ull ((unsigned long long int) (x) \
121 << 8 * (sizeof (0ULL) - sizeof (x))))
122
123#if __GNUC_PREREQ (3, 4) || __glibc_has_builtin (__builtin_clzll)
124static __always_inline unsigned int
125__clo64_inline (uint64_t __x)
126{
127 return __clz64_inline (~__x);
128}
129
130static __always_inline unsigned int
131__clo32_inline (uint32_t __x)
132{
133 return __clz32_inline (~__x);
134}
135
136static __always_inline unsigned int
137__clo16_inline (uint16_t __x)
138{
139 return __clz16_inline (__pacify_uint16 (~__x));
140}
141
142static __always_inline unsigned int
143__clo8_inline (uint8_t __x)
144{
145 return __clz8_inline (__pacify_uint8 (~__x));
146}
147
148# define stdc_leading_ones_uc(x) (__clo8_inline (x))
149# define stdc_leading_ones_us(x) (__clo16_inline (x))
150# define stdc_leading_ones_ui(x) (__clo32_inline (x))
151# if __WORDSIZE == 64
152# define stdc_leading_ones_ul(x) (__clo64_inline (x))
153# else
154# define stdc_leading_ones_ul(x) (__clo32_inline (x))
155# endif
156# define stdc_leading_ones_ull(x) (__clo64_inline (x))
157#endif
158
159/* Count trailing zeros. */
160extern unsigned int stdc_trailing_zeros_uc (unsigned char __x)
161 __THROW __attribute_const__;
162extern unsigned int stdc_trailing_zeros_us (unsigned short __x)
163 __THROW __attribute_const__;
164extern unsigned int stdc_trailing_zeros_ui (unsigned int __x)
165 __THROW __attribute_const__;
166extern unsigned int stdc_trailing_zeros_ul (unsigned long int __x)
167 __THROW __attribute_const__;
168__extension__
169extern unsigned int stdc_trailing_zeros_ull (unsigned long long int __x)
170 __THROW __attribute_const__;
171#define stdc_trailing_zeros(x) \
172 (sizeof (x) == 8 ? stdc_trailing_zeros_ull (x) \
173 : sizeof (x) == 4 ? stdc_trailing_zeros_ui (x) \
174 : sizeof (x) == 2 ? stdc_trailing_zeros_us (__pacify_uint16 (x)) \
175 : stdc_trailing_zeros_uc (__pacify_uint8 (x)))
176
177#if __GNUC_PREREQ (3, 4) || __glibc_has_builtin (__builtin_ctzll)
178static __always_inline unsigned int
179__ctz64_inline (uint64_t __x)
180{
181 return __x == 0 ? 64U : (unsigned int) __builtin_ctzll (__x);
182}
183
184static __always_inline unsigned int
185__ctz32_inline (uint32_t __x)
186{
187 return __x == 0 ? 32U : (unsigned int) __builtin_ctz (__x);
188}
189
190static __always_inline unsigned int
191__ctz16_inline (uint16_t __x)
192{
193 return __x == 0 ? 16U : (unsigned int) __builtin_ctz (__x);
194}
195
196static __always_inline unsigned int
197__ctz8_inline (uint8_t __x)
198{
199 return __x == 0 ? 8U : (unsigned int) __builtin_ctz (__x);
200}
201
202# define stdc_trailing_zeros_uc(x) (__ctz8_inline (x))
203# define stdc_trailing_zeros_us(x) (__ctz16_inline (x))
204# define stdc_trailing_zeros_ui(x) (__ctz32_inline (x))
205# if __WORDSIZE == 64
206# define stdc_trailing_zeros_ul(x) (__ctz64_inline (x))
207# else
208# define stdc_trailing_zeros_ul(x) (__ctz32_inline (x))
209# endif
210# define stdc_trailing_zeros_ull(x) (__ctz64_inline (x))
211#endif
212
213/* Count trailing ones. */
214extern unsigned int stdc_trailing_ones_uc (unsigned char __x)
215 __THROW __attribute_const__;
216extern unsigned int stdc_trailing_ones_us (unsigned short __x)
217 __THROW __attribute_const__;
218extern unsigned int stdc_trailing_ones_ui (unsigned int __x)
219 __THROW __attribute_const__;
220extern unsigned int stdc_trailing_ones_ul (unsigned long int __x)
221 __THROW __attribute_const__;
222__extension__
223extern unsigned int stdc_trailing_ones_ull (unsigned long long int __x)
224 __THROW __attribute_const__;
225#define stdc_trailing_ones(x) (stdc_trailing_ones_ull (x))
226
227#if __GNUC_PREREQ (3, 4) || __glibc_has_builtin (__builtin_ctzll)
228static __always_inline unsigned int
229__cto64_inline (uint64_t __x)
230{
231 return __ctz64_inline (~__x);
232}
233
234static __always_inline unsigned int
235__cto32_inline (uint32_t __x)
236{
237 return __ctz32_inline (~__x);
238}
239
240static __always_inline unsigned int
241__cto16_inline (uint16_t __x)
242{
243 return __ctz16_inline (__pacify_uint16 (~__x));
244}
245
246static __always_inline unsigned int
247__cto8_inline (uint8_t __x)
248{
249 return __ctz8_inline (__pacify_uint8 (~__x));
250}
251
252# define stdc_trailing_ones_uc(x) (__cto8_inline (x))
253# define stdc_trailing_ones_us(x) (__cto16_inline (x))
254# define stdc_trailing_ones_ui(x) (__cto32_inline (x))
255# if __WORDSIZE == 64
256# define stdc_trailing_ones_ul(x) (__cto64_inline (x))
257# else
258# define stdc_trailing_ones_ul(x) (__cto32_inline (x))
259# endif
260# define stdc_trailing_ones_ull(x) (__cto64_inline (x))
261#endif
262
263/* First leading zero. */
264extern unsigned int stdc_first_leading_zero_uc (unsigned char __x)
265 __THROW __attribute_const__;
266extern unsigned int stdc_first_leading_zero_us (unsigned short __x)
267 __THROW __attribute_const__;
268extern unsigned int stdc_first_leading_zero_ui (unsigned int __x)
269 __THROW __attribute_const__;
270extern unsigned int stdc_first_leading_zero_ul (unsigned long int __x)
271 __THROW __attribute_const__;
272__extension__
273extern unsigned int stdc_first_leading_zero_ull (unsigned long long int __x)
274 __THROW __attribute_const__;
275#define stdc_first_leading_zero(x) \
276 (sizeof (x) == 8 ? stdc_first_leading_zero_ull (x) \
277 : sizeof (x) == 4 ? stdc_first_leading_zero_ui (x) \
278 : sizeof (x) == 2 ? stdc_first_leading_zero_us (__pacify_uint16 (x)) \
279 : stdc_first_leading_zero_uc (__pacify_uint8 (x)))
280
281#if __GNUC_PREREQ (3, 4) || __glibc_has_builtin (__builtin_clzll)
282static __always_inline unsigned int
283__flz64_inline (uint64_t __x)
284{
285 return __x == (uint64_t) -1 ? 0 : 1 + __clo64_inline (__x);
286}
287
288static __always_inline unsigned int
289__flz32_inline (uint32_t __x)
290{
291 return __x == (uint32_t) -1 ? 0 : 1 + __clo32_inline (__x);
292}
293
294static __always_inline unsigned int
295__flz16_inline (uint16_t __x)
296{
297 return __x == (uint16_t) -1 ? 0 : 1 + __clo16_inline (__x);
298}
299
300static __always_inline unsigned int
301__flz8_inline (uint8_t __x)
302{
303 return __x == (uint8_t) -1 ? 0 : 1 + __clo8_inline (__x);
304}
305
306# define stdc_first_leading_zero_uc(x) (__flz8_inline (x))
307# define stdc_first_leading_zero_us(x) (__flz16_inline (x))
308# define stdc_first_leading_zero_ui(x) (__flz32_inline (x))
309# if __WORDSIZE == 64
310# define stdc_first_leading_zero_ul(x) (__flz64_inline (x))
311# else
312# define stdc_first_leading_zero_ul(x) (__flz32_inline (x))
313# endif
314# define stdc_first_leading_zero_ull(x) (__flz64_inline (x))
315#endif
316
317/* First leading one. */
318extern unsigned int stdc_first_leading_one_uc (unsigned char __x)
319 __THROW __attribute_const__;
320extern unsigned int stdc_first_leading_one_us (unsigned short __x)
321 __THROW __attribute_const__;
322extern unsigned int stdc_first_leading_one_ui (unsigned int __x)
323 __THROW __attribute_const__;
324extern unsigned int stdc_first_leading_one_ul (unsigned long int __x)
325 __THROW __attribute_const__;
326__extension__
327extern unsigned int stdc_first_leading_one_ull (unsigned long long int __x)
328 __THROW __attribute_const__;
329#define stdc_first_leading_one(x) \
330 (sizeof (x) == 8 ? stdc_first_leading_one_ull (x) \
331 : sizeof (x) == 4 ? stdc_first_leading_one_ui (x) \
332 : sizeof (x) == 2 ? stdc_first_leading_one_us (__pacify_uint16 (x)) \
333 : stdc_first_leading_one_uc (__pacify_uint8 (x)))
334
335#if __GNUC_PREREQ (3, 4) || __glibc_has_builtin (__builtin_clzll)
336static __always_inline unsigned int
337__flo64_inline (uint64_t __x)
338{
339 return __x == 0 ? 0 : 1 + __clz64_inline (__x);
340}
341
342static __always_inline unsigned int
343__flo32_inline (uint32_t __x)
344{
345 return __x == 0 ? 0 : 1 + __clz32_inline (__x);
346}
347
348static __always_inline unsigned int
349__flo16_inline (uint16_t __x)
350{
351 return __x == 0 ? 0 : 1 + __clz16_inline (__x);
352}
353
354static __always_inline unsigned int
355__flo8_inline (uint8_t __x)
356{
357 return __x == 0 ? 0 : 1 + __clz8_inline (__x);
358}
359
360# define stdc_first_leading_one_uc(x) (__flo8_inline (x))
361# define stdc_first_leading_one_us(x) (__flo16_inline (x))
362# define stdc_first_leading_one_ui(x) (__flo32_inline (x))
363# if __WORDSIZE == 64
364# define stdc_first_leading_one_ul(x) (__flo64_inline (x))
365# else
366# define stdc_first_leading_one_ul(x) (__flo32_inline (x))
367# endif
368# define stdc_first_leading_one_ull(x) (__flo64_inline (x))
369#endif
370
371/* First trailing zero. */
372extern unsigned int stdc_first_trailing_zero_uc (unsigned char __x)
373 __THROW __attribute_const__;
374extern unsigned int stdc_first_trailing_zero_us (unsigned short __x)
375 __THROW __attribute_const__;
376extern unsigned int stdc_first_trailing_zero_ui (unsigned int __x)
377 __THROW __attribute_const__;
378extern unsigned int stdc_first_trailing_zero_ul (unsigned long int __x)
379 __THROW __attribute_const__;
380__extension__
381extern unsigned int stdc_first_trailing_zero_ull (unsigned long long int __x)
382 __THROW __attribute_const__;
383#define stdc_first_trailing_zero(x) \
384 (sizeof (x) == 8 ? stdc_first_trailing_zero_ull (x) \
385 : sizeof (x) == 4 ? stdc_first_trailing_zero_ui (x) \
386 : sizeof (x) == 2 ? stdc_first_trailing_zero_us (__pacify_uint16 (x)) \
387 : stdc_first_trailing_zero_uc (__pacify_uint8 (x)))
388
389#if __GNUC_PREREQ (3, 4) || __glibc_has_builtin (__builtin_ctzll)
390static __always_inline unsigned int
391__ftz64_inline (uint64_t __x)
392{
393 return __x == (uint64_t) -1 ? 0 : 1 + __cto64_inline (__x);
394}
395
396static __always_inline unsigned int
397__ftz32_inline (uint32_t __x)
398{
399 return __x == (uint32_t) -1 ? 0 : 1 + __cto32_inline (__x);
400}
401
402static __always_inline unsigned int
403__ftz16_inline (uint16_t __x)
404{
405 return __x == (uint16_t) -1 ? 0 : 1 + __cto16_inline (__x);
406}
407
408static __always_inline unsigned int
409__ftz8_inline (uint8_t __x)
410{
411 return __x == (uint8_t) -1 ? 0 : 1 + __cto8_inline (__x);
412}
413
414# define stdc_first_trailing_zero_uc(x) (__ftz8_inline (x))
415# define stdc_first_trailing_zero_us(x) (__ftz16_inline (x))
416# define stdc_first_trailing_zero_ui(x) (__ftz32_inline (x))
417# if __WORDSIZE == 64
418# define stdc_first_trailing_zero_ul(x) (__ftz64_inline (x))
419# else
420# define stdc_first_trailing_zero_ul(x) (__ftz32_inline (x))
421# endif
422# define stdc_first_trailing_zero_ull(x) (__ftz64_inline (x))
423#endif
424
425/* First trailing one. */
426extern unsigned int stdc_first_trailing_one_uc (unsigned char __x)
427 __THROW __attribute_const__;
428extern unsigned int stdc_first_trailing_one_us (unsigned short __x)
429 __THROW __attribute_const__;
430extern unsigned int stdc_first_trailing_one_ui (unsigned int __x)
431 __THROW __attribute_const__;
432extern unsigned int stdc_first_trailing_one_ul (unsigned long int __x)
433 __THROW __attribute_const__;
434__extension__
435extern unsigned int stdc_first_trailing_one_ull (unsigned long long int __x)
436 __THROW __attribute_const__;
437#define stdc_first_trailing_one(x) \
438 (sizeof (x) == 8 ? stdc_first_trailing_one_ull (x) \
439 : sizeof (x) == 4 ? stdc_first_trailing_one_ui (x) \
440 : sizeof (x) == 2 ? stdc_first_trailing_one_us (__pacify_uint16 (x)) \
441 : stdc_first_trailing_one_uc (__pacify_uint8 (x)))
442
443#if __GNUC_PREREQ (3, 4) || __glibc_has_builtin (__builtin_ctzll)
444static __always_inline unsigned int
445__fto64_inline (uint64_t __x)
446{
447 return __x == 0 ? 0 : 1 + __ctz64_inline (__x);
448}
449
450static __always_inline unsigned int
451__fto32_inline (uint32_t __x)
452{
453 return __x == 0 ? 0 : 1 + __ctz32_inline (__x);
454}
455
456static __always_inline unsigned int
457__fto16_inline (uint16_t __x)
458{
459 return __x == 0 ? 0 : 1 + __ctz16_inline (__x);
460}
461
462static __always_inline unsigned int
463__fto8_inline (uint8_t __x)
464{
465 return __x == 0 ? 0 : 1 + __ctz8_inline (__x);
466}
467
468# define stdc_first_trailing_one_uc(x) (__fto8_inline (x))
469# define stdc_first_trailing_one_us(x) (__fto16_inline (x))
470# define stdc_first_trailing_one_ui(x) (__fto32_inline (x))
471# if __WORDSIZE == 64
472# define stdc_first_trailing_one_ul(x) (__fto64_inline (x))
473# else
474# define stdc_first_trailing_one_ul(x) (__fto32_inline (x))
475# endif
476# define stdc_first_trailing_one_ull(x) (__fto64_inline (x))
477#endif
478
479/* Count zeros. */
480extern unsigned int stdc_count_zeros_uc (unsigned char __x)
481 __THROW __attribute_const__;
482extern unsigned int stdc_count_zeros_us (unsigned short __x)
483 __THROW __attribute_const__;
484extern unsigned int stdc_count_zeros_ui (unsigned int __x)
485 __THROW __attribute_const__;
486extern unsigned int stdc_count_zeros_ul (unsigned long int __x)
487 __THROW __attribute_const__;
488__extension__
489extern unsigned int stdc_count_zeros_ull (unsigned long long int __x)
490 __THROW __attribute_const__;
491#define stdc_count_zeros(x) \
492 (stdc_count_zeros_ull (x) \
493 - (unsigned int) (8 * (sizeof (0ULL) - sizeof (x))))
494
495#if __GNUC_PREREQ (3, 4) || __glibc_has_builtin (__builtin_popcountll)
496static __always_inline unsigned int
497__cz64_inline (uint64_t __x)
498{
499 return 64U - (unsigned int) __builtin_popcountll (__x);
500}
501
502static __always_inline unsigned int
503__cz32_inline (uint32_t __x)
504{
505 return 32U - (unsigned int) __builtin_popcount (__x);
506}
507
508static __always_inline unsigned int
509__cz16_inline (uint16_t __x)
510{
511 return 16U - (unsigned int) __builtin_popcount (__x);
512}
513
514static __always_inline unsigned int
515__cz8_inline (uint8_t __x)
516{
517 return 8U - (unsigned int) __builtin_popcount (__x);
518}
519
520# define stdc_count_zeros_uc(x) (__cz8_inline (x))
521# define stdc_count_zeros_us(x) (__cz16_inline (x))
522# define stdc_count_zeros_ui(x) (__cz32_inline (x))
523# if __WORDSIZE == 64
524# define stdc_count_zeros_ul(x) (__cz64_inline (x))
525# else
526# define stdc_count_zeros_ul(x) (__cz32_inline (x))
527# endif
528# define stdc_count_zeros_ull(x) (__cz64_inline (x))
529#endif
530
531/* Count ones. */
532extern unsigned int stdc_count_ones_uc (unsigned char __x)
533 __THROW __attribute_const__;
534extern unsigned int stdc_count_ones_us (unsigned short __x)
535 __THROW __attribute_const__;
536extern unsigned int stdc_count_ones_ui (unsigned int __x)
537 __THROW __attribute_const__;
538extern unsigned int stdc_count_ones_ul (unsigned long int __x)
539 __THROW __attribute_const__;
540__extension__
541extern unsigned int stdc_count_ones_ull (unsigned long long int __x)
542 __THROW __attribute_const__;
543#define stdc_count_ones(x) (stdc_count_ones_ull (x))
544
545#if __GNUC_PREREQ (3, 4) || __glibc_has_builtin (__builtin_popcountll)
546static __always_inline unsigned int
547__co64_inline (uint64_t __x)
548{
549 return (unsigned int) __builtin_popcountll (__x);
550}
551
552static __always_inline unsigned int
553__co32_inline (uint32_t __x)
554{
555 return (unsigned int) __builtin_popcount (__x);
556}
557
558static __always_inline unsigned int
559__co16_inline (uint16_t __x)
560{
561 return (unsigned int) __builtin_popcount (__x);
562}
563
564static __always_inline unsigned int
565__co8_inline (uint8_t __x)
566{
567 return (unsigned int) __builtin_popcount (__x);
568}
569
570# define stdc_count_ones_uc(x) (__co8_inline (x))
571# define stdc_count_ones_us(x) (__co16_inline (x))
572# define stdc_count_ones_ui(x) (__co32_inline (x))
573# if __WORDSIZE == 64
574# define stdc_count_ones_ul(x) (__co64_inline (x))
575# else
576# define stdc_count_ones_ul(x) (__co32_inline (x))
577# endif
578# define stdc_count_ones_ull(x) (__co64_inline (x))
579#endif
580
581/* Single-bit check. */
582extern bool stdc_has_single_bit_uc (unsigned char __x)
583 __THROW __attribute_const__;
584extern bool stdc_has_single_bit_us (unsigned short __x)
585 __THROW __attribute_const__;
586extern bool stdc_has_single_bit_ui (unsigned int __x)
587 __THROW __attribute_const__;
588extern bool stdc_has_single_bit_ul (unsigned long int __x)
589 __THROW __attribute_const__;
590__extension__
591extern bool stdc_has_single_bit_ull (unsigned long long int __x)
592 __THROW __attribute_const__;
593#define stdc_has_single_bit(x) \
594 ((bool) (sizeof (x) <= sizeof (unsigned int) \
595 ? stdc_has_single_bit_ui (x) \
596 : stdc_has_single_bit_ull (x)))
597
598static __always_inline bool
599__hsb64_inline (uint64_t __x)
600{
601 return (__x ^ (__x - 1)) > __x - 1;
602}
603
604static __always_inline bool
605__hsb32_inline (uint32_t __x)
606{
607 return (__x ^ (__x - 1)) > __x - 1;
608}
609
610static __always_inline bool
611__hsb16_inline (uint16_t __x)
612{
613 return (__x ^ (__x - 1)) > __x - 1;
614}
615
616static __always_inline bool
617__hsb8_inline (uint8_t __x)
618{
619 return (__x ^ (__x - 1)) > __x - 1;
620}
621
622#define stdc_has_single_bit_uc(x) (__hsb8_inline (x))
623#define stdc_has_single_bit_us(x) (__hsb16_inline (x))
624#define stdc_has_single_bit_ui(x) (__hsb32_inline (x))
625#if __WORDSIZE == 64
626# define stdc_has_single_bit_ul(x) (__hsb64_inline (x))
627#else
628# define stdc_has_single_bit_ul(x) (__hsb32_inline (x))
629#endif
630#define stdc_has_single_bit_ull(x) (__hsb64_inline (x))
631
632/* Bit width. */
633extern unsigned int stdc_bit_width_uc (unsigned char __x)
634 __THROW __attribute_const__;
635extern unsigned int stdc_bit_width_us (unsigned short __x)
636 __THROW __attribute_const__;
637extern unsigned int stdc_bit_width_ui (unsigned int __x)
638 __THROW __attribute_const__;
639extern unsigned int stdc_bit_width_ul (unsigned long int __x)
640 __THROW __attribute_const__;
641__extension__
642extern unsigned int stdc_bit_width_ull (unsigned long long int __x)
643 __THROW __attribute_const__;
644#define stdc_bit_width(x) (stdc_bit_width_ull (x))
645
646#if __GNUC_PREREQ (3, 4) || __glibc_has_builtin (__builtin_clzll)
647static __always_inline unsigned int
648__bw64_inline (uint64_t __x)
649{
650 return 64 - __clz64_inline (__x);
651}
652
653static __always_inline unsigned int
654__bw32_inline (uint32_t __x)
655{
656 return 32 - __clz32_inline (__x);
657}
658
659static __always_inline unsigned int
660__bw16_inline (uint16_t __x)
661{
662 return 16 - __clz16_inline (__x);
663}
664
665static __always_inline unsigned int
666__bw8_inline (uint8_t __x)
667{
668 return 8 - __clz8_inline (__x);
669}
670
671# define stdc_bit_width_uc(x) (__bw8_inline (x))
672# define stdc_bit_width_us(x) (__bw16_inline (x))
673# define stdc_bit_width_ui(x) (__bw32_inline (x))
674# if __WORDSIZE == 64
675# define stdc_bit_width_ul(x) (__bw64_inline (x))
676# else
677# define stdc_bit_width_ul(x) (__bw32_inline (x))
678# endif
679# define stdc_bit_width_ull(x) (__bw64_inline (x))
680#endif
681
682/* Bit floor. */
683extern unsigned char stdc_bit_floor_uc (unsigned char __x)
684 __THROW __attribute_const__;
685extern unsigned short stdc_bit_floor_us (unsigned short __x)
686 __THROW __attribute_const__;
687extern unsigned int stdc_bit_floor_ui (unsigned int __x)
688 __THROW __attribute_const__;
689extern unsigned long int stdc_bit_floor_ul (unsigned long int __x)
690 __THROW __attribute_const__;
691__extension__
692extern unsigned long long int stdc_bit_floor_ull (unsigned long long int __x)
693 __THROW __attribute_const__;
694#define stdc_bit_floor(x) ((__typeof (x)) stdc_bit_floor_ull (x))
695
696#if __GNUC_PREREQ (3, 4) || __glibc_has_builtin (__builtin_clzll)
697static __always_inline uint64_t
698__bf64_inline (uint64_t __x)
699{
700 return __x == 0 ? 0 : ((uint64_t) 1) << (__bw64_inline (__x) - 1);
701}
702
703static __always_inline uint32_t
704__bf32_inline (uint32_t __x)
705{
706 return __x == 0 ? 0 : ((uint32_t) 1) << (__bw32_inline (__x) - 1);
707}
708
709static __always_inline uint16_t
710__bf16_inline (uint16_t __x)
711{
712 return __pacify_uint16 (__x == 0
713 ? 0 : ((uint16_t) 1) << (__bw16_inline (__x) - 1));
714}
715
716static __always_inline uint8_t
717__bf8_inline (uint8_t __x)
718{
719 return __pacify_uint8 (__x == 0
720 ? 0 : ((uint8_t) 1) << (__bw8_inline (__x) - 1));
721}
722
723# define stdc_bit_floor_uc(x) ((unsigned char) __bf8_inline (x))
724# define stdc_bit_floor_us(x) ((unsigned short) __bf16_inline (x))
725# define stdc_bit_floor_ui(x) ((unsigned int) __bf32_inline (x))
726# if __WORDSIZE == 64
727# define stdc_bit_floor_ul(x) ((unsigned long int) __bf64_inline (x))
728# else
729# define stdc_bit_floor_ul(x) ((unsigned long int) __bf32_inline (x))
730# endif
731# define stdc_bit_floor_ull(x) ((unsigned long long int) __bf64_inline (x))
732#endif
733
734/* Bit ceiling. */
735extern unsigned char stdc_bit_ceil_uc (unsigned char __x)
736 __THROW __attribute_const__;
737extern unsigned short stdc_bit_ceil_us (unsigned short __x)
738 __THROW __attribute_const__;
739extern unsigned int stdc_bit_ceil_ui (unsigned int __x)
740 __THROW __attribute_const__;
741extern unsigned long int stdc_bit_ceil_ul (unsigned long int __x)
742 __THROW __attribute_const__;
743__extension__
744extern unsigned long long int stdc_bit_ceil_ull (unsigned long long int __x)
745 __THROW __attribute_const__;
746#define stdc_bit_ceil(x) ((__typeof (x)) stdc_bit_ceil_ull (x))
747
748#if __GNUC_PREREQ (3, 4) || __glibc_has_builtin (__builtin_clzll)
749static __always_inline uint64_t
750__bc64_inline (uint64_t __x)
751{
752 return __x <= 1 ? 1 : ((uint64_t) 2) << (__bw64_inline (__x - 1) - 1);
753}
754
755static __always_inline uint32_t
756__bc32_inline (uint32_t __x)
757{
758 return __x <= 1 ? 1 : ((uint32_t) 2) << (__bw32_inline (__x - 1) - 1);
759}
760
761static __always_inline uint16_t
762__bc16_inline (uint16_t __x)
763{
764 return __pacify_uint16 (__x <= 1
765 ? 1
766 : ((uint16_t) 2)
767 << (__bw16_inline ((uint16_t) (__x - 1)) - 1));
768}
769
770static __always_inline uint8_t
771__bc8_inline (uint8_t __x)
772{
773 return __pacify_uint8 (__x <= 1
774 ? 1
775 : ((uint8_t) 2)
776 << (__bw8_inline ((uint8_t) (__x - 1)) - 1));
777}
778
779# define stdc_bit_ceil_uc(x) ((unsigned char) __bc8_inline (x))
780# define stdc_bit_ceil_us(x) ((unsigned short) __bc16_inline (x))
781# define stdc_bit_ceil_ui(x) ((unsigned int) __bc32_inline (x))
782# if __WORDSIZE == 64
783# define stdc_bit_ceil_ul(x) ((unsigned long int) __bc64_inline (x))
784# else
785# define stdc_bit_ceil_ul(x) ((unsigned long int) __bc32_inline (x))
786# endif
787# define stdc_bit_ceil_ull(x) ((unsigned long long int) __bc64_inline (x))
788#endif
789
790__END_DECLS
791
792#endif /* _STDBIT_H */
\ No newline at end of file
lib/libc/include/generic-glibc/stdc-predef.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/stdint.h+2-13
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
......@@ -38,18 +38,7 @@
3838
3939
4040/* Small types. */
41
42/* Signed. */
43typedef __int_least8_t int_least8_t;
44typedef __int_least16_t int_least16_t;
45typedef __int_least32_t int_least32_t;
46typedef __int_least64_t int_least64_t;
47
48/* Unsigned. */
49typedef __uint_least8_t uint_least8_t;
50typedef __uint_least16_t uint_least16_t;
51typedef __uint_least32_t uint_least32_t;
52typedef __uint_least64_t uint_least64_t;
41#include <bits/stdint-least.h>
5342
5443
5544/* Fast types. */
lib/libc/include/generic-glibc/stdio.h+83-67
......@@ -1,5 +1,6 @@
11/* Define ISO C stdio on top of C++ iostreams.
2 Copyright (C) 1991-2023 Free Software Foundation, Inc.
2 Copyright (C) 1991-2024 Free Software Foundation, Inc.
3 Copyright The GNU Toolchain Authors.
34 This file is part of the GNU C Library.
45
56 The GNU C Library is free software; you can redistribute it and/or
......@@ -278,7 +279,7 @@ extern FILE *__REDIRECT (fopen, (const char *__restrict __filename,
278279extern FILE *__REDIRECT (freopen, (const char *__restrict __filename,
279280 const char *__restrict __modes,
280281 FILE *__restrict __stream), freopen64)
281 __wur;
282 __wur __nonnull ((3));
282283# else
283284# define fopen fopen64
284285# define freopen freopen64
......@@ -330,21 +331,22 @@ extern __FILE *open_wmemstream (wchar_t **__bufloc, size_t *__sizeloc) __THROW
330331
331332/* If BUF is NULL, make STREAM unbuffered.
332333 Else make it use buffer BUF, of size BUFSIZ. */
333extern void setbuf (FILE *__restrict __stream, char *__restrict __buf) __THROW;
334extern void setbuf (FILE *__restrict __stream, char *__restrict __buf) __THROW
335 __nonnull ((1));
334336/* Make STREAM use buffering mode MODE.
335337 If BUF is not NULL, use N bytes of it for buffering;
336338 else allocate an internal buffer N bytes long. */
337339extern int setvbuf (FILE *__restrict __stream, char *__restrict __buf,
338 int __modes, size_t __n) __THROW;
340 int __modes, size_t __n) __THROW __nonnull ((1));
339341
340342#ifdef __USE_MISC
341343/* If BUF is NULL, make STREAM unbuffered.
342344 Else make it use SIZE bytes of BUF for buffering. */
343345extern void setbuffer (FILE *__restrict __stream, char *__restrict __buf,
344 size_t __size) __THROW;
346 size_t __size) __THROW __nonnull ((1));
345347
346348/* Make STREAM line-buffered. */
347extern void setlinebuf (FILE *__stream) __THROW;
349extern void setlinebuf (FILE *__stream) __THROW __nonnull ((1));
348350#endif
349351
350352
......@@ -353,7 +355,7 @@ extern void setlinebuf (FILE *__stream) __THROW;
353355 This function is a possible cancellation point and therefore not
354356 marked with __THROW. */
355357extern int fprintf (FILE *__restrict __stream,
356 const char *__restrict __format, ...);
358 const char *__restrict __format, ...) __nonnull ((1));
357359/* Write formatted output to stdout.
358360
359361 This function is a possible cancellation point and therefore not
......@@ -368,7 +370,7 @@ extern int sprintf (char *__restrict __s,
368370 This function is a possible cancellation point and therefore not
369371 marked with __THROW. */
370372extern int vfprintf (FILE *__restrict __s, const char *__restrict __format,
371 __gnuc_va_list __arg);
373 __gnuc_va_list __arg) __nonnull ((1));
372374/* Write formatted output to stdout from argument list ARG.
373375
374376 This function is a possible cancellation point and therefore not
......@@ -418,7 +420,7 @@ extern int dprintf (int __fd, const char *__restrict __fmt, ...)
418420 This function is a possible cancellation point and therefore not
419421 marked with __THROW. */
420422extern int fscanf (FILE *__restrict __stream,
421 const char *__restrict __format, ...) __wur;
423 const char *__restrict __format, ...) __wur __nonnull ((1));
422424/* Read formatted input from stdin.
423425
424426 This function is a possible cancellation point and therefore not
......@@ -439,7 +441,7 @@ extern int sscanf (const char *__restrict __s,
439441# ifdef __REDIRECT
440442extern int __REDIRECT (fscanf, (FILE *__restrict __stream,
441443 const char *__restrict __format, ...),
442 __isoc23_fscanf) __wur;
444 __isoc23_fscanf) __wur __nonnull ((1));
443445extern int __REDIRECT (scanf, (const char *__restrict __format, ...),
444446 __isoc23_scanf) __wur;
445447extern int __REDIRECT_NTH (sscanf, (const char *__restrict __s,
......@@ -447,7 +449,8 @@ extern int __REDIRECT_NTH (sscanf, (const char *__restrict __s,
447449 __isoc23_sscanf);
448450# else
449451extern int __isoc23_fscanf (FILE *__restrict __stream,
450 const char *__restrict __format, ...) __wur;
452 const char *__restrict __format, ...) __wur
453 __nonnull ((1));
451454extern int __isoc23_scanf (const char *__restrict __format, ...) __wur;
452455extern int __isoc23_sscanf (const char *__restrict __s,
453456 const char *__restrict __format, ...) __THROW;
......@@ -459,7 +462,7 @@ extern int __isoc23_sscanf (const char *__restrict __s,
459462# ifdef __REDIRECT
460463extern int __REDIRECT (fscanf, (FILE *__restrict __stream,
461464 const char *__restrict __format, ...),
462 __isoc99_fscanf) __wur;
465 __isoc99_fscanf) __wur __nonnull ((1));
463466extern int __REDIRECT (scanf, (const char *__restrict __format, ...),
464467 __isoc99_scanf) __wur;
465468extern int __REDIRECT_NTH (sscanf, (const char *__restrict __s,
......@@ -467,7 +470,8 @@ extern int __REDIRECT_NTH (sscanf, (const char *__restrict __s,
467470 __isoc99_sscanf);
468471# else
469472extern int __isoc99_fscanf (FILE *__restrict __stream,
470 const char *__restrict __format, ...) __wur;
473 const char *__restrict __format, ...) __wur
474 __nonnull ((1));
471475extern int __isoc99_scanf (const char *__restrict __format, ...) __wur;
472476extern int __isoc99_sscanf (const char *__restrict __s,
473477 const char *__restrict __format, ...) __THROW;
......@@ -485,7 +489,7 @@ extern int __isoc99_sscanf (const char *__restrict __s,
485489 marked with __THROW. */
486490extern int vfscanf (FILE *__restrict __s, const char *__restrict __format,
487491 __gnuc_va_list __arg)
488 __attribute__ ((__format__ (__scanf__, 2, 0))) __wur;
492 __attribute__ ((__format__ (__scanf__, 2, 0))) __wur __nonnull ((1));
489493
490494/* Read formatted input from stdin into argument list ARG.
491495
......@@ -508,7 +512,7 @@ extern int __REDIRECT (vfscanf,
508512 (FILE *__restrict __s,
509513 const char *__restrict __format, __gnuc_va_list __arg),
510514 __isoc23_vfscanf)
511 __attribute__ ((__format__ (__scanf__, 2, 0))) __wur;
515 __attribute__ ((__format__ (__scanf__, 2, 0))) __wur __nonnull ((1));
512516extern int __REDIRECT (vscanf, (const char *__restrict __format,
513517 __gnuc_va_list __arg), __isoc23_vscanf)
514518 __attribute__ ((__format__ (__scanf__, 1, 0))) __wur;
......@@ -520,7 +524,7 @@ extern int __REDIRECT_NTH (vsscanf,
520524# elif !defined __REDIRECT
521525extern int __isoc23_vfscanf (FILE *__restrict __s,
522526 const char *__restrict __format,
523 __gnuc_va_list __arg) __wur;
527 __gnuc_va_list __arg) __wur __nonnull ((1));
524528extern int __isoc23_vscanf (const char *__restrict __format,
525529 __gnuc_va_list __arg) __wur;
526530extern int __isoc23_vsscanf (const char *__restrict __s,
......@@ -537,7 +541,7 @@ extern int __REDIRECT (vfscanf,
537541 (FILE *__restrict __s,
538542 const char *__restrict __format, __gnuc_va_list __arg),
539543 __isoc99_vfscanf)
540 __attribute__ ((__format__ (__scanf__, 2, 0))) __wur;
544 __attribute__ ((__format__ (__scanf__, 2, 0))) __wur __nonnull ((1));
541545extern int __REDIRECT (vscanf, (const char *__restrict __format,
542546 __gnuc_va_list __arg), __isoc99_vscanf)
543547 __attribute__ ((__format__ (__scanf__, 1, 0))) __wur;
......@@ -549,7 +553,7 @@ extern int __REDIRECT_NTH (vsscanf,
549553# elif !defined __REDIRECT
550554extern int __isoc99_vfscanf (FILE *__restrict __s,
551555 const char *__restrict __format,
552 __gnuc_va_list __arg) __wur;
556 __gnuc_va_list __arg) __wur __nonnull ((1));
553557extern int __isoc99_vscanf (const char *__restrict __format,
554558 __gnuc_va_list __arg) __wur;
555559extern int __isoc99_vsscanf (const char *__restrict __s,
......@@ -568,8 +572,8 @@ extern int __isoc99_vsscanf (const char *__restrict __s,
568572
569573 These functions are possible cancellation points and therefore not
570574 marked with __THROW. */
571extern int fgetc (FILE *__stream);
572extern int getc (FILE *__stream);
575extern int fgetc (FILE *__stream) __nonnull ((1));
576extern int getc (FILE *__stream) __nonnull ((1));
573577
574578/* Read a character from stdin.
575579
......@@ -582,7 +586,7 @@ extern int getchar (void);
582586
583587 These functions are possible cancellation points and therefore not
584588 marked with __THROW. */
585extern int getc_unlocked (FILE *__stream);
589extern int getc_unlocked (FILE *__stream) __nonnull ((1));
586590extern int getchar_unlocked (void);
587591#endif /* Use POSIX. */
588592
......@@ -593,7 +597,7 @@ extern int getchar_unlocked (void);
593597 cancellation point. But due to similarity with an POSIX interface
594598 or due to the implementation it is a cancellation point and
595599 therefore not marked with __THROW. */
596extern int fgetc_unlocked (FILE *__stream);
600extern int fgetc_unlocked (FILE *__stream) __nonnull ((1));
597601#endif /* Use MISC. */
598602
599603
......@@ -604,8 +608,8 @@ extern int fgetc_unlocked (FILE *__stream);
604608
605609 These functions is a possible cancellation point and therefore not
606610 marked with __THROW. */
607extern int fputc (int __c, FILE *__stream);
608extern int putc (int __c, FILE *__stream);
611extern int fputc (int __c, FILE *__stream) __nonnull ((2));
612extern int putc (int __c, FILE *__stream) __nonnull ((2));
609613
610614/* Write a character to stdout.
611615
......@@ -620,7 +624,7 @@ extern int putchar (int __c);
620624 cancellation point. But due to similarity with an POSIX interface
621625 or due to the implementation it is a cancellation point and
622626 therefore not marked with __THROW. */
623extern int fputc_unlocked (int __c, FILE *__stream);
627extern int fputc_unlocked (int __c, FILE *__stream) __nonnull ((2));
624628#endif /* Use MISC. */
625629
626630#ifdef __USE_POSIX199506
......@@ -628,7 +632,7 @@ extern int fputc_unlocked (int __c, FILE *__stream);
628632
629633 These functions are possible cancellation points and therefore not
630634 marked with __THROW. */
631extern int putc_unlocked (int __c, FILE *__stream);
635extern int putc_unlocked (int __c, FILE *__stream) __nonnull ((2));
632636extern int putchar_unlocked (int __c);
633637#endif /* Use POSIX. */
634638
......@@ -636,10 +640,10 @@ extern int putchar_unlocked (int __c);
636640#if defined __USE_MISC \
637641 || (defined __USE_XOPEN && !defined __USE_XOPEN2K)
638642/* Get a word (int) from STREAM. */
639extern int getw (FILE *__stream);
643extern int getw (FILE *__stream) __nonnull ((1));
640644
641645/* Write a word (int) to STREAM. */
642extern int putw (int __w, FILE *__stream);
646extern int putw (int __w, FILE *__stream) __nonnull ((2));
643647#endif
644648
645649
......@@ -648,7 +652,7 @@ extern int putw (int __w, FILE *__stream);
648652 This function is a possible cancellation point and therefore not
649653 marked with __THROW. */
650654extern char *fgets (char *__restrict __s, int __n, FILE *__restrict __stream)
651 __wur __fortified_attr_access (__write_only__, 1, 2);
655 __wur __fortified_attr_access (__write_only__, 1, 2) __nonnull ((3));
652656
653657#if __GLIBC_USE (DEPRECATED_GETS)
654658/* Get a newline-terminated string from stdin, removing the newline.
......@@ -672,7 +676,7 @@ extern char *gets (char *__s) __wur __attribute_deprecated__;
672676 therefore not marked with __THROW. */
673677extern char *fgets_unlocked (char *__restrict __s, int __n,
674678 FILE *__restrict __stream) __wur
675 __fortified_attr_access (__write_only__, 1, 2);
679 __fortified_attr_access (__write_only__, 1, 2) __nonnull ((3));
676680#endif
677681
678682
......@@ -689,10 +693,10 @@ extern char *fgets_unlocked (char *__restrict __s, int __n,
689693 therefore not marked with __THROW. */
690694extern __ssize_t __getdelim (char **__restrict __lineptr,
691695 size_t *__restrict __n, int __delimiter,
692 FILE *__restrict __stream) __wur;
696 FILE *__restrict __stream) __wur __nonnull ((4));
693697extern __ssize_t getdelim (char **__restrict __lineptr,
694698 size_t *__restrict __n, int __delimiter,
695 FILE *__restrict __stream) __wur;
699 FILE *__restrict __stream) __wur __nonnull ((4));
696700
697701/* Like `getdelim', but reads up to a newline.
698702
......@@ -702,7 +706,7 @@ extern __ssize_t getdelim (char **__restrict __lineptr,
702706 therefore not marked with __THROW. */
703707extern __ssize_t getline (char **__restrict __lineptr,
704708 size_t *__restrict __n,
705 FILE *__restrict __stream) __wur;
709 FILE *__restrict __stream) __wur __nonnull ((3));
706710#endif
707711
708712
......@@ -710,7 +714,8 @@ extern __ssize_t getline (char **__restrict __lineptr,
710714
711715 This function is a possible cancellation point and therefore not
712716 marked with __THROW. */
713extern int fputs (const char *__restrict __s, FILE *__restrict __stream);
717extern int fputs (const char *__restrict __s, FILE *__restrict __stream)
718 __nonnull ((2));
714719
715720/* Write a string, followed by a newline, to stdout.
716721
......@@ -723,7 +728,7 @@ extern int puts (const char *__s);
723728
724729 This function is a possible cancellation point and therefore not
725730 marked with __THROW. */
726extern int ungetc (int __c, FILE *__stream);
731extern int ungetc (int __c, FILE *__stream) __nonnull ((2));
727732
728733
729734/* Read chunks of generic data from STREAM.
......@@ -731,13 +736,14 @@ extern int ungetc (int __c, FILE *__stream);
731736 This function is a possible cancellation point and therefore not
732737 marked with __THROW. */
733738extern size_t fread (void *__restrict __ptr, size_t __size,
734 size_t __n, FILE *__restrict __stream) __wur;
739 size_t __n, FILE *__restrict __stream) __wur
740 __nonnull((4));
735741/* Write chunks of generic data to STREAM.
736742
737743 This function is a possible cancellation point and therefore not
738744 marked with __THROW. */
739745extern size_t fwrite (const void *__restrict __ptr, size_t __size,
740 size_t __n, FILE *__restrict __s);
746 size_t __n, FILE *__restrict __s) __nonnull((4));
741747
742748#ifdef __USE_GNU
743749/* This function does the same as `fputs' but does not lock the stream.
......@@ -747,7 +753,7 @@ extern size_t fwrite (const void *__restrict __ptr, size_t __size,
747753 or due to the implementation it is a cancellation point and
748754 therefore not marked with __THROW. */
749755extern int fputs_unlocked (const char *__restrict __s,
750 FILE *__restrict __stream);
756 FILE *__restrict __stream) __nonnull ((2));
751757#endif
752758
753759#ifdef __USE_MISC
......@@ -758,9 +764,11 @@ extern int fputs_unlocked (const char *__restrict __s,
758764 or due to the implementation they are cancellation points and
759765 therefore not marked with __THROW. */
760766extern size_t fread_unlocked (void *__restrict __ptr, size_t __size,
761 size_t __n, FILE *__restrict __stream) __wur;
767 size_t __n, FILE *__restrict __stream) __wur
768 __nonnull ((4));
762769extern size_t fwrite_unlocked (const void *__restrict __ptr, size_t __size,
763 size_t __n, FILE *__restrict __stream);
770 size_t __n, FILE *__restrict __stream)
771 __nonnull ((4));
764772#endif
765773
766774
......@@ -768,17 +776,18 @@ extern size_t fwrite_unlocked (const void *__restrict __ptr, size_t __size,
768776
769777 This function is a possible cancellation point and therefore not
770778 marked with __THROW. */
771extern int fseek (FILE *__stream, long int __off, int __whence);
779extern int fseek (FILE *__stream, long int __off, int __whence)
780 __nonnull ((1));
772781/* Return the current position of STREAM.
773782
774783 This function is a possible cancellation point and therefore not
775784 marked with __THROW. */
776extern long int ftell (FILE *__stream) __wur;
785extern long int ftell (FILE *__stream) __wur __nonnull ((1));
777786/* Rewind to the beginning of STREAM.
778787
779788 This function is a possible cancellation point and therefore not
780789 marked with __THROW. */
781extern void rewind (FILE *__stream);
790extern void rewind (FILE *__stream) __nonnull ((1));
782791
783792/* The Single Unix Specification, Version 2, specifies an alternative,
784793 more adequate interface for the two functions above which deal with
......@@ -791,18 +800,20 @@ extern void rewind (FILE *__stream);
791800
792801 This function is a possible cancellation point and therefore not
793802 marked with __THROW. */
794extern int fseeko (FILE *__stream, __off_t __off, int __whence);
803extern int fseeko (FILE *__stream, __off_t __off, int __whence)
804 __nonnull ((1));
795805/* Return the current position of STREAM.
796806
797807 This function is a possible cancellation point and therefore not
798808 marked with __THROW. */
799extern __off_t ftello (FILE *__stream) __wur;
809extern __off_t ftello (FILE *__stream) __wur __nonnull ((1));
800810# else
801811# ifdef __REDIRECT
802812extern int __REDIRECT (fseeko,
803813 (FILE *__stream, __off64_t __off, int __whence),
804 fseeko64);
805extern __off64_t __REDIRECT (ftello, (FILE *__stream), ftello64);
814 fseeko64) __nonnull ((1));
815extern __off64_t __REDIRECT (ftello, (FILE *__stream), ftello64)
816 __nonnull ((1));
806817# else
807818# define fseeko fseeko64
808819# define ftello ftello64
......@@ -815,18 +826,21 @@ extern __off64_t __REDIRECT (ftello, (FILE *__stream), ftello64);
815826
816827 This function is a possible cancellation point and therefore not
817828 marked with __THROW. */
818extern int fgetpos (FILE *__restrict __stream, fpos_t *__restrict __pos);
829extern int fgetpos (FILE *__restrict __stream, fpos_t *__restrict __pos)
830 __nonnull ((1));
819831/* Set STREAM's position.
820832
821833 This function is a possible cancellation point and therefore not
822834 marked with __THROW. */
823extern int fsetpos (FILE *__stream, const fpos_t *__pos);
835extern int fsetpos (FILE *__stream, const fpos_t *__pos) __nonnull ((1));
824836#else
825837# ifdef __REDIRECT
826838extern int __REDIRECT (fgetpos, (FILE *__restrict __stream,
827 fpos_t *__restrict __pos), fgetpos64);
839 fpos_t *__restrict __pos), fgetpos64)
840 __nonnull ((1));
828841extern int __REDIRECT (fsetpos,
829 (FILE *__stream, const fpos_t *__pos), fsetpos64);
842 (FILE *__stream, const fpos_t *__pos), fsetpos64)
843 __nonnull ((1));
830844# else
831845# define fgetpos fgetpos64
832846# define fsetpos fsetpos64
......@@ -834,24 +848,26 @@ extern int __REDIRECT (fsetpos,
834848#endif
835849
836850#ifdef __USE_LARGEFILE64
837extern int fseeko64 (FILE *__stream, __off64_t __off, int __whence);
838extern __off64_t ftello64 (FILE *__stream) __wur;
839extern int fgetpos64 (FILE *__restrict __stream, fpos64_t *__restrict __pos);
840extern int fsetpos64 (FILE *__stream, const fpos64_t *__pos);
851extern int fseeko64 (FILE *__stream, __off64_t __off, int __whence)
852 __nonnull ((1));
853extern __off64_t ftello64 (FILE *__stream) __wur __nonnull ((1));
854extern int fgetpos64 (FILE *__restrict __stream, fpos64_t *__restrict __pos)
855 __nonnull ((1));
856extern int fsetpos64 (FILE *__stream, const fpos64_t *__pos) __nonnull ((1));
841857#endif
842858
843859/* Clear the error and EOF indicators for STREAM. */
844extern void clearerr (FILE *__stream) __THROW;
860extern void clearerr (FILE *__stream) __THROW __nonnull ((1));
845861/* Return the EOF indicator for STREAM. */
846extern int feof (FILE *__stream) __THROW __wur;
862extern int feof (FILE *__stream) __THROW __wur __nonnull ((1));
847863/* Return the error indicator for STREAM. */
848extern int ferror (FILE *__stream) __THROW __wur;
864extern int ferror (FILE *__stream) __THROW __wur __nonnull ((1));
849865
850866#ifdef __USE_MISC
851867/* Faster versions when locking is not required. */
852extern void clearerr_unlocked (FILE *__stream) __THROW;
853extern int feof_unlocked (FILE *__stream) __THROW __wur;
854extern int ferror_unlocked (FILE *__stream) __THROW __wur;
868extern void clearerr_unlocked (FILE *__stream) __THROW __nonnull ((1));
869extern int feof_unlocked (FILE *__stream) __THROW __wur __nonnull ((1));
870extern int ferror_unlocked (FILE *__stream) __THROW __wur __nonnull ((1));
855871#endif
856872
857873
......@@ -864,12 +880,12 @@ extern void perror (const char *__s) __COLD;
864880
865881#ifdef __USE_POSIX
866882/* Return the system file descriptor for STREAM. */
867extern int fileno (FILE *__stream) __THROW __wur;
883extern int fileno (FILE *__stream) __THROW __wur __nonnull ((1));
868884#endif /* Use POSIX. */
869885
870886#ifdef __USE_MISC
871887/* Faster version when locking is not required. */
872extern int fileno_unlocked (FILE *__stream) __THROW __wur;
888extern int fileno_unlocked (FILE *__stream) __THROW __wur __nonnull ((1));
873889#endif
874890
875891
......@@ -878,7 +894,7 @@ extern int fileno_unlocked (FILE *__stream) __THROW __wur;
878894
879895 This function is a possible cancellation point and therefore not
880896 marked with __THROW. */
881extern int pclose (FILE *__stream);
897extern int pclose (FILE *__stream) __nonnull ((1));
882898
883899/* Create a new stream connected to a pipe running the given command.
884900
......@@ -922,14 +938,14 @@ extern int obstack_vprintf (struct obstack *__restrict __obstack,
922938/* These are defined in POSIX.1:1996. */
923939
924940/* Acquire ownership of STREAM. */
925extern void flockfile (FILE *__stream) __THROW;
941extern void flockfile (FILE *__stream) __THROW __nonnull ((1));
926942
927943/* Try to acquire ownership of STREAM but do not block if it is not
928944 possible. */
929extern int ftrylockfile (FILE *__stream) __THROW __wur;
945extern int ftrylockfile (FILE *__stream) __THROW __wur __nonnull ((1));
930946
931947/* Relinquish the ownership granted for STREAM. */
932extern void funlockfile (FILE *__stream) __THROW;
948extern void funlockfile (FILE *__stream) __THROW __nonnull ((1));
933949#endif /* POSIX */
934950
935951#if defined __USE_XOPEN && !defined __USE_XOPEN2K && !defined __USE_GNU
lib/libc/include/generic-glibc/stdio_ext.h+1-1
......@@ -1,5 +1,5 @@
11/* Functions to access FILE structure internals.
2 Copyright (C) 2000-2023 Free Software Foundation, Inc.
2 Copyright (C) 2000-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/stdlib.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 Copyright The GNU Toolchain Authors.
33 This file is part of the GNU C Library.
44
lib/libc/include/generic-glibc/string.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/strings.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/acct.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1996-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1996-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/asm.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/auxv.h+1-1
......@@ -1,5 +1,5 @@
11/* Access to the auxiliary vector.
2 Copyright (C) 2012-2023 Free Software Foundation, Inc.
2 Copyright (C) 2012-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/cachectl.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1995-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1995-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/cdefs.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1992-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1992-2024 Free Software Foundation, Inc.
22 Copyright The GNU Toolchain Authors.
33 This file is part of the GNU C Library.
44
lib/libc/include/generic-glibc/sys/debugreg.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2001-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2001-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/dir.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/elf.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1996-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1996-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/epoll.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2002-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2002-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/eventfd.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2007-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2007-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/fanotify.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2010-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2010-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/file.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/fpregdef.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/fsuid.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/gmon_out.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1996-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1996-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/ifunc.h+1-1
......@@ -1,5 +1,5 @@
11/* Definitions used by AArch64 indirect function resolvers.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/inotify.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2005-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2005-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/io.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1996-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1996-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/ioctl.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/ipc.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1995-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1995-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/kd.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1996-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1996-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/klog.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1996-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1996-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/mman.h+1-1
......@@ -1,5 +1,5 @@
11/* Definitions for BSD-style memory management.
2 Copyright (C) 1994-2023 Free Software Foundation, Inc.
2 Copyright (C) 1994-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/mount.h+4-1
......@@ -1,5 +1,5 @@
11/* Header file for mounting/unmount Linux filesystems.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
......@@ -226,6 +226,7 @@ struct mount_attr
226226#define MOVE_MOUNT_T_AUTOMOUNTS 0x00000020 /* Follow automounts on to path */
227227#define MOVE_MOUNT_T_EMPTY_PATH 0x00000040 /* Empty to path permitted */
228228#define MOVE_MOUNT_SET_GROUP 0x00000100 /* Set sharing group instead */
229#define MOVE_MOUNT_BENEATH 0x00000200 /* Mount beneath top mount */
229230
230231
231232/* fspick flags. */
......@@ -255,6 +256,8 @@ enum fsconfig_command
255256# define FSCONFIG_CMD_CREATE FSCONFIG_CMD_CREATE
256257 FSCONFIG_CMD_RECONFIGURE = 7, /* Invoke superblock reconfiguration */
257258# define FSCONFIG_CMD_RECONFIGURE FSCONFIG_CMD_RECONFIGURE
259 FSCONFIG_CMD_CREATE_EXCL = 8, /* Create new superblock, fail if reusing existing superblock */
260# define FSCONFIG_CMD_CREATE_EXCL FSCONFIG_CMD_CREATE_EXCL
258261};
259262#endif
260263
lib/libc/include/generic-glibc/sys/msg.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1995-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1995-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/mtio.h+1-1
......@@ -1,5 +1,5 @@
11/* Structures and definitions for magnetic tape I/O control commands.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/param.h+1-1
......@@ -1,5 +1,5 @@
11/* Compatibility header for old-style Unix parameters and limits.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/pci.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/perm.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1996-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1996-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/personality.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2002-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2002-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/pidfd.h+5-1
......@@ -1,5 +1,5 @@
11/* Wrapper for file descriptors that refers to a process functions.
2 Copyright (C) 2022-2023 Free Software Foundation, Inc.
2 Copyright (C) 2022-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
......@@ -46,4 +46,8 @@ extern int pidfd_getfd (int __pidfd, int __targetfd,
4646extern int pidfd_send_signal (int __pidfd, int __sig, siginfo_t *__info,
4747 unsigned int __flags) __THROW;
4848
49/* Query the process ID (PID) from process descriptor FD. Return the PID
50 or -1 in case of an error. */
51extern pid_t pidfd_getpid (int __fd) __THROW;
52
4953#endif /* _PIDFD_H */
\ No newline at end of file
lib/libc/include/generic-glibc/sys/platform/ppc.h+1-1
......@@ -1,5 +1,5 @@
11/* Facilities specific to the PowerPC architecture
2 Copyright (C) 2012-2023 Free Software Foundation, Inc.
2 Copyright (C) 2012-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/platform/x86.h+5-1
......@@ -1,6 +1,6 @@
11/* Data structure for x86 CPU features.
22 This file is part of the GNU C Library.
3 Copyright (C) 2008-2023 Free Software Foundation, Inc.
3 Copyright (C) 2008-2024 Free Software Foundation, Inc.
44
55 The GNU C Library is free software; you can redistribute it and/or
66 modify it under the terms of the GNU Lesser General Public
......@@ -22,6 +22,7 @@
2222#include <features.h>
2323#include <stdbool.h>
2424#include <bits/platform/x86.h>
25#include <bits/platform/features.h>
2526
2627__BEGIN_DECLS
2728
......@@ -45,6 +46,9 @@ x86_cpu_present (unsigned int __index)
4546static __inline__ _Bool
4647x86_cpu_active (unsigned int __index)
4748{
49 if (__index == x86_cpu_IBT || __index == x86_cpu_SHSTK)
50 return x86_cpu_cet_active (__index);
51
4852 const struct cpuid_feature *__ptr = __x86_get_cpuid_feature_leaf
4953 (__index / (8 * sizeof (unsigned int) * 4));
5054 unsigned int __reg
lib/libc/include/generic-glibc/sys/poll.h+1-1
......@@ -1,5 +1,5 @@
11/* Compatibility definitions for System V `poll' interface.
2 Copyright (C) 1994-2023 Free Software Foundation, Inc.
2 Copyright (C) 1994-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/prctl.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/procfs.h+1-1
......@@ -1,5 +1,5 @@
11/* Definitions for core files and libthread_db. Generic Linux version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
lib/libc/include/generic-glibc/sys/profil.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2001-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2001-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/ptrace.h+12-2
......@@ -1,5 +1,5 @@
11/* `ptrace' debugger support interface. Linux version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
......@@ -174,8 +174,18 @@ enum __ptrace_request
174174#define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO
175175
176176 /* Get rseq configuration information. */
177 PTRACE_GET_RSEQ_CONFIGURATION = 0x420f
177 PTRACE_GET_RSEQ_CONFIGURATION = 0x420f,
178178#define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION
179
180 /* Set configuration for syscall user dispatch. */
181 PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG = 0x4210,
182#define PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG \
183 PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG
184
185 /* Get configuration for syscall user dispatch. */
186 PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG = 0x4211
187#define PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG \
188 PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG
179189};
180190
181191
lib/libc/include/generic-glibc/sys/quota.h+1-1
......@@ -1,5 +1,5 @@
11/* This just represents the non-kernel parts of <linux/quota.h>.
2 Copyright (C) 1998-2023 Free Software Foundation, Inc.
2 Copyright (C) 1998-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/random.h+1-1
......@@ -1,5 +1,5 @@
11/* Interfaces for obtaining random bytes.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/raw.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1999-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1999-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/reboot.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1996-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1996-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/reg.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2001-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2001-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/regdef.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/resource.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1992-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1992-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/rseq.h+1-1
......@@ -1,5 +1,5 @@
11/* Restartable Sequences exported symbols. Linux header.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33
44 The GNU C Library is free software; you can redistribute it and/or
55 modify it under the terms of the GNU Lesser General Public
lib/libc/include/generic-glibc/sys/select.h+1-1
......@@ -1,5 +1,5 @@
11/* `fd_set' type and related macros, and `select'/`pselect' declarations.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/sem.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1995-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1995-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/sendfile.h+1-1
......@@ -1,5 +1,5 @@
11/* sendfile -- copy data directly from one file descriptor to another
2 Copyright (C) 1998-2023 Free Software Foundation, Inc.
2 Copyright (C) 1998-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/shm.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1995-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1995-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/signalfd.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2007-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2007-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/single_threaded.h+1-1
......@@ -1,5 +1,5 @@
11/* Support for single-thread optimizations.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/socket.h+1-1
......@@ -1,5 +1,5 @@
11/* Declarations of socket constants, types, and functions.
2 Copyright (C) 1991-2023 Free Software Foundation, Inc.
2 Copyright (C) 1991-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/stat.h+2-2
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
......@@ -251,7 +251,7 @@ extern int __REDIRECT_NTH (fstat64, (int __fd, struct stat64 *__buf),
251251 __nonnull ((2));
252252# else
253253# define stat64 __stat64_time64
254# define fstat64 __fstat64_time
254# define fstat64 __fstat64_time64
255255# endif
256256# endif
257257#endif
lib/libc/include/generic-glibc/sys/statfs.h+1-1
......@@ -1,5 +1,5 @@
11/* Definitions for getting information about a filesystem.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/statvfs.h+1-1
......@@ -1,5 +1,5 @@
11/* Definitions for getting information about a filesystem.
2 Copyright (C) 1998-2023 Free Software Foundation, Inc.
2 Copyright (C) 1998-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/swap.h+1-1
......@@ -1,5 +1,5 @@
11/* Calls to enable and disable swapping on specified locations. Linux version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/syscall.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1995-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1995-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/sysinfo.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1996-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1996-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/sysmacros.h+1-1
......@@ -1,5 +1,5 @@
11/* Definitions of macros to access `dev_t' values.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/sysmips.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1995-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1995-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/tas.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2000-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2000-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/time.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/timeb.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1994-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1994-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/timerfd.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2008-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2008-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/times.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/timex.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1995-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1995-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/types.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/ucontext.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc. This file is part of the GNU C Library.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc. This file is part of the GNU C Library.
22
33 The GNU C Library is free software; you can redistribute it and/or
44 modify it under the terms of the GNU Lesser General Public
lib/libc/include/generic-glibc/sys/uio.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/un.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/user.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2002-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2002-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/utsname.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/vlimit.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/vm86.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1996-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1996-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/wait.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/sys/xattr.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2002-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2002-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/tar.h+1-1
......@@ -1,5 +1,5 @@
11/* Extended tar format from POSIX.1.
2 Copyright (C) 1992-2023 Free Software Foundation, Inc.
2 Copyright (C) 1992-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/termios.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/tgmath.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/thread_db.h+1-1
......@@ -1,5 +1,5 @@
11/* thread_db.h -- interface to libthread_db.so library for debugging -lpthread
2 Copyright (C) 1999-2023 Free Software Foundation, Inc.
2 Copyright (C) 1999-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/threads.h+1-1
......@@ -1,5 +1,5 @@
11/* ISO C11 Standard: 7.26 - Thread support library <threads.h>.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/time.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/uchar.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2011-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2011-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/ucontext.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/ulimit.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/unistd.h+5-2
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
......@@ -1155,7 +1155,10 @@ extern int fdatasync (int __fildes);
11551155 user database. SALT selects the one-way function to use, and
11561156 ensures that no two users' hashes are the same, even if they use
11571157 the same passphrase. The return value points to static storage
1158 which will be overwritten by the next call to crypt. */
1158 which will be overwritten by the next call to crypt.
1159
1160 This declaration is deprecated; applications should include
1161 <crypt.h> instead. */
11591162extern char *crypt (const char *__key, const char *__salt)
11601163 __THROW __nonnull ((1, 2));
11611164#endif
lib/libc/include/generic-glibc/utime.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/utmp.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1993-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1993-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/utmpx.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/values.h+1-1
......@@ -1,5 +1,5 @@
11/* Old compatibility names for <limits.h> and <float.h> constants.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/wchar.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1995-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1995-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/wctype.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1996-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1996-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/generic-glibc/wordexp.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1991-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1991-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/loongarch64-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/loongarch64-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-2024 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 You should have received a copy of the 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
35struct 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
50struct 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 created+90
......@@ -0,0 +1,90 @@
1/* Floating point environment.
2 Copyright (C) 2022-2024 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 You should have received a copy of the 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. */
25enum
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. */
50enum
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. */
67typedef 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'. */
71typedef 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_C2X)
85/* Type representing floating-point control modes. */
86typedef 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/floatn.h created+97
......@@ -0,0 +1,97 @@
1/* Macros to control TS 18661-3 glibc features on ldbl-128 platforms.
2 Copyright (C) 2017-2024 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 You should have received a copy of the 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))
80typedef 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/loongarch64-linux-gnu/bits/hwcap.h created+38
......@@ -0,0 +1,38 @@
1/* Defines for bits in AT_HWCAP. LoongArch64 Linux version.
2 Copyright (C) 2022-2024 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 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)
\ No newline at end of file
lib/libc/include/loongarch64-linux-gnu/bits/link.h created+76
......@@ -0,0 +1,76 @@
1/* Machine-specific declarations for dynamic linker interface.
2 Copyright (C) 2022-2024 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 You should have received a copy of the 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
24typedef float La_loongarch_vr
25 __attribute__ ((__vector_size__ (16), __aligned__ (16)));
26typedef float La_loongarch_xr
27 __attribute__ ((__vector_size__ (32), __aligned__ (16)));
28
29typedef 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
37typedef 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. */
48typedef 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
60extern 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);
68extern 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 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-2024 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 created+21
......@@ -0,0 +1,21 @@
1/* Properties of long double type. ldbl-128 version.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C 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 created+52
......@@ -0,0 +1,52 @@
1/* Types for registers for sys/procfs.h.
2 Copyright (C) 2022-2024 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. */
25typedef __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))
32typedef 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 */
35typedef union
36{
37 double d;
38 float f;
39} elf_fpreg_t;
40typedef elf_fpreg_t elf_fpregset_t[ELF_NFPREG];
41
42typedef union
43{
44 double d[2];
45 float f[4];
46} __attribute__ ((__aligned__ (16))) elf_lsxregset_t[32];
47
48typedef 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 created+20
......@@ -0,0 +1,20 @@
1/* Definition of PTHREAD_STACK_MIN. LoongArch Linux version.
2 Copyright (C) 2022-2024 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The 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 created+29
......@@ -0,0 +1,29 @@
1/* Restartable Sequences architecture header. Stub version.
2 Copyright (C) 2021-2024 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/loongarch64-linux-gnu/bits/setjmp.h created+42
......@@ -0,0 +1,42 @@
1/* Define the machine-dependent type `jmp_buf'.
2 Copyright (C) 2022-2024 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 You should have received a copy of the 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
22typedef 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 created+24
......@@ -0,0 +1,24 @@
1/* Define SHMLBA. LoongArch version.
2 Copyright (C) 2023-2024 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 You should have received a copy of the 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 created+32
......@@ -0,0 +1,32 @@
1/* sigstack, sigaltstack definitions.
2 Copyright (C) 2022-2024 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 You should have received a copy of the 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 created+127
......@@ -0,0 +1,127 @@
1/* Definition for struct stat.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 You should have received a copy of 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
44struct 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
85struct 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 created+20
......@@ -0,0 +1,20 @@
1/* Bit size of the time_t type at glibc build time, general case.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 You should have received a copy of 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/typesizes.h created+107
......@@ -0,0 +1,107 @@
1/* bits/typesizes.h -- underlying types for *_t. For the generic Linux ABI.
2 Copyright (C) 2011-2024 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 You should have received a copy of the 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#if __TIMESIZE == 64 && __WORDSIZE == 32
29/* These are the "new" y2038 types defined for architectures added after
30 the 5.1 kernel. */
31# define __INO_T_TYPE __UQUAD_TYPE
32# define __OFF_T_TYPE __SQUAD_TYPE
33# define __RLIM_T_TYPE __UQUAD_TYPE
34# define __BLKCNT_T_TYPE __SQUAD_TYPE
35# define __FSBLKCNT_T_TYPE __UQUAD_TYPE
36# define __FSFILCNT_T_TYPE __UQUAD_TYPE
37# define __TIME_T_TYPE __SQUAD_TYPE
38# define __SUSECONDS_T_TYPE __SQUAD_TYPE
39#else
40# define __INO_T_TYPE __ULONGWORD_TYPE
41# define __OFF_T_TYPE __SLONGWORD_TYPE
42# define __RLIM_T_TYPE __ULONGWORD_TYPE
43# define __BLKCNT_T_TYPE __SLONGWORD_TYPE
44# define __FSBLKCNT_T_TYPE __ULONGWORD_TYPE
45# define __FSFILCNT_T_TYPE __ULONGWORD_TYPE
46# define __TIME_T_TYPE __SLONGWORD_TYPE
47# define __SUSECONDS_T_TYPE __SLONGWORD_TYPE
48#endif
49
50#define __DEV_T_TYPE __UQUAD_TYPE
51#define __UID_T_TYPE __U32_TYPE
52#define __GID_T_TYPE __U32_TYPE
53#define __INO64_T_TYPE __UQUAD_TYPE
54#define __MODE_T_TYPE __U32_TYPE
55#define __NLINK_T_TYPE __U32_TYPE
56#define __OFF64_T_TYPE __SQUAD_TYPE
57#define __PID_T_TYPE __S32_TYPE
58#define __RLIM64_T_TYPE __UQUAD_TYPE
59#define __BLKCNT64_T_TYPE __SQUAD_TYPE
60#define __FSBLKCNT64_T_TYPE __UQUAD_TYPE
61#define __FSFILCNT64_T_TYPE __UQUAD_TYPE
62#define __FSWORD_T_TYPE __SWORD_TYPE
63#define __ID_T_TYPE __U32_TYPE
64#define __CLOCK_T_TYPE __SLONGWORD_TYPE
65#define __USECONDS_T_TYPE __U32_TYPE
66#define __SUSECONDS64_T_TYPE __SQUAD_TYPE
67#define __DADDR_T_TYPE __S32_TYPE
68#define __KEY_T_TYPE __S32_TYPE
69#define __CLOCKID_T_TYPE __S32_TYPE
70#define __TIMER_T_TYPE void *
71#define __BLKSIZE_T_TYPE __S32_TYPE
72#define __FSID_T_TYPE struct { int __val[2]; }
73#define __SSIZE_T_TYPE __SWORD_TYPE
74#define __SYSCALL_SLONG_TYPE __SLONGWORD_TYPE
75#define __SYSCALL_ULONG_TYPE __ULONGWORD_TYPE
76#define __CPU_MASK_TYPE __ULONGWORD_TYPE
77
78#if defined __LP64__ || (__TIMESIZE == 64 && __WORDSIZE == 32)
79/* Tell the libc code that off_t and off64_t are actually the same type
80 for all ABI purposes, even if possibly expressed as different base types
81 for C type-checking purposes. */
82# define __OFF_T_MATCHES_OFF64_T 1
83
84/* Same for ino_t and ino64_t. */
85# define __INO_T_MATCHES_INO64_T 1
86
87/* And for __rlim_t and __rlim64_t. */
88# define __RLIM_T_MATCHES_RLIM64_T 1
89
90/* And for fsblkcnt_t, fsblkcnt64_t, fsfilcnt_t and fsfilcnt64_t. */
91# define __STATFS_MATCHES_STATFS64 1
92
93/* And for getitimer, setitimer and rusage */
94# define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 (__WORDSIZE == 64)
95#else
96# define __RLIM_T_MATCHES_RLIM64_T 0
97
98# define __STATFS_MATCHES_STATFS64 0
99
100# define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 0
101#endif
102
103/* Number of descriptors that can fit in an `fd_set'. */
104#define __FD_SETSIZE 1024
105
106
107#endif /* bits/typesizes.h */
\ No newline at end of file
lib/libc/include/loongarch64-linux-gnu/bits/wordsize.h created+19
......@@ -0,0 +1,19 @@
1/* Copyright (C) 1999-2024 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 created+119
......@@ -0,0 +1,119 @@
1/* FPU control word bits.
2 Copyright (C) 2022-2024 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 You should have received a copy of the 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
58typedef unsigned int fpu_control_t;
59#define _FPU_GETCW(cw) (cw) = 0
60#define _FPU_SETCW(cw) (void) (cw)
61extern 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. */
89typedef unsigned int fpu_control_t __attribute__ ((__mode__ (__SI__)));
90
91/* Macros for accessing the hardware control word. */
92extern fpu_control_t __loongarch_fpu_getcw (void) __THROW;
93extern void __loongarch_fpu_setcw (fpu_control_t) __THROW;
94#define _FPU_GETCW(cw) __asm__ volatile ("movfcsr2gr %0,$r0" : "=r"(cw))
95#define _FPU_SETCW(cw) __asm__ volatile ("movgr2fcsr $r0,%0" : : "r"(cw))
96
97/* Default control word set at startup. */
98extern 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-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_LOONGARCH_LP64D_SO "ld-linux-loongarch-lp64d.so.1"
7#define LD_SO "ld-linux-loongarch-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/loongarch64-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/loongarch64-linux-gnu/gnu/stubs-lp64d.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/loongarch64-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/loongarch64-linux-gnu/ieee754.h created+170
......@@ -0,0 +1,170 @@
1/* Copyright (C) 1992-2024 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
27union 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
67union 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
114union 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 created+78
......@@ -0,0 +1,78 @@
1/* Miscellaneous macros.
2 Copyright (C) 2022-2024 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 You should have received a copy of the 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; \
52symbol: \
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; \
63symbol: \
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 created+64
......@@ -0,0 +1,64 @@
1/* struct ucontext definition.
2 Copyright (C) 2022-2024 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
41typedef unsigned long int greg_t;
42/* Container for all general registers. */
43typedef greg_t gregset_t[32];
44#endif
45
46typedef 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. */
55typedef 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 created+42
......@@ -0,0 +1,42 @@
1/* struct user_regs_struct definition for LoongArch.
2 Copyright (C) 2022-2024 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 You should have received a copy of the 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
24struct 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
36struct 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/m68k-linux-gnu/bits/fcntl.h+1-1
......@@ -1,5 +1,5 @@
11/* O_*, F_*, FD_* bit values for Linux.
2 Copyright (C) 2000-2023 Free Software Foundation, Inc.
2 Copyright (C) 2000-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/m68k-linux-gnu/bits/fenv.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/m68k-linux-gnu/bits/floatn.h+1-1
......@@ -1,5 +1,5 @@
11/* Macros to control TS 18661-3 glibc features.
2 Copyright (C) 2017-2023 Free Software Foundation, Inc.
2 Copyright (C) 2017-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/m68k-linux-gnu/bits/flt-eval-method.h+1-1
......@@ -1,5 +1,5 @@
11/* Define __GLIBC_FLT_EVAL_METHOD. M68K version.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/m68k-linux-gnu/bits/fp-logb.h+1-1
......@@ -1,5 +1,5 @@
11/* Define __FP_LOGB0_IS_MIN and __FP_LOGBNAN_IS_MIN. M68K version.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/m68k-linux-gnu/bits/iscanonical.h+1-1
......@@ -1,5 +1,5 @@
11/* Define iscanonical macro. ldbl-96 version.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/m68k-linux-gnu/bits/link.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2005-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2005-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/m68k-linux-gnu/bits/long-double.h+1-1
......@@ -1,5 +1,5 @@
11/* Properties of long double type. ldbl-96 version.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/m68k-linux-gnu/bits/poll.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/m68k-linux-gnu/bits/procfs-id.h+1-1
......@@ -1,5 +1,5 @@
11/* Types of pr_uid and pr_gid in struct elf_prpsinfo. M68K version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
lib/libc/include/m68k-linux-gnu/bits/procfs.h+1-1
......@@ -1,5 +1,5 @@
11/* Types for registers for sys/procfs.h. M68K version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/m68k-linux-gnu/bits/pthreadtypes-arch.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2010-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2010-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/m68k-linux-gnu/bits/rseq.h+1-1
......@@ -1,5 +1,5 @@
11/* Restartable Sequences architecture header. Stub version.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33
44 The GNU C Library is free software; you can redistribute it and/or
55 modify it under the terms of the GNU Lesser General Public
lib/libc/include/m68k-linux-gnu/bits/semaphore.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2010-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2010-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/m68k-linux-gnu/bits/setjmp.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/m68k-linux-gnu/bits/sockaddr.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition of struct sockaddr_* members and sizes, Linux/m68k version.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/m68k-linux-gnu/bits/struct_rwlock.h deleted-61
......@@ -1,61 +0,0 @@
1/* Default read-write lock implementation struct definitions.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 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#include <bits/endian.h>
23
24/* Generic struct for both POSIX read-write lock. New ports are expected
25 to use the default layout, however archictetures can redefine it to add
26 arch-specific extensions (such as lock-elision). The struct have a size
27 of 32 bytes on both LP32 and LP64 architectures. */
28
29struct __pthread_rwlock_arch_t
30{
31 unsigned int __readers;
32 unsigned int __writers;
33 unsigned int __wrphase_futex;
34 unsigned int __writers_futex;
35 unsigned int __pad3;
36 unsigned int __pad4;
37 /* FLAGS must stay at its position in the structure to maintain
38 binary compatibility. */
39#if __BYTE_ORDER == __BIG_ENDIAN
40 unsigned char __pad1;
41 unsigned char __pad2;
42 unsigned char __shared;
43 unsigned char __flags;
44#else
45 unsigned char __flags;
46 unsigned char __shared;
47 unsigned char __pad1;
48 unsigned char __pad2;
49#endif
50 int __cur_writer;
51};
52
53#if __BYTE_ORDER == __BIG_ENDIAN
54# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
55 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0
56#else
57# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
58 0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0
59#endif
60
61#endif
\ No newline at end of file
lib/libc/include/m68k-linux-gnu/bits/struct_stat.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition for struct stat.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/m68k-linux-gnu/bits/timesize.h+1-1
......@@ -1,5 +1,5 @@
11/* Bit size of the time_t type at glibc build time, Linux/m68k.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/m68k-linux-gnu/bits/typesizes.h+1-1
......@@ -1,5 +1,5 @@
11/* bits/typesizes.h -- underlying types for *_t. m68k version.
2 Copyright (C) 2002-2023 Free Software Foundation, Inc.
2 Copyright (C) 2002-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/m68k-linux-gnu/bits/wordsize.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1999-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1999-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/m68k-linux-gnu/fpu_control.h+1-1
......@@ -1,5 +1,5 @@
11/* 68k FPU control word definitions.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/m68k-linux-gnu/gnu/lib-names.h-1
......@@ -7,7 +7,6 @@
77#define LD_SO "ld.so.1"
88#define LIBANL_SO "libanl.so.1"
99#define LIBBROKENLOCALE_SO "libBrokenLocale.so.1"
10#define LIBCRYPT_SO "libcrypt.so.1"
1110#define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0"
1211#define LIBC_SO "libc.so.6"
1312#define LIBDL_SO "libdl.so.2"
lib/libc/include/m68k-linux-gnu/sys/reg.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1998-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1998-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/m68k-linux-gnu/sys/ucontext.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/m68k-linux-gnu/sys/user.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2008-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2008-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabi/bits/dlfcn.h+1-1
......@@ -1,5 +1,5 @@
11/* System dependent definitions for run-time dynamic loading.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabi/bits/errno.h+1-1
......@@ -1,5 +1,5 @@
11/* Error constants. MIPS/Linux specific version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabi/bits/eventfd.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2007-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2007-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabi/bits/inotify.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2005-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2005-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabi/bits/ioctl-types.h+1-1
......@@ -1,5 +1,5 @@
11/* Structure types for pre-termios terminal ioctls. Linux/MIPS version.
2 Copyright (C) 1997-2023 Free Software Foundation, Inc.
2 Copyright (C) 1997-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabi/bits/ipctypes.h+1-1
......@@ -1,5 +1,5 @@
11/* bits/ipctypes.h -- Define some types used by SysV IPC/MSG/SHM. MIPS version
2 Copyright (C) 2002-2023 Free Software Foundation, Inc.
2 Copyright (C) 2002-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabi/bits/mman.h+1-1
......@@ -1,5 +1,5 @@
11/* Definitions for POSIX memory map interface. Linux/MIPS version.
2 Copyright (C) 1997-2023 Free Software Foundation, Inc.
2 Copyright (C) 1997-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabi/bits/poll.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabi/bits/pthread_stack_min.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition of PTHREAD_STACK_MIN. MIPS Linux version.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabi/bits/pthreadtypes-arch.h+1-1
......@@ -1,5 +1,5 @@
11/* Machine-specific pthread type layouts. MIPS version.
2 Copyright (C) 2005-2023 Free Software Foundation, Inc.
2 Copyright (C) 2005-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabi/bits/resource.h+1-1
......@@ -1,5 +1,5 @@
11/* Bit values & structures for resource limits. Linux/MIPS version.
2 Copyright (C) 1994-2023 Free Software Foundation, Inc.
2 Copyright (C) 1994-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabi/bits/semaphore.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2002-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2002-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabi/bits/shmlba.h+1-1
......@@ -1,5 +1,5 @@
11/* Define SHMLBA. MIPS version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabi/bits/sigaction.h+1-1
......@@ -1,5 +1,5 @@
11/* The proper definitions for Linux/MIPS's sigaction.
2 Copyright (C) 1993-2023 Free Software Foundation, Inc.
2 Copyright (C) 1993-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabi/bits/sigcontext.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1996-2023 Free Software Foundation, Inc. This file is part of the GNU C Library.
1/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library.
22
33 The GNU C Library is free software; you can redistribute it and/or
44 modify it under the terms of the GNU Lesser General Public
lib/libc/include/mips-linux-gnueabi/bits/signalfd.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2007-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2007-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabi/bits/signum-arch.h+1-1
......@@ -1,5 +1,5 @@
11/* Signal number definitions. Linux/MIPS version.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabi/bits/socket-constants.h+1-1
......@@ -1,5 +1,5 @@
11/* Socket constants which vary among Linux architectures. Version for MIPS.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabi/bits/socket_type.h+1-1
......@@ -1,5 +1,5 @@
11/* Define enum __socket_type for Linux/MIPS.
2 Copyright (C) 1991-2023 Free Software Foundation, Inc.
2 Copyright (C) 1991-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabi/bits/statfs.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabi/bits/struct_mutex.h+1-1
......@@ -1,5 +1,5 @@
11/* MIPS internal mutex struct definitions.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabi/bits/struct_rwlock.h created+71
......@@ -0,0 +1,71 @@
1/* MIPS internal rwlock struct definitions.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 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
22struct __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+1-1
......@@ -1,5 +1,5 @@
11/* termios c_cc symbolic constant definitions. Linux/mips version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabi/bits/termios-c_lflag.h+1-1
......@@ -1,5 +1,5 @@
11/* termios local mode definitions. Linux/mips version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabi/bits/termios-struct.h+1-1
......@@ -1,5 +1,5 @@
11/* struct termios definition. Linux/mips version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabi/bits/termios-tcflow.h+1-1
......@@ -1,5 +1,5 @@
11/* termios local mode definitions. Linux/mips version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabi/bits/timerfd.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2008-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2008-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabi/bits/types/stack_t.h+1-1
......@@ -1,5 +1,5 @@
11/* Define stack_t. MIPS Linux version.
2 Copyright (C) 1998-2023 Free Software Foundation, Inc.
2 Copyright (C) 1998-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabi/bits/types/struct_msqid_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* Linux/MIPS implementation of the SysV message struct msqid_ds.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabi/bits/types/struct_semid_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* MIPS implementation of the semaphore struct semid_ds
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabi/bits/types/struct_shmid_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* Linux/MIPS implementation of the shared memory struct shmid_ds.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabi/ieee754.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1992-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1992-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabihf/bits/dlfcn.h+1-1
......@@ -1,5 +1,5 @@
11/* System dependent definitions for run-time dynamic loading.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabihf/bits/errno.h+1-1
......@@ -1,5 +1,5 @@
11/* Error constants. MIPS/Linux specific version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabihf/bits/eventfd.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2007-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2007-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabihf/bits/inotify.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2005-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2005-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabihf/bits/ioctl-types.h+1-1
......@@ -1,5 +1,5 @@
11/* Structure types for pre-termios terminal ioctls. Linux/MIPS version.
2 Copyright (C) 1997-2023 Free Software Foundation, Inc.
2 Copyright (C) 1997-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabihf/bits/ipctypes.h+1-1
......@@ -1,5 +1,5 @@
11/* bits/ipctypes.h -- Define some types used by SysV IPC/MSG/SHM. MIPS version
2 Copyright (C) 2002-2023 Free Software Foundation, Inc.
2 Copyright (C) 2002-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabihf/bits/mman.h+1-1
......@@ -1,5 +1,5 @@
11/* Definitions for POSIX memory map interface. Linux/MIPS version.
2 Copyright (C) 1997-2023 Free Software Foundation, Inc.
2 Copyright (C) 1997-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabihf/bits/poll.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabihf/bits/pthread_stack_min.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition of PTHREAD_STACK_MIN. MIPS Linux version.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabihf/bits/pthreadtypes-arch.h+1-1
......@@ -1,5 +1,5 @@
11/* Machine-specific pthread type layouts. MIPS version.
2 Copyright (C) 2005-2023 Free Software Foundation, Inc.
2 Copyright (C) 2005-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabihf/bits/resource.h+1-1
......@@ -1,5 +1,5 @@
11/* Bit values & structures for resource limits. Linux/MIPS version.
2 Copyright (C) 1994-2023 Free Software Foundation, Inc.
2 Copyright (C) 1994-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabihf/bits/semaphore.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2002-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2002-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabihf/bits/shmlba.h+1-1
......@@ -1,5 +1,5 @@
11/* Define SHMLBA. MIPS version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabihf/bits/sigaction.h+1-1
......@@ -1,5 +1,5 @@
11/* The proper definitions for Linux/MIPS's sigaction.
2 Copyright (C) 1993-2023 Free Software Foundation, Inc.
2 Copyright (C) 1993-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabihf/bits/sigcontext.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1996-2023 Free Software Foundation, Inc. This file is part of the GNU C Library.
1/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library.
22
33 The GNU C Library is free software; you can redistribute it and/or
44 modify it under the terms of the GNU Lesser General Public
lib/libc/include/mips-linux-gnueabihf/bits/signalfd.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2007-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2007-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabihf/bits/signum-arch.h+1-1
......@@ -1,5 +1,5 @@
11/* Signal number definitions. Linux/MIPS version.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabihf/bits/socket-constants.h+1-1
......@@ -1,5 +1,5 @@
11/* Socket constants which vary among Linux architectures. Version for MIPS.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabihf/bits/socket_type.h+1-1
......@@ -1,5 +1,5 @@
11/* Define enum __socket_type for Linux/MIPS.
2 Copyright (C) 1991-2023 Free Software Foundation, Inc.
2 Copyright (C) 1991-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabihf/bits/statfs.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabihf/bits/struct_mutex.h+1-1
......@@ -1,5 +1,5 @@
11/* MIPS internal mutex struct definitions.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabihf/bits/struct_rwlock.h created+71
......@@ -0,0 +1,71 @@
1/* MIPS internal rwlock struct definitions.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 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
22struct __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+1-1
......@@ -1,5 +1,5 @@
11/* termios c_cc symbolic constant definitions. Linux/mips version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabihf/bits/termios-c_lflag.h+1-1
......@@ -1,5 +1,5 @@
11/* termios local mode definitions. Linux/mips version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabihf/bits/termios-struct.h+1-1
......@@ -1,5 +1,5 @@
11/* struct termios definition. Linux/mips version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabihf/bits/termios-tcflow.h+1-1
......@@ -1,5 +1,5 @@
11/* termios local mode definitions. Linux/mips version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabihf/bits/timerfd.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2008-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2008-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabihf/bits/types/stack_t.h+1-1
......@@ -1,5 +1,5 @@
11/* Define stack_t. MIPS Linux version.
2 Copyright (C) 1998-2023 Free Software Foundation, Inc.
2 Copyright (C) 1998-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabihf/bits/types/struct_msqid_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* Linux/MIPS implementation of the SysV message struct msqid_ds.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabihf/bits/types/struct_semid_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* MIPS implementation of the semaphore struct semid_ds
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabihf/bits/types/struct_shmid_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* Linux/MIPS implementation of the shared memory struct shmid_ds.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips-linux-gnueabihf/ieee754.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1992-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1992-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabi64/bits/dlfcn.h+1-1
......@@ -1,5 +1,5 @@
11/* System dependent definitions for run-time dynamic loading.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabi64/bits/errno.h+1-1
......@@ -1,5 +1,5 @@
11/* Error constants. MIPS/Linux specific version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabi64/bits/eventfd.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2007-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2007-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabi64/bits/inotify.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2005-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2005-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabi64/bits/ioctl-types.h+1-1
......@@ -1,5 +1,5 @@
11/* Structure types for pre-termios terminal ioctls. Linux/MIPS version.
2 Copyright (C) 1997-2023 Free Software Foundation, Inc.
2 Copyright (C) 1997-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabi64/bits/ipctypes.h+1-1
......@@ -1,5 +1,5 @@
11/* bits/ipctypes.h -- Define some types used by SysV IPC/MSG/SHM. MIPS version
2 Copyright (C) 2002-2023 Free Software Foundation, Inc.
2 Copyright (C) 2002-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabi64/bits/mman.h+1-1
......@@ -1,5 +1,5 @@
11/* Definitions for POSIX memory map interface. Linux/MIPS version.
2 Copyright (C) 1997-2023 Free Software Foundation, Inc.
2 Copyright (C) 1997-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabi64/bits/poll.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabi64/bits/pthread_stack_min.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition of PTHREAD_STACK_MIN. MIPS Linux version.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabi64/bits/pthreadtypes-arch.h+1-1
......@@ -1,5 +1,5 @@
11/* Machine-specific pthread type layouts. MIPS version.
2 Copyright (C) 2005-2023 Free Software Foundation, Inc.
2 Copyright (C) 2005-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabi64/bits/resource.h+1-1
......@@ -1,5 +1,5 @@
11/* Bit values & structures for resource limits. Linux/MIPS version.
2 Copyright (C) 1994-2023 Free Software Foundation, Inc.
2 Copyright (C) 1994-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabi64/bits/semaphore.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2002-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2002-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabi64/bits/shmlba.h+1-1
......@@ -1,5 +1,5 @@
11/* Define SHMLBA. MIPS version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabi64/bits/sigaction.h+1-1
......@@ -1,5 +1,5 @@
11/* The proper definitions for Linux/MIPS's sigaction.
2 Copyright (C) 1993-2023 Free Software Foundation, Inc.
2 Copyright (C) 1993-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabi64/bits/sigcontext.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1996-2023 Free Software Foundation, Inc. This file is part of the GNU C Library.
1/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library.
22
33 The GNU C Library is free software; you can redistribute it and/or
44 modify it under the terms of the GNU Lesser General Public
lib/libc/include/mips64-linux-gnuabi64/bits/signalfd.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2007-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2007-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabi64/bits/signum-arch.h+1-1
......@@ -1,5 +1,5 @@
11/* Signal number definitions. Linux/MIPS version.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabi64/bits/socket-constants.h+1-1
......@@ -1,5 +1,5 @@
11/* Socket constants which vary among Linux architectures. Version for MIPS.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabi64/bits/socket_type.h+1-1
......@@ -1,5 +1,5 @@
11/* Define enum __socket_type for Linux/MIPS.
2 Copyright (C) 1991-2023 Free Software Foundation, Inc.
2 Copyright (C) 1991-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabi64/bits/statfs.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabi64/bits/struct_mutex.h+1-1
......@@ -1,5 +1,5 @@
11/* MIPS internal mutex struct definitions.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabi64/bits/struct_rwlock.h created+71
......@@ -0,0 +1,71 @@
1/* MIPS internal rwlock struct definitions.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 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
22struct __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+1-1
......@@ -1,5 +1,5 @@
11/* termios c_cc symbolic constant definitions. Linux/mips version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabi64/bits/termios-c_lflag.h+1-1
......@@ -1,5 +1,5 @@
11/* termios local mode definitions. Linux/mips version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabi64/bits/termios-struct.h+1-1
......@@ -1,5 +1,5 @@
11/* struct termios definition. Linux/mips version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabi64/bits/termios-tcflow.h+1-1
......@@ -1,5 +1,5 @@
11/* termios local mode definitions. Linux/mips version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabi64/bits/timerfd.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2008-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2008-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabi64/bits/types/stack_t.h+1-1
......@@ -1,5 +1,5 @@
11/* Define stack_t. MIPS Linux version.
2 Copyright (C) 1998-2023 Free Software Foundation, Inc.
2 Copyright (C) 1998-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabi64/bits/types/struct_msqid_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* Linux/MIPS implementation of the SysV message struct msqid_ds.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabi64/bits/types/struct_semid_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* MIPS implementation of the semaphore struct semid_ds
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabi64/bits/types/struct_shmid_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* Linux/MIPS implementation of the shared memory struct shmid_ds.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabi64/ieee754.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1992-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1992-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabin32/bits/dlfcn.h+1-1
......@@ -1,5 +1,5 @@
11/* System dependent definitions for run-time dynamic loading.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabin32/bits/errno.h+1-1
......@@ -1,5 +1,5 @@
11/* Error constants. MIPS/Linux specific version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabin32/bits/eventfd.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2007-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2007-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabin32/bits/inotify.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2005-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2005-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabin32/bits/ioctl-types.h+1-1
......@@ -1,5 +1,5 @@
11/* Structure types for pre-termios terminal ioctls. Linux/MIPS version.
2 Copyright (C) 1997-2023 Free Software Foundation, Inc.
2 Copyright (C) 1997-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabin32/bits/ipctypes.h+1-1
......@@ -1,5 +1,5 @@
11/* bits/ipctypes.h -- Define some types used by SysV IPC/MSG/SHM. MIPS version
2 Copyright (C) 2002-2023 Free Software Foundation, Inc.
2 Copyright (C) 2002-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabin32/bits/mman.h+1-1
......@@ -1,5 +1,5 @@
11/* Definitions for POSIX memory map interface. Linux/MIPS version.
2 Copyright (C) 1997-2023 Free Software Foundation, Inc.
2 Copyright (C) 1997-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabin32/bits/poll.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabin32/bits/pthread_stack_min.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition of PTHREAD_STACK_MIN. MIPS Linux version.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabin32/bits/pthreadtypes-arch.h+1-1
......@@ -1,5 +1,5 @@
11/* Machine-specific pthread type layouts. MIPS version.
2 Copyright (C) 2005-2023 Free Software Foundation, Inc.
2 Copyright (C) 2005-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabin32/bits/resource.h+1-1
......@@ -1,5 +1,5 @@
11/* Bit values & structures for resource limits. Linux/MIPS version.
2 Copyright (C) 1994-2023 Free Software Foundation, Inc.
2 Copyright (C) 1994-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabin32/bits/semaphore.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2002-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2002-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabin32/bits/shmlba.h+1-1
......@@ -1,5 +1,5 @@
11/* Define SHMLBA. MIPS version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabin32/bits/sigaction.h+1-1
......@@ -1,5 +1,5 @@
11/* The proper definitions for Linux/MIPS's sigaction.
2 Copyright (C) 1993-2023 Free Software Foundation, Inc.
2 Copyright (C) 1993-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabin32/bits/sigcontext.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1996-2023 Free Software Foundation, Inc. This file is part of the GNU C Library.
1/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library.
22
33 The GNU C Library is free software; you can redistribute it and/or
44 modify it under the terms of the GNU Lesser General Public
lib/libc/include/mips64-linux-gnuabin32/bits/signalfd.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2007-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2007-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabin32/bits/signum-arch.h+1-1
......@@ -1,5 +1,5 @@
11/* Signal number definitions. Linux/MIPS version.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabin32/bits/socket-constants.h+1-1
......@@ -1,5 +1,5 @@
11/* Socket constants which vary among Linux architectures. Version for MIPS.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabin32/bits/socket_type.h+1-1
......@@ -1,5 +1,5 @@
11/* Define enum __socket_type for Linux/MIPS.
2 Copyright (C) 1991-2023 Free Software Foundation, Inc.
2 Copyright (C) 1991-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabin32/bits/statfs.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabin32/bits/struct_mutex.h+1-1
......@@ -1,5 +1,5 @@
11/* MIPS internal mutex struct definitions.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabin32/bits/struct_rwlock.h created+71
......@@ -0,0 +1,71 @@
1/* MIPS internal rwlock struct definitions.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 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
22struct __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+1-1
......@@ -1,5 +1,5 @@
11/* termios c_cc symbolic constant definitions. Linux/mips version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabin32/bits/termios-c_lflag.h+1-1
......@@ -1,5 +1,5 @@
11/* termios local mode definitions. Linux/mips version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabin32/bits/termios-struct.h+1-1
......@@ -1,5 +1,5 @@
11/* struct termios definition. Linux/mips version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabin32/bits/termios-tcflow.h+1-1
......@@ -1,5 +1,5 @@
11/* termios local mode definitions. Linux/mips version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabin32/bits/timerfd.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2008-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2008-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabin32/bits/types/stack_t.h+1-1
......@@ -1,5 +1,5 @@
11/* Define stack_t. MIPS Linux version.
2 Copyright (C) 1998-2023 Free Software Foundation, Inc.
2 Copyright (C) 1998-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabin32/bits/types/struct_msqid_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* Linux/MIPS implementation of the SysV message struct msqid_ds.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabin32/bits/types/struct_semid_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* MIPS implementation of the semaphore struct semid_ds
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabin32/bits/types/struct_shmid_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* Linux/MIPS implementation of the shared memory struct shmid_ds.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64-linux-gnuabin32/ieee754.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1992-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1992-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabi64/bits/dlfcn.h+1-1
......@@ -1,5 +1,5 @@
11/* System dependent definitions for run-time dynamic loading.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabi64/bits/errno.h+1-1
......@@ -1,5 +1,5 @@
11/* Error constants. MIPS/Linux specific version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabi64/bits/eventfd.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2007-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2007-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabi64/bits/inotify.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2005-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2005-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabi64/bits/ioctl-types.h+1-1
......@@ -1,5 +1,5 @@
11/* Structure types for pre-termios terminal ioctls. Linux/MIPS version.
2 Copyright (C) 1997-2023 Free Software Foundation, Inc.
2 Copyright (C) 1997-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabi64/bits/ipctypes.h+1-1
......@@ -1,5 +1,5 @@
11/* bits/ipctypes.h -- Define some types used by SysV IPC/MSG/SHM. MIPS version
2 Copyright (C) 2002-2023 Free Software Foundation, Inc.
2 Copyright (C) 2002-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabi64/bits/mman.h+1-1
......@@ -1,5 +1,5 @@
11/* Definitions for POSIX memory map interface. Linux/MIPS version.
2 Copyright (C) 1997-2023 Free Software Foundation, Inc.
2 Copyright (C) 1997-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabi64/bits/poll.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabi64/bits/pthread_stack_min.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition of PTHREAD_STACK_MIN. MIPS Linux version.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabi64/bits/pthreadtypes-arch.h+1-1
......@@ -1,5 +1,5 @@
11/* Machine-specific pthread type layouts. MIPS version.
2 Copyright (C) 2005-2023 Free Software Foundation, Inc.
2 Copyright (C) 2005-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabi64/bits/resource.h+1-1
......@@ -1,5 +1,5 @@
11/* Bit values & structures for resource limits. Linux/MIPS version.
2 Copyright (C) 1994-2023 Free Software Foundation, Inc.
2 Copyright (C) 1994-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabi64/bits/semaphore.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2002-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2002-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabi64/bits/shmlba.h+1-1
......@@ -1,5 +1,5 @@
11/* Define SHMLBA. MIPS version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabi64/bits/sigaction.h+1-1
......@@ -1,5 +1,5 @@
11/* The proper definitions for Linux/MIPS's sigaction.
2 Copyright (C) 1993-2023 Free Software Foundation, Inc.
2 Copyright (C) 1993-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabi64/bits/sigcontext.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1996-2023 Free Software Foundation, Inc. This file is part of the GNU C Library.
1/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library.
22
33 The GNU C Library is free software; you can redistribute it and/or
44 modify it under the terms of the GNU Lesser General Public
lib/libc/include/mips64el-linux-gnuabi64/bits/signalfd.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2007-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2007-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabi64/bits/signum-arch.h+1-1
......@@ -1,5 +1,5 @@
11/* Signal number definitions. Linux/MIPS version.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabi64/bits/socket-constants.h+1-1
......@@ -1,5 +1,5 @@
11/* Socket constants which vary among Linux architectures. Version for MIPS.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabi64/bits/socket_type.h+1-1
......@@ -1,5 +1,5 @@
11/* Define enum __socket_type for Linux/MIPS.
2 Copyright (C) 1991-2023 Free Software Foundation, Inc.
2 Copyright (C) 1991-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabi64/bits/statfs.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabi64/bits/struct_mutex.h+1-1
......@@ -1,5 +1,5 @@
11/* MIPS internal mutex struct definitions.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabi64/bits/struct_rwlock.h created+71
......@@ -0,0 +1,71 @@
1/* MIPS internal rwlock struct definitions.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 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
22struct __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+1-1
......@@ -1,5 +1,5 @@
11/* termios c_cc symbolic constant definitions. Linux/mips version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabi64/bits/termios-c_lflag.h+1-1
......@@ -1,5 +1,5 @@
11/* termios local mode definitions. Linux/mips version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabi64/bits/termios-struct.h+1-1
......@@ -1,5 +1,5 @@
11/* struct termios definition. Linux/mips version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabi64/bits/termios-tcflow.h+1-1
......@@ -1,5 +1,5 @@
11/* termios local mode definitions. Linux/mips version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabi64/bits/timerfd.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2008-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2008-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabi64/bits/types/stack_t.h+1-1
......@@ -1,5 +1,5 @@
11/* Define stack_t. MIPS Linux version.
2 Copyright (C) 1998-2023 Free Software Foundation, Inc.
2 Copyright (C) 1998-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabi64/bits/types/struct_msqid_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* Linux/MIPS implementation of the SysV message struct msqid_ds.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabi64/bits/types/struct_semid_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* MIPS implementation of the semaphore struct semid_ds
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabi64/bits/types/struct_shmid_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* Linux/MIPS implementation of the shared memory struct shmid_ds.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabi64/ieee754.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1992-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1992-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabin32/bits/dlfcn.h+1-1
......@@ -1,5 +1,5 @@
11/* System dependent definitions for run-time dynamic loading.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabin32/bits/errno.h+1-1
......@@ -1,5 +1,5 @@
11/* Error constants. MIPS/Linux specific version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabin32/bits/eventfd.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2007-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2007-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabin32/bits/inotify.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2005-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2005-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabin32/bits/ioctl-types.h+1-1
......@@ -1,5 +1,5 @@
11/* Structure types for pre-termios terminal ioctls. Linux/MIPS version.
2 Copyright (C) 1997-2023 Free Software Foundation, Inc.
2 Copyright (C) 1997-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabin32/bits/ipctypes.h+1-1
......@@ -1,5 +1,5 @@
11/* bits/ipctypes.h -- Define some types used by SysV IPC/MSG/SHM. MIPS version
2 Copyright (C) 2002-2023 Free Software Foundation, Inc.
2 Copyright (C) 2002-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabin32/bits/mman.h+1-1
......@@ -1,5 +1,5 @@
11/* Definitions for POSIX memory map interface. Linux/MIPS version.
2 Copyright (C) 1997-2023 Free Software Foundation, Inc.
2 Copyright (C) 1997-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabin32/bits/poll.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabin32/bits/pthread_stack_min.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition of PTHREAD_STACK_MIN. MIPS Linux version.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabin32/bits/pthreadtypes-arch.h+1-1
......@@ -1,5 +1,5 @@
11/* Machine-specific pthread type layouts. MIPS version.
2 Copyright (C) 2005-2023 Free Software Foundation, Inc.
2 Copyright (C) 2005-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabin32/bits/resource.h+1-1
......@@ -1,5 +1,5 @@
11/* Bit values & structures for resource limits. Linux/MIPS version.
2 Copyright (C) 1994-2023 Free Software Foundation, Inc.
2 Copyright (C) 1994-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabin32/bits/semaphore.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2002-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2002-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabin32/bits/shmlba.h+1-1
......@@ -1,5 +1,5 @@
11/* Define SHMLBA. MIPS version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabin32/bits/sigaction.h+1-1
......@@ -1,5 +1,5 @@
11/* The proper definitions for Linux/MIPS's sigaction.
2 Copyright (C) 1993-2023 Free Software Foundation, Inc.
2 Copyright (C) 1993-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabin32/bits/sigcontext.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1996-2023 Free Software Foundation, Inc. This file is part of the GNU C Library.
1/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library.
22
33 The GNU C Library is free software; you can redistribute it and/or
44 modify it under the terms of the GNU Lesser General Public
lib/libc/include/mips64el-linux-gnuabin32/bits/signalfd.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2007-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2007-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabin32/bits/signum-arch.h+1-1
......@@ -1,5 +1,5 @@
11/* Signal number definitions. Linux/MIPS version.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabin32/bits/socket-constants.h+1-1
......@@ -1,5 +1,5 @@
11/* Socket constants which vary among Linux architectures. Version for MIPS.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabin32/bits/socket_type.h+1-1
......@@ -1,5 +1,5 @@
11/* Define enum __socket_type for Linux/MIPS.
2 Copyright (C) 1991-2023 Free Software Foundation, Inc.
2 Copyright (C) 1991-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabin32/bits/statfs.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabin32/bits/struct_mutex.h+1-1
......@@ -1,5 +1,5 @@
11/* MIPS internal mutex struct definitions.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabin32/bits/struct_rwlock.h created+71
......@@ -0,0 +1,71 @@
1/* MIPS internal rwlock struct definitions.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 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
22struct __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+1-1
......@@ -1,5 +1,5 @@
11/* termios c_cc symbolic constant definitions. Linux/mips version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabin32/bits/termios-c_lflag.h+1-1
......@@ -1,5 +1,5 @@
11/* termios local mode definitions. Linux/mips version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabin32/bits/termios-struct.h+1-1
......@@ -1,5 +1,5 @@
11/* struct termios definition. Linux/mips version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabin32/bits/termios-tcflow.h+1-1
......@@ -1,5 +1,5 @@
11/* termios local mode definitions. Linux/mips version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabin32/bits/timerfd.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2008-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2008-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabin32/bits/types/stack_t.h+1-1
......@@ -1,5 +1,5 @@
11/* Define stack_t. MIPS Linux version.
2 Copyright (C) 1998-2023 Free Software Foundation, Inc.
2 Copyright (C) 1998-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabin32/bits/types/struct_msqid_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* Linux/MIPS implementation of the SysV message struct msqid_ds.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabin32/bits/types/struct_semid_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* MIPS implementation of the semaphore struct semid_ds
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabin32/bits/types/struct_shmid_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* Linux/MIPS implementation of the shared memory struct shmid_ds.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mips64el-linux-gnuabin32/ieee754.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1992-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1992-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabi/bits/dlfcn.h+1-1
......@@ -1,5 +1,5 @@
11/* System dependent definitions for run-time dynamic loading.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabi/bits/errno.h+1-1
......@@ -1,5 +1,5 @@
11/* Error constants. MIPS/Linux specific version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabi/bits/eventfd.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2007-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2007-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabi/bits/inotify.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2005-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2005-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabi/bits/ioctl-types.h+1-1
......@@ -1,5 +1,5 @@
11/* Structure types for pre-termios terminal ioctls. Linux/MIPS version.
2 Copyright (C) 1997-2023 Free Software Foundation, Inc.
2 Copyright (C) 1997-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabi/bits/ipctypes.h+1-1
......@@ -1,5 +1,5 @@
11/* bits/ipctypes.h -- Define some types used by SysV IPC/MSG/SHM. MIPS version
2 Copyright (C) 2002-2023 Free Software Foundation, Inc.
2 Copyright (C) 2002-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabi/bits/mman.h+1-1
......@@ -1,5 +1,5 @@
11/* Definitions for POSIX memory map interface. Linux/MIPS version.
2 Copyright (C) 1997-2023 Free Software Foundation, Inc.
2 Copyright (C) 1997-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabi/bits/poll.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabi/bits/pthread_stack_min.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition of PTHREAD_STACK_MIN. MIPS Linux version.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabi/bits/pthreadtypes-arch.h+1-1
......@@ -1,5 +1,5 @@
11/* Machine-specific pthread type layouts. MIPS version.
2 Copyright (C) 2005-2023 Free Software Foundation, Inc.
2 Copyright (C) 2005-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabi/bits/resource.h+1-1
......@@ -1,5 +1,5 @@
11/* Bit values & structures for resource limits. Linux/MIPS version.
2 Copyright (C) 1994-2023 Free Software Foundation, Inc.
2 Copyright (C) 1994-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabi/bits/semaphore.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2002-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2002-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabi/bits/shmlba.h+1-1
......@@ -1,5 +1,5 @@
11/* Define SHMLBA. MIPS version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabi/bits/sigaction.h+1-1
......@@ -1,5 +1,5 @@
11/* The proper definitions for Linux/MIPS's sigaction.
2 Copyright (C) 1993-2023 Free Software Foundation, Inc.
2 Copyright (C) 1993-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabi/bits/sigcontext.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1996-2023 Free Software Foundation, Inc. This file is part of the GNU C Library.
1/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library.
22
33 The GNU C Library is free software; you can redistribute it and/or
44 modify it under the terms of the GNU Lesser General Public
lib/libc/include/mipsel-linux-gnueabi/bits/signalfd.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2007-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2007-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabi/bits/signum-arch.h+1-1
......@@ -1,5 +1,5 @@
11/* Signal number definitions. Linux/MIPS version.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabi/bits/socket-constants.h+1-1
......@@ -1,5 +1,5 @@
11/* Socket constants which vary among Linux architectures. Version for MIPS.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabi/bits/socket_type.h+1-1
......@@ -1,5 +1,5 @@
11/* Define enum __socket_type for Linux/MIPS.
2 Copyright (C) 1991-2023 Free Software Foundation, Inc.
2 Copyright (C) 1991-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabi/bits/statfs.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabi/bits/struct_mutex.h+1-1
......@@ -1,5 +1,5 @@
11/* MIPS internal mutex struct definitions.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabi/bits/struct_rwlock.h created+71
......@@ -0,0 +1,71 @@
1/* MIPS internal rwlock struct definitions.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 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
22struct __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+1-1
......@@ -1,5 +1,5 @@
11/* termios c_cc symbolic constant definitions. Linux/mips version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabi/bits/termios-c_lflag.h+1-1
......@@ -1,5 +1,5 @@
11/* termios local mode definitions. Linux/mips version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabi/bits/termios-struct.h+1-1
......@@ -1,5 +1,5 @@
11/* struct termios definition. Linux/mips version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabi/bits/termios-tcflow.h+1-1
......@@ -1,5 +1,5 @@
11/* termios local mode definitions. Linux/mips version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabi/bits/timerfd.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2008-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2008-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabi/bits/types/stack_t.h+1-1
......@@ -1,5 +1,5 @@
11/* Define stack_t. MIPS Linux version.
2 Copyright (C) 1998-2023 Free Software Foundation, Inc.
2 Copyright (C) 1998-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabi/bits/types/struct_msqid_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* Linux/MIPS implementation of the SysV message struct msqid_ds.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabi/bits/types/struct_semid_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* MIPS implementation of the semaphore struct semid_ds
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabi/bits/types/struct_shmid_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* Linux/MIPS implementation of the shared memory struct shmid_ds.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabi/ieee754.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1992-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1992-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabihf/bits/dlfcn.h+1-1
......@@ -1,5 +1,5 @@
11/* System dependent definitions for run-time dynamic loading.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabihf/bits/errno.h+1-1
......@@ -1,5 +1,5 @@
11/* Error constants. MIPS/Linux specific version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabihf/bits/eventfd.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2007-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2007-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabihf/bits/inotify.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2005-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2005-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabihf/bits/ioctl-types.h+1-1
......@@ -1,5 +1,5 @@
11/* Structure types for pre-termios terminal ioctls. Linux/MIPS version.
2 Copyright (C) 1997-2023 Free Software Foundation, Inc.
2 Copyright (C) 1997-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabihf/bits/ipctypes.h+1-1
......@@ -1,5 +1,5 @@
11/* bits/ipctypes.h -- Define some types used by SysV IPC/MSG/SHM. MIPS version
2 Copyright (C) 2002-2023 Free Software Foundation, Inc.
2 Copyright (C) 2002-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabihf/bits/mman.h+1-1
......@@ -1,5 +1,5 @@
11/* Definitions for POSIX memory map interface. Linux/MIPS version.
2 Copyright (C) 1997-2023 Free Software Foundation, Inc.
2 Copyright (C) 1997-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabihf/bits/poll.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabihf/bits/pthread_stack_min.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition of PTHREAD_STACK_MIN. MIPS Linux version.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabihf/bits/pthreadtypes-arch.h+1-1
......@@ -1,5 +1,5 @@
11/* Machine-specific pthread type layouts. MIPS version.
2 Copyright (C) 2005-2023 Free Software Foundation, Inc.
2 Copyright (C) 2005-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabihf/bits/resource.h+1-1
......@@ -1,5 +1,5 @@
11/* Bit values & structures for resource limits. Linux/MIPS version.
2 Copyright (C) 1994-2023 Free Software Foundation, Inc.
2 Copyright (C) 1994-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabihf/bits/semaphore.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2002-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2002-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabihf/bits/shmlba.h+1-1
......@@ -1,5 +1,5 @@
11/* Define SHMLBA. MIPS version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabihf/bits/sigaction.h+1-1
......@@ -1,5 +1,5 @@
11/* The proper definitions for Linux/MIPS's sigaction.
2 Copyright (C) 1993-2023 Free Software Foundation, Inc.
2 Copyright (C) 1993-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabihf/bits/sigcontext.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1996-2023 Free Software Foundation, Inc. This file is part of the GNU C Library.
1/* Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library.
22
33 The GNU C Library is free software; you can redistribute it and/or
44 modify it under the terms of the GNU Lesser General Public
lib/libc/include/mipsel-linux-gnueabihf/bits/signalfd.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2007-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2007-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabihf/bits/signum-arch.h+1-1
......@@ -1,5 +1,5 @@
11/* Signal number definitions. Linux/MIPS version.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabihf/bits/socket-constants.h+1-1
......@@ -1,5 +1,5 @@
11/* Socket constants which vary among Linux architectures. Version for MIPS.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabihf/bits/socket_type.h+1-1
......@@ -1,5 +1,5 @@
11/* Define enum __socket_type for Linux/MIPS.
2 Copyright (C) 1991-2023 Free Software Foundation, Inc.
2 Copyright (C) 1991-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabihf/bits/statfs.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabihf/bits/struct_mutex.h+1-1
......@@ -1,5 +1,5 @@
11/* MIPS internal mutex struct definitions.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabihf/bits/struct_rwlock.h created+71
......@@ -0,0 +1,71 @@
1/* MIPS internal rwlock struct definitions.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 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
22struct __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+1-1
......@@ -1,5 +1,5 @@
11/* termios c_cc symbolic constant definitions. Linux/mips version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabihf/bits/termios-c_lflag.h+1-1
......@@ -1,5 +1,5 @@
11/* termios local mode definitions. Linux/mips version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabihf/bits/termios-struct.h+1-1
......@@ -1,5 +1,5 @@
11/* struct termios definition. Linux/mips version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabihf/bits/termios-tcflow.h+1-1
......@@ -1,5 +1,5 @@
11/* termios local mode definitions. Linux/mips version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabihf/bits/timerfd.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2008-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2008-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabihf/bits/types/stack_t.h+1-1
......@@ -1,5 +1,5 @@
11/* Define stack_t. MIPS Linux version.
2 Copyright (C) 1998-2023 Free Software Foundation, Inc.
2 Copyright (C) 1998-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabihf/bits/types/struct_msqid_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* Linux/MIPS implementation of the SysV message struct msqid_ds.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabihf/bits/types/struct_semid_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* MIPS implementation of the semaphore struct semid_ds
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabihf/bits/types/struct_shmid_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* Linux/MIPS implementation of the shared memory struct shmid_ds.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/mipsel-linux-gnueabihf/ieee754.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1992-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1992-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabi/bits/environments.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1999-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1999-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabi/bits/fcntl.h+2-2
......@@ -1,5 +1,5 @@
11/* O_*, F_*, FD_* bit values for Linux/PowerPC.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
......@@ -33,7 +33,7 @@
3333# define __O_LARGEFILE 0200000
3434#endif
3535
36#if __WORDSIZE == 64
36#if __WORDSIZE == 64 && !defined __USE_FILE_OFFSET64
3737# define F_GETLK 5
3838# define F_SETLK 6
3939# define F_SETLKW 7
lib/libc/include/powerpc-linux-gnueabi/bits/fenv.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabi/bits/floatn.h+1-1
......@@ -1,5 +1,5 @@
11/* Macros to control TS 18661-3 glibc features on powerpc.
2 Copyright (C) 2017-2023 Free Software Foundation, Inc.
2 Copyright (C) 2017-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabi/bits/fp-fast.h+1-1
......@@ -1,5 +1,5 @@
11/* Define FP_FAST_* macros. PowerPC version.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabi/bits/hwcap.h+1-1
......@@ -1,5 +1,5 @@
11/* Defines for bits in AT_HWCAP and AT_HWCAP2.
2 Copyright (C) 2012-2023 Free Software Foundation, Inc.
2 Copyright (C) 2012-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabi/bits/ioctl-types.h+1-1
......@@ -1,5 +1,5 @@
11/* Structure types for pre-termios terminal ioctls. Linux/powerpc version.
2 Copyright (C) 2014-2023 Free Software Foundation, Inc.
2 Copyright (C) 2014-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabi/bits/ipc-perm.h+1-1
......@@ -1,5 +1,5 @@
11/* struct ipc_perm definition. Linux/powerpc version.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabi/bits/iscanonical.h+1-1
......@@ -1,5 +1,5 @@
11/* Define iscanonical macro. ldbl-128ibm version.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabi/bits/link.h+1-1
......@@ -1,5 +1,5 @@
11/* Machine-specific declarations for dynamic linker interface. PowerPC version
2 Copyright (C) 2004-2023 Free Software Foundation, Inc.
2 Copyright (C) 2004-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabi/bits/long-double.h+1-1
......@@ -1,5 +1,5 @@
11/* Properties of long double type. ldbl-opt version.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabi/bits/mman.h+1-1
......@@ -1,5 +1,5 @@
11/* Definitions for POSIX memory map interface. Linux/PowerPC version.
2 Copyright (C) 1997-2023 Free Software Foundation, Inc.
2 Copyright (C) 1997-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabi/bits/procfs.h+1-1
......@@ -1,5 +1,5 @@
11/* Types for registers for sys/procfs.h. PowerPC version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabi/bits/pthread_stack_min.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition of PTHREAD_STACK_MIN. Linux/PPC version.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabi/bits/rseq.h+1-1
......@@ -1,5 +1,5 @@
11/* Restartable Sequences Linux powerpc architecture header.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33
44 The GNU C Library is free software; you can redistribute it and/or
55 modify it under the terms of the GNU Lesser General Public
lib/libc/include/powerpc-linux-gnueabi/bits/setjmp.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabi/bits/sigstack.h+1-1
......@@ -1,5 +1,5 @@
11/* sigstack, sigaltstack definitions.
2 Copyright (C) 1998-2023 Free Software Foundation, Inc.
2 Copyright (C) 1998-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabi/bits/socket-constants.h+1-1
......@@ -1,5 +1,5 @@
11/* Socket constants which vary among Linux architectures. Version for POWER.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabi/bits/struct_mutex.h+1-1
......@@ -1,5 +1,5 @@
11/* PowerPC internal mutex struct definitions.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabi/bits/struct_rwlock.h+1-1
......@@ -1,5 +1,5 @@
11/* PowerPC internal rwlock struct definitions.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
lib/libc/include/powerpc-linux-gnueabi/bits/struct_stat.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition for struct stat.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabi/bits/termios-baud.h+1-1
......@@ -1,5 +1,5 @@
11/* termios baud rate selection definitions. Linux/powerpc version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabi/bits/termios-c_cc.h+1-1
......@@ -1,5 +1,5 @@
11/* termios c_cc symbolic constant definitions. Linux/powerpc version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabi/bits/termios-c_cflag.h+1-1
......@@ -1,5 +1,5 @@
11/* termios control mode definitions. Linux/powerpc version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabi/bits/termios-c_iflag.h+1-1
......@@ -1,5 +1,5 @@
11/* termios input mode definitions. Linux/powerpc version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabi/bits/termios-c_lflag.h+1-1
......@@ -1,5 +1,5 @@
11/* termios local mode definitions. Linux/powerpc version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabi/bits/termios-c_oflag.h+1-1
......@@ -1,5 +1,5 @@
11/* termios output mode definitions. Linux/powerpc version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabi/bits/termios-misc.h+1-1
......@@ -1,5 +1,5 @@
11/* termios baud platform specific definitions. Linux/powerpc version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabi/bits/timesize.h+1-1
......@@ -1,5 +1,5 @@
11/* Bit size of the time_t type at glibc build time, Linux/PowerPC.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabi/bits/types/struct_msqid_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* Linux/PowerPC implementation of the SysV message struct msqid_ds.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabi/bits/types/struct_semid_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* PowerPC implementation of the semaphore struct semid_ds.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabi/bits/types/struct_shmid_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* Linux/PowerPC implementation of the shared memory struct shmid_ds.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabi/bits/typesizes.h+1-1
......@@ -1,5 +1,5 @@
11/* bits/typesizes.h -- underlying types for *_t. PowerPC version.
2 Copyright (C) 2002-2023 Free Software Foundation, Inc.
2 Copyright (C) 2002-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabi/fpu_control.h+1-1
......@@ -1,5 +1,5 @@
11/* FPU control word definitions. PowerPC version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabi/ieee754.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1992-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1992-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabi/sys/ptrace.h+14-2
......@@ -1,5 +1,5 @@
11/* `ptrace' debugger support interface. Linux/PowerPC version.
2 Copyright (C) 2001-2023 Free Software Foundation, Inc.
2 Copyright (C) 2001-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
......@@ -40,6 +40,7 @@ __BEGIN_DECLS
4040# undef PTRACE_GETSIGINFO
4141# undef PTRACE_GETSIGMASK
4242# undef PTRACE_GET_SYSCALL_INFO
43# undef PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG
4344# undef PTRACE_GETVRREGS
4445# undef PTRACE_GETVSRREGS
4546# undef PTRACE_INTERRUPT
......@@ -62,6 +63,7 @@ __BEGIN_DECLS
6263# undef PTRACE_SETREGSET
6364# undef PTRACE_SETSIGINFO
6465# undef PTRACE_SETSIGMASK
66# undef PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG
6567# undef PTRACE_SETVRREGS
6668# undef PTRACE_SETVSRREGS
6769# undef PTRACE_SINGLEBLOCK
......@@ -265,8 +267,18 @@ enum __ptrace_request
265267#define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO
266268
267269 /* Get rseq configuration information. */
268 PTRACE_GET_RSEQ_CONFIGURATION = 0x420f
270 PTRACE_GET_RSEQ_CONFIGURATION = 0x420f,
269271#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
270282};
271283
272284
lib/libc/include/powerpc-linux-gnueabi/sys/ucontext.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1998-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1998-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabi/sys/user.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1998-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1998-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabihf/bits/environments.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1999-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1999-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabihf/bits/fcntl.h+2-2
......@@ -1,5 +1,5 @@
11/* O_*, F_*, FD_* bit values for Linux/PowerPC.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
......@@ -33,7 +33,7 @@
3333# define __O_LARGEFILE 0200000
3434#endif
3535
36#if __WORDSIZE == 64
36#if __WORDSIZE == 64 && !defined __USE_FILE_OFFSET64
3737# define F_GETLK 5
3838# define F_SETLK 6
3939# define F_SETLKW 7
lib/libc/include/powerpc-linux-gnueabihf/bits/fenv.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabihf/bits/floatn.h+1-1
......@@ -1,5 +1,5 @@
11/* Macros to control TS 18661-3 glibc features on powerpc.
2 Copyright (C) 2017-2023 Free Software Foundation, Inc.
2 Copyright (C) 2017-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabihf/bits/fp-fast.h+1-1
......@@ -1,5 +1,5 @@
11/* Define FP_FAST_* macros. PowerPC version.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabihf/bits/hwcap.h+1-1
......@@ -1,5 +1,5 @@
11/* Defines for bits in AT_HWCAP and AT_HWCAP2.
2 Copyright (C) 2012-2023 Free Software Foundation, Inc.
2 Copyright (C) 2012-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabihf/bits/ioctl-types.h+1-1
......@@ -1,5 +1,5 @@
11/* Structure types for pre-termios terminal ioctls. Linux/powerpc version.
2 Copyright (C) 2014-2023 Free Software Foundation, Inc.
2 Copyright (C) 2014-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabihf/bits/ipc-perm.h+1-1
......@@ -1,5 +1,5 @@
11/* struct ipc_perm definition. Linux/powerpc version.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabihf/bits/iscanonical.h+1-1
......@@ -1,5 +1,5 @@
11/* Define iscanonical macro. ldbl-128ibm version.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabihf/bits/link.h+1-1
......@@ -1,5 +1,5 @@
11/* Machine-specific declarations for dynamic linker interface. PowerPC version
2 Copyright (C) 2004-2023 Free Software Foundation, Inc.
2 Copyright (C) 2004-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabihf/bits/long-double.h+1-1
......@@ -1,5 +1,5 @@
11/* Properties of long double type. ldbl-opt version.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabihf/bits/mman.h+1-1
......@@ -1,5 +1,5 @@
11/* Definitions for POSIX memory map interface. Linux/PowerPC version.
2 Copyright (C) 1997-2023 Free Software Foundation, Inc.
2 Copyright (C) 1997-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabihf/bits/procfs.h+1-1
......@@ -1,5 +1,5 @@
11/* Types for registers for sys/procfs.h. PowerPC version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabihf/bits/pthread_stack_min.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition of PTHREAD_STACK_MIN. Linux/PPC version.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabihf/bits/rseq.h+1-1
......@@ -1,5 +1,5 @@
11/* Restartable Sequences Linux powerpc architecture header.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33
44 The GNU C Library is free software; you can redistribute it and/or
55 modify it under the terms of the GNU Lesser General Public
lib/libc/include/powerpc-linux-gnueabihf/bits/setjmp.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabihf/bits/sigstack.h+1-1
......@@ -1,5 +1,5 @@
11/* sigstack, sigaltstack definitions.
2 Copyright (C) 1998-2023 Free Software Foundation, Inc.
2 Copyright (C) 1998-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabihf/bits/socket-constants.h+1-1
......@@ -1,5 +1,5 @@
11/* Socket constants which vary among Linux architectures. Version for POWER.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabihf/bits/struct_mutex.h+1-1
......@@ -1,5 +1,5 @@
11/* PowerPC internal mutex struct definitions.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabihf/bits/struct_rwlock.h+1-1
......@@ -1,5 +1,5 @@
11/* PowerPC internal rwlock struct definitions.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
lib/libc/include/powerpc-linux-gnueabihf/bits/struct_stat.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition for struct stat.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabihf/bits/termios-baud.h+1-1
......@@ -1,5 +1,5 @@
11/* termios baud rate selection definitions. Linux/powerpc version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabihf/bits/termios-c_cc.h+1-1
......@@ -1,5 +1,5 @@
11/* termios c_cc symbolic constant definitions. Linux/powerpc version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabihf/bits/termios-c_cflag.h+1-1
......@@ -1,5 +1,5 @@
11/* termios control mode definitions. Linux/powerpc version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabihf/bits/termios-c_iflag.h+1-1
......@@ -1,5 +1,5 @@
11/* termios input mode definitions. Linux/powerpc version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabihf/bits/termios-c_lflag.h+1-1
......@@ -1,5 +1,5 @@
11/* termios local mode definitions. Linux/powerpc version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabihf/bits/termios-c_oflag.h+1-1
......@@ -1,5 +1,5 @@
11/* termios output mode definitions. Linux/powerpc version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabihf/bits/termios-misc.h+1-1
......@@ -1,5 +1,5 @@
11/* termios baud platform specific definitions. Linux/powerpc version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabihf/bits/timesize.h+1-1
......@@ -1,5 +1,5 @@
11/* Bit size of the time_t type at glibc build time, Linux/PowerPC.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabihf/bits/types/struct_msqid_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* Linux/PowerPC implementation of the SysV message struct msqid_ds.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabihf/bits/types/struct_semid_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* PowerPC implementation of the semaphore struct semid_ds.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabihf/bits/types/struct_shmid_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* Linux/PowerPC implementation of the shared memory struct shmid_ds.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabihf/bits/typesizes.h+1-1
......@@ -1,5 +1,5 @@
11/* bits/typesizes.h -- underlying types for *_t. PowerPC version.
2 Copyright (C) 2002-2023 Free Software Foundation, Inc.
2 Copyright (C) 2002-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabihf/fpu_control.h+1-1
......@@ -1,5 +1,5 @@
11/* FPU control word definitions. PowerPC version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabihf/ieee754.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1992-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1992-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabihf/sys/ptrace.h+14-2
......@@ -1,5 +1,5 @@
11/* `ptrace' debugger support interface. Linux/PowerPC version.
2 Copyright (C) 2001-2023 Free Software Foundation, Inc.
2 Copyright (C) 2001-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
......@@ -40,6 +40,7 @@ __BEGIN_DECLS
4040# undef PTRACE_GETSIGINFO
4141# undef PTRACE_GETSIGMASK
4242# undef PTRACE_GET_SYSCALL_INFO
43# undef PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG
4344# undef PTRACE_GETVRREGS
4445# undef PTRACE_GETVSRREGS
4546# undef PTRACE_INTERRUPT
......@@ -62,6 +63,7 @@ __BEGIN_DECLS
6263# undef PTRACE_SETREGSET
6364# undef PTRACE_SETSIGINFO
6465# undef PTRACE_SETSIGMASK
66# undef PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG
6567# undef PTRACE_SETVRREGS
6668# undef PTRACE_SETVSRREGS
6769# undef PTRACE_SINGLEBLOCK
......@@ -265,8 +267,18 @@ enum __ptrace_request
265267#define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO
266268
267269 /* Get rseq configuration information. */
268 PTRACE_GET_RSEQ_CONFIGURATION = 0x420f
270 PTRACE_GET_RSEQ_CONFIGURATION = 0x420f,
269271#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
270282};
271283
272284
lib/libc/include/powerpc-linux-gnueabihf/sys/ucontext.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1998-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1998-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc-linux-gnueabihf/sys/user.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1998-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1998-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64-linux-gnu/bits/environments.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1999-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1999-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64-linux-gnu/bits/fcntl.h+2-2
......@@ -1,5 +1,5 @@
11/* O_*, F_*, FD_* bit values for Linux/PowerPC.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
......@@ -33,7 +33,7 @@
3333# define __O_LARGEFILE 0200000
3434#endif
3535
36#if __WORDSIZE == 64
36#if __WORDSIZE == 64 && !defined __USE_FILE_OFFSET64
3737# define F_GETLK 5
3838# define F_SETLK 6
3939# define F_SETLKW 7
lib/libc/include/powerpc64-linux-gnu/bits/fenv.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64-linux-gnu/bits/floatn.h+1-1
......@@ -1,5 +1,5 @@
11/* Macros to control TS 18661-3 glibc features on powerpc.
2 Copyright (C) 2017-2023 Free Software Foundation, Inc.
2 Copyright (C) 2017-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64-linux-gnu/bits/fp-fast.h+1-1
......@@ -1,5 +1,5 @@
11/* Define FP_FAST_* macros. PowerPC version.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64-linux-gnu/bits/hwcap.h+1-1
......@@ -1,5 +1,5 @@
11/* Defines for bits in AT_HWCAP and AT_HWCAP2.
2 Copyright (C) 2012-2023 Free Software Foundation, Inc.
2 Copyright (C) 2012-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64-linux-gnu/bits/ioctl-types.h+1-1
......@@ -1,5 +1,5 @@
11/* Structure types for pre-termios terminal ioctls. Linux/powerpc version.
2 Copyright (C) 2014-2023 Free Software Foundation, Inc.
2 Copyright (C) 2014-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64-linux-gnu/bits/ipc-perm.h+1-1
......@@ -1,5 +1,5 @@
11/* struct ipc_perm definition. Linux/powerpc version.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64-linux-gnu/bits/iscanonical.h+1-1
......@@ -1,5 +1,5 @@
11/* Define iscanonical macro. ldbl-128ibm version.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64-linux-gnu/bits/link.h+1-1
......@@ -1,5 +1,5 @@
11/* Machine-specific declarations for dynamic linker interface. PowerPC version
2 Copyright (C) 2004-2023 Free Software Foundation, Inc.
2 Copyright (C) 2004-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64-linux-gnu/bits/long-double.h+1-1
......@@ -1,5 +1,5 @@
11/* Properties of long double type. ldbl-opt version.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64-linux-gnu/bits/mman.h+1-1
......@@ -1,5 +1,5 @@
11/* Definitions for POSIX memory map interface. Linux/PowerPC version.
2 Copyright (C) 1997-2023 Free Software Foundation, Inc.
2 Copyright (C) 1997-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64-linux-gnu/bits/procfs.h+1-1
......@@ -1,5 +1,5 @@
11/* Types for registers for sys/procfs.h. PowerPC version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64-linux-gnu/bits/pthread_stack_min.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition of PTHREAD_STACK_MIN. Linux/PPC version.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64-linux-gnu/bits/rseq.h+1-1
......@@ -1,5 +1,5 @@
11/* Restartable Sequences Linux powerpc architecture header.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33
44 The GNU C Library is free software; you can redistribute it and/or
55 modify it under the terms of the GNU Lesser General Public
lib/libc/include/powerpc64-linux-gnu/bits/setjmp.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64-linux-gnu/bits/sigstack.h+1-1
......@@ -1,5 +1,5 @@
11/* sigstack, sigaltstack definitions.
2 Copyright (C) 1998-2023 Free Software Foundation, Inc.
2 Copyright (C) 1998-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64-linux-gnu/bits/socket-constants.h+1-1
......@@ -1,5 +1,5 @@
11/* Socket constants which vary among Linux architectures. Version for POWER.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64-linux-gnu/bits/struct_mutex.h+1-1
......@@ -1,5 +1,5 @@
11/* PowerPC internal mutex struct definitions.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64-linux-gnu/bits/struct_rwlock.h+1-1
......@@ -1,5 +1,5 @@
11/* PowerPC internal rwlock struct definitions.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
lib/libc/include/powerpc64-linux-gnu/bits/struct_stat.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition for struct stat.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64-linux-gnu/bits/termios-baud.h+1-1
......@@ -1,5 +1,5 @@
11/* termios baud rate selection definitions. Linux/powerpc version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64-linux-gnu/bits/termios-c_cc.h+1-1
......@@ -1,5 +1,5 @@
11/* termios c_cc symbolic constant definitions. Linux/powerpc version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64-linux-gnu/bits/termios-c_cflag.h+1-1
......@@ -1,5 +1,5 @@
11/* termios control mode definitions. Linux/powerpc version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64-linux-gnu/bits/termios-c_iflag.h+1-1
......@@ -1,5 +1,5 @@
11/* termios input mode definitions. Linux/powerpc version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64-linux-gnu/bits/termios-c_lflag.h+1-1
......@@ -1,5 +1,5 @@
11/* termios local mode definitions. Linux/powerpc version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64-linux-gnu/bits/termios-c_oflag.h+1-1
......@@ -1,5 +1,5 @@
11/* termios output mode definitions. Linux/powerpc version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64-linux-gnu/bits/termios-misc.h+1-1
......@@ -1,5 +1,5 @@
11/* termios baud platform specific definitions. Linux/powerpc version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64-linux-gnu/bits/timesize.h+1-1
......@@ -1,5 +1,5 @@
11/* Bit size of the time_t type at glibc build time, Linux/PowerPC.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64-linux-gnu/bits/types/struct_msqid_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* Linux/PowerPC implementation of the SysV message struct msqid_ds.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64-linux-gnu/bits/types/struct_semid_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* PowerPC implementation of the semaphore struct semid_ds.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64-linux-gnu/bits/types/struct_shmid_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* Linux/PowerPC implementation of the shared memory struct shmid_ds.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64-linux-gnu/bits/typesizes.h+1-1
......@@ -1,5 +1,5 @@
11/* bits/typesizes.h -- underlying types for *_t. PowerPC version.
2 Copyright (C) 2002-2023 Free Software Foundation, Inc.
2 Copyright (C) 2002-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64-linux-gnu/fpu_control.h+1-1
......@@ -1,5 +1,5 @@
11/* FPU control word definitions. PowerPC version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64-linux-gnu/gnu/lib-names-64-v1.h-1
......@@ -7,7 +7,6 @@
77#define LD_SO "ld64.so.1"
88#define LIBANL_SO "libanl.so.1"
99#define LIBBROKENLOCALE_SO "libBrokenLocale.so.1"
10#define LIBCRYPT_SO "libcrypt.so.1"
1110#define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0"
1211#define LIBC_SO "libc.so.6"
1312#define LIBDL_SO "libdl.so.2"
lib/libc/include/powerpc64-linux-gnu/ieee754.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1992-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1992-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64-linux-gnu/sys/ptrace.h+14-2
......@@ -1,5 +1,5 @@
11/* `ptrace' debugger support interface. Linux/PowerPC version.
2 Copyright (C) 2001-2023 Free Software Foundation, Inc.
2 Copyright (C) 2001-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
......@@ -40,6 +40,7 @@ __BEGIN_DECLS
4040# undef PTRACE_GETSIGINFO
4141# undef PTRACE_GETSIGMASK
4242# undef PTRACE_GET_SYSCALL_INFO
43# undef PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG
4344# undef PTRACE_GETVRREGS
4445# undef PTRACE_GETVSRREGS
4546# undef PTRACE_INTERRUPT
......@@ -62,6 +63,7 @@ __BEGIN_DECLS
6263# undef PTRACE_SETREGSET
6364# undef PTRACE_SETSIGINFO
6465# undef PTRACE_SETSIGMASK
66# undef PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG
6567# undef PTRACE_SETVRREGS
6668# undef PTRACE_SETVSRREGS
6769# undef PTRACE_SINGLEBLOCK
......@@ -265,8 +267,18 @@ enum __ptrace_request
265267#define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO
266268
267269 /* Get rseq configuration information. */
268 PTRACE_GET_RSEQ_CONFIGURATION = 0x420f
270 PTRACE_GET_RSEQ_CONFIGURATION = 0x420f,
269271#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
270282};
271283
272284
lib/libc/include/powerpc64-linux-gnu/sys/ucontext.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1998-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1998-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64-linux-gnu/sys/user.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1998-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1998-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64le-linux-gnu/bits/environments.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1999-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1999-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64le-linux-gnu/bits/fcntl.h+2-2
......@@ -1,5 +1,5 @@
11/* O_*, F_*, FD_* bit values for Linux/PowerPC.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
......@@ -33,7 +33,7 @@
3333# define __O_LARGEFILE 0200000
3434#endif
3535
36#if __WORDSIZE == 64
36#if __WORDSIZE == 64 && !defined __USE_FILE_OFFSET64
3737# define F_GETLK 5
3838# define F_SETLK 6
3939# define F_SETLKW 7
lib/libc/include/powerpc64le-linux-gnu/bits/fenv.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64le-linux-gnu/bits/floatn.h+1-1
......@@ -1,5 +1,5 @@
11/* Macros to control TS 18661-3 glibc features on powerpc.
2 Copyright (C) 2017-2023 Free Software Foundation, Inc.
2 Copyright (C) 2017-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64le-linux-gnu/bits/fp-fast.h+1-1
......@@ -1,5 +1,5 @@
11/* Define FP_FAST_* macros. PowerPC version.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64le-linux-gnu/bits/hwcap.h+1-1
......@@ -1,5 +1,5 @@
11/* Defines for bits in AT_HWCAP and AT_HWCAP2.
2 Copyright (C) 2012-2023 Free Software Foundation, Inc.
2 Copyright (C) 2012-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64le-linux-gnu/bits/ioctl-types.h+1-1
......@@ -1,5 +1,5 @@
11/* Structure types for pre-termios terminal ioctls. Linux/powerpc version.
2 Copyright (C) 2014-2023 Free Software Foundation, Inc.
2 Copyright (C) 2014-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64le-linux-gnu/bits/ipc-perm.h+1-1
......@@ -1,5 +1,5 @@
11/* struct ipc_perm definition. Linux/powerpc version.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64le-linux-gnu/bits/iscanonical.h+1-1
......@@ -1,5 +1,5 @@
11/* Define iscanonical macro. ldbl-128ibm version.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64le-linux-gnu/bits/link.h+1-1
......@@ -1,5 +1,5 @@
11/* Machine-specific declarations for dynamic linker interface. PowerPC version
2 Copyright (C) 2004-2023 Free Software Foundation, Inc.
2 Copyright (C) 2004-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64le-linux-gnu/bits/long-double.h+1-1
......@@ -1,5 +1,5 @@
11/* Properties of long double type. ldbl-opt version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64le-linux-gnu/bits/mman.h+1-1
......@@ -1,5 +1,5 @@
11/* Definitions for POSIX memory map interface. Linux/PowerPC version.
2 Copyright (C) 1997-2023 Free Software Foundation, Inc.
2 Copyright (C) 1997-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64le-linux-gnu/bits/procfs.h+1-1
......@@ -1,5 +1,5 @@
11/* Types for registers for sys/procfs.h. PowerPC version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64le-linux-gnu/bits/pthread_stack_min.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition of PTHREAD_STACK_MIN. Linux/PPC version.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64le-linux-gnu/bits/rseq.h+1-1
......@@ -1,5 +1,5 @@
11/* Restartable Sequences Linux powerpc architecture header.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33
44 The GNU C Library is free software; you can redistribute it and/or
55 modify it under the terms of the GNU Lesser General Public
lib/libc/include/powerpc64le-linux-gnu/bits/setjmp.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64le-linux-gnu/bits/sigstack.h+1-1
......@@ -1,5 +1,5 @@
11/* sigstack, sigaltstack definitions.
2 Copyright (C) 1998-2023 Free Software Foundation, Inc.
2 Copyright (C) 1998-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64le-linux-gnu/bits/socket-constants.h+1-1
......@@ -1,5 +1,5 @@
11/* Socket constants which vary among Linux architectures. Version for POWER.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64le-linux-gnu/bits/struct_mutex.h+1-1
......@@ -1,5 +1,5 @@
11/* PowerPC internal mutex struct definitions.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64le-linux-gnu/bits/struct_rwlock.h+1-1
......@@ -1,5 +1,5 @@
11/* PowerPC internal rwlock struct definitions.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
lib/libc/include/powerpc64le-linux-gnu/bits/struct_stat.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition for struct stat.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64le-linux-gnu/bits/termios-baud.h+1-1
......@@ -1,5 +1,5 @@
11/* termios baud rate selection definitions. Linux/powerpc version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64le-linux-gnu/bits/termios-c_cc.h+1-1
......@@ -1,5 +1,5 @@
11/* termios c_cc symbolic constant definitions. Linux/powerpc version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64le-linux-gnu/bits/termios-c_cflag.h+1-1
......@@ -1,5 +1,5 @@
11/* termios control mode definitions. Linux/powerpc version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64le-linux-gnu/bits/termios-c_iflag.h+1-1
......@@ -1,5 +1,5 @@
11/* termios input mode definitions. Linux/powerpc version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64le-linux-gnu/bits/termios-c_lflag.h+1-1
......@@ -1,5 +1,5 @@
11/* termios local mode definitions. Linux/powerpc version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64le-linux-gnu/bits/termios-c_oflag.h+1-1
......@@ -1,5 +1,5 @@
11/* termios output mode definitions. Linux/powerpc version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64le-linux-gnu/bits/termios-misc.h+1-1
......@@ -1,5 +1,5 @@
11/* termios baud platform specific definitions. Linux/powerpc version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64le-linux-gnu/bits/timesize.h+1-1
......@@ -1,5 +1,5 @@
11/* Bit size of the time_t type at glibc build time, Linux/PowerPC.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64le-linux-gnu/bits/types/struct_msqid_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* Linux/PowerPC implementation of the SysV message struct msqid_ds.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64le-linux-gnu/bits/types/struct_semid_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* PowerPC implementation of the semaphore struct semid_ds.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64le-linux-gnu/bits/types/struct_shmid_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* Linux/PowerPC implementation of the shared memory struct shmid_ds.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64le-linux-gnu/bits/typesizes.h+1-1
......@@ -1,5 +1,5 @@
11/* bits/typesizes.h -- underlying types for *_t. PowerPC version.
2 Copyright (C) 2002-2023 Free Software Foundation, Inc.
2 Copyright (C) 2002-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64le-linux-gnu/fpu_control.h+1-1
......@@ -1,5 +1,5 @@
11/* FPU control word definitions. PowerPC version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64le-linux-gnu/gnu/lib-names-64-v2.h-1
......@@ -7,7 +7,6 @@
77#define LD_SO "ld64.so.2"
88#define LIBANL_SO "libanl.so.1"
99#define LIBBROKENLOCALE_SO "libBrokenLocale.so.1"
10#define LIBCRYPT_SO "libcrypt.so.1"
1110#define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0"
1211#define LIBC_SO "libc.so.6"
1312#define LIBDL_SO "libdl.so.2"
lib/libc/include/powerpc64le-linux-gnu/ieee754.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1992-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1992-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64le-linux-gnu/sys/ptrace.h+14-2
......@@ -1,5 +1,5 @@
11/* `ptrace' debugger support interface. Linux/PowerPC version.
2 Copyright (C) 2001-2023 Free Software Foundation, Inc.
2 Copyright (C) 2001-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
......@@ -40,6 +40,7 @@ __BEGIN_DECLS
4040# undef PTRACE_GETSIGINFO
4141# undef PTRACE_GETSIGMASK
4242# undef PTRACE_GET_SYSCALL_INFO
43# undef PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG
4344# undef PTRACE_GETVRREGS
4445# undef PTRACE_GETVSRREGS
4546# undef PTRACE_INTERRUPT
......@@ -62,6 +63,7 @@ __BEGIN_DECLS
6263# undef PTRACE_SETREGSET
6364# undef PTRACE_SETSIGINFO
6465# undef PTRACE_SETSIGMASK
66# undef PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG
6567# undef PTRACE_SETVRREGS
6668# undef PTRACE_SETVSRREGS
6769# undef PTRACE_SINGLEBLOCK
......@@ -265,8 +267,18 @@ enum __ptrace_request
265267#define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO
266268
267269 /* Get rseq configuration information. */
268 PTRACE_GET_RSEQ_CONFIGURATION = 0x420f
270 PTRACE_GET_RSEQ_CONFIGURATION = 0x420f,
269271#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
270282};
271283
272284
lib/libc/include/powerpc64le-linux-gnu/sys/ucontext.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1998-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1998-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/powerpc64le-linux-gnu/sys/user.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1998-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1998-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/riscv32-linux-gnuilp32/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/riscv32-linux-gnuilp32/bits/environments.h created+81
......@@ -0,0 +1,81 @@
1/* Copyright (C) 2020-2024 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-gnuilp32/bits/fcntl.h created+62
......@@ -0,0 +1,62 @@
1/* O_*, F_*, FD_* bit values for Linux / RISC-V.
2 Copyright (C) 2011-2024 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
36struct 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
51struct 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-gnuilp32/bits/fenv.h created+74
......@@ -0,0 +1,74 @@
1/* Floating point environment, RISC-V version.
2 Copyright (C) 1998-2024 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 You should have received a copy of the 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
23enum
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
45enum
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
62typedef unsigned int fexcept_t;
63typedef 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_C2X)
69/* Type representing floating-point control modes. */
70typedef 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-gnuilp32/bits/floatn.h created+97
......@@ -0,0 +1,97 @@
1/* Macros to control TS 18661-3 glibc features on ldbl-128 platforms.
2 Copyright (C) 2017-2024 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 You should have received a copy of the 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))
80typedef 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/riscv32-linux-gnuilp32/bits/link.h created+56
......@@ -0,0 +1,56 @@
1/* Machine-specific declarations for dynamic linker interface. RISC-V version.
2 Copyright (C) 2005-2024 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 You should have received a copy of the 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
23typedef 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. */
32typedef 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
42extern 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);
49extern 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-gnuilp32/bits/long-double.h created+21
......@@ -0,0 +1,21 @@
1/* Properties of long double type. ldbl-128 version.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C 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-gnuilp32/bits/procfs.h created+31
......@@ -0,0 +1,31 @@
1/* Types for registers for sys/procfs.h. RISC-V version.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 You should have received a copy of the 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
29typedef unsigned long int elf_greg_t;
30typedef unsigned long int elf_gregset_t[32];
31typedef union __riscv_mc_fp_state elf_fpregset_t;
\ No newline at end of file
lib/libc/include/riscv32-linux-gnuilp32/bits/pthreadtypes-arch.h created+45
......@@ -0,0 +1,45 @@
1/* Machine-specific pthread type layouts. RISC-V version.
2 Copyright (C) 2011-2024 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 You should have received a copy of the 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-gnuilp32/bits/rseq.h created+29
......@@ -0,0 +1,29 @@
1/* Restartable Sequences architecture header. Stub version.
2 Copyright (C) 2021-2024 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/riscv32-linux-gnuilp32/bits/setjmp.h created+39
......@@ -0,0 +1,39 @@
1/* Define the machine-dependent type `jmp_buf'. RISC-V version.
2 Copyright (C) 2011-2024 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 You should have received a copy of the 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
22typedef 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-gnuilp32/bits/sigcontext.h created+31
......@@ -0,0 +1,31 @@
1/* Machine-dependent signal context structure for Linux. RISC-V version.
2 Copyright (C) 1996-2024 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
25struct 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-gnuilp32/bits/struct_rwlock.h created+68
......@@ -0,0 +1,68 @@
1/* RISC-V internal rwlock struct definitions.
2 Copyright (C) 2019-2024 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. */
27struct __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-gnuilp32/bits/struct_stat.h created+127
......@@ -0,0 +1,127 @@
1/* Definition for struct stat.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 You should have received a copy of 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
44struct 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
85struct 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-gnuilp32/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-2024 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 You should have received a copy of the 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-gnuilp32/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-2024 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 You should have received a copy of 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-gnuilp32/bits/typesizes.h created+107
......@@ -0,0 +1,107 @@
1/* bits/typesizes.h -- underlying types for *_t. For the generic Linux ABI.
2 Copyright (C) 2011-2024 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 You should have received a copy of the 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#if __TIMESIZE == 64 && __WORDSIZE == 32
29/* These are the "new" y2038 types defined for architectures added after
30 the 5.1 kernel. */
31# define __INO_T_TYPE __UQUAD_TYPE
32# define __OFF_T_TYPE __SQUAD_TYPE
33# define __RLIM_T_TYPE __UQUAD_TYPE
34# define __BLKCNT_T_TYPE __SQUAD_TYPE
35# define __FSBLKCNT_T_TYPE __UQUAD_TYPE
36# define __FSFILCNT_T_TYPE __UQUAD_TYPE
37# define __TIME_T_TYPE __SQUAD_TYPE
38# define __SUSECONDS_T_TYPE __SQUAD_TYPE
39#else
40# define __INO_T_TYPE __ULONGWORD_TYPE
41# define __OFF_T_TYPE __SLONGWORD_TYPE
42# define __RLIM_T_TYPE __ULONGWORD_TYPE
43# define __BLKCNT_T_TYPE __SLONGWORD_TYPE
44# define __FSBLKCNT_T_TYPE __ULONGWORD_TYPE
45# define __FSFILCNT_T_TYPE __ULONGWORD_TYPE
46# define __TIME_T_TYPE __SLONGWORD_TYPE
47# define __SUSECONDS_T_TYPE __SLONGWORD_TYPE
48#endif
49
50#define __DEV_T_TYPE __UQUAD_TYPE
51#define __UID_T_TYPE __U32_TYPE
52#define __GID_T_TYPE __U32_TYPE
53#define __INO64_T_TYPE __UQUAD_TYPE
54#define __MODE_T_TYPE __U32_TYPE
55#define __NLINK_T_TYPE __U32_TYPE
56#define __OFF64_T_TYPE __SQUAD_TYPE
57#define __PID_T_TYPE __S32_TYPE
58#define __RLIM64_T_TYPE __UQUAD_TYPE
59#define __BLKCNT64_T_TYPE __SQUAD_TYPE
60#define __FSBLKCNT64_T_TYPE __UQUAD_TYPE
61#define __FSFILCNT64_T_TYPE __UQUAD_TYPE
62#define __FSWORD_T_TYPE __SWORD_TYPE
63#define __ID_T_TYPE __U32_TYPE
64#define __CLOCK_T_TYPE __SLONGWORD_TYPE
65#define __USECONDS_T_TYPE __U32_TYPE
66#define __SUSECONDS64_T_TYPE __SQUAD_TYPE
67#define __DADDR_T_TYPE __S32_TYPE
68#define __KEY_T_TYPE __S32_TYPE
69#define __CLOCKID_T_TYPE __S32_TYPE
70#define __TIMER_T_TYPE void *
71#define __BLKSIZE_T_TYPE __S32_TYPE
72#define __FSID_T_TYPE struct { int __val[2]; }
73#define __SSIZE_T_TYPE __SWORD_TYPE
74#define __SYSCALL_SLONG_TYPE __SLONGWORD_TYPE
75#define __SYSCALL_ULONG_TYPE __ULONGWORD_TYPE
76#define __CPU_MASK_TYPE __ULONGWORD_TYPE
77
78#if defined __LP64__ || (__TIMESIZE == 64 && __WORDSIZE == 32)
79/* Tell the libc code that off_t and off64_t are actually the same type
80 for all ABI purposes, even if possibly expressed as different base types
81 for C type-checking purposes. */
82# define __OFF_T_MATCHES_OFF64_T 1
83
84/* Same for ino_t and ino64_t. */
85# define __INO_T_MATCHES_INO64_T 1
86
87/* And for __rlim_t and __rlim64_t. */
88# define __RLIM_T_MATCHES_RLIM64_T 1
89
90/* And for fsblkcnt_t, fsblkcnt64_t, fsfilcnt_t and fsfilcnt64_t. */
91# define __STATFS_MATCHES_STATFS64 1
92
93/* And for getitimer, setitimer and rusage */
94# define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 (__WORDSIZE == 64)
95#else
96# define __RLIM_T_MATCHES_RLIM64_T 0
97
98# define __STATFS_MATCHES_STATFS64 0
99
100# define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 0
101#endif
102
103/* Number of descriptors that can fit in an `fd_set'. */
104#define __FD_SETSIZE 1024
105
106
107#endif /* bits/typesizes.h */
\ No newline at end of file
lib/libc/include/riscv32-linux-gnuilp32/bits/wordsize.h created+30
......@@ -0,0 +1,30 @@
1/* Determine the wordsize from the preprocessor defines. RISC-V version.
2 Copyright (C) 2002-2024 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 You should have received a copy of 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-gnuilp32/fpu_control.h created+74
......@@ -0,0 +1,74 @@
1/* FPU control word bits. RISC-V version.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 You should have received a copy of the 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
28typedef unsigned int fpu_control_t;
29# define _FPU_GETCW(cw) (cw) = 0
30# define _FPU_SETCW(cw) do { } while (0)
31extern 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. */
40typedef 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. */
47extern 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-gnuilp32/gnu/lib-names-ilp32.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-ilp32.h> directly; include <gnu/lib-names.h> instead."
4#endif
5
6#define LD_LINUX_RISCV32_ILP32_SO "ld-linux-riscv32-ilp32.so.1"
7#define LD_SO "ld-linux-riscv32-ilp32.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-gnuilp32/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/riscv32-linux-gnuilp32/gnu/stubs-ilp32.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
\ No newline at end of file
lib/libc/include/riscv32-linux-gnuilp32/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/riscv32-linux-gnuilp32/ieee754.h created+170
......@@ -0,0 +1,170 @@
1/* Copyright (C) 1992-2024 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
27union 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
67union 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
114union 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-gnuilp32/sys/asm.h created+66
......@@ -0,0 +1,66 @@
1/* Miscellaneous macros.
2 Copyright (C) 2000-2024 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 You should have received a copy of the 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; \
54symbol: \
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-gnuilp32/sys/cachectl.h created+32
......@@ -0,0 +1,32 @@
1/* RISC-V instruction cache flushing interface
2 Copyright (C) 2017-2024 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
27extern 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-gnuilp32/sys/ucontext.h created+110
......@@ -0,0 +1,110 @@
1/* struct ucontext definition, RISC-V version.
2 Copyright (C) 1997-2024 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 You should have received a copy of 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
29typedef 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
44typedef unsigned long int greg_t;
45
46/* Container for all general registers. */
47typedef __riscv_mc_gp_state gregset_t;
48
49/* Container for floating-point state. */
50typedef union __riscv_mc_fp_state fpregset_t;
51#endif
52
53struct __riscv_mc_f_ext_state
54 {
55 unsigned int __f[32];
56 unsigned int __fcsr;
57 };
58
59struct __riscv_mc_d_ext_state
60 {
61 unsigned long long int __f[32];
62 unsigned int __fcsr;
63 };
64
65struct __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
74union __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
81typedef struct mcontext_t
82 {
83 __riscv_mc_gp_state __gregs;
84 union __riscv_mc_fp_state __fpregs;
85 } mcontext_t;
86
87/* Userlevel context. */
88typedef 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-gnuilp32/sys/user.h created+23
......@@ -0,0 +1,23 @@
1/* Copyright (C) 2001-2024 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/environments.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2020-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2020-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/riscv64-linux-gnu/bits/fcntl.h+1-1
......@@ -1,5 +1,5 @@
11/* O_*, F_*, FD_* bit values for Linux / RISC-V.
2 Copyright (C) 2011-2023 Free Software Foundation, Inc.
2 Copyright (C) 2011-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
lib/libc/include/riscv64-linux-gnu/bits/fenv.h+1-1
......@@ -1,5 +1,5 @@
11/* Floating point environment, RISC-V version.
2 Copyright (C) 1998-2023 Free Software Foundation, Inc.
2 Copyright (C) 1998-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/riscv64-linux-gnu/bits/floatn.h+1-1
......@@ -1,5 +1,5 @@
11/* Macros to control TS 18661-3 glibc features on ldbl-128 platforms.
2 Copyright (C) 2017-2023 Free Software Foundation, Inc.
2 Copyright (C) 2017-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/riscv64-linux-gnu/bits/link.h+1-1
......@@ -1,5 +1,5 @@
11/* Machine-specific declarations for dynamic linker interface. RISC-V version.
2 Copyright (C) 2005-2023 Free Software Foundation, Inc.
2 Copyright (C) 2005-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/riscv64-linux-gnu/bits/long-double.h+1-1
......@@ -1,5 +1,5 @@
11/* Properties of long double type. ldbl-128 version.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/riscv64-linux-gnu/bits/procfs.h+1-1
......@@ -1,5 +1,5 @@
11/* Types for registers for sys/procfs.h. RISC-V version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/riscv64-linux-gnu/bits/pthreadtypes-arch.h+1-1
......@@ -1,5 +1,5 @@
11/* Machine-specific pthread type layouts. RISC-V version.
2 Copyright (C) 2011-2023 Free Software Foundation, Inc.
2 Copyright (C) 2011-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/riscv64-linux-gnu/bits/rseq.h+1-1
......@@ -1,5 +1,5 @@
11/* Restartable Sequences architecture header. Stub version.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33
44 The GNU C Library is free software; you can redistribute it and/or
55 modify it under the terms of the GNU Lesser General Public
lib/libc/include/riscv64-linux-gnu/bits/setjmp.h+1-1
......@@ -1,5 +1,5 @@
11/* Define the machine-dependent type `jmp_buf'. RISC-V version.
2 Copyright (C) 2011-2023 Free Software Foundation, Inc.
2 Copyright (C) 2011-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/riscv64-linux-gnu/bits/sigcontext.h+1-1
......@@ -1,5 +1,5 @@
11/* Machine-dependent signal context structure for Linux. RISC-V version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc. This file is part of the GNU C Library.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc. This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
55 modify it under the terms of the GNU Lesser General Public
lib/libc/include/riscv64-linux-gnu/bits/struct_rwlock.h+1-1
......@@ -1,5 +1,5 @@
11/* RISC-V internal rwlock struct definitions.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
lib/libc/include/riscv64-linux-gnu/bits/struct_stat.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition for struct stat.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/riscv64-linux-gnu/bits/time64.h+1-1
......@@ -1,5 +1,5 @@
11/* bits/time64.h -- underlying types for __time64_t. RISC-V version.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/riscv64-linux-gnu/bits/timesize.h+1-1
......@@ -1,5 +1,5 @@
11/* Bit size of the time_t type at glibc build time, general case.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/riscv64-linux-gnu/bits/typesizes.h+1-1
......@@ -1,5 +1,5 @@
11/* bits/typesizes.h -- underlying types for *_t. For the generic Linux ABI.
2 Copyright (C) 2011-2023 Free Software Foundation, Inc.
2 Copyright (C) 2011-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/riscv64-linux-gnu/bits/wordsize.h+1-1
......@@ -1,5 +1,5 @@
11/* Determine the wordsize from the preprocessor defines. RISC-V version.
2 Copyright (C) 2002-2023 Free Software Foundation, Inc.
2 Copyright (C) 2002-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/riscv64-linux-gnu/fpu_control.h+1-1
......@@ -1,5 +1,5 @@
11/* FPU control word bits. RISC-V version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/riscv64-linux-gnu/gnu/lib-names-lp64.h-1
......@@ -7,7 +7,6 @@
77#define LD_SO "ld-linux-riscv64-lp64.so.1"
88#define LIBANL_SO "libanl.so.1"
99#define LIBBROKENLOCALE_SO "libBrokenLocale.so.1"
10#define LIBCRYPT_SO "libcrypt.so.1"
1110#define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0"
1211#define LIBC_SO "libc.so.6"
1312#define LIBDL_SO "libdl.so.2"
lib/libc/include/riscv64-linux-gnu/ieee754.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1992-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1992-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/riscv64-linux-gnu/sys/asm.h+1-1
......@@ -1,5 +1,5 @@
11/* Miscellaneous macros.
2 Copyright (C) 2000-2023 Free Software Foundation, Inc.
2 Copyright (C) 2000-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/riscv64-linux-gnu/sys/cachectl.h+1-1
......@@ -1,5 +1,5 @@
11/* RISC-V instruction cache flushing interface
2 Copyright (C) 2017-2023 Free Software Foundation, Inc.
2 Copyright (C) 2017-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
lib/libc/include/riscv64-linux-gnu/sys/ucontext.h+1-1
......@@ -1,5 +1,5 @@
11/* struct ucontext definition, RISC-V version.
2 Copyright (C) 1997-2023 Free Software Foundation, Inc.
2 Copyright (C) 1997-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/riscv64-linux-gnu/sys/user.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2001-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2001-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/s390x-linux-gnu/bits/elfclass.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2001-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2001-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/s390x-linux-gnu/bits/environments.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1999-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1999-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/s390x-linux-gnu/bits/fcntl.h+1-1
......@@ -1,5 +1,5 @@
11/* O_*, F_*, FD_* bit values for Linux.
2 Copyright (C) 2000-2023 Free Software Foundation, Inc.
2 Copyright (C) 2000-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/s390x-linux-gnu/bits/fenv.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2000-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2000-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/s390x-linux-gnu/bits/floatn.h+1-1
......@@ -1,5 +1,5 @@
11/* Macros to control TS 18661-3 glibc features on ldbl-128 platforms.
2 Copyright (C) 2017-2023 Free Software Foundation, Inc.
2 Copyright (C) 2017-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/s390x-linux-gnu/bits/hwcap.h+1-1
......@@ -1,5 +1,5 @@
11/* Defines for bits in AT_HWCAP.
2 Copyright (C) 2012-2023 Free Software Foundation, Inc.
2 Copyright (C) 2012-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/s390x-linux-gnu/bits/link.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2005-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2005-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/s390x-linux-gnu/bits/long-double.h+1-1
......@@ -1,5 +1,5 @@
11/* Properties of long double type. ldbl-opt version.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/s390x-linux-gnu/bits/procfs-extra.h+1-1
......@@ -1,5 +1,5 @@
11/* Extra sys/procfs.h definitions. S/390 version.
2 Copyright (C) 2000-2023 Free Software Foundation, Inc.
2 Copyright (C) 2000-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/s390x-linux-gnu/bits/procfs-id.h+1-1
......@@ -1,5 +1,5 @@
11/* Types of pr_uid and pr_gid in struct elf_prpsinfo. S/390 version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
lib/libc/include/s390x-linux-gnu/bits/procfs.h+1-1
......@@ -1,5 +1,5 @@
11/* Types for registers for sys/procfs.h. S/390 version.
2 Copyright (C) 2000-2023 Free Software Foundation, Inc.
2 Copyright (C) 2000-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/s390x-linux-gnu/bits/rseq.h+1-1
......@@ -1,5 +1,5 @@
11/* Restartable Sequences Linux s390 architecture header.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33
44 The GNU C Library is free software; you can redistribute it and/or
55 modify it under the terms of the GNU Lesser General Public
lib/libc/include/s390x-linux-gnu/bits/setjmp.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2000-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2000-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/s390x-linux-gnu/bits/sigaction.h+1-1
......@@ -1,5 +1,5 @@
11/* Definitions for 31 & 64 bit S/390 sigaction.
2 Copyright (C) 2001-2023 Free Software Foundation, Inc.
2 Copyright (C) 2001-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/s390x-linux-gnu/bits/statfs.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/s390x-linux-gnu/bits/struct_mutex.h+1-1
......@@ -1,5 +1,5 @@
11/* S390 internal mutex struct definitions.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/s390x-linux-gnu/bits/struct_rwlock.h+1-1
......@@ -1,5 +1,5 @@
11/* S390 internal rwlock struct definitions.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
lib/libc/include/s390x-linux-gnu/bits/struct_stat.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition for struct stat.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/s390x-linux-gnu/bits/timesize.h+1-1
......@@ -1,5 +1,5 @@
11/* Bit size of the time_t type at glibc build time, Linux/s390.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/s390x-linux-gnu/bits/typesizes.h+1-1
......@@ -1,5 +1,5 @@
11/* bits/typesizes.h -- underlying types for *_t. Linux/s390 version.
2 Copyright (C) 2003-2023 Free Software Foundation, Inc.
2 Copyright (C) 2003-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/s390x-linux-gnu/bits/utmp.h+1-1
......@@ -1,5 +1,5 @@
11/* The `struct utmp' type, describing entries in the utmp file. GNU version.
2 Copyright (C) 1993-2023 Free Software Foundation, Inc.
2 Copyright (C) 1993-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/s390x-linux-gnu/bits/utmpx.h+1-1
......@@ -1,5 +1,5 @@
11/* Structures and definitions for the user accounting database. GNU version.
2 Copyright (C) 1997-2023 Free Software Foundation, Inc.
2 Copyright (C) 1997-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/s390x-linux-gnu/fpu_control.h+1-1
......@@ -1,5 +1,5 @@
11/* FPU control word definitions. Stub version.
2 Copyright (C) 2000-2023 Free Software Foundation, Inc.
2 Copyright (C) 2000-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/s390x-linux-gnu/gnu/lib-names-64.h-1
......@@ -7,7 +7,6 @@
77#define LD_SO "ld64.so.1"
88#define LIBANL_SO "libanl.so.1"
99#define LIBBROKENLOCALE_SO "libBrokenLocale.so.1"
10#define LIBCRYPT_SO "libcrypt.so.1"
1110#define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0"
1211#define LIBC_SO "libc.so.6"
1312#define LIBDL_SO "libdl.so.2"
lib/libc/include/s390x-linux-gnu/ieee754.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1992-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1992-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/s390x-linux-gnu/sys/elf.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2000-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2000-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/s390x-linux-gnu/sys/ptrace.h+13-1
......@@ -1,5 +1,5 @@
11/* `ptrace' debugger support interface. Linux/S390 version.
2 Copyright (C) 2000-2023 Free Software Foundation, Inc.
2 Copyright (C) 2000-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
......@@ -86,6 +86,8 @@ __BEGIN_DECLS
8686# undef PTRACE_SYSCALL_INFO_EXIT
8787# undef PTRACE_SYSCALL_INFO_SECCOMP
8888# undef PTRACE_GET_RSEQ_CONFIGURATION
89# undef PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG
90# undef PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG
8991#endif
9092/* Type of the REQUEST argument to `ptrace.' */
9193enum __ptrace_request
......@@ -221,6 +223,16 @@ enum __ptrace_request
221223 PTRACE_GET_RSEQ_CONFIGURATION = 0x420f,
222224#define PTRACE_GET_RSEQ_CONFIGURATION PTRACE_GET_RSEQ_CONFIGURATION
223225
226 /* Set configuration for syscall user dispatch. */
227 PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG = 0x4210,
228#define PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG \
229 PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG
230
231 /* Get configuration for syscall user dispatch. */
232 PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG = 0x4211,
233#define PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG \
234 PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG
235
224236 PTRACE_PEEKUSR_AREA = 0x5000,
225237#define PTRACE_PEEKUSR_AREA PTRACE_PEEKUSR_AREA
226238
lib/libc/include/s390x-linux-gnu/sys/ucontext.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2000-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2000-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/s390x-linux-gnu/sys/user.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2000-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2000-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/sparc64-linux-gnu/bits/environments.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1999-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1999-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/sparc64-linux-gnu/bits/epoll.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2002-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2002-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/sparc64-linux-gnu/bits/errno.h+1-1
......@@ -1,5 +1,5 @@
11/* Error constants. Linux/Sparc specific version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/sparc64-linux-gnu/bits/eventfd.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2007-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2007-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/sparc64-linux-gnu/bits/fcntl.h+1-1
......@@ -1,5 +1,5 @@
11/* O_*, F_*, FD_* bit values for Linux/SPARC.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/sparc64-linux-gnu/bits/fenv.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/sparc64-linux-gnu/bits/floatn.h+1-1
......@@ -1,5 +1,5 @@
11/* Macros to control TS 18661-3 glibc features on ldbl-128 platforms.
2 Copyright (C) 2017-2023 Free Software Foundation, Inc.
2 Copyright (C) 2017-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/sparc64-linux-gnu/bits/hwcap.h+1-1
......@@ -1,5 +1,5 @@
11/* Defines for bits in AT_HWCAP.
2 Copyright (C) 2011-2023 Free Software Foundation, Inc.
2 Copyright (C) 2011-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/sparc64-linux-gnu/bits/inotify.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2005-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2005-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/sparc64-linux-gnu/bits/ioctls.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1996-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1996-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/sparc64-linux-gnu/bits/ipc-perm.h+1-1
......@@ -1,5 +1,5 @@
11/* struct ipc_perm definition. Linux/sparc version.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/sparc64-linux-gnu/bits/link.h+1-1
......@@ -1,5 +1,5 @@
11/* Machine-specific audit interfaces for dynamic linker. SPARC version.
2 Copyright (C) 2005-2023 Free Software Foundation, Inc.
2 Copyright (C) 2005-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/sparc64-linux-gnu/bits/long-double.h+1-1
......@@ -1,5 +1,5 @@
11/* Properties of long double type. SPARC version.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/sparc64-linux-gnu/bits/mman.h+1-1
......@@ -1,5 +1,5 @@
11/* Definitions for POSIX memory map interface. Linux/SPARC version.
2 Copyright (C) 1997-2023 Free Software Foundation, Inc.
2 Copyright (C) 1997-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/sparc64-linux-gnu/bits/poll.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/sparc64-linux-gnu/bits/procfs-extra.h+1-1
......@@ -1,5 +1,5 @@
11/* Extra sys/procfs.h definitions. SPARC version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/sparc64-linux-gnu/bits/procfs-id.h+1-1
......@@ -1,5 +1,5 @@
11/* Types of pr_uid and pr_gid in struct elf_prpsinfo. SPARC version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
lib/libc/include/sparc64-linux-gnu/bits/procfs.h+1-1
......@@ -1,5 +1,5 @@
11/* Types for registers for sys/procfs.h. SPARC version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/sparc64-linux-gnu/bits/pthread_stack_min.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition of PTHREAD_STACK_MIN. Linux/SPARC version.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/sparc64-linux-gnu/bits/resource.h+1-1
......@@ -1,5 +1,5 @@
11/* Bit values & structures for resource limits. Linux/SPARC version.
2 Copyright (C) 1994-2023 Free Software Foundation, Inc.
2 Copyright (C) 1994-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/sparc64-linux-gnu/bits/rseq.h+1-1
......@@ -1,5 +1,5 @@
11/* Restartable Sequences architecture header. Stub version.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33
44 The GNU C Library is free software; you can redistribute it and/or
55 modify it under the terms of the GNU Lesser General Public
lib/libc/include/sparc64-linux-gnu/bits/setjmp.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/sparc64-linux-gnu/bits/shmlba.h+1-1
......@@ -1,5 +1,5 @@
11/* Define SHMLBA. SPARC version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/sparc64-linux-gnu/bits/sigaction.h+1-1
......@@ -1,5 +1,5 @@
11/* The proper definitions for Linux/SPARC sigaction.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/sparc64-linux-gnu/bits/sigcontext.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2000-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2000-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/sparc64-linux-gnu/bits/signalfd.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2007-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2007-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/sparc64-linux-gnu/bits/signum-arch.h+1-1
......@@ -1,5 +1,5 @@
11/* Signal number definitions. Linux/SPARC version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/sparc64-linux-gnu/bits/sigstack.h+1-1
......@@ -1,5 +1,5 @@
11/* sigstack, sigaltstack definitions.
2 Copyright (C) 1998-2023 Free Software Foundation, Inc.
2 Copyright (C) 1998-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/sparc64-linux-gnu/bits/socket-constants.h+1-1
......@@ -1,5 +1,5 @@
11/* Socket constants which vary among Linux architectures. Version for SPARC.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/sparc64-linux-gnu/bits/socket_type.h+1-1
......@@ -1,5 +1,5 @@
11/* Define enum __socket_type for Linux/SPARC.
2 Copyright (C) 1991-2023 Free Software Foundation, Inc.
2 Copyright (C) 1991-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/sparc64-linux-gnu/bits/struct_rwlock.h+1-1
......@@ -1,5 +1,5 @@
11/* SPARC internal rwlock struct definitions.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
lib/libc/include/sparc64-linux-gnu/bits/struct_stat.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition for struct stat.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/sparc64-linux-gnu/bits/termios-baud.h+1-1
......@@ -1,5 +1,5 @@
11/* termios baud rate selection definitions. Linux/sparc version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/sparc64-linux-gnu/bits/termios-c_cc.h+1-1
......@@ -1,5 +1,5 @@
11/* termios c_cc symbolic constant definitions. Linux/sparc version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/sparc64-linux-gnu/bits/termios-c_oflag.h+1-1
......@@ -1,5 +1,5 @@
11/* termios output mode definitions. Linux/sparc version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/sparc64-linux-gnu/bits/termios-struct.h+1-1
......@@ -1,5 +1,5 @@
11/* struct termios definition. Linux/sparc version.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/sparc64-linux-gnu/bits/timerfd.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2008-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2008-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/sparc64-linux-gnu/bits/timesize.h+1-1
......@@ -1,5 +1,5 @@
11/* Bit size of the time_t type at glibc build time, Linux/sparc.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/sparc64-linux-gnu/bits/types/struct_msqid_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* Linux/SPARC implementation of the SysV message struct msqid_ds.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/sparc64-linux-gnu/bits/types/struct_semid_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* Sparc implementation of the semaphore struct semid_ds
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/sparc64-linux-gnu/bits/types/struct_shmid_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* Linux/SPARC implementation of the shared memory struct shmid_ds.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/sparc64-linux-gnu/bits/typesizes.h+1-1
......@@ -1,5 +1,5 @@
11/* bits/typesizes.h -- underlying types for *_t. Linux/SPARC version.
2 Copyright (C) 2002-2023 Free Software Foundation, Inc.
2 Copyright (C) 2002-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/sparc64-linux-gnu/fpu_control.h+7-2
......@@ -1,5 +1,5 @@
11/* FPU control word bits. SPARC version.
2 Copyright (C) 1997-2023 Free Software Foundation, Inc.
2 Copyright (C) 1997-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
......@@ -61,7 +61,12 @@ typedef unsigned long int fpu_control_t;
6161# define _FPU_GETCW(cw) __asm__ __volatile__ ("stx %%fsr,%0" : "=m" (*&cw))
6262# define _FPU_SETCW(cw) __asm__ __volatile__ ("ldx %0,%%fsr" : : "m" (*&cw))
6363#else
64# define _FPU_GETCW(cw) __asm__ __volatile__ ("st %%fsr,%0" : "=m" (*&cw))
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
6570# define _FPU_SETCW(cw) __asm__ __volatile__ ("ld %0,%%fsr" : : "m" (*&cw))
6671#endif
6772
lib/libc/include/sparc64-linux-gnu/gnu/lib-names-64.h-1
......@@ -7,7 +7,6 @@
77#define LD_SO "ld-linux.so.2"
88#define LIBANL_SO "libanl.so.1"
99#define LIBBROKENLOCALE_SO "libBrokenLocale.so.1"
10#define LIBCRYPT_SO "libcrypt.so.1"
1110#define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0"
1211#define LIBC_SO "libc.so.6"
1312#define LIBDL_SO "libdl.so.2"
lib/libc/include/sparc64-linux-gnu/ieee754.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1992-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1992-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/sparc64-linux-gnu/sys/ptrace.h+12-2
......@@ -1,5 +1,5 @@
11/* `ptrace' debugger support interface. Linux/SPARC version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
......@@ -225,8 +225,18 @@ enum __ptrace_request
225225#define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO
226226
227227 /* Get rseq configuration information. */
228 PTRACE_GET_RSEQ_CONFIGURATION = 0x420f
228 PTRACE_GET_RSEQ_CONFIGURATION = 0x420f,
229229#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
230240};
231241
232242
lib/libc/include/sparc64-linux-gnu/sys/ucontext.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1998-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1998-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/sparc64-linux-gnu/sys/user.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2003-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2003-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86-linux-gnu/bits/dl_find_object.h+1-1
......@@ -1,5 +1,5 @@
11/* x86 definitions for finding objects.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86-linux-gnu/bits/environments.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1999-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1999-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86-linux-gnu/bits/epoll.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2002-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2002-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86-linux-gnu/bits/fcntl.h+1-1
......@@ -1,5 +1,5 @@
11/* O_*, F_*, FD_* bit values for Linux/x86.
2 Copyright (C) 2001-2023 Free Software Foundation, Inc.
2 Copyright (C) 2001-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86-linux-gnu/bits/fenv.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86-linux-gnu/bits/floatn.h+1-1
......@@ -1,5 +1,5 @@
11/* Macros to control TS 18661-3 glibc features on x86.
2 Copyright (C) 2017-2023 Free Software Foundation, Inc.
2 Copyright (C) 2017-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86-linux-gnu/bits/flt-eval-method.h+1-1
......@@ -1,5 +1,5 @@
11/* Define __GLIBC_FLT_EVAL_METHOD. x86 version.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86-linux-gnu/bits/fp-logb.h+1-1
......@@ -1,5 +1,5 @@
11/* Define __FP_LOGB0_IS_MIN and __FP_LOGBNAN_IS_MIN. x86 version.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86-linux-gnu/bits/indirect-return.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition of __INDIRECT_RETURN. x86 version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86-linux-gnu/bits/ipctypes.h+1-1
......@@ -1,5 +1,5 @@
11/* bits/ipctypes.h -- Define some types used by SysV IPC/MSG/SHM.
2 Copyright (C) 2012-2023 Free Software Foundation, Inc.
2 Copyright (C) 2012-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86-linux-gnu/bits/iscanonical.h+1-1
......@@ -1,5 +1,5 @@
11/* Define iscanonical macro. ldbl-96 version.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86-linux-gnu/bits/link.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2004-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2004-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86-linux-gnu/bits/long-double.h+1-1
......@@ -1,5 +1,5 @@
11/* Properties of long double type. ldbl-96 version.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86-linux-gnu/bits/math-vector.h+1-1
......@@ -1,5 +1,5 @@
11/* Platform-specific SIMD declarations of math functions.
2 Copyright (C) 2014-2023 Free Software Foundation, Inc.
2 Copyright (C) 2014-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86-linux-gnu/bits/mman.h+7-1
......@@ -1,5 +1,5 @@
11/* Definitions for POSIX memory map interface. Linux/x86_64 version.
2 Copyright (C) 2001-2023 Free Software Foundation, Inc.
2 Copyright (C) 2001-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
......@@ -25,6 +25,12 @@
2525
2626/* Other flags. */
2727#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
2834
2935#include <bits/mman-map-flags-generic.h>
3036
lib/libc/include/x86-linux-gnu/bits/procfs-id.h+1-1
......@@ -1,5 +1,5 @@
11/* Types of pr_uid and pr_gid in struct elf_prpsinfo. x86 version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
lib/libc/include/x86-linux-gnu/bits/procfs.h+1-1
......@@ -1,5 +1,5 @@
11/* Types for registers for sys/procfs.h. x86 version.
2 Copyright (C) 2001-2023 Free Software Foundation, Inc.
2 Copyright (C) 2001-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86-linux-gnu/bits/pthreadtypes-arch.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2002-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2002-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86-linux-gnu/bits/rseq.h+1-1
......@@ -1,5 +1,5 @@
11/* Restartable Sequences Linux x86 architecture header.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33
44 The GNU C Library is free software; you can redistribute it and/or
55 modify it under the terms of the GNU Lesser General Public
lib/libc/include/x86-linux-gnu/bits/setjmp.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2001-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2001-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86-linux-gnu/bits/sigcontext.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2002-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2002-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86-linux-gnu/bits/struct_mutex.h+1-1
......@@ -1,5 +1,5 @@
11/* x86 internal mutex struct definitions.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86-linux-gnu/bits/struct_rwlock.h+1-1
......@@ -1,5 +1,5 @@
11/* x86 internal rwlock struct definitions.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
lib/libc/include/x86-linux-gnu/bits/struct_stat.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition for struct stat.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86-linux-gnu/bits/timesize.h+1-1
......@@ -1,5 +1,5 @@
11/* Bit size of the time_t type at glibc build time, x86-64 and x32 case.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86-linux-gnu/bits/types/struct_semid_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* x86 implementation of the semaphore struct semid_ds.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86-linux-gnu/bits/typesizes.h+1-1
......@@ -1,5 +1,5 @@
11/* bits/typesizes.h -- underlying types for *_t. Linux/x86-64 version.
2 Copyright (C) 2012-2023 Free Software Foundation, Inc.
2 Copyright (C) 2012-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86-linux-gnu/finclude/math-vector-fortran.h+1-1
......@@ -1,5 +1,5 @@
11! Platform-specific declarations of SIMD math functions for Fortran. -*- f90 -*-
2! Copyright (C) 2019-2023 Free Software Foundation, Inc.
2! Copyright (C) 2019-2024 Free Software Foundation, Inc.
33! This file is part of the GNU C Library.
44!
55! The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86-linux-gnu/fpu_control.h+1-1
......@@ -1,5 +1,5 @@
11/* FPU control word bits. x86 version.
2 Copyright (C) 1993-2023 Free Software Foundation, Inc.
2 Copyright (C) 1993-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86-linux-gnu/gnu/lib-names-32.h-1
......@@ -7,7 +7,6 @@
77#define LD_SO "ld-linux.so.2"
88#define LIBANL_SO "libanl.so.1"
99#define LIBBROKENLOCALE_SO "libBrokenLocale.so.1"
10#define LIBCRYPT_SO "libcrypt.so.1"
1110#define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0"
1211#define LIBC_SO "libc.so.6"
1312#define LIBDL_SO "libdl.so.2"
lib/libc/include/x86-linux-gnu/sys/elf.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1998-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1998-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86-linux-gnu/sys/ptrace.h+12-2
......@@ -1,5 +1,5 @@
11/* `ptrace' debugger support interface. Linux/x86 version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
......@@ -194,8 +194,18 @@ enum __ptrace_request
194194#define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO
195195
196196 /* Get rseq configuration information. */
197 PTRACE_GET_RSEQ_CONFIGURATION = 0x420f
197 PTRACE_GET_RSEQ_CONFIGURATION = 0x420f,
198198#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
199209};
200210
201211
lib/libc/include/x86-linux-gnu/sys/ucontext.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2001-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2001-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86-linux-gnu/sys/user.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2001-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2001-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnu/bits/dl_find_object.h+1-1
......@@ -1,5 +1,5 @@
11/* x86 definitions for finding objects.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnu/bits/environments.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1999-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1999-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnu/bits/epoll.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2002-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2002-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnu/bits/fcntl.h+1-1
......@@ -1,5 +1,5 @@
11/* O_*, F_*, FD_* bit values for Linux/x86.
2 Copyright (C) 2001-2023 Free Software Foundation, Inc.
2 Copyright (C) 2001-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnu/bits/fenv.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnu/bits/floatn.h+1-1
......@@ -1,5 +1,5 @@
11/* Macros to control TS 18661-3 glibc features on x86.
2 Copyright (C) 2017-2023 Free Software Foundation, Inc.
2 Copyright (C) 2017-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnu/bits/flt-eval-method.h+1-1
......@@ -1,5 +1,5 @@
11/* Define __GLIBC_FLT_EVAL_METHOD. x86 version.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnu/bits/fp-logb.h+1-1
......@@ -1,5 +1,5 @@
11/* Define __FP_LOGB0_IS_MIN and __FP_LOGBNAN_IS_MIN. x86 version.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnu/bits/indirect-return.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition of __INDIRECT_RETURN. x86 version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnu/bits/ipctypes.h+1-1
......@@ -1,5 +1,5 @@
11/* bits/ipctypes.h -- Define some types used by SysV IPC/MSG/SHM.
2 Copyright (C) 2012-2023 Free Software Foundation, Inc.
2 Copyright (C) 2012-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnu/bits/iscanonical.h+1-1
......@@ -1,5 +1,5 @@
11/* Define iscanonical macro. ldbl-96 version.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnu/bits/link.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2004-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2004-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnu/bits/long-double.h+1-1
......@@ -1,5 +1,5 @@
11/* Properties of long double type. ldbl-96 version.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnu/bits/math-vector.h+1-1
......@@ -1,5 +1,5 @@
11/* Platform-specific SIMD declarations of math functions.
2 Copyright (C) 2014-2023 Free Software Foundation, Inc.
2 Copyright (C) 2014-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnu/bits/mman.h+7-1
......@@ -1,5 +1,5 @@
11/* Definitions for POSIX memory map interface. Linux/x86_64 version.
2 Copyright (C) 2001-2023 Free Software Foundation, Inc.
2 Copyright (C) 2001-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
......@@ -25,6 +25,12 @@
2525
2626/* Other flags. */
2727#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
2834
2935#include <bits/mman-map-flags-generic.h>
3036
lib/libc/include/x86_64-linux-gnu/bits/procfs-id.h+1-1
......@@ -1,5 +1,5 @@
11/* Types of pr_uid and pr_gid in struct elf_prpsinfo. x86 version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
lib/libc/include/x86_64-linux-gnu/bits/procfs.h+1-1
......@@ -1,5 +1,5 @@
11/* Types for registers for sys/procfs.h. x86 version.
2 Copyright (C) 2001-2023 Free Software Foundation, Inc.
2 Copyright (C) 2001-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2002-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2002-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnu/bits/rseq.h+1-1
......@@ -1,5 +1,5 @@
11/* Restartable Sequences Linux x86 architecture header.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33
44 The GNU C Library is free software; you can redistribute it and/or
55 modify it under the terms of the GNU Lesser General Public
lib/libc/include/x86_64-linux-gnu/bits/setjmp.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2001-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2001-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnu/bits/sigcontext.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2002-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2002-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnu/bits/struct_mutex.h+1-1
......@@ -1,5 +1,5 @@
11/* x86 internal mutex struct definitions.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnu/bits/struct_rwlock.h+1-1
......@@ -1,5 +1,5 @@
11/* x86 internal rwlock struct definitions.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
lib/libc/include/x86_64-linux-gnu/bits/struct_stat.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition for struct stat.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnu/bits/timesize.h+1-1
......@@ -1,5 +1,5 @@
11/* Bit size of the time_t type at glibc build time, x86-64 and x32 case.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnu/bits/types/struct_semid_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* x86 implementation of the semaphore struct semid_ds.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnu/bits/typesizes.h+1-1
......@@ -1,5 +1,5 @@
11/* bits/typesizes.h -- underlying types for *_t. Linux/x86-64 version.
2 Copyright (C) 2012-2023 Free Software Foundation, Inc.
2 Copyright (C) 2012-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnu/finclude/math-vector-fortran.h+1-1
......@@ -1,5 +1,5 @@
11! Platform-specific declarations of SIMD math functions for Fortran. -*- f90 -*-
2! Copyright (C) 2019-2023 Free Software Foundation, Inc.
2! Copyright (C) 2019-2024 Free Software Foundation, Inc.
33! This file is part of the GNU C Library.
44!
55! The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnu/fpu_control.h+1-1
......@@ -1,5 +1,5 @@
11/* FPU control word bits. x86 version.
2 Copyright (C) 1993-2023 Free Software Foundation, Inc.
2 Copyright (C) 1993-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnu/gnu/lib-names-64.h-1
......@@ -7,7 +7,6 @@
77#define LD_SO "ld-linux-x86-64.so.2"
88#define LIBANL_SO "libanl.so.1"
99#define LIBBROKENLOCALE_SO "libBrokenLocale.so.1"
10#define LIBCRYPT_SO "libcrypt.so.1"
1110#define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0"
1211#define LIBC_SO "libc.so.6"
1312#define LIBDL_SO "libdl.so.2"
lib/libc/include/x86_64-linux-gnu/sys/elf.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1998-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1998-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnu/sys/ptrace.h+12-2
......@@ -1,5 +1,5 @@
11/* `ptrace' debugger support interface. Linux/x86 version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
......@@ -194,8 +194,18 @@ enum __ptrace_request
194194#define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO
195195
196196 /* Get rseq configuration information. */
197 PTRACE_GET_RSEQ_CONFIGURATION = 0x420f
197 PTRACE_GET_RSEQ_CONFIGURATION = 0x420f,
198198#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
199209};
200210
201211
lib/libc/include/x86_64-linux-gnu/sys/ucontext.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2001-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2001-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnu/sys/user.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2001-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2001-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnux32/bits/dl_find_object.h+1-1
......@@ -1,5 +1,5 @@
11/* x86 definitions for finding objects.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnux32/bits/environments.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1999-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1999-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnux32/bits/epoll.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2002-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2002-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnux32/bits/fcntl.h+1-1
......@@ -1,5 +1,5 @@
11/* O_*, F_*, FD_* bit values for Linux/x86.
2 Copyright (C) 2001-2023 Free Software Foundation, Inc.
2 Copyright (C) 2001-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnux32/bits/fenv.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1997-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1997-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnux32/bits/floatn.h+1-1
......@@ -1,5 +1,5 @@
11/* Macros to control TS 18661-3 glibc features on x86.
2 Copyright (C) 2017-2023 Free Software Foundation, Inc.
2 Copyright (C) 2017-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnux32/bits/flt-eval-method.h+1-1
......@@ -1,5 +1,5 @@
11/* Define __GLIBC_FLT_EVAL_METHOD. x86 version.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnux32/bits/fp-logb.h+1-1
......@@ -1,5 +1,5 @@
11/* Define __FP_LOGB0_IS_MIN and __FP_LOGBNAN_IS_MIN. x86 version.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnux32/bits/indirect-return.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition of __INDIRECT_RETURN. x86 version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnux32/bits/ipctypes.h+1-1
......@@ -1,5 +1,5 @@
11/* bits/ipctypes.h -- Define some types used by SysV IPC/MSG/SHM.
2 Copyright (C) 2012-2023 Free Software Foundation, Inc.
2 Copyright (C) 2012-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnux32/bits/iscanonical.h+1-1
......@@ -1,5 +1,5 @@
11/* Define iscanonical macro. ldbl-96 version.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnux32/bits/link.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2004-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2004-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnux32/bits/long-double.h+1-1
......@@ -1,5 +1,5 @@
11/* Properties of long double type. ldbl-96 version.
2 Copyright (C) 2016-2023 Free Software Foundation, Inc.
2 Copyright (C) 2016-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnux32/bits/math-vector.h+1-1
......@@ -1,5 +1,5 @@
11/* Platform-specific SIMD declarations of math functions.
2 Copyright (C) 2014-2023 Free Software Foundation, Inc.
2 Copyright (C) 2014-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnux32/bits/mman.h+7-1
......@@ -1,5 +1,5 @@
11/* Definitions for POSIX memory map interface. Linux/x86_64 version.
2 Copyright (C) 2001-2023 Free Software Foundation, Inc.
2 Copyright (C) 2001-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
......@@ -25,6 +25,12 @@
2525
2626/* Other flags. */
2727#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
2834
2935#include <bits/mman-map-flags-generic.h>
3036
lib/libc/include/x86_64-linux-gnux32/bits/procfs-id.h+1-1
......@@ -1,5 +1,5 @@
11/* Types of pr_uid and pr_gid in struct elf_prpsinfo. x86 version.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
lib/libc/include/x86_64-linux-gnux32/bits/procfs.h+1-1
......@@ -1,5 +1,5 @@
11/* Types for registers for sys/procfs.h. x86 version.
2 Copyright (C) 2001-2023 Free Software Foundation, Inc.
2 Copyright (C) 2001-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnux32/bits/pthreadtypes-arch.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2002-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2002-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnux32/bits/rseq.h+1-1
......@@ -1,5 +1,5 @@
11/* Restartable Sequences Linux x86 architecture header.
2 Copyright (C) 2021-2023 Free Software Foundation, Inc.
2 Copyright (C) 2021-2024 Free Software Foundation, Inc.
33
44 The GNU C Library is free software; you can redistribute it and/or
55 modify it under the terms of the GNU Lesser General Public
lib/libc/include/x86_64-linux-gnux32/bits/setjmp.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2001-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2001-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnux32/bits/sigcontext.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2002-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2002-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnux32/bits/struct_mutex.h+1-1
......@@ -1,5 +1,5 @@
11/* x86 internal mutex struct definitions.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnux32/bits/struct_rwlock.h+1-1
......@@ -1,5 +1,5 @@
11/* x86 internal rwlock struct definitions.
2 Copyright (C) 2019-2023 Free Software Foundation, Inc.
2 Copyright (C) 2019-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
lib/libc/include/x86_64-linux-gnux32/bits/struct_stat.h+1-1
......@@ -1,5 +1,5 @@
11/* Definition for struct stat.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
2 Copyright (C) 2020-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnux32/bits/timesize.h+1-1
......@@ -1,5 +1,5 @@
11/* Bit size of the time_t type at glibc build time, x86-64 and x32 case.
2 Copyright (C) 2018-2023 Free Software Foundation, Inc.
2 Copyright (C) 2018-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnux32/bits/types/struct_semid_ds.h+1-1
......@@ -1,5 +1,5 @@
11/* x86 implementation of the semaphore struct semid_ds.
2 Copyright (C) 1995-2023 Free Software Foundation, Inc.
2 Copyright (C) 1995-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnux32/bits/typesizes.h+1-1
......@@ -1,5 +1,5 @@
11/* bits/typesizes.h -- underlying types for *_t. Linux/x86-64 version.
2 Copyright (C) 2012-2023 Free Software Foundation, Inc.
2 Copyright (C) 2012-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnux32/finclude/math-vector-fortran.h+1-1
......@@ -1,5 +1,5 @@
11! Platform-specific declarations of SIMD math functions for Fortran. -*- f90 -*-
2! Copyright (C) 2019-2023 Free Software Foundation, Inc.
2! Copyright (C) 2019-2024 Free Software Foundation, Inc.
33! This file is part of the GNU C Library.
44!
55! The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnux32/fpu_control.h+1-1
......@@ -1,5 +1,5 @@
11/* FPU control word bits. x86 version.
2 Copyright (C) 1993-2023 Free Software Foundation, Inc.
2 Copyright (C) 1993-2024 Free Software Foundation, Inc.
33 This file is part of the GNU C Library.
44
55 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnux32/gnu/lib-names-x32.h-1
......@@ -7,7 +7,6 @@
77#define LD_SO "ld-linux-x32.so.2"
88#define LIBANL_SO "libanl.so.1"
99#define LIBBROKENLOCALE_SO "libBrokenLocale.so.1"
10#define LIBCRYPT_SO "libcrypt.so.1"
1110#define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0"
1211#define LIBC_SO "libc.so.6"
1312#define LIBDL_SO "libdl.so.2"
lib/libc/include/x86_64-linux-gnux32/sys/elf.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 1998-2023 Free Software Foundation, Inc.
1/* Copyright (C) 1998-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnux32/sys/ptrace.h+12-2
......@@ -1,5 +1,5 @@
11/* `ptrace' debugger support interface. Linux/x86 version.
2 Copyright (C) 1996-2023 Free Software Foundation, Inc.
2 Copyright (C) 1996-2024 Free Software Foundation, Inc.
33
44 This file is part of the GNU C Library.
55
......@@ -194,8 +194,18 @@ enum __ptrace_request
194194#define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO
195195
196196 /* Get rseq configuration information. */
197 PTRACE_GET_RSEQ_CONFIGURATION = 0x420f
197 PTRACE_GET_RSEQ_CONFIGURATION = 0x420f,
198198#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
199209};
200210
201211
lib/libc/include/x86_64-linux-gnux32/sys/ucontext.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2001-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2001-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/libc/include/x86_64-linux-gnux32/sys/user.h+1-1
......@@ -1,4 +1,4 @@
1/* Copyright (C) 2001-2023 Free Software Foundation, Inc.
1/* Copyright (C) 2001-2024 Free Software Foundation, Inc.
22 This file is part of the GNU C Library.
33
44 The GNU C Library is free software; you can redistribute it and/or
lib/std/zig/target.zig+4
......@@ -35,6 +35,8 @@ pub const available_libcs = [_]ArchOsAbi{
3535 .{ .arch = .x86, .os = .linux, .abi = .gnu },
3636 .{ .arch = .x86, .os = .linux, .abi = .musl },
3737 .{ .arch = .x86, .os = .windows, .abi = .gnu },
38 .{ .arch = .loongarch64, .os = .linux, .abi = .gnu, .glibc_min = .{ .major = 2, .minor = 36, .patch = 0 } },
39 .{ .arch = .loongarch64, .os = .linux, .abi = .musl },
3840 .{ .arch = .m68k, .os = .linux, .abi = .gnu },
3941 .{ .arch = .m68k, .os = .linux, .abi = .musl },
4042 .{ .arch = .mips64el, .os = .linux, .abi = .gnuabi64 },
......@@ -56,6 +58,8 @@ pub const available_libcs = [_]ArchOsAbi{
5658 .{ .arch = .powerpc, .os = .linux, .abi = .gnueabi },
5759 .{ .arch = .powerpc, .os = .linux, .abi = .gnueabihf },
5860 .{ .arch = .powerpc, .os = .linux, .abi = .musl },
61 .{ .arch = .riscv32, .os = .linux, .abi = .gnuilp32, .glibc_min = .{ .major = 2, .minor = 27, .patch = 0 } },
62 .{ .arch = .riscv32, .os = .linux, .abi = .musl },
5963 .{ .arch = .riscv64, .os = .linux, .abi = .gnu, .glibc_min = .{ .major = 2, .minor = 27, .patch = 0 } },
6064 .{ .arch = .riscv64, .os = .linux, .abi = .musl },
6165 .{ .arch = .s390x, .os = .linux, .abi = .gnu },
tools/process_headers.zig+10
......@@ -159,6 +159,11 @@ const glibc_targets = [_]LibCTarget{
159159 .arch = MultiArch{ .specific = Arch.powerpc },
160160 .abi = MultiAbi{ .specific = Abi.gnueabi },
161161 },
162 LibCTarget{
163 .name = "riscv32-linux-gnu-rv32imac-ilp32",
164 .arch = MultiArch{ .specific = Arch.riscv32 },
165 .abi = MultiAbi{ .specific = Abi.gnuilp32 },
166 },
162167 LibCTarget{
163168 .name = "riscv64-linux-gnu-rv64imac-lp64",
164169 .arch = MultiArch{ .specific = Arch.riscv64 },
......@@ -195,6 +200,11 @@ const glibc_targets = [_]LibCTarget{
195200 .arch = MultiArch{ .specific = Arch.m68k },
196201 .abi = MultiAbi{ .specific = Abi.gnu },
197202 },
203 LibCTarget{
204 .name = "loongarch64-linux-gnu-lp64d",
205 .arch = MultiArch{ .specific = .loongarch64 },
206 .abi = MultiAbi{ .specific = Abi.gnu },
207 },
198208};
199209
200210const musl_targets = [_]LibCTarget{