diff options
Diffstat (limited to 'soft-fp')
40 files changed, 0 insertions, 1555 deletions
diff --git a/soft-fp/configure b/soft-fp/configure deleted file mode 100755 index d40d2d7ba2..0000000000 --- a/soft-fp/configure +++ /dev/null @@ -1,2 +0,0 @@ -# This is only to keep the GNU C library configure mechanism happy. -exit 0 diff --git a/soft-fp/sysdeps/powerpc/Versions b/soft-fp/sysdeps/powerpc/Versions deleted file mode 100644 index 242aaf99cd..0000000000 --- a/soft-fp/sysdeps/powerpc/Versions +++ /dev/null @@ -1,8 +0,0 @@ -libc { - GLIBC_2.2 { - _q_add; _q_cmp; _q_cmpe; _q_div; _q_dtoq; _q_feq; _q_fge; _q_fgt; - _q_fle; _q_flt; _q_fne; _q_itoq; _q_mul; _q_neg; _q_qtod; _q_qtoi; - _q_qtos; _q_qtou; _q_sqrt; _q_stoq; _q_sub; - _q_utoq; - _q_lltoq; _q_qtoll; _q_qtoull; _q_ulltoq; -} diff --git a/soft-fp/sysdeps/powerpc/q_add.c b/soft-fp/sysdeps/powerpc/q_add.c deleted file mode 100644 index 11779d5fbd..0000000000 --- a/soft-fp/sysdeps/powerpc/q_add.c +++ /dev/null @@ -1,39 +0,0 @@ -/* Software floating-point emulation. - Return a + b - Copyright (C) 1997, 1999, 2000 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Richard Henderson (rth@cygnus.com) and - 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 Library General Public License as - published by the Free Software Foundation; either version 2 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 - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with the GNU C Library; see the file COPYING.LIB. If - not, write to the Free Software Foundation, Inc., - 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#include "soft-fp.h" -#include "quad.h" - -long double _q_add(const long double a, const long double b) -{ - FP_DECL_EX; - FP_DECL_Q(A); FP_DECL_Q(B); FP_DECL_Q(C); - long double c; - - FP_INIT_ROUNDMODE; - FP_UNPACK_Q(A, a); - FP_UNPACK_Q(B, b); - FP_ADD_Q(C, A, B); - FP_PACK_Q(c, C); - FP_HANDLE_EXCEPTIONS; - return c; -} diff --git a/soft-fp/sysdeps/powerpc/q_cmp.c b/soft-fp/sysdeps/powerpc/q_cmp.c deleted file mode 100644 index d68b9cbaf0..0000000000 --- a/soft-fp/sysdeps/powerpc/q_cmp.c +++ /dev/null @@ -1,41 +0,0 @@ -/* Software floating-point emulation. - Compare a and b, return float condition code. - Copyright (C) 1997, 1999, 2000 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Richard Henderson (rth@cygnus.com) and - 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 Library General Public License as - published by the Free Software Foundation; either version 2 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 - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with the GNU C Library; see the file COPYING.LIB. If - not, write to the Free Software Foundation, Inc., - 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#include "soft-fp.h" -#include "quad.h" - -int _q_cmp(const long double a, const long double b) -{ - FP_DECL_EX; - FP_DECL_Q(A); FP_DECL_Q(B); - int r; - - FP_UNPACK_RAW_Q(A, a); - FP_UNPACK_RAW_Q(B, b); - FP_CMP_Q(r, B, A, 3); - if (r == -1) r = 2; - if (r == 3 && (FP_ISSIGNAN_Q(A) || FP_ISSIGNAN_Q(B))) - FP_SET_EXCEPTION(FP_EX_INVALID); - FP_HANDLE_EXCEPTIONS; - - return r; -} diff --git a/soft-fp/sysdeps/powerpc/q_cmpe.c b/soft-fp/sysdeps/powerpc/q_cmpe.c deleted file mode 100644 index 9894eff4d4..0000000000 --- a/soft-fp/sysdeps/powerpc/q_cmpe.c +++ /dev/null @@ -1,42 +0,0 @@ -/* Software floating-point emulation. - Compare a and b, return float condition code. - Signal exception (unless masked) if unordered. - Copyright (C) 1997, 1999, 2000 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Richard Henderson (rth@cygnus.com) and - 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 Library General Public License as - published by the Free Software Foundation; either version 2 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 - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with the GNU C Library; see the file COPYING.LIB. If - not, write to the Free Software Foundation, Inc., - 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#include "soft-fp.h" -#include "quad.h" - -int _q_cmpe(const long double a, const long double b) -{ - FP_DECL_EX; - FP_DECL_Q(A); FP_DECL_Q(B); - int r; - - FP_UNPACK_RAW_Q(A, a); - FP_UNPACK_RAW_Q(B, b); - FP_CMP_Q(r, B, A, 3); - if (r == -1) r = 2; - if (r == 3) - FP_SET_EXCEPTION(FP_EX_INVALID); - FP_HANDLE_EXCEPTIONS; - - return r; -} diff --git a/soft-fp/sysdeps/powerpc/q_div.c b/soft-fp/sysdeps/powerpc/q_div.c deleted file mode 100644 index 9904fbc22d..0000000000 --- a/soft-fp/sysdeps/powerpc/q_div.c +++ /dev/null @@ -1,39 +0,0 @@ -/* Software floating-point emulation. - Return a / b - Copyright (C) 1997, 1999, 2000 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Richard Henderson (rth@cygnus.com) and - 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 Library General Public License as - published by the Free Software Foundation; either version 2 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 - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with the GNU C Library; see the file COPYING.LIB. If - not, write to the Free Software Foundation, Inc., - 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#include "soft-fp.h" -#include "quad.h" - -long double _q_div(const long double a, const long double b) -{ - FP_DECL_EX; - FP_DECL_Q(A); FP_DECL_Q(B); FP_DECL_Q(C); - long double c; - - FP_INIT_ROUNDMODE; - FP_UNPACK_Q(A, a); - FP_UNPACK_Q(B, b); - FP_DIV_Q(C, A, B); - FP_PACK_Q(c, C); - FP_HANDLE_EXCEPTIONS; - return c; -} diff --git a/soft-fp/sysdeps/powerpc/q_dtoq.c b/soft-fp/sysdeps/powerpc/q_dtoq.c deleted file mode 100644 index bc588ad634..0000000000 --- a/soft-fp/sysdeps/powerpc/q_dtoq.c +++ /dev/null @@ -1,44 +0,0 @@ -/* Software floating-point emulation. - Return (long double)(a) - Copyright (C) 1997, 1999, 2000 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Richard Henderson (rth@cygnus.com) and - 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 Library General Public License as - published by the Free Software Foundation; either version 2 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 - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with the GNU C Library; see the file COPYING.LIB. If - not, write to the Free Software Foundation, Inc., - 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#include "soft-fp.h" -#include "double.h" -#include "quad.h" - -long double _q_dtoq(const double a) -{ - FP_DECL_EX; - FP_DECL_D(A); - FP_DECL_Q(C); - long double c; - - FP_INIT_ROUNDMODE; - FP_UNPACK_D(A, a); -#if (2 * _FP_W_TYPE_SIZE) < _FP_FRACBITS_Q - FP_CONV(Q,D,4,2,C,A); -#else - FP_CONV(Q,D,2,1,C,A); -#endif - FP_PACK_Q(c, C); - FP_HANDLE_EXCEPTIONS; - return c; -} diff --git a/soft-fp/sysdeps/powerpc/q_feq.c b/soft-fp/sysdeps/powerpc/q_feq.c deleted file mode 100644 index 4611c82d20..0000000000 --- a/soft-fp/sysdeps/powerpc/q_feq.c +++ /dev/null @@ -1,40 +0,0 @@ -/* Software floating-point emulation. - Return 1 if a == b - Copyright (C) 1997, 1999, 2000 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Richard Henderson (rth@cygnus.com) and - 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 Library General Public License as - published by the Free Software Foundation; either version 2 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 - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with the GNU C Library; see the file COPYING.LIB. If - not, write to the Free Software Foundation, Inc., - 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#include "soft-fp.h" -#include "quad.h" - -int _q_feq(const long double a, const long double b) -{ - FP_DECL_EX; - FP_DECL_Q(A); FP_DECL_Q(B); - int r; - - FP_UNPACK_RAW_Q(A, a); - FP_UNPACK_RAW_Q(B, b); - FP_CMP_EQ_Q(r, A, B); - if (r && (FP_ISSIGNAN_Q(A) || FP_ISSIGNAN_Q(B))) - FP_SET_EXCEPTION(FP_EX_INVALID); - FP_HANDLE_EXCEPTIONS; - - return !r; -} diff --git a/soft-fp/sysdeps/powerpc/q_fge.c b/soft-fp/sysdeps/powerpc/q_fge.c deleted file mode 100644 index d7230a3b3c..0000000000 --- a/soft-fp/sysdeps/powerpc/q_fge.c +++ /dev/null @@ -1,40 +0,0 @@ -/* Software floating-point emulation. - Return 1 if a >= b - Copyright (C) 1997, 1999, 2000 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Richard Henderson (rth@cygnus.com) and - 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 Library General Public License as - published by the Free Software Foundation; either version 2 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 - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with the GNU C Library; see the file COPYING.LIB. If - not, write to the Free Software Foundation, Inc., - 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#include "soft-fp.h" -#include "quad.h" - -int _q_fge(const long double a, const long double b) -{ - FP_DECL_EX; - FP_DECL_Q(A); FP_DECL_Q(B); - int r; - - FP_UNPACK_RAW_Q(A, a); - FP_UNPACK_RAW_Q(B, b); - FP_CMP_Q(r, B, A, 3); - if (r == 3) - FP_SET_EXCEPTION(FP_EX_INVALID); - FP_HANDLE_EXCEPTIONS; - - return (r <= 0); -} diff --git a/soft-fp/sysdeps/powerpc/q_fgt.c b/soft-fp/sysdeps/powerpc/q_fgt.c deleted file mode 100644 index ad1fe16c48..0000000000 --- a/soft-fp/sysdeps/powerpc/q_fgt.c +++ /dev/null @@ -1,40 +0,0 @@ -/* Software floating-point emulation. - Return 1 if a > b - Copyright (C) 1997, 1999, 2000 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Richard Henderson (rth@cygnus.com) and - 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 Library General Public License as - published by the Free Software Foundation; either version 2 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 - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with the GNU C Library; see the file COPYING.LIB. If - not, write to the Free Software Foundation, Inc., - 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#include "soft-fp.h" -#include "quad.h" - -int _q_fgt(const long double a, const long double b) -{ - FP_DECL_EX; - FP_DECL_Q(A); FP_DECL_Q(B); - int r; - - FP_UNPACK_RAW_Q(A, a); - FP_UNPACK_RAW_Q(B, b); - FP_CMP_Q(r, B, A, 3); - if (r == 3) - FP_SET_EXCEPTION(FP_EX_INVALID); - FP_HANDLE_EXCEPTIONS; - - return (r == -1); -} diff --git a/soft-fp/sysdeps/powerpc/q_fle.c b/soft-fp/sysdeps/powerpc/q_fle.c deleted file mode 100644 index 895394b26e..0000000000 --- a/soft-fp/sysdeps/powerpc/q_fle.c +++ /dev/null @@ -1,40 +0,0 @@ -/* Software floating-point emulation. - Return 1 if a <= b - Copyright (C) 1997, 1999, 2000 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Richard Henderson (rth@cygnus.com) and - 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 Library General Public License as - published by the Free Software Foundation; either version 2 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 - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with the GNU C Library; see the file COPYING.LIB. If - not, write to the Free Software Foundation, Inc., - 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#include "soft-fp.h" -#include "quad.h" - -int _q_fle(const long double a, const long double b) -{ - FP_DECL_EX; - FP_DECL_Q(A); FP_DECL_Q(B); - int r; - - FP_UNPACK_RAW_Q(A, a); - FP_UNPACK_RAW_Q(B, b); - FP_CMP_Q(r, B, A, -2); - if (r == -2) - FP_SET_EXCEPTION(FP_EX_INVALID); - FP_HANDLE_EXCEPTIONS; - - return (r >= 0); -} diff --git a/soft-fp/sysdeps/powerpc/q_flt.c b/soft-fp/sysdeps/powerpc/q_flt.c deleted file mode 100644 index 547e0a082a..0000000000 --- a/soft-fp/sysdeps/powerpc/q_flt.c +++ /dev/null @@ -1,40 +0,0 @@ -/* Software floating-point emulation. - Return 1 if a < b - Copyright (C) 1997, 1999, 2000 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Richard Henderson (rth@cygnus.com) and - 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 Library General Public License as - published by the Free Software Foundation; either version 2 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 - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with the GNU C Library; see the file COPYING.LIB. If - not, write to the Free Software Foundation, Inc., - 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#include "soft-fp.h" -#include "quad.h" - -int _q_flt(const long double a, const long double b) -{ - FP_DECL_EX; - FP_DECL_Q(A); FP_DECL_Q(B); - int r; - - FP_UNPACK_RAW_Q(A, a); - FP_UNPACK_RAW_Q(B, b); - FP_CMP_Q(r, B, A, 3); - if (r == 3) - FP_SET_EXCEPTION(FP_EX_INVALID); - FP_HANDLE_EXCEPTIONS; - - return (r == 1); -} diff --git a/soft-fp/sysdeps/powerpc/q_fne.c b/soft-fp/sysdeps/powerpc/q_fne.c deleted file mode 100644 index e326531334..0000000000 --- a/soft-fp/sysdeps/powerpc/q_fne.c +++ /dev/null @@ -1,40 +0,0 @@ -/* Software floating-point emulation. - Return 1 if a != b - Copyright (C) 1997, 1999, 2000 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Richard Henderson (rth@cygnus.com) and - 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 Library General Public License as - published by the Free Software Foundation; either version 2 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 - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with the GNU C Library; see the file COPYING.LIB. If - not, write to the Free Software Foundation, Inc., - 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#include "soft-fp.h" -#include "quad.h" - -int _q_fne(const long double a, const long double b) -{ - FP_DECL_EX; - FP_DECL_Q(A); FP_DECL_Q(B); - int r; - - FP_UNPACK_RAW_Q(A, a); - FP_UNPACK_RAW_Q(B, b); - FP_CMP_EQ_Q(r, A, B); - if (r && (FP_ISSIGNAN_Q(A) || FP_ISSIGNAN_Q(B))) - FP_SET_EXCEPTION(FP_EX_INVALID); - FP_HANDLE_EXCEPTIONS; - - return r; -} diff --git a/soft-fp/sysdeps/powerpc/q_itoq.c b/soft-fp/sysdeps/powerpc/q_itoq.c deleted file mode 100644 index de74a946b7..0000000000 --- a/soft-fp/sysdeps/powerpc/q_itoq.c +++ /dev/null @@ -1,38 +0,0 @@ -/* Software floating-point emulation. - Return (long double)(a) - Copyright (C) 1997, 1999, 2000 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Richard Henderson (rth@cygnus.com) and - 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 Library General Public License as - published by the Free Software Foundation; either version 2 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 - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with the GNU C Library; see the file COPYING.LIB. If - not, write to the Free Software Foundation, Inc., - 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#include "soft-fp.h" -#include "quad.h" - -long double _q_itoq(const int a) -{ - FP_DECL_EX; - FP_DECL_Q(C); - int b = a; - long double c; - - FP_FROM_INT_Q(C, b, 32, int); - FP_PACK_Q(c, C); - FP_CLEAR_EXCEPTIONS; - FP_HANDLE_EXCEPTIONS; - return c; -} diff --git a/soft-fp/sysdeps/powerpc/q_lltoq.c b/soft-fp/sysdeps/powerpc/q_lltoq.c deleted file mode 100644 index 4ace66f53f..0000000000 --- a/soft-fp/sysdeps/powerpc/q_lltoq.c +++ /dev/null @@ -1,38 +0,0 @@ -/* Software floating-point emulation. - Return (long double)a - Copyright (C) 1997, 1999, 2000 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Richard Henderson (rth@cygnus.com) and - 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 Library General Public License as - published by the Free Software Foundation; either version 2 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 - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with the GNU C Library; see the file COPYING.LIB. If - not, write to the Free Software Foundation, Inc., - 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#include "soft-fp.h" -#include "quad.h" - -long double _q_lltoq(const long long a) -{ - FP_DECL_EX; - FP_DECL_Q(C); - long double c; - long long b = a; - - FP_FROM_INT_Q(C, b, 64, long long); - FP_PACK_Q(c, C); - FP_CLEAR_EXCEPTIONS; - FP_HANDLE_EXCEPTIONS; - return c; -} diff --git a/soft-fp/sysdeps/powerpc/q_mul.c b/soft-fp/sysdeps/powerpc/q_mul.c deleted file mode 100644 index 4ab5626bce..0000000000 --- a/soft-fp/sysdeps/powerpc/q_mul.c +++ /dev/null @@ -1,39 +0,0 @@ -/* Software floating-point emulation. - Return a * b - Copyright (C) 1997, 1999, 2000 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Richard Henderson (rth@cygnus.com) and - 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 Library General Public License as - published by the Free Software Foundation; either version 2 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 - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with the GNU C Library; see the file COPYING.LIB. If - not, write to the Free Software Foundation, Inc., - 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#include "soft-fp.h" -#include "quad.h" - -long double _q_mul(const long double a, const long double b) -{ - FP_DECL_EX; - FP_DECL_Q(A); FP_DECL_Q(B); FP_DECL_Q(C); - long double c; - - FP_INIT_ROUNDMODE; - FP_UNPACK_Q(A, a); - FP_UNPACK_Q(B, b); - FP_MUL_Q(C, A, B); - FP_PACK_Q(c, C); - FP_HANDLE_EXCEPTIONS; - return c; -} diff --git a/soft-fp/sysdeps/powerpc/q_neg.c b/soft-fp/sysdeps/powerpc/q_neg.c deleted file mode 100644 index 67b86552d3..0000000000 --- a/soft-fp/sysdeps/powerpc/q_neg.c +++ /dev/null @@ -1,47 +0,0 @@ -/* Software floating-point emulation. - Return !a - Copyright (C) 1997, 1999, 2000 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Richard Henderson (rth@cygnus.com) and - 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 Library General Public License as - published by the Free Software Foundation; either version 2 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 - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with the GNU C Library; see the file COPYING.LIB. If - not, write to the Free Software Foundation, Inc., - 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#include "soft-fp.h" -#include "quad.h" - -long double _q_neg(const long double a) -{ - FP_DECL_EX; - long double c = a; - -#if (__BYTE_ORDER == __BIG_ENDIAN) - ((UWtype *)&c)[0] ^= (((UWtype)1) << (W_TYPE_SIZE - 1)); -#elif (__BYTE_ORDER == __LITTLE_ENDIAN) && (W_TYPE_SIZE == 64) - ((UWtype *)&c)[1] ^= (((UWtype)1) << (W_TYPE_SIZE - 1)); -#elif (__BYTE_ORDER == __LITTLE_ENDIAN) && (W_TYPE_SIZE == 32) - ((UWtype *)&c)[3] ^= (((UWtype)1) << (W_TYPE_SIZE - 1)); -#else - FP_DECL_Q(A); FP_DECL_Q(C); - - FP_UNPACK_Q(A, a); - FP_NEG_Q(C, A); - FP_PACK_Q(c, C); -#endif - FP_CLEAR_EXCEPTIONS; - FP_HANDLE_EXCEPTIONS; - return c; -} diff --git a/soft-fp/sysdeps/powerpc/q_qtod.c b/soft-fp/sysdeps/powerpc/q_qtod.c deleted file mode 100644 index 9375f8a8bc..0000000000 --- a/soft-fp/sysdeps/powerpc/q_qtod.c +++ /dev/null @@ -1,45 +0,0 @@ -/* Software floating-point emulation. - Return (double)a - Copyright (C) 1997, 1999, 2000 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Richard Henderson (rth@cygnus.com) and - 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 Library General Public License as - published by the Free Software Foundation; either version 2 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 - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with the GNU C Library; see the file COPYING.LIB. If - not, write to the Free Software Foundation, Inc., - 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#include "soft-fp.h" -#include "double.h" -#include "quad.h" - -double _q_qtod(const long double a) -{ - FP_DECL_EX; - FP_DECL_Q(A); - FP_DECL_D(R); - double r; - - FP_INIT_ROUNDMODE; - FP_UNPACK_Q(A, a); -#if (2 * _FP_W_TYPE_SIZE) < _FP_FRACBITS_Q - FP_CONV(D,Q,2,4,R,A); -#else - FP_CONV(D,Q,1,2,R,A); -#endif - FP_PACK_D(r, R); - FP_HANDLE_EXCEPTIONS; - - return r; -} diff --git a/soft-fp/sysdeps/powerpc/q_qtoi.c b/soft-fp/sysdeps/powerpc/q_qtoi.c deleted file mode 100644 index 0f23289b25..0000000000 --- a/soft-fp/sysdeps/powerpc/q_qtoi.c +++ /dev/null @@ -1,38 +0,0 @@ -/* Software floating-point emulation. - Return (int)a - Copyright (C) 1997, 1999, 2000 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Richard Henderson (rth@cygnus.com) and - 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 Library General Public License as - published by the Free Software Foundation; either version 2 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 - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with the GNU C Library; see the file COPYING.LIB. If - not, write to the Free Software Foundation, Inc., - 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#define FP_ROUNDMODE FP_RND_ZERO -#include "soft-fp.h" -#include "quad.h" - -int _q_qtoi(const long double a) -{ - FP_DECL_EX; - FP_DECL_Q(A); - int r; - - FP_UNPACK_Q(A, a); - FP_TO_INT_Q(r, A, 32, 1); - FP_HANDLE_EXCEPTIONS; - - return r; -} diff --git a/soft-fp/sysdeps/powerpc/q_qtoll.c b/soft-fp/sysdeps/powerpc/q_qtoll.c deleted file mode 100644 index f588506c1c..0000000000 --- a/soft-fp/sysdeps/powerpc/q_qtoll.c +++ /dev/null @@ -1,38 +0,0 @@ -/* Software floating-point emulation. - Return (long)a - Copyright (C) 1997, 1999, 2000 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Richard Henderson (rth@cygnus.com) and - 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 Library General Public License as - published by the Free Software Foundation; either version 2 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 - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with the GNU C Library; see the file COPYING.LIB. If - not, write to the Free Software Foundation, Inc., - 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#define FP_ROUNDMODE FP_RND_ZERO -#include "soft-fp.h" -#include "quad.h" - -long long _q_qtoll(const long double a) -{ - FP_DECL_EX; - FP_DECL_Q(A); - long long r; - - FP_UNPACK_Q(A, a); - FP_TO_INT_Q(r, A, 64, 1); - FP_HANDLE_EXCEPTIONS; - - return r; -} diff --git a/soft-fp/sysdeps/powerpc/q_qtos.c b/soft-fp/sysdeps/powerpc/q_qtos.c deleted file mode 100644 index 64e7cba0cf..0000000000 --- a/soft-fp/sysdeps/powerpc/q_qtos.c +++ /dev/null @@ -1,45 +0,0 @@ -/* Software floating-point emulation. - Return (float)a - Copyright (C) 1997, 1999, 2000 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Richard Henderson (rth@cygnus.com) and - 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 Library General Public License as - published by the Free Software Foundation; either version 2 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 - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with the GNU C Library; see the file COPYING.LIB. If - not, write to the Free Software Foundation, Inc., - 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#include "soft-fp.h" -#include "single.h" -#include "quad.h" - -float _q_qtos(const long double a) -{ - FP_DECL_EX; - FP_DECL_Q(A); - FP_DECL_S(R); - float r; - - FP_INIT_ROUNDMODE; - FP_UNPACK_Q(A, a); -#if (2 * _FP_W_TYPE_SIZE) < _FP_FRACBITS_Q - FP_CONV(S,Q,1,4,R,A); -#else - FP_CONV(S,Q,1,2,R,A); -#endif - FP_PACK_S(r, R); - FP_HANDLE_EXCEPTIONS; - - return r; -} diff --git a/soft-fp/sysdeps/powerpc/q_qtou.c b/soft-fp/sysdeps/powerpc/q_qtou.c deleted file mode 100644 index 27bf464ec1..0000000000 --- a/soft-fp/sysdeps/powerpc/q_qtou.c +++ /dev/null @@ -1,38 +0,0 @@ -/* Software floating-point emulation. - Return (unsigned int)a - Copyright (C) 1997, 1999, 2000 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Richard Henderson (rth@cygnus.com) and - 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 Library General Public License as - published by the Free Software Foundation; either version 2 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 - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with the GNU C Library; see the file COPYING.LIB. If - not, write to the Free Software Foundation, Inc., - 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#define FP_ROUNDMODE FP_RND_ZERO -#include "soft-fp.h" -#include "quad.h" - -unsigned int _q_qtou(const long double a) -{ - FP_DECL_EX; - FP_DECL_Q(A); - unsigned int r; - - FP_UNPACK_Q(A, a); - FP_TO_INT_Q(r, A, 32, -1); - FP_HANDLE_EXCEPTIONS; - - return r; -} diff --git a/soft-fp/sysdeps/powerpc/q_qtoull.c b/soft-fp/sysdeps/powerpc/q_qtoull.c deleted file mode 100644 index ef8757699e..0000000000 --- a/soft-fp/sysdeps/powerpc/q_qtoull.c +++ /dev/null @@ -1,38 +0,0 @@ -/* Software floating-point emulation. - Return (long)a - Copyright (C) 1997, 1999, 2000 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Richard Henderson (rth@cygnus.com) and - 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 Library General Public License as - published by the Free Software Foundation; either version 2 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 - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with the GNU C Library; see the file COPYING.LIB. If - not, write to the Free Software Foundation, Inc., - 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#define FP_ROUNDMODE FP_RND_ZERO -#include "soft-fp.h" -#include "quad.h" - -unsigned long long _q_qtoull(const long double a) -{ - FP_DECL_EX; - FP_DECL_Q(A); - unsigned long long r; - - FP_UNPACK_Q(A, a); - FP_TO_INT_Q(r, A, 64, -1); - FP_HANDLE_EXCEPTIONS; - - return r; -} diff --git a/soft-fp/sysdeps/powerpc/q_sqrt.c b/soft-fp/sysdeps/powerpc/q_sqrt.c deleted file mode 100644 index dd43eec6e1..0000000000 --- a/soft-fp/sysdeps/powerpc/q_sqrt.c +++ /dev/null @@ -1,38 +0,0 @@ -/* Software floating-point emulation. - Return sqrtl(a) - Copyright (C) 1997, 1999, 2000 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Richard Henderson (rth@cygnus.com) and - 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 Library General Public License as - published by the Free Software Foundation; either version 2 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 - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with the GNU C Library; see the file COPYING.LIB. If - not, write to the Free Software Foundation, Inc., - 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#include "soft-fp.h" -#include "quad.h" - -long double _q_sqrt(const long double a) -{ - FP_DECL_EX; - FP_DECL_Q(A); FP_DECL_Q(C); - long double c; - - FP_INIT_ROUNDMODE; - FP_UNPACK_Q(A, a); - FP_SQRT_Q(C, A); - FP_PACK_Q(c, C); - FP_HANDLE_EXCEPTIONS; - return c; -} diff --git a/soft-fp/sysdeps/powerpc/q_stoq.c b/soft-fp/sysdeps/powerpc/q_stoq.c deleted file mode 100644 index 09de4360e7..0000000000 --- a/soft-fp/sysdeps/powerpc/q_stoq.c +++ /dev/null @@ -1,43 +0,0 @@ -/* Software floating-point emulation. - c = (long double)(a) - Copyright (C) 1997, 1999, 2000 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Richard Henderson (rth@cygnus.com) and - 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 Library General Public License as - published by the Free Software Foundation; either version 2 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 - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with the GNU C Library; see the file COPYING.LIB. If - not, write to the Free Software Foundation, Inc., - 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#include "soft-fp.h" -#include "single.h" -#include "quad.h" - -long double _q_stoq(const float a) -{ - FP_DECL_EX; - FP_DECL_S(A); - FP_DECL_Q(C); - long double c; - - FP_UNPACK_S(A, a); -#if (2 * _FP_W_TYPE_SIZE) < _FP_FRACBITS_Q - FP_CONV(Q,S,4,1,C,A); -#else - FP_CONV(Q,S,2,1,C,A); -#endif - FP_PACK_Q(c, C); - FP_HANDLE_EXCEPTIONS; - return c; -} diff --git a/soft-fp/sysdeps/powerpc/q_sub.c b/soft-fp/sysdeps/powerpc/q_sub.c deleted file mode 100644 index 8e1522379f..0000000000 --- a/soft-fp/sysdeps/powerpc/q_sub.c +++ /dev/null @@ -1,39 +0,0 @@ -/* Software floating-point emulation. - c = a - b - Copyright (C) 1997, 1999, 2000 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Richard Henderson (rth@cygnus.com) and - 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 Library General Public License as - published by the Free Software Foundation; either version 2 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 - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with the GNU C Library; see the file COPYING.LIB. If - not, write to the Free Software Foundation, Inc., - 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#include "soft-fp.h" -#include "quad.h" - -long double _q_sub(const long double a, const long double b) -{ - FP_DECL_EX; - FP_DECL_Q(A); FP_DECL_Q(B); FP_DECL_Q(C); - long double c; - - FP_INIT_ROUNDMODE; - FP_UNPACK_Q(A, a); - FP_UNPACK_Q(B, b); - FP_SUB_Q(C, A, B); - FP_PACK_Q(c, C); - FP_HANDLE_EXCEPTIONS; - return c; -} diff --git a/soft-fp/sysdeps/powerpc/q_ulltoq.c b/soft-fp/sysdeps/powerpc/q_ulltoq.c deleted file mode 100644 index 4cea438a2a..0000000000 --- a/soft-fp/sysdeps/powerpc/q_ulltoq.c +++ /dev/null @@ -1,38 +0,0 @@ -/* Software floating-point emulation. - Return (long double)a - Copyright (C) 1997, 1999, 2000 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Richard Henderson (rth@cygnus.com) and - 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 Library General Public License as - published by the Free Software Foundation; either version 2 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 - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with the GNU C Library; see the file COPYING.LIB. If - not, write to the Free Software Foundation, Inc., - 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#include "soft-fp.h" -#include "quad.h" - -long double _q_ulltoq(const unsigned long long a) -{ - FP_DECL_EX; - FP_DECL_Q(C); - long double c; - unsigned long long b = a; - - FP_FROM_INT_Q(C, b, 64, long long); - FP_PACK_Q(c, C); - FP_CLEAR_EXCEPTIONS; - FP_HANDLE_EXCEPTIONS; - return c; -} diff --git a/soft-fp/sysdeps/powerpc/q_util.c b/soft-fp/sysdeps/powerpc/q_util.c deleted file mode 100644 index d46cbd826a..0000000000 --- a/soft-fp/sysdeps/powerpc/q_util.c +++ /dev/null @@ -1,57 +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 Library General Public License as - published by the Free Software Foundation; either version 2 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 - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with the GNU C Library; see the file COPYING.LIB. If - not, write to the Free Software Foundation, Inc., - 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#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; -} diff --git a/soft-fp/sysdeps/powerpc/q_utoq.c b/soft-fp/sysdeps/powerpc/q_utoq.c deleted file mode 100644 index 2f048aaa3f..0000000000 --- a/soft-fp/sysdeps/powerpc/q_utoq.c +++ /dev/null @@ -1,38 +0,0 @@ -/* Software floating-point emulation. - c = (long double)(a) - Copyright (C) 1997, 1999, 2000 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Richard Henderson (rth@cygnus.com) and - 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 Library General Public License as - published by the Free Software Foundation; either version 2 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 - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with the GNU C Library; see the file COPYING.LIB. If - not, write to the Free Software Foundation, Inc., - 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#include "soft-fp.h" -#include "quad.h" - -long double _q_uitoq(const unsigned int a) -{ - FP_DECL_EX; - FP_DECL_Q(C); - long double c; - unsigned int b = a; - - FP_FROM_INT_Q(C, b, 32, int); - FP_PACK_Q(c, C); - FP_CLEAR_EXCEPTIONS; - FP_HANDLE_EXCEPTIONS; - return c; -} diff --git a/soft-fp/sysdeps/sparc/sparc32/q_add.c b/soft-fp/sysdeps/sparc/sparc32/q_add.c deleted file mode 100644 index b2d3f2e912..0000000000 --- a/soft-fp/sysdeps/sparc/sparc32/q_add.c +++ /dev/null @@ -1,39 +0,0 @@ -/* Software floating-point emulation. - Return a + b - Copyright (C) 1997,1999 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Richard Henderson (rth@cygnus.com) and - 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 Library General Public License as - published by the Free Software Foundation; either version 2 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 - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with the GNU C Library; see the file COPYING.LIB. If - not, write to the Free Software Foundation, Inc., - 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#include "soft-fp.h" -#include "quad.h" - -long double _Q_add(const long double a, const long double b) -{ - FP_DECL_EX; - FP_DECL_Q(A); FP_DECL_Q(B); FP_DECL_Q(C); - long double c; - - FP_INIT_ROUNDMODE; - FP_UNPACK_Q(A, a); - FP_UNPACK_Q(B, b); - FP_ADD_Q(C, A, B); - FP_PACK_Q(c, C); - FP_HANDLE_EXCEPTIONS; - return c; -} diff --git a/soft-fp/sysdeps/sparc/sparc32/q_cmp.c b/soft-fp/sysdeps/sparc/sparc32/q_cmp.c deleted file mode 100644 index 87535f9bfd..0000000000 --- a/soft-fp/sysdeps/sparc/sparc32/q_cmp.c +++ /dev/null @@ -1,41 +0,0 @@ -/* Software floating-point emulation. - Compare a and b, return float condition code. - Copyright (C) 1997,1999 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Richard Henderson (rth@cygnus.com) and - 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 Library General Public License as - published by the Free Software Foundation; either version 2 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 - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with the GNU C Library; see the file COPYING.LIB. If - not, write to the Free Software Foundation, Inc., - 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#include "soft-fp.h" -#include "quad.h" - -int _Q_cmp(const long double a, const long double b) -{ - FP_DECL_EX; - FP_DECL_Q(A); FP_DECL_Q(B); - int r; - - FP_UNPACK_RAW_Q(A, a); - FP_UNPACK_RAW_Q(B, b); - FP_CMP_Q(r, B, A, 3); - if (r == -1) r = 2; - if (r == 3 && (FP_ISSIGNAN_Q(A) || FP_ISSIGNAN_Q(B))) - FP_SET_EXCEPTION(FP_EX_INVALID); - FP_HANDLE_EXCEPTIONS; - - return r; -} diff --git a/soft-fp/sysdeps/sparc/sparc32/q_cmpe.c b/soft-fp/sysdeps/sparc/sparc32/q_cmpe.c deleted file mode 100644 index ddc880ac5a..0000000000 --- a/soft-fp/sysdeps/sparc/sparc32/q_cmpe.c +++ /dev/null @@ -1,42 +0,0 @@ -/* Software floating-point emulation. - Compare a and b, return float condition code. - Signal exception (unless masked) if unordered. - Copyright (C) 1997,1999 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Richard Henderson (rth@cygnus.com) and - 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 Library General Public License as - published by the Free Software Foundation; either version 2 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 - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with the GNU C Library; see the file COPYING.LIB. If - not, write to the Free Software Foundation, Inc., - 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#include "soft-fp.h" -#include "quad.h" - -int _Q_cmpe(const long double a, const long double b) -{ - FP_DECL_EX; - FP_DECL_Q(A); FP_DECL_Q(B); - int r; - - FP_UNPACK_RAW_Q(A, a); - FP_UNPACK_RAW_Q(B, b); - FP_CMP_Q(r, B, A, 3); - if (r == -1) r = 2; - if (r == 3) - FP_SET_EXCEPTION(FP_EX_INVALID); - FP_HANDLE_EXCEPTIONS; - - return r; -} diff --git a/soft-fp/sysdeps/sparc/sparc32/q_div.c b/soft-fp/sysdeps/sparc/sparc32/q_div.c deleted file mode 100644 index 477f3979b9..0000000000 --- a/soft-fp/sysdeps/sparc/sparc32/q_div.c +++ /dev/null @@ -1,39 +0,0 @@ -/* Software floating-point emulation. - Return a / b - Copyright (C) 1997,1999 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Richard Henderson (rth@cygnus.com) and - 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 Library General Public License as - published by the Free Software Foundation; either version 2 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 - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with the GNU C Library; see the file COPYING.LIB. If - not, write to the Free Software Foundation, Inc., - 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#include "soft-fp.h" -#include "quad.h" - -long double _Q_div(const long double a, const long double b) -{ - FP_DECL_EX; - FP_DECL_Q(A); FP_DECL_Q(B); FP_DECL_Q(C); - long double c; - - FP_INIT_ROUNDMODE; - FP_UNPACK_Q(A, a); - FP_UNPACK_Q(B, b); - FP_DIV_Q(C, A, B); - FP_PACK_Q(c, C); - FP_HANDLE_EXCEPTIONS; - return long double; -} diff --git a/soft-fp/sysdeps/sparc/sparc32/q_dtoq.c b/soft-fp/sysdeps/sparc/sparc32/q_dtoq.c deleted file mode 100644 index 28daa2c36f..0000000000 --- a/soft-fp/sysdeps/sparc/sparc32/q_dtoq.c +++ /dev/null @@ -1,44 +0,0 @@ -/* Software floating-point emulation. - Return (long double)(a) - Copyright (C) 1997,1999 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Richard Henderson (rth@cygnus.com) and - 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 Library General Public License as - published by the Free Software Foundation; either version 2 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 - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with the GNU C Library; see the file COPYING.LIB. If - not, write to the Free Software Foundation, Inc., - 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#include "soft-fp.h" -#include "double.h" -#include "quad.h" - -long double _Q_dtoq(const double a) -{ - FP_DECL_EX; - FP_DECL_D(A); - FP_DECL_Q(C); - long double c; - - FP_INIT_ROUNDMODE; - FP_UNPACK_D(A, a); -#if (2 * _FP_W_TYPE_SIZE) < _FP_FRACBITS_Q - FP_CONV(Q,D,4,2,C,A); -#else - FP_CONV(Q,D,2,1,C,A); -#endif - FP_PACK_Q(c, C); - FP_HANDLE_EXCEPTIONS; - return c; -} diff --git a/soft-fp/sysdeps/sparc/sparc32/q_feq.c b/soft-fp/sysdeps/sparc/sparc32/q_feq.c deleted file mode 100644 index 5289116293..0000000000 --- a/soft-fp/sysdeps/sparc/sparc32/q_feq.c +++ /dev/null @@ -1,40 +0,0 @@ -/* Software floating-point emulation. - Return 1 if a == b - Copyright (C) 1997,1999 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Richard Henderson (rth@cygnus.com) and - 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 Library General Public License as - published by the Free Software Foundation; either version 2 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 - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with the GNU C Library; see the file COPYING.LIB. If - not, write to the Free Software Foundation, Inc., - 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#include "soft-fp.h" -#include "quad.h" - -int _Q_feq(const long double a, const long double b) -{ - FP_DECL_EX; - FP_DECL_Q(A); FP_DECL_Q(B); - int r; - - FP_UNPACK_RAW_Q(A, a); - FP_UNPACK_RAW_Q(B, b); - FP_CMP_EQ_Q(r, A, B); - if (r && (FP_ISSIGNAN_Q(A) || FP_ISSIGNAN_Q(B))) - FP_SET_EXCEPTION(FP_EX_INVALID); - FP_HANDLE_EXCEPTIONS; - - return !r; -} diff --git a/soft-fp/sysdeps/sparc/sparc32/q_fge.c b/soft-fp/sysdeps/sparc/sparc32/q_fge.c deleted file mode 100644 index f4bc61335e..0000000000 --- a/soft-fp/sysdeps/sparc/sparc32/q_fge.c +++ /dev/null @@ -1,40 +0,0 @@ -/* Software floating-point emulation. - Return 1 if a >= b - Copyright (C) 1997,1999 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Richard Henderson (rth@cygnus.com) and - 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 Library General Public License as - published by the Free Software Foundation; either version 2 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 - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with the GNU C Library; see the file COPYING.LIB. If - not, write to the Free Software Foundation, Inc., - 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#include "soft-fp.h" -#include "quad.h" - -int _Q_fge(const long double a, const long double b) -{ - FP_DECL_EX; - FP_DECL_Q(A); FP_DECL_Q(B); - int r; - - FP_UNPACK_RAW_Q(A, a); - FP_UNPACK_RAW_Q(B, b); - FP_CMP_Q(r, B, A, 3); - if (r == 3) - FP_SET_EXCEPTION(FP_EX_INVALID); - FP_HANDLE_EXCEPTIONS; - - return (r <= 0); -} diff --git a/soft-fp/sysdeps/sparc/sparc32/q_fgt.c b/soft-fp/sysdeps/sparc/sparc32/q_fgt.c deleted file mode 100644 index ad2c5cbcca..0000000000 --- a/soft-fp/sysdeps/sparc/sparc32/q_fgt.c +++ /dev/null @@ -1,40 +0,0 @@ -/* Software floating-point emulation. - Return 1 if a > b - Copyright (C) 1997,1999 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Richard Henderson (rth@cygnus.com) and - 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 Library General Public License as - published by the Free Software Foundation; either version 2 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 - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with the GNU C Library; see the file COPYING.LIB. If - not, write to the Free Software Foundation, Inc., - 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#include "soft-fp.h" -#include "quad.h" - -int _Q_fgt(const long double a, const long double b) -{ - FP_DECL_EX; - FP_DECL_Q(A); FP_DECL_Q(B); - int r; - - FP_UNPACK_RAW_Q(A, a); - FP_UNPACK_RAW_Q(B, b); - FP_CMP_Q(r, B, A, 3); - if (r == 3) - FP_SET_EXCEPTION(FP_EX_INVALID); - FP_HANDLE_EXCEPTIONS; - - return (r == -1); -} diff --git a/soft-fp/sysdeps/sparc/sparc32/q_fle.c b/soft-fp/sysdeps/sparc/sparc32/q_fle.c deleted file mode 100644 index ffd3c009b7..0000000000 --- a/soft-fp/sysdeps/sparc/sparc32/q_fle.c +++ /dev/null @@ -1,40 +0,0 @@ -/* Software floating-point emulation. - Return 1 if a <= b - Copyright (C) 1997,1999 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Richard Henderson (rth@cygnus.com) and - 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 Library General Public License as - published by the Free Software Foundation; either version 2 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 - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with the GNU C Library; see the file COPYING.LIB. If - not, write to the Free Software Foundation, Inc., - 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#include "soft-fp.h" -#include "quad.h" - -int _Q_fle(const long double a, const long double b) -{ - FP_DECL_EX; - FP_DECL_Q(A); FP_DECL_Q(B); - int r; - - FP_UNPACK_RAW_Q(A, a); - FP_UNPACK_RAW_Q(B, b); - FP_CMP_Q(r, B, A, -2); - if (r == -2) - FP_SET_EXCEPTION(FP_EX_INVALID); - FP_HANDLE_EXCEPTIONS; - - return (r >= 0); -} diff --git a/soft-fp/sysdeps/sparc/sparc32/q_flt.c b/soft-fp/sysdeps/sparc/sparc32/q_flt.c deleted file mode 100644 index 20c2e1ff15..0000000000 --- a/soft-fp/sysdeps/sparc/sparc32/q_flt.c +++ /dev/null @@ -1,40 +0,0 @@ -/* Software floating-point emulation. - Return 1 if a < b - Copyright (C) 1997,1999 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Richard Henderson (rth@cygnus.com) and - 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 Library General Public License as - published by the Free Software Foundation; either version 2 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 - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with the GNU C Library; see the file COPYING.LIB. If - not, write to the Free Software Foundation, Inc., - 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#include "soft-fp.h" -#include "quad.h" - -int _Q_flt(const long double a, const long double b) -{ - FP_DECL_EX; - FP_DECL_Q(A); FP_DECL_Q(B); - int r; - - FP_UNPACK_RAW_Q(A, a); - FP_UNPACK_RAW_Q(B, b); - FP_CMP_Q(r, B, A, 3); - if (r == 3) - FP_SET_EXCEPTION(FP_EX_INVALID); - FP_HANDLE_EXCEPTIONS; - - return (r == 1); -} diff --git a/soft-fp/sysdeps/sparc/sparc32/q_itoq.c b/soft-fp/sysdeps/sparc/sparc32/q_itoq.c deleted file mode 100644 index 97af1483f9..0000000000 --- a/soft-fp/sysdeps/sparc/sparc32/q_itoq.c +++ /dev/null @@ -1,38 +0,0 @@ -/* Software floating-point emulation. - Return (long double)(a) - Copyright (C) 1997,1999 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Richard Henderson (rth@cygnus.com) and - 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 Library General Public License as - published by the Free Software Foundation; either version 2 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 - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with the GNU C Library; see the file COPYING.LIB. If - not, write to the Free Software Foundation, Inc., - 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#include "soft-fp.h" -#include "quad.h" - -long double _Q_itoq(const int a) -{ - FP_DECL_EX; - FP_DECL_Q(C); - int b = a; - long double c; - - FP_FROM_INT_Q(C, b, 32, int); - FP_PACK_Q(c, C); - FP_CLEAR_EXCEPTIONS; - FP_HANDLE_EXCEPTIONS; - return c; -} |