1 /* 2 * cblas_test.h 3 * Written by Keita Teranishi 4 */ 5 #ifndef CBLAS_TEST_H 6 #define CBLAS_TEST_H 7 #include "cblas.h" 8 9 #ifdef USE64BITINT 10 #define int long 11 #endif 12 13 #define TRUE 1 14 #define PASSED 1 15 #define TEST_ROW_MJR 1 16 17 #define FALSE 0 18 #define FAILED 0 19 #define TEST_COL_MJR 0 20 21 #define INVALID -1 22 #define UNDEFINED -1 23 24 typedef struct { float real; float imag; } CBLAS_TEST_COMPLEX; 25 typedef struct { double real; double imag; } CBLAS_TEST_ZOMPLEX; 26 27 #if defined(ADD_) 28 /* 29 * Level 1 BLAS 30 */ 31 #define F77_srotg srotgtest_ 32 #define F77_srotmg srotmgtest_ 33 #define F77_srot srottest_ 34 #define F77_srotm srotmtest_ 35 #define F77_drotg drotgtest_ 36 #define F77_drotmg drotmgtest_ 37 #define F77_drot drottest_ 38 #define F77_drotm drotmtest_ 39 #define F77_sswap sswaptest_ 40 #define F77_scopy scopytest_ 41 #define F77_saxpy saxpytest_ 42 #define F77_isamax isamaxtest_ 43 #define F77_dswap dswaptest_ 44 #define F77_dcopy dcopytest_ 45 #define F77_daxpy daxpytest_ 46 #define F77_idamax idamaxtest_ 47 #define F77_cswap cswaptest_ 48 #define F77_ccopy ccopytest_ 49 #define F77_caxpy caxpytest_ 50 #define F77_icamax icamaxtest_ 51 #define F77_zswap zswaptest_ 52 #define F77_zcopy zcopytest_ 53 #define F77_zaxpy zaxpytest_ 54 #define F77_izamax izamaxtest_ 55 #define F77_sdot sdottest_ 56 #define F77_ddot ddottest_ 57 #define F77_dsdot dsdottest_ 58 #define F77_sscal sscaltest_ 59 #define F77_dscal dscaltest_ 60 #define F77_cscal cscaltest_ 61 #define F77_zscal zscaltest_ 62 #define F77_csscal csscaltest_ 63 #define F77_zdscal zdscaltest_ 64 #define F77_cdotu cdotutest_ 65 #define F77_cdotc cdotctest_ 66 #define F77_zdotu zdotutest_ 67 #define F77_zdotc zdotctest_ 68 #define F77_snrm2 snrm2test_ 69 #define F77_sasum sasumtest_ 70 #define F77_dnrm2 dnrm2test_ 71 #define F77_dasum dasumtest_ 72 #define F77_scnrm2 scnrm2test_ 73 #define F77_scasum scasumtest_ 74 #define F77_dznrm2 dznrm2test_ 75 #define F77_dzasum dzasumtest_ 76 #define F77_sdsdot sdsdottest_ 77 /* 78 * Level 2 BLAS 79 */ 80 #define F77_s2chke cs2chke_ 81 #define F77_d2chke cd2chke_ 82 #define F77_c2chke cc2chke_ 83 #define F77_z2chke cz2chke_ 84 #define F77_ssymv cssymv_ 85 #define F77_ssbmv cssbmv_ 86 #define F77_sspmv csspmv_ 87 #define F77_sger csger_ 88 #define F77_ssyr cssyr_ 89 #define F77_sspr csspr_ 90 #define F77_ssyr2 cssyr2_ 91 #define F77_sspr2 csspr2_ 92 #define F77_dsymv cdsymv_ 93 #define F77_dsbmv cdsbmv_ 94 #define F77_dspmv cdspmv_ 95 #define F77_dger cdger_ 96 #define F77_dsyr cdsyr_ 97 #define F77_dspr cdspr_ 98 #define F77_dsyr2 cdsyr2_ 99 #define F77_dspr2 cdspr2_ 100 #define F77_chemv cchemv_ 101 #define F77_chbmv cchbmv_ 102 #define F77_chpmv cchpmv_ 103 #define F77_cgeru ccgeru_ 104 #define F77_cgerc ccgerc_ 105 #define F77_cher ccher_ 106 #define F77_chpr cchpr_ 107 #define F77_cher2 ccher2_ 108 #define F77_chpr2 cchpr2_ 109 #define F77_zhemv czhemv_ 110 #define F77_zhbmv czhbmv_ 111 #define F77_zhpmv czhpmv_ 112 #define F77_zgeru czgeru_ 113 #define F77_zgerc czgerc_ 114 #define F77_zher czher_ 115 #define F77_zhpr czhpr_ 116 #define F77_zher2 czher2_ 117 #define F77_zhpr2 czhpr2_ 118 #define F77_sgemv csgemv_ 119 #define F77_sgbmv csgbmv_ 120 #define F77_strmv cstrmv_ 121 #define F77_stbmv cstbmv_ 122 #define F77_stpmv cstpmv_ 123 #define F77_strsv cstrsv_ 124 #define F77_stbsv cstbsv_ 125 #define F77_stpsv cstpsv_ 126 #define F77_dgemv cdgemv_ 127 #define F77_dgbmv cdgbmv_ 128 #define F77_dtrmv cdtrmv_ 129 #define F77_dtbmv cdtbmv_ 130 #define F77_dtpmv cdtpmv_ 131 #define F77_dtrsv cdtrsv_ 132 #define F77_dtbsv cdtbsv_ 133 #define F77_dtpsv cdtpsv_ 134 #define F77_cgemv ccgemv_ 135 #define F77_cgbmv ccgbmv_ 136 #define F77_ctrmv cctrmv_ 137 #define F77_ctbmv cctbmv_ 138 #define F77_ctpmv cctpmv_ 139 #define F77_ctrsv cctrsv_ 140 #define F77_ctbsv cctbsv_ 141 #define F77_ctpsv cctpsv_ 142 #define F77_zgemv czgemv_ 143 #define F77_zgbmv czgbmv_ 144 #define F77_ztrmv cztrmv_ 145 #define F77_ztbmv cztbmv_ 146 #define F77_ztpmv cztpmv_ 147 #define F77_ztrsv cztrsv_ 148 #define F77_ztbsv cztbsv_ 149 #define F77_ztpsv cztpsv_ 150 /* 151 * Level 3 BLAS 152 */ 153 #define F77_s3chke cs3chke_ 154 #define F77_d3chke cd3chke_ 155 #define F77_c3chke cc3chke_ 156 #define F77_z3chke cz3chke_ 157 #define F77_chemm cchemm_ 158 #define F77_cherk ccherk_ 159 #define F77_cher2k ccher2k_ 160 #define F77_zhemm czhemm_ 161 #define F77_zherk czherk_ 162 #define F77_zher2k czher2k_ 163 #define F77_sgemm csgemm_ 164 #define F77_ssymm cssymm_ 165 #define F77_ssyrk cssyrk_ 166 #define F77_ssyr2k cssyr2k_ 167 #define F77_strmm cstrmm_ 168 #define F77_strsm cstrsm_ 169 #define F77_dgemm cdgemm_ 170 #define F77_dsymm cdsymm_ 171 #define F77_dsyrk cdsyrk_ 172 #define F77_dsyr2k cdsyr2k_ 173 #define F77_dtrmm cdtrmm_ 174 #define F77_dtrsm cdtrsm_ 175 #define F77_cgemm ccgemm_ 176 #define F77_cgemm3m ccgemm3m_ 177 #define F77_csymm ccsymm_ 178 #define F77_csyrk ccsyrk_ 179 #define F77_csyr2k ccsyr2k_ 180 #define F77_ctrmm cctrmm_ 181 #define F77_ctrsm cctrsm_ 182 #define F77_zgemm czgemm_ 183 #define F77_zgemm3m czgemm3m_ 184 #define F77_zsymm czsymm_ 185 #define F77_zsyrk czsyrk_ 186 #define F77_zsyr2k czsyr2k_ 187 #define F77_ztrmm cztrmm_ 188 #define F77_ztrsm cztrsm_ 189 #elif defined(UPCASE) 190 /* 191 * Level 1 BLAS 192 */ 193 #define F77_srotg SROTGTEST 194 #define F77_srotmg SROTMGTEST 195 #define F77_srot SROTCTEST 196 #define F77_srotm SROTMTEST 197 #define F77_drotg DROTGTEST 198 #define F77_drotmg DROTMGTEST 199 #define F77_drot DROTTEST 200 #define F77_drotm DROTMTEST 201 #define F77_sswap SSWAPTEST 202 #define F77_scopy SCOPYTEST 203 #define F77_saxpy SAXPYTEST 204 #define F77_isamax ISAMAXTEST 205 #define F77_dswap DSWAPTEST 206 #define F77_dcopy DCOPYTEST 207 #define F77_daxpy DAXPYTEST 208 #define F77_idamax IDAMAXTEST 209 #define F77_cswap CSWAPTEST 210 #define F77_ccopy CCOPYTEST 211 #define F77_caxpy CAXPYTEST 212 #define F77_icamax ICAMAXTEST 213 #define F77_zswap ZSWAPTEST 214 #define F77_zcopy ZCOPYTEST 215 #define F77_zaxpy ZAXPYTEST 216 #define F77_izamax IZAMAXTEST 217 #define F77_sdot SDOTTEST 218 #define F77_ddot DDOTTEST 219 #define F77_dsdot DSDOTTEST 220 #define F77_sscal SSCALTEST 221 #define F77_dscal DSCALTEST 222 #define F77_cscal CSCALTEST 223 #define F77_zscal ZSCALTEST 224 #define F77_csscal CSSCALTEST 225 #define F77_zdscal ZDSCALTEST 226 #define F77_cdotu CDOTUTEST 227 #define F77_cdotc CDOTCTEST 228 #define F77_zdotu ZDOTUTEST 229 #define F77_zdotc ZDOTCTEST 230 #define F77_snrm2 SNRM2TEST 231 #define F77_sasum SASUMTEST 232 #define F77_dnrm2 DNRM2TEST 233 #define F77_dasum DASUMTEST 234 #define F77_scnrm2 SCNRM2TEST 235 #define F77_scasum SCASUMTEST 236 #define F77_dznrm2 DZNRM2TEST 237 #define F77_dzasum DZASUMTEST 238 #define F77_sdsdot SDSDOTTEST 239 /* 240 * Level 2 BLAS 241 */ 242 #define F77_s2chke CS2CHKE 243 #define F77_d2chke CD2CHKE 244 #define F77_c2chke CC2CHKE 245 #define F77_z2chke CZ2CHKE 246 #define F77_ssymv CSSYMV 247 #define F77_ssbmv CSSBMV 248 #define F77_sspmv CSSPMV 249 #define F77_sger CSGER 250 #define F77_ssyr CSSYR 251 #define F77_sspr CSSPR 252 #define F77_ssyr2 CSSYR2 253 #define F77_sspr2 CSSPR2 254 #define F77_dsymv CDSYMV 255 #define F77_dsbmv CDSBMV 256 #define F77_dspmv CDSPMV 257 #define F77_dger CDGER 258 #define F77_dsyr CDSYR 259 #define F77_dspr CDSPR 260 #define F77_dsyr2 CDSYR2 261 #define F77_dspr2 CDSPR2 262 #define F77_chemv CCHEMV 263 #define F77_chbmv CCHBMV 264 #define F77_chpmv CCHPMV 265 #define F77_cgeru CCGERU 266 #define F77_cgerc CCGERC 267 #define F77_cher CCHER 268 #define F77_chpr CCHPR 269 #define F77_cher2 CCHER2 270 #define F77_chpr2 CCHPR2 271 #define F77_zhemv CZHEMV 272 #define F77_zhbmv CZHBMV 273 #define F77_zhpmv CZHPMV 274 #define F77_zgeru CZGERU 275 #define F77_zgerc CZGERC 276 #define F77_zher CZHER 277 #define F77_zhpr CZHPR 278 #define F77_zher2 CZHER2 279 #define F77_zhpr2 CZHPR2 280 #define F77_sgemv CSGEMV 281 #define F77_sgbmv CSGBMV 282 #define F77_strmv CSTRMV 283 #define F77_stbmv CSTBMV 284 #define F77_stpmv CSTPMV 285 #define F77_strsv CSTRSV 286 #define F77_stbsv CSTBSV 287 #define F77_stpsv CSTPSV 288 #define F77_dgemv CDGEMV 289 #define F77_dgbmv CDGBMV 290 #define F77_dtrmv CDTRMV 291 #define F77_dtbmv CDTBMV 292 #define F77_dtpmv CDTPMV 293 #define F77_dtrsv CDTRSV 294 #define F77_dtbsv CDTBSV 295 #define F77_dtpsv CDTPSV 296 #define F77_cgemv CCGEMV 297 #define F77_cgbmv CCGBMV 298 #define F77_ctrmv CCTRMV 299 #define F77_ctbmv CCTBMV 300 #define F77_ctpmv CCTPMV 301 #define F77_ctrsv CCTRSV 302 #define F77_ctbsv CCTBSV 303 #define F77_ctpsv CCTPSV 304 #define F77_zgemv CZGEMV 305 #define F77_zgbmv CZGBMV 306 #define F77_ztrmv CZTRMV 307 #define F77_ztbmv CZTBMV 308 #define F77_ztpmv CZTPMV 309 #define F77_ztrsv CZTRSV 310 #define F77_ztbsv CZTBSV 311 #define F77_ztpsv CZTPSV 312 /* 313 * Level 3 BLAS 314 */ 315 #define F77_s3chke CS3CHKE 316 #define F77_d3chke CD3CHKE 317 #define F77_c3chke CC3CHKE 318 #define F77_z3chke CZ3CHKE 319 #define F77_chemm CCHEMM 320 #define F77_cherk CCHERK 321 #define F77_cher2k CCHER2K 322 #define F77_zhemm CZHEMM 323 #define F77_zherk CZHERK 324 #define F77_zher2k CZHER2K 325 #define F77_sgemm CSGEMM 326 #define F77_ssymm CSSYMM 327 #define F77_ssyrk CSSYRK 328 #define F77_ssyr2k CSSYR2K 329 #define F77_strmm CSTRMM 330 #define F77_strsm CSTRSM 331 #define F77_dgemm CDGEMM 332 #define F77_dsymm CDSYMM 333 #define F77_dsyrk CDSYRK 334 #define F77_dsyr2k CDSYR2K 335 #define F77_dtrmm CDTRMM 336 #define F77_dtrsm CDTRSM 337 #define F77_cgemm CCGEMM 338 #define F77_cgemm3m CCGEMM3M 339 #define F77_csymm CCSYMM 340 #define F77_csyrk CCSYRK 341 #define F77_csyr2k CCSYR2K 342 #define F77_ctrmm CCTRMM 343 #define F77_ctrsm CCTRSM 344 #define F77_zgemm CZGEMM 345 #define F77_zgemm3m CZGEMM3M 346 #define F77_zsymm CZSYMM 347 #define F77_zsyrk CZSYRK 348 #define F77_zsyr2k CZSYR2K 349 #define F77_ztrmm CZTRMM 350 #define F77_ztrsm CZTRSM 351 #elif defined(NOCHANGE) 352 /* 353 * Level 1 BLAS 354 */ 355 #define F77_srotg srotgtest 356 #define F77_srotmg srotmgtest 357 #define F77_srot srottest 358 #define F77_srotm srotmtest 359 #define F77_drotg drotgtest 360 #define F77_drotmg drotmgtest 361 #define F77_drot drottest 362 #define F77_drotm drotmtest 363 #define F77_sswap sswaptest 364 #define F77_scopy scopytest 365 #define F77_saxpy saxpytest 366 #define F77_isamax isamaxtest 367 #define F77_dswap dswaptest 368 #define F77_dcopy dcopytest 369 #define F77_daxpy daxpytest 370 #define F77_idamax idamaxtest 371 #define F77_cswap cswaptest 372 #define F77_ccopy ccopytest 373 #define F77_caxpy caxpytest 374 #define F77_icamax icamaxtest 375 #define F77_zswap zswaptest 376 #define F77_zcopy zcopytest 377 #define F77_zaxpy zaxpytest 378 #define F77_izamax izamaxtest 379 #define F77_sdot sdottest 380 #define F77_ddot ddottest 381 #define F77_dsdot dsdottest 382 #define F77_sscal sscaltest 383 #define F77_dscal dscaltest 384 #define F77_cscal cscaltest 385 #define F77_zscal zscaltest 386 #define F77_csscal csscaltest 387 #define F77_zdscal zdscaltest 388 #define F77_cdotu cdotutest 389 #define F77_cdotc cdotctest 390 #define F77_zdotu zdotutest 391 #define F77_zdotc zdotctest 392 #define F77_snrm2 snrm2test 393 #define F77_sasum sasumtest 394 #define F77_dnrm2 dnrm2test 395 #define F77_dasum dasumtest 396 #define F77_scnrm2 scnrm2test 397 #define F77_scasum scasumtest 398 #define F77_dznrm2 dznrm2test 399 #define F77_dzasum dzasumtest 400 #define F77_sdsdot sdsdottest 401 /* 402 * Level 2 BLAS 403 */ 404 #define F77_s2chke cs2chke 405 #define F77_d2chke cd2chke 406 #define F77_c2chke cc2chke 407 #define F77_z2chke cz2chke 408 #define F77_ssymv cssymv 409 #define F77_ssbmv cssbmv 410 #define F77_sspmv csspmv 411 #define F77_sger csger 412 #define F77_ssyr cssyr 413 #define F77_sspr csspr 414 #define F77_ssyr2 cssyr2 415 #define F77_sspr2 csspr2 416 #define F77_dsymv cdsymv 417 #define F77_dsbmv cdsbmv 418 #define F77_dspmv cdspmv 419 #define F77_dger cdger 420 #define F77_dsyr cdsyr 421 #define F77_dspr cdspr 422 #define F77_dsyr2 cdsyr2 423 #define F77_dspr2 cdspr2 424 #define F77_chemv cchemv 425 #define F77_chbmv cchbmv 426 #define F77_chpmv cchpmv 427 #define F77_cgeru ccgeru 428 #define F77_cgerc ccgerc 429 #define F77_cher ccher 430 #define F77_chpr cchpr 431 #define F77_cher2 ccher2 432 #define F77_chpr2 cchpr2 433 #define F77_zhemv czhemv 434 #define F77_zhbmv czhbmv 435 #define F77_zhpmv czhpmv 436 #define F77_zgeru czgeru 437 #define F77_zgerc czgerc 438 #define F77_zher czher 439 #define F77_zhpr czhpr 440 #define F77_zher2 czher2 441 #define F77_zhpr2 czhpr2 442 #define F77_sgemv csgemv 443 #define F77_sgbmv csgbmv 444 #define F77_strmv cstrmv 445 #define F77_stbmv cstbmv 446 #define F77_stpmv cstpmv 447 #define F77_strsv cstrsv 448 #define F77_stbsv cstbsv 449 #define F77_stpsv cstpsv 450 #define F77_dgemv cdgemv 451 #define F77_dgbmv cdgbmv 452 #define F77_dtrmv cdtrmv 453 #define F77_dtbmv cdtbmv 454 #define F77_dtpmv cdtpmv 455 #define F77_dtrsv cdtrsv 456 #define F77_dtbsv cdtbsv 457 #define F77_dtpsv cdtpsv 458 #define F77_cgemv ccgemv 459 #define F77_cgbmv ccgbmv 460 #define F77_ctrmv cctrmv 461 #define F77_ctbmv cctbmv 462 #define F77_ctpmv cctpmv 463 #define F77_ctrsv cctrsv 464 #define F77_ctbsv cctbsv 465 #define F77_ctpsv cctpsv 466 #define F77_zgemv czgemv 467 #define F77_zgbmv czgbmv 468 #define F77_ztrmv cztrmv 469 #define F77_ztbmv cztbmv 470 #define F77_ztpmv cztpmv 471 #define F77_ztrsv cztrsv 472 #define F77_ztbsv cztbsv 473 #define F77_ztpsv cztpsv 474 /* 475 * Level 3 BLAS 476 */ 477 #define F77_s3chke cs3chke 478 #define F77_d3chke cd3chke 479 #define F77_c3chke cc3chke 480 #define F77_z3chke cz3chke 481 #define F77_chemm cchemm 482 #define F77_cherk ccherk 483 #define F77_cher2k ccher2k 484 #define F77_zhemm czhemm 485 #define F77_zherk czherk 486 #define F77_zher2k czher2k 487 #define F77_sgemm csgemm 488 #define F77_ssymm cssymm 489 #define F77_ssyrk cssyrk 490 #define F77_ssyr2k cssyr2k 491 #define F77_strmm cstrmm 492 #define F77_strsm cstrsm 493 #define F77_dgemm cdgemm 494 #define F77_dsymm cdsymm 495 #define F77_dsyrk cdsyrk 496 #define F77_dsyr2k cdsyr2k 497 #define F77_dtrmm cdtrmm 498 #define F77_dtrsm cdtrsm 499 #define F77_cgemm ccgemm 500 #define F77_cgemm3m ccgemm3m 501 #define F77_csymm ccsymm 502 #define F77_csyrk ccsyrk 503 #define F77_csyr2k ccsyr2k 504 #define F77_ctrmm cctrmm 505 #define F77_ctrsm cctrsm 506 #define F77_zgemm czgemm 507 #define F77_zgemm3m czgemm3m 508 #define F77_zsymm czsymm 509 #define F77_zsyrk czsyrk 510 #define F77_zsyr2k czsyr2k 511 #define F77_ztrmm cztrmm 512 #define F77_ztrsm cztrsm 513 #endif 514 515 void get_transpose_type(char *type, enum CBLAS_TRANSPOSE *trans); 516 void get_uplo_type(char *type, enum CBLAS_UPLO *uplo); 517 void get_diag_type(char *type, enum CBLAS_DIAG *diag); 518 void get_side_type(char *type, enum CBLAS_SIDE *side); 519 520 #endif /* CBLAS_TEST_H */ 521