163 INTEGER FUNCTION ilaenv( ISPEC, NAME, OPTS, N1, N2, N3, N4 )
171 CHARACTER*( * ) NAME, OPTS
172 INTEGER ISPEC, N1, N2, N3, N4
178 INTEGER I, IC, IZ, NB, NBMIN, NX
180 CHARACTER C1*1, C2*2, C4*2, C3*3, SUBNAM*6
183 INTRINSIC char, ichar, int, min, real
186 INTEGER IEEECK, IPARMQ, IPARAM2STAGE
187 EXTERNAL ieeeck, iparmq, iparam2stage
191 GO TO ( 10, 10, 10, 80, 90, 100, 110, 120,
192 $ 130, 140, 150, 160, 160, 160, 160, 160,
193 $ 170, 170, 170, 170, 170 )ispec
206 ic = ichar( subnam( 1: 1 ) )
208 IF( iz.EQ.90 .OR. iz.EQ.122 )
THEN 212 IF( ic.GE.97 .AND. ic.LE.122 )
THEN 213 subnam( 1: 1 ) = char( ic-32 )
215 ic = ichar( subnam( i: i ) )
216 IF( ic.GE.97 .AND. ic.LE.122 )
217 $ subnam( i: i ) = char( ic-32 )
221 ELSE IF( iz.EQ.233 .OR. iz.EQ.169 )
THEN 225 IF( ( ic.GE.129 .AND. ic.LE.137 ) .OR.
226 $ ( ic.GE.145 .AND. ic.LE.153 ) .OR.
227 $ ( ic.GE.162 .AND. ic.LE.169 ) )
THEN 228 subnam( 1: 1 ) = char( ic+64 )
230 ic = ichar( subnam( i: i ) )
231 IF( ( ic.GE.129 .AND. ic.LE.137 ) .OR.
232 $ ( ic.GE.145 .AND. ic.LE.153 ) .OR.
233 $ ( ic.GE.162 .AND. ic.LE.169 ) )subnam( i:
234 $ i ) = char( ic+64 )
238 ELSE IF( iz.EQ.218 .OR. iz.EQ.250 )
THEN 242 IF( ic.GE.225 .AND. ic.LE.250 )
THEN 243 subnam( 1: 1 ) = char( ic-32 )
245 ic = ichar( subnam( i: i ) )
246 IF( ic.GE.225 .AND. ic.LE.250 )
247 $ subnam( i: i ) = char( ic-32 )
253 sname = c1.EQ.
'S' .OR. c1.EQ.
'D' 254 cname = c1.EQ.
'C' .OR. c1.EQ.
'Z' 255 IF( .NOT.( cname .OR. sname ) )
261 GO TO ( 50, 60, 70 )ispec
273 IF( c2.EQ.
'GE' )
THEN 274 IF( c3.EQ.
'TRF' )
THEN 280 ELSE IF( c3.EQ.
'QRF' .OR. c3.EQ.
'RQF' .OR. c3.EQ.
'LQF' .OR.
287 ELSE IF( c3.EQ.
'QR ')
THEN 291 IF ((n1*n2.LE.131072).OR.(n1.LE.8192))
THEN 297 IF ((n1*n2.LE.131072).OR.(n1.LE.8192))
THEN 310 ELSE IF( c3.EQ.
'LQ ')
THEN 314 IF ((n1*n2.LE.131072).OR.(n1.LE.8192))
THEN 320 IF ((n1*n2.LE.131072).OR.(n1.LE.8192))
THEN 333 ELSE IF( c3.EQ.
'HRD' )
THEN 339 ELSE IF( c3.EQ.
'BRD' )
THEN 345 ELSE IF( c3.EQ.
'TRI' )
THEN 352 ELSE IF( c2.EQ.
'PO' )
THEN 353 IF( c3.EQ.
'TRF' )
THEN 360 ELSE IF( c2.EQ.
'SY' )
THEN 361 IF( c3.EQ.
'TRF' )
THEN 367 ELSE IF( sname .AND. c3.EQ.
'TRD' )
THEN 369 ELSE IF( sname .AND. c3.EQ.
'GST' )
THEN 372 ELSE IF( cname .AND. c2.EQ.
'HE' )
THEN 373 IF( c3.EQ.
'TRF' )
THEN 375 ELSE IF( c3.EQ.
'TRD' )
THEN 377 ELSE IF( c3.EQ.
'GST' )
THEN 380 ELSE IF( sname .AND. c2.EQ.
'OR' )
THEN 381 IF( c3( 1: 1 ).EQ.
'G' )
THEN 382 IF( c4.EQ.
'QR' .OR. c4.EQ.
'RQ' .OR. c4.EQ.
'LQ' .OR. c4.EQ.
383 $
'QL' .OR. c4.EQ.
'HR' .OR. c4.EQ.
'TR' .OR. c4.EQ.
'BR' )
387 ELSE IF( c3( 1: 1 ).EQ.
'M' )
THEN 388 IF( c4.EQ.
'QR' .OR. c4.EQ.
'RQ' .OR. c4.EQ.
'LQ' .OR. c4.EQ.
389 $
'QL' .OR. c4.EQ.
'HR' .OR. c4.EQ.
'TR' .OR. c4.EQ.
'BR' )
394 ELSE IF( cname .AND. c2.EQ.
'UN' )
THEN 395 IF( c3( 1: 1 ).EQ.
'G' )
THEN 396 IF( c4.EQ.
'QR' .OR. c4.EQ.
'RQ' .OR. c4.EQ.
'LQ' .OR. c4.EQ.
397 $
'QL' .OR. c4.EQ.
'HR' .OR. c4.EQ.
'TR' .OR. c4.EQ.
'BR' )
401 ELSE IF( c3( 1: 1 ).EQ.
'M' )
THEN 402 IF( c4.EQ.
'QR' .OR. c4.EQ.
'RQ' .OR. c4.EQ.
'LQ' .OR. c4.EQ.
403 $
'QL' .OR. c4.EQ.
'HR' .OR. c4.EQ.
'TR' .OR. c4.EQ.
'BR' )
408 ELSE IF( c2.EQ.
'GB' )
THEN 409 IF( c3.EQ.
'TRF' )
THEN 424 ELSE IF( c2.EQ.
'PB' )
THEN 425 IF( c3.EQ.
'TRF' )
THEN 440 ELSE IF( c2.EQ.
'TR' )
THEN 441 IF( c3.EQ.
'TRI' )
THEN 447 ELSE IF ( c3.EQ.
'EVC' )
THEN 454 ELSE IF( c2.EQ.
'LA' )
THEN 455 IF( c3.EQ.
'UUM' )
THEN 462 ELSE IF( sname .AND. c2.EQ.
'ST' )
THEN 463 IF( c3.EQ.
'EBZ' )
THEN 466 ELSE IF( c2.EQ.
'GG' )
THEN 468 IF( c3.EQ.
'HD3' )
THEN 484 IF( c2.EQ.
'GE' )
THEN 485 IF( c3.EQ.
'QRF' .OR. c3.EQ.
'RQF' .OR. c3.EQ.
'LQF' .OR. c3.EQ.
492 ELSE IF( c3.EQ.
'HRD' )
THEN 498 ELSE IF( c3.EQ.
'BRD' )
THEN 504 ELSE IF( c3.EQ.
'TRI' )
THEN 511 ELSE IF( c2.EQ.
'SY' )
THEN 512 IF( c3.EQ.
'TRF' )
THEN 518 ELSE IF( sname .AND. c3.EQ.
'TRD' )
THEN 521 ELSE IF( cname .AND. c2.EQ.
'HE' )
THEN 522 IF( c3.EQ.
'TRD' )
THEN 525 ELSE IF( sname .AND. c2.EQ.
'OR' )
THEN 526 IF( c3( 1: 1 ).EQ.
'G' )
THEN 527 IF( c4.EQ.
'QR' .OR. c4.EQ.
'RQ' .OR. c4.EQ.
'LQ' .OR. c4.EQ.
528 $
'QL' .OR. c4.EQ.
'HR' .OR. c4.EQ.
'TR' .OR. c4.EQ.
'BR' )
532 ELSE IF( c3( 1: 1 ).EQ.
'M' )
THEN 533 IF( c4.EQ.
'QR' .OR. c4.EQ.
'RQ' .OR. c4.EQ.
'LQ' .OR. c4.EQ.
534 $
'QL' .OR. c4.EQ.
'HR' .OR. c4.EQ.
'TR' .OR. c4.EQ.
'BR' )
539 ELSE IF( cname .AND. c2.EQ.
'UN' )
THEN 540 IF( c3( 1: 1 ).EQ.
'G' )
THEN 541 IF( c4.EQ.
'QR' .OR. c4.EQ.
'RQ' .OR. c4.EQ.
'LQ' .OR. c4.EQ.
542 $
'QL' .OR. c4.EQ.
'HR' .OR. c4.EQ.
'TR' .OR. c4.EQ.
'BR' )
546 ELSE IF( c3( 1: 1 ).EQ.
'M' )
THEN 547 IF( c4.EQ.
'QR' .OR. c4.EQ.
'RQ' .OR. c4.EQ.
'LQ' .OR. c4.EQ.
548 $
'QL' .OR. c4.EQ.
'HR' .OR. c4.EQ.
'TR' .OR. c4.EQ.
'BR' )
553 ELSE IF( c2.EQ.
'GG' )
THEN 555 IF( c3.EQ.
'HD3' )
THEN 567 IF( c2.EQ.
'GE' )
THEN 568 IF( c3.EQ.
'QRF' .OR. c3.EQ.
'RQF' .OR. c3.EQ.
'LQF' .OR. c3.EQ.
575 ELSE IF( c3.EQ.
'HRD' )
THEN 581 ELSE IF( c3.EQ.
'BRD' )
THEN 588 ELSE IF( c2.EQ.
'SY' )
THEN 589 IF( sname .AND. c3.EQ.
'TRD' )
THEN 592 ELSE IF( cname .AND. c2.EQ.
'HE' )
THEN 593 IF( c3.EQ.
'TRD' )
THEN 596 ELSE IF( sname .AND. c2.EQ.
'OR' )
THEN 597 IF( c3( 1: 1 ).EQ.
'G' )
THEN 598 IF( c4.EQ.
'QR' .OR. c4.EQ.
'RQ' .OR. c4.EQ.
'LQ' .OR. c4.EQ.
599 $
'QL' .OR. c4.EQ.
'HR' .OR. c4.EQ.
'TR' .OR. c4.EQ.
'BR' )
604 ELSE IF( cname .AND. c2.EQ.
'UN' )
THEN 605 IF( c3( 1: 1 ).EQ.
'G' )
THEN 606 IF( c4.EQ.
'QR' .OR. c4.EQ.
'RQ' .OR. c4.EQ.
'LQ' .OR. c4.EQ.
607 $
'QL' .OR. c4.EQ.
'HR' .OR. c4.EQ.
'TR' .OR. c4.EQ.
'BR' )
612 ELSE IF( c2.EQ.
'GG' )
THEN 614 IF( c3.EQ.
'HD3' )
THEN 639 ilaenv = int(
REAL( MIN( N1, N2 ) )*1.6e0 )
672 ilaenv = ieeeck( 1, 0.0, 1.0 )
683 ilaenv = ieeeck( 0, 0.0, 1.0 )
691 ilaenv = iparmq( ispec, name, opts, n1, n2, n3, n4 )
698 ilaenv = iparam2stage( ispec, name, opts, n1, n2, n3, n4 )
integer function ilaenv(ISPEC, NAME, OPTS, N1, N2, N3, N4)
ILAENV