Merge pull request #3819 from martin-frbg/lapack703

Fix implicit conversions and unused variables in LAPACKE and TESTING (Reference-LAPACK PR 703)
This commit is contained in:
Martin Kroeker 2022-11-16 20:49:54 +01:00 committed by GitHub
commit ad95ad52f2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
22 changed files with 53 additions and 53 deletions

View File

@ -49,11 +49,9 @@
LAPACKE_dgels (row-major, high-level) Example Program Results LAPACKE_dgels (row-major, high-level) Example Program Results
-- LAPACKE Example routine (version 3.7.0) -- -- LAPACKE Example routine --
-- LAPACK is a software package provided by Univ. of Tennessee, -- -- LAPACK is a software package provided by Univ. of Tennessee, --
-- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..-- -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
December 2016
*/ */
/* Calling DGELS using row-major layout */ /* Calling DGELS using row-major layout */
@ -66,8 +64,8 @@
int main (int argc, const char * argv[]) int main (int argc, const char * argv[])
{ {
/* Locals */ /* Locals */
double A[5][3] = {1,1,1,2,3,4,3,5,2,4,2,5,5,4,3}; double A[5][3] = {{1,1,1},{2,3,4},{3,5,2},{4,2,5},{5,4,3}};
double b[5][2] = {-10,-3,12,14,14,12,16,16,18,16}; double b[5][2] = {{-10,-3},{12,14},{14,12},{16,16},{18,16}};
lapack_int info,m,n,lda,ldb,nrhs; lapack_int info,m,n,lda,ldb,nrhs;
/* Initialization */ /* Initialization */

View File

@ -663,8 +663,8 @@
IL = 1 IL = 1
IU = N IU = N
ELSE ELSE
IL = 1 + ( N-1 )*SLARND( 1, ISEED2 ) IL = 1 + INT( ( N-1 )*SLARND( 1, ISEED2 ) )
IU = 1 + ( N-1 )*SLARND( 1, ISEED2 ) IU = 1 + INT( ( N-1 )*SLARND( 1, ISEED2 ) )
IF( IL.GT.IU ) THEN IF( IL.GT.IU ) THEN
ITEMP = IL ITEMP = IL
IL = IU IL = IU

View File

@ -265,7 +265,7 @@
100 CONTINUE 100 CONTINUE
WSRT( KMIN ) = WSRT( I ) WSRT( KMIN ) = WSRT( I )
WSRT( I ) = VMIN WSRT( I ) = VMIN
VCMIN = WTMP( I ) VCMIN = REAL( WTMP( I ) )
WTMP( I ) = W( KMIN ) WTMP( I ) = W( KMIN )
WTMP( KMIN ) = VCMIN WTMP( KMIN ) = VCMIN
VMIN = STMP( KMIN ) VMIN = STMP( KMIN )

View File

@ -645,8 +645,8 @@
IL = 1 IL = 1
IU = N IU = N
ELSE ELSE
IL = 1 + ( N-1 )*DLARND( 1, ISEED2 ) IL = 1 + INT( ( N-1 )*DLARND( 1, ISEED2 ) )
IU = 1 + ( N-1 )*DLARND( 1, ISEED2 ) IU = 1 + INT( ( N-1 )*DLARND( 1, ISEED2 ) )
IF( IL.GT.IU ) THEN IF( IL.GT.IU ) THEN
ITEMP = IL ITEMP = IL
IL = IU IL = IU

View File

@ -645,8 +645,8 @@
IL = 1 IL = 1
IU = N IU = N
ELSE ELSE
IL = 1 + ( N-1 )*SLARND( 1, ISEED2 ) IL = 1 + INT( ( N-1 )*SLARND( 1, ISEED2 ) )
IU = 1 + ( N-1 )*SLARND( 1, ISEED2 ) IU = 1 + INT( ( N-1 )*SLARND( 1, ISEED2 ) )
IF( IL.GT.IU ) THEN IF( IL.GT.IU ) THEN
ITEMP = IL ITEMP = IL
IL = IU IL = IU

View File

@ -663,8 +663,8 @@
IL = 1 IL = 1
IU = N IU = N
ELSE ELSE
IL = 1 + ( N-1 )*DLARND( 1, ISEED2 ) IL = 1 + INT( ( N-1 )*DLARND( 1, ISEED2 ) )
IU = 1 + ( N-1 )*DLARND( 1, ISEED2 ) IU = 1 + INT( ( N-1 )*DLARND( 1, ISEED2 ) )
IF( IL.GT.IU ) THEN IF( IL.GT.IU ) THEN
ITEMP = IL ITEMP = IL
IL = IU IL = IU

View File

@ -265,7 +265,7 @@
100 CONTINUE 100 CONTINUE
WSRT( KMIN ) = WSRT( I ) WSRT( KMIN ) = WSRT( I )
WSRT( I ) = VMIN WSRT( I ) = VMIN
VCMIN = WTMP( I ) VCMIN = DBLE( WTMP( I ) )
WTMP( I ) = W( KMIN ) WTMP( I ) = W( KMIN )
WTMP( KMIN ) = VCMIN WTMP( KMIN ) = VCMIN
VMIN = STMP( KMIN ) VMIN = STMP( KMIN )

View File

@ -319,15 +319,15 @@
* elements. * elements.
* *
IF( IZERO.EQ.1 ) THEN IF( IZERO.EQ.1 ) THEN
D( 1 ) = Z( 2 ) D( 1 ) = REAL( Z( 2 ) )
IF( N.GT.1 ) IF( N.GT.1 )
$ E( 1 ) = Z( 3 ) $ E( 1 ) = Z( 3 )
ELSE IF( IZERO.EQ.N ) THEN ELSE IF( IZERO.EQ.N ) THEN
E( N-1 ) = Z( 1 ) E( N-1 ) = Z( 1 )
D( N ) = Z( 2 ) D( N ) = REAL( Z( 2 ) )
ELSE ELSE
E( IZERO-1 ) = Z( 1 ) E( IZERO-1 ) = Z( 1 )
D( IZERO ) = Z( 2 ) D( IZERO ) = REAL( Z( 2 ) )
E( IZERO ) = Z( 3 ) E( IZERO ) = Z( 3 )
END IF END IF
END IF END IF

View File

@ -307,16 +307,16 @@
IZERO = 0 IZERO = 0
ELSE IF( IMAT.EQ.8 ) THEN ELSE IF( IMAT.EQ.8 ) THEN
IZERO = 1 IZERO = 1
Z( 2 ) = A( N ) Z( 2 ) = REAL( A( N ) )
A( N ) = ZERO A( N ) = ZERO
IF( N.GT.1 ) THEN IF( N.GT.1 ) THEN
Z( 3 ) = A( 1 ) Z( 3 ) = REAL( A( 1 ) )
A( 1 ) = ZERO A( 1 ) = ZERO
END IF END IF
ELSE IF( IMAT.EQ.9 ) THEN ELSE IF( IMAT.EQ.9 ) THEN
IZERO = N IZERO = N
Z( 1 ) = A( 3*N-2 ) Z( 1 ) = REAL( A( 3*N-2 ) )
Z( 2 ) = A( 2*N-1 ) Z( 2 ) = REAL( A( 2*N-1 ) )
A( 3*N-2 ) = ZERO A( 3*N-2 ) = ZERO
A( 2*N-1 ) = ZERO A( 2*N-1 ) = ZERO
ELSE ELSE

View File

@ -336,7 +336,7 @@
WORK( J+1 ) = PLUS2 WORK( J+1 ) = PLUS2
WORK( N+J+1 ) = ZERO WORK( N+J+1 ) = ZERO
PLUS1 = STAR1 / PLUS2 PLUS1 = STAR1 / PLUS2
REXP = CLARND( 2, ISEED ) REXP = REAL( CLARND( 2, ISEED ) )
IF( REXP.LT.ZERO ) THEN IF( REXP.LT.ZERO ) THEN
STAR1 = -SFAC**( ONE-REXP )*CLARND( 5, ISEED ) STAR1 = -SFAC**( ONE-REXP )*CLARND( 5, ISEED )
ELSE ELSE
@ -790,7 +790,7 @@
DO 460 J = 1, N / 2 DO 460 J = 1, N / 2
JL = JJ JL = JJ
DO 450 I = J, N - J DO 450 I = J, N - J
T = AP( JR-I+J ) T = REAL( AP( JR-I+J ) )
AP( JR-I+J ) = AP( JL ) AP( JR-I+J ) = AP( JL )
AP( JL ) = T AP( JL ) = T
JL = JL + I JL = JL + I
@ -804,7 +804,7 @@
DO 480 J = 1, N / 2 DO 480 J = 1, N / 2
JR = JJ JR = JJ
DO 470 I = J, N - J DO 470 I = J, N - J
T = AP( JL+I-J ) T = REAL( AP( JL+I-J ) )
AP( JL+I-J ) = AP( JR ) AP( JL+I-J ) = AP( JR )
AP( JR ) = T AP( JR ) = T
JR = JR - I JR = JR - I

View File

@ -201,7 +201,8 @@
* *
* Compute the (K,K) element of the result. * Compute the (K,K) element of the result.
* *
AKK = CDOTC( KLEN+1, AFAC( KC, K ), 1, AFAC( KC, K ), 1 ) AKK = REAL(
$ CDOTC( KLEN+1, AFAC( KC, K ), 1, AFAC( KC, K ), 1 ) )
AFAC( KD+1, K ) = AKK AFAC( KD+1, K ) = AKK
* *
* Compute the rest of column K. * Compute the rest of column K.
@ -228,7 +229,7 @@
* *
* Scale column K by the diagonal element. * Scale column K by the diagonal element.
* *
AKK = AFAC( 1, K ) AKK = REAL( AFAC( 1, K ) )
CALL CSSCAL( KLEN+1, AKK, AFAC( 1, K ), 1 ) CALL CSSCAL( KLEN+1, AKK, AFAC( 1, K ), 1 )
* *
40 CONTINUE 40 CONTINUE

View File

@ -176,7 +176,7 @@
* *
* Compute the (K,K) element of the result. * Compute the (K,K) element of the result.
* *
TR = CDOTC( K, AFAC( 1, K ), 1, AFAC( 1, K ), 1 ) TR = REAL( CDOTC( K, AFAC( 1, K ), 1, AFAC( 1, K ), 1 ) )
AFAC( K, K ) = TR AFAC( K, K ) = TR
* *
* Compute the rest of column K. * Compute the rest of column K.
@ -224,7 +224,7 @@
70 CONTINUE 70 CONTINUE
END IF END IF
* *
* Compute norm( L*U - A ) / ( N * norm(A) * EPS ) * Compute norm(L*U - A) / ( N * norm(A) * EPS )
* *
RESID = CLANHE( '1', UPLO, N, AFAC, LDAFAC, RWORK ) RESID = CLANHE( '1', UPLO, N, AFAC, LDAFAC, RWORK )
* *

View File

@ -178,7 +178,7 @@
* *
* Compute the (K,K) element of the result. * Compute the (K,K) element of the result.
* *
TR = CDOTC( K, AFAC( KC ), 1, AFAC( KC ), 1 ) TR = REAL( CDOTC( K, AFAC( KC ), 1, AFAC( KC ), 1 ) )
AFAC( KC+K-1 ) = TR AFAC( KC+K-1 ) = TR
* *
* Compute the rest of column K. * Compute the rest of column K.

View File

@ -219,7 +219,7 @@
* *
* Compute the (K,K) element of the result. * Compute the (K,K) element of the result.
* *
TR = CDOTC( K, AFAC( 1, K ), 1, AFAC( 1, K ), 1 ) TR = REAL( CDOTC( K, AFAC( 1, K ), 1, AFAC( 1, K ), 1 ) )
AFAC( K, K ) = TR AFAC( K, K ) = TR
* *
* Compute the rest of column K. * Compute the rest of column K.

View File

@ -319,15 +319,15 @@
* elements. * elements.
* *
IF( IZERO.EQ.1 ) THEN IF( IZERO.EQ.1 ) THEN
D( 1 ) = Z( 2 ) D( 1 ) = DBLE( Z( 2 ) )
IF( N.GT.1 ) IF( N.GT.1 )
$ E( 1 ) = Z( 3 ) $ E( 1 ) = Z( 3 )
ELSE IF( IZERO.EQ.N ) THEN ELSE IF( IZERO.EQ.N ) THEN
E( N-1 ) = Z( 1 ) E( N-1 ) = Z( 1 )
D( N ) = Z( 2 ) D( N ) = DBLE( Z( 2 ) )
ELSE ELSE
E( IZERO-1 ) = Z( 1 ) E( IZERO-1 ) = Z( 1 )
D( IZERO ) = Z( 2 ) D( IZERO ) = DBLE( Z( 2 ) )
E( IZERO ) = Z( 3 ) E( IZERO ) = Z( 3 )
END IF END IF
END IF END IF

View File

@ -307,16 +307,16 @@
IZERO = 0 IZERO = 0
ELSE IF( IMAT.EQ.8 ) THEN ELSE IF( IMAT.EQ.8 ) THEN
IZERO = 1 IZERO = 1
Z( 2 ) = A( N ) Z( 2 ) = DBLE( A( N ) )
A( N ) = ZERO A( N ) = ZERO
IF( N.GT.1 ) THEN IF( N.GT.1 ) THEN
Z( 3 ) = A( 1 ) Z( 3 ) = DBLE( A( 1 ) )
A( 1 ) = ZERO A( 1 ) = ZERO
END IF END IF
ELSE IF( IMAT.EQ.9 ) THEN ELSE IF( IMAT.EQ.9 ) THEN
IZERO = N IZERO = N
Z( 1 ) = A( 3*N-2 ) Z( 1 ) = DBLE( A( 3*N-2 ) )
Z( 2 ) = A( 2*N-1 ) Z( 2 ) = DBLE( A( 2*N-1 ) )
A( 3*N-2 ) = ZERO A( 3*N-2 ) = ZERO
A( 2*N-1 ) = ZERO A( 2*N-1 ) = ZERO
ELSE ELSE

View File

@ -266,12 +266,12 @@
* *
IA = 1 IA = 1
DO 20 I = 1, N - 1 DO 20 I = 1, N - 1
D( I ) = A( IA ) D( I ) = DBLE( A( IA ) )
E( I ) = A( IA+1 ) E( I ) = A( IA+1 )
IA = IA + 2 IA = IA + 2
20 CONTINUE 20 CONTINUE
IF( N.GT.0 ) IF( N.GT.0 )
$ D( N ) = A( IA ) $ D( N ) = DBLE( A( IA ) )
ELSE ELSE
* *
* Type 7-12: generate a diagonally dominant matrix with * Type 7-12: generate a diagonally dominant matrix with
@ -333,13 +333,13 @@
Z( 2 ) = D( 1 ) Z( 2 ) = D( 1 )
D( 1 ) = ZERO D( 1 ) = ZERO
IF( N.GT.1 ) THEN IF( N.GT.1 ) THEN
Z( 3 ) = E( 1 ) Z( 3 ) = DBLE( E( 1 ) )
E( 1 ) = ZERO E( 1 ) = ZERO
END IF END IF
ELSE IF( IMAT.EQ.9 ) THEN ELSE IF( IMAT.EQ.9 ) THEN
IZERO = N IZERO = N
IF( N.GT.1 ) THEN IF( N.GT.1 ) THEN
Z( 1 ) = E( N-1 ) Z( 1 ) = DBLE( E( N-1 ) )
E( N-1 ) = ZERO E( N-1 ) = ZERO
END IF END IF
Z( 2 ) = D( N ) Z( 2 ) = D( N )
@ -347,9 +347,9 @@
ELSE IF( IMAT.EQ.10 ) THEN ELSE IF( IMAT.EQ.10 ) THEN
IZERO = ( N+1 ) / 2 IZERO = ( N+1 ) / 2
IF( IZERO.GT.1 ) THEN IF( IZERO.GT.1 ) THEN
Z( 1 ) = E( IZERO-1 ) Z( 1 ) = DBLE( E( IZERO-1 ) )
E( IZERO-1 ) = ZERO E( IZERO-1 ) = ZERO
Z( 3 ) = E( IZERO ) Z( 3 ) = DBLE( E( IZERO ) )
E( IZERO ) = ZERO E( IZERO ) = ZERO
END IF END IF
Z( 2 ) = D( IZERO ) Z( 2 ) = D( IZERO )

View File

@ -336,7 +336,7 @@
WORK( J+1 ) = PLUS2 WORK( J+1 ) = PLUS2
WORK( N+J+1 ) = ZERO WORK( N+J+1 ) = ZERO
PLUS1 = STAR1 / PLUS2 PLUS1 = STAR1 / PLUS2
REXP = ZLARND( 2, ISEED ) REXP = DBLE( ZLARND( 2, ISEED ) )
IF( REXP.LT.ZERO ) THEN IF( REXP.LT.ZERO ) THEN
STAR1 = -SFAC**( ONE-REXP )*ZLARND( 5, ISEED ) STAR1 = -SFAC**( ONE-REXP )*ZLARND( 5, ISEED )
ELSE ELSE
@ -790,7 +790,7 @@
DO 460 J = 1, N / 2 DO 460 J = 1, N / 2
JL = JJ JL = JJ
DO 450 I = J, N - J DO 450 I = J, N - J
T = AP( JR-I+J ) T = DBLE( AP( JR-I+J ) )
AP( JR-I+J ) = AP( JL ) AP( JR-I+J ) = AP( JL )
AP( JL ) = T AP( JL ) = T
JL = JL + I JL = JL + I
@ -804,7 +804,7 @@
DO 480 J = 1, N / 2 DO 480 J = 1, N / 2
JR = JJ JR = JJ
DO 470 I = J, N - J DO 470 I = J, N - J
T = AP( JL+I-J ) T = DBLE( AP( JL+I-J ) )
AP( JL+I-J ) = AP( JR ) AP( JL+I-J ) = AP( JR )
AP( JR ) = T AP( JR ) = T
JR = JR - I JR = JR - I

View File

@ -201,7 +201,8 @@
* *
* Compute the (K,K) element of the result. * Compute the (K,K) element of the result.
* *
AKK = ZDOTC( KLEN+1, AFAC( KC, K ), 1, AFAC( KC, K ), 1 ) AKK = DBLE(
$ ZDOTC( KLEN+1, AFAC( KC, K ), 1, AFAC( KC, K ), 1 ) )
AFAC( KD+1, K ) = AKK AFAC( KD+1, K ) = AKK
* *
* Compute the rest of column K. * Compute the rest of column K.
@ -228,7 +229,7 @@
* *
* Scale column K by the diagonal element. * Scale column K by the diagonal element.
* *
AKK = AFAC( 1, K ) AKK = DBLE( AFAC( 1, K ) )
CALL ZDSCAL( KLEN+1, AKK, AFAC( 1, K ), 1 ) CALL ZDSCAL( KLEN+1, AKK, AFAC( 1, K ), 1 )
* *
40 CONTINUE 40 CONTINUE

View File

@ -176,7 +176,7 @@
* *
* Compute the (K,K) element of the result. * Compute the (K,K) element of the result.
* *
TR = ZDOTC( K, AFAC( 1, K ), 1, AFAC( 1, K ), 1 ) TR = DBLE( ZDOTC( K, AFAC( 1, K ), 1, AFAC( 1, K ), 1 ) )
AFAC( K, K ) = TR AFAC( K, K ) = TR
* *
* Compute the rest of column K. * Compute the rest of column K.
@ -224,7 +224,7 @@
70 CONTINUE 70 CONTINUE
END IF END IF
* *
* Compute norm( L*U - A ) / ( N * norm(A) * EPS ) * Compute norm(L*U - A) / ( N * norm(A) * EPS )
* *
RESID = ZLANHE( '1', UPLO, N, AFAC, LDAFAC, RWORK ) RESID = ZLANHE( '1', UPLO, N, AFAC, LDAFAC, RWORK )
* *

View File

@ -178,7 +178,7 @@
* *
* Compute the (K,K) element of the result. * Compute the (K,K) element of the result.
* *
TR = ZDOTC( K, AFAC( KC ), 1, AFAC( KC ), 1 ) TR = DBLE( ZDOTC( K, AFAC( KC ), 1, AFAC( KC ), 1 ) )
AFAC( KC+K-1 ) = TR AFAC( KC+K-1 ) = TR
* *
* Compute the rest of column K. * Compute the rest of column K.

View File

@ -219,7 +219,7 @@
* *
* Compute the (K,K) element of the result. * Compute the (K,K) element of the result.
* *
TR = ZDOTC( K, AFAC( 1, K ), 1, AFAC( 1, K ), 1 ) TR = DBLE( ZDOTC( K, AFAC( 1, K ), 1, AFAC( 1, K ), 1 ) )
AFAC( K, K ) = TR AFAC( K, K ) = TR
* *
* Compute the rest of column K. * Compute the rest of column K.