Fix workspace query corner cases to always return at least 1 (Reference-LAPACK PR 883) (#4146)
* Fix workspace query corner cases to always return at least 1
This commit is contained in:
parent
4c43d1eeba
commit
0a637cc403
|
@ -232,7 +232,7 @@
|
|||
* Determine the block size
|
||||
*
|
||||
NB = ILAENV( 1, 'CSYTRF', UPLO, N, -1, -1, -1 )
|
||||
LWKOPT = N*NB
|
||||
LWKOPT = MAX( 1, N*NB )
|
||||
WORK( 1 ) = LWKOPT
|
||||
END IF
|
||||
*
|
||||
|
|
|
@ -310,7 +310,7 @@
|
|||
* Determine the block size
|
||||
*
|
||||
NB = ILAENV( 1, 'CSYTRF_RK', UPLO, N, -1, -1, -1 )
|
||||
LWKOPT = N*NB
|
||||
LWKOPT = MAX( 1, N*NB )
|
||||
WORK( 1 ) = LWKOPT
|
||||
END IF
|
||||
*
|
||||
|
|
|
@ -321,9 +321,9 @@
|
|||
*
|
||||
INFO = 0
|
||||
NB = ILAENV( 1, 'CTREVC', SIDE // HOWMNY, N, -1, -1, -1 )
|
||||
MAXWRK = N + 2*N*NB
|
||||
MAXWRK = MAX( 1, N + 2*N*NB )
|
||||
WORK(1) = MAXWRK
|
||||
RWORK(1) = N
|
||||
RWORK(1) = MAX( 1, N )
|
||||
LQUERY = ( LWORK.EQ.-1 .OR. LRWORK.EQ.-1 )
|
||||
IF( .NOT.RIGHTV .AND. .NOT.LEFTV ) THEN
|
||||
INFO = -1
|
||||
|
|
|
@ -232,7 +232,7 @@
|
|||
* Determine the block size
|
||||
*
|
||||
NB = ILAENV( 1, 'DSYTRF', UPLO, N, -1, -1, -1 )
|
||||
LWKOPT = N*NB
|
||||
LWKOPT = MAX( 1, N*NB )
|
||||
WORK( 1 ) = LWKOPT
|
||||
END IF
|
||||
*
|
||||
|
|
|
@ -310,7 +310,7 @@
|
|||
* Determine the block size
|
||||
*
|
||||
NB = ILAENV( 1, 'DSYTRF_RK', UPLO, N, -1, -1, -1 )
|
||||
LWKOPT = N*NB
|
||||
LWKOPT = MAX( 1, N*NB )
|
||||
WORK( 1 ) = LWKOPT
|
||||
END IF
|
||||
*
|
||||
|
|
|
@ -298,7 +298,7 @@
|
|||
*
|
||||
INFO = 0
|
||||
NB = ILAENV( 1, 'DTREVC', SIDE // HOWMNY, N, -1, -1, -1 )
|
||||
MAXWRK = N + 2*N*NB
|
||||
MAXWRK = MAX( 1, N + 2*N*NB )
|
||||
WORK(1) = MAXWRK
|
||||
LQUERY = ( LWORK.EQ.-1 )
|
||||
IF( .NOT.RIGHTV .AND. .NOT.LEFTV ) THEN
|
||||
|
|
|
@ -232,7 +232,7 @@
|
|||
* Determine the block size
|
||||
*
|
||||
NB = ILAENV( 1, 'SSYTRF', UPLO, N, -1, -1, -1 )
|
||||
LWKOPT = N*NB
|
||||
LWKOPT = MAX( 1, N*NB )
|
||||
WORK( 1 ) = LWKOPT
|
||||
END IF
|
||||
*
|
||||
|
|
|
@ -310,7 +310,7 @@
|
|||
* Determine the block size
|
||||
*
|
||||
NB = ILAENV( 1, 'SSYTRF_RK', UPLO, N, -1, -1, -1 )
|
||||
LWKOPT = N*NB
|
||||
LWKOPT = MAX( 1, N*NB )
|
||||
WORK( 1 ) = LWKOPT
|
||||
END IF
|
||||
*
|
||||
|
|
|
@ -298,7 +298,7 @@
|
|||
*
|
||||
INFO = 0
|
||||
NB = ILAENV( 1, 'STREVC', SIDE // HOWMNY, N, -1, -1, -1 )
|
||||
MAXWRK = N + 2*N*NB
|
||||
MAXWRK = MAX( 1, N + 2*N*NB )
|
||||
WORK(1) = MAXWRK
|
||||
LQUERY = ( LWORK.EQ.-1 )
|
||||
IF( .NOT.RIGHTV .AND. .NOT.LEFTV ) THEN
|
||||
|
|
|
@ -232,7 +232,7 @@
|
|||
* Determine the block size
|
||||
*
|
||||
NB = ILAENV( 1, 'ZSYTRF', UPLO, N, -1, -1, -1 )
|
||||
LWKOPT = N*NB
|
||||
LWKOPT = MAX( 1, N*NB )
|
||||
WORK( 1 ) = LWKOPT
|
||||
END IF
|
||||
*
|
||||
|
|
|
@ -310,7 +310,7 @@
|
|||
* Determine the block size
|
||||
*
|
||||
NB = ILAENV( 1, 'ZSYTRF_RK', UPLO, N, -1, -1, -1 )
|
||||
LWKOPT = N*NB
|
||||
LWKOPT = MAX( 1, N*NB )
|
||||
WORK( 1 ) = LWKOPT
|
||||
END IF
|
||||
*
|
||||
|
|
|
@ -321,9 +321,9 @@
|
|||
*
|
||||
INFO = 0
|
||||
NB = ILAENV( 1, 'ZTREVC', SIDE // HOWMNY, N, -1, -1, -1 )
|
||||
MAXWRK = N + 2*N*NB
|
||||
MAXWRK = MAX( 1, N + 2*N*NB )
|
||||
WORK(1) = MAXWRK
|
||||
RWORK(1) = N
|
||||
RWORK(1) = MAX( 1, N )
|
||||
LQUERY = ( LWORK.EQ.-1 .OR. LRWORK.EQ.-1 )
|
||||
IF( .NOT.RIGHTV .AND. .NOT.LEFTV ) THEN
|
||||
INFO = -1
|
||||
|
|
Loading…
Reference in New Issue