Print this page
5261 libm should stop using synonyms.h


  76  *
  77  *      For x in [1.75,16/3]
  78  *         erfc(x) = exp(-x*x)*(1/x)*R1(1/x)/S1(1/x)
  79  *         erf(x)  = 1 - erfc(x)
  80  *      precision: absolute error of R1/S1 is bounded by 2**-124.03
  81  *
  82  *      For x in [16/3,107]
  83  *         erfc(x) = exp(-x*x)*(1/x)*R2(1/x)/S2(1/x)
  84  *         erf(x)  = 1 - erfc(x) (if x>=9 simple return erf(x)=1 with inexact)
  85  *      precision: absolute error of R2/S2 is bounded by 2**-120.07
  86  *
  87  *      Else if inf > x >= 107
  88  *         erf(x)  = 1 with inexact
  89  *         erfc(x) = 0 with underflow
  90  *
  91  *      Special case:
  92  *         erf(inf)  = 1
  93  *         erfc(inf) = 0
  94  */
  95 
  96 #pragma weak erfl = __erfl
  97 #pragma weak erfcl = __erfcl
  98 
  99 #include "libm.h"
 100 #include "longdouble.h"
 101 
 102 static const long double
 103         tiny        = 1e-40L,
 104         nearunfl    = 1e-4000L,
 105         half        = 0.5L,
 106         one         = 1.0L,
 107         onehalf     = 1.5L,
 108         L16_3       = 16.0L/3.0L;
 109 /*
 110  * Coefficients for even polynomial P for erf(x)=x+x*P(x^2) on [0,0.84375]
 111  */
 112 static const long double P[] = {        /* 21 coeffs */
 113    1.283791670955125738961589031215451715556e-0001L,
 114   -3.761263890318375246320529677071815594603e-0001L,
 115    1.128379167095512573896158903121205899135e-0001L,
 116   -2.686617064513125175943235483344625046092e-0002L,
 117    5.223977625442187842111846652980454568389e-0003L,




  76  *
  77  *      For x in [1.75,16/3]
  78  *         erfc(x) = exp(-x*x)*(1/x)*R1(1/x)/S1(1/x)
  79  *         erf(x)  = 1 - erfc(x)
  80  *      precision: absolute error of R1/S1 is bounded by 2**-124.03
  81  *
  82  *      For x in [16/3,107]
  83  *         erfc(x) = exp(-x*x)*(1/x)*R2(1/x)/S2(1/x)
  84  *         erf(x)  = 1 - erfc(x) (if x>=9 simple return erf(x)=1 with inexact)
  85  *      precision: absolute error of R2/S2 is bounded by 2**-120.07
  86  *
  87  *      Else if inf > x >= 107
  88  *         erf(x)  = 1 with inexact
  89  *         erfc(x) = 0 with underflow
  90  *
  91  *      Special case:
  92  *         erf(inf)  = 1
  93  *         erfc(inf) = 0
  94  */
  95 
  96 #pragma weak __erfl = erfl
  97 #pragma weak __erfcl = erfcl
  98 
  99 #include "libm.h"
 100 #include "longdouble.h"
 101 
 102 static const long double
 103         tiny        = 1e-40L,
 104         nearunfl    = 1e-4000L,
 105         half        = 0.5L,
 106         one         = 1.0L,
 107         onehalf     = 1.5L,
 108         L16_3       = 16.0L/3.0L;
 109 /*
 110  * Coefficients for even polynomial P for erf(x)=x+x*P(x^2) on [0,0.84375]
 111  */
 112 static const long double P[] = {        /* 21 coeffs */
 113    1.283791670955125738961589031215451715556e-0001L,
 114   -3.761263890318375246320529677071815594603e-0001L,
 115    1.128379167095512573896158903121205899135e-0001L,
 116   -2.686617064513125175943235483344625046092e-0002L,
 117    5.223977625442187842111846652980454568389e-0003L,