[BACK]Return to s_ceil.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_ceil.c between version 1.9 and 1.10

version 1.9, 1997/10/09 11:31:16 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 47  static double huge = 1.0e300;
Line 47  static double huge = 1.0e300;
         if(j0<20) {          if(j0<20) {
             if(j0<0) {  /* raise inexact if x != 0 */              if(j0<0) {  /* raise inexact if x != 0 */
                 if(huge+x>0.0) {/* return 0*sign(x) if |x|<1 */                  if(huge+x>0.0) {/* return 0*sign(x) if |x|<1 */
                     if(i0<0) {i0=0x80000000;i1=0;}                      if(i0<0) {i0=0x80000000;i1=0;}
                     else if((i0|i1)!=0) { i0=0x3ff00000;i1=0;}                      else if((i0|i1)!=0) { i0=0x3ff00000;i1=0;}
                 }                  }
             } else {              } else {
Line 66  static double huge = 1.0e300;
Line 66  static double huge = 1.0e300;
             if((i1&i)==0) return x;     /* x is integral */              if((i1&i)==0) return x;     /* x is integral */
             if(huge+x>0.0) {            /* raise inexact flag */              if(huge+x>0.0) {            /* raise inexact flag */
                 if(i0>0) {                  if(i0>0) {
                     if(j0==20) i0+=1;                      if(j0==20) i0+=1;
                     else {                      else {
                         j = i1 + (1<<(52-j0));                          j = i1 + (1<<(52-j0));
                         if(j<i1) i0+=1; /* got a carry */                          if(j<i1) i0+=1; /* got a carry */

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

CVSweb <webmaster@jp.NetBSD.org>