[BACK]Return to s_atan.c CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / src / lib / libm / src

Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.

Diff for /src/lib/libm/src/s_atan.c between version 1.9 and 1.10

version 1.9, 1997/10/09 11:30:56 version 1.10, 1999/07/02 15:37:42
Line 5 
Line 5 
  *   *
  * Developed at SunPro, a Sun Microsystems, Inc. business.   * Developed at SunPro, a Sun Microsystems, Inc. business.
  * Permission to use, copy, modify, and distribute this   * Permission to use, copy, modify, and distribute this
  * software is freely granted, provided that this notice   * software is freely granted, provided that this notice
  * is preserved.   * is preserved.
  * ====================================================   * ====================================================
  */   */
Line 29  __RCSID("$NetBSD$");
Line 29  __RCSID("$NetBSD$");
  *      [39/16,INF]   atan(x) = atan(INF) + atan( -1/t )   *      [39/16,INF]   atan(x) = atan(INF) + atan( -1/t )
  *   *
  * Constants:   * Constants:
  * The hexadecimal values are the intended ones for the following   * The hexadecimal values are the intended ones for the following
  * constants. The decimal values may be used, provided that the   * constants. The decimal values may be used, provided that the
  * compiler will convert from decimal to binary accurately enough   * compiler will convert from decimal to binary accurately enough
  * to produce the hexadecimal values shown.   * to produce the hexadecimal values shown.
  */   */
   
Line 79  static double aT[] = {
Line 79  static double aT[] = {
 };  };
   
 #ifdef __STDC__  #ifdef __STDC__
         static const double          static const double
 #else  #else
         static double          static double
 #endif  #endif
 one   = 1.0,  one   = 1.0,
 huge   = 1.0e300;  huge   = 1.0e300;
Line 115  huge   = 1.0e300;
Line 115  huge   = 1.0e300;
         x = fabs(x);          x = fabs(x);
         if (ix < 0x3ff30000) {          /* |x| < 1.1875 */          if (ix < 0x3ff30000) {          /* |x| < 1.1875 */
             if (ix < 0x3fe60000) {      /* 7/16 <=|x|<11/16 */              if (ix < 0x3fe60000) {      /* 7/16 <=|x|<11/16 */
                 id = 0; x = (2.0*x-one)/(2.0+x);                  id = 0; x = (2.0*x-one)/(2.0+x);
             } else {                    /* 11/16<=|x|< 19/16 */              } else {                    /* 11/16<=|x|< 19/16 */
                 id = 1; x  = (x-one)/(x+one);                  id = 1; x  = (x-one)/(x+one);
             }              }
         } else {          } else {
             if (ix < 0x40038000) {      /* |x| < 2.4375 */              if (ix < 0x40038000) {      /* |x| < 2.4375 */

Legend:
Removed from v.1.9  
changed lines
  Added in v.1.10

CVSweb <webmaster@jp.NetBSD.org>