201 SUBROUTINE csyconvf_rook( UPLO, WAY, N, A, LDA, E, IPIV, INFO )
214 COMPLEX A( LDA, * ), E( * )
221 parameter( zero = ( 0.0e+0, 0.0e+0 ) )
230 LOGICAL UPPER, CONVERT
236 upper = lsame( uplo,
'U' )
237 convert = lsame( way,
'C' )
238 IF( .NOT.upper .AND. .NOT.lsame( uplo,
'L' ) )
THEN
240 ELSE IF( .NOT.convert .AND. .NOT.lsame( way,
'R' ) )
THEN
242 ELSE IF( n.LT.0 )
THEN
244 ELSE IF( lda.LT.max( 1, n ) )
THEN
249 CALL xerbla(
'CSYCONVF_ROOK', -info )
275 IF( ipiv( i ).LT.0 )
THEN
293 IF( ipiv( i ).GT.0 )
THEN
302 CALL cswap( n-i, a( i, i+1 ), lda,
303 $ a( ip, i+1 ), lda )
318 CALL cswap( n-i, a( i, i+1 ), lda,
319 $ a( ip, i+1 ), lda )
321 IF( ip2.NE.(i-1) )
THEN
322 CALL cswap( n-i, a( i-1, i+1 ), lda,
323 $ a( ip2, i+1 ), lda )
344 IF( ipiv( i ).GT.0 )
THEN
353 CALL cswap( n-i, a( ip, i+1 ), lda,
369 IF( ip2.NE.(i-1) )
THEN
370 CALL cswap( n-i, a( ip2, i+1 ), lda,
371 $ a( i-1, i+1 ), lda )
374 CALL cswap( n-i, a( ip, i+1 ), lda,
389 IF( ipiv( i ).LT.0 )
THEN
416 IF( i.LT.n .AND. ipiv(i).LT.0 )
THEN
434 IF( ipiv( i ).GT.0 )
THEN
443 CALL cswap( i-1, a( i, 1 ), lda,
459 CALL cswap( i-1, a( i, 1 ), lda,
462 IF( ip2.NE.(i+1) )
THEN
463 CALL cswap( i-1, a( i+1, 1 ), lda,
485 IF( ipiv( i ).GT.0 )
THEN
494 CALL cswap( i-1, a( ip, 1 ), lda,
510 IF( ip2.NE.(i+1) )
THEN
511 CALL cswap( i-1, a( ip2, 1 ), lda,
515 CALL cswap( i-1, a( ip, 1 ), lda,
529 DO WHILE ( i.LE.n-1 )
530 IF( ipiv( i ).LT.0 )
THEN
531 a( i + 1, i ) = e( i )