diff options
author | Joseph Myers <joseph@codesourcery.com> | 2012-05-19 10:03:24 +0000 |
---|---|---|
committer | Joseph Myers <joseph@codesourcery.com> | 2012-05-19 10:03:24 +0000 |
commit | b1d072a75ee8f9f75ca8ab924ed7919be8796030 (patch) | |
tree | b3a4b98f9c162dfe1a49a77feef2b5abc7cac0ff /sysdeps/powerpc/soft-fp/q_util.c | |
parent | 9eae47cb5bc2f34372ac155ea6f362df0fbc0991 (diff) | |
download | glibc-b1d072a75ee8f9f75ca8ab924ed7919be8796030.tar.gz glibc-b1d072a75ee8f9f75ca8ab924ed7919be8796030.tar.xz glibc-b1d072a75ee8f9f75ca8ab924ed7919be8796030.zip |
Remove sysdeps/powerpc/soft-fp.
Diffstat (limited to 'sysdeps/powerpc/soft-fp/q_util.c')
-rw-r--r-- | sysdeps/powerpc/soft-fp/q_util.c | 56 |
1 files changed, 0 insertions, 56 deletions
diff --git a/sysdeps/powerpc/soft-fp/q_util.c b/sysdeps/powerpc/soft-fp/q_util.c deleted file mode 100644 index 301b95f63e..0000000000 --- a/sysdeps/powerpc/soft-fp/q_util.c +++ /dev/null @@ -1,56 +0,0 @@ -/* Software floating-point emulation. - Helper routine for _q_* routines. - Simulate exceptions using double arithmetics. - Copyright (C) 1999, 2000 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Jakub Jelinek (jj@ultra.linux.cz). - - 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" - -unsigned long long ___q_numbers [] = { -0x0000000000000000ULL, /* Zero */ -0x0010100000000000ULL, /* Very tiny number */ -0x0010000000000000ULL, /* Minimum normalized number */ -0x7fef000000000000ULL, /* A huge double number */ -}; - -double ___q_simulate_exceptions(int exceptions) -{ - double d, *p = (double *)___q_numbers; - if (exceptions & FP_EX_INVALID) - d = p[0]/p[0]; - if (exceptions & FP_EX_OVERFLOW) - { - d = p[3] + p[3]; - exceptions &= ~FP_EX_INEXACT; - } - if (exceptions & FP_EX_UNDERFLOW) - { - if (exceptions & FP_EX_INEXACT) - { - d = p[2] * p[2]; - exceptions &= ~FP_EX_INEXACT; - } - else - d = p[1] - p[2]; - } - if (exceptions & FP_EX_DIVZERO) - d = 1.0/p[0]; - if (exceptions & FP_EX_INEXACT) - d = p[3] - p[2]; - return d; -} |