Browse Source

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
tags/v0.3.24
Martin Kroeker GitHub 2 years ago
parent
commit
0a637cc403
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
12 changed files with 14 additions and 14 deletions
  1. +1
    -1
      lapack-netlib/SRC/csytrf.f
  2. +1
    -1
      lapack-netlib/SRC/csytrf_rk.f
  3. +2
    -2
      lapack-netlib/SRC/ctrevc3.f
  4. +1
    -1
      lapack-netlib/SRC/dsytrf.f
  5. +1
    -1
      lapack-netlib/SRC/dsytrf_rk.f
  6. +1
    -1
      lapack-netlib/SRC/dtrevc3.f
  7. +1
    -1
      lapack-netlib/SRC/ssytrf.f
  8. +1
    -1
      lapack-netlib/SRC/ssytrf_rk.f
  9. +1
    -1
      lapack-netlib/SRC/strevc3.f
  10. +1
    -1
      lapack-netlib/SRC/zsytrf.f
  11. +1
    -1
      lapack-netlib/SRC/zsytrf_rk.f
  12. +2
    -2
      lapack-netlib/SRC/ztrevc3.f

+ 1
- 1
lapack-netlib/SRC/csytrf.f View File

@@ -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
*


+ 1
- 1
lapack-netlib/SRC/csytrf_rk.f View File

@@ -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
*


+ 2
- 2
lapack-netlib/SRC/ctrevc3.f View File

@@ -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


+ 1
- 1
lapack-netlib/SRC/dsytrf.f View File

@@ -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
*


+ 1
- 1
lapack-netlib/SRC/dsytrf_rk.f View File

@@ -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
*


+ 1
- 1
lapack-netlib/SRC/dtrevc3.f View File

@@ -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


+ 1
- 1
lapack-netlib/SRC/ssytrf.f View File

@@ -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
*


+ 1
- 1
lapack-netlib/SRC/ssytrf_rk.f View File

@@ -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
*


+ 1
- 1
lapack-netlib/SRC/strevc3.f View File

@@ -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


+ 1
- 1
lapack-netlib/SRC/zsytrf.f View File

@@ -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
*


+ 1
- 1
lapack-netlib/SRC/zsytrf_rk.f View File

@@ -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
*


+ 2
- 2
lapack-netlib/SRC/ztrevc3.f View File

@@ -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…
Cancel
Save