2006-09-20 Steven Munroe * sysdeps/powerpc/nofpu/Versions: Export __nedf2, __nesf2, __gtdf2, __gtsf2, __ltdf2, __ltsf2 to avoid symbol conflicts with gcc-4.2 libgcc. [BZ #3268] * sysdeps/powerpc/nofpu/Versions: Export __fmasf4 and __fmadf4. * sysdeps/powerpc/nofpu/s_fma.c: New file. * sysdeps/powerpc/nofpu/s_fmaf.c: New file. * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/Implies: Add powerpc/nofpu to override ldbl-opt. diff -urN libc24-ppc64-20060830/ports/sysdeps/powerpc/nofpu/Versions libc24/ports/sysdeps/powerpc/nofpu/Versions --- libc24-ppc64-20060830/ports/sysdeps/powerpc/nofpu/Versions 2006-09-15 16:43:22.000000000 -0500 +++ libc24/ports/sysdeps/powerpc/nofpu/Versions 2006-09-28 11:19:10.000000000 -0500 @@ -13,5 +13,9 @@ __floatundidf; __floatundisf; __floatunsidf; __floatunsisf; __unorddf2; __unordsf2; + __nedf2; __nesf2; + __gtdf2; __gtsf2; + __ltdf2; __ltsf2; + __fmasf4; __fmadf4; } } diff -urN libc24-ppc64-20060830/ports/sysdeps/powerpc/nofpu/s_fma.c libc24/ports/sysdeps/powerpc/nofpu/s_fma.c --- libc24-ppc64-20060830/ports/sysdeps/powerpc/nofpu/s_fma.c Wed Dec 31 18:00:00 1969 +++ libc24/ports/sysdeps/powerpc/nofpu/s_fma.c Fri Sep 22 17:27:37 2006 @@ -0,0 +1,36 @@ +/* soft-fp x * y + z as ternary operation. + Copyright (C) 2006 Free Software Foundation, Inc. + This file is part of the GNU C Library. + Contributed by Steven Munroe , 2006. + + 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, write to the Free + Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA + 02111-1307 USA. */ + +#include + +extern double __fmadf4 (double, double, double); + +/* Compute floating point multiply-add with higher (quad) precision. */ +double +__fma (double a, double b, double c) +{ + return __fmadf4 (a, b, c); +} +weak_alias (__fma, fma) + +#ifdef NO_LONG_DOUBLE +strong_alias (__fma, __fmal) +weak_alias (__fmal, fmal) +#endif diff -urN libc24-ppc64-20060830/ports/sysdeps/powerpc/nofpu/s_fmaf.c libc24/ports/sysdeps/powerpc/nofpu/s_fmaf.c --- libc24-ppc64-20060830/ports/sysdeps/powerpc/nofpu/s_fmaf.c Wed Dec 31 18:00:00 1969 +++ libc24/ports/sysdeps/powerpc/nofpu/s_fmaf.c Tue Sep 26 15:44:26 2006 @@ -0,0 +1,31 @@ +/* soft-fp x * y + z as ternary operation. + Copyright (C) 2006 Free Software Foundation, Inc. + This file is part of the GNU C Library. + Contributed by Steven Munroe , 2006. + + 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, write to the Free + Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA + 02111-1307 USA. */ + +#include + +extern float __fmasf4 (float, float, float); + +/* Compute floating point multiply-add with higher (double) precision. */ +float +__fmaf (float a, float b, float c) +{ + return __fmasf4 (a, b, c); +} +weak_alias (__fmaf, fmaf) diff -urN libc24-ppc64-20060830/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/Implies libc24/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/Implies --- libc24-ppc64-20060830/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/Implies 2006-09-15 16:43:22.000000000 -0500 +++ libc24/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/Implies 2006-10-05 14:22:25.201922128 -0500 @@ -1 +1,2 @@ +powerpc/nofpu powerpc/soft-fp