From 94a68a2937b4b3769aca5281dd4d588b36f1e42c Mon Sep 17 00:00:00 2001 From: Julien Langou Date: Mon, 26 Dec 2016 10:29:12 +0100 Subject: Inappropriate use of 'LAPACKE_dge_trans' instead of LAPACKE_dsy_trans in LAPACKE_dsygvx under 'LAPACK_ROW_MAJOR' Same for c,s,z See http://icl.cs.utk.edu/lapack-forum/viewtopic.php?t=5018 Thanks to pysmile@lapack-forum for bug report --- LAPACKE/src/lapacke_chegvx_work.c | 4 ++-- LAPACKE/src/lapacke_dsygvx_work.c | 4 ++-- LAPACKE/src/lapacke_ssygvx_work.c | 4 ++-- LAPACKE/src/lapacke_zhegvx_work.c | 4 ++-- 4 files changed, 8 insertions(+), 8 deletions(-) (limited to 'LAPACKE') diff --git a/LAPACKE/src/lapacke_chegvx_work.c b/LAPACKE/src/lapacke_chegvx_work.c index cd8c5702..8251662f 100644 --- a/LAPACKE/src/lapacke_chegvx_work.c +++ b/LAPACKE/src/lapacke_chegvx_work.c @@ -110,7 +110,7 @@ lapack_int LAPACKE_chegvx_work( int matrix_layout, lapack_int itype, char jobz, } /* Transpose input matrices */ LAPACKE_che_trans( matrix_layout, uplo, n, a, lda, a_t, lda_t ); - LAPACKE_cge_trans( matrix_layout, n, n, b, ldb, b_t, ldb_t ); + LAPACKE_che_trans( matrix_layout, uplo, n, b, ldb, b_t, ldb_t ); /* Call LAPACK function and adjust info */ LAPACK_chegvx( &itype, &jobz, &range, &uplo, &n, a_t, &lda_t, b_t, &ldb_t, &vl, &vu, &il, &iu, &abstol, m, w, z_t, &ldz_t, @@ -120,7 +120,7 @@ lapack_int LAPACKE_chegvx_work( int matrix_layout, lapack_int itype, char jobz, } /* Transpose output matrices */ LAPACKE_che_trans( LAPACK_COL_MAJOR, uplo, n, a_t, lda_t, a, lda ); - LAPACKE_cge_trans( LAPACK_COL_MAJOR, n, n, b_t, ldb_t, b, ldb ); + LAPACKE_che_trans( LAPACK_COL_MAJOR, uplo, n, b_t, ldb_t, b, ldb ); if( LAPACKE_lsame( jobz, 'v' ) ) { LAPACKE_cge_trans( LAPACK_COL_MAJOR, n, ncols_z, z_t, ldz_t, z, ldz ); diff --git a/LAPACKE/src/lapacke_dsygvx_work.c b/LAPACKE/src/lapacke_dsygvx_work.c index a53e8f74..b5f41c77 100644 --- a/LAPACKE/src/lapacke_dsygvx_work.c +++ b/LAPACKE/src/lapacke_dsygvx_work.c @@ -105,7 +105,7 @@ lapack_int LAPACKE_dsygvx_work( int matrix_layout, lapack_int itype, char jobz, } /* Transpose input matrices */ LAPACKE_dsy_trans( matrix_layout, uplo, n, a, lda, a_t, lda_t ); - LAPACKE_dge_trans( matrix_layout, n, n, b, ldb, b_t, ldb_t ); + LAPACKE_dsy_trans( matrix_layout, uplo, n, b, ldb, b_t, ldb_t ); /* Call LAPACK function and adjust info */ LAPACK_dsygvx( &itype, &jobz, &range, &uplo, &n, a_t, &lda_t, b_t, &ldb_t, &vl, &vu, &il, &iu, &abstol, m, w, z_t, &ldz_t, @@ -115,7 +115,7 @@ lapack_int LAPACKE_dsygvx_work( int matrix_layout, lapack_int itype, char jobz, } /* Transpose output matrices */ LAPACKE_dsy_trans( LAPACK_COL_MAJOR, uplo, n, a_t, lda_t, a, lda ); - LAPACKE_dge_trans( LAPACK_COL_MAJOR, n, n, b_t, ldb_t, b, ldb ); + LAPACKE_dsy_trans( LAPACK_COL_MAJOR, uplo, n, b_t, ldb_t, b, ldb ); if( LAPACKE_lsame( jobz, 'v' ) ) { LAPACKE_dge_trans( LAPACK_COL_MAJOR, n, ncols_z, z_t, ldz_t, z, ldz ); diff --git a/LAPACKE/src/lapacke_ssygvx_work.c b/LAPACKE/src/lapacke_ssygvx_work.c index 814eea30..9bc87810 100644 --- a/LAPACKE/src/lapacke_ssygvx_work.c +++ b/LAPACKE/src/lapacke_ssygvx_work.c @@ -105,7 +105,7 @@ lapack_int LAPACKE_ssygvx_work( int matrix_layout, lapack_int itype, char jobz, } /* Transpose input matrices */ LAPACKE_ssy_trans( matrix_layout, uplo, n, a, lda, a_t, lda_t ); - LAPACKE_sge_trans( matrix_layout, n, n, b, ldb, b_t, ldb_t ); + LAPACKE_ssy_trans( matrix_layout, uplo, n, b, ldb, b_t, ldb_t ); /* Call LAPACK function and adjust info */ LAPACK_ssygvx( &itype, &jobz, &range, &uplo, &n, a_t, &lda_t, b_t, &ldb_t, &vl, &vu, &il, &iu, &abstol, m, w, z_t, &ldz_t, @@ -115,7 +115,7 @@ lapack_int LAPACKE_ssygvx_work( int matrix_layout, lapack_int itype, char jobz, } /* Transpose output matrices */ LAPACKE_ssy_trans( LAPACK_COL_MAJOR, uplo, n, a_t, lda_t, a, lda ); - LAPACKE_sge_trans( LAPACK_COL_MAJOR, n, n, b_t, ldb_t, b, ldb ); + LAPACKE_ssy_trans( LAPACK_COL_MAJOR, uplo, n, b_t, ldb_t, b, ldb ); if( LAPACKE_lsame( jobz, 'v' ) ) { LAPACKE_sge_trans( LAPACK_COL_MAJOR, n, ncols_z, z_t, ldz_t, z, ldz ); diff --git a/LAPACKE/src/lapacke_zhegvx_work.c b/LAPACKE/src/lapacke_zhegvx_work.c index 5ebfb995..4da4f560 100644 --- a/LAPACKE/src/lapacke_zhegvx_work.c +++ b/LAPACKE/src/lapacke_zhegvx_work.c @@ -110,7 +110,7 @@ lapack_int LAPACKE_zhegvx_work( int matrix_layout, lapack_int itype, char jobz, } /* Transpose input matrices */ LAPACKE_zhe_trans( matrix_layout, uplo, n, a, lda, a_t, lda_t ); - LAPACKE_zge_trans( matrix_layout, n, n, b, ldb, b_t, ldb_t ); + LAPACKE_zhe_trans( matrix_layout, uplo, n, b, ldb, b_t, ldb_t ); /* Call LAPACK function and adjust info */ LAPACK_zhegvx( &itype, &jobz, &range, &uplo, &n, a_t, &lda_t, b_t, &ldb_t, &vl, &vu, &il, &iu, &abstol, m, w, z_t, &ldz_t, @@ -120,7 +120,7 @@ lapack_int LAPACKE_zhegvx_work( int matrix_layout, lapack_int itype, char jobz, } /* Transpose output matrices */ LAPACKE_zhe_trans( LAPACK_COL_MAJOR, uplo, n, a_t, lda_t, a, lda ); - LAPACKE_zge_trans( LAPACK_COL_MAJOR, n, n, b_t, ldb_t, b, ldb ); + LAPACKE_zhe_trans( LAPACK_COL_MAJOR, uplo, n, b_t, ldb_t, b, ldb ); if( LAPACKE_lsame( jobz, 'v' ) ) { LAPACKE_zge_trans( LAPACK_COL_MAJOR, n, ncols_z, z_t, ldz_t, z, ldz ); -- cgit v1.2.3