From ffe79c446ced76d7c1a77804ff2cc32eccbc7c7e Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Wed, 11 Dec 2024 21:51:49 +0000 Subject: Implement C23 atanpi C23 adds various function families originally defined in TS 18661-4. Add the atanpi functions (atan(x)/pi). Tested for x86_64 and x86, and with build-many-glibcs.py. --- sysdeps/i386/i686/fpu/multiarch/libm-test-ulps | 24 ++++++++++++++++++++++ sysdeps/ieee754/ldbl-128ibm-compat/Versions | 1 + sysdeps/ieee754/ldbl-opt/Makefile | 2 ++ sysdeps/ieee754/ldbl-opt/nldbl-atanpi.c | 8 ++++++++ sysdeps/mach/hurd/i386/libm.abilist | 8 ++++++++ sysdeps/mach/hurd/x86_64/libm.abilist | 8 ++++++++ sysdeps/powerpc/nofpu/Makefile | 1 + sysdeps/unix/sysv/linux/aarch64/libm.abilist | 8 ++++++++ sysdeps/unix/sysv/linux/alpha/libm.abilist | 8 ++++++++ sysdeps/unix/sysv/linux/arc/libm.abilist | 6 ++++++ sysdeps/unix/sysv/linux/arm/be/libm.abilist | 6 ++++++ sysdeps/unix/sysv/linux/arm/le/libm.abilist | 6 ++++++ sysdeps/unix/sysv/linux/csky/libm.abilist | 6 ++++++ sysdeps/unix/sysv/linux/hppa/libm.abilist | 6 ++++++ sysdeps/unix/sysv/linux/i386/libm.abilist | 8 ++++++++ .../unix/sysv/linux/loongarch/lp64/libm.abilist | 8 ++++++++ sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist | 6 ++++++ sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist | 6 ++++++ sysdeps/unix/sysv/linux/microblaze/be/libm.abilist | 6 ++++++ sysdeps/unix/sysv/linux/microblaze/le/libm.abilist | 6 ++++++ sysdeps/unix/sysv/linux/mips/mips32/libm.abilist | 6 ++++++ sysdeps/unix/sysv/linux/mips/mips64/libm.abilist | 8 ++++++++ sysdeps/unix/sysv/linux/or1k/libm.abilist | 6 ++++++ .../sysv/linux/powerpc/powerpc32/fpu/libm.abilist | 6 ++++++ .../linux/powerpc/powerpc32/nofpu/libm.abilist | 6 ++++++ .../sysv/linux/powerpc/powerpc64/be/libm.abilist | 6 ++++++ .../sysv/linux/powerpc/powerpc64/le/libm.abilist | 9 ++++++++ sysdeps/unix/sysv/linux/riscv/rv32/libm.abilist | 8 ++++++++ sysdeps/unix/sysv/linux/riscv/rv64/libm.abilist | 8 ++++++++ sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist | 8 ++++++++ sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist | 8 ++++++++ sysdeps/unix/sysv/linux/sh/be/libm.abilist | 6 ++++++ sysdeps/unix/sysv/linux/sh/le/libm.abilist | 6 ++++++ sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist | 8 ++++++++ sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist | 8 ++++++++ sysdeps/unix/sysv/linux/x86_64/64/libm.abilist | 8 ++++++++ sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist | 8 ++++++++ sysdeps/x86_64/fpu/libm-test-ulps | 24 ++++++++++++++++++++++ 38 files changed, 285 insertions(+) create mode 100644 sysdeps/ieee754/ldbl-opt/nldbl-atanpi.c (limited to 'sysdeps') diff --git a/sysdeps/i386/i686/fpu/multiarch/libm-test-ulps b/sysdeps/i386/i686/fpu/multiarch/libm-test-ulps index 3e6284e021..b7424cd609 100644 --- a/sysdeps/i386/i686/fpu/multiarch/libm-test-ulps +++ b/sysdeps/i386/i686/fpu/multiarch/libm-test-ulps @@ -200,6 +200,30 @@ float: 1 float128: 4 ldouble: 5 +Function: "atanpi": +double: 1 +float: 1 +float128: 1 +ldouble: 1 + +Function: "atanpi_downward": +double: 1 +float: 1 +float128: 1 +ldouble: 1 + +Function: "atanpi_towardzero": +double: 1 +float: 1 +float128: 1 +ldouble: 1 + +Function: "atanpi_upward": +double: 1 +float: 1 +float128: 2 +ldouble: 1 + Function: "cabs": double: 1 float128: 1 diff --git a/sysdeps/ieee754/ldbl-128ibm-compat/Versions b/sysdeps/ieee754/ldbl-128ibm-compat/Versions index 0f3b65ca2a..251bcd48e3 100644 --- a/sysdeps/ieee754/ldbl-128ibm-compat/Versions +++ b/sysdeps/ieee754/ldbl-128ibm-compat/Versions @@ -147,6 +147,7 @@ libm { GLIBC_2.41 { __acospiieee128; __asinpiieee128; + __atanpiieee128; __cospiieee128; __sinpiieee128; __tanpiieee128; diff --git a/sysdeps/ieee754/ldbl-opt/Makefile b/sysdeps/ieee754/ldbl-opt/Makefile index 0cc4d84da1..1acde0be50 100644 --- a/sysdeps/ieee754/ldbl-opt/Makefile +++ b/sysdeps/ieee754/ldbl-opt/Makefile @@ -23,6 +23,7 @@ libnldbl-calls = \ atan \ atan2 \ atanh \ + atanpi \ cabs \ cacos \ cacosh \ @@ -266,6 +267,7 @@ CFLAGS-nldbl-asinpi.c = -fno-builtin-asinpil CFLAGS-nldbl-atan.c = -fno-builtin-atanl CFLAGS-nldbl-atan2.c = -fno-builtin-atan2l CFLAGS-nldbl-atanh.c = -fno-builtin-atanhl +CFLAGS-nldbl-atanpi.c = -fno-builtin-atanpil CFLAGS-nldbl-cabs.c = -fno-builtin-cabsl CFLAGS-nldbl-cacos.c = -fno-builtin-cacosl CFLAGS-nldbl-cacosh.c = -fno-builtin-cacoshl diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-atanpi.c b/sysdeps/ieee754/ldbl-opt/nldbl-atanpi.c new file mode 100644 index 0000000000..259397d81e --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-atanpi.c @@ -0,0 +1,8 @@ +#include "nldbl-compat.h" + +double +attribute_hidden +atanpil (double x) +{ + return atanpi (x); +} diff --git a/sysdeps/mach/hurd/i386/libm.abilist b/sysdeps/mach/hurd/i386/libm.abilist index c194c9ae0c..77df9bbf33 100644 --- a/sysdeps/mach/hurd/i386/libm.abilist +++ b/sysdeps/mach/hurd/i386/libm.abilist @@ -1237,6 +1237,14 @@ GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpif64x F GLIBC_2.41 asinpil F +GLIBC_2.41 atanpi F +GLIBC_2.41 atanpif F +GLIBC_2.41 atanpif128 F +GLIBC_2.41 atanpif32 F +GLIBC_2.41 atanpif32x F +GLIBC_2.41 atanpif64 F +GLIBC_2.41 atanpif64x F +GLIBC_2.41 atanpil F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif128 F diff --git a/sysdeps/mach/hurd/x86_64/libm.abilist b/sysdeps/mach/hurd/x86_64/libm.abilist index 16d781a88e..6957af599d 100644 --- a/sysdeps/mach/hurd/x86_64/libm.abilist +++ b/sysdeps/mach/hurd/x86_64/libm.abilist @@ -1094,6 +1094,14 @@ GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpif64x F GLIBC_2.41 asinpil F +GLIBC_2.41 atanpi F +GLIBC_2.41 atanpif F +GLIBC_2.41 atanpif128 F +GLIBC_2.41 atanpif32 F +GLIBC_2.41 atanpif32x F +GLIBC_2.41 atanpif64 F +GLIBC_2.41 atanpif64x F +GLIBC_2.41 atanpil F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif128 F diff --git a/sysdeps/powerpc/nofpu/Makefile b/sysdeps/powerpc/nofpu/Makefile index 679b271025..aa44185e95 100644 --- a/sysdeps/powerpc/nofpu/Makefile +++ b/sysdeps/powerpc/nofpu/Makefile @@ -45,6 +45,7 @@ CFLAGS-s_acospil.c += -fno-builtin-fabsl CFLAGS-w_asinl_compat.c += -fno-builtin-fabsl CFLAGS-s_asinpil.c += -fno-builtin-fabsl CFLAGS-w_atanhl_compat.c += -fno-builtin-fabsl +CFLAGS-s_atanpil.c += -fno-builtin-fabsl CFLAGS-w_j0l_compat.c += -fno-builtin-fabsl CFLAGS-w_j1l_compat.c += -fno-builtin-fabsl CFLAGS-e_lgammal_r.c += -fno-builtin-fabsl diff --git a/sysdeps/unix/sysv/linux/aarch64/libm.abilist b/sysdeps/unix/sysv/linux/aarch64/libm.abilist index 165056eef1..2e2956be44 100644 --- a/sysdeps/unix/sysv/linux/aarch64/libm.abilist +++ b/sysdeps/unix/sysv/linux/aarch64/libm.abilist @@ -1205,6 +1205,14 @@ GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpif64x F GLIBC_2.41 asinpil F +GLIBC_2.41 atanpi F +GLIBC_2.41 atanpif F +GLIBC_2.41 atanpif128 F +GLIBC_2.41 atanpif32 F +GLIBC_2.41 atanpif32x F +GLIBC_2.41 atanpif64 F +GLIBC_2.41 atanpif64x F +GLIBC_2.41 atanpil F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif128 F diff --git a/sysdeps/unix/sysv/linux/alpha/libm.abilist b/sysdeps/unix/sysv/linux/alpha/libm.abilist index 0cf0ee6ae9..234486dc15 100644 --- a/sysdeps/unix/sysv/linux/alpha/libm.abilist +++ b/sysdeps/unix/sysv/linux/alpha/libm.abilist @@ -1364,6 +1364,14 @@ GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpif64x F GLIBC_2.41 asinpil F +GLIBC_2.41 atanpi F +GLIBC_2.41 atanpif F +GLIBC_2.41 atanpif128 F +GLIBC_2.41 atanpif32 F +GLIBC_2.41 atanpif32x F +GLIBC_2.41 atanpif64 F +GLIBC_2.41 atanpif64x F +GLIBC_2.41 atanpil F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif128 F diff --git a/sysdeps/unix/sysv/linux/arc/libm.abilist b/sysdeps/unix/sysv/linux/arc/libm.abilist index fc383663af..0c9520e406 100644 --- a/sysdeps/unix/sysv/linux/arc/libm.abilist +++ b/sysdeps/unix/sysv/linux/arc/libm.abilist @@ -799,6 +799,12 @@ GLIBC_2.41 asinpif32 F GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpil F +GLIBC_2.41 atanpi F +GLIBC_2.41 atanpif F +GLIBC_2.41 atanpif32 F +GLIBC_2.41 atanpif32x F +GLIBC_2.41 atanpif64 F +GLIBC_2.41 atanpil F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif32 F diff --git a/sysdeps/unix/sysv/linux/arm/be/libm.abilist b/sysdeps/unix/sysv/linux/arm/be/libm.abilist index 67ca2d54b8..5e7379841a 100644 --- a/sysdeps/unix/sysv/linux/arm/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/arm/be/libm.abilist @@ -890,6 +890,12 @@ GLIBC_2.41 asinpif32 F GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpil F +GLIBC_2.41 atanpi F +GLIBC_2.41 atanpif F +GLIBC_2.41 atanpif32 F +GLIBC_2.41 atanpif32x F +GLIBC_2.41 atanpif64 F +GLIBC_2.41 atanpil F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif32 F diff --git a/sysdeps/unix/sysv/linux/arm/le/libm.abilist b/sysdeps/unix/sysv/linux/arm/le/libm.abilist index 67ca2d54b8..5e7379841a 100644 --- a/sysdeps/unix/sysv/linux/arm/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/arm/le/libm.abilist @@ -890,6 +890,12 @@ GLIBC_2.41 asinpif32 F GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpil F +GLIBC_2.41 atanpi F +GLIBC_2.41 atanpif F +GLIBC_2.41 atanpif32 F +GLIBC_2.41 atanpif32x F +GLIBC_2.41 atanpif64 F +GLIBC_2.41 atanpil F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif32 F diff --git a/sysdeps/unix/sysv/linux/csky/libm.abilist b/sysdeps/unix/sysv/linux/csky/libm.abilist index f006214fde..980d4beeb2 100644 --- a/sysdeps/unix/sysv/linux/csky/libm.abilist +++ b/sysdeps/unix/sysv/linux/csky/libm.abilist @@ -865,6 +865,12 @@ GLIBC_2.41 asinpif32 F GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpil F +GLIBC_2.41 atanpi F +GLIBC_2.41 atanpif F +GLIBC_2.41 atanpif32 F +GLIBC_2.41 atanpif32x F +GLIBC_2.41 atanpif64 F +GLIBC_2.41 atanpil F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif32 F diff --git a/sysdeps/unix/sysv/linux/hppa/libm.abilist b/sysdeps/unix/sysv/linux/hppa/libm.abilist index cd02445c5e..e17b2c066e 100644 --- a/sysdeps/unix/sysv/linux/hppa/libm.abilist +++ b/sysdeps/unix/sysv/linux/hppa/libm.abilist @@ -890,6 +890,12 @@ GLIBC_2.41 asinpif32 F GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpil F +GLIBC_2.41 atanpi F +GLIBC_2.41 atanpif F +GLIBC_2.41 atanpif32 F +GLIBC_2.41 atanpif32x F +GLIBC_2.41 atanpif64 F +GLIBC_2.41 atanpil F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif32 F diff --git a/sysdeps/unix/sysv/linux/i386/libm.abilist b/sysdeps/unix/sysv/linux/i386/libm.abilist index 82189f5a26..0c72e275f5 100644 --- a/sysdeps/unix/sysv/linux/i386/libm.abilist +++ b/sysdeps/unix/sysv/linux/i386/libm.abilist @@ -1244,6 +1244,14 @@ GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpif64x F GLIBC_2.41 asinpil F +GLIBC_2.41 atanpi F +GLIBC_2.41 atanpif F +GLIBC_2.41 atanpif128 F +GLIBC_2.41 atanpif32 F +GLIBC_2.41 atanpif32x F +GLIBC_2.41 atanpif64 F +GLIBC_2.41 atanpif64x F +GLIBC_2.41 atanpil F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif128 F diff --git a/sysdeps/unix/sysv/linux/loongarch/lp64/libm.abilist b/sysdeps/unix/sysv/linux/loongarch/lp64/libm.abilist index c3608c624f..84a09649f9 100644 --- a/sysdeps/unix/sysv/linux/loongarch/lp64/libm.abilist +++ b/sysdeps/unix/sysv/linux/loongarch/lp64/libm.abilist @@ -1084,6 +1084,14 @@ GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpif64x F GLIBC_2.41 asinpil F +GLIBC_2.41 atanpi F +GLIBC_2.41 atanpif F +GLIBC_2.41 atanpif128 F +GLIBC_2.41 atanpif32 F +GLIBC_2.41 atanpif32x F +GLIBC_2.41 atanpif64 F +GLIBC_2.41 atanpif64x F +GLIBC_2.41 atanpil F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif128 F diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist index 67ca2d54b8..5e7379841a 100644 --- a/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist +++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist @@ -890,6 +890,12 @@ GLIBC_2.41 asinpif32 F GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpil F +GLIBC_2.41 atanpi F +GLIBC_2.41 atanpif F +GLIBC_2.41 atanpif32 F +GLIBC_2.41 atanpif32x F +GLIBC_2.41 atanpif64 F +GLIBC_2.41 atanpil F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif32 F diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist index 8ce5f544a1..d65ece0eac 100644 --- a/sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist +++ b/sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist @@ -926,6 +926,12 @@ GLIBC_2.41 asinpif32 F GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpil F +GLIBC_2.41 atanpi F +GLIBC_2.41 atanpif F +GLIBC_2.41 atanpif32 F +GLIBC_2.41 atanpif32x F +GLIBC_2.41 atanpif64 F +GLIBC_2.41 atanpil F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif32 F diff --git a/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist b/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist index 5e5c14216c..85710af9af 100644 --- a/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist @@ -890,6 +890,12 @@ GLIBC_2.41 asinpif32 F GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpil F +GLIBC_2.41 atanpi F +GLIBC_2.41 atanpif F +GLIBC_2.41 atanpif32 F +GLIBC_2.41 atanpif32x F +GLIBC_2.41 atanpif64 F +GLIBC_2.41 atanpil F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif32 F diff --git a/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist b/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist index 5e5c14216c..85710af9af 100644 --- a/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist @@ -890,6 +890,12 @@ GLIBC_2.41 asinpif32 F GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpil F +GLIBC_2.41 atanpi F +GLIBC_2.41 atanpif F +GLIBC_2.41 atanpif32 F +GLIBC_2.41 atanpif32x F +GLIBC_2.41 atanpif64 F +GLIBC_2.41 atanpil F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif32 F diff --git a/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist b/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist index 8b6efc1740..fd87c30ad9 100644 --- a/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist +++ b/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist @@ -890,6 +890,12 @@ GLIBC_2.41 asinpif32 F GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpil F +GLIBC_2.41 atanpi F +GLIBC_2.41 atanpif F +GLIBC_2.41 atanpif32 F +GLIBC_2.41 atanpif32x F +GLIBC_2.41 atanpif64 F +GLIBC_2.41 atanpil F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif32 F diff --git a/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist b/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist index 1896db87f3..b16a4963f4 100644 --- a/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist +++ b/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist @@ -1205,6 +1205,14 @@ GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpif64x F GLIBC_2.41 asinpil F +GLIBC_2.41 atanpi F +GLIBC_2.41 atanpif F +GLIBC_2.41 atanpif128 F +GLIBC_2.41 atanpif32 F +GLIBC_2.41 atanpif32x F +GLIBC_2.41 atanpif64 F +GLIBC_2.41 atanpif64x F +GLIBC_2.41 atanpil F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif128 F diff --git a/sysdeps/unix/sysv/linux/or1k/libm.abilist b/sysdeps/unix/sysv/linux/or1k/libm.abilist index 706cd5719b..cfac64e2b9 100644 --- a/sysdeps/unix/sysv/linux/or1k/libm.abilist +++ b/sysdeps/unix/sysv/linux/or1k/libm.abilist @@ -799,6 +799,12 @@ GLIBC_2.41 asinpif32 F GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpil F +GLIBC_2.41 atanpi F +GLIBC_2.41 atanpif F +GLIBC_2.41 atanpif32 F +GLIBC_2.41 atanpif32x F +GLIBC_2.41 atanpif64 F +GLIBC_2.41 atanpil F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif32 F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist index 903398aed4..19352a505a 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist @@ -1037,6 +1037,12 @@ GLIBC_2.41 asinpif32 F GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpil F +GLIBC_2.41 atanpi F +GLIBC_2.41 atanpif F +GLIBC_2.41 atanpif32 F +GLIBC_2.41 atanpif32x F +GLIBC_2.41 atanpif64 F +GLIBC_2.41 atanpil F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif32 F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist index b03908a7cb..54a4d38aeb 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist @@ -1036,6 +1036,12 @@ GLIBC_2.41 asinpif32 F GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpil F +GLIBC_2.41 atanpi F +GLIBC_2.41 atanpif F +GLIBC_2.41 atanpif32 F +GLIBC_2.41 atanpif32x F +GLIBC_2.41 atanpif64 F +GLIBC_2.41 atanpil F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif32 F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist index e9b090f52b..4c5a9239ab 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist @@ -1030,6 +1030,12 @@ GLIBC_2.41 asinpif32 F GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpil F +GLIBC_2.41 atanpi F +GLIBC_2.41 atanpif F +GLIBC_2.41 atanpif32 F +GLIBC_2.41 atanpif32x F +GLIBC_2.41 atanpif64 F +GLIBC_2.41 atanpil F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif32 F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist index 3696a27e0e..a4e04e5143 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist @@ -1368,6 +1368,7 @@ GLIBC_2.40 logp1f64x F GLIBC_2.40 logp1l F GLIBC_2.41 __acospiieee128 F GLIBC_2.41 __asinpiieee128 F +GLIBC_2.41 __atanpiieee128 F GLIBC_2.41 __cospiieee128 F GLIBC_2.41 __sinpiieee128 F GLIBC_2.41 __tanpiieee128 F @@ -1387,6 +1388,14 @@ GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpif64x F GLIBC_2.41 asinpil F +GLIBC_2.41 atanpi F +GLIBC_2.41 atanpif F +GLIBC_2.41 atanpif128 F +GLIBC_2.41 atanpif32 F +GLIBC_2.41 atanpif32x F +GLIBC_2.41 atanpif64 F +GLIBC_2.41 atanpif64x F +GLIBC_2.41 atanpil F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif128 F diff --git a/sysdeps/unix/sysv/linux/riscv/rv32/libm.abilist b/sysdeps/unix/sysv/linux/riscv/rv32/libm.abilist index 723f761aa8..f643888914 100644 --- a/sysdeps/unix/sysv/linux/riscv/rv32/libm.abilist +++ b/sysdeps/unix/sysv/linux/riscv/rv32/libm.abilist @@ -1084,6 +1084,14 @@ GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpif64x F GLIBC_2.41 asinpil F +GLIBC_2.41 atanpi F +GLIBC_2.41 atanpif F +GLIBC_2.41 atanpif128 F +GLIBC_2.41 atanpif32 F +GLIBC_2.41 atanpif32x F +GLIBC_2.41 atanpif64 F +GLIBC_2.41 atanpif64x F +GLIBC_2.41 atanpil F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif128 F diff --git a/sysdeps/unix/sysv/linux/riscv/rv64/libm.abilist b/sysdeps/unix/sysv/linux/riscv/rv64/libm.abilist index 12a497e719..ee4d03ea96 100644 --- a/sysdeps/unix/sysv/linux/riscv/rv64/libm.abilist +++ b/sysdeps/unix/sysv/linux/riscv/rv64/libm.abilist @@ -1181,6 +1181,14 @@ GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpif64x F GLIBC_2.41 asinpil F +GLIBC_2.41 atanpi F +GLIBC_2.41 atanpif F +GLIBC_2.41 atanpif128 F +GLIBC_2.41 atanpif32 F +GLIBC_2.41 atanpif32x F +GLIBC_2.41 atanpif64 F +GLIBC_2.41 atanpif64x F +GLIBC_2.41 atanpil F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif128 F diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist index d2503a3db9..93d0c0f009 100644 --- a/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist +++ b/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist @@ -1308,6 +1308,14 @@ GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpif64x F GLIBC_2.41 asinpil F +GLIBC_2.41 atanpi F +GLIBC_2.41 atanpif F +GLIBC_2.41 atanpif128 F +GLIBC_2.41 atanpif32 F +GLIBC_2.41 atanpif32x F +GLIBC_2.41 atanpif64 F +GLIBC_2.41 atanpif64x F +GLIBC_2.41 atanpil F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif128 F diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist index 7c6936ec0f..4d7a1a9b7d 100644 --- a/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist +++ b/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist @@ -1308,6 +1308,14 @@ GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpif64x F GLIBC_2.41 asinpil F +GLIBC_2.41 atanpi F +GLIBC_2.41 atanpif F +GLIBC_2.41 atanpif128 F +GLIBC_2.41 atanpif32 F +GLIBC_2.41 atanpif32x F +GLIBC_2.41 atanpif64 F +GLIBC_2.41 atanpif64x F +GLIBC_2.41 atanpil F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif128 F diff --git a/sysdeps/unix/sysv/linux/sh/be/libm.abilist b/sysdeps/unix/sysv/linux/sh/be/libm.abilist index e93be4c898..7dd0342e50 100644 --- a/sysdeps/unix/sysv/linux/sh/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/sh/be/libm.abilist @@ -890,6 +890,12 @@ GLIBC_2.41 asinpif32 F GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpil F +GLIBC_2.41 atanpi F +GLIBC_2.41 atanpif F +GLIBC_2.41 atanpif32 F +GLIBC_2.41 atanpif32x F +GLIBC_2.41 atanpif64 F +GLIBC_2.41 atanpil F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif32 F diff --git a/sysdeps/unix/sysv/linux/sh/le/libm.abilist b/sysdeps/unix/sysv/linux/sh/le/libm.abilist index e93be4c898..7dd0342e50 100644 --- a/sysdeps/unix/sysv/linux/sh/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/sh/le/libm.abilist @@ -890,6 +890,12 @@ GLIBC_2.41 asinpif32 F GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpil F +GLIBC_2.41 atanpi F +GLIBC_2.41 atanpif F +GLIBC_2.41 atanpif32 F +GLIBC_2.41 atanpif32x F +GLIBC_2.41 atanpif64 F +GLIBC_2.41 atanpil F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif32 F diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist index c763c5583b..c56e17b2e9 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist +++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist @@ -1315,6 +1315,14 @@ GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpif64x F GLIBC_2.41 asinpil F +GLIBC_2.41 atanpi F +GLIBC_2.41 atanpif F +GLIBC_2.41 atanpif128 F +GLIBC_2.41 atanpif32 F +GLIBC_2.41 atanpif32x F +GLIBC_2.41 atanpif64 F +GLIBC_2.41 atanpif64x F +GLIBC_2.41 atanpil F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif128 F diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist index 4e4beab41e..c6cc55ec74 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist +++ b/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist @@ -1205,6 +1205,14 @@ GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpif64x F GLIBC_2.41 asinpil F +GLIBC_2.41 atanpi F +GLIBC_2.41 atanpif F +GLIBC_2.41 atanpif128 F +GLIBC_2.41 atanpif32 F +GLIBC_2.41 atanpif32x F +GLIBC_2.41 atanpif64 F +GLIBC_2.41 atanpif64x F +GLIBC_2.41 atanpil F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif128 F diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist index 8ba0a95693..add8e98327 100644 --- a/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist +++ b/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist @@ -1238,6 +1238,14 @@ GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpif64x F GLIBC_2.41 asinpil F +GLIBC_2.41 atanpi F +GLIBC_2.41 atanpif F +GLIBC_2.41 atanpif128 F +GLIBC_2.41 atanpif32 F +GLIBC_2.41 atanpif32x F +GLIBC_2.41 atanpif64 F +GLIBC_2.41 atanpif64x F +GLIBC_2.41 atanpil F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif128 F diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist index 7defe5dff3..c976d6b676 100644 --- a/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist +++ b/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist @@ -1238,6 +1238,14 @@ GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpif64x F GLIBC_2.41 asinpil F +GLIBC_2.41 atanpi F +GLIBC_2.41 atanpif F +GLIBC_2.41 atanpif128 F +GLIBC_2.41 atanpif32 F +GLIBC_2.41 atanpif32x F +GLIBC_2.41 atanpif64 F +GLIBC_2.41 atanpif64x F +GLIBC_2.41 atanpil F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif128 F diff --git a/sysdeps/x86_64/fpu/libm-test-ulps b/sysdeps/x86_64/fpu/libm-test-ulps index 3d6e0d717e..1ff2f8baf6 100644 --- a/sysdeps/x86_64/fpu/libm-test-ulps +++ b/sysdeps/x86_64/fpu/libm-test-ulps @@ -353,6 +353,30 @@ float: 1 Function: "atanh_vlen8_avx2": float: 1 +Function: "atanpi": +double: 1 +float: 1 +float128: 1 +ldouble: 1 + +Function: "atanpi_downward": +double: 1 +float: 2 +float128: 1 +ldouble: 1 + +Function: "atanpi_towardzero": +double: 1 +float: 1 +float128: 1 +ldouble: 1 + +Function: "atanpi_upward": +double: 1 +float: 1 +float128: 2 +ldouble: 1 + Function: "cabs": double: 1 float128: 1 -- cgit v1.2.3