Lines Matching refs:x
91 double exp(x)
92 double x;
98 if(x!=x) return(x); /* x is NaN */
100 if( x <= lnhuge ) {
101 if( x >= lntiny ) {
105 k=invln2*x+copysign(0.5,x); /* k=NINT(x/ln2) */
109 hi=x-k*ln2hi;
110 x=hi-(lo=k*ln2lo);
113 z=x*x;
114 c= x - z*(p1+z*(p2+z*(p3+z*(p4+z*p5))));
115 return scalb(1.0+(hi-(lo-(x*c)/(2.0-c))),k);
122 if(finite(x)) return(scalb(1.0,-5000));
131 return( finite(x) ? scalb(1.0,5000) : x);
137 double __exp__D(x, c) in __exp__D() argument
138 double x, c; in __exp__D()
143 if (x != x) /* x is NaN */
144 return(x);
145 if ( x <= lnhuge ) {
146 if ( x >= lntiny ) {
149 z = invln2*x;
150 k = z + copysign(.5, x);
154 hi=(x-k*ln2hi); /* Exact. */
155 x= hi - (lo = k*ln2lo-c);
157 z=x*x;
158 c= x - z*(p1+z*(p2+z*(p3+z*(p4+z*p5))));
159 c = (x*c)/(2.0-c);
167 if(finite(x)) return(scalb(1.0,-5000));
176 return( finite(x) ? scalb(1.0,5000) : x);