Blender V2.61 - r43446

Cnames.h

Go to the documentation of this file.
00001 
00004 /*
00005  * -- SuperLU routine (version 2.0) --
00006  * Univ. of California Berkeley, Xerox Palo Alto Research Center,
00007  * and Lawrence Berkeley National Lab.
00008  * November 1, 1997
00009  *
00010  */
00011 #ifndef __SUPERLU_CNAMES /* allow multiple inclusions */
00012 #define __SUPERLU_CNAMES
00013 
00014 /* We want this flag, safer than putting in build system */
00015 #define Add_
00016 
00017 /*
00018  * These macros define how C routines will be called.  ADD_ assumes that
00019  * they will be called by fortran, which expects C routines to have an
00020  * underscore postfixed to the name (Suns, and the Intel expect this).
00021  * NOCHANGE indicates that fortran will be calling, and that it expects
00022  * the name called by fortran to be identical to that compiled by the C
00023  * (RS6K's do this).  UPCASE says it expects C routines called by fortran
00024  * to be in all upcase (CRAY wants this). 
00025  */
00026 
00027 #define ADD_       0
00028 #define ADD__      1
00029 #define NOCHANGE   2
00030 #define UPCASE     3
00031 #define C_CALL     4
00032 
00033 #ifdef UpCase
00034 #define F77_CALL_C UPCASE
00035 #endif
00036 
00037 #ifdef NoChange
00038 #define F77_CALL_C NOCHANGE
00039 #endif
00040 
00041 #ifdef Add_
00042 #define F77_CALL_C ADD_
00043 #endif
00044 
00045 #ifdef Add__
00046 #define F77_CALL_C ADD__
00047 #endif
00048 
00049 /* Default */
00050 #ifndef F77_CALL_C
00051 #define F77_CALL_C ADD_
00052 #endif
00053 
00054 
00055 #if (F77_CALL_C == ADD_)
00056 /*
00057  * These defines set up the naming scheme required to have a fortran 77
00058  * routine call a C routine
00059  * No redefinition necessary to have following Fortran to C interface:
00060  *           FORTRAN CALL               C DECLARATION
00061  *           call dgemm(...)           void dgemm_(...)
00062  *
00063  * This is the default.
00064  */
00065 
00066 #endif
00067 
00068 #if (F77_CALL_C == ADD__)
00069 /*
00070  * These defines set up the naming scheme required to have a fortran 77
00071  * routine call a C routine 
00072  * for following Fortran to C interface:
00073  *           FORTRAN CALL               C DECLARATION
00074  *           call dgemm(...)           void dgemm__(...)
00075  */
00076 #define sasum_    sasum__
00077 #define isamax_   isamax__
00078 #define scopy_    scopy__
00079 #define sscal_    sscal__
00080 #define sger_     sger__
00081 #define snrm2_    snrm2__
00082 #define ssymv_    ssymv__
00083 #define sdot_     sdot__
00084 #define saxpy_    saxpy__
00085 #define ssyr2_    ssyr2__
00086 #define srot_     srot__
00087 #define sgemv_    sgemv__
00088 #define strsv_    strsv__
00089 #define sgemm_    sgemm__
00090 #define strsm_    strsm__
00091 
00092 #define dasum_    dasum__
00093 #define idamax_   idamax__
00094 #define dcopy_    dcopy__
00095 #define dscal_    dscal__
00096 #define dger_     dger__
00097 #define dnrm2_    dnrm2__
00098 #define dsymv_    dsymv__
00099 #define ddot_     ddot__
00100 #define daxpy_    daxpy__
00101 #define dsyr2_    dsyr2__
00102 #define drot_     drot__
00103 #define dgemv_    dgemv__
00104 #define dtrsv_    dtrsv__
00105 #define dgemm_    dgemm__
00106 #define dtrsm_    dtrsm__
00107 
00108 #define scasum_   scasum__
00109 #define icamax_   icamax__
00110 #define ccopy_    ccopy__
00111 #define cscal_    cscal__
00112 #define scnrm2_   scnrm2__
00113 #define caxpy_    caxpy__
00114 #define cgemv_    cgemv__
00115 #define ctrsv_    ctrsv__
00116 #define cgemm_    cgemm__
00117 #define ctrsm_    ctrsm__
00118 #define cgerc_    cgerc__
00119 #define chemv_    chemv__
00120 #define cher2_    cher2__
00121 
00122 #define dzasum_   dzasum__
00123 #define izamax_   izamax__
00124 #define zcopy_    zcopy__
00125 #define zscal_    zscal__
00126 #define dznrm2_   dznrm2__
00127 #define zaxpy_    zaxpy__
00128 #define zgemv_    zgemv__
00129 #define ztrsv_    ztrsv__
00130 #define zgemm_    zgemm__
00131 #define ztrsm_    ztrsm__
00132 #define zgerc_    zgerc__
00133 #define zhemv_    zhemv__
00134 #define zher2_    zher2__
00135 
00136 #define c_bridge_dgssv_ c_bridge_dgssv__
00137 #define c_fortran_dgssv_ c_fortran_dgssv__
00138 #endif
00139 
00140 #if (F77_CALL_C == UPCASE)
00141 /*
00142  * These defines set up the naming scheme required to have a fortran 77
00143  * routine call a C routine 
00144  * following Fortran to C interface:
00145  *           FORTRAN CALL               C DECLARATION
00146  *           call dgemm(...)           void DGEMM(...)
00147  */
00148 #define sasum_    SASUM
00149 #define isamax_   ISAMAX
00150 #define scopy_    SCOPY
00151 #define sscal_    SSCAL
00152 #define sger_     SGER
00153 #define snrm2_    SNRM2
00154 #define ssymv_    SSYMV
00155 #define sdot_     SDOT
00156 #define saxpy_    SAXPY
00157 #define ssyr2_    SSYR2
00158 #define srot_     SROT
00159 #define sgemv_    SGEMV
00160 #define strsv_    STRSV
00161 #define sgemm_    SGEMM
00162 #define strsm_    STRSM
00163 
00164 #define dasum_    SASUM
00165 #define idamax_   ISAMAX
00166 #define dcopy_    SCOPY
00167 #define dscal_    SSCAL
00168 #define dger_     SGER
00169 #define dnrm2_    SNRM2
00170 #define dsymv_    SSYMV
00171 #define ddot_     SDOT
00172 #define daxpy_    SAXPY
00173 #define dsyr2_    SSYR2
00174 #define drot_     SROT
00175 #define dgemv_    SGEMV
00176 #define dtrsv_    STRSV
00177 #define dgemm_    SGEMM
00178 #define dtrsm_    STRSM
00179 
00180 #define scasum_   SCASUM
00181 #define icamax_   ICAMAX
00182 #define ccopy_    CCOPY
00183 #define cscal_    CSCAL
00184 #define scnrm2_   SCNRM2
00185 #define caxpy_    CAXPY
00186 #define cgemv_    CGEMV
00187 #define ctrsv_    CTRSV
00188 #define cgemm_    CGEMM
00189 #define ctrsm_    CTRSM
00190 #define cgerc_    CGERC
00191 #define chemv_    CHEMV
00192 #define cher2_    CHER2
00193 
00194 #define dzasum_   SCASUM
00195 #define izamax_   ICAMAX
00196 #define zcopy_    CCOPY
00197 #define zscal_    CSCAL
00198 #define dznrm2_   SCNRM2
00199 #define zaxpy_    CAXPY
00200 #define zgemv_    CGEMV
00201 #define ztrsv_    CTRSV
00202 #define zgemm_    CGEMM
00203 #define ztrsm_    CTRSM
00204 #define zgerc_    CGERC
00205 #define zhemv_    CHEMV
00206 #define zher2_    CHER2
00207 
00208 #define c_bridge_dgssv_ C_BRIDGE_DGSSV
00209 #define c_fortran_dgssv_ C_FORTRAN_DGSSV
00210 #endif
00211 
00212 #if (F77_CALL_C == NOCHANGE)
00213 /*
00214  * These defines set up the naming scheme required to have a fortran 77
00215  * routine call a C routine 
00216  * for following Fortran to C interface:
00217  *           FORTRAN CALL               C DECLARATION
00218  *           call dgemm(...)           void dgemm(...)
00219  */
00220 #define sasum_    sasum
00221 #define isamax_   isamax
00222 #define scopy_    scopy
00223 #define sscal_    sscal
00224 #define sger_     sger
00225 #define snrm2_    snrm2
00226 #define ssymv_    ssymv
00227 #define sdot_     sdot
00228 #define saxpy_    saxpy
00229 #define ssyr2_    ssyr2
00230 #define srot_     srot
00231 #define sgemv_    sgemv
00232 #define strsv_    strsv
00233 #define sgemm_    sgemm
00234 #define strsm_    strsm
00235 
00236 #define dasum_    dasum
00237 #define idamax_   idamax
00238 #define dcopy_    dcopy
00239 #define dscal_    dscal
00240 #define dger_     dger
00241 #define dnrm2_    dnrm2
00242 #define dsymv_    dsymv
00243 #define ddot_     ddot
00244 #define daxpy_    daxpy
00245 #define dsyr2_    dsyr2
00246 #define drot_     drot
00247 #define dgemv_    dgemv
00248 #define dtrsv_    dtrsv
00249 #define dgemm_    dgemm
00250 #define dtrsm_    dtrsm
00251 
00252 #define scasum_   scasum
00253 #define icamax_   icamax
00254 #define ccopy_    ccopy
00255 #define cscal_    cscal
00256 #define scnrm2_   scnrm2
00257 #define caxpy_    caxpy
00258 #define cgemv_    cgemv
00259 #define ctrsv_    ctrsv
00260 #define cgemm_    cgemm
00261 #define ctrsm_    ctrsm
00262 #define cgerc_    cgerc
00263 #define chemv_    chemv
00264 #define cher2_    cher2
00265 
00266 #define dzasum_   dzasum
00267 #define izamax_   izamax
00268 #define zcopy_    zcopy
00269 #define zscal_    zscal
00270 #define dznrm2_   dznrm2
00271 #define zaxpy_    zaxpy
00272 #define zgemv_    zgemv
00273 #define ztrsv_    ztrsv
00274 #define zgemm_    zgemm
00275 #define ztrsm_    ztrsm
00276 #define zgerc_    zgerc
00277 #define zhemv_    zhemv
00278 #define zher2_    zher2
00279 
00280 #define c_bridge_dgssv_ c_bridge_dgssv
00281 #define c_fortran_dgssv_ c_fortran_dgssv
00282 #endif
00283 
00284 #endif /* __SUPERLU_CNAMES */