mirror of
https://github.com/ziglang/zig.git
synced 2025-12-16 03:03:09 +00:00
glibc: fix inconsistency of mips ABI mapping
Before this commit, glibc headers did the following mapping: * (zig) mipsel-linux-gnu => (glibc) mipsel-linux-gnu * (zig) mipsel-linux-gnu-soft => (glibc) (none) * (zig) mips-linux-gnu => (glibc) mips-linux-gnu * (zig) mips-linux-gnu-soft => (glibc) (none) While the glibc ABI stubs used the (zig) gnueabi and gnueabihf ABIs, and the stage2 available_libcs array listed: * (zig) mipsel-linux-gnu * (zig) mips-linux-gnu The problem is the mismatch between the ABI component of the headers and the stubs. This commit makes the following clarifications: * (zig) mips-linux-gnueabi means soft-float * (zig) mipsel-linux-gnueabi means soft-float * (zig) mips-linux-gnueabihf means hard-float * (zig) mipsel-linux-gnueabihf means hard-float Consequently, the glibc headers now do this mapping: * (zig) mips-linux-gnueabihf => (glibc) mips-linux-gnu * (zig) mipsel-linux-gnueabihf => (glibc) mipsel-linux-gnu * (zig) mips-linux-gnueabi => (glibc) mips-linux-gnu-soft * (zig) mipsel-linux-gnueabi => (glibc) mipsel-linux-gnu-soft The glibc ABI stubs are unchanged, and the stage2 available_libcs array's 2 entries are modified and it gains 2 more: * (zig) mipsel-linux-gnueabi * (zig) mipsel-linux-gnueabihf * (zig) mips-linux-gnueabi * (zig) mips-linux-gnueabihf Now everything is consistent. Zig no longer recognizes a `mips-linux-gnu` triple; one must use `mips-linux-gnueabi` (soft float) or `mips-linux-gnueabihf` (hard float).
This commit is contained in:
parent
e977455f7c
commit
5b6d26e97b
52
lib/libc/include/arm-linux-gnueabi/bits/floatn.h
vendored
Normal file
52
lib/libc/include/arm-linux-gnueabi/bits/floatn.h
vendored
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
/* Macros to control TS 18661-3 glibc features.
|
||||||
|
Copyright (C) 2017-2021 Free Software Foundation, Inc.
|
||||||
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
|
modify it under the terms of the GNU Lesser General Public
|
||||||
|
License as published by the Free Software Foundation; either
|
||||||
|
version 2.1 of the License, or (at your option) any later version.
|
||||||
|
|
||||||
|
The GNU C Library is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU Lesser General Public
|
||||||
|
License along with the GNU C Library; if not, see
|
||||||
|
<https://www.gnu.org/licenses/>. */
|
||||||
|
|
||||||
|
/* Defined to 1 if the current compiler invocation provides a
|
||||||
|
floating-point type with the IEEE 754 binary128 format, and this glibc
|
||||||
|
includes corresponding *f128 interfaces for it. */
|
||||||
|
#define __HAVE_FLOAT128 0
|
||||||
|
|
||||||
|
/* Defined to 1 if __HAVE_FLOAT128 is 1 and the type is ABI-distinct
|
||||||
|
from the default float, double and long double types in this glibc. */
|
||||||
|
#define __HAVE_DISTINCT_FLOAT128 0
|
||||||
|
|
||||||
|
/* Defined to 1 if the current compiler invocation provides a
|
||||||
|
floating-point type with the right format for _Float64x, and this
|
||||||
|
glibc includes corresponding *f64x interfaces for it. */
|
||||||
|
#define __HAVE_FLOAT64X 0
|
||||||
|
|
||||||
|
/* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format
|
||||||
|
of long double. Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has
|
||||||
|
the format of _Float128, which must be different from that of long
|
||||||
|
double. */
|
||||||
|
#define __HAVE_FLOAT64X_LONG_DOUBLE 0
|
||||||
|
|
||||||
|
#ifndef __ASSEMBLER__
|
||||||
|
|
||||||
|
/* Defined to concatenate the literal suffix to be used with _Float128
|
||||||
|
types, if __HAVE_FLOAT128 is 1.
|
||||||
|
E.g.: #define __f128(x) x##f128. */
|
||||||
|
# undef __f128
|
||||||
|
|
||||||
|
/* Defined to a complex binary128 type if __HAVE_FLOAT128 is 1.
|
||||||
|
E.g.: #define __CFLOAT128 _Complex _Float128. */
|
||||||
|
# undef __CFLOAT128
|
||||||
|
|
||||||
|
#endif /* !__ASSEMBLER__. */
|
||||||
|
|
||||||
|
#include <bits/floatn-common.h>
|
||||||
@ -1,4 +1,4 @@
|
|||||||
/* MIPS internal rwlock struct definitions.
|
/* Default read-write lock implementation struct definitions.
|
||||||
Copyright (C) 2019-2021 Free Software Foundation, Inc.
|
Copyright (C) 2019-2021 Free Software Foundation, Inc.
|
||||||
This file is part of the GNU C Library.
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
@ -16,8 +16,15 @@
|
|||||||
License along with the GNU C Library; if not, see
|
License along with the GNU C Library; if not, see
|
||||||
<http://www.gnu.org/licenses/>. */
|
<http://www.gnu.org/licenses/>. */
|
||||||
|
|
||||||
#ifndef _RWLOCK_INTERNAL_H
|
#ifndef __RWLOCK_INTERNAL_H
|
||||||
#define _RWLOCK_INTERNAL_H
|
#define __RWLOCK_INTERNAL_H
|
||||||
|
|
||||||
|
#include <bits/endian.h>
|
||||||
|
|
||||||
|
/* Generic struct for both POSIX read-write lock. New ports are expected
|
||||||
|
to use the default layout, however archictetures can redefine it to add
|
||||||
|
arch-specific extensions (such as lock-elision). The struct have a size
|
||||||
|
of 32 bytes on both LP32 and LP64 architectures. */
|
||||||
|
|
||||||
struct __pthread_rwlock_arch_t
|
struct __pthread_rwlock_arch_t
|
||||||
{
|
{
|
||||||
@ -27,45 +34,28 @@ struct __pthread_rwlock_arch_t
|
|||||||
unsigned int __writers_futex;
|
unsigned int __writers_futex;
|
||||||
unsigned int __pad3;
|
unsigned int __pad3;
|
||||||
unsigned int __pad4;
|
unsigned int __pad4;
|
||||||
#if _MIPS_SIM == _ABI64
|
/* FLAGS must stay at its position in the structure to maintain
|
||||||
int __cur_writer;
|
|
||||||
int __shared;
|
|
||||||
unsigned long int __pad1;
|
|
||||||
unsigned long int __pad2;
|
|
||||||
/* FLAGS must stay at this position in the structure to maintain
|
|
||||||
binary compatibility. */
|
binary compatibility. */
|
||||||
unsigned int __flags;
|
#if __BYTE_ORDER == __BIG_ENDIAN
|
||||||
# else
|
|
||||||
# if __BYTE_ORDER == __BIG_ENDIAN
|
|
||||||
unsigned char __pad1;
|
unsigned char __pad1;
|
||||||
unsigned char __pad2;
|
unsigned char __pad2;
|
||||||
unsigned char __shared;
|
unsigned char __shared;
|
||||||
/* FLAGS must stay at this position in the structure to maintain
|
|
||||||
binary compatibility. */
|
|
||||||
unsigned char __flags;
|
unsigned char __flags;
|
||||||
# else
|
#else
|
||||||
/* FLAGS must stay at this position in the structure to maintain
|
|
||||||
binary compatibility. */
|
|
||||||
unsigned char __flags;
|
unsigned char __flags;
|
||||||
unsigned char __shared;
|
unsigned char __shared;
|
||||||
unsigned char __pad1;
|
unsigned char __pad1;
|
||||||
unsigned char __pad2;
|
unsigned char __pad2;
|
||||||
# endif
|
|
||||||
int __cur_writer;
|
|
||||||
#endif
|
#endif
|
||||||
|
int __cur_writer;
|
||||||
};
|
};
|
||||||
|
|
||||||
#if _MIPS_SIM == _ABI64
|
#if __BYTE_ORDER == __BIG_ENDIAN
|
||||||
# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
|
# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
|
||||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags
|
|
||||||
#else
|
|
||||||
# if __BYTE_ORDER == __BIG_ENDIAN
|
|
||||||
# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
|
|
||||||
0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0
|
0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0
|
||||||
# else
|
#else
|
||||||
# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
|
# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
|
||||||
0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0
|
0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0
|
||||||
# endif
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
21
lib/libc/include/arm-linux-gnueabi/bits/wordsize.h
vendored
Normal file
21
lib/libc/include/arm-linux-gnueabi/bits/wordsize.h
vendored
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
/* Copyright (C) 1999-2021 Free Software Foundation, Inc.
|
||||||
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
|
modify it under the terms of the GNU Lesser General Public
|
||||||
|
License as published by the Free Software Foundation; either
|
||||||
|
version 2.1 of the License, or (at your option) any later version.
|
||||||
|
|
||||||
|
The GNU C Library is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU Lesser General Public
|
||||||
|
License along with the GNU C Library; if not, see
|
||||||
|
<https://www.gnu.org/licenses/>. */
|
||||||
|
|
||||||
|
#define __WORDSIZE 32
|
||||||
|
#define __WORDSIZE_TIME64_COMPAT32 0
|
||||||
|
#define __WORDSIZE32_SIZE_ULONG 0
|
||||||
|
#define __WORDSIZE32_PTRDIFF_LONG 0
|
||||||
52
lib/libc/include/arm-linux-gnueabihf/bits/floatn.h
vendored
Normal file
52
lib/libc/include/arm-linux-gnueabihf/bits/floatn.h
vendored
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
/* Macros to control TS 18661-3 glibc features.
|
||||||
|
Copyright (C) 2017-2021 Free Software Foundation, Inc.
|
||||||
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
|
modify it under the terms of the GNU Lesser General Public
|
||||||
|
License as published by the Free Software Foundation; either
|
||||||
|
version 2.1 of the License, or (at your option) any later version.
|
||||||
|
|
||||||
|
The GNU C Library is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU Lesser General Public
|
||||||
|
License along with the GNU C Library; if not, see
|
||||||
|
<https://www.gnu.org/licenses/>. */
|
||||||
|
|
||||||
|
/* Defined to 1 if the current compiler invocation provides a
|
||||||
|
floating-point type with the IEEE 754 binary128 format, and this glibc
|
||||||
|
includes corresponding *f128 interfaces for it. */
|
||||||
|
#define __HAVE_FLOAT128 0
|
||||||
|
|
||||||
|
/* Defined to 1 if __HAVE_FLOAT128 is 1 and the type is ABI-distinct
|
||||||
|
from the default float, double and long double types in this glibc. */
|
||||||
|
#define __HAVE_DISTINCT_FLOAT128 0
|
||||||
|
|
||||||
|
/* Defined to 1 if the current compiler invocation provides a
|
||||||
|
floating-point type with the right format for _Float64x, and this
|
||||||
|
glibc includes corresponding *f64x interfaces for it. */
|
||||||
|
#define __HAVE_FLOAT64X 0
|
||||||
|
|
||||||
|
/* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format
|
||||||
|
of long double. Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has
|
||||||
|
the format of _Float128, which must be different from that of long
|
||||||
|
double. */
|
||||||
|
#define __HAVE_FLOAT64X_LONG_DOUBLE 0
|
||||||
|
|
||||||
|
#ifndef __ASSEMBLER__
|
||||||
|
|
||||||
|
/* Defined to concatenate the literal suffix to be used with _Float128
|
||||||
|
types, if __HAVE_FLOAT128 is 1.
|
||||||
|
E.g.: #define __f128(x) x##f128. */
|
||||||
|
# undef __f128
|
||||||
|
|
||||||
|
/* Defined to a complex binary128 type if __HAVE_FLOAT128 is 1.
|
||||||
|
E.g.: #define __CFLOAT128 _Complex _Float128. */
|
||||||
|
# undef __CFLOAT128
|
||||||
|
|
||||||
|
#endif /* !__ASSEMBLER__. */
|
||||||
|
|
||||||
|
#include <bits/floatn-common.h>
|
||||||
@ -1,4 +1,4 @@
|
|||||||
/* MIPS internal rwlock struct definitions.
|
/* Default read-write lock implementation struct definitions.
|
||||||
Copyright (C) 2019-2021 Free Software Foundation, Inc.
|
Copyright (C) 2019-2021 Free Software Foundation, Inc.
|
||||||
This file is part of the GNU C Library.
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
@ -16,8 +16,15 @@
|
|||||||
License along with the GNU C Library; if not, see
|
License along with the GNU C Library; if not, see
|
||||||
<http://www.gnu.org/licenses/>. */
|
<http://www.gnu.org/licenses/>. */
|
||||||
|
|
||||||
#ifndef _RWLOCK_INTERNAL_H
|
#ifndef __RWLOCK_INTERNAL_H
|
||||||
#define _RWLOCK_INTERNAL_H
|
#define __RWLOCK_INTERNAL_H
|
||||||
|
|
||||||
|
#include <bits/endian.h>
|
||||||
|
|
||||||
|
/* Generic struct for both POSIX read-write lock. New ports are expected
|
||||||
|
to use the default layout, however archictetures can redefine it to add
|
||||||
|
arch-specific extensions (such as lock-elision). The struct have a size
|
||||||
|
of 32 bytes on both LP32 and LP64 architectures. */
|
||||||
|
|
||||||
struct __pthread_rwlock_arch_t
|
struct __pthread_rwlock_arch_t
|
||||||
{
|
{
|
||||||
@ -27,45 +34,28 @@ struct __pthread_rwlock_arch_t
|
|||||||
unsigned int __writers_futex;
|
unsigned int __writers_futex;
|
||||||
unsigned int __pad3;
|
unsigned int __pad3;
|
||||||
unsigned int __pad4;
|
unsigned int __pad4;
|
||||||
#if _MIPS_SIM == _ABI64
|
/* FLAGS must stay at its position in the structure to maintain
|
||||||
int __cur_writer;
|
|
||||||
int __shared;
|
|
||||||
unsigned long int __pad1;
|
|
||||||
unsigned long int __pad2;
|
|
||||||
/* FLAGS must stay at this position in the structure to maintain
|
|
||||||
binary compatibility. */
|
binary compatibility. */
|
||||||
unsigned int __flags;
|
#if __BYTE_ORDER == __BIG_ENDIAN
|
||||||
# else
|
|
||||||
# if __BYTE_ORDER == __BIG_ENDIAN
|
|
||||||
unsigned char __pad1;
|
unsigned char __pad1;
|
||||||
unsigned char __pad2;
|
unsigned char __pad2;
|
||||||
unsigned char __shared;
|
unsigned char __shared;
|
||||||
/* FLAGS must stay at this position in the structure to maintain
|
|
||||||
binary compatibility. */
|
|
||||||
unsigned char __flags;
|
unsigned char __flags;
|
||||||
# else
|
#else
|
||||||
/* FLAGS must stay at this position in the structure to maintain
|
|
||||||
binary compatibility. */
|
|
||||||
unsigned char __flags;
|
unsigned char __flags;
|
||||||
unsigned char __shared;
|
unsigned char __shared;
|
||||||
unsigned char __pad1;
|
unsigned char __pad1;
|
||||||
unsigned char __pad2;
|
unsigned char __pad2;
|
||||||
# endif
|
|
||||||
int __cur_writer;
|
|
||||||
#endif
|
#endif
|
||||||
|
int __cur_writer;
|
||||||
};
|
};
|
||||||
|
|
||||||
#if _MIPS_SIM == _ABI64
|
#if __BYTE_ORDER == __BIG_ENDIAN
|
||||||
# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
|
# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
|
||||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags
|
|
||||||
#else
|
|
||||||
# if __BYTE_ORDER == __BIG_ENDIAN
|
|
||||||
# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
|
|
||||||
0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0
|
0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0
|
||||||
# else
|
#else
|
||||||
# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
|
# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
|
||||||
0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0
|
0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0
|
||||||
# endif
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
21
lib/libc/include/arm-linux-gnueabihf/bits/wordsize.h
vendored
Normal file
21
lib/libc/include/arm-linux-gnueabihf/bits/wordsize.h
vendored
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
/* Copyright (C) 1999-2021 Free Software Foundation, Inc.
|
||||||
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
|
modify it under the terms of the GNU Lesser General Public
|
||||||
|
License as published by the Free Software Foundation; either
|
||||||
|
version 2.1 of the License, or (at your option) any later version.
|
||||||
|
|
||||||
|
The GNU C Library is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU Lesser General Public
|
||||||
|
License along with the GNU C Library; if not, see
|
||||||
|
<https://www.gnu.org/licenses/>. */
|
||||||
|
|
||||||
|
#define __WORDSIZE 32
|
||||||
|
#define __WORDSIZE_TIME64_COMPAT32 0
|
||||||
|
#define __WORDSIZE32_SIZE_ULONG 0
|
||||||
|
#define __WORDSIZE32_PTRDIFF_LONG 0
|
||||||
52
lib/libc/include/armeb-linux-gnueabi/bits/floatn.h
vendored
Normal file
52
lib/libc/include/armeb-linux-gnueabi/bits/floatn.h
vendored
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
/* Macros to control TS 18661-3 glibc features.
|
||||||
|
Copyright (C) 2017-2021 Free Software Foundation, Inc.
|
||||||
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
|
modify it under the terms of the GNU Lesser General Public
|
||||||
|
License as published by the Free Software Foundation; either
|
||||||
|
version 2.1 of the License, or (at your option) any later version.
|
||||||
|
|
||||||
|
The GNU C Library is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU Lesser General Public
|
||||||
|
License along with the GNU C Library; if not, see
|
||||||
|
<https://www.gnu.org/licenses/>. */
|
||||||
|
|
||||||
|
/* Defined to 1 if the current compiler invocation provides a
|
||||||
|
floating-point type with the IEEE 754 binary128 format, and this glibc
|
||||||
|
includes corresponding *f128 interfaces for it. */
|
||||||
|
#define __HAVE_FLOAT128 0
|
||||||
|
|
||||||
|
/* Defined to 1 if __HAVE_FLOAT128 is 1 and the type is ABI-distinct
|
||||||
|
from the default float, double and long double types in this glibc. */
|
||||||
|
#define __HAVE_DISTINCT_FLOAT128 0
|
||||||
|
|
||||||
|
/* Defined to 1 if the current compiler invocation provides a
|
||||||
|
floating-point type with the right format for _Float64x, and this
|
||||||
|
glibc includes corresponding *f64x interfaces for it. */
|
||||||
|
#define __HAVE_FLOAT64X 0
|
||||||
|
|
||||||
|
/* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format
|
||||||
|
of long double. Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has
|
||||||
|
the format of _Float128, which must be different from that of long
|
||||||
|
double. */
|
||||||
|
#define __HAVE_FLOAT64X_LONG_DOUBLE 0
|
||||||
|
|
||||||
|
#ifndef __ASSEMBLER__
|
||||||
|
|
||||||
|
/* Defined to concatenate the literal suffix to be used with _Float128
|
||||||
|
types, if __HAVE_FLOAT128 is 1.
|
||||||
|
E.g.: #define __f128(x) x##f128. */
|
||||||
|
# undef __f128
|
||||||
|
|
||||||
|
/* Defined to a complex binary128 type if __HAVE_FLOAT128 is 1.
|
||||||
|
E.g.: #define __CFLOAT128 _Complex _Float128. */
|
||||||
|
# undef __CFLOAT128
|
||||||
|
|
||||||
|
#endif /* !__ASSEMBLER__. */
|
||||||
|
|
||||||
|
#include <bits/floatn-common.h>
|
||||||
@ -1,4 +1,4 @@
|
|||||||
/* MIPS internal rwlock struct definitions.
|
/* Default read-write lock implementation struct definitions.
|
||||||
Copyright (C) 2019-2021 Free Software Foundation, Inc.
|
Copyright (C) 2019-2021 Free Software Foundation, Inc.
|
||||||
This file is part of the GNU C Library.
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
@ -16,8 +16,15 @@
|
|||||||
License along with the GNU C Library; if not, see
|
License along with the GNU C Library; if not, see
|
||||||
<http://www.gnu.org/licenses/>. */
|
<http://www.gnu.org/licenses/>. */
|
||||||
|
|
||||||
#ifndef _RWLOCK_INTERNAL_H
|
#ifndef __RWLOCK_INTERNAL_H
|
||||||
#define _RWLOCK_INTERNAL_H
|
#define __RWLOCK_INTERNAL_H
|
||||||
|
|
||||||
|
#include <bits/endian.h>
|
||||||
|
|
||||||
|
/* Generic struct for both POSIX read-write lock. New ports are expected
|
||||||
|
to use the default layout, however archictetures can redefine it to add
|
||||||
|
arch-specific extensions (such as lock-elision). The struct have a size
|
||||||
|
of 32 bytes on both LP32 and LP64 architectures. */
|
||||||
|
|
||||||
struct __pthread_rwlock_arch_t
|
struct __pthread_rwlock_arch_t
|
||||||
{
|
{
|
||||||
@ -27,45 +34,28 @@ struct __pthread_rwlock_arch_t
|
|||||||
unsigned int __writers_futex;
|
unsigned int __writers_futex;
|
||||||
unsigned int __pad3;
|
unsigned int __pad3;
|
||||||
unsigned int __pad4;
|
unsigned int __pad4;
|
||||||
#if _MIPS_SIM == _ABI64
|
/* FLAGS must stay at its position in the structure to maintain
|
||||||
int __cur_writer;
|
|
||||||
int __shared;
|
|
||||||
unsigned long int __pad1;
|
|
||||||
unsigned long int __pad2;
|
|
||||||
/* FLAGS must stay at this position in the structure to maintain
|
|
||||||
binary compatibility. */
|
binary compatibility. */
|
||||||
unsigned int __flags;
|
#if __BYTE_ORDER == __BIG_ENDIAN
|
||||||
# else
|
|
||||||
# if __BYTE_ORDER == __BIG_ENDIAN
|
|
||||||
unsigned char __pad1;
|
unsigned char __pad1;
|
||||||
unsigned char __pad2;
|
unsigned char __pad2;
|
||||||
unsigned char __shared;
|
unsigned char __shared;
|
||||||
/* FLAGS must stay at this position in the structure to maintain
|
|
||||||
binary compatibility. */
|
|
||||||
unsigned char __flags;
|
unsigned char __flags;
|
||||||
# else
|
#else
|
||||||
/* FLAGS must stay at this position in the structure to maintain
|
|
||||||
binary compatibility. */
|
|
||||||
unsigned char __flags;
|
unsigned char __flags;
|
||||||
unsigned char __shared;
|
unsigned char __shared;
|
||||||
unsigned char __pad1;
|
unsigned char __pad1;
|
||||||
unsigned char __pad2;
|
unsigned char __pad2;
|
||||||
# endif
|
|
||||||
int __cur_writer;
|
|
||||||
#endif
|
#endif
|
||||||
|
int __cur_writer;
|
||||||
};
|
};
|
||||||
|
|
||||||
#if _MIPS_SIM == _ABI64
|
#if __BYTE_ORDER == __BIG_ENDIAN
|
||||||
# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
|
# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
|
||||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags
|
|
||||||
#else
|
|
||||||
# if __BYTE_ORDER == __BIG_ENDIAN
|
|
||||||
# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
|
|
||||||
0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0
|
0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0
|
||||||
# else
|
#else
|
||||||
# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
|
# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
|
||||||
0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0
|
0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0
|
||||||
# endif
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
21
lib/libc/include/armeb-linux-gnueabi/bits/wordsize.h
vendored
Normal file
21
lib/libc/include/armeb-linux-gnueabi/bits/wordsize.h
vendored
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
/* Copyright (C) 1999-2021 Free Software Foundation, Inc.
|
||||||
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
|
modify it under the terms of the GNU Lesser General Public
|
||||||
|
License as published by the Free Software Foundation; either
|
||||||
|
version 2.1 of the License, or (at your option) any later version.
|
||||||
|
|
||||||
|
The GNU C Library is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU Lesser General Public
|
||||||
|
License along with the GNU C Library; if not, see
|
||||||
|
<https://www.gnu.org/licenses/>. */
|
||||||
|
|
||||||
|
#define __WORDSIZE 32
|
||||||
|
#define __WORDSIZE_TIME64_COMPAT32 0
|
||||||
|
#define __WORDSIZE32_SIZE_ULONG 0
|
||||||
|
#define __WORDSIZE32_PTRDIFF_LONG 0
|
||||||
52
lib/libc/include/armeb-linux-gnueabihf/bits/floatn.h
vendored
Normal file
52
lib/libc/include/armeb-linux-gnueabihf/bits/floatn.h
vendored
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
/* Macros to control TS 18661-3 glibc features.
|
||||||
|
Copyright (C) 2017-2021 Free Software Foundation, Inc.
|
||||||
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
|
modify it under the terms of the GNU Lesser General Public
|
||||||
|
License as published by the Free Software Foundation; either
|
||||||
|
version 2.1 of the License, or (at your option) any later version.
|
||||||
|
|
||||||
|
The GNU C Library is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU Lesser General Public
|
||||||
|
License along with the GNU C Library; if not, see
|
||||||
|
<https://www.gnu.org/licenses/>. */
|
||||||
|
|
||||||
|
/* Defined to 1 if the current compiler invocation provides a
|
||||||
|
floating-point type with the IEEE 754 binary128 format, and this glibc
|
||||||
|
includes corresponding *f128 interfaces for it. */
|
||||||
|
#define __HAVE_FLOAT128 0
|
||||||
|
|
||||||
|
/* Defined to 1 if __HAVE_FLOAT128 is 1 and the type is ABI-distinct
|
||||||
|
from the default float, double and long double types in this glibc. */
|
||||||
|
#define __HAVE_DISTINCT_FLOAT128 0
|
||||||
|
|
||||||
|
/* Defined to 1 if the current compiler invocation provides a
|
||||||
|
floating-point type with the right format for _Float64x, and this
|
||||||
|
glibc includes corresponding *f64x interfaces for it. */
|
||||||
|
#define __HAVE_FLOAT64X 0
|
||||||
|
|
||||||
|
/* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format
|
||||||
|
of long double. Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has
|
||||||
|
the format of _Float128, which must be different from that of long
|
||||||
|
double. */
|
||||||
|
#define __HAVE_FLOAT64X_LONG_DOUBLE 0
|
||||||
|
|
||||||
|
#ifndef __ASSEMBLER__
|
||||||
|
|
||||||
|
/* Defined to concatenate the literal suffix to be used with _Float128
|
||||||
|
types, if __HAVE_FLOAT128 is 1.
|
||||||
|
E.g.: #define __f128(x) x##f128. */
|
||||||
|
# undef __f128
|
||||||
|
|
||||||
|
/* Defined to a complex binary128 type if __HAVE_FLOAT128 is 1.
|
||||||
|
E.g.: #define __CFLOAT128 _Complex _Float128. */
|
||||||
|
# undef __CFLOAT128
|
||||||
|
|
||||||
|
#endif /* !__ASSEMBLER__. */
|
||||||
|
|
||||||
|
#include <bits/floatn-common.h>
|
||||||
@ -1,4 +1,4 @@
|
|||||||
/* MIPS internal rwlock struct definitions.
|
/* Default read-write lock implementation struct definitions.
|
||||||
Copyright (C) 2019-2021 Free Software Foundation, Inc.
|
Copyright (C) 2019-2021 Free Software Foundation, Inc.
|
||||||
This file is part of the GNU C Library.
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
@ -16,8 +16,15 @@
|
|||||||
License along with the GNU C Library; if not, see
|
License along with the GNU C Library; if not, see
|
||||||
<http://www.gnu.org/licenses/>. */
|
<http://www.gnu.org/licenses/>. */
|
||||||
|
|
||||||
#ifndef _RWLOCK_INTERNAL_H
|
#ifndef __RWLOCK_INTERNAL_H
|
||||||
#define _RWLOCK_INTERNAL_H
|
#define __RWLOCK_INTERNAL_H
|
||||||
|
|
||||||
|
#include <bits/endian.h>
|
||||||
|
|
||||||
|
/* Generic struct for both POSIX read-write lock. New ports are expected
|
||||||
|
to use the default layout, however archictetures can redefine it to add
|
||||||
|
arch-specific extensions (such as lock-elision). The struct have a size
|
||||||
|
of 32 bytes on both LP32 and LP64 architectures. */
|
||||||
|
|
||||||
struct __pthread_rwlock_arch_t
|
struct __pthread_rwlock_arch_t
|
||||||
{
|
{
|
||||||
@ -27,45 +34,28 @@ struct __pthread_rwlock_arch_t
|
|||||||
unsigned int __writers_futex;
|
unsigned int __writers_futex;
|
||||||
unsigned int __pad3;
|
unsigned int __pad3;
|
||||||
unsigned int __pad4;
|
unsigned int __pad4;
|
||||||
#if _MIPS_SIM == _ABI64
|
/* FLAGS must stay at its position in the structure to maintain
|
||||||
int __cur_writer;
|
|
||||||
int __shared;
|
|
||||||
unsigned long int __pad1;
|
|
||||||
unsigned long int __pad2;
|
|
||||||
/* FLAGS must stay at this position in the structure to maintain
|
|
||||||
binary compatibility. */
|
binary compatibility. */
|
||||||
unsigned int __flags;
|
#if __BYTE_ORDER == __BIG_ENDIAN
|
||||||
# else
|
|
||||||
# if __BYTE_ORDER == __BIG_ENDIAN
|
|
||||||
unsigned char __pad1;
|
unsigned char __pad1;
|
||||||
unsigned char __pad2;
|
unsigned char __pad2;
|
||||||
unsigned char __shared;
|
unsigned char __shared;
|
||||||
/* FLAGS must stay at this position in the structure to maintain
|
|
||||||
binary compatibility. */
|
|
||||||
unsigned char __flags;
|
unsigned char __flags;
|
||||||
# else
|
#else
|
||||||
/* FLAGS must stay at this position in the structure to maintain
|
|
||||||
binary compatibility. */
|
|
||||||
unsigned char __flags;
|
unsigned char __flags;
|
||||||
unsigned char __shared;
|
unsigned char __shared;
|
||||||
unsigned char __pad1;
|
unsigned char __pad1;
|
||||||
unsigned char __pad2;
|
unsigned char __pad2;
|
||||||
# endif
|
|
||||||
int __cur_writer;
|
|
||||||
#endif
|
#endif
|
||||||
|
int __cur_writer;
|
||||||
};
|
};
|
||||||
|
|
||||||
#if _MIPS_SIM == _ABI64
|
#if __BYTE_ORDER == __BIG_ENDIAN
|
||||||
# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
|
# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
|
||||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags
|
|
||||||
#else
|
|
||||||
# if __BYTE_ORDER == __BIG_ENDIAN
|
|
||||||
# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
|
|
||||||
0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0
|
0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0
|
||||||
# else
|
#else
|
||||||
# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
|
# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
|
||||||
0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0
|
0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0
|
||||||
# endif
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
21
lib/libc/include/armeb-linux-gnueabihf/bits/wordsize.h
vendored
Normal file
21
lib/libc/include/armeb-linux-gnueabihf/bits/wordsize.h
vendored
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
/* Copyright (C) 1999-2021 Free Software Foundation, Inc.
|
||||||
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
|
modify it under the terms of the GNU Lesser General Public
|
||||||
|
License as published by the Free Software Foundation; either
|
||||||
|
version 2.1 of the License, or (at your option) any later version.
|
||||||
|
|
||||||
|
The GNU C Library is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU Lesser General Public
|
||||||
|
License along with the GNU C Library; if not, see
|
||||||
|
<https://www.gnu.org/licenses/>. */
|
||||||
|
|
||||||
|
#define __WORDSIZE 32
|
||||||
|
#define __WORDSIZE_TIME64_COMPAT32 0
|
||||||
|
#define __WORDSIZE32_SIZE_ULONG 0
|
||||||
|
#define __WORDSIZE32_PTRDIFF_LONG 0
|
||||||
52
lib/libc/include/csky-linux-gnueabi/bits/floatn.h
vendored
Normal file
52
lib/libc/include/csky-linux-gnueabi/bits/floatn.h
vendored
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
/* Macros to control TS 18661-3 glibc features.
|
||||||
|
Copyright (C) 2017-2021 Free Software Foundation, Inc.
|
||||||
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
|
modify it under the terms of the GNU Lesser General Public
|
||||||
|
License as published by the Free Software Foundation; either
|
||||||
|
version 2.1 of the License, or (at your option) any later version.
|
||||||
|
|
||||||
|
The GNU C Library is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU Lesser General Public
|
||||||
|
License along with the GNU C Library; if not, see
|
||||||
|
<https://www.gnu.org/licenses/>. */
|
||||||
|
|
||||||
|
/* Defined to 1 if the current compiler invocation provides a
|
||||||
|
floating-point type with the IEEE 754 binary128 format, and this glibc
|
||||||
|
includes corresponding *f128 interfaces for it. */
|
||||||
|
#define __HAVE_FLOAT128 0
|
||||||
|
|
||||||
|
/* Defined to 1 if __HAVE_FLOAT128 is 1 and the type is ABI-distinct
|
||||||
|
from the default float, double and long double types in this glibc. */
|
||||||
|
#define __HAVE_DISTINCT_FLOAT128 0
|
||||||
|
|
||||||
|
/* Defined to 1 if the current compiler invocation provides a
|
||||||
|
floating-point type with the right format for _Float64x, and this
|
||||||
|
glibc includes corresponding *f64x interfaces for it. */
|
||||||
|
#define __HAVE_FLOAT64X 0
|
||||||
|
|
||||||
|
/* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format
|
||||||
|
of long double. Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has
|
||||||
|
the format of _Float128, which must be different from that of long
|
||||||
|
double. */
|
||||||
|
#define __HAVE_FLOAT64X_LONG_DOUBLE 0
|
||||||
|
|
||||||
|
#ifndef __ASSEMBLER__
|
||||||
|
|
||||||
|
/* Defined to concatenate the literal suffix to be used with _Float128
|
||||||
|
types, if __HAVE_FLOAT128 is 1.
|
||||||
|
E.g.: #define __f128(x) x##f128. */
|
||||||
|
# undef __f128
|
||||||
|
|
||||||
|
/* Defined to a complex binary128 type if __HAVE_FLOAT128 is 1.
|
||||||
|
E.g.: #define __CFLOAT128 _Complex _Float128. */
|
||||||
|
# undef __CFLOAT128
|
||||||
|
|
||||||
|
#endif /* !__ASSEMBLER__. */
|
||||||
|
|
||||||
|
#include <bits/floatn-common.h>
|
||||||
61
lib/libc/include/csky-linux-gnueabi/bits/struct_rwlock.h
vendored
Normal file
61
lib/libc/include/csky-linux-gnueabi/bits/struct_rwlock.h
vendored
Normal file
@ -0,0 +1,61 @@
|
|||||||
|
/* Default read-write lock implementation struct definitions.
|
||||||
|
Copyright (C) 2019-2021 Free Software Foundation, Inc.
|
||||||
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
|
modify it under the terms of the GNU Lesser General Public
|
||||||
|
License as published by the Free Software Foundation; either
|
||||||
|
version 2.1 of the License, or (at your option) any later version.
|
||||||
|
|
||||||
|
The GNU C Library is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU Lesser General Public
|
||||||
|
License along with the GNU C Library; if not, see
|
||||||
|
<http://www.gnu.org/licenses/>. */
|
||||||
|
|
||||||
|
#ifndef __RWLOCK_INTERNAL_H
|
||||||
|
#define __RWLOCK_INTERNAL_H
|
||||||
|
|
||||||
|
#include <bits/endian.h>
|
||||||
|
|
||||||
|
/* Generic struct for both POSIX read-write lock. New ports are expected
|
||||||
|
to use the default layout, however archictetures can redefine it to add
|
||||||
|
arch-specific extensions (such as lock-elision). The struct have a size
|
||||||
|
of 32 bytes on both LP32 and LP64 architectures. */
|
||||||
|
|
||||||
|
struct __pthread_rwlock_arch_t
|
||||||
|
{
|
||||||
|
unsigned int __readers;
|
||||||
|
unsigned int __writers;
|
||||||
|
unsigned int __wrphase_futex;
|
||||||
|
unsigned int __writers_futex;
|
||||||
|
unsigned int __pad3;
|
||||||
|
unsigned int __pad4;
|
||||||
|
/* FLAGS must stay at its position in the structure to maintain
|
||||||
|
binary compatibility. */
|
||||||
|
#if __BYTE_ORDER == __BIG_ENDIAN
|
||||||
|
unsigned char __pad1;
|
||||||
|
unsigned char __pad2;
|
||||||
|
unsigned char __shared;
|
||||||
|
unsigned char __flags;
|
||||||
|
#else
|
||||||
|
unsigned char __flags;
|
||||||
|
unsigned char __shared;
|
||||||
|
unsigned char __pad1;
|
||||||
|
unsigned char __pad2;
|
||||||
|
#endif
|
||||||
|
int __cur_writer;
|
||||||
|
};
|
||||||
|
|
||||||
|
#if __BYTE_ORDER == __BIG_ENDIAN
|
||||||
|
# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0
|
||||||
|
#else
|
||||||
|
# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
|
||||||
|
0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif
|
||||||
21
lib/libc/include/csky-linux-gnueabi/bits/wordsize.h
vendored
Normal file
21
lib/libc/include/csky-linux-gnueabi/bits/wordsize.h
vendored
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
/* Copyright (C) 1999-2021 Free Software Foundation, Inc.
|
||||||
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
|
modify it under the terms of the GNU Lesser General Public
|
||||||
|
License as published by the Free Software Foundation; either
|
||||||
|
version 2.1 of the License, or (at your option) any later version.
|
||||||
|
|
||||||
|
The GNU C Library is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU Lesser General Public
|
||||||
|
License along with the GNU C Library; if not, see
|
||||||
|
<https://www.gnu.org/licenses/>. */
|
||||||
|
|
||||||
|
#define __WORDSIZE 32
|
||||||
|
#define __WORDSIZE_TIME64_COMPAT32 0
|
||||||
|
#define __WORDSIZE32_SIZE_ULONG 0
|
||||||
|
#define __WORDSIZE32_PTRDIFF_LONG 0
|
||||||
52
lib/libc/include/csky-linux-gnueabihf/bits/floatn.h
vendored
Normal file
52
lib/libc/include/csky-linux-gnueabihf/bits/floatn.h
vendored
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
/* Macros to control TS 18661-3 glibc features.
|
||||||
|
Copyright (C) 2017-2021 Free Software Foundation, Inc.
|
||||||
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
|
modify it under the terms of the GNU Lesser General Public
|
||||||
|
License as published by the Free Software Foundation; either
|
||||||
|
version 2.1 of the License, or (at your option) any later version.
|
||||||
|
|
||||||
|
The GNU C Library is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU Lesser General Public
|
||||||
|
License along with the GNU C Library; if not, see
|
||||||
|
<https://www.gnu.org/licenses/>. */
|
||||||
|
|
||||||
|
/* Defined to 1 if the current compiler invocation provides a
|
||||||
|
floating-point type with the IEEE 754 binary128 format, and this glibc
|
||||||
|
includes corresponding *f128 interfaces for it. */
|
||||||
|
#define __HAVE_FLOAT128 0
|
||||||
|
|
||||||
|
/* Defined to 1 if __HAVE_FLOAT128 is 1 and the type is ABI-distinct
|
||||||
|
from the default float, double and long double types in this glibc. */
|
||||||
|
#define __HAVE_DISTINCT_FLOAT128 0
|
||||||
|
|
||||||
|
/* Defined to 1 if the current compiler invocation provides a
|
||||||
|
floating-point type with the right format for _Float64x, and this
|
||||||
|
glibc includes corresponding *f64x interfaces for it. */
|
||||||
|
#define __HAVE_FLOAT64X 0
|
||||||
|
|
||||||
|
/* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format
|
||||||
|
of long double. Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has
|
||||||
|
the format of _Float128, which must be different from that of long
|
||||||
|
double. */
|
||||||
|
#define __HAVE_FLOAT64X_LONG_DOUBLE 0
|
||||||
|
|
||||||
|
#ifndef __ASSEMBLER__
|
||||||
|
|
||||||
|
/* Defined to concatenate the literal suffix to be used with _Float128
|
||||||
|
types, if __HAVE_FLOAT128 is 1.
|
||||||
|
E.g.: #define __f128(x) x##f128. */
|
||||||
|
# undef __f128
|
||||||
|
|
||||||
|
/* Defined to a complex binary128 type if __HAVE_FLOAT128 is 1.
|
||||||
|
E.g.: #define __CFLOAT128 _Complex _Float128. */
|
||||||
|
# undef __CFLOAT128
|
||||||
|
|
||||||
|
#endif /* !__ASSEMBLER__. */
|
||||||
|
|
||||||
|
#include <bits/floatn-common.h>
|
||||||
61
lib/libc/include/csky-linux-gnueabihf/bits/struct_rwlock.h
vendored
Normal file
61
lib/libc/include/csky-linux-gnueabihf/bits/struct_rwlock.h
vendored
Normal file
@ -0,0 +1,61 @@
|
|||||||
|
/* Default read-write lock implementation struct definitions.
|
||||||
|
Copyright (C) 2019-2021 Free Software Foundation, Inc.
|
||||||
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
|
modify it under the terms of the GNU Lesser General Public
|
||||||
|
License as published by the Free Software Foundation; either
|
||||||
|
version 2.1 of the License, or (at your option) any later version.
|
||||||
|
|
||||||
|
The GNU C Library is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU Lesser General Public
|
||||||
|
License along with the GNU C Library; if not, see
|
||||||
|
<http://www.gnu.org/licenses/>. */
|
||||||
|
|
||||||
|
#ifndef __RWLOCK_INTERNAL_H
|
||||||
|
#define __RWLOCK_INTERNAL_H
|
||||||
|
|
||||||
|
#include <bits/endian.h>
|
||||||
|
|
||||||
|
/* Generic struct for both POSIX read-write lock. New ports are expected
|
||||||
|
to use the default layout, however archictetures can redefine it to add
|
||||||
|
arch-specific extensions (such as lock-elision). The struct have a size
|
||||||
|
of 32 bytes on both LP32 and LP64 architectures. */
|
||||||
|
|
||||||
|
struct __pthread_rwlock_arch_t
|
||||||
|
{
|
||||||
|
unsigned int __readers;
|
||||||
|
unsigned int __writers;
|
||||||
|
unsigned int __wrphase_futex;
|
||||||
|
unsigned int __writers_futex;
|
||||||
|
unsigned int __pad3;
|
||||||
|
unsigned int __pad4;
|
||||||
|
/* FLAGS must stay at its position in the structure to maintain
|
||||||
|
binary compatibility. */
|
||||||
|
#if __BYTE_ORDER == __BIG_ENDIAN
|
||||||
|
unsigned char __pad1;
|
||||||
|
unsigned char __pad2;
|
||||||
|
unsigned char __shared;
|
||||||
|
unsigned char __flags;
|
||||||
|
#else
|
||||||
|
unsigned char __flags;
|
||||||
|
unsigned char __shared;
|
||||||
|
unsigned char __pad1;
|
||||||
|
unsigned char __pad2;
|
||||||
|
#endif
|
||||||
|
int __cur_writer;
|
||||||
|
};
|
||||||
|
|
||||||
|
#if __BYTE_ORDER == __BIG_ENDIAN
|
||||||
|
# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0
|
||||||
|
#else
|
||||||
|
# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
|
||||||
|
0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif
|
||||||
21
lib/libc/include/csky-linux-gnueabihf/bits/wordsize.h
vendored
Normal file
21
lib/libc/include/csky-linux-gnueabihf/bits/wordsize.h
vendored
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
/* Copyright (C) 1999-2021 Free Software Foundation, Inc.
|
||||||
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
|
modify it under the terms of the GNU Lesser General Public
|
||||||
|
License as published by the Free Software Foundation; either
|
||||||
|
version 2.1 of the License, or (at your option) any later version.
|
||||||
|
|
||||||
|
The GNU C Library is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU Lesser General Public
|
||||||
|
License along with the GNU C Library; if not, see
|
||||||
|
<https://www.gnu.org/licenses/>. */
|
||||||
|
|
||||||
|
#define __WORDSIZE 32
|
||||||
|
#define __WORDSIZE_TIME64_COMPAT32 0
|
||||||
|
#define __WORDSIZE32_SIZE_ULONG 0
|
||||||
|
#define __WORDSIZE32_PTRDIFF_LONG 0
|
||||||
71
lib/libc/include/generic-glibc/bits/floatn.h
vendored
71
lib/libc/include/generic-glibc/bits/floatn.h
vendored
@ -1,4 +1,4 @@
|
|||||||
/* Macros to control TS 18661-3 glibc features.
|
/* Macros to control TS 18661-3 glibc features on MIPS platforms.
|
||||||
Copyright (C) 2017-2021 Free Software Foundation, Inc.
|
Copyright (C) 2017-2021 Free Software Foundation, Inc.
|
||||||
This file is part of the GNU C Library.
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
@ -16,10 +16,24 @@
|
|||||||
License along with the GNU C Library; if not, see
|
License along with the GNU C Library; if not, see
|
||||||
<https://www.gnu.org/licenses/>. */
|
<https://www.gnu.org/licenses/>. */
|
||||||
|
|
||||||
|
#ifndef _BITS_FLOATN_H
|
||||||
|
#define _BITS_FLOATN_H
|
||||||
|
|
||||||
|
#include <features.h>
|
||||||
|
#include <bits/long-double.h>
|
||||||
|
|
||||||
/* Defined to 1 if the current compiler invocation provides a
|
/* Defined to 1 if the current compiler invocation provides a
|
||||||
floating-point type with the IEEE 754 binary128 format, and this glibc
|
floating-point type with the IEEE 754 binary128 format, and this
|
||||||
includes corresponding *f128 interfaces for it. */
|
glibc includes corresponding *f128 interfaces for it. */
|
||||||
#define __HAVE_FLOAT128 0
|
#ifndef __NO_LONG_DOUBLE_MATH
|
||||||
|
# define __HAVE_FLOAT128 1
|
||||||
|
#else
|
||||||
|
/* glibc does not support _Float128 for platforms where long double is
|
||||||
|
normally binary128 when building with long double as binary64.
|
||||||
|
GCC's default for supported scalar modes does not support it either
|
||||||
|
in that case. */
|
||||||
|
# define __HAVE_FLOAT128 0
|
||||||
|
#endif
|
||||||
|
|
||||||
/* Defined to 1 if __HAVE_FLOAT128 is 1 and the type is ABI-distinct
|
/* Defined to 1 if __HAVE_FLOAT128 is 1 and the type is ABI-distinct
|
||||||
from the default float, double and long double types in this glibc. */
|
from the default float, double and long double types in this glibc. */
|
||||||
@ -28,25 +42,56 @@
|
|||||||
/* Defined to 1 if the current compiler invocation provides a
|
/* Defined to 1 if the current compiler invocation provides a
|
||||||
floating-point type with the right format for _Float64x, and this
|
floating-point type with the right format for _Float64x, and this
|
||||||
glibc includes corresponding *f64x interfaces for it. */
|
glibc includes corresponding *f64x interfaces for it. */
|
||||||
#define __HAVE_FLOAT64X 0
|
#define __HAVE_FLOAT64X __HAVE_FLOAT128
|
||||||
|
|
||||||
/* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format
|
/* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format
|
||||||
of long double. Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has
|
of long double. Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has
|
||||||
the format of _Float128, which must be different from that of long
|
the format of _Float128, which must be different from that of long
|
||||||
double. */
|
double. */
|
||||||
#define __HAVE_FLOAT64X_LONG_DOUBLE 0
|
#define __HAVE_FLOAT64X_LONG_DOUBLE __HAVE_FLOAT128
|
||||||
|
|
||||||
#ifndef __ASSEMBLER__
|
#ifndef __ASSEMBLER__
|
||||||
|
|
||||||
/* Defined to concatenate the literal suffix to be used with _Float128
|
/* Defined to concatenate the literal suffix to be used with _Float128
|
||||||
types, if __HAVE_FLOAT128 is 1.
|
types, if __HAVE_FLOAT128 is 1. */
|
||||||
E.g.: #define __f128(x) x##f128. */
|
# if __HAVE_FLOAT128
|
||||||
# undef __f128
|
# if !__GNUC_PREREQ (7, 0) || defined __cplusplus
|
||||||
|
/* The literal suffix f128 exists only since GCC 7.0. */
|
||||||
|
# define __f128(x) x##l
|
||||||
|
# else
|
||||||
|
# define __f128(x) x##f128
|
||||||
|
# endif
|
||||||
|
# endif
|
||||||
|
|
||||||
/* Defined to a complex binary128 type if __HAVE_FLOAT128 is 1.
|
/* Defined to a complex binary128 type if __HAVE_FLOAT128 is 1. */
|
||||||
E.g.: #define __CFLOAT128 _Complex _Float128. */
|
# if __HAVE_FLOAT128
|
||||||
# undef __CFLOAT128
|
# if !__GNUC_PREREQ (7, 0) || defined __cplusplus
|
||||||
|
# define __CFLOAT128 _Complex long double
|
||||||
|
# else
|
||||||
|
# define __CFLOAT128 _Complex _Float128
|
||||||
|
# endif
|
||||||
|
# endif
|
||||||
|
|
||||||
|
/* The remaining of this file provides support for older compilers. */
|
||||||
|
# if __HAVE_FLOAT128
|
||||||
|
|
||||||
|
/* The type _Float128 exists only since GCC 7.0. */
|
||||||
|
# if !__GNUC_PREREQ (7, 0) || defined __cplusplus
|
||||||
|
typedef long double _Float128;
|
||||||
|
# endif
|
||||||
|
|
||||||
|
/* Various built-in functions do not exist before GCC 7.0. */
|
||||||
|
# if !__GNUC_PREREQ (7, 0)
|
||||||
|
# define __builtin_huge_valf128() (__builtin_huge_vall ())
|
||||||
|
# define __builtin_inff128() (__builtin_infl ())
|
||||||
|
# define __builtin_nanf128(x) (__builtin_nanl (x))
|
||||||
|
# define __builtin_nansf128(x) (__builtin_nansl (x))
|
||||||
|
# endif
|
||||||
|
|
||||||
|
# endif
|
||||||
|
|
||||||
#endif /* !__ASSEMBLER__. */
|
#endif /* !__ASSEMBLER__. */
|
||||||
|
|
||||||
#include <bits/floatn-common.h>
|
#include <bits/floatn-common.h>
|
||||||
|
|
||||||
|
#endif /* _BITS_FLOATN_H */
|
||||||
@ -1,4 +1,4 @@
|
|||||||
/* Default read-write lock implementation struct definitions.
|
/* MIPS internal rwlock struct definitions.
|
||||||
Copyright (C) 2019-2021 Free Software Foundation, Inc.
|
Copyright (C) 2019-2021 Free Software Foundation, Inc.
|
||||||
This file is part of the GNU C Library.
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
@ -16,15 +16,8 @@
|
|||||||
License along with the GNU C Library; if not, see
|
License along with the GNU C Library; if not, see
|
||||||
<http://www.gnu.org/licenses/>. */
|
<http://www.gnu.org/licenses/>. */
|
||||||
|
|
||||||
#ifndef __RWLOCK_INTERNAL_H
|
#ifndef _RWLOCK_INTERNAL_H
|
||||||
#define __RWLOCK_INTERNAL_H
|
#define _RWLOCK_INTERNAL_H
|
||||||
|
|
||||||
#include <bits/endian.h>
|
|
||||||
|
|
||||||
/* Generic struct for both POSIX read-write lock. New ports are expected
|
|
||||||
to use the default layout, however archictetures can redefine it to add
|
|
||||||
arch-specific extensions (such as lock-elision). The struct have a size
|
|
||||||
of 32 bytes on both LP32 and LP64 architectures. */
|
|
||||||
|
|
||||||
struct __pthread_rwlock_arch_t
|
struct __pthread_rwlock_arch_t
|
||||||
{
|
{
|
||||||
@ -34,28 +27,45 @@ struct __pthread_rwlock_arch_t
|
|||||||
unsigned int __writers_futex;
|
unsigned int __writers_futex;
|
||||||
unsigned int __pad3;
|
unsigned int __pad3;
|
||||||
unsigned int __pad4;
|
unsigned int __pad4;
|
||||||
/* FLAGS must stay at its position in the structure to maintain
|
#if _MIPS_SIM == _ABI64
|
||||||
binary compatibility. */
|
|
||||||
#if __BYTE_ORDER == __BIG_ENDIAN
|
|
||||||
unsigned char __pad1;
|
|
||||||
unsigned char __pad2;
|
|
||||||
unsigned char __shared;
|
|
||||||
unsigned char __flags;
|
|
||||||
#else
|
|
||||||
unsigned char __flags;
|
|
||||||
unsigned char __shared;
|
|
||||||
unsigned char __pad1;
|
|
||||||
unsigned char __pad2;
|
|
||||||
#endif
|
|
||||||
int __cur_writer;
|
int __cur_writer;
|
||||||
|
int __shared;
|
||||||
|
unsigned long int __pad1;
|
||||||
|
unsigned long int __pad2;
|
||||||
|
/* FLAGS must stay at this position in the structure to maintain
|
||||||
|
binary compatibility. */
|
||||||
|
unsigned int __flags;
|
||||||
|
# else
|
||||||
|
# if __BYTE_ORDER == __BIG_ENDIAN
|
||||||
|
unsigned char __pad1;
|
||||||
|
unsigned char __pad2;
|
||||||
|
unsigned char __shared;
|
||||||
|
/* FLAGS must stay at this position in the structure to maintain
|
||||||
|
binary compatibility. */
|
||||||
|
unsigned char __flags;
|
||||||
|
# else
|
||||||
|
/* FLAGS must stay at this position in the structure to maintain
|
||||||
|
binary compatibility. */
|
||||||
|
unsigned char __flags;
|
||||||
|
unsigned char __shared;
|
||||||
|
unsigned char __pad1;
|
||||||
|
unsigned char __pad2;
|
||||||
|
# endif
|
||||||
|
int __cur_writer;
|
||||||
|
#endif
|
||||||
};
|
};
|
||||||
|
|
||||||
#if __BYTE_ORDER == __BIG_ENDIAN
|
#if _MIPS_SIM == _ABI64
|
||||||
# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
|
# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
|
||||||
0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags
|
||||||
#else
|
#else
|
||||||
# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
|
# if __BYTE_ORDER == __BIG_ENDIAN
|
||||||
|
# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0
|
||||||
|
# else
|
||||||
|
# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
|
||||||
0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0
|
0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0
|
||||||
|
# endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
20
lib/libc/include/generic-glibc/bits/wordsize.h
vendored
20
lib/libc/include/generic-glibc/bits/wordsize.h
vendored
@ -1,4 +1,4 @@
|
|||||||
/* Copyright (C) 1999-2021 Free Software Foundation, Inc.
|
/* Copyright (C) 2002-2021 Free Software Foundation, Inc.
|
||||||
This file is part of the GNU C Library.
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
The GNU C Library is free software; you can redistribute it and/or
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
@ -12,10 +12,20 @@
|
|||||||
Lesser General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU Lesser General Public
|
You should have received a copy of the GNU Lesser General Public
|
||||||
License along with the GNU C Library; if not, see
|
License along with the GNU C Library. If not, see
|
||||||
<https://www.gnu.org/licenses/>. */
|
<https://www.gnu.org/licenses/>. */
|
||||||
|
|
||||||
#define __WORDSIZE 32
|
#include <sgidefs.h>
|
||||||
#define __WORDSIZE_TIME64_COMPAT32 0
|
|
||||||
|
#define __WORDSIZE _MIPS_SZPTR
|
||||||
|
|
||||||
|
#if _MIPS_SIM == _ABI64
|
||||||
|
# define __WORDSIZE_TIME64_COMPAT32 1
|
||||||
|
#else
|
||||||
|
# define __WORDSIZE_TIME64_COMPAT32 0
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if __WORDSIZE == 32
|
||||||
#define __WORDSIZE32_SIZE_ULONG 0
|
#define __WORDSIZE32_SIZE_ULONG 0
|
||||||
#define __WORDSIZE32_PTRDIFF_LONG 0
|
#define __WORDSIZE32_PTRDIFF_LONG 0
|
||||||
|
#endif
|
||||||
29
lib/libc/include/generic-glibc/gnu/lib-names-o32_soft.h
vendored
Normal file
29
lib/libc/include/generic-glibc/gnu/lib-names-o32_soft.h
vendored
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
/* This file is automatically generated. */
|
||||||
|
#ifndef __GNU_LIB_NAMES_H
|
||||||
|
# error "Never use <gnu/lib-names-o32_soft.h> directly; include <gnu/lib-names.h> instead."
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define LD_SO "ld.so.1"
|
||||||
|
#define LIBANL_SO "libanl.so.1"
|
||||||
|
#define LIBBROKENLOCALE_SO "libBrokenLocale.so.1"
|
||||||
|
#define LIBCRYPT_SO "libcrypt.so.1"
|
||||||
|
#define LIBC_MALLOC_DEBUG_SO "libc_malloc_debug.so.0"
|
||||||
|
#define LIBC_SO "libc.so.6"
|
||||||
|
#define LIBDL_SO "libdl.so.2"
|
||||||
|
#define LIBGCC_S_SO "libgcc_s.so.1"
|
||||||
|
#define LIBMVEC_SO "libmvec.so.1"
|
||||||
|
#define LIBM_SO "libm.so.6"
|
||||||
|
#define LIBNSL_SO "libnsl.so.1"
|
||||||
|
#define LIBNSS_COMPAT_SO "libnss_compat.so.2"
|
||||||
|
#define LIBNSS_DB_SO "libnss_db.so.2"
|
||||||
|
#define LIBNSS_DNS_SO "libnss_dns.so.2"
|
||||||
|
#define LIBNSS_FILES_SO "libnss_files.so.2"
|
||||||
|
#define LIBNSS_HESIOD_SO "libnss_hesiod.so.2"
|
||||||
|
#define LIBNSS_LDAP_SO "libnss_ldap.so.2"
|
||||||
|
#define LIBNSS_TEST1_SO "libnss_test1.so.2"
|
||||||
|
#define LIBNSS_TEST2_SO "libnss_test2.so.2"
|
||||||
|
#define LIBPTHREAD_SO "libpthread.so.0"
|
||||||
|
#define LIBRESOLV_SO "libresolv.so.2"
|
||||||
|
#define LIBRT_SO "librt.so.1"
|
||||||
|
#define LIBTHREAD_DB_SO "libthread_db.so.1"
|
||||||
|
#define LIBUTIL_SO "libutil.so.1"
|
||||||
33
lib/libc/include/generic-glibc/gnu/stubs-o32_soft.h
vendored
Normal file
33
lib/libc/include/generic-glibc/gnu/stubs-o32_soft.h
vendored
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
/* This file is automatically generated.
|
||||||
|
It defines a symbol `__stub_FUNCTION' for each function
|
||||||
|
in the C library which is a stub, meaning it will fail
|
||||||
|
every time called, usually setting errno to ENOSYS. */
|
||||||
|
|
||||||
|
#ifdef _LIBC
|
||||||
|
#error Applications may not define the macro _LIBC
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define __stub_chflags
|
||||||
|
#define __stub_fchflags
|
||||||
|
#define __stub_feclearexcept
|
||||||
|
#define __stub_fedisableexcept
|
||||||
|
#define __stub_feenableexcept
|
||||||
|
#define __stub_fegetenv
|
||||||
|
#define __stub_fegetexcept
|
||||||
|
#define __stub_fegetexceptflag
|
||||||
|
#define __stub_fegetmode
|
||||||
|
#define __stub_fegetround
|
||||||
|
#define __stub_feholdexcept
|
||||||
|
#define __stub_feraiseexcept
|
||||||
|
#define __stub_fesetenv
|
||||||
|
#define __stub_fesetexcept
|
||||||
|
#define __stub_fesetexceptflag
|
||||||
|
#define __stub_fesetmode
|
||||||
|
#define __stub_fesetround
|
||||||
|
#define __stub_fetestexcept
|
||||||
|
#define __stub_feupdateenv
|
||||||
|
#define __stub_gtty
|
||||||
|
#define __stub_revoke
|
||||||
|
#define __stub_setlogin
|
||||||
|
#define __stub_sigreturn
|
||||||
|
#define __stub_stty
|
||||||
52
lib/libc/include/m68k-linux-gnu/bits/floatn.h
vendored
Normal file
52
lib/libc/include/m68k-linux-gnu/bits/floatn.h
vendored
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
/* Macros to control TS 18661-3 glibc features.
|
||||||
|
Copyright (C) 2017-2021 Free Software Foundation, Inc.
|
||||||
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
|
modify it under the terms of the GNU Lesser General Public
|
||||||
|
License as published by the Free Software Foundation; either
|
||||||
|
version 2.1 of the License, or (at your option) any later version.
|
||||||
|
|
||||||
|
The GNU C Library is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU Lesser General Public
|
||||||
|
License along with the GNU C Library; if not, see
|
||||||
|
<https://www.gnu.org/licenses/>. */
|
||||||
|
|
||||||
|
/* Defined to 1 if the current compiler invocation provides a
|
||||||
|
floating-point type with the IEEE 754 binary128 format, and this glibc
|
||||||
|
includes corresponding *f128 interfaces for it. */
|
||||||
|
#define __HAVE_FLOAT128 0
|
||||||
|
|
||||||
|
/* Defined to 1 if __HAVE_FLOAT128 is 1 and the type is ABI-distinct
|
||||||
|
from the default float, double and long double types in this glibc. */
|
||||||
|
#define __HAVE_DISTINCT_FLOAT128 0
|
||||||
|
|
||||||
|
/* Defined to 1 if the current compiler invocation provides a
|
||||||
|
floating-point type with the right format for _Float64x, and this
|
||||||
|
glibc includes corresponding *f64x interfaces for it. */
|
||||||
|
#define __HAVE_FLOAT64X 0
|
||||||
|
|
||||||
|
/* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format
|
||||||
|
of long double. Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has
|
||||||
|
the format of _Float128, which must be different from that of long
|
||||||
|
double. */
|
||||||
|
#define __HAVE_FLOAT64X_LONG_DOUBLE 0
|
||||||
|
|
||||||
|
#ifndef __ASSEMBLER__
|
||||||
|
|
||||||
|
/* Defined to concatenate the literal suffix to be used with _Float128
|
||||||
|
types, if __HAVE_FLOAT128 is 1.
|
||||||
|
E.g.: #define __f128(x) x##f128. */
|
||||||
|
# undef __f128
|
||||||
|
|
||||||
|
/* Defined to a complex binary128 type if __HAVE_FLOAT128 is 1.
|
||||||
|
E.g.: #define __CFLOAT128 _Complex _Float128. */
|
||||||
|
# undef __CFLOAT128
|
||||||
|
|
||||||
|
#endif /* !__ASSEMBLER__. */
|
||||||
|
|
||||||
|
#include <bits/floatn-common.h>
|
||||||
61
lib/libc/include/m68k-linux-gnu/bits/struct_rwlock.h
vendored
Normal file
61
lib/libc/include/m68k-linux-gnu/bits/struct_rwlock.h
vendored
Normal file
@ -0,0 +1,61 @@
|
|||||||
|
/* Default read-write lock implementation struct definitions.
|
||||||
|
Copyright (C) 2019-2021 Free Software Foundation, Inc.
|
||||||
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
|
modify it under the terms of the GNU Lesser General Public
|
||||||
|
License as published by the Free Software Foundation; either
|
||||||
|
version 2.1 of the License, or (at your option) any later version.
|
||||||
|
|
||||||
|
The GNU C Library is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU Lesser General Public
|
||||||
|
License along with the GNU C Library; if not, see
|
||||||
|
<http://www.gnu.org/licenses/>. */
|
||||||
|
|
||||||
|
#ifndef __RWLOCK_INTERNAL_H
|
||||||
|
#define __RWLOCK_INTERNAL_H
|
||||||
|
|
||||||
|
#include <bits/endian.h>
|
||||||
|
|
||||||
|
/* Generic struct for both POSIX read-write lock. New ports are expected
|
||||||
|
to use the default layout, however archictetures can redefine it to add
|
||||||
|
arch-specific extensions (such as lock-elision). The struct have a size
|
||||||
|
of 32 bytes on both LP32 and LP64 architectures. */
|
||||||
|
|
||||||
|
struct __pthread_rwlock_arch_t
|
||||||
|
{
|
||||||
|
unsigned int __readers;
|
||||||
|
unsigned int __writers;
|
||||||
|
unsigned int __wrphase_futex;
|
||||||
|
unsigned int __writers_futex;
|
||||||
|
unsigned int __pad3;
|
||||||
|
unsigned int __pad4;
|
||||||
|
/* FLAGS must stay at its position in the structure to maintain
|
||||||
|
binary compatibility. */
|
||||||
|
#if __BYTE_ORDER == __BIG_ENDIAN
|
||||||
|
unsigned char __pad1;
|
||||||
|
unsigned char __pad2;
|
||||||
|
unsigned char __shared;
|
||||||
|
unsigned char __flags;
|
||||||
|
#else
|
||||||
|
unsigned char __flags;
|
||||||
|
unsigned char __shared;
|
||||||
|
unsigned char __pad1;
|
||||||
|
unsigned char __pad2;
|
||||||
|
#endif
|
||||||
|
int __cur_writer;
|
||||||
|
};
|
||||||
|
|
||||||
|
#if __BYTE_ORDER == __BIG_ENDIAN
|
||||||
|
# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0
|
||||||
|
#else
|
||||||
|
# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
|
||||||
|
0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif
|
||||||
21
lib/libc/include/m68k-linux-gnu/bits/wordsize.h
vendored
Normal file
21
lib/libc/include/m68k-linux-gnu/bits/wordsize.h
vendored
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
/* Copyright (C) 1999-2021 Free Software Foundation, Inc.
|
||||||
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
|
modify it under the terms of the GNU Lesser General Public
|
||||||
|
License as published by the Free Software Foundation; either
|
||||||
|
version 2.1 of the License, or (at your option) any later version.
|
||||||
|
|
||||||
|
The GNU C Library is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU Lesser General Public
|
||||||
|
License along with the GNU C Library; if not, see
|
||||||
|
<https://www.gnu.org/licenses/>. */
|
||||||
|
|
||||||
|
#define __WORDSIZE 32
|
||||||
|
#define __WORDSIZE_TIME64_COMPAT32 0
|
||||||
|
#define __WORDSIZE32_SIZE_ULONG 0
|
||||||
|
#define __WORDSIZE32_PTRDIFF_LONG 0
|
||||||
97
lib/libc/include/mips-linux-gnu/bits/floatn.h
vendored
97
lib/libc/include/mips-linux-gnu/bits/floatn.h
vendored
@ -1,97 +0,0 @@
|
|||||||
/* Macros to control TS 18661-3 glibc features on MIPS platforms.
|
|
||||||
Copyright (C) 2017-2021 Free Software Foundation, Inc.
|
|
||||||
This file is part of the GNU C Library.
|
|
||||||
|
|
||||||
The GNU C Library is free software; you can redistribute it and/or
|
|
||||||
modify it under the terms of the GNU Lesser General Public
|
|
||||||
License as published by the Free Software Foundation; either
|
|
||||||
version 2.1 of the License, or (at your option) any later version.
|
|
||||||
|
|
||||||
The GNU C Library is distributed in the hope that it will be useful,
|
|
||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
||||||
Lesser General Public License for more details.
|
|
||||||
|
|
||||||
You should have received a copy of the GNU Lesser General Public
|
|
||||||
License along with the GNU C Library; if not, see
|
|
||||||
<https://www.gnu.org/licenses/>. */
|
|
||||||
|
|
||||||
#ifndef _BITS_FLOATN_H
|
|
||||||
#define _BITS_FLOATN_H
|
|
||||||
|
|
||||||
#include <features.h>
|
|
||||||
#include <bits/long-double.h>
|
|
||||||
|
|
||||||
/* Defined to 1 if the current compiler invocation provides a
|
|
||||||
floating-point type with the IEEE 754 binary128 format, and this
|
|
||||||
glibc includes corresponding *f128 interfaces for it. */
|
|
||||||
#ifndef __NO_LONG_DOUBLE_MATH
|
|
||||||
# define __HAVE_FLOAT128 1
|
|
||||||
#else
|
|
||||||
/* glibc does not support _Float128 for platforms where long double is
|
|
||||||
normally binary128 when building with long double as binary64.
|
|
||||||
GCC's default for supported scalar modes does not support it either
|
|
||||||
in that case. */
|
|
||||||
# define __HAVE_FLOAT128 0
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Defined to 1 if __HAVE_FLOAT128 is 1 and the type is ABI-distinct
|
|
||||||
from the default float, double and long double types in this glibc. */
|
|
||||||
#define __HAVE_DISTINCT_FLOAT128 0
|
|
||||||
|
|
||||||
/* Defined to 1 if the current compiler invocation provides a
|
|
||||||
floating-point type with the right format for _Float64x, and this
|
|
||||||
glibc includes corresponding *f64x interfaces for it. */
|
|
||||||
#define __HAVE_FLOAT64X __HAVE_FLOAT128
|
|
||||||
|
|
||||||
/* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format
|
|
||||||
of long double. Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has
|
|
||||||
the format of _Float128, which must be different from that of long
|
|
||||||
double. */
|
|
||||||
#define __HAVE_FLOAT64X_LONG_DOUBLE __HAVE_FLOAT128
|
|
||||||
|
|
||||||
#ifndef __ASSEMBLER__
|
|
||||||
|
|
||||||
/* Defined to concatenate the literal suffix to be used with _Float128
|
|
||||||
types, if __HAVE_FLOAT128 is 1. */
|
|
||||||
# if __HAVE_FLOAT128
|
|
||||||
# if !__GNUC_PREREQ (7, 0) || defined __cplusplus
|
|
||||||
/* The literal suffix f128 exists only since GCC 7.0. */
|
|
||||||
# define __f128(x) x##l
|
|
||||||
# else
|
|
||||||
# define __f128(x) x##f128
|
|
||||||
# endif
|
|
||||||
# endif
|
|
||||||
|
|
||||||
/* Defined to a complex binary128 type if __HAVE_FLOAT128 is 1. */
|
|
||||||
# if __HAVE_FLOAT128
|
|
||||||
# if !__GNUC_PREREQ (7, 0) || defined __cplusplus
|
|
||||||
# define __CFLOAT128 _Complex long double
|
|
||||||
# else
|
|
||||||
# define __CFLOAT128 _Complex _Float128
|
|
||||||
# endif
|
|
||||||
# endif
|
|
||||||
|
|
||||||
/* The remaining of this file provides support for older compilers. */
|
|
||||||
# if __HAVE_FLOAT128
|
|
||||||
|
|
||||||
/* The type _Float128 exists only since GCC 7.0. */
|
|
||||||
# if !__GNUC_PREREQ (7, 0) || defined __cplusplus
|
|
||||||
typedef long double _Float128;
|
|
||||||
# endif
|
|
||||||
|
|
||||||
/* Various built-in functions do not exist before GCC 7.0. */
|
|
||||||
# if !__GNUC_PREREQ (7, 0)
|
|
||||||
# define __builtin_huge_valf128() (__builtin_huge_vall ())
|
|
||||||
# define __builtin_inff128() (__builtin_infl ())
|
|
||||||
# define __builtin_nanf128(x) (__builtin_nanl (x))
|
|
||||||
# define __builtin_nansf128(x) (__builtin_nansl (x))
|
|
||||||
# endif
|
|
||||||
|
|
||||||
# endif
|
|
||||||
|
|
||||||
#endif /* !__ASSEMBLER__. */
|
|
||||||
|
|
||||||
#include <bits/floatn-common.h>
|
|
||||||
|
|
||||||
#endif /* _BITS_FLOATN_H */
|
|
||||||
@ -1,97 +0,0 @@
|
|||||||
/* Macros to control TS 18661-3 glibc features on MIPS platforms.
|
|
||||||
Copyright (C) 2017-2021 Free Software Foundation, Inc.
|
|
||||||
This file is part of the GNU C Library.
|
|
||||||
|
|
||||||
The GNU C Library is free software; you can redistribute it and/or
|
|
||||||
modify it under the terms of the GNU Lesser General Public
|
|
||||||
License as published by the Free Software Foundation; either
|
|
||||||
version 2.1 of the License, or (at your option) any later version.
|
|
||||||
|
|
||||||
The GNU C Library is distributed in the hope that it will be useful,
|
|
||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
||||||
Lesser General Public License for more details.
|
|
||||||
|
|
||||||
You should have received a copy of the GNU Lesser General Public
|
|
||||||
License along with the GNU C Library; if not, see
|
|
||||||
<https://www.gnu.org/licenses/>. */
|
|
||||||
|
|
||||||
#ifndef _BITS_FLOATN_H
|
|
||||||
#define _BITS_FLOATN_H
|
|
||||||
|
|
||||||
#include <features.h>
|
|
||||||
#include <bits/long-double.h>
|
|
||||||
|
|
||||||
/* Defined to 1 if the current compiler invocation provides a
|
|
||||||
floating-point type with the IEEE 754 binary128 format, and this
|
|
||||||
glibc includes corresponding *f128 interfaces for it. */
|
|
||||||
#ifndef __NO_LONG_DOUBLE_MATH
|
|
||||||
# define __HAVE_FLOAT128 1
|
|
||||||
#else
|
|
||||||
/* glibc does not support _Float128 for platforms where long double is
|
|
||||||
normally binary128 when building with long double as binary64.
|
|
||||||
GCC's default for supported scalar modes does not support it either
|
|
||||||
in that case. */
|
|
||||||
# define __HAVE_FLOAT128 0
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Defined to 1 if __HAVE_FLOAT128 is 1 and the type is ABI-distinct
|
|
||||||
from the default float, double and long double types in this glibc. */
|
|
||||||
#define __HAVE_DISTINCT_FLOAT128 0
|
|
||||||
|
|
||||||
/* Defined to 1 if the current compiler invocation provides a
|
|
||||||
floating-point type with the right format for _Float64x, and this
|
|
||||||
glibc includes corresponding *f64x interfaces for it. */
|
|
||||||
#define __HAVE_FLOAT64X __HAVE_FLOAT128
|
|
||||||
|
|
||||||
/* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format
|
|
||||||
of long double. Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has
|
|
||||||
the format of _Float128, which must be different from that of long
|
|
||||||
double. */
|
|
||||||
#define __HAVE_FLOAT64X_LONG_DOUBLE __HAVE_FLOAT128
|
|
||||||
|
|
||||||
#ifndef __ASSEMBLER__
|
|
||||||
|
|
||||||
/* Defined to concatenate the literal suffix to be used with _Float128
|
|
||||||
types, if __HAVE_FLOAT128 is 1. */
|
|
||||||
# if __HAVE_FLOAT128
|
|
||||||
# if !__GNUC_PREREQ (7, 0) || defined __cplusplus
|
|
||||||
/* The literal suffix f128 exists only since GCC 7.0. */
|
|
||||||
# define __f128(x) x##l
|
|
||||||
# else
|
|
||||||
# define __f128(x) x##f128
|
|
||||||
# endif
|
|
||||||
# endif
|
|
||||||
|
|
||||||
/* Defined to a complex binary128 type if __HAVE_FLOAT128 is 1. */
|
|
||||||
# if __HAVE_FLOAT128
|
|
||||||
# if !__GNUC_PREREQ (7, 0) || defined __cplusplus
|
|
||||||
# define __CFLOAT128 _Complex long double
|
|
||||||
# else
|
|
||||||
# define __CFLOAT128 _Complex _Float128
|
|
||||||
# endif
|
|
||||||
# endif
|
|
||||||
|
|
||||||
/* The remaining of this file provides support for older compilers. */
|
|
||||||
# if __HAVE_FLOAT128
|
|
||||||
|
|
||||||
/* The type _Float128 exists only since GCC 7.0. */
|
|
||||||
# if !__GNUC_PREREQ (7, 0) || defined __cplusplus
|
|
||||||
typedef long double _Float128;
|
|
||||||
# endif
|
|
||||||
|
|
||||||
/* Various built-in functions do not exist before GCC 7.0. */
|
|
||||||
# if !__GNUC_PREREQ (7, 0)
|
|
||||||
# define __builtin_huge_valf128() (__builtin_huge_vall ())
|
|
||||||
# define __builtin_inff128() (__builtin_infl ())
|
|
||||||
# define __builtin_nanf128(x) (__builtin_nanl (x))
|
|
||||||
# define __builtin_nansf128(x) (__builtin_nansl (x))
|
|
||||||
# endif
|
|
||||||
|
|
||||||
# endif
|
|
||||||
|
|
||||||
#endif /* !__ASSEMBLER__. */
|
|
||||||
|
|
||||||
#include <bits/floatn-common.h>
|
|
||||||
|
|
||||||
#endif /* _BITS_FLOATN_H */
|
|
||||||
@ -1,97 +0,0 @@
|
|||||||
/* Macros to control TS 18661-3 glibc features on MIPS platforms.
|
|
||||||
Copyright (C) 2017-2021 Free Software Foundation, Inc.
|
|
||||||
This file is part of the GNU C Library.
|
|
||||||
|
|
||||||
The GNU C Library is free software; you can redistribute it and/or
|
|
||||||
modify it under the terms of the GNU Lesser General Public
|
|
||||||
License as published by the Free Software Foundation; either
|
|
||||||
version 2.1 of the License, or (at your option) any later version.
|
|
||||||
|
|
||||||
The GNU C Library is distributed in the hope that it will be useful,
|
|
||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
||||||
Lesser General Public License for more details.
|
|
||||||
|
|
||||||
You should have received a copy of the GNU Lesser General Public
|
|
||||||
License along with the GNU C Library; if not, see
|
|
||||||
<https://www.gnu.org/licenses/>. */
|
|
||||||
|
|
||||||
#ifndef _BITS_FLOATN_H
|
|
||||||
#define _BITS_FLOATN_H
|
|
||||||
|
|
||||||
#include <features.h>
|
|
||||||
#include <bits/long-double.h>
|
|
||||||
|
|
||||||
/* Defined to 1 if the current compiler invocation provides a
|
|
||||||
floating-point type with the IEEE 754 binary128 format, and this
|
|
||||||
glibc includes corresponding *f128 interfaces for it. */
|
|
||||||
#ifndef __NO_LONG_DOUBLE_MATH
|
|
||||||
# define __HAVE_FLOAT128 1
|
|
||||||
#else
|
|
||||||
/* glibc does not support _Float128 for platforms where long double is
|
|
||||||
normally binary128 when building with long double as binary64.
|
|
||||||
GCC's default for supported scalar modes does not support it either
|
|
||||||
in that case. */
|
|
||||||
# define __HAVE_FLOAT128 0
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Defined to 1 if __HAVE_FLOAT128 is 1 and the type is ABI-distinct
|
|
||||||
from the default float, double and long double types in this glibc. */
|
|
||||||
#define __HAVE_DISTINCT_FLOAT128 0
|
|
||||||
|
|
||||||
/* Defined to 1 if the current compiler invocation provides a
|
|
||||||
floating-point type with the right format for _Float64x, and this
|
|
||||||
glibc includes corresponding *f64x interfaces for it. */
|
|
||||||
#define __HAVE_FLOAT64X __HAVE_FLOAT128
|
|
||||||
|
|
||||||
/* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format
|
|
||||||
of long double. Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has
|
|
||||||
the format of _Float128, which must be different from that of long
|
|
||||||
double. */
|
|
||||||
#define __HAVE_FLOAT64X_LONG_DOUBLE __HAVE_FLOAT128
|
|
||||||
|
|
||||||
#ifndef __ASSEMBLER__
|
|
||||||
|
|
||||||
/* Defined to concatenate the literal suffix to be used with _Float128
|
|
||||||
types, if __HAVE_FLOAT128 is 1. */
|
|
||||||
# if __HAVE_FLOAT128
|
|
||||||
# if !__GNUC_PREREQ (7, 0) || defined __cplusplus
|
|
||||||
/* The literal suffix f128 exists only since GCC 7.0. */
|
|
||||||
# define __f128(x) x##l
|
|
||||||
# else
|
|
||||||
# define __f128(x) x##f128
|
|
||||||
# endif
|
|
||||||
# endif
|
|
||||||
|
|
||||||
/* Defined to a complex binary128 type if __HAVE_FLOAT128 is 1. */
|
|
||||||
# if __HAVE_FLOAT128
|
|
||||||
# if !__GNUC_PREREQ (7, 0) || defined __cplusplus
|
|
||||||
# define __CFLOAT128 _Complex long double
|
|
||||||
# else
|
|
||||||
# define __CFLOAT128 _Complex _Float128
|
|
||||||
# endif
|
|
||||||
# endif
|
|
||||||
|
|
||||||
/* The remaining of this file provides support for older compilers. */
|
|
||||||
# if __HAVE_FLOAT128
|
|
||||||
|
|
||||||
/* The type _Float128 exists only since GCC 7.0. */
|
|
||||||
# if !__GNUC_PREREQ (7, 0) || defined __cplusplus
|
|
||||||
typedef long double _Float128;
|
|
||||||
# endif
|
|
||||||
|
|
||||||
/* Various built-in functions do not exist before GCC 7.0. */
|
|
||||||
# if !__GNUC_PREREQ (7, 0)
|
|
||||||
# define __builtin_huge_valf128() (__builtin_huge_vall ())
|
|
||||||
# define __builtin_inff128() (__builtin_infl ())
|
|
||||||
# define __builtin_nanf128(x) (__builtin_nanl (x))
|
|
||||||
# define __builtin_nansf128(x) (__builtin_nansl (x))
|
|
||||||
# endif
|
|
||||||
|
|
||||||
# endif
|
|
||||||
|
|
||||||
#endif /* !__ASSEMBLER__. */
|
|
||||||
|
|
||||||
#include <bits/floatn-common.h>
|
|
||||||
|
|
||||||
#endif /* _BITS_FLOATN_H */
|
|
||||||
@ -1,97 +0,0 @@
|
|||||||
/* Macros to control TS 18661-3 glibc features on MIPS platforms.
|
|
||||||
Copyright (C) 2017-2021 Free Software Foundation, Inc.
|
|
||||||
This file is part of the GNU C Library.
|
|
||||||
|
|
||||||
The GNU C Library is free software; you can redistribute it and/or
|
|
||||||
modify it under the terms of the GNU Lesser General Public
|
|
||||||
License as published by the Free Software Foundation; either
|
|
||||||
version 2.1 of the License, or (at your option) any later version.
|
|
||||||
|
|
||||||
The GNU C Library is distributed in the hope that it will be useful,
|
|
||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
||||||
Lesser General Public License for more details.
|
|
||||||
|
|
||||||
You should have received a copy of the GNU Lesser General Public
|
|
||||||
License along with the GNU C Library; if not, see
|
|
||||||
<https://www.gnu.org/licenses/>. */
|
|
||||||
|
|
||||||
#ifndef _BITS_FLOATN_H
|
|
||||||
#define _BITS_FLOATN_H
|
|
||||||
|
|
||||||
#include <features.h>
|
|
||||||
#include <bits/long-double.h>
|
|
||||||
|
|
||||||
/* Defined to 1 if the current compiler invocation provides a
|
|
||||||
floating-point type with the IEEE 754 binary128 format, and this
|
|
||||||
glibc includes corresponding *f128 interfaces for it. */
|
|
||||||
#ifndef __NO_LONG_DOUBLE_MATH
|
|
||||||
# define __HAVE_FLOAT128 1
|
|
||||||
#else
|
|
||||||
/* glibc does not support _Float128 for platforms where long double is
|
|
||||||
normally binary128 when building with long double as binary64.
|
|
||||||
GCC's default for supported scalar modes does not support it either
|
|
||||||
in that case. */
|
|
||||||
# define __HAVE_FLOAT128 0
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Defined to 1 if __HAVE_FLOAT128 is 1 and the type is ABI-distinct
|
|
||||||
from the default float, double and long double types in this glibc. */
|
|
||||||
#define __HAVE_DISTINCT_FLOAT128 0
|
|
||||||
|
|
||||||
/* Defined to 1 if the current compiler invocation provides a
|
|
||||||
floating-point type with the right format for _Float64x, and this
|
|
||||||
glibc includes corresponding *f64x interfaces for it. */
|
|
||||||
#define __HAVE_FLOAT64X __HAVE_FLOAT128
|
|
||||||
|
|
||||||
/* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format
|
|
||||||
of long double. Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has
|
|
||||||
the format of _Float128, which must be different from that of long
|
|
||||||
double. */
|
|
||||||
#define __HAVE_FLOAT64X_LONG_DOUBLE __HAVE_FLOAT128
|
|
||||||
|
|
||||||
#ifndef __ASSEMBLER__
|
|
||||||
|
|
||||||
/* Defined to concatenate the literal suffix to be used with _Float128
|
|
||||||
types, if __HAVE_FLOAT128 is 1. */
|
|
||||||
# if __HAVE_FLOAT128
|
|
||||||
# if !__GNUC_PREREQ (7, 0) || defined __cplusplus
|
|
||||||
/* The literal suffix f128 exists only since GCC 7.0. */
|
|
||||||
# define __f128(x) x##l
|
|
||||||
# else
|
|
||||||
# define __f128(x) x##f128
|
|
||||||
# endif
|
|
||||||
# endif
|
|
||||||
|
|
||||||
/* Defined to a complex binary128 type if __HAVE_FLOAT128 is 1. */
|
|
||||||
# if __HAVE_FLOAT128
|
|
||||||
# if !__GNUC_PREREQ (7, 0) || defined __cplusplus
|
|
||||||
# define __CFLOAT128 _Complex long double
|
|
||||||
# else
|
|
||||||
# define __CFLOAT128 _Complex _Float128
|
|
||||||
# endif
|
|
||||||
# endif
|
|
||||||
|
|
||||||
/* The remaining of this file provides support for older compilers. */
|
|
||||||
# if __HAVE_FLOAT128
|
|
||||||
|
|
||||||
/* The type _Float128 exists only since GCC 7.0. */
|
|
||||||
# if !__GNUC_PREREQ (7, 0) || defined __cplusplus
|
|
||||||
typedef long double _Float128;
|
|
||||||
# endif
|
|
||||||
|
|
||||||
/* Various built-in functions do not exist before GCC 7.0. */
|
|
||||||
# if !__GNUC_PREREQ (7, 0)
|
|
||||||
# define __builtin_huge_valf128() (__builtin_huge_vall ())
|
|
||||||
# define __builtin_inff128() (__builtin_infl ())
|
|
||||||
# define __builtin_nanf128(x) (__builtin_nanl (x))
|
|
||||||
# define __builtin_nansf128(x) (__builtin_nansl (x))
|
|
||||||
# endif
|
|
||||||
|
|
||||||
# endif
|
|
||||||
|
|
||||||
#endif /* !__ASSEMBLER__. */
|
|
||||||
|
|
||||||
#include <bits/floatn-common.h>
|
|
||||||
|
|
||||||
#endif /* _BITS_FLOATN_H */
|
|
||||||
@ -1,97 +0,0 @@
|
|||||||
/* Macros to control TS 18661-3 glibc features on MIPS platforms.
|
|
||||||
Copyright (C) 2017-2021 Free Software Foundation, Inc.
|
|
||||||
This file is part of the GNU C Library.
|
|
||||||
|
|
||||||
The GNU C Library is free software; you can redistribute it and/or
|
|
||||||
modify it under the terms of the GNU Lesser General Public
|
|
||||||
License as published by the Free Software Foundation; either
|
|
||||||
version 2.1 of the License, or (at your option) any later version.
|
|
||||||
|
|
||||||
The GNU C Library is distributed in the hope that it will be useful,
|
|
||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
||||||
Lesser General Public License for more details.
|
|
||||||
|
|
||||||
You should have received a copy of the GNU Lesser General Public
|
|
||||||
License along with the GNU C Library; if not, see
|
|
||||||
<https://www.gnu.org/licenses/>. */
|
|
||||||
|
|
||||||
#ifndef _BITS_FLOATN_H
|
|
||||||
#define _BITS_FLOATN_H
|
|
||||||
|
|
||||||
#include <features.h>
|
|
||||||
#include <bits/long-double.h>
|
|
||||||
|
|
||||||
/* Defined to 1 if the current compiler invocation provides a
|
|
||||||
floating-point type with the IEEE 754 binary128 format, and this
|
|
||||||
glibc includes corresponding *f128 interfaces for it. */
|
|
||||||
#ifndef __NO_LONG_DOUBLE_MATH
|
|
||||||
# define __HAVE_FLOAT128 1
|
|
||||||
#else
|
|
||||||
/* glibc does not support _Float128 for platforms where long double is
|
|
||||||
normally binary128 when building with long double as binary64.
|
|
||||||
GCC's default for supported scalar modes does not support it either
|
|
||||||
in that case. */
|
|
||||||
# define __HAVE_FLOAT128 0
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Defined to 1 if __HAVE_FLOAT128 is 1 and the type is ABI-distinct
|
|
||||||
from the default float, double and long double types in this glibc. */
|
|
||||||
#define __HAVE_DISTINCT_FLOAT128 0
|
|
||||||
|
|
||||||
/* Defined to 1 if the current compiler invocation provides a
|
|
||||||
floating-point type with the right format for _Float64x, and this
|
|
||||||
glibc includes corresponding *f64x interfaces for it. */
|
|
||||||
#define __HAVE_FLOAT64X __HAVE_FLOAT128
|
|
||||||
|
|
||||||
/* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format
|
|
||||||
of long double. Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has
|
|
||||||
the format of _Float128, which must be different from that of long
|
|
||||||
double. */
|
|
||||||
#define __HAVE_FLOAT64X_LONG_DOUBLE __HAVE_FLOAT128
|
|
||||||
|
|
||||||
#ifndef __ASSEMBLER__
|
|
||||||
|
|
||||||
/* Defined to concatenate the literal suffix to be used with _Float128
|
|
||||||
types, if __HAVE_FLOAT128 is 1. */
|
|
||||||
# if __HAVE_FLOAT128
|
|
||||||
# if !__GNUC_PREREQ (7, 0) || defined __cplusplus
|
|
||||||
/* The literal suffix f128 exists only since GCC 7.0. */
|
|
||||||
# define __f128(x) x##l
|
|
||||||
# else
|
|
||||||
# define __f128(x) x##f128
|
|
||||||
# endif
|
|
||||||
# endif
|
|
||||||
|
|
||||||
/* Defined to a complex binary128 type if __HAVE_FLOAT128 is 1. */
|
|
||||||
# if __HAVE_FLOAT128
|
|
||||||
# if !__GNUC_PREREQ (7, 0) || defined __cplusplus
|
|
||||||
# define __CFLOAT128 _Complex long double
|
|
||||||
# else
|
|
||||||
# define __CFLOAT128 _Complex _Float128
|
|
||||||
# endif
|
|
||||||
# endif
|
|
||||||
|
|
||||||
/* The remaining of this file provides support for older compilers. */
|
|
||||||
# if __HAVE_FLOAT128
|
|
||||||
|
|
||||||
/* The type _Float128 exists only since GCC 7.0. */
|
|
||||||
# if !__GNUC_PREREQ (7, 0) || defined __cplusplus
|
|
||||||
typedef long double _Float128;
|
|
||||||
# endif
|
|
||||||
|
|
||||||
/* Various built-in functions do not exist before GCC 7.0. */
|
|
||||||
# if !__GNUC_PREREQ (7, 0)
|
|
||||||
# define __builtin_huge_valf128() (__builtin_huge_vall ())
|
|
||||||
# define __builtin_inff128() (__builtin_infl ())
|
|
||||||
# define __builtin_nanf128(x) (__builtin_nanl (x))
|
|
||||||
# define __builtin_nansf128(x) (__builtin_nansl (x))
|
|
||||||
# endif
|
|
||||||
|
|
||||||
# endif
|
|
||||||
|
|
||||||
#endif /* !__ASSEMBLER__. */
|
|
||||||
|
|
||||||
#include <bits/floatn-common.h>
|
|
||||||
|
|
||||||
#endif /* _BITS_FLOATN_H */
|
|
||||||
@ -1,71 +0,0 @@
|
|||||||
/* MIPS internal rwlock struct definitions.
|
|
||||||
Copyright (C) 2019-2021 Free Software Foundation, Inc.
|
|
||||||
This file is part of the GNU C Library.
|
|
||||||
|
|
||||||
The GNU C Library is free software; you can redistribute it and/or
|
|
||||||
modify it under the terms of the GNU Lesser General Public
|
|
||||||
License as published by the Free Software Foundation; either
|
|
||||||
version 2.1 of the License, or (at your option) any later version.
|
|
||||||
|
|
||||||
The GNU C Library is distributed in the hope that it will be useful,
|
|
||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
||||||
Lesser General Public License for more details.
|
|
||||||
|
|
||||||
You should have received a copy of the GNU Lesser General Public
|
|
||||||
License along with the GNU C Library; if not, see
|
|
||||||
<http://www.gnu.org/licenses/>. */
|
|
||||||
|
|
||||||
#ifndef _RWLOCK_INTERNAL_H
|
|
||||||
#define _RWLOCK_INTERNAL_H
|
|
||||||
|
|
||||||
struct __pthread_rwlock_arch_t
|
|
||||||
{
|
|
||||||
unsigned int __readers;
|
|
||||||
unsigned int __writers;
|
|
||||||
unsigned int __wrphase_futex;
|
|
||||||
unsigned int __writers_futex;
|
|
||||||
unsigned int __pad3;
|
|
||||||
unsigned int __pad4;
|
|
||||||
#if _MIPS_SIM == _ABI64
|
|
||||||
int __cur_writer;
|
|
||||||
int __shared;
|
|
||||||
unsigned long int __pad1;
|
|
||||||
unsigned long int __pad2;
|
|
||||||
/* FLAGS must stay at this position in the structure to maintain
|
|
||||||
binary compatibility. */
|
|
||||||
unsigned int __flags;
|
|
||||||
# else
|
|
||||||
# if __BYTE_ORDER == __BIG_ENDIAN
|
|
||||||
unsigned char __pad1;
|
|
||||||
unsigned char __pad2;
|
|
||||||
unsigned char __shared;
|
|
||||||
/* FLAGS must stay at this position in the structure to maintain
|
|
||||||
binary compatibility. */
|
|
||||||
unsigned char __flags;
|
|
||||||
# else
|
|
||||||
/* FLAGS must stay at this position in the structure to maintain
|
|
||||||
binary compatibility. */
|
|
||||||
unsigned char __flags;
|
|
||||||
unsigned char __shared;
|
|
||||||
unsigned char __pad1;
|
|
||||||
unsigned char __pad2;
|
|
||||||
# endif
|
|
||||||
int __cur_writer;
|
|
||||||
#endif
|
|
||||||
};
|
|
||||||
|
|
||||||
#if _MIPS_SIM == _ABI64
|
|
||||||
# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
|
|
||||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags
|
|
||||||
#else
|
|
||||||
# if __BYTE_ORDER == __BIG_ENDIAN
|
|
||||||
# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
|
|
||||||
0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0
|
|
||||||
# else
|
|
||||||
# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
|
|
||||||
0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0
|
|
||||||
# endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif
|
|
||||||
@ -1,31 +0,0 @@
|
|||||||
/* Copyright (C) 2002-2021 Free Software Foundation, Inc.
|
|
||||||
This file is part of the GNU C Library.
|
|
||||||
|
|
||||||
The GNU C Library is free software; you can redistribute it and/or
|
|
||||||
modify it under the terms of the GNU Lesser General Public
|
|
||||||
License as published by the Free Software Foundation; either
|
|
||||||
version 2.1 of the License, or (at your option) any later version.
|
|
||||||
|
|
||||||
The GNU C Library is distributed in the hope that it will be useful,
|
|
||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
||||||
Lesser General Public License for more details.
|
|
||||||
|
|
||||||
You should have received a copy of the GNU Lesser General Public
|
|
||||||
License along with the GNU C Library. If not, see
|
|
||||||
<https://www.gnu.org/licenses/>. */
|
|
||||||
|
|
||||||
#include <sgidefs.h>
|
|
||||||
|
|
||||||
#define __WORDSIZE _MIPS_SZPTR
|
|
||||||
|
|
||||||
#if _MIPS_SIM == _ABI64
|
|
||||||
# define __WORDSIZE_TIME64_COMPAT32 1
|
|
||||||
#else
|
|
||||||
# define __WORDSIZE_TIME64_COMPAT32 0
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if __WORDSIZE == 32
|
|
||||||
#define __WORDSIZE32_SIZE_ULONG 0
|
|
||||||
#define __WORDSIZE32_PTRDIFF_LONG 0
|
|
||||||
#endif
|
|
||||||
97
lib/libc/include/mipsel-linux-gnu/bits/floatn.h
vendored
97
lib/libc/include/mipsel-linux-gnu/bits/floatn.h
vendored
@ -1,97 +0,0 @@
|
|||||||
/* Macros to control TS 18661-3 glibc features on MIPS platforms.
|
|
||||||
Copyright (C) 2017-2021 Free Software Foundation, Inc.
|
|
||||||
This file is part of the GNU C Library.
|
|
||||||
|
|
||||||
The GNU C Library is free software; you can redistribute it and/or
|
|
||||||
modify it under the terms of the GNU Lesser General Public
|
|
||||||
License as published by the Free Software Foundation; either
|
|
||||||
version 2.1 of the License, or (at your option) any later version.
|
|
||||||
|
|
||||||
The GNU C Library is distributed in the hope that it will be useful,
|
|
||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
||||||
Lesser General Public License for more details.
|
|
||||||
|
|
||||||
You should have received a copy of the GNU Lesser General Public
|
|
||||||
License along with the GNU C Library; if not, see
|
|
||||||
<https://www.gnu.org/licenses/>. */
|
|
||||||
|
|
||||||
#ifndef _BITS_FLOATN_H
|
|
||||||
#define _BITS_FLOATN_H
|
|
||||||
|
|
||||||
#include <features.h>
|
|
||||||
#include <bits/long-double.h>
|
|
||||||
|
|
||||||
/* Defined to 1 if the current compiler invocation provides a
|
|
||||||
floating-point type with the IEEE 754 binary128 format, and this
|
|
||||||
glibc includes corresponding *f128 interfaces for it. */
|
|
||||||
#ifndef __NO_LONG_DOUBLE_MATH
|
|
||||||
# define __HAVE_FLOAT128 1
|
|
||||||
#else
|
|
||||||
/* glibc does not support _Float128 for platforms where long double is
|
|
||||||
normally binary128 when building with long double as binary64.
|
|
||||||
GCC's default for supported scalar modes does not support it either
|
|
||||||
in that case. */
|
|
||||||
# define __HAVE_FLOAT128 0
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Defined to 1 if __HAVE_FLOAT128 is 1 and the type is ABI-distinct
|
|
||||||
from the default float, double and long double types in this glibc. */
|
|
||||||
#define __HAVE_DISTINCT_FLOAT128 0
|
|
||||||
|
|
||||||
/* Defined to 1 if the current compiler invocation provides a
|
|
||||||
floating-point type with the right format for _Float64x, and this
|
|
||||||
glibc includes corresponding *f64x interfaces for it. */
|
|
||||||
#define __HAVE_FLOAT64X __HAVE_FLOAT128
|
|
||||||
|
|
||||||
/* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format
|
|
||||||
of long double. Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has
|
|
||||||
the format of _Float128, which must be different from that of long
|
|
||||||
double. */
|
|
||||||
#define __HAVE_FLOAT64X_LONG_DOUBLE __HAVE_FLOAT128
|
|
||||||
|
|
||||||
#ifndef __ASSEMBLER__
|
|
||||||
|
|
||||||
/* Defined to concatenate the literal suffix to be used with _Float128
|
|
||||||
types, if __HAVE_FLOAT128 is 1. */
|
|
||||||
# if __HAVE_FLOAT128
|
|
||||||
# if !__GNUC_PREREQ (7, 0) || defined __cplusplus
|
|
||||||
/* The literal suffix f128 exists only since GCC 7.0. */
|
|
||||||
# define __f128(x) x##l
|
|
||||||
# else
|
|
||||||
# define __f128(x) x##f128
|
|
||||||
# endif
|
|
||||||
# endif
|
|
||||||
|
|
||||||
/* Defined to a complex binary128 type if __HAVE_FLOAT128 is 1. */
|
|
||||||
# if __HAVE_FLOAT128
|
|
||||||
# if !__GNUC_PREREQ (7, 0) || defined __cplusplus
|
|
||||||
# define __CFLOAT128 _Complex long double
|
|
||||||
# else
|
|
||||||
# define __CFLOAT128 _Complex _Float128
|
|
||||||
# endif
|
|
||||||
# endif
|
|
||||||
|
|
||||||
/* The remaining of this file provides support for older compilers. */
|
|
||||||
# if __HAVE_FLOAT128
|
|
||||||
|
|
||||||
/* The type _Float128 exists only since GCC 7.0. */
|
|
||||||
# if !__GNUC_PREREQ (7, 0) || defined __cplusplus
|
|
||||||
typedef long double _Float128;
|
|
||||||
# endif
|
|
||||||
|
|
||||||
/* Various built-in functions do not exist before GCC 7.0. */
|
|
||||||
# if !__GNUC_PREREQ (7, 0)
|
|
||||||
# define __builtin_huge_valf128() (__builtin_huge_vall ())
|
|
||||||
# define __builtin_inff128() (__builtin_infl ())
|
|
||||||
# define __builtin_nanf128(x) (__builtin_nanl (x))
|
|
||||||
# define __builtin_nansf128(x) (__builtin_nansl (x))
|
|
||||||
# endif
|
|
||||||
|
|
||||||
# endif
|
|
||||||
|
|
||||||
#endif /* !__ASSEMBLER__. */
|
|
||||||
|
|
||||||
#include <bits/floatn-common.h>
|
|
||||||
|
|
||||||
#endif /* _BITS_FLOATN_H */
|
|
||||||
@ -1,71 +0,0 @@
|
|||||||
/* MIPS internal rwlock struct definitions.
|
|
||||||
Copyright (C) 2019-2021 Free Software Foundation, Inc.
|
|
||||||
This file is part of the GNU C Library.
|
|
||||||
|
|
||||||
The GNU C Library is free software; you can redistribute it and/or
|
|
||||||
modify it under the terms of the GNU Lesser General Public
|
|
||||||
License as published by the Free Software Foundation; either
|
|
||||||
version 2.1 of the License, or (at your option) any later version.
|
|
||||||
|
|
||||||
The GNU C Library is distributed in the hope that it will be useful,
|
|
||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
||||||
Lesser General Public License for more details.
|
|
||||||
|
|
||||||
You should have received a copy of the GNU Lesser General Public
|
|
||||||
License along with the GNU C Library; if not, see
|
|
||||||
<http://www.gnu.org/licenses/>. */
|
|
||||||
|
|
||||||
#ifndef _RWLOCK_INTERNAL_H
|
|
||||||
#define _RWLOCK_INTERNAL_H
|
|
||||||
|
|
||||||
struct __pthread_rwlock_arch_t
|
|
||||||
{
|
|
||||||
unsigned int __readers;
|
|
||||||
unsigned int __writers;
|
|
||||||
unsigned int __wrphase_futex;
|
|
||||||
unsigned int __writers_futex;
|
|
||||||
unsigned int __pad3;
|
|
||||||
unsigned int __pad4;
|
|
||||||
#if _MIPS_SIM == _ABI64
|
|
||||||
int __cur_writer;
|
|
||||||
int __shared;
|
|
||||||
unsigned long int __pad1;
|
|
||||||
unsigned long int __pad2;
|
|
||||||
/* FLAGS must stay at this position in the structure to maintain
|
|
||||||
binary compatibility. */
|
|
||||||
unsigned int __flags;
|
|
||||||
# else
|
|
||||||
# if __BYTE_ORDER == __BIG_ENDIAN
|
|
||||||
unsigned char __pad1;
|
|
||||||
unsigned char __pad2;
|
|
||||||
unsigned char __shared;
|
|
||||||
/* FLAGS must stay at this position in the structure to maintain
|
|
||||||
binary compatibility. */
|
|
||||||
unsigned char __flags;
|
|
||||||
# else
|
|
||||||
/* FLAGS must stay at this position in the structure to maintain
|
|
||||||
binary compatibility. */
|
|
||||||
unsigned char __flags;
|
|
||||||
unsigned char __shared;
|
|
||||||
unsigned char __pad1;
|
|
||||||
unsigned char __pad2;
|
|
||||||
# endif
|
|
||||||
int __cur_writer;
|
|
||||||
#endif
|
|
||||||
};
|
|
||||||
|
|
||||||
#if _MIPS_SIM == _ABI64
|
|
||||||
# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
|
|
||||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, __flags
|
|
||||||
#else
|
|
||||||
# if __BYTE_ORDER == __BIG_ENDIAN
|
|
||||||
# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
|
|
||||||
0, 0, 0, 0, 0, 0, 0, 0, 0, __flags, 0
|
|
||||||
# else
|
|
||||||
# define __PTHREAD_RWLOCK_INITIALIZER(__flags) \
|
|
||||||
0, 0, 0, 0, 0, 0, __flags, 0, 0, 0, 0
|
|
||||||
# endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif
|
|
||||||
@ -1,31 +0,0 @@
|
|||||||
/* Copyright (C) 2002-2021 Free Software Foundation, Inc.
|
|
||||||
This file is part of the GNU C Library.
|
|
||||||
|
|
||||||
The GNU C Library is free software; you can redistribute it and/or
|
|
||||||
modify it under the terms of the GNU Lesser General Public
|
|
||||||
License as published by the Free Software Foundation; either
|
|
||||||
version 2.1 of the License, or (at your option) any later version.
|
|
||||||
|
|
||||||
The GNU C Library is distributed in the hope that it will be useful,
|
|
||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
||||||
Lesser General Public License for more details.
|
|
||||||
|
|
||||||
You should have received a copy of the GNU Lesser General Public
|
|
||||||
License along with the GNU C Library. If not, see
|
|
||||||
<https://www.gnu.org/licenses/>. */
|
|
||||||
|
|
||||||
#include <sgidefs.h>
|
|
||||||
|
|
||||||
#define __WORDSIZE _MIPS_SZPTR
|
|
||||||
|
|
||||||
#if _MIPS_SIM == _ABI64
|
|
||||||
# define __WORDSIZE_TIME64_COMPAT32 1
|
|
||||||
#else
|
|
||||||
# define __WORDSIZE_TIME64_COMPAT32 0
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if __WORDSIZE == 32
|
|
||||||
#define __WORDSIZE32_SIZE_ULONG 0
|
|
||||||
#define __WORDSIZE32_PTRDIFF_LONG 0
|
|
||||||
#endif
|
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user