X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=lib%2Fatanl.c;h=eca41774d048d369b812229b501a1a44b066c223;hb=810a812bee90d6bab12e9628dc7745eea49f188c;hp=b2e5d70dc9ab760cf68cd5c0567e6abade9ce3f8;hpb=063043f5a12f4047e45810137a700a71c068a360;p=gnulib.git diff --git a/lib/atanl.c b/lib/atanl.c index b2e5d70dc..eca41774d 100644 --- a/lib/atanl.c +++ b/lib/atanl.c @@ -1,3 +1,23 @@ +/* Copyright 2001 by Stephen L. Moshier + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program 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 General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include + /* s_atanl.c * * Inverse circular tangent for 128-bit long double precision @@ -42,26 +62,7 @@ * */ -/* Copyright 2001 by Stephen L. Moshier - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program 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 General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; see the file COPYING. - If not, write to the Free Software Foundation, - 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#include "mathl.h" - -#include +#include "isnanl.h" /* arctan(k/8), k = 0, ..., 82 */ static const long double atantbl[84] = { @@ -176,12 +177,12 @@ atanl (long double x) int k, sign; long double t, u, p, q; - sign = x < 0.0; - /* Check for zero or NaN. */ - if (x != x || x == 0.0) + if (isnanl (x) || x == 0.0) return x + x; + sign = x < 0.0; + if (x + x == x) { /* Infinity. */