421 static char fmt_9999[] =
"(//\002 WARNING. The value EMIN may be incorre\
422 ct:-\002,\002 EMIN = \002,i8,/\002 If, after inspection, the value EMIN loo\
423 ks\002,\002 acceptable please comment out \002,/\002 the IF block as marked \
424 within the code of routine\002,\002 DLAMC2,\002,/\002 otherwise supply EMIN \
442 static integer lemin, lemax, gnmin;
453 static integer lt, ngnmin, ngpmin;
576 if (leps > b && b > zero) {
580 d__3 = two, d__4 = d__3, d__3 *= d__3;
583 d__2 = d__4 * (d__3 * d__3) * (d__5 * d__5);
607 for (i__ = 1; i__ <= 3; ++i__) {
608 d__1 = small * rbase;
621 if (ngpmin == ngnmin && gpmin == gnmin) {
622 if (ngpmin == gpmin) {
626 }
else if (gpmin - ngpmin == 3) {
627 lemin = ngpmin - 1 + lt;
632 lemin = min(ngpmin,gpmin);
637 }
else if (ngpmin == gpmin && ngnmin == gnmin) {
638 if ((i__1 = ngpmin - ngnmin, abs(i__1)) == 1) {
639 lemin = max(ngpmin,ngnmin);
643 lemin = min(ngpmin,ngnmin);
648 }
else if ((i__1 = ngpmin - ngnmin, abs(i__1)) == 1 && gpmin == gnmin)
650 if (gpmin - min(ngpmin,ngnmin) == 3) {
651 lemin = max(ngpmin,ngnmin) - 1 + lt;
655 lemin = min(ngpmin,ngnmin);
662 i__1 = min(ngpmin,ngnmin), i__1 = min(i__1,gpmin);
663 lemin = min(i__1,gnmin);
678 printf(
"%s", fmt_9999 );
688 ieee = ieee || lieee1;
696 for (i__ = 1; i__ <= i__1; ++i__) {
697 d__1 = lrmin * rbase;
704 fla_dlamc5(&lbeta, <, &lemin, &ieee, &lemax, &lrmax);
int fla_dlamc5(integer *beta, integer *p, integer *emin, logical *ieee, integer *emax, doublereal *rmax)
Definition: fla_dlamch.c:866
int fla_dlamc4(integer *emin, doublereal *start, integer *base)
Definition: fla_dlamch.c:768
double fla_pow_di(doublereal *ap, integer *bp)
Definition: fla_dlamch.c:26
int fla_dlamc1(integer *beta, integer *t, logical *rnd, logical *ieee1)
Definition: fla_dlamch.c:201