scalb
double scalb(double, double);
else { t = y/x ; y = scalb(y,-k); x=scalb(x,-k); }
x=scalb(x,-exp);
{ one+small; return(scalb(x,exp)); }
else y=scalb(y,-exp);
return(scalb(sqrt(x*x+y*y),exp));
return(scalb(exp((x-mln2hi)-mln2lo), EXPMAX));
return scalb(1.0+(hi-(lo-(x*c)/(2.0-c))),k);
if(finite(x)) return(scalb(1.0,-5000));
return( finite(x) ? scalb(1.0,5000) : x);
return scalb(1.+(hi-(lo - c)), k);
if(finite(x)) return(scalb(1.0,-5000));
return( finite(x) ? scalb(1.0,5000) : x);
{ x=one-scalb(one,-k); z += __exp__E(z,c);}
{ x = __exp__E(z,c)-scalb(one,-k); x+=z; z=one;}
return (scalb(x+z,k));
return( finite(x) ? scalb(one,5000) : x);
k=logb(one+x); z=scalb(x,-k); t=scalb(one,-k);
return(copysign(scalb(one+expm1((x-mln2hi)-mln2lo),max),sign));
x *= scalb(1.0,(int)prep1); N -= prep1; return(scalb(x,N));}
{*px=(*px&~mexp)|(short)(1<<gap); x *= scalb(1.0,k-1);}
{ double b; b=scalb(1.0,(int)prep1);
x=scalb(x,-n);
if((m=logb(x))!=0) x=scalb(x,-m); /* subnormal number */
end: return(scalb(q,n));
return scalb(1.+(hi-(lo - c)), k);
if(finite(x)) return(scalb(1.0,-5000));
return( finite(x) ? scalb(1.0,5000) : x);
scalb(double x, double fn) /* wrapper scalb */