Home | History | Annotate | Download | only in include
      1 /*
      2  * cblas_f77.h
      3  * Written by Keita Teranishi
      4  *
      5  * Updated by Jeff Horner
      6  * Merged cblas_f77.h and cblas_fortran_header.h
      7  */
      8 
      9 #ifndef CBLAS_F77_H
     10 #define CBLAS_F77_H
     11 
     12 #define FCHAR char *
     13 #define FINT const int *
     14 
     15 /*
     16  * Level 1 BLAS
     17  */
     18 // Google-local: Nonstandard xerbla name to avoid collisions with LAPACK.
     19 #define F77_xerbla cblas_f77_xerbla_
     20 #define F77_srotg      srotg_
     21 #define F77_srotmg     srotmg_
     22 #define F77_srot       srot_
     23 #define F77_srotm      srotm_
     24 #define F77_drotg      drotg_
     25 #define F77_drotmg     drotmg_
     26 #define F77_drot       drot_
     27 #define F77_drotm      drotm_
     28 #define F77_sswap      sswap_
     29 #define F77_scopy      scopy_
     30 #define F77_saxpy      saxpy_
     31 #define F77_dswap      dswap_
     32 #define F77_dcopy      dcopy_
     33 #define F77_daxpy      daxpy_
     34 #define F77_cswap      cswap_
     35 #define F77_ccopy      ccopy_
     36 #define F77_caxpy      caxpy_
     37 #define F77_zswap      zswap_
     38 #define F77_zcopy      zcopy_
     39 #define F77_zaxpy      zaxpy_
     40 #define F77_sscal      sscal_
     41 #define F77_dscal      dscal_
     42 #define F77_cscal      cscal_
     43 #define F77_zscal      zscal_
     44 #define F77_csscal      csscal_
     45 #define F77_zdscal      zdscal_
     46 
     47 // Google-local: Use the function version of these, so that we don't need
     48 // the built-in Fortran wrappers.
     49 #define F77_sdot   sdot_
     50 #define F77_ddot   ddot_
     51 #define F77_dsdot   dsdot_
     52 #define F77_sdsdot   sdsdot_
     53 #define F77_snrm2  snrm2_
     54 #define F77_sasum  sasum_
     55 #define F77_dnrm2  dnrm2_
     56 #define F77_dasum  dasum_
     57 #define F77_isamax isamax_
     58 #define F77_idamax idamax_
     59 #define F77_icamax icamax_
     60 #define F77_izamax izamax_
     61 #define F77_scnrm2  scnrm2_
     62 #define F77_scasum  scasum_
     63 #define F77_dznrm2  dznrm2_
     64 #define F77_dzasum  dzasum_
     65 
     66 // Google-local: Use Eigen's "subroutine" versions of these functions, not
     67 // the built-in Fortran wrappers.
     68 #define F77_cdotc_sub  cdotcw_
     69 #define F77_cdotu_sub  cdotuw_
     70 #define F77_zdotu_sub  zdotuw_
     71 #define F77_zdotc_sub  zdotcw_
     72 
     73 /*
     74  * Level 2 BLAS
     75  */
     76 #define F77_ssymv      ssymv_
     77 #define F77_ssbmv      ssbmv_
     78 #define F77_sspmv      sspmv_
     79 #define F77_sger       sger_
     80 #define F77_ssyr       ssyr_
     81 #define F77_sspr       sspr_
     82 #define F77_ssyr2      ssyr2_
     83 #define F77_sspr2      sspr2_
     84 #define F77_dsymv      dsymv_
     85 #define F77_dsbmv      dsbmv_
     86 #define F77_dspmv      dspmv_
     87 #define F77_dger       dger_
     88 #define F77_dsyr       dsyr_
     89 #define F77_dspr       dspr_
     90 #define F77_dsyr2      dsyr2_
     91 #define F77_dspr2      dspr2_
     92 #define F77_chemv      chemv_
     93 #define F77_chbmv      chbmv_
     94 #define F77_chpmv      chpmv_
     95 #define F77_cgeru      cgeru_
     96 #define F77_cgerc      cgerc_
     97 #define F77_cher       cher_
     98 #define F77_chpr       chpr_
     99 #define F77_cher2      cher2_
    100 #define F77_chpr2      chpr2_
    101 #define F77_zhemv      zhemv_
    102 #define F77_zhbmv      zhbmv_
    103 #define F77_zhpmv      zhpmv_
    104 #define F77_zgeru      zgeru_
    105 #define F77_zgerc      zgerc_
    106 #define F77_zher       zher_
    107 #define F77_zhpr       zhpr_
    108 #define F77_zher2      zher2_
    109 #define F77_zhpr2      zhpr2_
    110 #define F77_sgemv      sgemv_
    111 #define F77_sgbmv      sgbmv_
    112 #define F77_strmv      strmv_
    113 #define F77_stbmv      stbmv_
    114 #define F77_stpmv      stpmv_
    115 #define F77_strsv      strsv_
    116 #define F77_stbsv      stbsv_
    117 #define F77_stpsv      stpsv_
    118 #define F77_dgemv      dgemv_
    119 #define F77_dgbmv      dgbmv_
    120 #define F77_dtrmv      dtrmv_
    121 #define F77_dtbmv      dtbmv_
    122 #define F77_dtpmv      dtpmv_
    123 #define F77_dtrsv      dtrsv_
    124 #define F77_dtbsv      dtbsv_
    125 #define F77_dtpsv      dtpsv_
    126 #define F77_cgemv      cgemv_
    127 #define F77_cgbmv      cgbmv_
    128 #define F77_ctrmv      ctrmv_
    129 #define F77_ctbmv      ctbmv_
    130 #define F77_ctpmv      ctpmv_
    131 #define F77_ctrsv      ctrsv_
    132 #define F77_ctbsv      ctbsv_
    133 #define F77_ctpsv      ctpsv_
    134 #define F77_zgemv      zgemv_
    135 #define F77_zgbmv      zgbmv_
    136 #define F77_ztrmv      ztrmv_
    137 #define F77_ztbmv      ztbmv_
    138 #define F77_ztpmv      ztpmv_
    139 #define F77_ztrsv      ztrsv_
    140 #define F77_ztbsv      ztbsv_
    141 #define F77_ztpsv      ztpsv_
    142 /*
    143  * Level 3 BLAS
    144  */
    145 #define F77_chemm      chemm_
    146 #define F77_cherk      cherk_
    147 #define F77_cher2k     cher2k_
    148 #define F77_zhemm      zhemm_
    149 #define F77_zherk      zherk_
    150 #define F77_zher2k     zher2k_
    151 #define F77_sgemm      sgemm_
    152 #define F77_ssymm      ssymm_
    153 #define F77_ssyrk      ssyrk_
    154 #define F77_ssyr2k     ssyr2k_
    155 #define F77_strmm      strmm_
    156 #define F77_strsm      strsm_
    157 #define F77_dgemm      dgemm_
    158 #define F77_dsymm      dsymm_
    159 #define F77_dsyrk      dsyrk_
    160 #define F77_dsyr2k     dsyr2k_
    161 #define F77_dtrmm      dtrmm_
    162 #define F77_dtrsm      dtrsm_
    163 #define F77_cgemm      cgemm_
    164 #define F77_csymm      csymm_
    165 #define F77_csyrk      csyrk_
    166 #define F77_csyr2k     csyr2k_
    167 #define F77_ctrmm      ctrmm_
    168 #define F77_ctrsm      ctrsm_
    169 #define F77_zgemm      zgemm_
    170 #define F77_zsymm      zsymm_
    171 #define F77_zsyrk      zsyrk_
    172 #define F77_zsyr2k     zsyr2k_
    173 #define F77_ztrmm      ztrmm_
    174 #define F77_ztrsm      ztrsm_
    175 
    176 #ifdef __cplusplus
    177 extern "C" {
    178 #endif
    179 
    180    void F77_xerbla(FCHAR, void *);
    181 /*
    182  * Level 1 Fortran Prototypes
    183  */
    184 
    185 /* Single Precision */
    186 
    187    void F77_srot(FINT, float *, FINT, float *, FINT, const float *, const float *);
    188    void F77_srotg(float *,float *,float *,float *);
    189    void F77_srotm( FINT, float *, FINT, float *, FINT, const float *);
    190    void F77_srotmg(float *,float *,float *,const float *, float *);
    191    void F77_sswap( FINT, float *, FINT, float *, FINT);
    192    void F77_scopy( FINT, const float *, FINT, float *, FINT);
    193    void F77_saxpy( FINT, const float *, const float *, FINT, float *, FINT);
    194    void F77_sscal( FINT, const float *, float *, FINT);
    195 
    196    // Google-local: Use the function version of these, so that we don't need
    197    // the built-in Fortran wrappers.
    198    float F77_sdot(FINT, const float *, FINT, const float *, FINT);
    199    float F77_sdsdot( FINT, const float *, const float *, FINT, const float *, FINT);
    200    float F77_snrm2( FINT, const float *, FINT);
    201    float F77_sasum( FINT, const float *, FINT);
    202    int F77_isamax( FINT, const float *, FINT);
    203 
    204 /* Double Precision */
    205 
    206    void F77_drot(FINT, double *, FINT, double *, FINT, const double *, const double *);
    207    void F77_drotg(double *,double *,double *,double *);
    208    void F77_drotm( FINT, double *, FINT, double *, FINT, const double *);
    209    void F77_drotmg(double *,double *,double *,const double *, double *);
    210    void F77_dswap( FINT, double *, FINT, double *, FINT);
    211    void F77_dcopy( FINT, const double *, FINT, double *, FINT);
    212    void F77_daxpy( FINT, const double *, const double *, FINT, double *, FINT);
    213    void F77_dswap( FINT, double *, FINT, double *, FINT);
    214    void F77_dscal( FINT, const double *, double *, FINT);
    215 
    216    // Google-local: Use the function version of these, so that we don't need
    217    // the built-in Fortran wrappers.
    218    double F77_ddot(FINT, const double *, FINT, const double *, FINT);
    219    double F77_dsdot(FINT, const float *, FINT, const float *, FINT);
    220    double F77_dnrm2( FINT, const double *, FINT);
    221    double F77_dasum( FINT, const double *, FINT);
    222    int F77_idamax( FINT, const double * , FINT);
    223 
    224 /* Single Complex Precision */
    225 
    226    void F77_cswap( FINT, void *, FINT, void *, FINT);
    227    void F77_ccopy( FINT, const void *, FINT, void *, FINT);
    228    void F77_caxpy( FINT, const void *, const void *, FINT, void *, FINT);
    229    void F77_cswap( FINT, void *, FINT, void *, FINT);
    230    void F77_cdotc_sub( FINT, const void *, FINT, const void *, FINT, void *);
    231    void F77_cdotu_sub( FINT, const void *, FINT, const void *, FINT, void *);
    232    void F77_cscal( FINT, const void *, void *, FINT);
    233    void F77_csscal( FINT, const float *, void *, FINT);
    234 
    235    // Google-local: Use the function version of these, so that we don't need
    236    // the built-in Fortran wrappers.
    237    int F77_icamax( FINT, const void *, FINT);
    238    float F77_scnrm2( FINT, const void *, FINT);
    239    float F77_scasum( FINT, const void *, FINT);
    240 
    241 /* Double Complex Precision */
    242 
    243    void F77_zswap( FINT, void *, FINT, void *, FINT);
    244    void F77_zcopy( FINT, const void *, FINT, void *, FINT);
    245    void F77_zaxpy( FINT, const void *, const void *, FINT, void *, FINT);
    246    void F77_zswap( FINT, void *, FINT, void *, FINT);
    247    void F77_zdotc_sub( FINT, const void *, FINT, const void *, FINT, void *);
    248    void F77_zdotu_sub( FINT, const void *, FINT, const void *, FINT, void *);
    249    void F77_zdscal( FINT, const double *, void *, FINT);
    250    void F77_zscal( FINT, const void *, void *, FINT);
    251 
    252    // Google-local: Use the function version of these, so that we don't need
    253    // the built-in Fortran wrappers.
    254    int F77_izamax( FINT, const void *, FINT);
    255    double F77_dznrm2( FINT, const void *, FINT);
    256    double F77_dzasum( FINT, const void *, FINT);
    257 
    258 /*
    259  * Level 2 Fortran Prototypes
    260  */
    261 
    262 /* Single Precision */
    263 
    264    void F77_sgemv(FCHAR, FINT, FINT, const float *, const float *, FINT, const float *, FINT, const float *, float *, FINT);
    265    void F77_sgbmv(FCHAR, FINT, FINT, FINT, FINT, const float *,  const float *, FINT, const float *, FINT, const float *, float *, FINT);
    266    void F77_ssymv(FCHAR, FINT, const float *, const float *, FINT, const float *,  FINT, const float *, float *, FINT);
    267    void F77_ssbmv(FCHAR, FINT, FINT, const float *, const float *, FINT, const float *, FINT, const float *, float *, FINT);
    268    void F77_sspmv(FCHAR, FINT, const float *, const float *, const float *, FINT, const float *, float *, FINT);
    269    void F77_strmv( FCHAR, FCHAR, FCHAR, FINT, const float *, FINT, float *, FINT);
    270    void F77_stbmv( FCHAR, FCHAR, FCHAR, FINT, FINT, const float *, FINT, float *, FINT);
    271    void F77_strsv( FCHAR, FCHAR, FCHAR, FINT, const float *, FINT, float *, FINT);
    272    void F77_stbsv( FCHAR, FCHAR, FCHAR, FINT, FINT, const float *, FINT, float *, FINT);
    273    void F77_stpmv( FCHAR, FCHAR, FCHAR, FINT, const float *, float *, FINT);
    274    void F77_stpsv( FCHAR, FCHAR, FCHAR, FINT, const float *, float *, FINT);
    275    void F77_sger( FINT, FINT, const float *, const float *, FINT, const float *, FINT, float *, FINT);
    276    void F77_ssyr(FCHAR, FINT, const float *, const float *, FINT, float *, FINT);
    277    void F77_sspr(FCHAR, FINT, const float *, const float *, FINT, float *);
    278    void F77_sspr2(FCHAR, FINT, const float *, const float *, FINT, const float *, FINT,  float *);
    279    void F77_ssyr2(FCHAR, FINT, const float *, const float *, FINT, const float *, FINT,  float *, FINT);
    280 
    281 /* Double Precision */
    282 
    283    void F77_dgemv(FCHAR, FINT, FINT, const double *, const double *, FINT, const double *, FINT, const double *, double *, FINT);
    284    void F77_dgbmv(FCHAR, FINT, FINT, FINT, FINT, const double *,  const double *, FINT, const double *, FINT, const double *, double *, FINT);
    285    void F77_dsymv(FCHAR, FINT, const double *, const double *, FINT, const double *,  FINT, const double *, double *, FINT);
    286    void F77_dsbmv(FCHAR, FINT, FINT, const double *, const double *, FINT, const double *, FINT, const double *, double *, FINT);
    287    void F77_dspmv(FCHAR, FINT, const double *, const double *, const double *, FINT, const double *, double *, FINT);
    288    void F77_dtrmv( FCHAR, FCHAR, FCHAR, FINT, const double *, FINT, double *, FINT);
    289    void F77_dtbmv( FCHAR, FCHAR, FCHAR, FINT, FINT, const double *, FINT, double *, FINT);
    290    void F77_dtrsv( FCHAR, FCHAR, FCHAR, FINT, const double *, FINT, double *, FINT);
    291    void F77_dtbsv( FCHAR, FCHAR, FCHAR, FINT, FINT, const double *, FINT, double *, FINT);
    292    void F77_dtpmv( FCHAR, FCHAR, FCHAR, FINT, const double *, double *, FINT);
    293    void F77_dtpsv( FCHAR, FCHAR, FCHAR, FINT, const double *, double *, FINT);
    294    void F77_dger( FINT, FINT, const double *, const double *, FINT, const double *, FINT, double *, FINT);
    295    void F77_dsyr(FCHAR, FINT, const double *, const double *, FINT, double *, FINT);
    296    void F77_dspr(FCHAR, FINT, const double *, const double *, FINT, double *);
    297    void F77_dspr2(FCHAR, FINT, const double *, const double *, FINT, const double *, FINT,  double *);
    298    void F77_dsyr2(FCHAR, FINT, const double *, const double *, FINT, const double *, FINT,  double *, FINT);
    299 
    300 /* Single Complex Precision */
    301 
    302    void F77_cgemv(FCHAR, FINT, FINT, const void *, const void *, FINT, const void *, FINT, const void *, void *, FINT);
    303    void F77_cgbmv(FCHAR, FINT, FINT, FINT, FINT, const void *,  const void *, FINT, const void *, FINT, const void *, void *, FINT);
    304    void F77_chemv(FCHAR, FINT, const void *, const void *, FINT, const void *, FINT, const void *, void *, FINT);
    305    void F77_chbmv(FCHAR, FINT, FINT, const void *, const void *, FINT, const void *, FINT, const void *, void *, FINT);
    306    void F77_chpmv(FCHAR, FINT, const void *, const void *, const void *, FINT, const void *, void *, FINT);
    307    void F77_ctrmv( FCHAR, FCHAR, FCHAR, FINT, const void *, FINT, void *, FINT);
    308    void F77_ctbmv( FCHAR, FCHAR, FCHAR, FINT, FINT, const void *, FINT, void *, FINT);
    309    void F77_ctpmv( FCHAR, FCHAR, FCHAR, FINT, const void *, void *, FINT);
    310    void F77_ctrsv( FCHAR, FCHAR, FCHAR, FINT, const void *, FINT, void *, FINT);
    311    void F77_ctbsv( FCHAR, FCHAR, FCHAR, FINT, FINT, const void *, FINT, void *, FINT);
    312    void F77_ctpsv( FCHAR, FCHAR, FCHAR, FINT, const void *, void *,FINT);
    313    void F77_cgerc( FINT, FINT, const void *, const void *, FINT, const void *, FINT, void *, FINT);
    314    void F77_cgeru( FINT, FINT, const void *, const void *, FINT, const void *, FINT, void *,  FINT);
    315    void F77_cher(FCHAR, FINT, const float *, const void *, FINT, void *, FINT);
    316    void F77_cher2(FCHAR, FINT, const void *, const void *, FINT, const void *, FINT, void *, FINT);
    317    void F77_chpr(FCHAR, FINT, const float *, const void *, FINT, void *);
    318    void F77_chpr2(FCHAR, FINT, const float *, const void *, FINT, const void *, FINT, void *);
    319 
    320 /* Double Complex Precision */
    321 
    322    void F77_zgemv(FCHAR, FINT, FINT, const void *, const void *, FINT, const void *, FINT, const void *, void *, FINT);
    323    void F77_zgbmv(FCHAR, FINT, FINT, FINT, FINT, const void *,  const void *, FINT, const void *, FINT, const void *, void *, FINT);
    324    void F77_zhemv(FCHAR, FINT, const void *, const void *, FINT, const void *, FINT, const void *, void *, FINT);
    325    void F77_zhbmv(FCHAR, FINT, FINT, const void *, const void *, FINT, const void *, FINT, const void *, void *, FINT);
    326    void F77_zhpmv(FCHAR, FINT, const void *, const void *, const void *, FINT, const void *, void *, FINT);
    327    void F77_ztrmv( FCHAR, FCHAR, FCHAR, FINT, const void *, FINT, void *, FINT);
    328    void F77_ztbmv( FCHAR, FCHAR, FCHAR, FINT, FINT, const void *, FINT, void *, FINT);
    329    void F77_ztpmv( FCHAR, FCHAR, FCHAR, FINT, const void *, void *, FINT);
    330    void F77_ztrsv( FCHAR, FCHAR, FCHAR, FINT, const void *, FINT, void *, FINT);
    331    void F77_ztbsv( FCHAR, FCHAR, FCHAR, FINT, FINT, const void *, FINT, void *, FINT);
    332    void F77_ztpsv( FCHAR, FCHAR, FCHAR, FINT, const void *, void *,FINT);
    333    void F77_zgerc( FINT, FINT, const void *, const void *, FINT, const void *, FINT, void *, FINT);
    334    void F77_zgeru( FINT, FINT, const void *, const void *, FINT, const void *, FINT, void *,  FINT);
    335    void F77_zher(FCHAR, FINT, const double *, const void *, FINT, void *, FINT);
    336    void F77_zher2(FCHAR, FINT, const void *, const void *, FINT, const void *, FINT, void *, FINT);
    337    void F77_zhpr(FCHAR, FINT, const double *, const void *, FINT, void *);
    338    void F77_zhpr2(FCHAR, FINT, const double *, const void *, FINT, const void *, FINT, void *);
    339 
    340 /*
    341  * Level 3 Fortran Prototypes
    342  */
    343 
    344 /* Single Precision */
    345 
    346    void F77_sgemm(FCHAR, FCHAR, FINT, FINT, FINT, const float *, const float *, FINT, const float *, FINT, const float *, float *, FINT);
    347    void F77_ssymm(FCHAR, FCHAR, FINT, FINT, const float *, const float *, FINT, const float *, FINT, const float *, float *, FINT);
    348    void F77_ssyrk(FCHAR, FCHAR, FINT, FINT, const float *, const float *, FINT, const float *, float *, FINT);
    349    void F77_ssyr2k(FCHAR, FCHAR, FINT, FINT, const float *, const float *, FINT, const float *, FINT, const float *, float *, FINT);
    350    void F77_strmm(FCHAR, FCHAR, FCHAR, FCHAR, FINT, FINT, const float *, const float *, FINT, float *, FINT);
    351    void F77_strsm(FCHAR, FCHAR, FCHAR, FCHAR, FINT, FINT, const float *, const float *, FINT, float *, FINT);
    352 
    353 /* Double Precision */
    354 
    355    void F77_dgemm(FCHAR, FCHAR, FINT, FINT, FINT, const double *, const double *, FINT, const double *, FINT, const double *, double *, FINT);
    356    void F77_dsymm(FCHAR, FCHAR, FINT, FINT, const double *, const double *, FINT, const double *, FINT, const double *, double *, FINT);
    357    void F77_dsyrk(FCHAR, FCHAR, FINT, FINT, const double *, const double *, FINT, const double *, double *, FINT);
    358    void F77_dsyr2k(FCHAR, FCHAR, FINT, FINT, const double *, const double *, FINT, const double *, FINT, const double *, double *, FINT);
    359    void F77_dtrmm(FCHAR, FCHAR, FCHAR, FCHAR, FINT, FINT, const double *, const double *, FINT, double *, FINT);
    360    void F77_dtrsm(FCHAR, FCHAR, FCHAR, FCHAR, FINT, FINT, const double *, const double *, FINT, double *, FINT);
    361 
    362 /* Single Complex Precision */
    363 
    364    void F77_cgemm(FCHAR, FCHAR, FINT, FINT, FINT, const float *, const float *, FINT, const float *, FINT, const float *, float *, FINT);
    365    void F77_csymm(FCHAR, FCHAR, FINT, FINT, const float *, const float *, FINT, const float *, FINT, const float *, float *, FINT);
    366    void F77_chemm(FCHAR, FCHAR, FINT, FINT, const float *, const float *, FINT, const float *, FINT, const float *, float *, FINT);
    367    void F77_csyrk(FCHAR, FCHAR, FINT, FINT, const float *, const float *, FINT, const float *, float *, FINT);
    368    void F77_cherk(FCHAR, FCHAR, FINT, FINT, const float *, const float *, FINT, const float *, float *, FINT);
    369    void F77_csyr2k(FCHAR, FCHAR, FINT, FINT, const float *, const float *, FINT, const float *, FINT, const float *, float *, FINT);
    370    void F77_cher2k(FCHAR, FCHAR, FINT, FINT, const float *, const float *, FINT, const float *, FINT, const float *, float *, FINT);
    371    void F77_ctrmm(FCHAR, FCHAR, FCHAR, FCHAR, FINT, FINT, const float *, const float *, FINT, float *, FINT);
    372    void F77_ctrsm(FCHAR, FCHAR, FCHAR, FCHAR, FINT, FINT, const float *, const float *, FINT, float *, FINT);
    373 
    374 /* Double Complex Precision */
    375 
    376    void F77_zgemm(FCHAR, FCHAR, FINT, FINT, FINT, const double *, const double *, FINT, const double *, FINT, const double *, double *, FINT);
    377    void F77_zsymm(FCHAR, FCHAR, FINT, FINT, const double *, const double *, FINT, const double *, FINT, const double *, double *, FINT);
    378    void F77_zhemm(FCHAR, FCHAR, FINT, FINT, const double *, const double *, FINT, const double *, FINT, const double *, double *, FINT);
    379    void F77_zsyrk(FCHAR, FCHAR, FINT, FINT, const double *, const double *, FINT, const double *, double *, FINT);
    380    void F77_zherk(FCHAR, FCHAR, FINT, FINT, const double *, const double *, FINT, const double *, double *, FINT);
    381    void F77_zsyr2k(FCHAR, FCHAR, FINT, FINT, const double *, const double *, FINT, const double *, FINT, const double *, double *, FINT);
    382    void F77_zher2k(FCHAR, FCHAR, FINT, FINT, const double *, const double *, FINT, const double *, FINT, const double *, double *, FINT);
    383    void F77_ztrmm(FCHAR, FCHAR, FCHAR, FCHAR, FINT, FINT, const double *, const double *, FINT, double *, FINT);
    384    void F77_ztrsm(FCHAR, FCHAR, FCHAR, FCHAR, FINT, FINT, const double *, const double *, FINT, double *, FINT);
    385 
    386 #ifdef __cplusplus
    387 }
    388 #endif
    389 
    390 #endif /*  CBLAS_F77_H */
    391