diff options
Diffstat (limited to 'sysdeps')
52 files changed, 241 insertions, 238 deletions
diff --git a/sysdeps/aarch64/bits/endian.h b/sysdeps/aarch64/bits/endian.h deleted file mode 100644 index 03801d3..0000000 --- a/sysdeps/aarch64/bits/endian.h +++ /dev/null @@ -1,30 +0,0 @@ -/* Copyright (C) 1997-2019 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 _ENDIAN_H -# error "Never use <bits/endian.h> directly; include <endian.h> instead." -#endif - -/* AArch64 can be either big or little endian. */ -#ifdef __AARCH64EB__ -# define __BYTE_ORDER __BIG_ENDIAN -#else -# define __BYTE_ORDER __LITTLE_ENDIAN -#endif - -#define __FLOAT_WORD_ORDER __BYTE_ORDER diff --git a/sysdeps/aarch64/bits/endianness.h b/sysdeps/aarch64/bits/endianness.h new file mode 100644 index 0000000..300ebc8 --- /dev/null +++ b/sysdeps/aarch64/bits/endianness.h @@ -0,0 +1,15 @@ +#ifndef _BITS_ENDIANNESS_H +#define _BITS_ENDIANNESS_H 1 + +#ifndef _BITS_ENDIAN_H +# error "Never use <bits/endianness.h> directly; include <endian.h> instead." +#endif + +/* AArch64 has selectable endianness. */ +#ifdef __AARCH64EB__ +# define __BYTE_ORDER __BIG_ENDIAN +#else +# define __BYTE_ORDER __LITTLE_ENDIAN +#endif + +#endif /* bits/endianness.h */ diff --git a/sysdeps/aarch64/nptl/bits/pthreadtypes-arch.h b/sysdeps/aarch64/nptl/bits/pthreadtypes-arch.h index 4cf3a68..758b127 100644 --- a/sysdeps/aarch64/nptl/bits/pthreadtypes-arch.h +++ b/sysdeps/aarch64/nptl/bits/pthreadtypes-arch.h @@ -19,7 +19,7 @@ #ifndef _BITS_PTHREADTYPES_ARCH_H #define _BITS_PTHREADTYPES_ARCH_H 1 -#include <endian.h> +#include <bits/endian.h> #ifdef __ILP32__ # define __SIZEOF_PTHREAD_ATTR_T 32 diff --git a/sysdeps/alpha/bits/endian.h b/sysdeps/alpha/bits/endian.h deleted file mode 100644 index 8a16e14..0000000 --- a/sysdeps/alpha/bits/endian.h +++ /dev/null @@ -1,7 +0,0 @@ -/* Alpha is little-endian. */ - -#ifndef _ENDIAN_H -# error "Never use <bits/endian.h> directly; include <endian.h> instead." -#endif - -#define __BYTE_ORDER __LITTLE_ENDIAN diff --git a/sysdeps/alpha/bits/endianness.h b/sysdeps/alpha/bits/endianness.h new file mode 100644 index 0000000..69f9a14 --- /dev/null +++ b/sysdeps/alpha/bits/endianness.h @@ -0,0 +1,11 @@ +#ifndef _BITS_ENDIANNESS_H +#define _BITS_ENDIANNESS_H 1 + +#ifndef _BITS_ENDIAN_H +# error "Never use <bits/endianness.h> directly; include <endian.h> instead." +#endif + +/* Alpha is little-endian. */ +#define __BYTE_ORDER __LITTLE_ENDIAN + +#endif /* bits/endianness.h */ diff --git a/sysdeps/arm/bits/endian.h b/sysdeps/arm/bits/endian.h deleted file mode 100644 index f49f6ab..0000000 --- a/sysdeps/arm/bits/endian.h +++ /dev/null @@ -1,10 +0,0 @@ -#ifndef _ENDIAN_H -# error "Never use <bits/endian.h> directly; include <endian.h> instead." -#endif - -/* ARM can be either big or little endian. */ -#ifdef __ARMEB__ -#define __BYTE_ORDER __BIG_ENDIAN -#else -#define __BYTE_ORDER __LITTLE_ENDIAN -#endif diff --git a/sysdeps/arm/bits/endianness.h b/sysdeps/arm/bits/endianness.h new file mode 100644 index 0000000..2d671ff --- /dev/null +++ b/sysdeps/arm/bits/endianness.h @@ -0,0 +1,15 @@ +#ifndef _BITS_ENDIANNESS_H +#define _BITS_ENDIANNESS_H 1 + +#ifndef _BITS_ENDIAN_H +# error "Never use <bits/endianness.h> directly; include <endian.h> instead." +#endif + +/* ARM has selectable endianness. */ +#ifdef __ARMEB__ +#define __BYTE_ORDER __BIG_ENDIAN +#else +#define __BYTE_ORDER __LITTLE_ENDIAN +#endif + +#endif /* bits/endianness.h */ diff --git a/sysdeps/arm/nptl/bits/pthreadtypes-arch.h b/sysdeps/arm/nptl/bits/pthreadtypes-arch.h index 70419c9..78b37eb 100644 --- a/sysdeps/arm/nptl/bits/pthreadtypes-arch.h +++ b/sysdeps/arm/nptl/bits/pthreadtypes-arch.h @@ -18,7 +18,7 @@ #ifndef _BITS_PTHREADTYPES_ARCH_H #define _BITS_PTHREADTYPES_ARCH_H 1 -#include <endian.h> +#include <bits/endian.h> #define __SIZEOF_PTHREAD_ATTR_T 36 #define __SIZEOF_PTHREAD_MUTEX_T 24 diff --git a/sysdeps/csky/bits/endian.h b/sysdeps/csky/bits/endian.h deleted file mode 100644 index 51df38d..0000000 --- a/sysdeps/csky/bits/endian.h +++ /dev/null @@ -1,9 +0,0 @@ -#ifndef _ENDIAN_H -# error "Never use <bits/endian.h> directly; include <endian.h> instead." -#endif - -#ifdef __CSKYBE__ -# error "Big endian not supported for C-SKY." -#else -# define __BYTE_ORDER __LITTLE_ENDIAN -#endif diff --git a/sysdeps/csky/bits/endianness.h b/sysdeps/csky/bits/endianness.h new file mode 100644 index 0000000..ad20cf6 --- /dev/null +++ b/sysdeps/csky/bits/endianness.h @@ -0,0 +1,14 @@ +#ifndef _BITS_ENDIANNESS_H +#define _BITS_ENDIANNESS_H 1 + +#ifndef _BITS_ENDIAN_H +# error "Never use <bits/endianness.h> directly; include <endian.h> instead." +#endif + +#ifdef __CSKYBE__ +# error "Big endian not supported for C-SKY." +#else +# define __BYTE_ORDER __LITTLE_ENDIAN +#endif + +#endif /* bits/endianness.h */ diff --git a/sysdeps/csky/nptl/bits/pthreadtypes-arch.h b/sysdeps/csky/nptl/bits/pthreadtypes-arch.h index 5260c58..58be51d 100644 --- a/sysdeps/csky/nptl/bits/pthreadtypes-arch.h +++ b/sysdeps/csky/nptl/bits/pthreadtypes-arch.h @@ -19,7 +19,7 @@ #ifndef _BITS_PTHREADTYPES_ARCH_H #define _BITS_PTHREADTYPES_ARCH_H 1 -#include <endian.h> +#include <bits/endian.h> #define __SIZEOF_PTHREAD_ATTR_T 36 #define __SIZEOF_PTHREAD_MUTEX_T 24 diff --git a/sysdeps/hppa/bits/endian.h b/sysdeps/hppa/bits/endian.h deleted file mode 100644 index 585db0c..0000000 --- a/sysdeps/hppa/bits/endian.h +++ /dev/null @@ -1,7 +0,0 @@ -/* hppa1.1 big-endian. */ - -#ifndef _ENDIAN_H -# error "Never use <bits/endian.h> directly; include <endian.h> instead." -#endif - -#define __BYTE_ORDER __BIG_ENDIAN diff --git a/sysdeps/hppa/bits/endianness.h b/sysdeps/hppa/bits/endianness.h new file mode 100644 index 0000000..96fd5ae --- /dev/null +++ b/sysdeps/hppa/bits/endianness.h @@ -0,0 +1,11 @@ +#ifndef _BITS_ENDIANNESS_H +#define _BITS_ENDIANNESS_H 1 + +#ifndef _BITS_ENDIAN_H +# error "Never use <bits/endianness.h> directly; include <endian.h> instead." +#endif + +/* HP-PA is big-endian. */ +#define __BYTE_ORDER __BIG_ENDIAN + +#endif /* bits/endianness.h */ diff --git a/sysdeps/ia64/bits/endianness.h b/sysdeps/ia64/bits/endianness.h new file mode 100644 index 0000000..70c211e --- /dev/null +++ b/sysdeps/ia64/bits/endianness.h @@ -0,0 +1,11 @@ +#ifndef _BITS_ENDIANNESS_H +#define _BITS_ENDIANNESS_H 1 + +#ifndef _BITS_ENDIAN_H +# error "Never use <bits/endianness.h> directly; include <endian.h> instead." +#endif + +/* IA64 is little-endian. */ +#define __BYTE_ORDER __LITTLE_ENDIAN + +#endif /* bits/endianness.h */ diff --git a/sysdeps/ia64/ieee754.h b/sysdeps/ia64/ieee754.h index 21c4149..610631a 100644 --- a/sysdeps/ia64/ieee754.h +++ b/sysdeps/ia64/ieee754.h @@ -16,11 +16,11 @@ <https://www.gnu.org/licenses/>. */ #ifndef _IEEE754_H - #define _IEEE754_H 1 + #include <features.h> -#include <endian.h> +#include <bits/endian.h> __BEGIN_DECLS diff --git a/sysdeps/ieee754/ieee754.h b/sysdeps/ieee754/ieee754.h index 581fe5c..7605d0d 100644 --- a/sysdeps/ieee754/ieee754.h +++ b/sysdeps/ieee754/ieee754.h @@ -16,11 +16,11 @@ <https://www.gnu.org/licenses/>. */ #ifndef _IEEE754_H - #define _IEEE754_H 1 + #include <features.h> -#include <endian.h> +#include <bits/endian.h> __BEGIN_DECLS diff --git a/sysdeps/ieee754/ldbl-128/ieee754.h b/sysdeps/ieee754/ldbl-128/ieee754.h index 87dc1d7..47f11d8 100644 --- a/sysdeps/ieee754/ldbl-128/ieee754.h +++ b/sysdeps/ieee754/ldbl-128/ieee754.h @@ -16,11 +16,11 @@ <https://www.gnu.org/licenses/>. */ #ifndef _IEEE754_H - #define _IEEE754_H 1 + #include <features.h> -#include <endian.h> +#include <bits/endian.h> __BEGIN_DECLS diff --git a/sysdeps/ieee754/ldbl-128ibm/ieee754.h b/sysdeps/ieee754/ldbl-128ibm/ieee754.h index 35f2289..606b4c7 100644 --- a/sysdeps/ieee754/ldbl-128ibm/ieee754.h +++ b/sysdeps/ieee754/ldbl-128ibm/ieee754.h @@ -16,11 +16,11 @@ <https://www.gnu.org/licenses/>. */ #ifndef _IEEE754_H - #define _IEEE754_H 1 + #include <features.h> -#include <endian.h> +#include <bits/endian.h> __BEGIN_DECLS diff --git a/sysdeps/m68k/bits/endian.h b/sysdeps/m68k/bits/endian.h deleted file mode 100644 index bf4ecb6..0000000 --- a/sysdeps/m68k/bits/endian.h +++ /dev/null @@ -1,7 +0,0 @@ -/* m68k is big-endian. */ - -#ifndef _ENDIAN_H -# error "Never use <bits/endian.h> directly; include <endian.h> instead." -#endif - -#define __BYTE_ORDER __BIG_ENDIAN diff --git a/sysdeps/m68k/bits/endianness.h b/sysdeps/m68k/bits/endianness.h new file mode 100644 index 0000000..7e5f0d2 --- /dev/null +++ b/sysdeps/m68k/bits/endianness.h @@ -0,0 +1,11 @@ +#ifndef _BITS_ENDIANNESS_H +#define _BITS_ENDIANNESS_H 1 + +#ifndef _BITS_ENDIAN_H +# error "Never use <bits/endianness.h> directly; include <endian.h> instead." +#endif + +/* m68k is big-endian. */ +#define __BYTE_ORDER __BIG_ENDIAN + +#endif /* bits/endianness.h */ diff --git a/sysdeps/m68k/nptl/bits/pthreadtypes-arch.h b/sysdeps/m68k/nptl/bits/pthreadtypes-arch.h index 8199076..792cb32 100644 --- a/sysdeps/m68k/nptl/bits/pthreadtypes-arch.h +++ b/sysdeps/m68k/nptl/bits/pthreadtypes-arch.h @@ -19,7 +19,7 @@ #ifndef _BITS_PTHREADTYPES_ARCH_H #define _BITS_PTHREADTYPES_ARCH_H 1 -#include <endian.h> +#include <bits/endian.h> #define __SIZEOF_PTHREAD_ATTR_T 36 #define __SIZEOF_PTHREAD_MUTEX_T 24 diff --git a/sysdeps/microblaze/bits/endian.h b/sysdeps/microblaze/bits/endian.h deleted file mode 100644 index 6e961a5..0000000 --- a/sysdeps/microblaze/bits/endian.h +++ /dev/null @@ -1,30 +0,0 @@ -/* Copyright (C) 1997-2019 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 _ENDIAN_H -# error "Never use <bits/endian.h> directly; include <endian.h> instead." -#endif - -/* MicroBlaze can be either big or little endian. */ -#ifdef _BIG_ENDIAN -# define __BYTE_ORDER __BIG_ENDIAN -# define __FLOAT_WORD_ORDER __BIG_ENDIAN -#else -# define __BYTE_ORDER __LITTLE_ENDIAN -# define __FLOAT_WORD_ORDER __LITTLE_ENDIAN -#endif diff --git a/sysdeps/microblaze/bits/endianness.h b/sysdeps/microblaze/bits/endianness.h new file mode 100644 index 0000000..c4bb7e5 --- /dev/null +++ b/sysdeps/microblaze/bits/endianness.h @@ -0,0 +1,15 @@ +#ifndef _BITS_ENDIANNESS_H +#define _BITS_ENDIANNESS_H 1 + +#ifndef _BITS_ENDIAN_H +# error "Never use <bits/endianness.h> directly; include <endian.h> instead." +#endif + +/* MicroBlaze has selectable endianness. */ +#ifdef _BIG_ENDIAN +# define __BYTE_ORDER __BIG_ENDIAN +#else +# define __BYTE_ORDER __LITTLE_ENDIAN +#endif + +#endif /* bits/endianness.h */ diff --git a/sysdeps/microblaze/nptl/bits/pthreadtypes-arch.h b/sysdeps/microblaze/nptl/bits/pthreadtypes-arch.h index b1ae4aa..7cf1ff6 100644 --- a/sysdeps/microblaze/nptl/bits/pthreadtypes-arch.h +++ b/sysdeps/microblaze/nptl/bits/pthreadtypes-arch.h @@ -19,7 +19,7 @@ #ifndef _BITS_PTHREADTYPES_ARCH_H # define _BITS_PTHREADTYPES_ARCH_H 1 -# include <endian.h> +# include <bits/endian.h> # define __SIZEOF_PTHREAD_ATTR_T 36 # define __SIZEOF_PTHREAD_MUTEX_T 24 diff --git a/sysdeps/mips/bits/endian.h b/sysdeps/mips/bits/endian.h deleted file mode 100644 index 1260597..0000000 --- a/sysdeps/mips/bits/endian.h +++ /dev/null @@ -1,15 +0,0 @@ -/* The MIPS architecture has selectable endianness. - It exists in both little and big endian flavours and we - want to be able to share the installed header files between - both, so we define __BYTE_ORDER based on GCC's predefines. */ - -#ifndef _ENDIAN_H -# error "Never use <bits/endian.h> directly; include <endian.h> instead." -#endif - -#ifdef __MIPSEB -# define __BYTE_ORDER __BIG_ENDIAN -#endif -#ifdef __MIPSEL -# define __BYTE_ORDER __LITTLE_ENDIAN -#endif diff --git a/sysdeps/mips/bits/endianness.h b/sysdeps/mips/bits/endianness.h new file mode 100644 index 0000000..09e138b --- /dev/null +++ b/sysdeps/mips/bits/endianness.h @@ -0,0 +1,16 @@ +#ifndef _BITS_ENDIANNESS_H +#define _BITS_ENDIANNESS_H 1 + +#ifndef _BITS_ENDIAN_H +# error "Never use <bits/endianness.h> directly; include <endian.h> instead." +#endif + +/* MIPS has selectable endianness. */ +#ifdef __MIPSEB +# define __BYTE_ORDER __BIG_ENDIAN +#endif +#ifdef __MIPSEL +# define __BYTE_ORDER __LITTLE_ENDIAN +#endif + +#endif /* bits/endianness.h */ diff --git a/sysdeps/mips/ieee754/ieee754.h b/sysdeps/mips/ieee754/ieee754.h index ebaf8d8..250fa5e 100644 --- a/sysdeps/mips/ieee754/ieee754.h +++ b/sysdeps/mips/ieee754/ieee754.h @@ -16,13 +16,16 @@ <https://www.gnu.org/licenses/>. */ #ifndef _IEEE754_H - #define _IEEE754_H 1 + #include <features.h> -#include <endian.h> +#include <bits/endian.h> -#include <float.h> +#ifndef __LDBL_MANT_DIG__ +# include <float.h> +# define __LDBL_MANT_DIG__ __LDBL_MANT_DIG__ +#endif __BEGIN_DECLS @@ -127,7 +130,7 @@ union ieee754_double #define IEEE754_DOUBLE_BIAS 0x3ff /* Added to exponent. */ -#if LDBL_MANT_DIG == 113 +#if __LDBL_MANT_DIG__ == 113 union ieee854_long_double { @@ -184,7 +187,7 @@ union ieee854_long_double #define IEEE854_LONG_DOUBLE_BIAS 0x3fff /* Added to exponent. */ -#elif LDBL_MANT_DIG == 64 +#elif __LDBL_MANT_DIG__ == 64 union ieee854_long_double { @@ -253,7 +256,7 @@ union ieee854_long_double #define IEEE854_LONG_DOUBLE_BIAS 0x3fff -#elif LDBL_MANT_DIG == 53 +#elif __LDBL_MANT_DIG__ == 53 union ieee854_long_double { @@ -316,7 +319,7 @@ union ieee854_long_double #define IEEE854_LONG_DOUBLE_BIAS 0x3ff /* Added to exponent. */ -#endif /* LDBL_MANT_DIG == 53 */ +#endif /* __LDBL_MANT_DIG__ == 53 */ __END_DECLS diff --git a/sysdeps/mips/nptl/bits/pthreadtypes-arch.h b/sysdeps/mips/nptl/bits/pthreadtypes-arch.h index b32e888..0bb7035 100644 --- a/sysdeps/mips/nptl/bits/pthreadtypes-arch.h +++ b/sysdeps/mips/nptl/bits/pthreadtypes-arch.h @@ -19,7 +19,7 @@ #ifndef _BITS_PTHREADTYPES_ARCH_H #define _BITS_PTHREADTYPES_ARCH_H 1 -#include <endian.h> +#include <bits/endian.h> #if _MIPS_SIM == _ABI64 # define __SIZEOF_PTHREAD_ATTR_T 56 diff --git a/sysdeps/nios2/bits/endian.h b/sysdeps/nios2/bits/endian.h deleted file mode 100644 index 164f9e4..0000000 --- a/sysdeps/nios2/bits/endian.h +++ /dev/null @@ -1,12 +0,0 @@ -/* The Nios II architecture has selectable endianness. */ - -#ifndef _ENDIAN_H -# error "Never use <bits/endian.h> directly; include <endian.h> instead." -#endif - -#ifdef __nios2_big_endian__ -# define __BYTE_ORDER __BIG_ENDIAN -#endif -#ifdef __nios2_little_endian__ -# define __BYTE_ORDER __LITTLE_ENDIAN -#endif diff --git a/sysdeps/nios2/bits/endianness.h b/sysdeps/nios2/bits/endianness.h new file mode 100644 index 0000000..87e66eb --- /dev/null +++ b/sysdeps/nios2/bits/endianness.h @@ -0,0 +1,16 @@ +#ifndef _BITS_ENDIANNESS_H +#define _BITS_ENDIANNESS_H 1 + +#ifndef _BITS_ENDIAN_H +# error "Never use <bits/endianness.h> directly; include <endian.h> instead." +#endif + +/* Nios II has selectable endianness. */ +#ifdef __nios2_big_endian__ +# define __BYTE_ORDER __BIG_ENDIAN +#endif +#ifdef __nios2_little_endian__ +# define __BYTE_ORDER __LITTLE_ENDIAN +#endif + +#endif /* bits/endianness.h */ diff --git a/sysdeps/nios2/nptl/bits/pthreadtypes-arch.h b/sysdeps/nios2/nptl/bits/pthreadtypes-arch.h index 8cd8bbe..dcd3499 100644 --- a/sysdeps/nios2/nptl/bits/pthreadtypes-arch.h +++ b/sysdeps/nios2/nptl/bits/pthreadtypes-arch.h @@ -19,7 +19,7 @@ #ifndef _BITS_PTHREADTYPES_ARCH_H #define _BITS_PTHREADTYPES_ARCH_H 1 -#include <endian.h> +#include <bits/endian.h> #define __SIZEOF_PTHREAD_ATTR_T 36 #define __SIZEOF_PTHREAD_MUTEX_T 24 diff --git a/sysdeps/nptl/pthread.h b/sysdeps/nptl/pthread.h index ceb724d3..467b446 100644 --- a/sysdeps/nptl/pthread.h +++ b/sysdeps/nptl/pthread.h @@ -19,10 +19,10 @@ #define _PTHREAD_H 1 #include <features.h> -#include <endian.h> #include <sched.h> #include <time.h> +#include <bits/endian.h> #include <bits/pthreadtypes.h> #include <bits/setjmp.h> #include <bits/wordsize.h> diff --git a/sysdeps/powerpc/bits/endian.h b/sysdeps/powerpc/bits/endian.h deleted file mode 100644 index c82f7ad..0000000 --- a/sysdeps/powerpc/bits/endian.h +++ /dev/null @@ -1,36 +0,0 @@ -/* Copyright (C) 1997-2019 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/>. */ - -/* PowerPC can be little or big endian. Hopefully gcc will know... */ - -#ifndef _ENDIAN_H -# error "Never use <bits/endian.h> directly; include <endian.h> instead." -#endif - -#if defined __BIG_ENDIAN__ || defined _BIG_ENDIAN -# if defined __LITTLE_ENDIAN__ || defined _LITTLE_ENDIAN -# error Both BIG_ENDIAN and LITTLE_ENDIAN defined! -# endif -# define __BYTE_ORDER __BIG_ENDIAN -#else -# if defined __LITTLE_ENDIAN__ || defined _LITTLE_ENDIAN -# define __BYTE_ORDER __LITTLE_ENDIAN -# else -# warning Cannot determine current byte order, assuming big-endian. -# define __BYTE_ORDER __BIG_ENDIAN -# endif -#endif diff --git a/sysdeps/powerpc/bits/endianness.h b/sysdeps/powerpc/bits/endianness.h new file mode 100644 index 0000000..3e77352 --- /dev/null +++ b/sysdeps/powerpc/bits/endianness.h @@ -0,0 +1,16 @@ +#ifndef _BITS_ENDIANNESS_H +#define _BITS_ENDIANNESS_H 1 + +#ifndef _BITS_ENDIAN_H +# error "Never use <bits/endianness.h> directly; include <endian.h> instead." +#endif + +/* PowerPC has selectable endianness. */ +#if defined __BIG_ENDIAN__ || defined _BIG_ENDIAN +# define __BYTE_ORDER __BIG_ENDIAN +#endif +#if defined __LITTLE_ENDIAN__ || defined _LITTLE_ENDIAN +# define __BYTE_ORDER __LITTLE_ENDIAN +#endif + +#endif /* bits/endianness.h */ diff --git a/sysdeps/riscv/bits/endian.h b/sysdeps/riscv/bits/endian.h deleted file mode 100644 index 4aaf559..0000000 --- a/sysdeps/riscv/bits/endian.h +++ /dev/null @@ -1,5 +0,0 @@ -#ifndef _ENDIAN_H -# error "Never use <bits/endian.h> directly; include <endian.h> instead." -#endif - -#define __BYTE_ORDER __LITTLE_ENDIAN diff --git a/sysdeps/riscv/bits/endianness.h b/sysdeps/riscv/bits/endianness.h new file mode 100644 index 0000000..952d085 --- /dev/null +++ b/sysdeps/riscv/bits/endianness.h @@ -0,0 +1,11 @@ +#ifndef _BITS_ENDIANNESS_H +#define _BITS_ENDIANNESS_H 1 + +#ifndef _BITS_ENDIAN_H +# error "Never use <bits/endianness.h> directly; include <endian.h> instead." +#endif + +/* RISC-V is little-endian. */ +#define __BYTE_ORDER __LITTLE_ENDIAN + +#endif /* bits/endianness.h */ diff --git a/sysdeps/riscv/nptl/bits/pthreadtypes-arch.h b/sysdeps/riscv/nptl/bits/pthreadtypes-arch.h index 5834439..33f0ee4 100644 --- a/sysdeps/riscv/nptl/bits/pthreadtypes-arch.h +++ b/sysdeps/riscv/nptl/bits/pthreadtypes-arch.h @@ -19,7 +19,7 @@ #ifndef _BITS_PTHREADTYPES_ARCH_H #define _BITS_PTHREADTYPES_ARCH_H 1 -#include <endian.h> +#include <bits/endian.h> #if __riscv_xlen == 64 # define __SIZEOF_PTHREAD_ATTR_T 56 diff --git a/sysdeps/s390/bits/endian.h b/sysdeps/s390/bits/endian.h deleted file mode 100644 index ac27f01..0000000 --- a/sysdeps/s390/bits/endian.h +++ /dev/null @@ -1,7 +0,0 @@ -/* s390 is big-endian */ - -#ifndef _ENDIAN_H -# error "Never use <bits/endian.h> directly; include <endian.h> instead." -#endif - -#define __BYTE_ORDER __BIG_ENDIAN diff --git a/sysdeps/s390/bits/endianness.h b/sysdeps/s390/bits/endianness.h new file mode 100644 index 0000000..c2d34e1 --- /dev/null +++ b/sysdeps/s390/bits/endianness.h @@ -0,0 +1,11 @@ +#ifndef _BITS_ENDIANNESS_H +#define _BITS_ENDIANNESS_H 1 + +#ifndef _BITS_ENDIAN_H +# error "Never use <bits/endianness.h> directly; include <endian.h> instead." +#endif + +/* S/390 is big-endian. */ +#define __BYTE_ORDER __BIG_ENDIAN + +#endif /* bits/endianness.h */ diff --git a/sysdeps/sh/bits/endian.h b/sysdeps/sh/bits/endian.h deleted file mode 100644 index 1fef1ff..0000000 --- a/sysdeps/sh/bits/endian.h +++ /dev/null @@ -1,13 +0,0 @@ -/* SH is bi-endian but with a big-endian FPU. */ - -#ifndef _ENDIAN_H -# error "Never use <bits/endian.h> directly; include <endian.h> instead." -#endif - -#ifdef __LITTLE_ENDIAN__ -#define __BYTE_ORDER __LITTLE_ENDIAN -#define __FLOAT_WORD_ORDER __LITTLE_ENDIAN -#else -#define __BYTE_ORDER __BIG_ENDIAN -#define __FLOAT_WORD_ORDER __BIG_ENDIAN -#endif diff --git a/sysdeps/sh/bits/endianness.h b/sysdeps/sh/bits/endianness.h new file mode 100644 index 0000000..45c7c83 --- /dev/null +++ b/sysdeps/sh/bits/endianness.h @@ -0,0 +1,15 @@ +#ifndef _BITS_ENDIANNESS_H +#define _BITS_ENDIANNESS_H 1 + +#ifndef _BITS_ENDIAN_H +# error "Never use <bits/endianness.h> directly; include <endian.h> instead." +#endif + +/* SH has selectable endianness. */ +#ifdef __LITTLE_ENDIAN__ +#define __BYTE_ORDER __LITTLE_ENDIAN +#else +#define __BYTE_ORDER __BIG_ENDIAN +#endif + +#endif /* bits/endianness.h */ diff --git a/sysdeps/sh/nptl/bits/pthreadtypes-arch.h b/sysdeps/sh/nptl/bits/pthreadtypes-arch.h index 6c9485d..219a861 100644 --- a/sysdeps/sh/nptl/bits/pthreadtypes-arch.h +++ b/sysdeps/sh/nptl/bits/pthreadtypes-arch.h @@ -18,7 +18,7 @@ #ifndef _BITS_PTHREADTYPES_ARCH_H #define _BITS_PTHREADTYPES_ARCH_H 1 -#include <endian.h> +#include <bits/endian.h> #define __SIZEOF_PTHREAD_ATTR_T 36 #define __SIZEOF_PTHREAD_MUTEX_T 24 diff --git a/sysdeps/sparc/bits/endian.h b/sysdeps/sparc/bits/endianness.h index 8acfdf5..0b6f5bf 100644 --- a/sysdeps/sparc/bits/endian.h +++ b/sysdeps/sparc/bits/endianness.h @@ -1,12 +1,16 @@ -/* Sparc is big-endian, but v9 supports endian conversion on loads/stores - and GCC supports such a mode. Be prepared. */ +#ifndef _BITS_ENDIANNESS_H +#define _BITS_ENDIANNESS_H 1 -#ifndef _ENDIAN_H -# error "Never use <bits/endian.h> directly; include <endian.h> instead." +#ifndef _BITS_ENDIAN_H +# error "Never use <bits/endianness.h> directly; include <endian.h> instead." #endif +/* Sparc is big-endian, but v9 supports endian conversion on loads/stores + and GCC supports such a mode. Be prepared. */ #ifdef __LITTLE_ENDIAN__ # define __BYTE_ORDER __LITTLE_ENDIAN #else # define __BYTE_ORDER __BIG_ENDIAN #endif + +#endif /* bits/endianness.h */ diff --git a/sysdeps/sparc/sparc32/ieee754.h b/sysdeps/sparc/sparc32/ieee754.h index 87dc1d7..47f11d8 100644 --- a/sysdeps/sparc/sparc32/ieee754.h +++ b/sysdeps/sparc/sparc32/ieee754.h @@ -16,11 +16,11 @@ <https://www.gnu.org/licenses/>. */ #ifndef _IEEE754_H - #define _IEEE754_H 1 + #include <features.h> -#include <endian.h> +#include <bits/endian.h> __BEGIN_DECLS diff --git a/sysdeps/unix/sysv/linux/generic/bits/stat.h b/sysdeps/unix/sysv/linux/generic/bits/stat.h index 62aeea5..1565f3f 100644 --- a/sysdeps/unix/sysv/linux/generic/bits/stat.h +++ b/sysdeps/unix/sysv/linux/generic/bits/stat.h @@ -23,7 +23,7 @@ #ifndef _BITS_STAT_H #define _BITS_STAT_H 1 -#include <endian.h> +#include <bits/endian.h> #include <bits/wordsize.h> /* 64-bit libc uses the kernel's 'struct stat', accessed via the diff --git a/sysdeps/unix/sysv/linux/generic/bits/statfs.h b/sysdeps/unix/sysv/linux/generic/bits/statfs.h index 3472084..c4069ab 100644 --- a/sysdeps/unix/sysv/linux/generic/bits/statfs.h +++ b/sysdeps/unix/sysv/linux/generic/bits/statfs.h @@ -20,7 +20,7 @@ # error "Never include <bits/statfs.h> directly; use <sys/statfs.h> instead." #endif -#include <endian.h> +#include <bits/endian.h> #include <bits/types.h> #include <bits/wordsize.h> diff --git a/sysdeps/unix/sysv/linux/hppa/pthread.h b/sysdeps/unix/sysv/linux/hppa/pthread.h index e168901..424135c 100644 --- a/sysdeps/unix/sysv/linux/hppa/pthread.h +++ b/sysdeps/unix/sysv/linux/hppa/pthread.h @@ -19,7 +19,6 @@ #define _PTHREAD_H 1 #include <features.h> -#include <endian.h> #include <sched.h> #include <time.h> diff --git a/sysdeps/unix/sysv/linux/ia64/bits/endian.h b/sysdeps/unix/sysv/linux/ia64/bits/endian.h deleted file mode 100644 index 98a5e23..0000000 --- a/sysdeps/unix/sysv/linux/ia64/bits/endian.h +++ /dev/null @@ -1,7 +0,0 @@ -/* Linux/ia64 is little-endian. */ - -#ifndef _ENDIAN_H -# error "Never use <bits/endian.h> directly; include <endian.h> instead." -#endif - -#define __BYTE_ORDER __LITTLE_ENDIAN diff --git a/sysdeps/unix/sysv/linux/powerpc/htm.h b/sysdeps/unix/sysv/linux/powerpc/htm.h index 75e3eb0..f17d751 100644 --- a/sysdeps/unix/sysv/linux/powerpc/htm.h +++ b/sysdeps/unix/sysv/linux/powerpc/htm.h @@ -50,7 +50,7 @@ #else -#include <endian.h> +#include <bits/endian.h> /* Official HTM intrinsics interface matching GCC, but works on older GCC compatible compilers and binutils. diff --git a/sysdeps/unix/sysv/linux/sys/acct.h b/sysdeps/unix/sysv/linux/sys/acct.h index 5db43fd..1d2f224 100644 --- a/sysdeps/unix/sysv/linux/sys/acct.h +++ b/sysdeps/unix/sysv/linux/sys/acct.h @@ -20,7 +20,7 @@ #include <sys/types.h> #include <stdint.h> -#include <endian.h> +#include <bits/endian.h> #include <bits/types/time_t.h> __BEGIN_DECLS diff --git a/sysdeps/x86/bits/endian.h b/sysdeps/x86/bits/endian.h deleted file mode 100644 index 5a56c72..0000000 --- a/sysdeps/x86/bits/endian.h +++ /dev/null @@ -1,7 +0,0 @@ -/* i386/x86_64 are little-endian. */ - -#ifndef _ENDIAN_H -# error "Never use <bits/endian.h> directly; include <endian.h> instead." -#endif - -#define __BYTE_ORDER __LITTLE_ENDIAN diff --git a/sysdeps/x86/bits/endianness.h b/sysdeps/x86/bits/endianness.h new file mode 100644 index 0000000..962a9ae --- /dev/null +++ b/sysdeps/x86/bits/endianness.h @@ -0,0 +1,11 @@ +#ifndef _BITS_ENDIANNESS_H +#define _BITS_ENDIANNESS_H 1 + +#ifndef _BITS_ENDIAN_H +# error "Never use <bits/endianness.h> directly; include <endian.h> instead." +#endif + +/* i386/x86_64 are little-endian. */ +#define __BYTE_ORDER __LITTLE_ENDIAN + +#endif /* bits/endianness.h */ |