From 7efdb9d56a5836ddaeaebda3f3e8a248dce371f0 Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Sun, 15 Jun 2025 19:48:19 +0200 Subject: [PATCH 1/8] relax leading dimensions check (Reference-LAPACK PR #1126) --- lapack-netlib/LAPACKE/src/lapacke_cgesdd_work.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/lapack-netlib/LAPACKE/src/lapacke_cgesdd_work.c b/lapack-netlib/LAPACKE/src/lapacke_cgesdd_work.c index 70198ccdce..d559df6b48 100644 --- a/lapack-netlib/LAPACKE/src/lapacke_cgesdd_work.c +++ b/lapack-netlib/LAPACKE/src/lapacke_cgesdd_work.c @@ -58,6 +58,9 @@ lapack_int LAPACKE_cgesdd_work( int matrix_layout, char jobz, lapack_int m, lapack_int nrows_vt = ( LAPACKE_lsame( jobz, 'a' ) || ( LAPACKE_lsame( jobz, 'o' ) && m>=n) ) ? n : ( LAPACKE_lsame( jobz, 's' ) ? MIN(m,n) : 1); + lapack_int ncols_vt = ( LAPACKE_lsame( jobz, 'a' ) || + ( LAPACKE_lsame( jobz, 's' ) || + ( LAPACKE_lsame( jobz, 'o' && m >=n) ) ? n : 1); lapack_int lda_t = MAX(1,m); lapack_int ldu_t = MAX(1,nrows_u); lapack_int ldvt_t = MAX(1,nrows_vt); @@ -75,7 +78,7 @@ lapack_int LAPACKE_cgesdd_work( int matrix_layout, char jobz, lapack_int m, LAPACKE_xerbla( "LAPACKE_cgesdd_work", info ); return info; } - if( ldvt < n ) { + if( ldvt < ncols_vt ) { info = -11; LAPACKE_xerbla( "LAPACKE_cgesdd_work", info ); return info; From 9c1defe90f164d0e2d213d7ea68bec84f65e3a2a Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Sun, 15 Jun 2025 19:50:19 +0200 Subject: [PATCH 2/8] relax leading dimensions check (Reference-LAPACK PR #1126) --- lapack-netlib/LAPACKE/src/lapacke_dgesdd_work.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/lapack-netlib/LAPACKE/src/lapacke_dgesdd_work.c b/lapack-netlib/LAPACKE/src/lapacke_dgesdd_work.c index 7bef2230c3..74cb0e6232 100644 --- a/lapack-netlib/LAPACKE/src/lapacke_dgesdd_work.c +++ b/lapack-netlib/LAPACKE/src/lapacke_dgesdd_work.c @@ -56,6 +56,9 @@ lapack_int LAPACKE_dgesdd_work( int matrix_layout, char jobz, lapack_int m, lapack_int nrows_vt = ( LAPACKE_lsame( jobz, 'a' ) || ( LAPACKE_lsame( jobz, 'o' ) && m>=n) ) ? n : ( LAPACKE_lsame( jobz, 's' ) ? MIN(m,n) : 1); + lapack_int ncols_vt = ( LAPACKE_lsame( jobz, 'a' ) || + ( LAPACKE_lsame( jobz, 's' ) || + ( LAPACKE_lsame( jobz, 'o' && m >=n) ) ? n : 1); lapack_int lda_t = MAX(1,m); lapack_int ldu_t = MAX(1,nrows_u); lapack_int ldvt_t = MAX(1,nrows_vt); @@ -73,7 +76,7 @@ lapack_int LAPACKE_dgesdd_work( int matrix_layout, char jobz, lapack_int m, LAPACKE_xerbla( "LAPACKE_dgesdd_work", info ); return info; } - if( ldvt < n ) { + if( ldvt < ncols_vt ) { info = -11; LAPACKE_xerbla( "LAPACKE_dgesdd_work", info ); return info; From 420d9770d53f6e2462cbb017c61ec4698a8a3862 Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Sun, 15 Jun 2025 19:51:31 +0200 Subject: [PATCH 3/8] relax leading dimensions check (Reference-LAPACK PR #1126) --- lapack-netlib/LAPACKE/src/lapacke_sgesdd_work.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/lapack-netlib/LAPACKE/src/lapacke_sgesdd_work.c b/lapack-netlib/LAPACKE/src/lapacke_sgesdd_work.c index b6619e38bb..e9deafc2af 100644 --- a/lapack-netlib/LAPACKE/src/lapacke_sgesdd_work.c +++ b/lapack-netlib/LAPACKE/src/lapacke_sgesdd_work.c @@ -56,6 +56,9 @@ lapack_int LAPACKE_sgesdd_work( int matrix_layout, char jobz, lapack_int m, lapack_int nrows_vt = ( LAPACKE_lsame( jobz, 'a' ) || ( LAPACKE_lsame( jobz, 'o' ) && m>=n) ) ? n : ( LAPACKE_lsame( jobz, 's' ) ? MIN(m,n) : 1); + lapack_int ncols_vt = ( LAPACKE_lsame( jobz, 'a' ) || + ( LAPACKE_lsame( jobz, 's' ) || + ( LAPACKE_lsame( jobz, 'o' && m >=n) ) ? n : 1); lapack_int lda_t = MAX(1,m); lapack_int ldu_t = MAX(1,nrows_u); lapack_int ldvt_t = MAX(1,nrows_vt); @@ -73,7 +76,7 @@ lapack_int LAPACKE_sgesdd_work( int matrix_layout, char jobz, lapack_int m, LAPACKE_xerbla( "LAPACKE_sgesdd_work", info ); return info; } - if( ldvt < n ) { + if( ldvt < ncols_vt ) { info = -11; LAPACKE_xerbla( "LAPACKE_sgesdd_work", info ); return info; From 5ff77fbcd921906fbd6281e7ddf8b95ba2e5ac42 Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Sun, 15 Jun 2025 19:52:38 +0200 Subject: [PATCH 4/8] relax leading dimensions check (Reference-LAPACK PR #1126) --- lapack-netlib/LAPACKE/src/lapacke_zgesdd_work.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/lapack-netlib/LAPACKE/src/lapacke_zgesdd_work.c b/lapack-netlib/LAPACKE/src/lapacke_zgesdd_work.c index fc07fe9cbf..b37f1216a6 100644 --- a/lapack-netlib/LAPACKE/src/lapacke_zgesdd_work.c +++ b/lapack-netlib/LAPACKE/src/lapacke_zgesdd_work.c @@ -58,6 +58,9 @@ lapack_int LAPACKE_zgesdd_work( int matrix_layout, char jobz, lapack_int m, lapack_int nrows_vt = ( LAPACKE_lsame( jobz, 'a' ) || ( LAPACKE_lsame( jobz, 'o' ) && m>=n) ) ? n : ( LAPACKE_lsame( jobz, 's' ) ? MIN(m,n) : 1); + lapack_int ncols_vt = ( LAPACKE_lsame( jobz, 'a' ) || + ( LAPACKE_lsame( jobz, 's' ) || + ( LAPACKE_lsame( jobz, 'o' && m >=n) ) ? n : 1); lapack_int lda_t = MAX(1,m); lapack_int ldu_t = MAX(1,nrows_u); lapack_int ldvt_t = MAX(1,nrows_vt); @@ -75,7 +78,7 @@ lapack_int LAPACKE_zgesdd_work( int matrix_layout, char jobz, lapack_int m, LAPACKE_xerbla( "LAPACKE_zgesdd_work", info ); return info; } - if( ldvt < n ) { + if( ldvt < ncols_vt ) { info = -11; LAPACKE_xerbla( "LAPACKE_zgesdd_work", info ); return info; From c0a4afe5bedbbd81ac5ea6f8e344fe76f841e886 Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Sun, 15 Jun 2025 20:22:30 +0200 Subject: [PATCH 5/8] Update lapacke_cgesdd_work.c --- lapack-netlib/LAPACKE/src/lapacke_cgesdd_work.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lapack-netlib/LAPACKE/src/lapacke_cgesdd_work.c b/lapack-netlib/LAPACKE/src/lapacke_cgesdd_work.c index d559df6b48..472788af66 100644 --- a/lapack-netlib/LAPACKE/src/lapacke_cgesdd_work.c +++ b/lapack-netlib/LAPACKE/src/lapacke_cgesdd_work.c @@ -59,7 +59,7 @@ lapack_int LAPACKE_cgesdd_work( int matrix_layout, char jobz, lapack_int m, ( LAPACKE_lsame( jobz, 'o' ) && m>=n) ) ? n : ( LAPACKE_lsame( jobz, 's' ) ? MIN(m,n) : 1); lapack_int ncols_vt = ( LAPACKE_lsame( jobz, 'a' ) || - ( LAPACKE_lsame( jobz, 's' ) || + LAPACKE_lsame( jobz, 's' ) || ( LAPACKE_lsame( jobz, 'o' && m >=n) ) ? n : 1); lapack_int lda_t = MAX(1,m); lapack_int ldu_t = MAX(1,nrows_u); From 1521778f534cfff30c4f0c486c5da8033c78baaf Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Sun, 15 Jun 2025 20:23:07 +0200 Subject: [PATCH 6/8] Update lapacke_dgesdd_work.c --- lapack-netlib/LAPACKE/src/lapacke_dgesdd_work.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lapack-netlib/LAPACKE/src/lapacke_dgesdd_work.c b/lapack-netlib/LAPACKE/src/lapacke_dgesdd_work.c index 74cb0e6232..3f805b5544 100644 --- a/lapack-netlib/LAPACKE/src/lapacke_dgesdd_work.c +++ b/lapack-netlib/LAPACKE/src/lapacke_dgesdd_work.c @@ -57,7 +57,7 @@ lapack_int LAPACKE_dgesdd_work( int matrix_layout, char jobz, lapack_int m, ( LAPACKE_lsame( jobz, 'o' ) && m>=n) ) ? n : ( LAPACKE_lsame( jobz, 's' ) ? MIN(m,n) : 1); lapack_int ncols_vt = ( LAPACKE_lsame( jobz, 'a' ) || - ( LAPACKE_lsame( jobz, 's' ) || + LAPACKE_lsame( jobz, 's' ) || ( LAPACKE_lsame( jobz, 'o' && m >=n) ) ? n : 1); lapack_int lda_t = MAX(1,m); lapack_int ldu_t = MAX(1,nrows_u); From 4cf6f4689a48b93c25589cb05e616608f66afd36 Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Sun, 15 Jun 2025 20:23:38 +0200 Subject: [PATCH 7/8] Update lapacke_sgesdd_work.c --- lapack-netlib/LAPACKE/src/lapacke_sgesdd_work.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lapack-netlib/LAPACKE/src/lapacke_sgesdd_work.c b/lapack-netlib/LAPACKE/src/lapacke_sgesdd_work.c index e9deafc2af..4cfb91f335 100644 --- a/lapack-netlib/LAPACKE/src/lapacke_sgesdd_work.c +++ b/lapack-netlib/LAPACKE/src/lapacke_sgesdd_work.c @@ -57,7 +57,7 @@ lapack_int LAPACKE_sgesdd_work( int matrix_layout, char jobz, lapack_int m, ( LAPACKE_lsame( jobz, 'o' ) && m>=n) ) ? n : ( LAPACKE_lsame( jobz, 's' ) ? MIN(m,n) : 1); lapack_int ncols_vt = ( LAPACKE_lsame( jobz, 'a' ) || - ( LAPACKE_lsame( jobz, 's' ) || + LAPACKE_lsame( jobz, 's' ) || ( LAPACKE_lsame( jobz, 'o' && m >=n) ) ? n : 1); lapack_int lda_t = MAX(1,m); lapack_int ldu_t = MAX(1,nrows_u); From 8496f1a1dd277c1923b5a0d96cfdacacfd47338f Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Sun, 15 Jun 2025 20:24:06 +0200 Subject: [PATCH 8/8] Update lapacke_zgesdd_work.c --- lapack-netlib/LAPACKE/src/lapacke_zgesdd_work.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lapack-netlib/LAPACKE/src/lapacke_zgesdd_work.c b/lapack-netlib/LAPACKE/src/lapacke_zgesdd_work.c index b37f1216a6..5d513fb203 100644 --- a/lapack-netlib/LAPACKE/src/lapacke_zgesdd_work.c +++ b/lapack-netlib/LAPACKE/src/lapacke_zgesdd_work.c @@ -59,7 +59,7 @@ lapack_int LAPACKE_zgesdd_work( int matrix_layout, char jobz, lapack_int m, ( LAPACKE_lsame( jobz, 'o' ) && m>=n) ) ? n : ( LAPACKE_lsame( jobz, 's' ) ? MIN(m,n) : 1); lapack_int ncols_vt = ( LAPACKE_lsame( jobz, 'a' ) || - ( LAPACKE_lsame( jobz, 's' ) || + LAPACKE_lsame( jobz, 's' ) || ( LAPACKE_lsame( jobz, 'o' && m >=n) ) ? n : 1); lapack_int lda_t = MAX(1,m); lapack_int ldu_t = MAX(1,nrows_u);