fix build error
[platform/upstream/openblas.git] / ctest / cblas_test.h
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 */