diff --git a/exports/check_objs.sh b/exports/check_objs.sh new file mode 100755 index 000000000..2f6746296 --- /dev/null +++ b/exports/check_objs.sh @@ -0,0 +1,55 @@ +#!/bin/bash + +while read OBJ; do + + if echo "$OBJ"|grep "_$" >/dev/null + then + + O1=$(echo "$OBJ"|sed -e 's/_$//' ) + + if grep -w "$O1" exports/gensymbol >/dev/null + then + true + else + echo "$O1" + fi + fi + + if echo "$OBJ"|grep "^cblas" >/dev/null + then + + if grep -w "$OBJ" exports/gensymbol >/dev/null + then + true + else + echo "$OBJ" + fi + fi + + if echo "$OBJ"|grep "^LAPACKE" >/dev/null + then + + if grep -w "$OBJ" exports/gensymbol >/dev/null + then + true + else + echo "$OBJ" + fi + fi + + if echo "$OBJ"|grep "^lapack" >/dev/null + then + + if grep -w "$OBJ" exports/gensymbol >/dev/null + then + true + else + echo "$OBJ" + fi + fi + + + + +done + diff --git a/exports/gensymbol b/exports/gensymbol index 7d16207c3..d32c99f4a 100644 --- a/exports/gensymbol +++ b/exports/gensymbol @@ -1,11 +1,22 @@ #!/usr/bin/perl +# Changelog +# 2017/07/01 Saar +# removed zsymv and csymv from @blasobs, because these functions +# are now in lapack-3.7.0 +# added caxpyc and zaxpyc +# added blas_thread_shutdown +# added cblas_cgemm3m and cblas_zgemm3m +# added somatcopy, simatcopy ... +# added new functions from lapack-3.7.0 +# added LAPACKE deprecated objs from lapack-3.7.0 +# @blasobjs = ( caxpy,ccopy,cdotc,cdotu,cgbmv,cgemm,cgemv,cgerc,cgeru, chbmv,chemm,chemv,cher2,cher2k,cher,cherk, chpmv,chpr2,chpr,crotg,cscal,csrot,csscal,cswap, csymm,csyr2k,csyrk,ctbmv,ctbsv,ctpmv,ctpsv,ctrmm,ctrmv,ctrsm, - ctrsv, csymv, + ctrsv, damax,damin,dasum,daxpy,dcabs1,dcopy,ddot,dgbmv,dgemm, dgemv,dger,dmax,dmin,dnrm2,drot,drotg,drotm,drotmg,dsbmv, dscal,dsdot,dspmv,dspr2, @@ -21,10 +32,18 @@ zdscal,zgbmv,zgemm,zgemv,zgerc,zgeru, zhbmv,zhemm,zhemv,zher2,zher2k,zher,zherk,zhpmv,zhpr2, zhpr,zrotg,zscal,zswap,zsymm,zsyr2k,zsyrk,ztbmv, - ztbsv,ztpmv,ztpsv,ztrmm,ztrmv,ztrsm,ztrsv, zsymv, + ztbsv,ztpmv,ztpsv,ztrmm,ztrmv,ztrsm,ztrsv, xerbla, - saxpby,daxpby,caxpby,zaxpby, + saxpby,daxpby,caxpby,zaxpby,caxpyc,zaxpyc, sgeadd,dgeadd,cgeadd,zgeadd, + somatcopy, + simatcopy, + domatcopy, + dimatcopy, + comatcopy, + cimatcopy, + zomatcopy, + zimatcopy, ); @cblasobjs = ( @@ -80,6 +99,12 @@ cgemm3m,zgemm3m ); +@cblasgemm3mobjs = ( + cblas_cgemm3m,cblas_zgemm3m + ); + + + #both underscore and no underscore @misc_common_objs = ( @@ -96,6 +121,7 @@ ); @misc_underscore_objs = ( + blas_thread_shutdown, ); @lapackobjs = ( @@ -581,8 +607,208 @@ zsbmv, zspr2, zsyr2, - zunm22 + zunm22, + # functions added for lapack-3.7.0 + + slarfy, + slasyf_rk, + ssyconvf_rook, + ssytf2_rk, + ssytrf_rk, + ssytrs_3, + ssytri_3, + ssytri_3x, + ssycon_3, + ssysv_rk, + slasyf_aa, + ssysv_aa, + ssytrf_aa, + ssytrs_aa, + strevc3, + sgelqt, + sgelqt3, + sgemlqt, + sgetsls, + sgeqr, + slatsqr, + slamtsqr, + sgemqr, + sgelq, + slaswlq, + slamswlq, + sgemlq, + stplqt, + stplqt2, + stpmlqt, + ssytrd_2stage, + ssytrd_sy2sb, + ssytrd_sb2st, + ssb2st_kernels, + ssyevd_2stage, + ssyev_2stage, + ssyevx_2stage, + ssyevr_2stage, + ssbev_2stage, + ssbevx_2stage, + ssbevd_2stage, + ssygv_2stage, + dlarfy, + dlasyf_rk, + dsyconvf, + dsyconvf_rook, + dsytf2_rk, + dsytrf_rk, + dsytrs_3, + dsytri_3, + dsytri_3x, + dsycon_3, + dsysv_rk, + dlasyf_aa, + dsysv_aa, + dsytrf_aa, + dsytrs_aa, + dtrevc3, + dgelqt, + dgelqt3, + dgemlqt, + dgetsls, + dgeqr, + dlatsqr, + dlamtsqr, + dgemqr, + dgelq, + dlaswlq, + dlamswlq, + dgemlq, + dtplqt, + dtplqt2, + dtpmlqt, + dsytrd_2stage, + dsytrd_sy2sb, + dsytrd_sb2st, + dsb2st_kernels, + dsyevd_2stage, + dsyev_2stage, + dsyevx_2stage, + dsyevr_2stage, + dsbev_2stage, + dsbevx_2stage, + dsbevd_2stage, + dsygv_2stage, + chetf2_rk, + chetrf_rk, + chetri_3, + chetri_3x, + chetrs_3, + checon_3, + chesv_rk, + chesv_aa, + chetrf_aa, + chetrs_aa, + clahef_aa, + clahef_rk, + clarfy, + clasyf_rk, + clasyf_aa, + csyconvf, + csyconvf_rook, + csytf2_rk, + csytrf_rk, + csytrf_aa, + csytrs_3, + csytrs_aa, + csytri_3, + csytri_3x, + csycon_3, + csysv_rk, + csysv_aa, + ctrevc3, + cgelqt, + cgelqt3, + cgemlqt, + cgetsls, + cgeqr, + clatsqr, + clamtsqr, + cgemqr, + cgelq, + claswlq, + clamswlq, + cgemlq, + ctplqt, + ctplqt2, + ctpmlqt, + chetrd_2stage, + chetrd_he2hb, + chetrd_hb2st, + chb2st_kernels, + cheevd_2stage, + cheev_2stage, + cheevx_2stage, + cheevr_2stage, + chbev_2stage, + chbevx_2stage, + chbevd_2stage, + chegv_2stage, + zhetf2_rk, + zhetrf_rk, + zhetri_3, + zhetri_3x, + zhetrs_3, + zhecon_3, + zhesv_rk, + zhesv_aa, + zhetrf_aa, + zhetrs_aa, + zlahef_aa, + zlahef_rk, + zlarfy, + zlasyf_rk, + zlasyf_aa, + zsyconvf, + zsyconvf_rook, + zsytrs_aa, + zsytf2_rk, + zsytrf_rk, + zsytrf_aa, + zsytrs_3, + zsytri_3, + zsytri_3x, + zsycon_3, + zsysv_rk, + zsysv_aa, + ztrevc3, + ztplqt, + ztplqt2, + ztpmlqt, + zgelqt, + zgelqt3, + zgemlqt, + zgetsls, + zgeqr, + zlatsqr, + zlamtsqr, + zgemqr, + zgelq, + zlaswlq, + zlamswlq, + zgemlq, + zhetrd_2stage, + zhetrd_he2hb, + zhetrd_hb2st, + zhb2st_kernels, + zheevd_2stage, + zheev_2stage, + zheevx_2stage, + zheevr_2stage, + zhbev_2stage, + zhbevx_2stage, + zhbevd_2stage, + zhegv_2stage, + sladiv1, + dladiv1, + iparam2stage, ); @lapack_extendedprecision_objs = ( @@ -597,6 +823,36 @@ cgeqpf, clatzm, dgelsx, dlahrd, sgegv, sggsvp, zgegs, zggsvd, ztzrqf, ); +@lapacke_deprecated_objs = ( + + LAPACKE_cggsvp, + LAPACKE_cggsvp_work, + LAPACKE_dggsvp, + LAPACKE_dggsvp_work, + LAPACKE_sggsvp, + LAPACKE_sggsvp_work, + LAPACKE_zggsvp, + LAPACKE_zggsvp_work, + LAPACKE_cggsvd, + LAPACKE_cggsvd_work, + LAPACKE_dggsvd, + LAPACKE_dggsvd_work, + LAPACKE_sggsvd, + LAPACKE_sggsvd_work, + LAPACKE_zggsvd, + LAPACKE_zggsvd_work, + LAPACKE_cgeqpf, + LAPACKE_cgeqpf_work, + LAPACKE_dgeqpf, + LAPACKE_dgeqpf_work, + LAPACKE_sgeqpf, + LAPACKE_sgeqpf_work, + LAPACKE_zgeqpf, + LAPACKE_zgeqpf_work, + + ); + + @lapackeobjs = ( # LAPACK C interface routines. # @@ -2948,7 +3204,186 @@ LAPACKE_zsytrs_rook, LAPACKE_zsytrs_rook_work, LAPACKE_zuncsd2by1, - LAPACKE_zuncsd2by1_work + LAPACKE_zuncsd2by1_work, + + ## new function from lapack-3.7.0 + + LAPACKE_cgemqr, + LAPACKE_cgemqr_work, + LAPACKE_cgetsls, + LAPACKE_cgetsls_work, + LAPACKE_chbev_2stage, + LAPACKE_chbev_2stage_work, + LAPACKE_chbevd_2stage, + LAPACKE_chbevd_2stage_work, + LAPACKE_chbevx_2stage, + LAPACKE_chbevx_2stage_work, + LAPACKE_checon_3, + LAPACKE_checon_3_work, + LAPACKE_cheev_2stage, + LAPACKE_cheev_2stage_work, + LAPACKE_cheevd_2stage, + LAPACKE_cheevd_2stage_work, + LAPACKE_cheevr_2stage, + LAPACKE_cheevr_2stage_work, + LAPACKE_cheevx_2stage, + LAPACKE_cheevx_2stage_work, + LAPACKE_chegv_2stage, + LAPACKE_chegv_2stage_work, + LAPACKE_chesv_aa, + LAPACKE_chesv_aa_work, + LAPACKE_chesv_rk, + LAPACKE_chesv_rk_work, + LAPACKE_chetrf_aa, + LAPACKE_chetrf_aa_work, + LAPACKE_chetrf_rk, + LAPACKE_chetrf_rk_work, + LAPACKE_chetri_3, + LAPACKE_chetri_3_work, + LAPACKE_chetrs_aa, + LAPACKE_chetrs_aa_work, + LAPACKE_chetrs_3, + LAPACKE_chetrs_3_work, + LAPACKE_csycon_3, + LAPACKE_csycon_3_work, + LAPACKE_csysv_aa, + LAPACKE_csysv_aa_work, + LAPACKE_csysv_rk, + LAPACKE_csysv_rk_work, + LAPACKE_csytrf_aa, + LAPACKE_csytrf_aa_work, + LAPACKE_csytrf_rk, + LAPACKE_csytrf_rk_work, + LAPACKE_csytri_3, + LAPACKE_csytri_3_work, + LAPACKE_csytrs_aa, + LAPACKE_csytrs_aa_work, + LAPACKE_csytrs_3, + LAPACKE_csytrs_3_work, + LAPACKE_dgemqr, + LAPACKE_dgemqr_work, + LAPACKE_dgetsls, + LAPACKE_dgetsls_work, + LAPACKE_dsbev_2stage, + LAPACKE_dsbev_2stage_work, + LAPACKE_dsbevd_2stage, + LAPACKE_dsbevd_2stage_work, + LAPACKE_dsbevx_2stage, + LAPACKE_dsbevx_2stage_work, + LAPACKE_dsycon_3, + LAPACKE_dsycon_3_work, + LAPACKE_dsyev_2stage, + LAPACKE_dsyev_2stage_work, + LAPACKE_dsyevd_2stage, + LAPACKE_dsyevd_2stage_work, + LAPACKE_dsyevr_2stage, + LAPACKE_dsyevr_2stage_work, + LAPACKE_dsyevx_2stage, + LAPACKE_dsyevx_2stage_work, + LAPACKE_dsygv_2stage, + LAPACKE_dsygv_2stage_work, + LAPACKE_dsysv_aa, + LAPACKE_dsysv_aa_work, + LAPACKE_dsysv_rk, + LAPACKE_dsysv_rk_work, + LAPACKE_dsytrf_aa, + LAPACKE_dsytrf_aa_work, + LAPACKE_dsytrf_rk, + LAPACKE_dsytrf_rk_work, + LAPACKE_dsytri_3, + LAPACKE_dsytri_3_work, + LAPACKE_dsytrs_aa, + LAPACKE_dsytrs_aa_work, + LAPACKE_dsytrs_3, + LAPACKE_dsytrs_3_work, + LAPACKE_sgemqr, + LAPACKE_sgemqr_work, + LAPACKE_sgetsls, + LAPACKE_sgetsls_work, + LAPACKE_ssbev_2stage, + LAPACKE_ssbev_2stage_work, + LAPACKE_ssbevd_2stage, + LAPACKE_ssbevd_2stage_work, + LAPACKE_ssbevx_2stage, + LAPACKE_ssbevx_2stage_work, + LAPACKE_ssycon_3, + LAPACKE_ssycon_3_work, + LAPACKE_ssyev_2stage, + LAPACKE_ssyev_2stage_work, + LAPACKE_ssyevd_2stage, + LAPACKE_ssyevd_2stage_work, + LAPACKE_ssyevr_2stage, + LAPACKE_ssyevr_2stage_work, + LAPACKE_ssyevx_2stage, + LAPACKE_ssyevx_2stage_work, + LAPACKE_ssygv_2stage, + LAPACKE_ssygv_2stage_work, + LAPACKE_ssysv_aa, + LAPACKE_ssysv_aa_work, + LAPACKE_ssysv_rk, + LAPACKE_ssysv_rk_work, + LAPACKE_ssytrf_aa, + LAPACKE_ssytrf_aa_work, + LAPACKE_ssytrf_rk, + LAPACKE_ssytrf_rk_work, + LAPACKE_ssytri_3, + LAPACKE_ssytri_3_work, + LAPACKE_ssytrs_aa, + LAPACKE_ssytrs_aa_work, + LAPACKE_ssytrs_3, + LAPACKE_ssytrs_3_work, + LAPACKE_zgemqr, + LAPACKE_zgemqr_work, + LAPACKE_zgetsls, + LAPACKE_zgetsls_work, + LAPACKE_zhbev_2stage, + LAPACKE_zhbev_2stage_work, + LAPACKE_zhbevd_2stage, + LAPACKE_zhbevd_2stage_work, + LAPACKE_zhbevx_2stage, + LAPACKE_zhbevx_2stage_work, + LAPACKE_zhecon_3, + LAPACKE_zhecon_3_work, + LAPACKE_zheev_2stage, + LAPACKE_zheev_2stage_work, + LAPACKE_zheevd_2stage, + LAPACKE_zheevd_2stage_work, + LAPACKE_zheevr_2stage, + LAPACKE_zheevr_2stage_work, + LAPACKE_zheevx_2stage, + LAPACKE_zheevx_2stage_work, + LAPACKE_zhegv_2stage, + LAPACKE_zhegv_2stage_work, + LAPACKE_zhesv_aa, + LAPACKE_zhesv_aa_work, + LAPACKE_zhesv_rk, + LAPACKE_zhesv_rk_work, + LAPACKE_zhetrf_aa, + LAPACKE_zhetrf_aa_work, + LAPACKE_zhetrf_rk, + LAPACKE_zhetrf_rk_work, + LAPACKE_zhetri_3, + LAPACKE_zhetri_3_work, + LAPACKE_zhetrs_aa, + LAPACKE_zhetrs_aa_work, + LAPACKE_zhetrs_3, + LAPACKE_zhetrs_3_work, + LAPACKE_zsycon_3, + LAPACKE_zsycon_3_work, + LAPACKE_zsysv_aa, + LAPACKE_zsysv_aa_work, + LAPACKE_zsysv_rk, + LAPACKE_zsysv_rk_work, + LAPACKE_zsytrf_aa, + LAPACKE_zsytrf_aa_work, + LAPACKE_zsytrf_rk, + LAPACKE_zsytrf_rk_work, + LAPACKE_zsytri_3, + LAPACKE_zsytri_3_work, + LAPACKE_zsytrs_aa, + LAPACKE_zsytrs_aa_work, + LAPACKE_zsytrs_3, + LAPACKE_zsytrs_3_work, ); #These function may need 2 underscores. @@ -3026,7 +3461,12 @@ if ($ARGV[6] == 1) { #NO_LAPACKE=1 @no_underscore_objs = (@no_underscore_objs); } else { - @no_underscore_objs = (@no_underscore_objs, @lapackeobjs); + if ($ARGV[11] == 1){ + #BUILD_LAPACK_DEPRECATED=1 + @no_underscore_objs = (@no_underscore_objs, @lapackeobjs, @lapacke_deprecated_objs); + }else{ + @no_underscore_objs = (@no_underscore_objs, @lapackeobjs); + } } @hplobjs = (daxpy, dcopy, dscal, idamax, dgemv, dtrsv, dger, dgemm, dtrsm);