diff --git a/lapack-netlib/LAPACKE/utils/lapacke_c_nancheck.c b/lapack-netlib/LAPACKE/utils/lapacke_c_nancheck.c index 82a4242395..971b811eab 100644 --- a/lapack-netlib/LAPACKE/utils/lapacke_c_nancheck.c +++ b/lapack-netlib/LAPACKE/utils/lapacke_c_nancheck.c @@ -42,8 +42,8 @@ lapack_logical LAPACKE_c_nancheck( lapack_int n, if( incx == 0 ) return (lapack_logical) LAPACK_CISNAN( x[0] ); inc = ( incx > 0 ) ? incx : -incx ; - for( i = 0; i < n*inc; i+=inc ) { - if( LAPACK_CISNAN( x[i] ) ) + for( i = 0; i < n; i++ ) { + if( LAPACK_CISNAN( x[(size_t)i*inc] ) ) return (lapack_logical) 1; } return (lapack_logical) 0; diff --git a/lapack-netlib/LAPACKE/utils/lapacke_chp_nancheck.c b/lapack-netlib/LAPACKE/utils/lapacke_chp_nancheck.c index 0d74cbf08f..cbb7f5bd0d 100644 --- a/lapack-netlib/LAPACKE/utils/lapacke_chp_nancheck.c +++ b/lapack-netlib/LAPACKE/utils/lapacke_chp_nancheck.c @@ -39,6 +39,6 @@ lapack_logical LAPACKE_chp_nancheck( lapack_int n, const lapack_complex_float *ap ) { - lapack_int len = n*(n+1)/2; + lapack_int len = (lapack_int)(((size_t)n*(n+1))/2); return LAPACKE_c_nancheck( len, ap, 1 ); } diff --git a/lapack-netlib/LAPACKE/utils/lapacke_cpf_nancheck.c b/lapack-netlib/LAPACKE/utils/lapacke_cpf_nancheck.c index 551b96966e..efbc9e339b 100644 --- a/lapack-netlib/LAPACKE/utils/lapacke_cpf_nancheck.c +++ b/lapack-netlib/LAPACKE/utils/lapacke_cpf_nancheck.c @@ -40,6 +40,6 @@ lapack_logical LAPACKE_cpf_nancheck( lapack_int n, const lapack_complex_float *a ) { - lapack_int len = n*(n+1)/2; + lapack_int len = (lapack_int)(((size_t)n*(n+1))/2); return LAPACKE_c_nancheck( len, a, 1 ); } diff --git a/lapack-netlib/LAPACKE/utils/lapacke_cpp_nancheck.c b/lapack-netlib/LAPACKE/utils/lapacke_cpp_nancheck.c index bc6d10442a..6eb8b4d239 100644 --- a/lapack-netlib/LAPACKE/utils/lapacke_cpp_nancheck.c +++ b/lapack-netlib/LAPACKE/utils/lapacke_cpp_nancheck.c @@ -39,6 +39,6 @@ lapack_logical LAPACKE_cpp_nancheck( lapack_int n, const lapack_complex_float *ap ) { - lapack_int len = n*(n+1)/2; + lapack_int len = (lapack_int)(((size_t)n*(n+1))/2); return LAPACKE_c_nancheck( len, ap, 1 ); } diff --git a/lapack-netlib/LAPACKE/utils/lapacke_csp_nancheck.c b/lapack-netlib/LAPACKE/utils/lapacke_csp_nancheck.c index 8664be84b9..6e63cc7e64 100644 --- a/lapack-netlib/LAPACKE/utils/lapacke_csp_nancheck.c +++ b/lapack-netlib/LAPACKE/utils/lapacke_csp_nancheck.c @@ -39,6 +39,6 @@ lapack_logical LAPACKE_csp_nancheck( lapack_int n, const lapack_complex_float *ap ) { - lapack_int len = n*(n+1)/2; + lapack_int len = (lapack_int)(((size_t)n*(n+1))/2); return LAPACKE_c_nancheck( len, ap, 1 ); } diff --git a/lapack-netlib/LAPACKE/utils/lapacke_ctf_nancheck.c b/lapack-netlib/LAPACKE/utils/lapacke_ctf_nancheck.c index e08f51175a..bd334cdc21 100644 --- a/lapack-netlib/LAPACKE/utils/lapacke_ctf_nancheck.c +++ b/lapack-netlib/LAPACKE/utils/lapacke_ctf_nancheck.c @@ -150,7 +150,7 @@ lapack_logical LAPACKE_ctf_nancheck( int matrix_layout, char transr, } } else { /* Non-unit case - just check whole array for NaNs. */ - len = n*(n+1)/2; + len = (lapack_int)(((size_t)n*(n+1))/2); return LAPACKE_cge_nancheck( LAPACK_COL_MAJOR, len, 1, a, len ); } } diff --git a/lapack-netlib/LAPACKE/utils/lapacke_ctp_nancheck.c b/lapack-netlib/LAPACKE/utils/lapacke_ctp_nancheck.c index 30c8a93984..e004dab417 100644 --- a/lapack-netlib/LAPACKE/utils/lapacke_ctp_nancheck.c +++ b/lapack-netlib/LAPACKE/utils/lapacke_ctp_nancheck.c @@ -76,7 +76,7 @@ lapack_logical LAPACKE_ctp_nancheck( int matrix_layout, char uplo, char diag, return (lapack_logical) 0; } else { /* Non-unit case - just check whole array for NaNs. */ - len = n*(n+1)/2; + len = (lapack_int)(((size_t)n*(n+1))/2); return LAPACKE_c_nancheck( len, ap, 1 ); } } diff --git a/lapack-netlib/LAPACKE/utils/lapacke_ctr_nancheck.c b/lapack-netlib/LAPACKE/utils/lapacke_ctr_nancheck.c index 4bc96ed4cb..df362c3127 100644 --- a/lapack-netlib/LAPACKE/utils/lapacke_ctr_nancheck.c +++ b/lapack-netlib/LAPACKE/utils/lapacke_ctr_nancheck.c @@ -68,14 +68,14 @@ lapack_logical LAPACKE_ctr_nancheck( int matrix_layout, char uplo, char diag, if( ( colmaj || lower ) && !( colmaj && lower ) ) { for( j = st; j < n; j++ ) { for( i = 0; i < MIN( j+1-st, lda ); i++ ) { - if( LAPACK_CISNAN( a[i+j*lda] ) ) + if( LAPACK_CISNAN( a[i+(size_t)j*lda] ) ) return (lapack_logical) 1; } } } else { for( j = 0; j < n-st; j++ ) { for( i = j+st; i < MIN( n, lda ); i++ ) { - if( LAPACK_CISNAN( a[i+j*lda] ) ) + if( LAPACK_CISNAN( a[i+(size_t)j*lda] ) ) return (lapack_logical) 1; } } diff --git a/lapack-netlib/LAPACKE/utils/lapacke_ctz_nancheck.c b/lapack-netlib/LAPACKE/utils/lapacke_ctz_nancheck.c index bea9567811..fc36b3d5f4 100644 --- a/lapack-netlib/LAPACKE/utils/lapacke_ctz_nancheck.c +++ b/lapack-netlib/LAPACKE/utils/lapacke_ctz_nancheck.c @@ -103,27 +103,27 @@ lapack_logical LAPACKE_ctz_nancheck( int matrix_layout, char direct, char uplo, } /* Initial offsets and sizes of triangular and rectangular parts */ - lapack_int tri_offset = 0; + int64_t tri_offset = 0; lapack_int tri_n = MIN(m,n); - lapack_int rect_offset = -1; + int64_t rect_offset = -1; lapack_int rect_m = ( m > n ) ? m - n : m; lapack_int rect_n = ( n > m ) ? n - m : n; /* Fix offsets depending on the shape of the matrix */ if( front ) { if( lower && m > n ) { - rect_offset = tri_n * ( !colmaj ? lda : 1 ); + rect_offset = (int64_t)tri_n * ( !colmaj ? lda : 1 ); } else if( !lower && n > m ) { - rect_offset = tri_n * ( colmaj ? lda : 1 ); + rect_offset = (int64_t)tri_n * ( colmaj ? lda : 1 ); } } else { if( m > n ) { - tri_offset = rect_m * ( !colmaj ? lda : 1 ); + tri_offset = (int64_t)rect_m * ( !colmaj ? lda : 1 ); if( !lower ) { rect_offset = 0; } } else if( n > m ) { - tri_offset = rect_n * ( colmaj ? lda : 1 ); + tri_offset = (int64_t)rect_n * ( colmaj ? lda : 1 ); if( lower ) { rect_offset = 0; } diff --git a/lapack-netlib/LAPACKE/utils/lapacke_d_nancheck.c b/lapack-netlib/LAPACKE/utils/lapacke_d_nancheck.c index 328939b448..a2044f0fdf 100644 --- a/lapack-netlib/LAPACKE/utils/lapacke_d_nancheck.c +++ b/lapack-netlib/LAPACKE/utils/lapacke_d_nancheck.c @@ -42,8 +42,8 @@ lapack_logical LAPACKE_d_nancheck( lapack_int n, if( incx == 0 ) return (lapack_logical) LAPACK_DISNAN( x[0] ); inc = ( incx > 0 ) ? incx : -incx ; - for( i = 0; i < n*inc; i+=inc ) { - if( LAPACK_DISNAN( x[i] ) ) + for( i = 0; i < n; i++ ) { + if( LAPACK_DISNAN( x[(size_t)i*inc] ) ) return (lapack_logical) 1; } return (lapack_logical) 0; diff --git a/lapack-netlib/LAPACKE/utils/lapacke_dpf_nancheck.c b/lapack-netlib/LAPACKE/utils/lapacke_dpf_nancheck.c index cb36afc17c..9e26573b3b 100644 --- a/lapack-netlib/LAPACKE/utils/lapacke_dpf_nancheck.c +++ b/lapack-netlib/LAPACKE/utils/lapacke_dpf_nancheck.c @@ -40,6 +40,6 @@ lapack_logical LAPACKE_dpf_nancheck( lapack_int n, const double *a ) { - lapack_int len = n*(n+1)/2; + lapack_int len = (lapack_int)(((size_t)n*(n+1))/2); return LAPACKE_d_nancheck( len, a, 1 ); } diff --git a/lapack-netlib/LAPACKE/utils/lapacke_dpp_nancheck.c b/lapack-netlib/LAPACKE/utils/lapacke_dpp_nancheck.c index 6e2182e1f0..b227b4e32f 100644 --- a/lapack-netlib/LAPACKE/utils/lapacke_dpp_nancheck.c +++ b/lapack-netlib/LAPACKE/utils/lapacke_dpp_nancheck.c @@ -39,6 +39,6 @@ lapack_logical LAPACKE_dpp_nancheck( lapack_int n, const double *ap ) { - lapack_int len = n*(n+1)/2; + lapack_int len = (lapack_int)(((size_t)n*(n+1))/2); return LAPACKE_d_nancheck( len, ap, 1 ); } diff --git a/lapack-netlib/LAPACKE/utils/lapacke_dsp_nancheck.c b/lapack-netlib/LAPACKE/utils/lapacke_dsp_nancheck.c index ba9e6a0ace..caa98fca1c 100644 --- a/lapack-netlib/LAPACKE/utils/lapacke_dsp_nancheck.c +++ b/lapack-netlib/LAPACKE/utils/lapacke_dsp_nancheck.c @@ -39,6 +39,6 @@ lapack_logical LAPACKE_dsp_nancheck( lapack_int n, const double *ap ) { - lapack_int len = n*(n+1)/2; + lapack_int len = (lapack_int)(((size_t)n*(n+1))/2); return LAPACKE_d_nancheck( len, ap, 1 ); } diff --git a/lapack-netlib/LAPACKE/utils/lapacke_dtf_nancheck.c b/lapack-netlib/LAPACKE/utils/lapacke_dtf_nancheck.c index 0aae448374..e20d33dfcf 100644 --- a/lapack-netlib/LAPACKE/utils/lapacke_dtf_nancheck.c +++ b/lapack-netlib/LAPACKE/utils/lapacke_dtf_nancheck.c @@ -150,7 +150,7 @@ lapack_logical LAPACKE_dtf_nancheck( int matrix_layout, char transr, } } else { /* Non-unit case - just check whole array for NaNs. */ - len = n*(n+1)/2; + len = (lapack_int)(((size_t)n*(n+1))/2); return LAPACKE_dge_nancheck( LAPACK_COL_MAJOR, len, 1, a, len ); } } diff --git a/lapack-netlib/LAPACKE/utils/lapacke_dtp_nancheck.c b/lapack-netlib/LAPACKE/utils/lapacke_dtp_nancheck.c index d8b5eabbba..ece52c1ff1 100644 --- a/lapack-netlib/LAPACKE/utils/lapacke_dtp_nancheck.c +++ b/lapack-netlib/LAPACKE/utils/lapacke_dtp_nancheck.c @@ -76,7 +76,7 @@ lapack_logical LAPACKE_dtp_nancheck( int matrix_layout, char uplo, char diag, return (lapack_logical) 0; } else { /* Non-unit case - just check whole array for NaNs. */ - len = n*(n+1)/2; + len = (lapack_int)(((size_t)n*(n+1))/2); return LAPACKE_d_nancheck( len, ap, 1 ); } } diff --git a/lapack-netlib/LAPACKE/utils/lapacke_dtr_nancheck.c b/lapack-netlib/LAPACKE/utils/lapacke_dtr_nancheck.c index 93fe775d38..6fa3e24355 100644 --- a/lapack-netlib/LAPACKE/utils/lapacke_dtr_nancheck.c +++ b/lapack-netlib/LAPACKE/utils/lapacke_dtr_nancheck.c @@ -68,14 +68,14 @@ lapack_logical LAPACKE_dtr_nancheck( int matrix_layout, char uplo, char diag, if( ( colmaj || lower ) && !( colmaj && lower ) ) { for( j = st; j < n; j++ ) { for( i = 0; i < MIN( j+1-st, lda ); i++ ) { - if( LAPACK_DISNAN( a[i+j*lda] ) ) + if( LAPACK_DISNAN( a[i+(size_t)j*lda] ) ) return (lapack_logical) 1; } } } else { for( j = 0; j < n-st; j++ ) { for( i = j+st; i < MIN( n, lda ); i++ ) { - if( LAPACK_DISNAN( a[i+j*lda] ) ) + if( LAPACK_DISNAN( a[i+(size_t)j*lda] ) ) return (lapack_logical) 1; } } diff --git a/lapack-netlib/LAPACKE/utils/lapacke_dtz_nancheck.c b/lapack-netlib/LAPACKE/utils/lapacke_dtz_nancheck.c index cd2ae6731a..4131ff23d2 100644 --- a/lapack-netlib/LAPACKE/utils/lapacke_dtz_nancheck.c +++ b/lapack-netlib/LAPACKE/utils/lapacke_dtz_nancheck.c @@ -102,27 +102,27 @@ lapack_logical LAPACKE_dtz_nancheck( int matrix_layout, char direct, char uplo, } /* Initial offsets and sizes of triangular and rectangular parts */ - lapack_int tri_offset = 0; + int64_t tri_offset = 0; lapack_int tri_n = MIN(m,n); - lapack_int rect_offset = -1; + int64_t rect_offset = -1; lapack_int rect_m = ( m > n ) ? m - n : m; lapack_int rect_n = ( n > m ) ? n - m : n; /* Fix offsets depending on the shape of the matrix */ if( front ) { if( lower && m > n ) { - rect_offset = tri_n * ( !colmaj ? lda : 1 ); + rect_offset = (int64_t)tri_n * ( !colmaj ? lda : 1 ); } else if( !lower && n > m ) { - rect_offset = tri_n * ( colmaj ? lda : 1 ); + rect_offset = (int64_t)tri_n * ( colmaj ? lda : 1 ); } } else { if( m > n ) { - tri_offset = rect_m * ( !colmaj ? lda : 1 ); + tri_offset = (int64_t)rect_m * ( !colmaj ? lda : 1 ); if( !lower ) { rect_offset = 0; } } else if( n > m ) { - tri_offset = rect_n * ( colmaj ? lda : 1 ); + tri_offset = (int64_t)rect_n * ( colmaj ? lda : 1 ); if( lower ) { rect_offset = 0; } diff --git a/lapack-netlib/LAPACKE/utils/lapacke_s_nancheck.c b/lapack-netlib/LAPACKE/utils/lapacke_s_nancheck.c index 6abc907e2e..1853d2a23a 100644 --- a/lapack-netlib/LAPACKE/utils/lapacke_s_nancheck.c +++ b/lapack-netlib/LAPACKE/utils/lapacke_s_nancheck.c @@ -42,8 +42,8 @@ lapack_logical LAPACKE_s_nancheck( lapack_int n, if( incx == 0 ) return (lapack_logical) LAPACK_SISNAN( x[0] ); inc = ( incx > 0 ) ? incx : -incx ; - for( i = 0; i < n*inc; i+=inc ) { - if( LAPACK_SISNAN( x[i] ) ) + for( i = 0; i < n; i++ ) { + if( LAPACK_SISNAN( x[(size_t)i*inc] ) ) return (lapack_logical) 1; } return (lapack_logical) 0; diff --git a/lapack-netlib/LAPACKE/utils/lapacke_spf_nancheck.c b/lapack-netlib/LAPACKE/utils/lapacke_spf_nancheck.c index 5499e150cc..b41cc5b0ec 100644 --- a/lapack-netlib/LAPACKE/utils/lapacke_spf_nancheck.c +++ b/lapack-netlib/LAPACKE/utils/lapacke_spf_nancheck.c @@ -40,6 +40,6 @@ lapack_logical LAPACKE_spf_nancheck( lapack_int n, const float *a ) { - lapack_int len = n*(n+1)/2; + lapack_int len = (lapack_int)(((size_t)n*(n+1))/2); return LAPACKE_s_nancheck( len, a, 1 ); } diff --git a/lapack-netlib/LAPACKE/utils/lapacke_spp_nancheck.c b/lapack-netlib/LAPACKE/utils/lapacke_spp_nancheck.c index ff83c22755..0de5ad7e51 100644 --- a/lapack-netlib/LAPACKE/utils/lapacke_spp_nancheck.c +++ b/lapack-netlib/LAPACKE/utils/lapacke_spp_nancheck.c @@ -39,6 +39,6 @@ lapack_logical LAPACKE_spp_nancheck( lapack_int n, const float *ap ) { - lapack_int len = n*(n+1)/2; + lapack_int len = (lapack_int)(((size_t)n*(n+1))/2); return LAPACKE_s_nancheck( len, ap, 1 ); } diff --git a/lapack-netlib/LAPACKE/utils/lapacke_ssp_nancheck.c b/lapack-netlib/LAPACKE/utils/lapacke_ssp_nancheck.c index 94e5338771..3c75036f93 100644 --- a/lapack-netlib/LAPACKE/utils/lapacke_ssp_nancheck.c +++ b/lapack-netlib/LAPACKE/utils/lapacke_ssp_nancheck.c @@ -39,6 +39,6 @@ lapack_logical LAPACKE_ssp_nancheck( lapack_int n, const float *ap ) { - lapack_int len = n*(n+1)/2; + lapack_int len = (lapack_int)(((size_t)n*(n+1))/2); return LAPACKE_s_nancheck( len, ap, 1 ); } diff --git a/lapack-netlib/LAPACKE/utils/lapacke_stf_nancheck.c b/lapack-netlib/LAPACKE/utils/lapacke_stf_nancheck.c index 95128c0e7a..b8e9868c2f 100644 --- a/lapack-netlib/LAPACKE/utils/lapacke_stf_nancheck.c +++ b/lapack-netlib/LAPACKE/utils/lapacke_stf_nancheck.c @@ -151,7 +151,7 @@ lapack_logical LAPACKE_stf_nancheck( int matrix_layout, char transr, } } else { /* Non-unit case - just check whole array for NaNs. */ - len = n*(n+1)/2; + len = (lapack_int)(((size_t)n*(n+1))/2); return LAPACKE_sge_nancheck( LAPACK_COL_MAJOR, len, 1, a, len ); } } diff --git a/lapack-netlib/LAPACKE/utils/lapacke_stp_nancheck.c b/lapack-netlib/LAPACKE/utils/lapacke_stp_nancheck.c index 6c16368d56..51c8325503 100644 --- a/lapack-netlib/LAPACKE/utils/lapacke_stp_nancheck.c +++ b/lapack-netlib/LAPACKE/utils/lapacke_stp_nancheck.c @@ -76,7 +76,7 @@ lapack_logical LAPACKE_stp_nancheck( int matrix_layout, char uplo, char diag, return (lapack_logical) 0; } else { /* Non-unit case - just check whole array for NaNs. */ - len = n*(n+1)/2; + len = (lapack_int)(((size_t)n*(n+1))/2); return LAPACKE_s_nancheck( len, ap, 1 ); } } diff --git a/lapack-netlib/LAPACKE/utils/lapacke_str_nancheck.c b/lapack-netlib/LAPACKE/utils/lapacke_str_nancheck.c index df5c7dd5a6..917a008cab 100644 --- a/lapack-netlib/LAPACKE/utils/lapacke_str_nancheck.c +++ b/lapack-netlib/LAPACKE/utils/lapacke_str_nancheck.c @@ -68,14 +68,14 @@ lapack_logical LAPACKE_str_nancheck( int matrix_layout, char uplo, char diag, if( ( colmaj || lower ) && !( colmaj && lower ) ) { for( j = st; j < n; j++ ) { for( i = 0; i < MIN( j+1-st, lda ); i++ ) { - if( LAPACK_SISNAN( a[i+j*lda] ) ) + if( LAPACK_SISNAN( a[i+(size_t)j*lda] ) ) return (lapack_logical) 1; } } } else { for( j = 0; j < n-st; j++ ) { for( i = j+st; i < MIN( n, lda ); i++ ) { - if( LAPACK_SISNAN( a[i+j*lda] ) ) + if( LAPACK_SISNAN( a[i+(size_t)j*lda] ) ) return (lapack_logical) 1; } } diff --git a/lapack-netlib/LAPACKE/utils/lapacke_stz_nancheck.c b/lapack-netlib/LAPACKE/utils/lapacke_stz_nancheck.c index 7d7c30f96c..7556a56a61 100644 --- a/lapack-netlib/LAPACKE/utils/lapacke_stz_nancheck.c +++ b/lapack-netlib/LAPACKE/utils/lapacke_stz_nancheck.c @@ -102,27 +102,27 @@ lapack_logical LAPACKE_stz_nancheck( int matrix_layout, char direct, char uplo, } /* Initial offsets and sizes of triangular and rectangular parts */ - lapack_int tri_offset = 0; + int64_t tri_offset = 0; lapack_int tri_n = MIN(m,n); - lapack_int rect_offset = -1; + int64_t rect_offset = -1; lapack_int rect_m = ( m > n ) ? m - n : m; lapack_int rect_n = ( n > m ) ? n - m : n; /* Fix offsets depending on the shape of the matrix */ if( front ) { if( lower && m > n ) { - rect_offset = tri_n * ( !colmaj ? lda : 1 ); + rect_offset = (int64_t)tri_n * ( !colmaj ? lda : 1 ); } else if( !lower && n > m ) { - rect_offset = tri_n * ( colmaj ? lda : 1 ); + rect_offset = (int64_t)tri_n * ( colmaj ? lda : 1 ); } } else { if( m > n ) { - tri_offset = rect_m * ( !colmaj ? lda : 1 ); + tri_offset = (int64_t)rect_m * ( !colmaj ? lda : 1 ); if( !lower ) { rect_offset = 0; } } else if( n > m ) { - tri_offset = rect_n * ( colmaj ? lda : 1 ); + tri_offset = (int64_t)rect_n * ( colmaj ? lda : 1 ); if( lower ) { rect_offset = 0; } diff --git a/lapack-netlib/LAPACKE/utils/lapacke_z_nancheck.c b/lapack-netlib/LAPACKE/utils/lapacke_z_nancheck.c index ce6b18e630..a1ccd83257 100644 --- a/lapack-netlib/LAPACKE/utils/lapacke_z_nancheck.c +++ b/lapack-netlib/LAPACKE/utils/lapacke_z_nancheck.c @@ -42,8 +42,8 @@ lapack_logical LAPACKE_z_nancheck( lapack_int n, if( incx == 0 ) return (lapack_logical) LAPACK_ZISNAN( x[0] ); inc = ( incx > 0 ) ? incx : -incx ; - for( i = 0; i < n*inc; i+=inc ) { - if( LAPACK_ZISNAN( x[i] ) ) + for( i = 0; i < n; i++ ) { + if( LAPACK_ZISNAN( x[(size_t)i*inc] ) ) return (lapack_logical) 1; } return (lapack_logical) 0; diff --git a/lapack-netlib/LAPACKE/utils/lapacke_zhp_nancheck.c b/lapack-netlib/LAPACKE/utils/lapacke_zhp_nancheck.c index 1cfbd7e546..f602a77b5a 100644 --- a/lapack-netlib/LAPACKE/utils/lapacke_zhp_nancheck.c +++ b/lapack-netlib/LAPACKE/utils/lapacke_zhp_nancheck.c @@ -39,6 +39,6 @@ lapack_logical LAPACKE_zhp_nancheck( lapack_int n, const lapack_complex_double *ap ) { - lapack_int len = n*(n+1)/2; + lapack_int len = (lapack_int)(((size_t)n*(n+1))/2); return LAPACKE_z_nancheck( len, ap, 1 ); } diff --git a/lapack-netlib/LAPACKE/utils/lapacke_zpf_nancheck.c b/lapack-netlib/LAPACKE/utils/lapacke_zpf_nancheck.c index 6ec322af0b..d9ca825d19 100644 --- a/lapack-netlib/LAPACKE/utils/lapacke_zpf_nancheck.c +++ b/lapack-netlib/LAPACKE/utils/lapacke_zpf_nancheck.c @@ -40,6 +40,6 @@ lapack_logical LAPACKE_zpf_nancheck( lapack_int n, const lapack_complex_double *a ) { - lapack_int len = n*(n+1)/2; + lapack_int len = (lapack_int)(((size_t)n*(n+1))/2); return LAPACKE_z_nancheck( len, a, 1 ); } diff --git a/lapack-netlib/LAPACKE/utils/lapacke_zpp_nancheck.c b/lapack-netlib/LAPACKE/utils/lapacke_zpp_nancheck.c index f2982a855d..ca804e2087 100644 --- a/lapack-netlib/LAPACKE/utils/lapacke_zpp_nancheck.c +++ b/lapack-netlib/LAPACKE/utils/lapacke_zpp_nancheck.c @@ -39,6 +39,6 @@ lapack_logical LAPACKE_zpp_nancheck( lapack_int n, const lapack_complex_double *ap ) { - lapack_int len = n*(n+1)/2; + lapack_int len = (lapack_int)(((size_t)n*(n+1))/2); return LAPACKE_z_nancheck( len, ap, 1 ); } diff --git a/lapack-netlib/LAPACKE/utils/lapacke_zsp_nancheck.c b/lapack-netlib/LAPACKE/utils/lapacke_zsp_nancheck.c index edc59029fa..bbc7740861 100644 --- a/lapack-netlib/LAPACKE/utils/lapacke_zsp_nancheck.c +++ b/lapack-netlib/LAPACKE/utils/lapacke_zsp_nancheck.c @@ -39,6 +39,6 @@ lapack_logical LAPACKE_zsp_nancheck( lapack_int n, const lapack_complex_double *ap ) { - lapack_int len = n*(n+1)/2; + lapack_int len = (lapack_int)(((size_t)n*(n+1))/2); return LAPACKE_z_nancheck( len, ap, 1 ); } diff --git a/lapack-netlib/LAPACKE/utils/lapacke_ztf_nancheck.c b/lapack-netlib/LAPACKE/utils/lapacke_ztf_nancheck.c index 2cfa86bf1c..8bd18ff74b 100644 --- a/lapack-netlib/LAPACKE/utils/lapacke_ztf_nancheck.c +++ b/lapack-netlib/LAPACKE/utils/lapacke_ztf_nancheck.c @@ -151,7 +151,7 @@ lapack_logical LAPACKE_ztf_nancheck( int matrix_layout, char transr, } } else { /* Non-unit case - just check whole array for NaNs. */ - len = n*(n+1)/2; + len = (lapack_int)(((size_t)n*(n+1))/2); return LAPACKE_zge_nancheck( LAPACK_COL_MAJOR, len, 1, a, len ); } } diff --git a/lapack-netlib/LAPACKE/utils/lapacke_ztp_nancheck.c b/lapack-netlib/LAPACKE/utils/lapacke_ztp_nancheck.c index dc347eaa5a..50278e372b 100644 --- a/lapack-netlib/LAPACKE/utils/lapacke_ztp_nancheck.c +++ b/lapack-netlib/LAPACKE/utils/lapacke_ztp_nancheck.c @@ -76,7 +76,7 @@ lapack_logical LAPACKE_ztp_nancheck( int matrix_layout, char uplo, char diag, return (lapack_logical) 0; } else { /* Non-unit case - just check whole array for NaNs. */ - len = n*(n+1)/2; + len = (lapack_int)(((size_t)n*(n+1))/2); return LAPACKE_z_nancheck( len, ap, 1 ); } } diff --git a/lapack-netlib/LAPACKE/utils/lapacke_ztr_nancheck.c b/lapack-netlib/LAPACKE/utils/lapacke_ztr_nancheck.c index 7058a33ed6..1b7814435b 100644 --- a/lapack-netlib/LAPACKE/utils/lapacke_ztr_nancheck.c +++ b/lapack-netlib/LAPACKE/utils/lapacke_ztr_nancheck.c @@ -68,14 +68,14 @@ lapack_logical LAPACKE_ztr_nancheck( int matrix_layout, char uplo, char diag, if( ( colmaj || lower ) && !( colmaj && lower ) ) { for( j = st; j < n; j++ ) { for( i = 0; i < MIN( j+1-st, lda ); i++ ) { - if( LAPACK_ZISNAN( a[i+j*lda] ) ) + if( LAPACK_ZISNAN( a[i+(size_t)j*lda] ) ) return (lapack_logical) 1; } } } else { for( j = 0; j < n-st; j++ ) { for( i = j+st; i < MIN( n, lda ); i++ ) { - if( LAPACK_ZISNAN( a[i+j*lda] ) ) + if( LAPACK_ZISNAN( a[i+(size_t)j*lda] ) ) return (lapack_logical) 1; } } diff --git a/lapack-netlib/LAPACKE/utils/lapacke_ztz_nancheck.c b/lapack-netlib/LAPACKE/utils/lapacke_ztz_nancheck.c index 481fa4c033..72479dfcee 100644 --- a/lapack-netlib/LAPACKE/utils/lapacke_ztz_nancheck.c +++ b/lapack-netlib/LAPACKE/utils/lapacke_ztz_nancheck.c @@ -103,27 +103,27 @@ lapack_logical LAPACKE_ztz_nancheck( int matrix_layout, char direct, char uplo, } /* Initial offsets and sizes of triangular and rectangular parts */ - lapack_int tri_offset = 0; + int64_t tri_offset = 0; lapack_int tri_n = MIN(m,n); - lapack_int rect_offset = -1; + int64_t rect_offset = -1; lapack_int rect_m = ( m > n ) ? m - n : m; lapack_int rect_n = ( n > m ) ? n - m : n; /* Fix offsets depending on the shape of the matrix */ if( front ) { if( lower && m > n ) { - rect_offset = tri_n * ( !colmaj ? lda : 1 ); + rect_offset = (int64_t)tri_n * ( !colmaj ? lda : 1 ); } else if( !lower && n > m ) { - rect_offset = tri_n * ( colmaj ? lda : 1 ); + rect_offset = (int64_t)tri_n * ( colmaj ? lda : 1 ); } } else { if( m > n ) { - tri_offset = rect_m * ( !colmaj ? lda : 1 ); + tri_offset = (int64_t)rect_m * ( !colmaj ? lda : 1 ); if( !lower ) { rect_offset = 0; } } else if( n > m ) { - tri_offset = rect_n * ( colmaj ? lda : 1 ); + tri_offset = (int64_t)rect_n * ( colmaj ? lda : 1 ); if( lower ) { rect_offset = 0; }