|
208 | 208 | *> \param[out] WORK |
209 | 209 | *> \verbatim |
210 | 210 | *> WORK is COMPLEX array, dimension (MAX(1,LWORK)) |
211 | | -*> On exit, if INFO = 0, WORK(1) returns the optimal LWORK; |
| 211 | +*> On exit, if INFO = 0, WORK(1) returns the optimal LWORK. |
212 | 212 | *> \endverbatim |
213 | 213 | *> |
214 | 214 | *> \param[in] LWORK |
@@ -312,8 +312,8 @@ SUBROUTINE CGESVDX( JOBU, JOBVT, RANGE, M, N, A, LDA, VL, VU, |
312 | 312 | * .. External Functions .. |
313 | 313 | LOGICAL LSAME |
314 | 314 | INTEGER ILAENV |
315 | | - REAL SLAMCH, CLANGE |
316 | | - EXTERNAL LSAME, ILAENV, SLAMCH, CLANGE |
| 315 | + REAL SLAMCH, CLANGE, SROUNDUP_LWORK |
| 316 | + EXTERNAL LSAME, ILAENV, SLAMCH, CLANGE, SROUNDUP_LWORK |
317 | 317 | * .. |
318 | 318 | * .. Intrinsic Functions .. |
319 | 319 | INTRINSIC MAX, MIN, SQRT |
@@ -448,7 +448,7 @@ SUBROUTINE CGESVDX( JOBU, JOBVT, RANGE, M, N, A, LDA, VL, VU, |
448 | 448 | END IF |
449 | 449 | END IF |
450 | 450 | MAXWRK = MAX( MAXWRK, MINWRK ) |
451 | | - WORK( 1 ) = CMPLX( REAL( MAXWRK ), ZERO ) |
| 451 | + WORK( 1 ) = SROUNDUP_LWORK( MAXWRK ) |
452 | 452 | * |
453 | 453 | IF( LWORK.LT.MINWRK .AND. .NOT.LQUERY ) THEN |
454 | 454 | INFO = -19 |
@@ -846,7 +846,7 @@ SUBROUTINE CGESVDX( JOBU, JOBVT, RANGE, M, N, A, LDA, VL, VU, |
846 | 846 | * |
847 | 847 | * Return optimal workspace in WORK(1) |
848 | 848 | * |
849 | | - WORK( 1 ) = CMPLX( REAL( MAXWRK ), ZERO ) |
| 849 | + WORK( 1 ) = SROUNDUP_LWORK( MAXWRK ) |
850 | 850 | * |
851 | 851 | RETURN |
852 | 852 | * |
|
0 commit comments