aboutsummaryrefslogtreecommitdiff
path: root/lib/libc/include/powerpc-linux-gnu/bits
diff options
context:
space:
mode:
authorAndrew Kelley <andrew@ziglang.org>2020-08-23 22:47:13 -0400
committerGitHub <noreply@github.com>2020-08-23 22:47:13 -0400
commitbb9c3118ed5fdc16b8e2d9882375005c2a62d0cc (patch)
tree2205d94aafa9f1a2df872174f7a9d3efb87c5faa /lib/libc/include/powerpc-linux-gnu/bits
parent7015d84e0ca6f02fede45621571084df98dda712 (diff)
parent53a2431713afc5e442479b5d8a3108e29eb8124b (diff)
downloadzig-bb9c3118ed5fdc16b8e2d9882375005c2a62d0cc.tar.gz
zig-bb9c3118ed5fdc16b8e2d9882375005c2a62d0cc.zip
Merge pull request #6137 from Jan200101/update/glibc-2.32
Update to glibc 2.32
Diffstat (limited to 'lib/libc/include/powerpc-linux-gnu/bits')
-rw-r--r--lib/libc/include/powerpc-linux-gnu/bits/fenvinline.h102
-rw-r--r--lib/libc/include/powerpc-linux-gnu/bits/hwcap.h4
-rw-r--r--lib/libc/include/powerpc-linux-gnu/bits/iscanonical.h2
-rw-r--r--lib/libc/include/powerpc-linux-gnu/bits/long-double.h2
-rw-r--r--lib/libc/include/powerpc-linux-gnu/bits/msq-pad.h26
-rw-r--r--lib/libc/include/powerpc-linux-gnu/bits/sem-pad.h26
-rw-r--r--lib/libc/include/powerpc-linux-gnu/bits/semaphore.h5
-rw-r--r--lib/libc/include/powerpc-linux-gnu/bits/shm-pad.h28
8 files changed, 7 insertions, 188 deletions
diff --git a/lib/libc/include/powerpc-linux-gnu/bits/fenvinline.h b/lib/libc/include/powerpc-linux-gnu/bits/fenvinline.h
deleted file mode 100644
index 695d3a395d..0000000000
--- a/lib/libc/include/powerpc-linux-gnu/bits/fenvinline.h
+++ /dev/null
@@ -1,102 +0,0 @@
-/* Inline floating-point environment handling functions for powerpc.
- Copyright (C) 1995-2020 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/>. */
-
-#if defined __GNUC__ && !defined _SOFT_FLOAT && !defined __NO_FPRS__
-
-/* Inline definitions for fegetround. */
-# define __fegetround_ISA300() \
- (__extension__ ({ \
- union { double __d; unsigned long long __ll; } __u; \
- __asm__ __volatile__ ( \
- ".machine push; .machine \"power9\"; mffsl %0; .machine pop" \
- : "=f" (__u.__d)); \
- __u.__ll & 0x0000000000000003LL; \
- }))
-
-# define __fegetround_ISA2() \
- (__extension__ ({ \
- int __fegetround_result; \
- __asm__ __volatile__ ("mcrfs 7,7 ; mfcr %0" \
- : "=r"(__fegetround_result) : : "cr7"); \
- __fegetround_result & 3; \
- }))
-
-# ifdef _ARCH_PWR9
-# define __fegetround() __fegetround_ISA300()
-# elif defined __BUILTIN_CPU_SUPPORTS__
-# define __fegetround() \
- (__glibc_likely (__builtin_cpu_supports ("arch_3_00")) \
- ? __fegetround_ISA300() \
- : __fegetround_ISA2() \
- )
-# else
-# define __fegetround() __fegetround_ISA2()
-# endif
-
-# define fegetround() __fegetround ()
-
-# ifndef __NO_MATH_INLINES
-/* The weird 'i#*X' constraints on the following suppress a gcc
- warning when __excepts is not a constant. Otherwise, they mean the
- same as just plain 'i'. */
-
-# if __GNUC_PREREQ(3, 4)
-
-/* Inline definition for feraiseexcept. */
-# define feraiseexcept(__excepts) \
- (__extension__ ({ \
- int __e = __excepts; \
- int __ret; \
- if (__builtin_constant_p (__e) \
- && (__e & (__e - 1)) == 0 \
- && __e != FE_INVALID) \
- { \
- if (__e != 0) \
- __asm__ __volatile__ ("mtfsb1 %0" \
- : : "i#*X" (__builtin_clz (__e))); \
- __ret = 0; \
- } \
- else \
- __ret = feraiseexcept (__e); \
- __ret; \
- }))
-
-/* Inline definition for feclearexcept. */
-# define feclearexcept(__excepts) \
- (__extension__ ({ \
- int __e = __excepts; \
- int __ret; \
- if (__builtin_constant_p (__e) \
- && (__e & (__e - 1)) == 0 \
- && __e != FE_INVALID) \
- { \
- if (__e != 0) \
- __asm__ __volatile__ ("mtfsb0 %0" \
- : : "i#*X" (__builtin_clz (__e))); \
- __ret = 0; \
- } \
- else \
- __ret = feclearexcept (__e); \
- __ret; \
- }))
-
-# endif /* __GNUC_PREREQ(3, 4). */
-
-# endif /* !__NO_MATH_INLINES. */
-
-#endif /* __GNUC__ && !_SOFT_FLOAT && !__NO_FPRS__ */ \ No newline at end of file
diff --git a/lib/libc/include/powerpc-linux-gnu/bits/hwcap.h b/lib/libc/include/powerpc-linux-gnu/bits/hwcap.h
index 335efbd0aa..5719e16ac2 100644
--- a/lib/libc/include/powerpc-linux-gnu/bits/hwcap.h
+++ b/lib/libc/include/powerpc-linux-gnu/bits/hwcap.h
@@ -73,4 +73,6 @@
#define PPC_FEATURE2_DARN 0x00200000 /* darn instruction. */
#define PPC_FEATURE2_SCV 0x00100000 /* scv syscall. */
#define PPC_FEATURE2_HTM_NO_SUSPEND 0x00080000 /* TM without suspended
- state. */ \ No newline at end of file
+ state. */
+#define PPC_FEATURE2_ARCH_3_1 0x00040000 /* ISA 3.1. */
+#define PPC_FEATURE2_MMA 0x00020000 /* Matrix-Multiply Assist. */ \ No newline at end of file
diff --git a/lib/libc/include/powerpc-linux-gnu/bits/iscanonical.h b/lib/libc/include/powerpc-linux-gnu/bits/iscanonical.h
index 8818d6fa08..c94a446c49 100644
--- a/lib/libc/include/powerpc-linux-gnu/bits/iscanonical.h
+++ b/lib/libc/include/powerpc-linux-gnu/bits/iscanonical.h
@@ -20,7 +20,7 @@
# error "Never use <bits/iscanonical.h> directly; include <math.h> instead."
#endif
-#ifdef __NO_LONG_DOUBLE_MATH
+#if defined (__NO_LONG_DOUBLE_MATH) || __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 1
# define iscanonical(x) ((void) (__typeof (x)) (x), 1)
#else
extern int __iscanonicall (long double __x)
diff --git a/lib/libc/include/powerpc-linux-gnu/bits/long-double.h b/lib/libc/include/powerpc-linux-gnu/bits/long-double.h
index 391f7d62fe..b37f1929bd 100644
--- a/lib/libc/include/powerpc-linux-gnu/bits/long-double.h
+++ b/lib/libc/include/powerpc-linux-gnu/bits/long-double.h
@@ -22,4 +22,4 @@
# define __NO_LONG_DOUBLE_MATH 1
# endif
#endif
-#define __LONG_DOUBLE_USES_FLOAT128 0 \ No newline at end of file
+#define __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI 0 \ No newline at end of file
diff --git a/lib/libc/include/powerpc-linux-gnu/bits/msq-pad.h b/lib/libc/include/powerpc-linux-gnu/bits/msq-pad.h
deleted file mode 100644
index c72a8507da..0000000000
--- a/lib/libc/include/powerpc-linux-gnu/bits/msq-pad.h
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Define where padding goes in struct msqid_ds. PowerPC version.
- Copyright (C) 2018-2020 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 _SYS_MSG_H
-# error "Never use <bits/msq-pad.h> directly; include <sys/msg.h> instead."
-#endif
-
-#include <bits/timesize.h>
-
-#define __MSQ_PAD_AFTER_TIME 0
-#define __MSQ_PAD_BEFORE_TIME (__TIMESIZE == 32) \ No newline at end of file
diff --git a/lib/libc/include/powerpc-linux-gnu/bits/sem-pad.h b/lib/libc/include/powerpc-linux-gnu/bits/sem-pad.h
deleted file mode 100644
index e6aca78279..0000000000
--- a/lib/libc/include/powerpc-linux-gnu/bits/sem-pad.h
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Define where padding goes in struct semid_ds. PowerPC version.
- Copyright (C) 2018-2020 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 _SYS_SEM_H
-# error "Never use <bits/sem-pad.h> directly; include <sys/sem.h> instead."
-#endif
-
-#include <bits/timesize.h>
-
-#define __SEM_PAD_AFTER_TIME 0
-#define __SEM_PAD_BEFORE_TIME (__TIMESIZE == 32) \ No newline at end of file
diff --git a/lib/libc/include/powerpc-linux-gnu/bits/semaphore.h b/lib/libc/include/powerpc-linux-gnu/bits/semaphore.h
index d8dd45053b..97292723c8 100644
--- a/lib/libc/include/powerpc-linux-gnu/bits/semaphore.h
+++ b/lib/libc/include/powerpc-linux-gnu/bits/semaphore.h
@@ -1,7 +1,6 @@
-/* Machine-specific POSIX semaphore type layouts. PowerPC version.
- Copyright (C) 2003-2020 Free Software Foundation, Inc.
+/* Generic POSIX semaphore type layout
+ Copyright (C) 1995-2020 Free Software Foundation, Inc.
This file is part of the GNU C Library.
- Contributed by Paul Mackerras <paulus@au.ibm.com>, 2003.
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
diff --git a/lib/libc/include/powerpc-linux-gnu/bits/shm-pad.h b/lib/libc/include/powerpc-linux-gnu/bits/shm-pad.h
deleted file mode 100644
index 950fc7d5b5..0000000000
--- a/lib/libc/include/powerpc-linux-gnu/bits/shm-pad.h
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Define where padding goes in struct shmid_ds. PowerPC version.
- Copyright (C) 2018-2020 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 _SYS_SHM_H
-# error "Never use <bits/shm-pad.h> directly; include <sys/shm.h> instead."
-#endif
-
-#include <bits/timesize.h>
-
-#define __SHM_PAD_AFTER_TIME 0
-#define __SHM_PAD_BEFORE_TIME (__TIMESIZE == 32)
-#define __SHM_SEGSZ_AFTER_TIME 1
-#define __SHM_PAD_BETWEEN_TIME_AND_SEGSZ (__TIMESIZE == 32) \ No newline at end of file