Print this page




  17  * information: Portions Copyright [yyyy] [name of copyright owner]
  18  *
  19  * CDDL HEADER END
  20  */
  21 
  22 /*
  23  * Copyright 2011 Nexenta Systems, Inc.  All rights reserved.
  24  */
  25 /*
  26  * Copyright 2006 Sun Microsystems, Inc.  All rights reserved.
  27  * Use is subject to license terms.
  28  */
  29 
  30 /* __rem_pio2l(x,y)
  31  *
  32  * return the remainder of x rem pi/2 in y[0]+y[1]
  33  * by calling __rem_pio2m
  34  */
  35 
  36 #include "libm.h"
  37 
  38 #include "longdouble.h"
  39 
  40 extern const int _TBL_ipio2l_inf[];
  41 
  42 static const long double
  43     two24l = 16777216.0L,
  44     pio4   = 0.7853981633974483096156608458198757210495L;
  45 
  46 int
  47 __rem_pio2l(long double x, long double *y)
  48 {
  49         long double     z, w;
  50         double          t[3], v[5];
  51         int             e0, i, nx, n, sign;
  52 
  53         sign = signbitl(x);
  54         z = fabsl(x);
  55         if (z <= pio4) {
  56                 y[0] = x;
  57                 y[1] = 0;




  17  * information: Portions Copyright [yyyy] [name of copyright owner]
  18  *
  19  * CDDL HEADER END
  20  */
  21 
  22 /*
  23  * Copyright 2011 Nexenta Systems, Inc.  All rights reserved.
  24  */
  25 /*
  26  * Copyright 2006 Sun Microsystems, Inc.  All rights reserved.
  27  * Use is subject to license terms.
  28  */
  29 
  30 /* __rem_pio2l(x,y)
  31  *
  32  * return the remainder of x rem pi/2 in y[0]+y[1]
  33  * by calling __rem_pio2m
  34  */
  35 
  36 #include "libm.h"

  37 #include "longdouble.h"
  38 
  39 extern const int _TBL_ipio2l_inf[];
  40 
  41 static const long double
  42     two24l = 16777216.0L,
  43     pio4   = 0.7853981633974483096156608458198757210495L;
  44 
  45 int
  46 __rem_pio2l(long double x, long double *y)
  47 {
  48         long double     z, w;
  49         double          t[3], v[5];
  50         int             e0, i, nx, n, sign;
  51 
  52         sign = signbitl(x);
  53         z = fabsl(x);
  54         if (z <= pio4) {
  55                 y[0] = x;
  56                 y[1] = 0;