From: Julien Langou Date: Mon, 26 Dec 2016 09:29:12 +0000 (+0100) Subject: Inappropriate use of 'LAPACKE_dge_trans' instead of LAPACKE_dsy_trans in LAPACKE_dsyg... X-Git-Tag: accepted/tizen/5.0/unified/20181102.024111~64 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=94a68a2937b4b3769aca5281dd4d588b36f1e42c;p=platform%2Fupstream%2Flapack.git 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 --- diff --git a/LAPACKE/src/lapacke_chegvx_work.c b/LAPACKE/src/lapacke_chegvx_work.c index cd8c570..8251662 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 a53e8f7..b5f41c7 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 814eea3..9bc8781 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 5ebfb99..4da4f56 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 );