@@ -45,8 +45,238 @@ void F77_c3chke(char * rout) {
4545 F77_xerbla (cblas_rout ,& cblas_info );
4646 }
4747
48- if (strncmp ( sf ,"cblas_cgemm" ,11 )== 0 ) {
49- cblas_rout = "cblas_cgemm" ;
48+
49+ if (strncmp ( sf ,"cblas_cgemm3m" ,13 )== 0 ) {
50+ cblas_rout = "cblas_cgemm3" ;
51+
52+ cblas_info = 1 ;
53+ cblas_cgemm3m ( INVALID , CblasNoTrans , CblasNoTrans , 0 , 0 , 0 ,
54+ ALPHA , A , 1 , B , 1 , BETA , C , 1 );
55+ chkxer ();
56+ cblas_info = 1 ;
57+ cblas_cgemm3m ( INVALID , CblasNoTrans , CblasTrans , 0 , 0 , 0 ,
58+ ALPHA , A , 1 , B , 1 , BETA , C , 1 );
59+ chkxer ();
60+ cblas_info = 1 ;
61+ cblas_cgemm3m ( INVALID , CblasTrans , CblasNoTrans , 0 , 0 , 0 ,
62+ ALPHA , A , 1 , B , 1 , BETA , C , 1 );
63+ chkxer ();
64+ cblas_info = 1 ;
65+ cblas_cgemm3m ( INVALID , CblasTrans , CblasTrans , 0 , 0 , 0 ,
66+ ALPHA , A , 1 , B , 1 , BETA , C , 1 );
67+ chkxer ();
68+ cblas_info = 2 ; RowMajorStrg = FALSE;
69+ cblas_cgemm3m ( CblasColMajor , INVALID , CblasNoTrans , 0 , 0 , 0 ,
70+ ALPHA , A , 1 , B , 1 , BETA , C , 1 );
71+ chkxer ();
72+ cblas_info = 2 ; RowMajorStrg = FALSE;
73+ cblas_cgemm3m ( CblasColMajor , INVALID , CblasTrans , 0 , 0 , 0 ,
74+ ALPHA , A , 1 , B , 1 , BETA , C , 1 );
75+ chkxer ();
76+ cblas_info = 3 ; RowMajorStrg = FALSE;
77+ cblas_cgemm3m ( CblasColMajor , CblasNoTrans , INVALID , 0 , 0 , 0 ,
78+ ALPHA , A , 1 , B , 1 , BETA , C , 1 );
79+ chkxer ();
80+ cblas_info = 3 ; RowMajorStrg = FALSE;
81+ cblas_cgemm3m ( CblasColMajor , CblasTrans , INVALID , 0 , 0 , 0 ,
82+ ALPHA , A , 1 , B , 1 , BETA , C , 1 );
83+ chkxer ();
84+ cblas_info = 4 ; RowMajorStrg = FALSE;
85+ cblas_cgemm3m ( CblasColMajor , CblasNoTrans , CblasNoTrans , INVALID , 0 , 0 ,
86+ ALPHA , A , 1 , B , 1 , BETA , C , 1 );
87+ chkxer ();
88+ cblas_info = 4 ; RowMajorStrg = FALSE;
89+ cblas_cgemm3m ( CblasColMajor , CblasNoTrans , CblasTrans , INVALID , 0 , 0 ,
90+ ALPHA , A , 1 , B , 1 , BETA , C , 1 );
91+ chkxer ();
92+ cblas_info = 4 ; RowMajorStrg = FALSE;
93+ cblas_cgemm3m ( CblasColMajor , CblasTrans , CblasNoTrans , INVALID , 0 , 0 ,
94+ ALPHA , A , 1 , B , 1 , BETA , C , 1 );
95+ chkxer ();
96+ cblas_info = 4 ; RowMajorStrg = FALSE;
97+ cblas_cgemm3m ( CblasColMajor , CblasTrans , CblasTrans , INVALID , 0 , 0 ,
98+ ALPHA , A , 1 , B , 1 , BETA , C , 1 );
99+ chkxer ();
100+ cblas_info = 5 ; RowMajorStrg = FALSE;
101+ cblas_cgemm3m ( CblasColMajor , CblasNoTrans , CblasNoTrans , 0 , INVALID , 0 ,
102+ ALPHA , A , 1 , B , 1 , BETA , C , 1 );
103+ chkxer ();
104+ cblas_info = 5 ; RowMajorStrg = FALSE;
105+ cblas_cgemm3m ( CblasColMajor , CblasNoTrans , CblasTrans , 0 , INVALID , 0 ,
106+ ALPHA , A , 1 , B , 1 , BETA , C , 1 );
107+ chkxer ();
108+ cblas_info = 5 ; RowMajorStrg = FALSE;
109+ cblas_cgemm3m ( CblasColMajor , CblasTrans , CblasNoTrans , 0 , INVALID , 0 ,
110+ ALPHA , A , 1 , B , 1 , BETA , C , 1 );
111+ chkxer ();
112+ cblas_info = 5 ; RowMajorStrg = FALSE;
113+ cblas_cgemm3m ( CblasColMajor , CblasTrans , CblasTrans , 0 , INVALID , 0 ,
114+ ALPHA , A , 1 , B , 1 , BETA , C , 1 );
115+ chkxer ();
116+ cblas_info = 6 ; RowMajorStrg = FALSE;
117+ cblas_cgemm3m ( CblasColMajor , CblasNoTrans , CblasNoTrans , 0 , 0 , INVALID ,
118+ ALPHA , A , 1 , B , 1 , BETA , C , 1 );
119+ chkxer ();
120+ cblas_info = 6 ; RowMajorStrg = FALSE;
121+ cblas_cgemm3m ( CblasColMajor , CblasNoTrans , CblasTrans , 0 , 0 , INVALID ,
122+ ALPHA , A , 1 , B , 1 , BETA , C , 1 );
123+ chkxer ();
124+ cblas_info = 6 ; RowMajorStrg = FALSE;
125+ cblas_cgemm3m ( CblasColMajor , CblasTrans , CblasNoTrans , 0 , 0 , INVALID ,
126+ ALPHA , A , 1 , B , 1 , BETA , C , 1 );
127+ chkxer ();
128+ cblas_info = 6 ; RowMajorStrg = FALSE;
129+ cblas_cgemm3m ( CblasColMajor , CblasTrans , CblasTrans , 0 , 0 , INVALID ,
130+ ALPHA , A , 1 , B , 1 , BETA , C , 1 );
131+ chkxer ();
132+ cblas_info = 9 ; RowMajorStrg = FALSE;
133+ cblas_cgemm3m ( CblasColMajor , CblasNoTrans , CblasNoTrans , 2 , 0 , 0 ,
134+ ALPHA , A , 1 , B , 1 , BETA , C , 2 );
135+ chkxer ();
136+ cblas_info = 9 ; RowMajorStrg = FALSE;
137+ cblas_cgemm3m ( CblasColMajor , CblasNoTrans , CblasTrans , 2 , 0 , 0 ,
138+ ALPHA , A , 1 , B , 1 , BETA , C , 2 );
139+ chkxer ();
140+ cblas_info = 9 ; RowMajorStrg = FALSE;
141+ cblas_cgemm3m ( CblasColMajor , CblasTrans , CblasNoTrans , 0 , 0 , 2 ,
142+ ALPHA , A , 1 , B , 2 , BETA , C , 1 );
143+ chkxer ();
144+ cblas_info = 9 ; RowMajorStrg = FALSE;
145+ cblas_cgemm3m ( CblasColMajor , CblasTrans , CblasTrans , 0 , 0 , 2 ,
146+ ALPHA , A , 1 , B , 1 , BETA , C , 1 );
147+ chkxer ();
148+ cblas_info = 11 ; RowMajorStrg = FALSE;
149+ cblas_cgemm3m ( CblasColMajor , CblasNoTrans , CblasNoTrans , 0 , 0 , 2 ,
150+ ALPHA , A , 1 , B , 1 , BETA , C , 1 );
151+ chkxer ();
152+ cblas_info = 11 ; RowMajorStrg = FALSE;
153+ cblas_cgemm3m ( CblasColMajor , CblasTrans , CblasNoTrans , 0 , 0 , 2 ,
154+ ALPHA , A , 2 , B , 1 , BETA , C , 1 );
155+ chkxer ();
156+ cblas_info = 11 ; RowMajorStrg = FALSE;
157+ cblas_cgemm3m ( CblasColMajor , CblasNoTrans , CblasTrans , 0 , 2 , 0 ,
158+ ALPHA , A , 1 , B , 1 , BETA , C , 1 );
159+ chkxer ();
160+ cblas_info = 11 ; RowMajorStrg = FALSE;
161+ cblas_cgemm3m ( CblasColMajor , CblasTrans , CblasTrans , 0 , 2 , 0 ,
162+ ALPHA , A , 1 , B , 1 , BETA , C , 1 );
163+ chkxer ();
164+ cblas_info = 14 ; RowMajorStrg = FALSE;
165+ cblas_cgemm3m ( CblasColMajor , CblasNoTrans , CblasNoTrans , 2 , 0 , 0 ,
166+ ALPHA , A , 2 , B , 1 , BETA , C , 1 );
167+ chkxer ();
168+ cblas_info = 14 ; RowMajorStrg = FALSE;
169+ cblas_cgemm3m ( CblasColMajor , CblasNoTrans , CblasTrans , 2 , 0 , 0 ,
170+ ALPHA , A , 2 , B , 1 , BETA , C , 1 );
171+ chkxer ();
172+ cblas_info = 14 ; RowMajorStrg = FALSE;
173+ cblas_cgemm3m ( CblasColMajor , CblasTrans , CblasNoTrans , 2 , 0 , 0 ,
174+ ALPHA , A , 1 , B , 1 , BETA , C , 1 );
175+ chkxer ();
176+ cblas_info = 14 ; RowMajorStrg = FALSE;
177+ cblas_cgemm3m ( CblasColMajor , CblasTrans , CblasTrans , 2 , 0 , 0 ,
178+ ALPHA , A , 1 , B , 1 , BETA , C , 1 );
179+ chkxer ();
180+ cblas_info = 4 ; RowMajorStrg = TRUE;
181+ cblas_cgemm3m ( CblasRowMajor , CblasNoTrans , CblasNoTrans , INVALID , 0 , 0 ,
182+ ALPHA , A , 1 , B , 1 , BETA , C , 1 );
183+ chkxer ();
184+ cblas_info = 4 ; RowMajorStrg = TRUE;
185+ cblas_cgemm3m ( CblasRowMajor , CblasNoTrans , CblasTrans , INVALID , 0 , 0 ,
186+ ALPHA , A , 1 , B , 1 , BETA , C , 1 );
187+ chkxer ();
188+ cblas_info = 4 ; RowMajorStrg = TRUE;
189+ cblas_cgemm3m ( CblasRowMajor , CblasTrans , CblasNoTrans , INVALID , 0 , 0 ,
190+ ALPHA , A , 1 , B , 1 , BETA , C , 1 );
191+ chkxer ();
192+ cblas_info = 4 ; RowMajorStrg = TRUE;
193+ cblas_cgemm3m ( CblasRowMajor , CblasTrans , CblasTrans , INVALID , 0 , 0 ,
194+ ALPHA , A , 1 , B , 1 , BETA , C , 1 );
195+ chkxer ();
196+ cblas_info = 5 ; RowMajorStrg = TRUE;
197+ cblas_cgemm3m ( CblasRowMajor , CblasNoTrans , CblasNoTrans , 0 , INVALID , 0 ,
198+ ALPHA , A , 1 , B , 1 , BETA , C , 1 );
199+ chkxer ();
200+ cblas_info = 5 ; RowMajorStrg = TRUE;
201+ cblas_cgemm3m ( CblasRowMajor , CblasNoTrans , CblasTrans , 0 , INVALID , 0 ,
202+ ALPHA , A , 1 , B , 1 , BETA , C , 1 );
203+ chkxer ();
204+ cblas_info = 5 ; RowMajorStrg = TRUE;
205+ cblas_cgemm3m ( CblasRowMajor , CblasTrans , CblasNoTrans , 0 , INVALID , 0 ,
206+ ALPHA , A , 1 , B , 1 , BETA , C , 1 );
207+ chkxer ();
208+ cblas_info = 5 ; RowMajorStrg = TRUE;
209+ cblas_cgemm3m ( CblasRowMajor , CblasTrans , CblasTrans , 0 , INVALID , 0 ,
210+ ALPHA , A , 1 , B , 1 , BETA , C , 1 );
211+ chkxer ();
212+ cblas_info = 6 ; RowMajorStrg = TRUE;
213+ cblas_cgemm3m ( CblasRowMajor , CblasNoTrans , CblasNoTrans , 0 , 0 , INVALID ,
214+ ALPHA , A , 1 , B , 1 , BETA , C , 1 );
215+ chkxer ();
216+ cblas_info = 6 ; RowMajorStrg = TRUE;
217+ cblas_cgemm3m ( CblasRowMajor , CblasNoTrans , CblasTrans , 0 , 0 , INVALID ,
218+ ALPHA , A , 1 , B , 1 , BETA , C , 1 );
219+ chkxer ();
220+ cblas_info = 6 ; RowMajorStrg = TRUE;
221+ cblas_cgemm3m ( CblasRowMajor , CblasTrans , CblasNoTrans , 0 , 0 , INVALID ,
222+ ALPHA , A , 1 , B , 1 , BETA , C , 1 );
223+ chkxer ();
224+ cblas_info = 6 ; RowMajorStrg = TRUE;
225+ cblas_cgemm3m ( CblasRowMajor , CblasTrans , CblasTrans , 0 , 0 , INVALID ,
226+ ALPHA , A , 1 , B , 1 , BETA , C , 1 );
227+ chkxer ();
228+ cblas_info = 9 ; RowMajorStrg = TRUE;
229+ cblas_cgemm3m ( CblasRowMajor , CblasNoTrans , CblasNoTrans , 0 , 0 , 2 ,
230+ ALPHA , A , 1 , B , 1 , BETA , C , 2 );
231+ chkxer ();
232+ cblas_info = 9 ; RowMajorStrg = TRUE;
233+ cblas_cgemm3m ( CblasRowMajor , CblasNoTrans , CblasTrans , 0 , 0 , 2 ,
234+ ALPHA , A , 1 , B , 2 , BETA , C , 2 );
235+ chkxer ();
236+ cblas_info = 9 ; RowMajorStrg = TRUE;
237+ cblas_cgemm3m ( CblasRowMajor , CblasTrans , CblasNoTrans , 2 , 0 , 0 ,
238+ ALPHA , A , 1 , B , 2 , BETA , C , 1 );
239+ chkxer ();
240+ cblas_info = 9 ; RowMajorStrg = TRUE;
241+ cblas_cgemm3m ( CblasRowMajor , CblasTrans , CblasTrans , 2 , 0 , 0 ,
242+ ALPHA , A , 1 , B , 1 , BETA , C , 1 );
243+ chkxer ();
244+ cblas_info = 11 ; RowMajorStrg = TRUE;
245+ cblas_cgemm3m ( CblasRowMajor , CblasNoTrans , CblasNoTrans , 0 , 2 , 0 ,
246+ ALPHA , A , 1 , B , 1 , BETA , C , 1 );
247+ chkxer ();
248+ cblas_info = 11 ; RowMajorStrg = TRUE;
249+ cblas_cgemm3m ( CblasRowMajor , CblasTrans , CblasNoTrans , 0 , 2 , 0 ,
250+ ALPHA , A , 2 , B , 1 , BETA , C , 1 );
251+ chkxer ();
252+ cblas_info = 11 ; RowMajorStrg = TRUE;
253+ cblas_cgemm3m ( CblasRowMajor , CblasNoTrans , CblasTrans , 0 , 0 , 2 ,
254+ ALPHA , A , 2 , B , 1 , BETA , C , 1 );
255+ chkxer ();
256+ cblas_info = 11 ; RowMajorStrg = TRUE;
257+ cblas_cgemm3m ( CblasRowMajor , CblasTrans , CblasTrans , 0 , 0 , 2 ,
258+ ALPHA , A , 1 , B , 1 , BETA , C , 1 );
259+ chkxer ();
260+ cblas_info = 14 ; RowMajorStrg = TRUE;
261+ cblas_cgemm3m ( CblasRowMajor , CblasNoTrans , CblasNoTrans , 0 , 2 , 0 ,
262+ ALPHA , A , 1 , B , 2 , BETA , C , 1 );
263+ chkxer ();
264+ cblas_info = 14 ; RowMajorStrg = TRUE;
265+ cblas_cgemm3m ( CblasRowMajor , CblasNoTrans , CblasTrans , 0 , 2 , 0 ,
266+ ALPHA , A , 1 , B , 1 , BETA , C , 1 );
267+ chkxer ();
268+ cblas_info = 14 ; RowMajorStrg = TRUE;
269+ cblas_cgemm3m ( CblasRowMajor , CblasTrans , CblasNoTrans , 0 , 2 , 0 ,
270+ ALPHA , A , 1 , B , 2 , BETA , C , 1 );
271+ chkxer ();
272+ cblas_info = 14 ; RowMajorStrg = TRUE;
273+ cblas_cgemm3m ( CblasRowMajor , CblasTrans , CblasTrans , 0 , 2 , 0 ,
274+ ALPHA , A , 1 , B , 1 , BETA , C , 1 );
275+ chkxer ();
276+
277+ } else if (strncmp ( sf ,"cblas_cgemm" ,11 )== 0 ) {
278+ cblas_rout = "cblas_cgemm" ;
279+
50280
51281 cblas_info = 1 ;
52282 cblas_cgemm ( INVALID , CblasNoTrans , CblasNoTrans , 0 , 0 , 0 ,
0 commit comments