Print this page


Split Close
Expand all
Collapse all
          --- old/usr/src/lib/libm/common/LD/log1pl.c
          +++ new/usr/src/lib/libm/common/LD/log1pl.c
↓ open down ↓ 46 lines elided ↑ open up ↑
  47   47  log1pl(long double x) {
  48   48          long double y;
  49   49          enum fp_direction_type rd;
  50   50  
  51   51          if (x != x)
  52   52                  return (x + x);
  53   53          if (x < -1.L)
  54   54                  return (logl(x));
  55   55          rd = __swapRD(fp_nearest);
  56   56          y = 1.L + x;
  57      -        if (y != 1.L)
       57 +        if (y != 1.L) {
  58   58                  if (y == x)
  59   59                          x = logl(x);
  60   60                  else
  61   61                          x *= logl(y) / (y - 1.L);
       62 +        }
  62   63          if (rd != fp_nearest)
  63   64                  (void) __swapRD(rd);
  64   65          return (x);
  65   66  }
    
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX