diff options
author | Zack Weinberg <zackw@panix.com> | 2017-06-08 15:39:03 -0400 |
---|---|---|
committer | Zack Weinberg <zackw@panix.com> | 2017-06-08 15:39:03 -0400 |
commit | 5046dbb4a7eba5eccfd258f92f4735c9ffc8d069 (patch) | |
tree | 4470480d904b65cf14ca524f96f79eca818c3eaf /sysdeps/powerpc/nofpu | |
parent | 199fc19d3aaaf57944ef036e15904febe877fc93 (diff) | |
download | glibc-zack/build-layout-experiment.tar glibc-zack/build-layout-experiment.tar.gz glibc-zack/build-layout-experiment.tar.bz2 glibc-zack/build-layout-experiment.zip |
Prepare for radical source tree reorganization.zack/build-layout-experiment
All top-level files and directories are moved into a temporary storage
directory, REORG.TODO, except for files that will certainly still
exist in their current form at top level when we're done (COPYING,
COPYING.LIB, LICENSES, NEWS, README), all old ChangeLog files (which
are moved to the new directory OldChangeLogs, instead), and the
generated file INSTALL (which is just deleted; in the new order, there
will be no generated files checked into version control).
Diffstat (limited to 'sysdeps/powerpc/nofpu')
30 files changed, 0 insertions, 3394 deletions
diff --git a/sysdeps/powerpc/nofpu/Makefile b/sysdeps/powerpc/nofpu/Makefile deleted file mode 100644 index 35517b63a1..0000000000 --- a/sysdeps/powerpc/nofpu/Makefile +++ /dev/null @@ -1,32 +0,0 @@ -# Makefile fragment for PowerPC with no FPU. - -ifeq ($(subdir),soft-fp) -sysdep_routines += $(gcc-single-routines) $(gcc-double-routines) \ - sim-full atomic-feholdexcept atomic-feclearexcept \ - atomic-feupdateenv flt-rounds -endif - -ifeq ($(subdir),math) -libm-support += fenv_const -CPPFLAGS += -I../soft-fp/ -# The follow CFLAGS are a work around for GCC Bugzilla Bug 29253 -# "expand_abs wrong default code for floating point" -# As this is not a regression, a fix is not likely to go into -# gcc-4.1.1 and may be too late for gcc-4.2. So we need these flags -# until the fix in a gcc release and glibc drops support for earlier -# versions of gcc. -CFLAGS-e_atan2l.c += -fno-builtin-fabsl -CFLAGS-e_hypotl.c += -fno-builtin-fabsl -CFLAGS-e_powl.c += -fno-builtin-fabsl -CFLAGS-s_ccoshl.c += -fno-builtin-fabsl -CFLAGS-s_csinhl.c += -fno-builtin-fabsl -CFLAGS-s_clogl.c += -fno-builtin-fabsl -CFLAGS-s_clog10l.c += -fno-builtin-fabsl -CFLAGS-s_csinl.c += -fno-builtin-fabsl -CFLAGS-s_csqrtl.c += -fno-builtin-fabsl -CFLAGS-w_acosl_compat.c += -fno-builtin-fabsl -CFLAGS-w_asinl_compat.c += -fno-builtin-fabsl -CFLAGS-w_atanhl_compat.c += -fno-builtin-fabsl -CFLAGS-w_j0l_compat.c += -fno-builtin-fabsl -CFLAGS-w_j1l_compat.c += -fno-builtin-fabsl -endif diff --git a/sysdeps/powerpc/nofpu/Subdirs b/sysdeps/powerpc/nofpu/Subdirs deleted file mode 100644 index 87eadf3024..0000000000 --- a/sysdeps/powerpc/nofpu/Subdirs +++ /dev/null @@ -1 +0,0 @@ -soft-fp diff --git a/sysdeps/powerpc/nofpu/Versions b/sysdeps/powerpc/nofpu/Versions deleted file mode 100644 index 9f569bd1a5..0000000000 --- a/sysdeps/powerpc/nofpu/Versions +++ /dev/null @@ -1,29 +0,0 @@ -libc { - GLIBC_2.3.2 { - __sim_exceptions; __sim_disabled_exceptions; __sim_round_mode; - __adddf3; __addsf3; __divdf3; __divsf3; __eqdf2; __eqsf2; - __extendsfdf2; __fixdfsi; __fixsfsi; - __fixunsdfsi; __fixunssfsi; - __floatsidf; __floatsisf; - __gedf2; __gesf2; __ledf2; __lesf2; __muldf3; __mulsf3; - __negdf2; __negsf2; __sqrtdf2; __sqrtsf2; __subdf3; - __subsf3; __truncdfsf2; - } - GLIBC_2.4 { - __floatundidf; __floatundisf; - __floatunsidf; __floatunsisf; - __unorddf2; __unordsf2; - __nedf2; __nesf2; - __gtdf2; __gtsf2; - __ltdf2; __ltsf2; - } - GLIBC_2.19 { - __atomic_feholdexcept; __atomic_feclearexcept; __atomic_feupdateenv; - __flt_rounds; - } - GLIBC_PRIVATE { - __sim_exceptions_thread; - __sim_disabled_exceptions_thread; - __sim_round_mode_thread; - } -} diff --git a/sysdeps/powerpc/nofpu/atomic-feclearexcept.c b/sysdeps/powerpc/nofpu/atomic-feclearexcept.c deleted file mode 100644 index 6946e19337..0000000000 --- a/sysdeps/powerpc/nofpu/atomic-feclearexcept.c +++ /dev/null @@ -1,28 +0,0 @@ -/* Clear floating-point exceptions for atomic compound assignment. - Copyright (C) 2013-2017 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/>. */ - -#include "soft-fp.h" -#include "soft-supp.h" - -void -__atomic_feclearexcept (void) -{ - /* This function postdates the global variables being turned into - compat symbols, so no need to set them. */ - __sim_exceptions_thread = 0; -} diff --git a/sysdeps/powerpc/nofpu/atomic-feholdexcept.c b/sysdeps/powerpc/nofpu/atomic-feholdexcept.c deleted file mode 100644 index 50cf1b96ae..0000000000 --- a/sysdeps/powerpc/nofpu/atomic-feholdexcept.c +++ /dev/null @@ -1,38 +0,0 @@ -/* Store current floating-point environment and clear exceptions for - atomic compound assignment. - Copyright (C) 2013-2017 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/>. */ - -#include "soft-fp.h" -#include "soft-supp.h" - -void -__atomic_feholdexcept (fenv_t *envp) -{ - fenv_union_t u; - - u.l[0] = __sim_exceptions_thread; - /* The rounding mode is not changed by arithmetic, so no need to - save it. */ - u.l[1] = __sim_disabled_exceptions_thread; - *envp = u.fenv; - - /* This function postdates the global variables being turned into - compat symbols, so no need to set them. */ - __sim_exceptions_thread = 0; - __sim_disabled_exceptions_thread = FE_ALL_EXCEPT; -} diff --git a/sysdeps/powerpc/nofpu/atomic-feupdateenv.c b/sysdeps/powerpc/nofpu/atomic-feupdateenv.c deleted file mode 100644 index e74178ff12..0000000000 --- a/sysdeps/powerpc/nofpu/atomic-feupdateenv.c +++ /dev/null @@ -1,37 +0,0 @@ -/* Install given floating-point environment and raise exceptions for - atomic compound assignment. - Copyright (C) 2013-2017 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/>. */ - -#include "soft-fp.h" -#include "soft-supp.h" -#include <signal.h> - -void -__atomic_feupdateenv (const fenv_t *envp) -{ - fenv_union_t u; - int saved_exceptions = __sim_exceptions_thread; - - /* This function postdates the global variables being turned into - compat symbols, so no need to set them. */ - u.fenv = *envp; - __sim_exceptions_thread |= u.l[0]; - __sim_disabled_exceptions_thread = u.l[1]; - if (saved_exceptions & ~__sim_disabled_exceptions_thread) - raise (SIGFPE); -} diff --git a/sysdeps/powerpc/nofpu/fclrexcpt.c b/sysdeps/powerpc/nofpu/fclrexcpt.c deleted file mode 100644 index 1c8e578afc..0000000000 --- a/sysdeps/powerpc/nofpu/fclrexcpt.c +++ /dev/null @@ -1,38 +0,0 @@ -/* Clear floating-point exceptions (soft-float edition). - Copyright (C) 2002-2017 Free Software Foundation, Inc. - Contributed by Aldy Hernandez <aldyh@redhat.com>, 2002. - 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/>. */ - -#include "soft-fp.h" -#include "soft-supp.h" - -int -__feclearexcept (int x) -{ - __sim_exceptions_thread &= ~x; - SIM_SET_GLOBAL (__sim_exceptions_global, __sim_exceptions_thread); - return 0; -} - -#include <shlib-compat.h> -#if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2) -strong_alias (__feclearexcept, __old_feclearexcept) -compat_symbol (libm, __old_feclearexcept, feclearexcept, GLIBC_2_1); -#endif - -libm_hidden_ver (__feclearexcept, feclearexcept) -versioned_symbol (libm, __feclearexcept, feclearexcept, GLIBC_2_2); diff --git a/sysdeps/powerpc/nofpu/fedisblxcpt.c b/sysdeps/powerpc/nofpu/fedisblxcpt.c deleted file mode 100644 index 6514f45a73..0000000000 --- a/sysdeps/powerpc/nofpu/fedisblxcpt.c +++ /dev/null @@ -1,34 +0,0 @@ -/* Disable exceptions (soft-float edition). - Copyright (C) 2002-2017 Free Software Foundation, Inc. - Contributed by Aldy Hernandez <aldyh@redhat.com>, 2002. - 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/>. */ - -#include "soft-fp.h" -#include "soft-supp.h" -#include <fenv.h> - -int -fedisableexcept (int x) -{ - int old_exceptions = ~__sim_disabled_exceptions_thread & FE_ALL_EXCEPT; - - __sim_disabled_exceptions_thread |= x; - SIM_SET_GLOBAL (__sim_disabled_exceptions_global, - __sim_disabled_exceptions_thread); - - return old_exceptions; -} diff --git a/sysdeps/powerpc/nofpu/feenablxcpt.c b/sysdeps/powerpc/nofpu/feenablxcpt.c deleted file mode 100644 index cd71e4e9cd..0000000000 --- a/sysdeps/powerpc/nofpu/feenablxcpt.c +++ /dev/null @@ -1,33 +0,0 @@ -/* Enable exceptions (soft-float edition). - Copyright (C) 2002-2017 Free Software Foundation, Inc. - Contributed by Aldy Hernandez <aldyh@redhat.com>, 2002. - 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/>. */ - -#include "soft-supp.h" -#include <fenv.h> - -int -feenableexcept (int exceptions) -{ - int old_exceptions = ~__sim_disabled_exceptions_thread & FE_ALL_EXCEPT; - - __sim_disabled_exceptions_thread &= ~exceptions; - SIM_SET_GLOBAL (__sim_disabled_exceptions_global, - __sim_disabled_exceptions_thread); - - return old_exceptions; -} diff --git a/sysdeps/powerpc/nofpu/fegetenv.c b/sysdeps/powerpc/nofpu/fegetenv.c deleted file mode 100644 index 079946c58e..0000000000 --- a/sysdeps/powerpc/nofpu/fegetenv.c +++ /dev/null @@ -1,45 +0,0 @@ -/* Store current floating-point environment (soft-float edition). - Copyright (C) 2002-2017 Free Software Foundation, Inc. - Contributed by Aldy Hernandez <aldyh@redhat.com>, 2002, 2010. - 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/>. */ - -#include "soft-fp.h" -#include "soft-supp.h" - -int -__fegetenv (fenv_t *envp) -{ - fenv_union_t u; - - u.l[0] = __sim_exceptions_thread; - u.l[0] |= __sim_round_mode_thread; - u.l[1] = __sim_disabled_exceptions_thread; - - *envp = u.fenv; - - return 0; -} - -#include <shlib-compat.h> -#if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2) -strong_alias (__fegetenv, __old_fegetenv) -compat_symbol (libm, __old_fegetenv, fegetenv, GLIBC_2_1); -#endif - -libm_hidden_def (__fegetenv) -libm_hidden_ver (__fegetenv, fegetenv) -versioned_symbol (libm, __fegetenv, fegetenv, GLIBC_2_2); diff --git a/sysdeps/powerpc/nofpu/fegetexcept.c b/sysdeps/powerpc/nofpu/fegetexcept.c deleted file mode 100644 index 36f4f45b36..0000000000 --- a/sysdeps/powerpc/nofpu/fegetexcept.c +++ /dev/null @@ -1,27 +0,0 @@ -/* Get floating-point exceptions (soft-float edition). - Copyright (C) 2002-2017 Free Software Foundation, Inc. - Contributed by Aldy Hernandez <aldyh@redhat.com>, 2002. - 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/>. */ - -#include "soft-fp.h" -#include "soft-supp.h" - -int -fegetexcept (void) -{ - return (__sim_disabled_exceptions_thread ^ FE_ALL_EXCEPT) & FE_ALL_EXCEPT; -} diff --git a/sysdeps/powerpc/nofpu/fegetmode.c b/sysdeps/powerpc/nofpu/fegetmode.c deleted file mode 100644 index 2346858eda..0000000000 --- a/sysdeps/powerpc/nofpu/fegetmode.c +++ /dev/null @@ -1,33 +0,0 @@ -/* Store current floating-point control modes. PowerPC soft-float version. - Copyright (C) 2016-2017 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/>. */ - -#include "soft-fp.h" -#include "soft-supp.h" - -int -fegetmode (femode_t *modep) -{ - fenv_union_t u; - - u.l[0] = __sim_round_mode_thread; - u.l[1] = __sim_disabled_exceptions_thread; - - *modep = u.fenv; - - return 0; -} diff --git a/sysdeps/powerpc/nofpu/fegetround.c b/sysdeps/powerpc/nofpu/fegetround.c deleted file mode 100644 index 7d7dfbaeef..0000000000 --- a/sysdeps/powerpc/nofpu/fegetround.c +++ /dev/null @@ -1,30 +0,0 @@ -/* Return current rounding mode (soft-float edition). - Copyright (C) 2002-2017 Free Software Foundation, Inc. - Contributed by Aldy Hernandez <aldyh@redhat.com>, 2002. - 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/>. */ - -#include "soft-fp.h" -#include "soft-supp.h" - -int -__fegetround (void) -{ - return __sim_round_mode_thread; -} -libm_hidden_def (__fegetround) -weak_alias (__fegetround, fegetround) -libm_hidden_weak (fegetround) diff --git a/sysdeps/powerpc/nofpu/feholdexcpt.c b/sysdeps/powerpc/nofpu/feholdexcpt.c deleted file mode 100644 index b0dce0bed1..0000000000 --- a/sysdeps/powerpc/nofpu/feholdexcpt.c +++ /dev/null @@ -1,45 +0,0 @@ -/* Store current floating-point environment and clear exceptions - (soft-float edition). - Copyright (C) 2002-2017 Free Software Foundation, Inc. - Contributed by Aldy Hernandez <aldyh@redhat.com>, 2002. - 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/>. */ - -#include "soft-fp.h" -#include "soft-supp.h" - -int -__feholdexcept (fenv_t *envp) -{ - fenv_union_t u; - - /* Get the current state. */ - __fegetenv (envp); - - u.fenv = *envp; - /* Clear everything except the rounding mode. */ - u.l[0] &= 0x3; - /* Disable exceptions */ - u.l[1] = FE_ALL_EXCEPT; - - /* Put the new state in effect. */ - __fesetenv (&u.fenv); - - return 0; -} -libm_hidden_def (__feholdexcept) -weak_alias (__feholdexcept, feholdexcept) -libm_hidden_weak (feholdexcept) diff --git a/sysdeps/powerpc/nofpu/fenv_const.c b/sysdeps/powerpc/nofpu/fenv_const.c deleted file mode 100644 index 451070bcdf..0000000000 --- a/sysdeps/powerpc/nofpu/fenv_const.c +++ /dev/null @@ -1,38 +0,0 @@ -/* Constants for fenv_bits.h (soft float edition). - Copyright (C) 2002-2017 Free Software Foundation, Inc. - Contributed by Aldy Hernandez <aldyh@redhat.com>, 2002. - 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/>. */ - -/* We want to specify the bit pattern of the __fe_*_env constants, so - pretend they're really `long long' instead of `double'. */ - -/* If the default argument is used we use this value. Disable all - signalling exceptions as default. */ -const unsigned long long __fe_dfl_env __attribute__ ((aligned (8))) = -0x000000003e000000ULL; - -/* The same representation is used for femode_t. */ -extern const unsigned long long __fe_dfl_mode - __attribute__ ((aligned (8), alias ("__fe_dfl_env"))); - -/* Floating-point environment where none of the exceptions are masked. */ -const unsigned long long __fe_enabled_env __attribute__ ((aligned (8))) = -0x0000000000000000ULL; - -/* Floating-point environment with the NI bit set. No difference for - soft float from the default environment. */ -strong_alias (__fe_dfl_env, __fe_nonieee_env) diff --git a/sysdeps/powerpc/nofpu/fesetenv.c b/sysdeps/powerpc/nofpu/fesetenv.c deleted file mode 100644 index f6ef1737bd..0000000000 --- a/sysdeps/powerpc/nofpu/fesetenv.c +++ /dev/null @@ -1,47 +0,0 @@ -/* Set floating point environment (soft-float edition). - Copyright (C) 2002-2017 Free Software Foundation, Inc. - Contributed by Aldy Hernandez <aldyh@redhat.com>, 2002. - 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/>. */ - -#include "soft-fp.h" -#include "soft-supp.h" - -int -__fesetenv (const fenv_t *envp) -{ - fenv_union_t u; - - u.fenv = *envp; - __sim_exceptions_thread = u.l[0] & FE_ALL_EXCEPT; - SIM_SET_GLOBAL (__sim_exceptions_global, __sim_exceptions_thread); - __sim_round_mode_thread = u.l[0] & 0x3; - SIM_SET_GLOBAL (__sim_round_mode_global, __sim_round_mode_thread); - __sim_disabled_exceptions_thread = u.l[1]; - SIM_SET_GLOBAL (__sim_disabled_exceptions_global, - __sim_disabled_exceptions_thread); - return 0; -} - -#include <shlib-compat.h> -#if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2) -strong_alias (__fesetenv, __old_fesetenv) -compat_symbol (libm, __old_fesetenv, fesetenv, GLIBC_2_1); -#endif - -libm_hidden_def (__fesetenv) -libm_hidden_ver (__fesetenv, fesetenv) -versioned_symbol (libm, __fesetenv, fesetenv, GLIBC_2_2); diff --git a/sysdeps/powerpc/nofpu/fesetexcept.c b/sysdeps/powerpc/nofpu/fesetexcept.c deleted file mode 100644 index c22ee2e952..0000000000 --- a/sysdeps/powerpc/nofpu/fesetexcept.c +++ /dev/null @@ -1,28 +0,0 @@ -/* Set given exception flags. PowerPC soft-float version. - Copyright (C) 2016-2017 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/>. */ - -#include "soft-supp.h" - -int -fesetexcept (int excepts) -{ - __sim_exceptions_thread |= (excepts & FE_ALL_EXCEPT); - SIM_SET_GLOBAL (__sim_exceptions_global, __sim_exceptions_thread); - - return 0; -} diff --git a/sysdeps/powerpc/nofpu/fesetmode.c b/sysdeps/powerpc/nofpu/fesetmode.c deleted file mode 100644 index 85ce8b3ae1..0000000000 --- a/sysdeps/powerpc/nofpu/fesetmode.c +++ /dev/null @@ -1,34 +0,0 @@ -/* Install given floating-point control modes. PowerPC soft-float version. - Copyright (C) 2016-2017 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/>. */ - -#include "soft-fp.h" -#include "soft-supp.h" - -int -fesetmode (const femode_t *modep) -{ - fenv_union_t u; - - u.fenv = *modep; - __sim_round_mode_thread = u.l[0]; - SIM_SET_GLOBAL (__sim_round_mode_global, __sim_round_mode_thread); - __sim_disabled_exceptions_thread = u.l[1]; - SIM_SET_GLOBAL (__sim_disabled_exceptions_global, - __sim_disabled_exceptions_thread); - return 0; -} diff --git a/sysdeps/powerpc/nofpu/fesetround.c b/sysdeps/powerpc/nofpu/fesetround.c deleted file mode 100644 index 2ca60b5014..0000000000 --- a/sysdeps/powerpc/nofpu/fesetround.c +++ /dev/null @@ -1,36 +0,0 @@ -/* Set rounding mode (soft-float edition). - Copyright (C) 2002-2017 Free Software Foundation, Inc. - Contributed by Aldy Hernandez <aldyh@redhat.com>, 2002. - 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/>. */ - -#include "soft-fp.h" -#include "soft-supp.h" - -int -__fesetround (int round) -{ - if ((unsigned int) round > FE_DOWNWARD) - return 1; - - __sim_round_mode_thread = round; - SIM_SET_GLOBAL (__sim_round_mode_global, __sim_round_mode_thread); - - return 0; -} -libm_hidden_def (__fesetround) -weak_alias (__fesetround, fesetround) -libm_hidden_weak (fesetround) diff --git a/sysdeps/powerpc/nofpu/feupdateenv.c b/sysdeps/powerpc/nofpu/feupdateenv.c deleted file mode 100644 index 316b7a96f3..0000000000 --- a/sysdeps/powerpc/nofpu/feupdateenv.c +++ /dev/null @@ -1,53 +0,0 @@ -/* Install given floating-point environment and raise exceptions - (soft-float edition). - Copyright (C) 2002-2017 Free Software Foundation, Inc. - Contributed by Aldy Hernandez <aldyh@redhat.com>, 2002. - 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/>. */ - -#include "soft-fp.h" -#include "soft-supp.h" -#include <signal.h> - -int -__feupdateenv (const fenv_t *envp) -{ - int saved_exceptions; - - /* Save currently set exceptions. */ - saved_exceptions = __sim_exceptions_thread; - - /* Set environment. */ - __fesetenv (envp); - - /* Raise old exceptions. */ - __sim_exceptions_thread |= saved_exceptions; - SIM_SET_GLOBAL (__sim_exceptions_global, __sim_exceptions_thread); - if (saved_exceptions & ~__sim_disabled_exceptions_thread) - raise (SIGFPE); - - return 0; -} - -#include <shlib-compat.h> -#if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2) -strong_alias (__feupdateenv, __old_feupdateenv) -compat_symbol (libm, __old_feupdateenv, feupdateenv, GLIBC_2_1); -#endif - -libm_hidden_def (__feupdateenv) -libm_hidden_ver (__feupdateenv, feupdateenv) -versioned_symbol (libm, __feupdateenv, feupdateenv, GLIBC_2_2); diff --git a/sysdeps/powerpc/nofpu/fgetexcptflg.c b/sysdeps/powerpc/nofpu/fgetexcptflg.c deleted file mode 100644 index 4247be2352..0000000000 --- a/sysdeps/powerpc/nofpu/fgetexcptflg.c +++ /dev/null @@ -1,37 +0,0 @@ -/* Store current representation for exceptions (soft-float edition). - Copyright (C) 2002-2017 Free Software Foundation, Inc. - Contributed by Aldy Hernandez <aldyh@redhat.com>, 2002. - 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/>. */ - -#include "soft-fp.h" -#include "soft-supp.h" - -int -__fegetexceptflag (fexcept_t *flagp, int excepts) -{ - *flagp = (fexcept_t) __sim_exceptions_thread & excepts & FE_ALL_EXCEPT; - - return 0; -} - -#include <shlib-compat.h> -#if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2) -strong_alias (__fegetexceptflag, __old_fegetexceptflag) -compat_symbol (libm, __old_fegetexceptflag, fegetexceptflag, GLIBC_2_1); -#endif - -versioned_symbol (libm, __fegetexceptflag, fegetexceptflag, GLIBC_2_2); diff --git a/sysdeps/powerpc/nofpu/flt-rounds.c b/sysdeps/powerpc/nofpu/flt-rounds.c deleted file mode 100644 index 744ba95d60..0000000000 --- a/sysdeps/powerpc/nofpu/flt-rounds.c +++ /dev/null @@ -1,40 +0,0 @@ -/* Return current rounding mode as correct value for FLT_ROUNDS. - Copyright (C) 2013-2017 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/>. */ - -#include <stdlib.h> - -#include "soft-fp.h" -#include "soft-supp.h" - -int -__flt_rounds (void) -{ - switch (__sim_round_mode_thread) - { - case FP_RND_ZERO: - return 0; - case FP_RND_NEAREST: - return 1; - case FP_RND_PINF: - return 2; - case FP_RND_MINF: - return 3; - default: - abort (); - } -} diff --git a/sysdeps/powerpc/nofpu/fraiseexcpt.c b/sysdeps/powerpc/nofpu/fraiseexcpt.c deleted file mode 100644 index 585c1c7d95..0000000000 --- a/sysdeps/powerpc/nofpu/fraiseexcpt.c +++ /dev/null @@ -1,43 +0,0 @@ -/* Raise given exceptions (soft-float edition). - Copyright (C) 2002-2017 Free Software Foundation, Inc. - Contributed by Aldy Hernandez <aldyh@redhat.com>, 2002. - 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/>. */ - -#include "soft-fp.h" -#include "soft-supp.h" -#include <signal.h> - -#undef feraiseexcept -int -__feraiseexcept (int x) -{ - __sim_exceptions_thread |= x; - SIM_SET_GLOBAL (__sim_exceptions_global, __sim_exceptions_thread); - if (x & ~__sim_disabled_exceptions_thread) - raise (SIGFPE); - return 0; -} - -#include <shlib-compat.h> -#if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2) -strong_alias (__feraiseexcept, __old_feraiseexcept) -compat_symbol (libm, __old_feraiseexcept, feraiseexcept, GLIBC_2_1); -#endif - -libm_hidden_def (__feraiseexcept) -libm_hidden_ver (__feraiseexcept, feraiseexcept) -versioned_symbol (libm, __feraiseexcept, feraiseexcept, GLIBC_2_2); diff --git a/sysdeps/powerpc/nofpu/fsetexcptflg.c b/sysdeps/powerpc/nofpu/fsetexcptflg.c deleted file mode 100644 index 10b64285d3..0000000000 --- a/sysdeps/powerpc/nofpu/fsetexcptflg.c +++ /dev/null @@ -1,40 +0,0 @@ -/* Set floating-point environment exception handling (soft-float edition). - Copyright (C) 2002-2017 Free Software Foundation, Inc. - Contributed by Aldy Hernandez <aldyh@redhat.com>, 2002. - 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/>. */ - -#include "soft-fp.h" -#include "soft-supp.h" - -int -__fesetexceptflag(const fexcept_t *flagp, int excepts) -{ - /* Ignore exceptions not listed in 'excepts'. */ - __sim_exceptions_thread - = (__sim_exceptions_thread & ~excepts) | (*flagp & excepts); - SIM_SET_GLOBAL (__sim_exceptions_global, __sim_exceptions_thread); - - return 0; -} - -#include <shlib-compat.h> -#if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2) -strong_alias (__fesetexceptflag, __old_fesetexceptflag) -compat_symbol (libm, __old_fesetexceptflag, fesetexceptflag, GLIBC_2_1); -#endif - -versioned_symbol (libm, __fesetexceptflag, fesetexceptflag, GLIBC_2_2); diff --git a/sysdeps/powerpc/nofpu/ftestexcept.c b/sysdeps/powerpc/nofpu/ftestexcept.c deleted file mode 100644 index 56c804e558..0000000000 --- a/sysdeps/powerpc/nofpu/ftestexcept.c +++ /dev/null @@ -1,28 +0,0 @@ -/* Test floating-point exceptions (soft-float edition). - Copyright (C) 2002-2017 Free Software Foundation, Inc. - Contributed by Aldy Hernandez <aldyh@redhat.com>, 2002. - 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/>. */ - -#include "soft-fp.h" -#include "soft-supp.h" - -int -fetestexcept (int x) -{ - return __sim_exceptions_thread & x; -} -libm_hidden_def (fetestexcept) diff --git a/sysdeps/powerpc/nofpu/get-rounding-mode.h b/sysdeps/powerpc/nofpu/get-rounding-mode.h deleted file mode 100644 index 4e6206e121..0000000000 --- a/sysdeps/powerpc/nofpu/get-rounding-mode.h +++ /dev/null @@ -1,35 +0,0 @@ -/* Determine floating-point rounding mode within libc. PowerPC - soft-float version. - Copyright (C) 2012-2017 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 _POWERPC_NOFPU_GET_ROUNDING_MODE_H -#define _POWERPC_NOFPU_GET_ROUNDING_MODE_H 1 - -#include <fenv.h> - -#include "soft-supp.h" - -/* Return the floating-point rounding mode. */ - -static inline int -get_rounding_mode (void) -{ - return __sim_round_mode_thread; -} - -#endif /* get-rounding-mode.h */ diff --git a/sysdeps/powerpc/nofpu/libm-test-ulps b/sysdeps/powerpc/nofpu/libm-test-ulps deleted file mode 100644 index 8935f0d714..0000000000 --- a/sysdeps/powerpc/nofpu/libm-test-ulps +++ /dev/null @@ -1,2364 +0,0 @@ -# Begin of automatic generation - -# Maximal error of functions: -Function: "acos": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 - -Function: "acos_downward": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 3 -ldouble: 3 - -Function: "acos_towardzero": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 3 -ldouble: 3 - -Function: "acos_upward": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 - -Function: "acosh": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 -ildouble: 1 -ldouble: 1 - -Function: "acosh_downward": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 -ildouble: 2 -ldouble: 2 - -Function: "acosh_towardzero": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 -ildouble: 4 -ldouble: 4 - -Function: "acosh_upward": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 -ildouble: 3 -ldouble: 4 - -Function: "asin": -float: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 - -Function: "asin_downward": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 - -Function: "asin_towardzero": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 - -Function: "asin_upward": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 - -Function: "asinh": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 - -Function: "asinh_downward": -double: 3 -float: 3 -idouble: 3 -ifloat: 3 -ildouble: 5 -ldouble: 5 - -Function: "asinh_towardzero": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 -ildouble: 5 -ldouble: 5 - -Function: "asinh_upward": -double: 3 -float: 3 -idouble: 3 -ifloat: 3 -ildouble: 7 -ldouble: 7 - -Function: "atan": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 - -Function: "atan2": -float: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 - -Function: "atan2_downward": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 5 -ldouble: 5 - -Function: "atan2_towardzero": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 6 -ldouble: 6 - -Function: "atan2_upward": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 3 -ldouble: 3 - -Function: "atan_downward": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 1 -ldouble: 1 - -Function: "atan_towardzero": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 - -Function: "atan_upward": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 2 -ldouble: 2 - -Function: "atanh": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 -ildouble: 2 -ldouble: 2 - -Function: "atanh_downward": -double: 3 -float: 3 -idouble: 3 -ifloat: 3 -ildouble: 3 -ldouble: 3 - -Function: "atanh_towardzero": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 -ildouble: 2 -ldouble: 2 - -Function: "atanh_upward": -double: 3 -float: 3 -idouble: 3 -ifloat: 3 -ildouble: 4 -ldouble: 4 - -Function: "cabs": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 - -Function: "cabs_downward": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 - -Function: "cabs_towardzero": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 - -Function: "cabs_upward": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 - -Function: Real part of "cacos": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 2 -ldouble: 2 - -Function: Imaginary part of "cacos": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 -ildouble: 1 -ldouble: 1 - -Function: Real part of "cacos_downward": -double: 3 -float: 2 -idouble: 3 -ifloat: 2 -ildouble: 6 -ldouble: 6 - -Function: Imaginary part of "cacos_downward": -double: 5 -float: 3 -idouble: 5 -ifloat: 3 -ildouble: 8 -ldouble: 8 - -Function: Real part of "cacos_towardzero": -double: 3 -float: 2 -idouble: 3 -ifloat: 2 -ildouble: 7 -ldouble: 7 - -Function: Imaginary part of "cacos_towardzero": -double: 5 -float: 3 -idouble: 5 -ifloat: 3 -ildouble: 8 -ldouble: 8 - -Function: Real part of "cacos_upward": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 -ildouble: 4 -ldouble: 4 - -Function: Imaginary part of "cacos_upward": -double: 5 -float: 7 -idouble: 5 -ifloat: 7 -ildouble: 13 -ldouble: 13 - -Function: Real part of "cacosh": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 -ildouble: 1 -ldouble: 1 - -Function: Imaginary part of "cacosh": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 2 -ldouble: 2 - -Function: Real part of "cacosh_downward": -double: 5 -float: 3 -idouble: 5 -ifloat: 3 -ildouble: 8 -ldouble: 8 - -Function: Imaginary part of "cacosh_downward": -double: 3 -float: 3 -idouble: 3 -ifloat: 3 -ildouble: 6 -ldouble: 6 - -Function: Real part of "cacosh_towardzero": -double: 5 -float: 3 -idouble: 5 -ifloat: 3 -ildouble: 8 -ldouble: 8 - -Function: Imaginary part of "cacosh_towardzero": -double: 3 -float: 2 -idouble: 3 -ifloat: 2 -ildouble: 7 -ldouble: 7 - -Function: Real part of "cacosh_upward": -double: 4 -float: 4 -idouble: 4 -ifloat: 4 -ildouble: 12 -ldouble: 12 - -Function: Imaginary part of "cacosh_upward": -double: 3 -float: 2 -idouble: 3 -ifloat: 2 -ildouble: 5 -ldouble: 5 - -Function: "carg": -float: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 - -Function: "carg_downward": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 5 -ldouble: 5 - -Function: "carg_towardzero": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 6 -ldouble: 6 - -Function: "carg_upward": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 3 -ldouble: 3 - -Function: Real part of "casin": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 - -Function: Imaginary part of "casin": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 -ildouble: 1 -ldouble: 1 - -Function: Real part of "casin_downward": -double: 3 -float: 2 -idouble: 3 -ifloat: 2 -ildouble: 3 -ldouble: 3 - -Function: Imaginary part of "casin_downward": -double: 5 -float: 3 -idouble: 5 -ifloat: 3 -ildouble: 8 -ldouble: 8 - -Function: Real part of "casin_towardzero": -double: 3 -float: 1 -idouble: 3 -ifloat: 1 -ildouble: 5 -ldouble: 5 - -Function: Imaginary part of "casin_towardzero": -double: 5 -float: 3 -idouble: 5 -ifloat: 3 -ildouble: 8 -ldouble: 8 - -Function: Real part of "casin_upward": -double: 3 -float: 2 -idouble: 3 -ifloat: 2 -ildouble: 6 -ldouble: 6 - -Function: Imaginary part of "casin_upward": -double: 5 -float: 7 -idouble: 5 -ifloat: 7 -ildouble: 13 -ldouble: 13 - -Function: Real part of "casinh": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 -ildouble: 1 -ldouble: 1 - -Function: Imaginary part of "casinh": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 - -Function: Real part of "casinh_downward": -double: 5 -float: 3 -idouble: 5 -ifloat: 3 -ildouble: 8 -ldouble: 8 - -Function: Imaginary part of "casinh_downward": -double: 3 -float: 2 -idouble: 3 -ifloat: 2 -ildouble: 3 -ldouble: 3 - -Function: Real part of "casinh_towardzero": -double: 5 -float: 3 -idouble: 5 -ifloat: 3 -ildouble: 8 -ldouble: 8 - -Function: Imaginary part of "casinh_towardzero": -double: 3 -float: 1 -idouble: 3 -ifloat: 1 -ildouble: 5 -ldouble: 5 - -Function: Real part of "casinh_upward": -double: 5 -float: 7 -idouble: 5 -ifloat: 7 -ildouble: 13 -ldouble: 13 - -Function: Imaginary part of "casinh_upward": -double: 3 -float: 2 -idouble: 3 -ifloat: 2 -ildouble: 6 -ldouble: 6 - -Function: Real part of "catan": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 3 -ldouble: 3 - -Function: Imaginary part of "catan": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 - -Function: Real part of "catan_downward": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 6 -ldouble: 6 - -Function: Imaginary part of "catan_downward": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 -ildouble: 7 -ldouble: 7 - -Function: Real part of "catan_towardzero": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 7 -ldouble: 7 - -Function: Imaginary part of "catan_towardzero": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 -ildouble: 3 -ldouble: 3 - -Function: Real part of "catan_upward": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 6 -ldouble: 6 - -Function: Imaginary part of "catan_upward": -double: 3 -float: 3 -idouble: 3 -ifloat: 3 -ildouble: 8 -ldouble: 8 - -Function: Real part of "catanh": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 - -Function: Imaginary part of "catanh": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 3 -ldouble: 3 - -Function: Real part of "catanh_downward": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 -ildouble: 5 -ldouble: 5 - -Function: Imaginary part of "catanh_downward": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 6 -ldouble: 6 - -Function: Real part of "catanh_towardzero": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 -ildouble: 3 -ldouble: 3 - -Function: Imaginary part of "catanh_towardzero": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 7 -ldouble: 7 - -Function: Real part of "catanh_upward": -double: 4 -float: 4 -idouble: 4 -ifloat: 4 -ildouble: 8 -ldouble: 8 - -Function: Imaginary part of "catanh_upward": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 6 -ldouble: 6 - -Function: "cbrt": -double: 3 -float: 1 -idouble: 3 -ifloat: 1 -ildouble: 1 -ldouble: 1 - -Function: "cbrt_downward": -double: 4 -float: 1 -idouble: 4 -ifloat: 1 -ildouble: 5 -ldouble: 5 - -Function: "cbrt_towardzero": -double: 3 -float: 1 -idouble: 3 -ifloat: 1 -ildouble: 3 -ldouble: 3 - -Function: "cbrt_upward": -double: 5 -float: 1 -idouble: 5 -ifloat: 1 -ildouble: 2 -ldouble: 2 - -Function: Real part of "ccos": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 - -Function: Imaginary part of "ccos": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 - -Function: Real part of "ccos_downward": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 6 -ldouble: 6 - -Function: Imaginary part of "ccos_downward": -double: 2 -float: 3 -idouble: 2 -ifloat: 3 -ildouble: 6 -ldouble: 6 - -Function: Real part of "ccos_towardzero": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 6 -ldouble: 6 - -Function: Imaginary part of "ccos_towardzero": -double: 2 -float: 3 -idouble: 2 -ifloat: 3 -ildouble: 6 -ldouble: 6 - -Function: Real part of "ccos_upward": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 3 -ldouble: 3 - -Function: Imaginary part of "ccos_upward": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 -ildouble: 4 -ldouble: 4 - -Function: Real part of "ccosh": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 - -Function: Imaginary part of "ccosh": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 - -Function: Real part of "ccosh_downward": -double: 1 -float: 3 -idouble: 1 -ifloat: 3 -ildouble: 6 -ldouble: 6 - -Function: Imaginary part of "ccosh_downward": -double: 2 -float: 3 -idouble: 2 -ifloat: 3 -ildouble: 6 -ldouble: 6 - -Function: Real part of "ccosh_towardzero": -double: 1 -float: 3 -idouble: 1 -ifloat: 3 -ildouble: 10 -ldouble: 10 - -Function: Imaginary part of "ccosh_towardzero": -double: 2 -float: 3 -idouble: 2 -ifloat: 3 -ildouble: 6 -ldouble: 6 - -Function: Real part of "ccosh_upward": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 3 -ldouble: 3 - -Function: Imaginary part of "ccosh_upward": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 -ildouble: 4 -ldouble: 4 - -Function: Real part of "cexp": -double: 2 -float: 1 -idouble: 2 -ifloat: 1 -ildouble: 1 -ldouble: 1 - -Function: Imaginary part of "cexp": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 1 -ldouble: 1 - -Function: Real part of "cexp_downward": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 11 -ldouble: 11 - -Function: Imaginary part of "cexp_downward": -double: 1 -float: 3 -idouble: 1 -ifloat: 3 -ildouble: 11 -ldouble: 11 - -Function: Real part of "cexp_towardzero": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 11 -ldouble: 11 - -Function: Imaginary part of "cexp_towardzero": -double: 1 -float: 3 -idouble: 1 -ifloat: 3 -ildouble: 11 -ldouble: 11 - -Function: Real part of "cexp_upward": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 3 -ldouble: 3 - -Function: Imaginary part of "cexp_upward": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 3 -ldouble: 3 - -Function: Real part of "clog": -double: 3 -float: 3 -idouble: 3 -ifloat: 3 -ildouble: 2 -ldouble: 2 - -Function: Imaginary part of "clog": -float: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 - -Function: Real part of "clog10": -double: 3 -float: 4 -idouble: 3 -ifloat: 4 -ildouble: 3 -ldouble: 3 - -Function: Imaginary part of "clog10": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 -ildouble: 2 -ldouble: 2 - -Function: Real part of "clog10_downward": -double: 5 -float: 4 -idouble: 5 -ifloat: 4 -ildouble: 8 -ldouble: 8 - -Function: Imaginary part of "clog10_downward": -double: 2 -float: 4 -idouble: 2 -ifloat: 4 -ildouble: 7 -ldouble: 7 - -Function: Real part of "clog10_towardzero": -double: 5 -float: 5 -idouble: 5 -ifloat: 5 -ildouble: 8 -ldouble: 8 - -Function: Imaginary part of "clog10_towardzero": -double: 2 -float: 4 -idouble: 2 -ifloat: 4 -ildouble: 8 -ldouble: 8 - -Function: Real part of "clog10_upward": -double: 6 -float: 5 -idouble: 6 -ifloat: 5 -ildouble: 8 -ldouble: 8 - -Function: Imaginary part of "clog10_upward": -double: 2 -float: 4 -idouble: 2 -ifloat: 4 -ildouble: 7 -ldouble: 7 - -Function: Real part of "clog_downward": -double: 4 -float: 3 -idouble: 4 -ifloat: 3 -ildouble: 3 -ldouble: 3 - -Function: Imaginary part of "clog_downward": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 5 -ldouble: 5 - -Function: Real part of "clog_towardzero": -double: 4 -float: 4 -idouble: 4 -ifloat: 4 -ildouble: 4 -ldouble: 4 - -Function: Imaginary part of "clog_towardzero": -double: 1 -float: 3 -idouble: 1 -ifloat: 3 -ildouble: 7 -ldouble: 7 - -Function: Real part of "clog_upward": -double: 4 -float: 3 -idouble: 4 -ifloat: 3 -ildouble: 6 -ldouble: 6 - -Function: Imaginary part of "clog_upward": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 4 -ldouble: 4 - -Function: "cos": -float: 1 -ifloat: 1 -ildouble: 4 -ldouble: 4 - -Function: "cos_downward": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 5 -ldouble: 5 - -Function: "cos_towardzero": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 4 -ldouble: 4 - -Function: "cos_upward": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 5 -ldouble: 5 - -Function: "cosh": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 3 -ldouble: 3 - -Function: "cosh_downward": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 - -Function: "cosh_towardzero": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 - -Function: "cosh_upward": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 2 -ldouble: 2 - -Function: Real part of "cpow": -double: 2 -float: 4 -idouble: 2 -ifloat: 4 -ildouble: 4 -ldouble: 4 - -Function: Imaginary part of "cpow": -float: 2 -ifloat: 2 -ildouble: 1 -ldouble: 1 - -Function: Real part of "cpow_downward": -double: 4 -float: 8 -idouble: 4 -ifloat: 8 -ildouble: 7 -ldouble: 7 - -Function: Imaginary part of "cpow_downward": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 4 -ldouble: 4 - -Function: Real part of "cpow_towardzero": -double: 4 -float: 8 -idouble: 4 -ifloat: 8 -ildouble: 8 -ldouble: 8 - -Function: Imaginary part of "cpow_towardzero": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 4 -ldouble: 4 - -Function: Real part of "cpow_upward": -double: 4 -float: 1 -idouble: 4 -ifloat: 1 -ildouble: 3 -ldouble: 3 - -Function: Imaginary part of "cpow_upward": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 3 -ldouble: 3 - -Function: Real part of "csin": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 - -Function: Imaginary part of "csin": -ildouble: 1 -ldouble: 1 - -Function: Real part of "csin_downward": -double: 2 -float: 3 -idouble: 2 -ifloat: 3 -ildouble: 6 -ldouble: 6 - -Function: Imaginary part of "csin_downward": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 6 -ldouble: 6 - -Function: Real part of "csin_towardzero": -double: 2 -float: 3 -idouble: 2 -ifloat: 3 -ildouble: 6 -ldouble: 6 - -Function: Imaginary part of "csin_towardzero": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 6 -ldouble: 6 - -Function: Real part of "csin_upward": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 -ildouble: 3 -ldouble: 3 - -Function: Imaginary part of "csin_upward": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 3 -ldouble: 3 - -Function: Real part of "csinh": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 - -Function: Imaginary part of "csinh": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 - -Function: Real part of "csinh_downward": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 -ildouble: 6 -ldouble: 6 - -Function: Imaginary part of "csinh_downward": -double: 2 -float: 3 -idouble: 2 -ifloat: 3 -ildouble: 6 -ldouble: 6 - -Function: Real part of "csinh_towardzero": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 -ildouble: 6 -ldouble: 6 - -Function: Imaginary part of "csinh_towardzero": -double: 2 -float: 3 -idouble: 2 -ifloat: 3 -ildouble: 6 -ldouble: 6 - -Function: Real part of "csinh_upward": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 3 -ldouble: 3 - -Function: Imaginary part of "csinh_upward": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 -ildouble: 3 -ldouble: 3 - -Function: Real part of "csqrt": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 -ildouble: 1 -ldouble: 1 - -Function: Imaginary part of "csqrt": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 -ildouble: 1 -ldouble: 1 - -Function: Real part of "csqrt_downward": -double: 5 -float: 4 -idouble: 5 -ifloat: 4 -ildouble: 4 -ldouble: 4 - -Function: Imaginary part of "csqrt_downward": -double: 4 -float: 3 -idouble: 4 -ifloat: 3 -ildouble: 5 -ldouble: 5 - -Function: Real part of "csqrt_towardzero": -double: 4 -float: 3 -idouble: 4 -ifloat: 3 -ildouble: 5 -ldouble: 5 - -Function: Imaginary part of "csqrt_towardzero": -double: 4 -float: 3 -idouble: 4 -ifloat: 3 -ildouble: 5 -ldouble: 5 - -Function: Real part of "csqrt_upward": -double: 5 -float: 4 -idouble: 5 -ifloat: 4 -ildouble: 12 -ldouble: 12 - -Function: Imaginary part of "csqrt_upward": -double: 3 -float: 3 -idouble: 3 -ifloat: 3 -ildouble: 8 -ldouble: 8 - -Function: Real part of "ctan": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 3 -ldouble: 3 - -Function: Imaginary part of "ctan": -double: 2 -float: 1 -idouble: 2 -ifloat: 1 -ildouble: 2 -ldouble: 2 - -Function: Real part of "ctan_downward": -double: 6 -float: 5 -idouble: 6 -ifloat: 5 -ildouble: 6 -ldouble: 6 - -Function: Imaginary part of "ctan_downward": -double: 2 -float: 1 -idouble: 2 -ifloat: 1 -ildouble: 9 -ldouble: 9 - -Function: Real part of "ctan_towardzero": -double: 5 -float: 3 -idouble: 5 -ifloat: 3 -ildouble: 4 -ldouble: 4 - -Function: Imaginary part of "ctan_towardzero": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 -ildouble: 13 -ldouble: 13 - -Function: Real part of "ctan_upward": -double: 2 -float: 3 -idouble: 2 -ifloat: 3 -ildouble: 7 -ldouble: 7 - -Function: Imaginary part of "ctan_upward": -double: 2 -float: 3 -idouble: 2 -ifloat: 3 -ildouble: 10 -ldouble: 10 - -Function: Real part of "ctanh": -double: 2 -float: 1 -idouble: 2 -ifloat: 1 -ildouble: 2 -ldouble: 2 - -Function: Imaginary part of "ctanh": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 -ildouble: 3 -ldouble: 3 - -Function: Real part of "ctanh_downward": -double: 4 -float: 1 -idouble: 4 -ifloat: 1 -ildouble: 9 -ldouble: 9 - -Function: Imaginary part of "ctanh_downward": -double: 6 -float: 5 -idouble: 6 -ifloat: 5 -ildouble: 6 -ldouble: 6 - -Function: Real part of "ctanh_towardzero": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 -ildouble: 13 -ldouble: 13 - -Function: Imaginary part of "ctanh_towardzero": -double: 5 -float: 3 -idouble: 5 -ifloat: 3 -ildouble: 10 -ldouble: 10 - -Function: Real part of "ctanh_upward": -double: 2 -float: 3 -idouble: 2 -ifloat: 3 -ildouble: 10 -ldouble: 10 - -Function: Imaginary part of "ctanh_upward": -double: 2 -float: 3 -idouble: 2 -ifloat: 3 -ildouble: 10 -ldouble: 10 - -Function: "erf": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 - -Function: "erf_downward": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 - -Function: "erf_towardzero": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 - -Function: "erf_upward": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 - -Function: "erfc": -double: 3 -float: 2 -idouble: 3 -ifloat: 2 -ildouble: 3 -ldouble: 3 - -Function: "erfc_downward": -double: 5 -float: 6 -idouble: 5 -ifloat: 6 -ildouble: 10 -ldouble: 10 - -Function: "erfc_towardzero": -double: 3 -float: 4 -idouble: 3 -ifloat: 4 -ildouble: 9 -ldouble: 9 - -Function: "erfc_upward": -double: 5 -float: 6 -idouble: 5 -ifloat: 6 -ildouble: 7 -ldouble: 7 - -Function: "exp": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 - -Function: "exp10": -double: 2 -idouble: 2 -ildouble: 1 -ldouble: 1 - -Function: "exp10_downward": -double: 2 -float: 1 -idouble: 2 -ifloat: 1 -ildouble: 9 -ldouble: 9 - -Function: "exp10_towardzero": -double: 2 -float: 1 -idouble: 2 -ifloat: 1 -ildouble: 9 -ldouble: 9 - -Function: "exp10_upward": -double: 2 -float: 1 -idouble: 2 -ifloat: 1 -ildouble: 4 -ldouble: 4 - -Function: "exp2": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 - -Function: "exp2_downward": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 - -Function: "exp2_towardzero": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 - -Function: "exp2_upward": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 - -Function: "exp_downward": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 - -Function: "exp_towardzero": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 - -Function: "exp_upward": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 - -Function: "expm1": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 - -Function: "expm1_downward": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 3 -ldouble: 3 - -Function: "expm1_towardzero": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 5 -ldouble: 5 - -Function: "expm1_upward": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 6 -ldouble: 6 - -Function: "fma": -ildouble: 1 -ldouble: 1 - -Function: "fma_downward": -ildouble: 1 -ldouble: 1 - -Function: "fma_towardzero": -ildouble: 2 -ldouble: 2 - -Function: "fma_upward": -ildouble: 3 -ldouble: 3 - -Function: "fmod": -ildouble: 1 -ldouble: 1 - -Function: "fmod_downward": -ildouble: 1 -ldouble: 1 - -Function: "fmod_towardzero": -ildouble: 1 -ldouble: 1 - -Function: "fmod_upward": -ildouble: 1 -ldouble: 1 - -Function: "gamma": -double: 4 -float: 4 -idouble: 4 -ifloat: 4 -ildouble: 3 -ldouble: 3 - -Function: "gamma_downward": -double: 5 -float: 4 -idouble: 5 -ifloat: 4 -ildouble: 15 -ldouble: 15 - -Function: "gamma_towardzero": -double: 5 -float: 4 -idouble: 5 -ifloat: 4 -ildouble: 16 -ldouble: 16 - -Function: "gamma_upward": -double: 5 -float: 5 -idouble: 5 -ifloat: 5 -ildouble: 11 -ldouble: 11 - -Function: "hypot": -double: 1 -idouble: 1 -ildouble: 1 -ldouble: 1 - -Function: "hypot_downward": -double: 1 -idouble: 1 -ildouble: 2 -ldouble: 2 - -Function: "hypot_towardzero": -double: 1 -idouble: 1 -ildouble: 2 -ldouble: 2 - -Function: "hypot_upward": -double: 1 -idouble: 1 -ildouble: 3 -ldouble: 3 - -Function: "j0": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 -ildouble: 2 -ldouble: 2 - -Function: "j0_downward": -double: 2 -float: 3 -idouble: 2 -ifloat: 3 -ildouble: 11 -ldouble: 11 - -Function: "j0_towardzero": -double: 3 -float: 2 -idouble: 3 -ifloat: 2 -ildouble: 8 -ldouble: 8 - -Function: "j0_upward": -double: 3 -float: 2 -idouble: 3 -ifloat: 2 -ildouble: 5 -ldouble: 5 - -Function: "j1": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 1 -ldouble: 1 - -Function: "j1_downward": -double: 3 -float: 2 -idouble: 3 -ifloat: 2 -ildouble: 6 -ldouble: 6 - -Function: "j1_towardzero": -double: 3 -float: 2 -idouble: 3 -ifloat: 2 -ildouble: 6 -ldouble: 6 - -Function: "j1_upward": -double: 3 -float: 5 -idouble: 3 -ifloat: 5 -ildouble: 6 -ldouble: 6 - -Function: "jn": -double: 4 -float: 4 -idouble: 4 -ifloat: 4 -ildouble: 4 -ldouble: 4 - -Function: "jn_downward": -double: 5 -float: 5 -idouble: 5 -ifloat: 5 -ildouble: 6 -ldouble: 6 - -Function: "jn_towardzero": -double: 5 -float: 5 -idouble: 5 -ifloat: 5 -ildouble: 6 -ldouble: 6 - -Function: "jn_upward": -double: 5 -float: 5 -idouble: 5 -ifloat: 5 -ildouble: 5 -ldouble: 5 - -Function: "ldexp_downward": -ildouble: 1 -ldouble: 1 - -Function: "ldexp_upward": -ildouble: 1 -ldouble: 1 - -Function: "lgamma": -double: 4 -float: 4 -idouble: 4 -ifloat: 4 -ildouble: 3 -ldouble: 3 - -Function: "lgamma_downward": -double: 5 -float: 4 -idouble: 5 -ifloat: 4 -ildouble: 15 -ldouble: 15 - -Function: "lgamma_towardzero": -double: 5 -float: 4 -idouble: 5 -ifloat: 4 -ildouble: 16 -ldouble: 16 - -Function: "lgamma_upward": -double: 5 -float: 5 -idouble: 5 -ifloat: 5 -ildouble: 11 -ldouble: 11 - -Function: "log": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 - -Function: "log10": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 -ildouble: 1 -ldouble: 1 - -Function: "log10_downward": -double: 2 -float: 3 -idouble: 2 -ifloat: 3 -ildouble: 1 -ldouble: 1 - -Function: "log10_towardzero": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 -ildouble: 2 -ldouble: 2 - -Function: "log10_upward": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 -ildouble: 1 -ldouble: 1 - -Function: "log1p": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 - -Function: "log1p_downward": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 -ildouble: 2 -ldouble: 2 - -Function: "log1p_towardzero": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 -ildouble: 2 -ldouble: 2 - -Function: "log1p_upward": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 -ildouble: 2 -ldouble: 2 - -Function: "log2": -double: 2 -float: 1 -idouble: 2 -ifloat: 1 -ildouble: 1 -ldouble: 1 - -Function: "log2_downward": -double: 3 -float: 3 -idouble: 3 -ifloat: 3 -ildouble: 2 -ldouble: 2 - -Function: "log2_towardzero": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 -ildouble: 4 -ldouble: 4 - -Function: "log2_upward": -double: 3 -float: 3 -idouble: 3 -ifloat: 3 -ildouble: 4 -ldouble: 4 - -Function: "log_downward": -float: 2 -ifloat: 2 -ildouble: 1 -ldouble: 1 - -Function: "log_towardzero": -float: 2 -ifloat: 2 -ildouble: 2 -ldouble: 2 - -Function: "log_upward": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 1 -ldouble: 1 - -Function: "nextafter_downward": -ildouble: 1 -ldouble: 1 - -Function: "nextafter_upward": -ildouble: 1 -ldouble: 1 - -Function: "pow": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 - -Function: "pow10": -double: 2 -idouble: 2 -ildouble: 1 -ldouble: 1 - -Function: "pow10_downward": -double: 2 -float: 1 -idouble: 2 -ifloat: 1 -ildouble: 9 -ldouble: 9 - -Function: "pow10_towardzero": -double: 2 -float: 1 -idouble: 2 -ifloat: 1 -ildouble: 9 -ldouble: 9 - -Function: "pow10_upward": -double: 2 -float: 1 -idouble: 2 -ifloat: 1 -ildouble: 4 -ldouble: 4 - -Function: "pow_downward": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 - -Function: "pow_towardzero": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 - -Function: "pow_upward": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 - -Function: "scalb_downward": -ildouble: 1 -ldouble: 1 - -Function: "scalb_upward": -ildouble: 1 -ldouble: 1 - -Function: "scalbln_downward": -ildouble: 1 -ldouble: 1 - -Function: "scalbln_upward": -ildouble: 1 -ldouble: 1 - -Function: "scalbn_downward": -ildouble: 1 -ldouble: 1 - -Function: "scalbn_upward": -ildouble: 1 -ldouble: 1 - -Function: "sin": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 - -Function: "sin_downward": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 4 -ldouble: 4 - -Function: "sin_towardzero": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 4 -ldouble: 4 - -Function: "sin_upward": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 5 -ldouble: 5 - -Function: "sincos": -float: 1 -ifloat: 1 -ildouble: 1 -ldouble: 1 - -Function: "sincos_downward": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 4 -ldouble: 4 - -Function: "sincos_towardzero": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 7 -ldouble: 7 - -Function: "sincos_upward": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 7 -ldouble: 7 - -Function: "sinh": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 -ildouble: 3 -ldouble: 3 - -Function: "sinh_downward": -double: 3 -float: 3 -idouble: 3 -ifloat: 3 -ildouble: 6 -ldouble: 6 - -Function: "sinh_towardzero": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 -ildouble: 6 -ldouble: 6 - -Function: "sinh_upward": -double: 3 -float: 3 -idouble: 3 -ifloat: 3 -ildouble: 6 -ldouble: 6 - -Function: "sqrt": -ildouble: 1 -ldouble: 1 - -Function: "sqrt_downward": -ildouble: 1 -ldouble: 1 - -Function: "sqrt_towardzero": -ildouble: 1 -ldouble: 1 - -Function: "sqrt_upward": -ildouble: 1 -ldouble: 1 - -Function: "tan": -float: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 - -Function: "tan_downward": -double: 1 -float: 2 -idouble: 1 -ifloat: 2 -ildouble: 3 -ldouble: 3 - -Function: "tan_towardzero": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 2 -ldouble: 2 - -Function: "tan_upward": -double: 1 -float: 1 -idouble: 1 -ifloat: 1 -ildouble: 3 -ldouble: 3 - -Function: "tanh": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 -ildouble: 1 -ldouble: 1 - -Function: "tanh_downward": -double: 3 -float: 3 -idouble: 3 -ifloat: 3 -ildouble: 4 -ldouble: 4 - -Function: "tanh_towardzero": -double: 2 -float: 2 -idouble: 2 -ifloat: 2 -ildouble: 4 -ldouble: 4 - -Function: "tanh_upward": -double: 3 -float: 3 -idouble: 3 -ifloat: 3 -ildouble: 6 -ldouble: 6 - -Function: "tgamma": -double: 5 -float: 4 -idouble: 5 -ifloat: 4 -ildouble: 3 -ldouble: 3 - -Function: "tgamma_downward": -double: 5 -float: 5 -idouble: 5 -ifloat: 5 -ildouble: 4 -ldouble: 4 - -Function: "tgamma_towardzero": -double: 5 -float: 4 -idouble: 5 -ifloat: 4 -ildouble: 3 -ldouble: 3 - -Function: "tgamma_upward": -double: 4 -float: 4 -idouble: 4 -ifloat: 4 -ildouble: 4 -ldouble: 4 - -Function: "y0": -double: 2 -float: 1 -idouble: 2 -ifloat: 1 -ildouble: 1 -ldouble: 1 - -Function: "y0_downward": -double: 3 -float: 2 -idouble: 3 -ifloat: 2 -ildouble: 10 -ldouble: 10 - -Function: "y0_towardzero": -double: 3 -float: 3 -idouble: 3 -ifloat: 3 -ildouble: 8 -ldouble: 8 - -Function: "y0_upward": -double: 3 -float: 4 -idouble: 3 -ifloat: 4 -ildouble: 7 -ldouble: 7 - -Function: "y1": -double: 3 -float: 2 -idouble: 3 -ifloat: 2 -ildouble: 2 -ldouble: 2 - -Function: "y1_downward": -double: 3 -float: 2 -idouble: 3 -ifloat: 2 -ildouble: 7 -ldouble: 7 - -Function: "y1_towardzero": -double: 3 -float: 2 -idouble: 3 -ifloat: 2 -ildouble: 7 -ldouble: 7 - -Function: "y1_upward": -double: 7 -float: 2 -idouble: 7 -ifloat: 2 -ildouble: 9 -ldouble: 9 - -Function: "yn": -double: 3 -float: 2 -idouble: 3 -ifloat: 2 -ildouble: 2 -ldouble: 2 - -Function: "yn_downward": -double: 3 -float: 2 -idouble: 3 -ifloat: 2 -ildouble: 10 -ldouble: 10 - -Function: "yn_towardzero": -double: 3 -float: 3 -idouble: 3 -ifloat: 3 -ildouble: 8 -ldouble: 8 - -Function: "yn_upward": -double: 4 -float: 4 -idouble: 4 -ifloat: 4 -ildouble: 5 -ldouble: 5 - -# end of automatic generation diff --git a/sysdeps/powerpc/nofpu/libm-test-ulps-name b/sysdeps/powerpc/nofpu/libm-test-ulps-name deleted file mode 100644 index 3ed2c6ec8a..0000000000 --- a/sysdeps/powerpc/nofpu/libm-test-ulps-name +++ /dev/null @@ -1 +0,0 @@ -PowerPC soft-float diff --git a/sysdeps/powerpc/nofpu/sim-full.c b/sysdeps/powerpc/nofpu/sim-full.c deleted file mode 100644 index da48f3714e..0000000000 --- a/sysdeps/powerpc/nofpu/sim-full.c +++ /dev/null @@ -1,57 +0,0 @@ -/* Software floating-point exception handling emulation. - Copyright (C) 2002-2017 Free Software Foundation, Inc. - Contributed by Aldy Hernandez <aldyh@redhat.com>, 2002. - 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/>. */ - -#include <signal.h> -#include "soft-fp.h" -#include "soft-supp.h" - -/* Thread-local to store sticky exceptions. */ -__thread int __sim_exceptions_thread __attribute__ ((nocommon)); -libc_hidden_data_def (__sim_exceptions_thread); - -/* By default, no exceptions should trap. */ -__thread int __sim_disabled_exceptions_thread = 0xffffffff; -libc_hidden_data_def (__sim_disabled_exceptions_thread); - -__thread int __sim_round_mode_thread __attribute__ ((nocommon)); -libc_hidden_data_def (__sim_round_mode_thread); - -#if SIM_GLOBAL_COMPAT -int __sim_exceptions_global __attribute__ ((nocommon)); -libc_hidden_data_def (__sim_exceptions_global); -SIM_COMPAT_SYMBOL (__sim_exceptions_global, __sim_exceptions); - -int __sim_disabled_exceptions_global = 0xffffffff; -libc_hidden_data_def (__sim_disabled_exceptions_global); -SIM_COMPAT_SYMBOL (__sim_disabled_exceptions_global, - __sim_disabled_exceptions); - -int __sim_round_mode_global __attribute__ ((nocommon)); -libc_hidden_data_def (__sim_round_mode_global); -SIM_COMPAT_SYMBOL (__sim_round_mode_global, __sim_round_mode); -#endif - -void -__simulate_exceptions (int x) -{ - __sim_exceptions_thread |= x; - SIM_SET_GLOBAL (__sim_exceptions_global, __sim_exceptions_thread); - if (x & ~__sim_disabled_exceptions_thread) - raise (SIGFPE); -} diff --git a/sysdeps/powerpc/nofpu/soft-supp.h b/sysdeps/powerpc/nofpu/soft-supp.h deleted file mode 100644 index f66d9573fa..0000000000 --- a/sysdeps/powerpc/nofpu/soft-supp.h +++ /dev/null @@ -1,63 +0,0 @@ -/* Internal support stuff for complete soft float. - Copyright (C) 2002-2017 Free Software Foundation, Inc. - Contributed by Aldy Hernandez <aldyh@redhat.com>, 2002. - 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/>. */ - -#if defined __NO_FPRS__ && !defined _SOFT_FLOAT - -# include <fenv_libc.h> - -#else - -# include <fenv.h> - -typedef union -{ - fenv_t fenv; - unsigned int l[2]; -} fenv_union_t; - -#endif - -extern __thread int __sim_exceptions_thread attribute_tls_model_ie; -libc_hidden_tls_proto (__sim_exceptions_thread, tls_model ("initial-exec")); -extern __thread int __sim_disabled_exceptions_thread attribute_tls_model_ie; -libc_hidden_tls_proto (__sim_disabled_exceptions_thread, - tls_model ("initial-exec")); -extern __thread int __sim_round_mode_thread attribute_tls_model_ie; -libc_hidden_tls_proto (__sim_round_mode_thread, tls_model ("initial-exec")); - -/* These variables were formerly global, so there are compat symbols - for global versions as well. */ - -#include <shlib-compat.h> -#define SIM_GLOBAL_COMPAT SHLIB_COMPAT (libc, GLIBC_2_3_2, GLIBC_2_19) -#if SIM_GLOBAL_COMPAT -extern int __sim_exceptions_global; -libc_hidden_proto (__sim_exceptions_global); -extern int __sim_disabled_exceptions_global ; -libc_hidden_proto (__sim_disabled_exceptions_global); -extern int __sim_round_mode_global; -libc_hidden_proto (__sim_round_mode_global); -# define SIM_COMPAT_SYMBOL(GLOBAL_NAME, NAME) \ - compat_symbol (libc, GLOBAL_NAME, NAME, GLIBC_2_3_2) -# define SIM_SET_GLOBAL(GLOBAL_VAR, THREAD_VAR) ((GLOBAL_VAR) = (THREAD_VAR)) -#else -# define SIM_SET_GLOBAL(GLOBAL_VAR, THREAD_VAR) ((void) 0) -#endif - -extern void __simulate_exceptions (int x) attribute_hidden; |