• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 #include <stdio.h>
2 #include <string.h>
3 #include "cblas.h"
4 #include "cblas_test.h"
5 
6 int cblas_ok, cblas_lerr, cblas_info;
7 int link_xerbla=TRUE;
8 char *cblas_rout;
9 
10 #ifdef F77_Char
11 void F77_xerbla(F77_Char F77_srname, void *vinfo);
12 #else
13 void F77_xerbla(char *srname, void *vinfo);
14 #endif
15 
chkxer(void)16 void chkxer(void) {
17    extern int cblas_ok, cblas_lerr, cblas_info;
18    extern int link_xerbla;
19    extern char *cblas_rout;
20    if (cblas_lerr == 1 ) {
21       printf("***** ILLEGAL VALUE OF PARAMETER NUMBER %d NOT DETECTED BY %s *****\n", cblas_info, cblas_rout);
22       cblas_ok = 0 ;
23    }
24    cblas_lerr = 1 ;
25 }
26 
F77_c2chke(char * rout)27 void F77_c2chke(char *rout) {
28    char *sf = ( rout ) ;
29    float  A[2] = {0.0,0.0},
30           X[2] = {0.0,0.0},
31           Y[2] = {0.0,0.0},
32           ALPHA[2] = {0.0,0.0},
33           BETA[2]  = {0.0,0.0},
34           RALPHA = 0.0;
35    extern int cblas_info, cblas_lerr, cblas_ok;
36    extern int RowMajorStrg;
37    extern char *cblas_rout;
38 
39    if (link_xerbla) /* call these first to link */
40    {
41       cblas_xerbla(cblas_info,cblas_rout,"");
42       F77_xerbla(cblas_rout,&cblas_info);
43    }
44 
45    cblas_ok = TRUE ;
46    cblas_lerr = PASSED ;
47 
48    if (strncmp( sf,"cblas_cgemv",11)==0) {
49       cblas_rout = "cblas_cgemv";
50       cblas_info = 1;
51       cblas_cgemv(INVALID, CblasNoTrans, 0, 0,
52                   ALPHA, A, 1, X, 1, BETA, Y, 1 );
53       chkxer();
54       cblas_info = 2; RowMajorStrg = FALSE;
55       cblas_cgemv(CblasColMajor, INVALID, 0, 0,
56                   ALPHA, A, 1, X, 1, BETA, Y, 1 );
57       chkxer();
58       cblas_info = 3; RowMajorStrg = FALSE;
59       cblas_cgemv(CblasColMajor, CblasNoTrans, INVALID, 0,
60                   ALPHA, A, 1, X, 1, BETA, Y, 1 );
61       chkxer();
62       cblas_info = 4; RowMajorStrg = FALSE;
63       cblas_cgemv(CblasColMajor, CblasNoTrans, 0, INVALID,
64                   ALPHA, A, 1, X, 1, BETA, Y, 1 );
65       chkxer();
66       cblas_info = 7; RowMajorStrg = FALSE;
67       cblas_cgemv(CblasColMajor, CblasNoTrans, 2, 0,
68                   ALPHA, A, 1, X, 1, BETA, Y, 1 );
69       chkxer();
70       cblas_info = 9; RowMajorStrg = FALSE;
71       cblas_cgemv(CblasColMajor, CblasNoTrans, 0, 0,
72                   ALPHA, A, 1, X, 0, BETA, Y, 1 );
73       chkxer();
74       cblas_info = 12; RowMajorStrg = FALSE;
75       cblas_cgemv(CblasColMajor, CblasNoTrans, 0, 0,
76                   ALPHA, A, 1, X, 1, BETA, Y, 0 );
77       chkxer();
78 
79       cblas_info = 2; RowMajorStrg = TRUE; RowMajorStrg = TRUE;
80       cblas_cgemv(CblasRowMajor, INVALID, 0, 0,
81                   ALPHA, A, 1, X, 1, BETA, Y, 1 );
82       chkxer();
83       cblas_info = 3; RowMajorStrg = TRUE;
84       cblas_cgemv(CblasRowMajor, CblasNoTrans, INVALID, 0,
85                   ALPHA, A, 1, X, 1, BETA, Y, 1 );
86       chkxer();
87       cblas_info = 4; RowMajorStrg = TRUE;
88       cblas_cgemv(CblasRowMajor, CblasNoTrans, 0, INVALID,
89                   ALPHA, A, 1, X, 1, BETA, Y, 1 );
90       chkxer();
91       cblas_info = 7; RowMajorStrg = TRUE;
92       cblas_cgemv(CblasRowMajor, CblasNoTrans, 0, 2,
93                   ALPHA, A, 1, X, 1, BETA, Y, 1 );
94       chkxer();
95       cblas_info = 9; RowMajorStrg = TRUE;
96       cblas_cgemv(CblasRowMajor, CblasNoTrans, 0, 0,
97                   ALPHA, A, 1, X, 0, BETA, Y, 1 );
98       chkxer();
99       cblas_info = 12; RowMajorStrg = TRUE;
100       cblas_cgemv(CblasRowMajor, CblasNoTrans, 0, 0,
101                   ALPHA, A, 1, X, 1, BETA, Y, 0 );
102       chkxer();
103    } else if (strncmp( sf,"cblas_cgbmv",11)==0) {
104       cblas_rout = "cblas_cgbmv";
105       cblas_info = 1; RowMajorStrg = FALSE;
106       cblas_cgbmv(INVALID, CblasNoTrans, 0, 0, 0, 0,
107                   ALPHA, A, 1, X, 1, BETA, Y, 1 );
108       chkxer();
109       cblas_info = 2; RowMajorStrg = FALSE;
110       cblas_cgbmv(CblasColMajor, INVALID, 0, 0, 0, 0,
111                   ALPHA, A, 1, X, 1, BETA, Y, 1 );
112       chkxer();
113       cblas_info = 3; RowMajorStrg = FALSE;
114       cblas_cgbmv(CblasColMajor, CblasNoTrans, INVALID, 0, 0, 0,
115                   ALPHA, A, 1, X, 1, BETA, Y, 1 );
116       chkxer();
117       cblas_info = 4; RowMajorStrg = FALSE;
118       cblas_cgbmv(CblasColMajor, CblasNoTrans, 0, INVALID, 0, 0,
119                   ALPHA, A, 1, X, 1, BETA, Y, 1 );
120       chkxer();
121       cblas_info = 5; RowMajorStrg = FALSE;
122       cblas_cgbmv(CblasColMajor, CblasNoTrans, 0, 0, INVALID, 0,
123                   ALPHA, A, 1, X, 1, BETA, Y, 1 );
124       chkxer();
125       cblas_info = 6; RowMajorStrg = FALSE;
126       cblas_cgbmv(CblasColMajor, CblasNoTrans, 2, 0, 0, INVALID,
127                   ALPHA, A, 1, X, 1, BETA, Y, 1 );
128       chkxer();
129       cblas_info = 9; RowMajorStrg = FALSE;
130       cblas_cgbmv(CblasColMajor, CblasNoTrans, 0, 0, 1, 0,
131                   ALPHA, A, 1, X, 1, BETA, Y, 1 );
132       chkxer();
133       cblas_info = 11; RowMajorStrg = FALSE;
134       cblas_cgbmv(CblasColMajor, CblasNoTrans, 0, 0, 0, 0,
135                   ALPHA, A, 1, X, 0, BETA, Y, 1 );
136       chkxer();
137       cblas_info = 14; RowMajorStrg = FALSE;
138       cblas_cgbmv(CblasColMajor, CblasNoTrans, 0, 0, 0, 0,
139                   ALPHA, A, 1, X, 1, BETA, Y, 0 );
140       chkxer();
141       cblas_info = 2; RowMajorStrg = TRUE;
142       cblas_cgbmv(CblasRowMajor, INVALID, 0, 0, 0, 0,
143                   ALPHA, A, 1, X, 1, BETA, Y, 1 );
144       chkxer();
145       cblas_info = 3; RowMajorStrg = TRUE;
146       cblas_cgbmv(CblasRowMajor, CblasNoTrans, INVALID, 0, 0, 0,
147                   ALPHA, A, 1, X, 1, BETA, Y, 1 );
148       chkxer();
149       cblas_info = 4; RowMajorStrg = TRUE;
150       cblas_cgbmv(CblasRowMajor, CblasNoTrans, 0, INVALID, 0, 0,
151                   ALPHA, A, 1, X, 1, BETA, Y, 1 );
152       chkxer();
153       cblas_info = 5; RowMajorStrg = TRUE;
154       cblas_cgbmv(CblasRowMajor, CblasNoTrans, 0, 0, INVALID, 0,
155                   ALPHA, A, 1, X, 1, BETA, Y, 1 );
156       chkxer();
157       cblas_info = 6; RowMajorStrg = TRUE;
158       cblas_cgbmv(CblasRowMajor, CblasNoTrans, 2, 0, 0, INVALID,
159                   ALPHA, A, 1, X, 1, BETA, Y, 1 );
160       chkxer();
161       cblas_info = 9; RowMajorStrg = TRUE;
162       cblas_cgbmv(CblasRowMajor, CblasNoTrans, 0, 0, 1, 0,
163                   ALPHA, A, 1, X, 1, BETA, Y, 1 );
164       chkxer();
165       cblas_info = 11; RowMajorStrg = TRUE;
166       cblas_cgbmv(CblasRowMajor, CblasNoTrans, 0, 0, 0, 0,
167                   ALPHA, A, 1, X, 0, BETA, Y, 1 );
168       chkxer();
169       cblas_info = 14; RowMajorStrg = TRUE;
170       cblas_cgbmv(CblasRowMajor, CblasNoTrans, 0, 0, 0, 0,
171                   ALPHA, A, 1, X, 1, BETA, Y, 0 );
172       chkxer();
173    } else if (strncmp( sf,"cblas_chemv",11)==0) {
174       cblas_rout = "cblas_chemv";
175       cblas_info = 1; RowMajorStrg = FALSE;
176       cblas_chemv(INVALID, CblasUpper, 0,
177                   ALPHA, A, 1, X, 1, BETA, Y, 1 );
178       chkxer();
179       cblas_info = 2; RowMajorStrg = FALSE;
180       cblas_chemv(CblasColMajor, INVALID, 0,
181                   ALPHA, A, 1, X, 1, BETA, Y, 1 );
182       chkxer();
183       cblas_info = 3; RowMajorStrg = FALSE;
184       cblas_chemv(CblasColMajor, CblasUpper, INVALID,
185                   ALPHA, A, 1, X, 1, BETA, Y, 1 );
186       chkxer();
187       cblas_info = 6; RowMajorStrg = FALSE;
188       cblas_chemv(CblasColMajor, CblasUpper, 2,
189                   ALPHA, A, 1, X, 1, BETA, Y, 1 );
190       chkxer();
191       cblas_info = 8; RowMajorStrg = FALSE;
192       cblas_chemv(CblasColMajor, CblasUpper, 0,
193                   ALPHA, A, 1, X, 0, BETA, Y, 1 );
194       chkxer();
195       cblas_info = 11; RowMajorStrg = FALSE;
196       cblas_chemv(CblasColMajor, CblasUpper, 0,
197                   ALPHA, A, 1, X, 1, BETA, Y, 0 );
198       chkxer();
199       cblas_info = 2; RowMajorStrg = TRUE;
200       cblas_chemv(CblasRowMajor, INVALID, 0,
201                   ALPHA, A, 1, X, 1, BETA, Y, 1 );
202       chkxer();
203       cblas_info = 3; RowMajorStrg = TRUE;
204       cblas_chemv(CblasRowMajor, CblasUpper, INVALID,
205                   ALPHA, A, 1, X, 1, BETA, Y, 1 );
206       chkxer();
207       cblas_info = 6; RowMajorStrg = TRUE;
208       cblas_chemv(CblasRowMajor, CblasUpper, 2,
209                   ALPHA, A, 1, X, 1, BETA, Y, 1 );
210       chkxer();
211       cblas_info = 8; RowMajorStrg = TRUE;
212       cblas_chemv(CblasRowMajor, CblasUpper, 0,
213                   ALPHA, A, 1, X, 0, BETA, Y, 1 );
214       chkxer();
215       cblas_info = 11; RowMajorStrg = TRUE;
216       cblas_chemv(CblasRowMajor, CblasUpper, 0,
217                   ALPHA, A, 1, X, 1, BETA, Y, 0 );
218       chkxer();
219    } else if (strncmp( sf,"cblas_chbmv",11)==0) {
220       cblas_rout = "cblas_chbmv";
221       cblas_info = 1; RowMajorStrg = FALSE;
222       cblas_chbmv(INVALID, CblasUpper, 0, 0,
223                   ALPHA, A, 1, X, 1, BETA, Y, 1 );
224       chkxer();
225       cblas_info = 2; RowMajorStrg = FALSE;
226       cblas_chbmv(CblasColMajor, INVALID, 0, 0,
227                   ALPHA, A, 1, X, 1, BETA, Y, 1 );
228       chkxer();
229       cblas_info = 3; RowMajorStrg = FALSE;
230       cblas_chbmv(CblasColMajor, CblasUpper, INVALID, 0,
231                   ALPHA, A, 1, X, 1, BETA, Y, 1 );
232       chkxer();
233       cblas_info = 4; RowMajorStrg = FALSE;
234       cblas_chbmv(CblasColMajor, CblasUpper, 0, INVALID,
235                   ALPHA, A, 1, X, 1, BETA, Y, 1 );
236       chkxer();
237       cblas_info = 7; RowMajorStrg = FALSE;
238       cblas_chbmv(CblasColMajor, CblasUpper, 0, 1,
239                   ALPHA, A, 1, X, 1, BETA, Y, 1 );
240       chkxer();
241       cblas_info = 9; RowMajorStrg = FALSE;
242       cblas_chbmv(CblasColMajor, CblasUpper, 0, 0,
243                   ALPHA, A, 1, X, 0, BETA, Y, 1 );
244       chkxer();
245       cblas_info = 12; RowMajorStrg = FALSE;
246       cblas_chbmv(CblasColMajor, CblasUpper, 0, 0,
247                   ALPHA, A, 1, X, 1, BETA, Y, 0 );
248       chkxer();
249       cblas_info = 2; RowMajorStrg = TRUE;
250       cblas_chbmv(CblasRowMajor, INVALID, 0, 0,
251                   ALPHA, A, 1, X, 1, BETA, Y, 1 );
252       chkxer();
253       cblas_info = 3; RowMajorStrg = TRUE;
254       cblas_chbmv(CblasRowMajor, CblasUpper, INVALID, 0,
255                   ALPHA, A, 1, X, 1, BETA, Y, 1 );
256       chkxer();
257       cblas_info = 4; RowMajorStrg = TRUE;
258       cblas_chbmv(CblasRowMajor, CblasUpper, 0, INVALID,
259                   ALPHA, A, 1, X, 1, BETA, Y, 1 );
260       chkxer();
261       cblas_info = 7; RowMajorStrg = TRUE;
262       cblas_chbmv(CblasRowMajor, CblasUpper, 0, 1,
263                   ALPHA, A, 1, X, 1, BETA, Y, 1 );
264       chkxer();
265       cblas_info = 9; RowMajorStrg = TRUE;
266       cblas_chbmv(CblasRowMajor, CblasUpper, 0, 0,
267                   ALPHA, A, 1, X, 0, BETA, Y, 1 );
268       chkxer();
269       cblas_info = 12; RowMajorStrg = TRUE;
270       cblas_chbmv(CblasRowMajor, CblasUpper, 0, 0,
271                   ALPHA, A, 1, X, 1, BETA, Y, 0 );
272       chkxer();
273    } else if (strncmp( sf,"cblas_chpmv",11)==0) {
274       cblas_rout = "cblas_chpmv";
275       cblas_info = 1; RowMajorStrg = FALSE;
276       cblas_chpmv(INVALID, CblasUpper, 0,
277                   ALPHA, A, X, 1, BETA, Y, 1 );
278       chkxer();
279       cblas_info = 2; RowMajorStrg = FALSE;
280       cblas_chpmv(CblasColMajor, INVALID, 0,
281                   ALPHA, A, X, 1, BETA, Y, 1 );
282       chkxer();
283       cblas_info = 3; RowMajorStrg = FALSE;
284       cblas_chpmv(CblasColMajor, CblasUpper, INVALID,
285                   ALPHA, A, X, 1, BETA, Y, 1 );
286       chkxer();
287       cblas_info = 7; RowMajorStrg = FALSE;
288       cblas_chpmv(CblasColMajor, CblasUpper, 0,
289                   ALPHA, A, X, 0, BETA, Y, 1 );
290       chkxer();
291       cblas_info = 10; RowMajorStrg = FALSE;
292       cblas_chpmv(CblasColMajor, CblasUpper, 0,
293                   ALPHA, A, X, 1, BETA, Y, 0 );
294       chkxer();
295       cblas_info = 2; RowMajorStrg = TRUE;
296       cblas_chpmv(CblasRowMajor, INVALID, 0,
297                   ALPHA, A, X, 1, BETA, Y, 1 );
298       chkxer();
299       cblas_info = 3; RowMajorStrg = TRUE;
300       cblas_chpmv(CblasRowMajor, CblasUpper, INVALID,
301                   ALPHA, A, X, 1, BETA, Y, 1 );
302       chkxer();
303       cblas_info = 7; RowMajorStrg = TRUE;
304       cblas_chpmv(CblasRowMajor, CblasUpper, 0,
305                   ALPHA, A, X, 0, BETA, Y, 1 );
306       chkxer();
307       cblas_info = 10; RowMajorStrg = TRUE;
308       cblas_chpmv(CblasRowMajor, CblasUpper, 0,
309                   ALPHA, A, X, 1, BETA, Y, 0 );
310       chkxer();
311    } else if (strncmp( sf,"cblas_ctrmv",11)==0) {
312       cblas_rout = "cblas_ctrmv";
313       cblas_info = 1; RowMajorStrg = FALSE;
314       cblas_ctrmv(INVALID, CblasUpper, CblasNoTrans,
315                   CblasNonUnit, 0, A, 1, X, 1 );
316       chkxer();
317       cblas_info = 2; RowMajorStrg = FALSE;
318       cblas_ctrmv(CblasColMajor, INVALID, CblasNoTrans,
319                   CblasNonUnit, 0, A, 1, X, 1 );
320       chkxer();
321       cblas_info = 3; RowMajorStrg = FALSE;
322       cblas_ctrmv(CblasColMajor, CblasUpper, INVALID,
323                   CblasNonUnit, 0, A, 1, X, 1 );
324       chkxer();
325       cblas_info = 4; RowMajorStrg = FALSE;
326       cblas_ctrmv(CblasColMajor, CblasUpper, CblasNoTrans,
327                   INVALID, 0, A, 1, X, 1 );
328       chkxer();
329       cblas_info = 5; RowMajorStrg = FALSE;
330       cblas_ctrmv(CblasColMajor, CblasUpper, CblasNoTrans,
331                   CblasNonUnit, INVALID, A, 1, X, 1 );
332       chkxer();
333       cblas_info = 7; RowMajorStrg = FALSE;
334       cblas_ctrmv(CblasColMajor, CblasUpper, CblasNoTrans,
335                   CblasNonUnit, 2, A, 1, X, 1 );
336       chkxer();
337       cblas_info = 9; RowMajorStrg = FALSE;
338       cblas_ctrmv(CblasColMajor, CblasUpper, CblasNoTrans,
339                   CblasNonUnit, 0, A, 1, X, 0 );
340       chkxer();
341       cblas_info = 2; RowMajorStrg = TRUE;
342       cblas_ctrmv(CblasRowMajor, INVALID, CblasNoTrans,
343                   CblasNonUnit, 0, A, 1, X, 1 );
344       chkxer();
345       cblas_info = 3; RowMajorStrg = TRUE;
346       cblas_ctrmv(CblasRowMajor, CblasUpper, INVALID,
347                   CblasNonUnit, 0, A, 1, X, 1 );
348       chkxer();
349       cblas_info = 4; RowMajorStrg = TRUE;
350       cblas_ctrmv(CblasRowMajor, CblasUpper, CblasNoTrans,
351                   INVALID, 0, A, 1, X, 1 );
352       chkxer();
353       cblas_info = 5; RowMajorStrg = TRUE;
354       cblas_ctrmv(CblasRowMajor, CblasUpper, CblasNoTrans,
355                   CblasNonUnit, INVALID, A, 1, X, 1 );
356       chkxer();
357       cblas_info = 7; RowMajorStrg = TRUE;
358       cblas_ctrmv(CblasRowMajor, CblasUpper, CblasNoTrans,
359                   CblasNonUnit, 2, A, 1, X, 1 );
360       chkxer();
361       cblas_info = 9; RowMajorStrg = TRUE;
362       cblas_ctrmv(CblasRowMajor, CblasUpper, CblasNoTrans,
363                   CblasNonUnit, 0, A, 1, X, 0 );
364       chkxer();
365    } else if (strncmp( sf,"cblas_ctbmv",11)==0) {
366       cblas_rout = "cblas_ctbmv";
367       cblas_info = 1; RowMajorStrg = FALSE;
368       cblas_ctbmv(INVALID, CblasUpper, CblasNoTrans,
369                   CblasNonUnit, 0, 0, A, 1, X, 1 );
370       chkxer();
371       cblas_info = 2; RowMajorStrg = FALSE;
372       cblas_ctbmv(CblasColMajor, INVALID, CblasNoTrans,
373                   CblasNonUnit, 0, 0, A, 1, X, 1 );
374       chkxer();
375       cblas_info = 3; RowMajorStrg = FALSE;
376       cblas_ctbmv(CblasColMajor, CblasUpper, INVALID,
377                   CblasNonUnit, 0, 0, A, 1, X, 1 );
378       chkxer();
379       cblas_info = 4; RowMajorStrg = FALSE;
380       cblas_ctbmv(CblasColMajor, CblasUpper, CblasNoTrans,
381                   INVALID, 0, 0, A, 1, X, 1 );
382       chkxer();
383       cblas_info = 5; RowMajorStrg = FALSE;
384       cblas_ctbmv(CblasColMajor, CblasUpper, CblasNoTrans,
385                   CblasNonUnit, INVALID, 0, A, 1, X, 1 );
386       chkxer();
387       cblas_info = 6; RowMajorStrg = FALSE;
388       cblas_ctbmv(CblasColMajor, CblasUpper, CblasNoTrans,
389                   CblasNonUnit, 0, INVALID, A, 1, X, 1 );
390       chkxer();
391       cblas_info = 8; RowMajorStrg = FALSE;
392       cblas_ctbmv(CblasColMajor, CblasUpper, CblasNoTrans,
393                   CblasNonUnit, 0, 1, A, 1, X, 1 );
394       chkxer();
395       cblas_info = 10; RowMajorStrg = FALSE;
396       cblas_ctbmv(CblasColMajor, CblasUpper, CblasNoTrans,
397                   CblasNonUnit, 0, 0, A, 1, X, 0 );
398       chkxer();
399       cblas_info = 2; RowMajorStrg = TRUE;
400       cblas_ctbmv(CblasRowMajor, INVALID, CblasNoTrans,
401                   CblasNonUnit, 0, 0, A, 1, X, 1 );
402       chkxer();
403       cblas_info = 3; RowMajorStrg = TRUE;
404       cblas_ctbmv(CblasRowMajor, CblasUpper, INVALID,
405                   CblasNonUnit, 0, 0, A, 1, X, 1 );
406       chkxer();
407       cblas_info = 4; RowMajorStrg = TRUE;
408       cblas_ctbmv(CblasRowMajor, CblasUpper, CblasNoTrans,
409                   INVALID, 0, 0, A, 1, X, 1 );
410       chkxer();
411       cblas_info = 5; RowMajorStrg = TRUE;
412       cblas_ctbmv(CblasRowMajor, CblasUpper, CblasNoTrans,
413                   CblasNonUnit, INVALID, 0, A, 1, X, 1 );
414       chkxer();
415       cblas_info = 6; RowMajorStrg = TRUE;
416       cblas_ctbmv(CblasRowMajor, CblasUpper, CblasNoTrans,
417                   CblasNonUnit, 0, INVALID, A, 1, X, 1 );
418       chkxer();
419       cblas_info = 8; RowMajorStrg = TRUE;
420       cblas_ctbmv(CblasRowMajor, CblasUpper, CblasNoTrans,
421                   CblasNonUnit, 0, 1, A, 1, X, 1 );
422       chkxer();
423       cblas_info = 10; RowMajorStrg = TRUE;
424       cblas_ctbmv(CblasRowMajor, CblasUpper, CblasNoTrans,
425                   CblasNonUnit, 0, 0, A, 1, X, 0 );
426       chkxer();
427    } else if (strncmp( sf,"cblas_ctpmv",11)==0) {
428       cblas_rout = "cblas_ctpmv";
429       cblas_info = 1; RowMajorStrg = FALSE;
430       cblas_ctpmv(INVALID, CblasUpper, CblasNoTrans,
431                   CblasNonUnit, 0, A, X, 1 );
432       chkxer();
433       cblas_info = 2; RowMajorStrg = FALSE;
434       cblas_ctpmv(CblasColMajor, INVALID, CblasNoTrans,
435                   CblasNonUnit, 0, A, X, 1 );
436       chkxer();
437       cblas_info = 3; RowMajorStrg = FALSE;
438       cblas_ctpmv(CblasColMajor, CblasUpper, INVALID,
439                   CblasNonUnit, 0, A, X, 1 );
440       chkxer();
441       cblas_info = 4; RowMajorStrg = FALSE;
442       cblas_ctpmv(CblasColMajor, CblasUpper, CblasNoTrans,
443                   INVALID, 0, A, X, 1 );
444       chkxer();
445       cblas_info = 5; RowMajorStrg = FALSE;
446       cblas_ctpmv(CblasColMajor, CblasUpper, CblasNoTrans,
447                   CblasNonUnit, INVALID, A, X, 1 );
448       chkxer();
449       cblas_info = 8; RowMajorStrg = FALSE;
450       cblas_ctpmv(CblasColMajor, CblasUpper, CblasNoTrans,
451                   CblasNonUnit, 0, A, X, 0 );
452       chkxer();
453       cblas_info = 2; RowMajorStrg = TRUE;
454       cblas_ctpmv(CblasRowMajor, INVALID, CblasNoTrans,
455                   CblasNonUnit, 0, A, X, 1 );
456       chkxer();
457       cblas_info = 3; RowMajorStrg = TRUE;
458       cblas_ctpmv(CblasRowMajor, CblasUpper, INVALID,
459                   CblasNonUnit, 0, A, X, 1 );
460       chkxer();
461       cblas_info = 4; RowMajorStrg = TRUE;
462       cblas_ctpmv(CblasRowMajor, CblasUpper, CblasNoTrans,
463                   INVALID, 0, A, X, 1 );
464       chkxer();
465       cblas_info = 5; RowMajorStrg = TRUE;
466       cblas_ctpmv(CblasRowMajor, CblasUpper, CblasNoTrans,
467                   CblasNonUnit, INVALID, A, X, 1 );
468       chkxer();
469       cblas_info = 8; RowMajorStrg = TRUE;
470       cblas_ctpmv(CblasRowMajor, CblasUpper, CblasNoTrans,
471                   CblasNonUnit, 0, A, X, 0 );
472       chkxer();
473    } else if (strncmp( sf,"cblas_ctrsv",11)==0) {
474       cblas_rout = "cblas_ctrsv";
475       cblas_info = 1; RowMajorStrg = FALSE;
476       cblas_ctrsv(INVALID, CblasUpper, CblasNoTrans,
477                   CblasNonUnit, 0, A, 1, X, 1 );
478       chkxer();
479       cblas_info = 2; RowMajorStrg = FALSE;
480       cblas_ctrsv(CblasColMajor, INVALID, CblasNoTrans,
481                   CblasNonUnit, 0, A, 1, X, 1 );
482       chkxer();
483       cblas_info = 3; RowMajorStrg = FALSE;
484       cblas_ctrsv(CblasColMajor, CblasUpper, INVALID,
485                   CblasNonUnit, 0, A, 1, X, 1 );
486       chkxer();
487       cblas_info = 4; RowMajorStrg = FALSE;
488       cblas_ctrsv(CblasColMajor, CblasUpper, CblasNoTrans,
489                   INVALID, 0, A, 1, X, 1 );
490       chkxer();
491       cblas_info = 5; RowMajorStrg = FALSE;
492       cblas_ctrsv(CblasColMajor, CblasUpper, CblasNoTrans,
493                   CblasNonUnit, INVALID, A, 1, X, 1 );
494       chkxer();
495       cblas_info = 7; RowMajorStrg = FALSE;
496       cblas_ctrsv(CblasColMajor, CblasUpper, CblasNoTrans,
497                   CblasNonUnit, 2, A, 1, X, 1 );
498       chkxer();
499       cblas_info = 9; RowMajorStrg = FALSE;
500       cblas_ctrsv(CblasColMajor, CblasUpper, CblasNoTrans,
501                   CblasNonUnit, 0, A, 1, X, 0 );
502       chkxer();
503       cblas_info = 2; RowMajorStrg = TRUE;
504       cblas_ctrsv(CblasRowMajor, INVALID, CblasNoTrans,
505                   CblasNonUnit, 0, A, 1, X, 1 );
506       chkxer();
507       cblas_info = 3; RowMajorStrg = TRUE;
508       cblas_ctrsv(CblasRowMajor, CblasUpper, INVALID,
509                   CblasNonUnit, 0, A, 1, X, 1 );
510       chkxer();
511       cblas_info = 4; RowMajorStrg = TRUE;
512       cblas_ctrsv(CblasRowMajor, CblasUpper, CblasNoTrans,
513                   INVALID, 0, A, 1, X, 1 );
514       chkxer();
515       cblas_info = 5; RowMajorStrg = TRUE;
516       cblas_ctrsv(CblasRowMajor, CblasUpper, CblasNoTrans,
517                   CblasNonUnit, INVALID, A, 1, X, 1 );
518       chkxer();
519       cblas_info = 7; RowMajorStrg = TRUE;
520       cblas_ctrsv(CblasRowMajor, CblasUpper, CblasNoTrans,
521                   CblasNonUnit, 2, A, 1, X, 1 );
522       chkxer();
523       cblas_info = 9; RowMajorStrg = TRUE;
524       cblas_ctrsv(CblasRowMajor, CblasUpper, CblasNoTrans,
525                   CblasNonUnit, 0, A, 1, X, 0 );
526       chkxer();
527    } else if (strncmp( sf,"cblas_ctbsv",11)==0) {
528       cblas_rout = "cblas_ctbsv";
529       cblas_info = 1; RowMajorStrg = FALSE;
530       cblas_ctbsv(INVALID, CblasUpper, CblasNoTrans,
531                   CblasNonUnit, 0, 0, A, 1, X, 1 );
532       chkxer();
533       cblas_info = 2; RowMajorStrg = FALSE;
534       cblas_ctbsv(CblasColMajor, INVALID, CblasNoTrans,
535                   CblasNonUnit, 0, 0, A, 1, X, 1 );
536       chkxer();
537       cblas_info = 3; RowMajorStrg = FALSE;
538       cblas_ctbsv(CblasColMajor, CblasUpper, INVALID,
539                   CblasNonUnit, 0, 0, A, 1, X, 1 );
540       chkxer();
541       cblas_info = 4; RowMajorStrg = FALSE;
542       cblas_ctbsv(CblasColMajor, CblasUpper, CblasNoTrans,
543                   INVALID, 0, 0, A, 1, X, 1 );
544       chkxer();
545       cblas_info = 5; RowMajorStrg = FALSE;
546       cblas_ctbsv(CblasColMajor, CblasUpper, CblasNoTrans,
547                   CblasNonUnit, INVALID, 0, A, 1, X, 1 );
548       chkxer();
549       cblas_info = 6; RowMajorStrg = FALSE;
550       cblas_ctbsv(CblasColMajor, CblasUpper, CblasNoTrans,
551                   CblasNonUnit, 0, INVALID, A, 1, X, 1 );
552       chkxer();
553       cblas_info = 8; RowMajorStrg = FALSE;
554       cblas_ctbsv(CblasColMajor, CblasUpper, CblasNoTrans,
555                   CblasNonUnit, 0, 1, A, 1, X, 1 );
556       chkxer();
557       cblas_info = 10; RowMajorStrg = FALSE;
558       cblas_ctbsv(CblasColMajor, CblasUpper, CblasNoTrans,
559                   CblasNonUnit, 0, 0, A, 1, X, 0 );
560       chkxer();
561       cblas_info = 2; RowMajorStrg = TRUE;
562       cblas_ctbsv(CblasRowMajor, INVALID, CblasNoTrans,
563                   CblasNonUnit, 0, 0, A, 1, X, 1 );
564       chkxer();
565       cblas_info = 3; RowMajorStrg = TRUE;
566       cblas_ctbsv(CblasRowMajor, CblasUpper, INVALID,
567                   CblasNonUnit, 0, 0, A, 1, X, 1 );
568       chkxer();
569       cblas_info = 4; RowMajorStrg = TRUE;
570       cblas_ctbsv(CblasRowMajor, CblasUpper, CblasNoTrans,
571                   INVALID, 0, 0, A, 1, X, 1 );
572       chkxer();
573       cblas_info = 5; RowMajorStrg = TRUE;
574       cblas_ctbsv(CblasRowMajor, CblasUpper, CblasNoTrans,
575                   CblasNonUnit, INVALID, 0, A, 1, X, 1 );
576       chkxer();
577       cblas_info = 6; RowMajorStrg = TRUE;
578       cblas_ctbsv(CblasRowMajor, CblasUpper, CblasNoTrans,
579                   CblasNonUnit, 0, INVALID, A, 1, X, 1 );
580       chkxer();
581       cblas_info = 8; RowMajorStrg = TRUE;
582       cblas_ctbsv(CblasRowMajor, CblasUpper, CblasNoTrans,
583                   CblasNonUnit, 0, 1, A, 1, X, 1 );
584       chkxer();
585       cblas_info = 10; RowMajorStrg = TRUE;
586       cblas_ctbsv(CblasRowMajor, CblasUpper, CblasNoTrans,
587                   CblasNonUnit, 0, 0, A, 1, X, 0 );
588       chkxer();
589    } else if (strncmp( sf,"cblas_ctpsv",11)==0) {
590       cblas_rout = "cblas_ctpsv";
591       cblas_info = 1; RowMajorStrg = FALSE;
592       cblas_ctpsv(INVALID, CblasUpper, CblasNoTrans,
593                   CblasNonUnit, 0, A, X, 1 );
594       chkxer();
595       cblas_info = 2; RowMajorStrg = FALSE;
596       cblas_ctpsv(CblasColMajor, INVALID, CblasNoTrans,
597                   CblasNonUnit, 0, A, X, 1 );
598       chkxer();
599       cblas_info = 3; RowMajorStrg = FALSE;
600       cblas_ctpsv(CblasColMajor, CblasUpper, INVALID,
601                   CblasNonUnit, 0, A, X, 1 );
602       chkxer();
603       cblas_info = 4; RowMajorStrg = FALSE;
604       cblas_ctpsv(CblasColMajor, CblasUpper, CblasNoTrans,
605                   INVALID, 0, A, X, 1 );
606       chkxer();
607       cblas_info = 5; RowMajorStrg = FALSE;
608       cblas_ctpsv(CblasColMajor, CblasUpper, CblasNoTrans,
609                   CblasNonUnit, INVALID, A, X, 1 );
610       chkxer();
611       cblas_info = 8; RowMajorStrg = FALSE;
612       cblas_ctpsv(CblasColMajor, CblasUpper, CblasNoTrans,
613                   CblasNonUnit, 0, A, X, 0 );
614       chkxer();
615       cblas_info = 2; RowMajorStrg = TRUE;
616       cblas_ctpsv(CblasRowMajor, INVALID, CblasNoTrans,
617                   CblasNonUnit, 0, A, X, 1 );
618       chkxer();
619       cblas_info = 3; RowMajorStrg = TRUE;
620       cblas_ctpsv(CblasRowMajor, CblasUpper, INVALID,
621                   CblasNonUnit, 0, A, X, 1 );
622       chkxer();
623       cblas_info = 4; RowMajorStrg = TRUE;
624       cblas_ctpsv(CblasRowMajor, CblasUpper, CblasNoTrans,
625                   INVALID, 0, A, X, 1 );
626       chkxer();
627       cblas_info = 5; RowMajorStrg = TRUE;
628       cblas_ctpsv(CblasRowMajor, CblasUpper, CblasNoTrans,
629                   CblasNonUnit, INVALID, A, X, 1 );
630       chkxer();
631       cblas_info = 8; RowMajorStrg = TRUE;
632       cblas_ctpsv(CblasRowMajor, CblasUpper, CblasNoTrans,
633                   CblasNonUnit, 0, A, X, 0 );
634       chkxer();
635    } else if (strncmp( sf,"cblas_cgeru",10)==0) {
636       cblas_rout = "cblas_cgeru";
637       cblas_info = 1; RowMajorStrg = FALSE;
638       cblas_cgeru(INVALID, 0, 0, ALPHA, X, 1, Y, 1, A, 1 );
639       chkxer();
640       cblas_info = 2; RowMajorStrg = FALSE;
641       cblas_cgeru(CblasColMajor, INVALID, 0, ALPHA, X, 1, Y, 1, A, 1 );
642       chkxer();
643       cblas_info = 3; RowMajorStrg = FALSE;
644       cblas_cgeru(CblasColMajor, 0, INVALID, ALPHA, X, 1, Y, 1, A, 1 );
645       chkxer();
646       cblas_info = 6; RowMajorStrg = FALSE;
647       cblas_cgeru(CblasColMajor, 0, 0, ALPHA, X, 0, Y, 1, A, 1 );
648       chkxer();
649       cblas_info = 8; RowMajorStrg = FALSE;
650       cblas_cgeru(CblasColMajor, 0, 0, ALPHA, X, 1, Y, 0, A, 1 );
651       chkxer();
652       cblas_info = 10; RowMajorStrg = FALSE;
653       cblas_cgeru(CblasColMajor, 2, 0, ALPHA, X, 1, Y, 1, A, 1 );
654       chkxer();
655       cblas_info = 2; RowMajorStrg = TRUE;
656       cblas_cgeru(CblasRowMajor, INVALID, 0, ALPHA, X, 1, Y, 1, A, 1 );
657       chkxer();
658       cblas_info = 3; RowMajorStrg = TRUE;
659       cblas_cgeru(CblasRowMajor, 0, INVALID, ALPHA, X, 1, Y, 1, A, 1 );
660       chkxer();
661       cblas_info = 6; RowMajorStrg = TRUE;
662       cblas_cgeru(CblasRowMajor, 0, 0, ALPHA, X, 0, Y, 1, A, 1 );
663       chkxer();
664       cblas_info = 8; RowMajorStrg = TRUE;
665       cblas_cgeru(CblasRowMajor, 0, 0, ALPHA, X, 1, Y, 0, A, 1 );
666       chkxer();
667       cblas_info = 10; RowMajorStrg = TRUE;
668       cblas_cgeru(CblasRowMajor, 0, 2, ALPHA, X, 1, Y, 1, A, 1 );
669       chkxer();
670    } else if (strncmp( sf,"cblas_cgerc",10)==0) {
671       cblas_rout = "cblas_cgerc";
672       cblas_info = 1; RowMajorStrg = FALSE;
673       cblas_cgerc(INVALID, 0, 0, ALPHA, X, 1, Y, 1, A, 1 );
674       chkxer();
675       cblas_info = 2; RowMajorStrg = FALSE;
676       cblas_cgerc(CblasColMajor, INVALID, 0, ALPHA, X, 1, Y, 1, A, 1 );
677       chkxer();
678       cblas_info = 3; RowMajorStrg = FALSE;
679       cblas_cgerc(CblasColMajor, 0, INVALID, ALPHA, X, 1, Y, 1, A, 1 );
680       chkxer();
681       cblas_info = 6; RowMajorStrg = FALSE;
682       cblas_cgerc(CblasColMajor, 0, 0, ALPHA, X, 0, Y, 1, A, 1 );
683       chkxer();
684       cblas_info = 8; RowMajorStrg = FALSE;
685       cblas_cgerc(CblasColMajor, 0, 0, ALPHA, X, 1, Y, 0, A, 1 );
686       chkxer();
687       cblas_info = 10; RowMajorStrg = FALSE;
688       cblas_cgerc(CblasColMajor, 2, 0, ALPHA, X, 1, Y, 1, A, 1 );
689       chkxer();
690       cblas_info = 2; RowMajorStrg = TRUE;
691       cblas_cgerc(CblasRowMajor, INVALID, 0, ALPHA, X, 1, Y, 1, A, 1 );
692       chkxer();
693       cblas_info = 3; RowMajorStrg = TRUE;
694       cblas_cgerc(CblasRowMajor, 0, INVALID, ALPHA, X, 1, Y, 1, A, 1 );
695       chkxer();
696       cblas_info = 6; RowMajorStrg = TRUE;
697       cblas_cgerc(CblasRowMajor, 0, 0, ALPHA, X, 0, Y, 1, A, 1 );
698       chkxer();
699       cblas_info = 8; RowMajorStrg = TRUE;
700       cblas_cgerc(CblasRowMajor, 0, 0, ALPHA, X, 1, Y, 0, A, 1 );
701       chkxer();
702       cblas_info = 10; RowMajorStrg = TRUE;
703       cblas_cgerc(CblasRowMajor, 0, 2, ALPHA, X, 1, Y, 1, A, 1 );
704       chkxer();
705    } else if (strncmp( sf,"cblas_cher2",11)==0) {
706       cblas_rout = "cblas_cher2";
707       cblas_info = 1; RowMajorStrg = FALSE;
708       cblas_cher2(INVALID, CblasUpper, 0, ALPHA, X, 1, Y, 1, A, 1 );
709       chkxer();
710       cblas_info = 2; RowMajorStrg = FALSE;
711       cblas_cher2(CblasColMajor, INVALID, 0, ALPHA, X, 1, Y, 1, A, 1 );
712       chkxer();
713       cblas_info = 3; RowMajorStrg = FALSE;
714       cblas_cher2(CblasColMajor, CblasUpper, INVALID, ALPHA, X, 1, Y, 1, A, 1 );
715       chkxer();
716       cblas_info = 6; RowMajorStrg = FALSE;
717       cblas_cher2(CblasColMajor, CblasUpper, 0, ALPHA, X, 0, Y, 1, A, 1 );
718       chkxer();
719       cblas_info = 8; RowMajorStrg = FALSE;
720       cblas_cher2(CblasColMajor, CblasUpper, 0, ALPHA, X, 1, Y, 0, A, 1 );
721       chkxer();
722       cblas_info = 10; RowMajorStrg = FALSE;
723       cblas_cher2(CblasColMajor, CblasUpper, 2, ALPHA, X, 1, Y, 1, A, 1 );
724       chkxer();
725       cblas_info = 2; RowMajorStrg = TRUE;
726       cblas_cher2(CblasRowMajor, INVALID, 0, ALPHA, X, 1, Y, 1, A, 1 );
727       chkxer();
728       cblas_info = 3; RowMajorStrg = TRUE;
729       cblas_cher2(CblasRowMajor, CblasUpper, INVALID, ALPHA, X, 1, Y, 1, A, 1 );
730       chkxer();
731       cblas_info = 6; RowMajorStrg = TRUE;
732       cblas_cher2(CblasRowMajor, CblasUpper, 0, ALPHA, X, 0, Y, 1, A, 1 );
733       chkxer();
734       cblas_info = 8; RowMajorStrg = TRUE;
735       cblas_cher2(CblasRowMajor, CblasUpper, 0, ALPHA, X, 1, Y, 0, A, 1 );
736       chkxer();
737       cblas_info = 10; RowMajorStrg = TRUE;
738       cblas_cher2(CblasRowMajor, CblasUpper, 2, ALPHA, X, 1, Y, 1, A, 1 );
739       chkxer();
740    } else if (strncmp( sf,"cblas_chpr2",11)==0) {
741       cblas_rout = "cblas_chpr2";
742       cblas_info = 1; RowMajorStrg = FALSE;
743       cblas_chpr2(INVALID, CblasUpper, 0, ALPHA, X, 1, Y, 1, A );
744       chkxer();
745       cblas_info = 2; RowMajorStrg = FALSE;
746       cblas_chpr2(CblasColMajor, INVALID, 0, ALPHA, X, 1, Y, 1, A );
747       chkxer();
748       cblas_info = 3; RowMajorStrg = FALSE;
749       cblas_chpr2(CblasColMajor, CblasUpper, INVALID, ALPHA, X, 1, Y, 1, A );
750       chkxer();
751       cblas_info = 6; RowMajorStrg = FALSE;
752       cblas_chpr2(CblasColMajor, CblasUpper, 0, ALPHA, X, 0, Y, 1, A );
753       chkxer();
754       cblas_info = 8; RowMajorStrg = FALSE;
755       cblas_chpr2(CblasColMajor, CblasUpper, 0, ALPHA, X, 1, Y, 0, A );
756       chkxer();
757       cblas_info = 2; RowMajorStrg = TRUE;
758       cblas_chpr2(CblasRowMajor, INVALID, 0, ALPHA, X, 1, Y, 1, A );
759       chkxer();
760       cblas_info = 3; RowMajorStrg = TRUE;
761       cblas_chpr2(CblasRowMajor, CblasUpper, INVALID, ALPHA, X, 1, Y, 1, A );
762       chkxer();
763       cblas_info = 6; RowMajorStrg = TRUE;
764       cblas_chpr2(CblasRowMajor, CblasUpper, 0, ALPHA, X, 0, Y, 1, A );
765       chkxer();
766       cblas_info = 8; RowMajorStrg = TRUE;
767       cblas_chpr2(CblasRowMajor, CblasUpper, 0, ALPHA, X, 1, Y, 0, A );
768       chkxer();
769    } else if (strncmp( sf,"cblas_cher",10)==0) {
770       cblas_rout = "cblas_cher";
771       cblas_info = 1; RowMajorStrg = FALSE;
772       cblas_cher(INVALID, CblasUpper, 0, RALPHA, X, 1, A, 1 );
773       chkxer();
774       cblas_info = 2; RowMajorStrg = FALSE;
775       cblas_cher(CblasColMajor, INVALID, 0, RALPHA, X, 1, A, 1 );
776       chkxer();
777       cblas_info = 3; RowMajorStrg = FALSE;
778       cblas_cher(CblasColMajor, CblasUpper, INVALID, RALPHA, X, 1, A, 1 );
779       chkxer();
780       cblas_info = 6; RowMajorStrg = FALSE;
781       cblas_cher(CblasColMajor, CblasUpper, 0, RALPHA, X, 0, A, 1 );
782       chkxer();
783       cblas_info = 8; RowMajorStrg = FALSE;
784       cblas_cher(CblasColMajor, CblasUpper, 2, RALPHA, X, 1, A, 1 );
785       chkxer();
786       cblas_info = 2; RowMajorStrg = TRUE;
787       cblas_cher(CblasRowMajor, INVALID, 0, RALPHA, X, 1, A, 1 );
788       chkxer();
789       cblas_info = 3; RowMajorStrg = TRUE;
790       cblas_cher(CblasRowMajor, CblasUpper, INVALID, RALPHA, X, 1, A, 1 );
791       chkxer();
792       cblas_info = 6; RowMajorStrg = TRUE;
793       cblas_cher(CblasRowMajor, CblasUpper, 0, RALPHA, X, 0, A, 1 );
794       chkxer();
795       cblas_info = 8; RowMajorStrg = TRUE;
796       cblas_cher(CblasRowMajor, CblasUpper, 2, RALPHA, X, 1, A, 1 );
797       chkxer();
798    } else if (strncmp( sf,"cblas_chpr",10)==0) {
799       cblas_rout = "cblas_chpr";
800       cblas_info = 1; RowMajorStrg = FALSE;
801       cblas_chpr(INVALID, CblasUpper, 0, RALPHA, X, 1, A );
802       chkxer();
803       cblas_info = 2; RowMajorStrg = FALSE;
804       cblas_chpr(CblasColMajor, INVALID, 0, RALPHA, X, 1, A );
805       chkxer();
806       cblas_info = 3; RowMajorStrg = FALSE;
807       cblas_chpr(CblasColMajor, CblasUpper, INVALID, RALPHA, X, 1, A );
808       chkxer();
809       cblas_info = 6; RowMajorStrg = FALSE;
810       cblas_chpr(CblasColMajor, CblasUpper, 0, RALPHA, X, 0, A );
811       chkxer();
812       cblas_info = 2; RowMajorStrg = FALSE;
813       cblas_chpr(CblasColMajor, INVALID, 0, RALPHA, X, 1, A );
814       chkxer();
815       cblas_info = 3; RowMajorStrg = FALSE;
816       cblas_chpr(CblasColMajor, CblasUpper, INVALID, RALPHA, X, 1, A );
817       chkxer();
818       cblas_info = 6; RowMajorStrg = FALSE;
819       cblas_chpr(CblasColMajor, CblasUpper, 0, RALPHA, X, 0, A );
820       chkxer();
821    }
822    if (cblas_ok == TRUE)
823        printf(" %-12s PASSED THE TESTS OF ERROR-EXITS\n", cblas_rout);
824    else
825        printf("******* %s FAILED THE TESTS OF ERROR-EXITS *******\n",cblas_rout);
826 }
827