libflame revision_anchor
Functions
bl1_ger.c File Reference

(r)

Functions

void bl1_sger (conj1_t conjx, conj1_t conjy, int m, int n, float *alpha, float *x, int incx, float *y, int incy, float *a, int a_rs, int a_cs)
 
void bl1_dger (conj1_t conjx, conj1_t conjy, int m, int n, double *alpha, double *x, int incx, double *y, int incy, double *a, int a_rs, int a_cs)
 
void bl1_cger (conj1_t conjx, conj1_t conjy, int m, int n, scomplex *alpha, scomplex *x, int incx, scomplex *y, int incy, scomplex *a, int a_rs, int a_cs)
 
void bl1_zger (conj1_t conjx, conj1_t conjy, int m, int n, dcomplex *alpha, dcomplex *x, int incx, dcomplex *y, int incy, dcomplex *a, int a_rs, int a_cs)
 
void bl1_sger_blas (int m, int n, float *alpha, float *x, int incx, float *y, int incy, float *a, int lda)
 
void bl1_dger_blas (int m, int n, double *alpha, double *x, int incx, double *y, int incy, double *a, int lda)
 
void bl1_cgerc_blas (int m, int n, scomplex *alpha, scomplex *x, int incx, scomplex *y, int incy, scomplex *a, int lda)
 
void bl1_cgeru_blas (int m, int n, scomplex *alpha, scomplex *x, int incx, scomplex *y, int incy, scomplex *a, int lda)
 
void bl1_zgerc_blas (int m, int n, dcomplex *alpha, dcomplex *x, int incx, dcomplex *y, int incy, dcomplex *a, int lda)
 
void bl1_zgeru_blas (int m, int n, dcomplex *alpha, dcomplex *x, int incx, dcomplex *y, int incy, dcomplex *a, int lda)
 

Function Documentation

◆ bl1_cger()

void bl1_cger ( conj1_t  conjx,
conj1_t  conjy,
int  m,
int  n,
scomplex alpha,
scomplex x,
int  incx,
scomplex y,
int  incy,
scomplex a,
int  a_rs,
int  a_cs 
)
112{
113 int m_save = m;
114 int n_save = n;
115 scomplex* a_save = a;
116 int a_rs_save = a_rs;
117 int a_cs_save = a_cs;
119 int incx_conj;
120 int lda, inca;
121
122 // Return early if possible.
123 if ( bl1_zero_dim2( m, n ) ) return;
124
125 // If necessary, allocate, initialize, and use a temporary contiguous
126 // copy of the matrix rather than the original matrix.
128 n,
130 &a, &a_rs, &a_cs );
131
132 // Initialize with values assuming column-major storage.
133 lda = a_cs;
134 inca = a_rs;
135
136 // If A is a row-major matrix, then we can use the underlying column-major
137 // BLAS implementation by fiddling with the parameters.
138 if ( bl1_is_row_storage( a_rs, a_cs ) )
139 {
140 bl1_swap_ints( m, n );
145 }
146
147 // Initialize with values assuming no conjugation of x.
148 x_conj = x;
149 incx_conj = incx;
150
151 // We need a temporary vector for the cases when x is conjugated.
152 if ( bl1_is_conj( conjx ) )
153 {
154 x_conj = bl1_callocv( m );
155 incx_conj = 1;
156
158 m,
159 x, incx,
160 x_conj, incx_conj );
161 }
162
163 // Conjugation of y is supported in the BLAS.
164 if ( bl1_is_conj( conjy ) )
165 {
167 n,
168 alpha,
170 y, incy,
171 a, lda );
172 }
173 else
174 {
176 n,
177 alpha,
179 y, incy,
180 a, lda );
181 }
182
183 // Free the temporary conjugated x vector.
184 if ( bl1_is_conj( conjx ) )
185 bl1_cfree( x_conj );
186
187 // Free the temporary contiguous matrix.
189 n_save,
191 &a, &a_rs, &a_cs );
192}
int i
Definition bl1_axmyv2.c:145
void bl1_ccopyv(conj1_t conj, int m, scomplex *x, int incx, scomplex *y, int incy)
Definition bl1_copyv.c:49
void bl1_cgerc_blas(int m, int n, scomplex *alpha, scomplex *x, int incx, scomplex *y, int incy, scomplex *a, int lda)
Definition bl1_ger.c:323
void bl1_cgeru_blas(int m, int n, scomplex *alpha, scomplex *x, int incx, scomplex *y, int incy, scomplex *a, int lda)
Definition bl1_ger.c:345
int bl1_is_row_storage(int rs, int cs)
Definition bl1_is.c:95
int bl1_is_conj(conj1_t conj)
Definition bl1_is.c:42
int bl1_zero_dim2(int m, int n)
Definition bl1_is.c:118
void bl1_cfree(scomplex *p)
Definition bl1_free.c:40
void bl1_ccreate_contigm(int m, int n, scomplex *a_save, int a_rs_save, int a_cs_save, scomplex **a, int *a_rs, int *a_cs)
Definition bl1_create_contigm.c:81
void bl1_cfree_saved_contigm(int m, int n, scomplex *a_save, int a_rs_save, int a_cs_save, scomplex **a, int *a_rs, int *a_cs)
Definition bl1_free_saved_contigm.c:59
scomplex * bl1_callocv(unsigned int n_elem)
Definition bl1_allocv.c:40
@ BLIS1_CONJUGATE
Definition blis_type_defs.h:82
Definition blis_type_defs.h:133

References bl1_callocv(), bl1_ccopyv(), bl1_ccreate_contigm(), bl1_cfree(), bl1_cfree_saved_contigm(), bl1_cgerc_blas(), bl1_cgeru_blas(), bl1_is_conj(), bl1_is_row_storage(), bl1_zero_dim2(), and BLIS1_CONJUGATE.

Referenced by FLA_Apply_H2_UT_l_opc_var1(), FLA_Apply_H2_UT_r_opc_var1(), FLA_Apply_HUD_UT_l_opc_var1(), FLA_Bidiag_UT_u_step_ofc_var3(), FLA_Bidiag_UT_u_step_opc_var2(), FLA_Bidiag_UT_u_step_opc_var3(), FLA_Eig_gest_il_opc_var3(), FLA_Eig_gest_il_opc_var4(), FLA_Eig_gest_iu_opc_var3(), FLA_Eig_gest_iu_opc_var4(), FLA_Eig_gest_nl_opc_var4(), FLA_Eig_gest_nu_opc_var4(), FLA_Ger_external(), FLA_Gerc_external(), FLA_Hess_UT_step_ofc_var2(), FLA_Hess_UT_step_ofc_var3(), FLA_Hess_UT_step_ofc_var4(), FLA_Hess_UT_step_opc_var2(), FLA_Hess_UT_step_opc_var3(), FLA_Hess_UT_step_opc_var4(), FLA_LU_nopiv_opc_var5(), FLA_LU_piv_opc_var5(), FLA_Lyap_h_opc_var2(), FLA_Lyap_n_opc_var2(), FLA_SA_LU_unb(), FLA_Trinv_ln_opc_var3(), FLA_Trinv_ln_opc_var4(), FLA_Trinv_lu_opc_var3(), FLA_Trinv_lu_opc_var4(), FLA_Trinv_un_opc_var3(), FLA_Trinv_un_opc_var4(), FLA_Trinv_uu_opc_var3(), and FLA_Trinv_uu_opc_var4().

◆ bl1_cgerc_blas()

void bl1_cgerc_blas ( int  m,
int  n,
scomplex alpha,
scomplex x,
int  incx,
scomplex y,
int  incy,
scomplex a,
int  lda 
)
324{
325#ifdef BLIS1_ENABLE_CBLAS_INTERFACES
327
329 m,
330 n,
331 alpha,
332 x, incx,
333 y, incy,
334 a, lda );
335#else
336 F77_cgerc ( &m,
337 &n,
338 alpha,
339 x, &incx,
340 y, &incy,
341 a, &lda );
342#endif
343}
void F77_cgerc(int *m, int *n, scomplex *alpha, scomplex *x, int *incx, scomplex *y, int *incy, scomplex *a, int *lda)
CBLAS_ORDER
Definition blis_prototypes_cblas.h:17
@ CblasColMajor
Definition blis_prototypes_cblas.h:17
void cblas_cgerc(const enum CBLAS_ORDER order, const int M, const int N, const void *alpha, const void *X, const int incX, const void *Y, const int incY, void *A, const int lda)

References cblas_cgerc(), CblasColMajor, and F77_cgerc().

Referenced by bl1_cger().

◆ bl1_cgeru_blas()

void bl1_cgeru_blas ( int  m,
int  n,
scomplex alpha,
scomplex x,
int  incx,
scomplex y,
int  incy,
scomplex a,
int  lda 
)
346{
347#ifdef BLIS1_ENABLE_CBLAS_INTERFACES
349
351 m,
352 n,
353 alpha,
354 x, incx,
355 y, incy,
356 a, lda );
357#else
358 F77_cgeru ( &m,
359 &n,
360 alpha,
361 x, &incx,
362 y, &incy,
363 a, &lda );
364#endif
365}
void F77_cgeru(int *m, int *n, scomplex *alpha, scomplex *x, int *incx, scomplex *y, int *incy, scomplex *a, int *lda)
void cblas_cgeru(const enum CBLAS_ORDER order, const int M, const int N, const void *alpha, const void *X, const int incX, const void *Y, const int incY, void *A, const int lda)

References cblas_cgeru(), CblasColMajor, and F77_cgeru().

Referenced by bl1_cger().

◆ bl1_dger()

void bl1_dger ( conj1_t  conjx,
conj1_t  conjy,
int  m,
int  n,
double alpha,
double x,
int  incx,
double y,
int  incy,
double a,
int  a_rs,
int  a_cs 
)
63{
64 int m_save = m;
65 int n_save = n;
66 double* a_save = a;
67 int a_rs_save = a_rs;
68 int a_cs_save = a_cs;
69 int lda, inca;
70
71 // Return early if possible.
72 if ( bl1_zero_dim2( m, n ) ) return;
73
74 // If necessary, allocate, initialize, and use a temporary contiguous
75 // copy of the matrix rather than the original matrix.
77 n,
79 &a, &a_rs, &a_cs );
80
81 // Initialize with values assuming column-major storage.
82 lda = a_cs;
83 inca = a_rs;
84
85 // If A is a row-major matrix, then we can use the underlying column-major
86 // BLAS implementation by fiddling with the parameters.
88 {
89 bl1_swap_ints( m, n );
94 }
95
96 // Initialize with values assuming no conjugation of x.
98 n,
99 alpha,
100 x, incx,
101 y, incy,
102 a, lda );
103
104 // Free the temporary contiguous matrix.
106 n_save,
108 &a, &a_rs, &a_cs );
109}
void bl1_dger_blas(int m, int n, double *alpha, double *x, int incx, double *y, int incy, double *a, int lda)
Definition bl1_ger.c:301
void bl1_dcreate_contigm(int m, int n, double *a_save, int a_rs_save, int a_cs_save, double **a, int *a_rs, int *a_cs)
Definition bl1_create_contigm.c:47
void bl1_dfree_saved_contigm(int m, int n, double *a_save, int a_rs_save, int a_cs_save, double **a, int *a_rs, int *a_cs)
Definition bl1_free_saved_contigm.c:36

References bl1_dcreate_contigm(), bl1_dfree_saved_contigm(), bl1_dger_blas(), bl1_is_row_storage(), and bl1_zero_dim2().

Referenced by FLA_Apply_H2_UT_l_opd_var1(), FLA_Apply_H2_UT_r_opd_var1(), FLA_Apply_HUD_UT_l_opd_var1(), FLA_Bidiag_UT_u_step_ofd_var3(), FLA_Bidiag_UT_u_step_opd_var2(), FLA_Bidiag_UT_u_step_opd_var3(), FLA_Eig_gest_il_opd_var3(), FLA_Eig_gest_il_opd_var4(), FLA_Eig_gest_iu_opd_var3(), FLA_Eig_gest_iu_opd_var4(), FLA_Eig_gest_nl_opd_var4(), FLA_Eig_gest_nu_opd_var4(), FLA_Ger_external(), FLA_Gerc_external(), FLA_Hess_UT_step_ofd_var2(), FLA_Hess_UT_step_ofd_var3(), FLA_Hess_UT_step_ofd_var4(), FLA_Hess_UT_step_opd_var2(), FLA_Hess_UT_step_opd_var3(), FLA_Hess_UT_step_opd_var4(), FLA_LU_nopiv_opd_var5(), FLA_LU_piv_opd_var5(), FLA_Lyap_h_opd_var2(), FLA_Lyap_n_opd_var2(), FLA_SA_LU_unb(), FLA_Trinv_ln_opd_var3(), FLA_Trinv_ln_opd_var4(), FLA_Trinv_lu_opd_var3(), FLA_Trinv_lu_opd_var4(), FLA_Trinv_un_opd_var3(), FLA_Trinv_un_opd_var4(), FLA_Trinv_uu_opd_var3(), and FLA_Trinv_uu_opd_var4().

◆ bl1_dger_blas()

void bl1_dger_blas ( int  m,
int  n,
double alpha,
double x,
int  incx,
double y,
int  incy,
double a,
int  lda 
)
302{
303#ifdef BLIS1_ENABLE_CBLAS_INTERFACES
305
307 m,
308 n,
309 *alpha,
310 x, incx,
311 y, incy,
312 a, lda );
313#else
314 F77_dger( &m,
315 &n,
316 alpha,
317 x, &incx,
318 y, &incy,
319 a, &lda );
320#endif
321}
void F77_dger(int *m, int *n, double *alpha, double *x, int *incx, double *y, int *incy, double *a, int *lda)
void cblas_dger(const enum CBLAS_ORDER order, const int M, const int N, const double alpha, const double *X, const int incX, const double *Y, const int incY, double *A, const int lda)

References cblas_dger(), CblasColMajor, and F77_dger().

Referenced by bl1_dger().

◆ bl1_sger()

void bl1_sger ( conj1_t  conjx,
conj1_t  conjy,
int  m,
int  n,
float alpha,
float x,
int  incx,
float y,
int  incy,
float a,
int  a_rs,
int  a_cs 
)
14{
15 int m_save = m;
16 int n_save = n;
17 float* a_save = a;
18 int a_rs_save = a_rs;
19 int a_cs_save = a_cs;
20 int lda, inca;
21
22 // Return early if possible.
23 if ( bl1_zero_dim2( m, n ) ) return;
24
25 // If necessary, allocate, initialize, and use a temporary contiguous
26 // copy of the matrix rather than the original matrix.
28 n,
30 &a, &a_rs, &a_cs );
31
32 // Initialize with values assuming column-major storage.
33 lda = a_cs;
34 inca = a_rs;
35
36 // If A is a row-major matrix, then we can use the underlying column-major
37 // BLAS implementation by fiddling with the parameters.
39 {
40 bl1_swap_ints( m, n );
45 }
46
47 // Initialize with values assuming no conjugation of x.
49 n,
50 alpha,
51 x, incx,
52 y, incy,
53 a, lda );
54
55 // Free the temporary contiguous matrix.
57 n_save,
59 &a, &a_rs, &a_cs );
60}
void bl1_sger_blas(int m, int n, float *alpha, float *x, int incx, float *y, int incy, float *a, int lda)
Definition bl1_ger.c:279
void bl1_sfree_saved_contigm(int m, int n, float *a_save, int a_rs_save, int a_cs_save, float **a, int *a_rs, int *a_cs)
Definition bl1_free_saved_contigm.c:13
void bl1_screate_contigm(int m, int n, float *a_save, int a_rs_save, int a_cs_save, float **a, int *a_rs, int *a_cs)
Definition bl1_create_contigm.c:13

References bl1_is_row_storage(), bl1_screate_contigm(), bl1_sfree_saved_contigm(), bl1_sger_blas(), and bl1_zero_dim2().

Referenced by FLA_Apply_H2_UT_l_ops_var1(), FLA_Apply_H2_UT_r_ops_var1(), FLA_Apply_HUD_UT_l_ops_var1(), FLA_Bidiag_UT_u_step_ofs_var3(), FLA_Bidiag_UT_u_step_ops_var2(), FLA_Bidiag_UT_u_step_ops_var3(), FLA_Eig_gest_il_ops_var3(), FLA_Eig_gest_il_ops_var4(), FLA_Eig_gest_iu_ops_var3(), FLA_Eig_gest_iu_ops_var4(), FLA_Eig_gest_nl_ops_var4(), FLA_Eig_gest_nu_ops_var4(), FLA_Ger_external(), FLA_Gerc_external(), FLA_Hess_UT_step_ofs_var2(), FLA_Hess_UT_step_ofs_var3(), FLA_Hess_UT_step_ofs_var4(), FLA_Hess_UT_step_ops_var2(), FLA_Hess_UT_step_ops_var3(), FLA_Hess_UT_step_ops_var4(), FLA_LU_nopiv_ops_var5(), FLA_LU_piv_ops_var5(), FLA_Lyap_h_ops_var2(), FLA_Lyap_n_ops_var2(), FLA_SA_LU_unb(), FLA_Trinv_ln_ops_var3(), FLA_Trinv_ln_ops_var4(), FLA_Trinv_lu_ops_var3(), FLA_Trinv_lu_ops_var4(), FLA_Trinv_un_ops_var3(), FLA_Trinv_un_ops_var4(), FLA_Trinv_uu_ops_var3(), and FLA_Trinv_uu_ops_var4().

◆ bl1_sger_blas()

void bl1_sger_blas ( int  m,
int  n,
float alpha,
float x,
int  incx,
float y,
int  incy,
float a,
int  lda 
)
280{
281#ifdef BLIS1_ENABLE_CBLAS_INTERFACES
283
285 m,
286 n,
287 *alpha,
288 x, incx,
289 y, incy,
290 a, lda );
291#else
292 F77_sger( &m,
293 &n,
294 alpha,
295 x, &incx,
296 y, &incy,
297 a, &lda );
298#endif
299}
void F77_sger(int *m, int *n, float *alpha, float *x, int *incx, float *y, int *incy, float *a, int *lda)
void cblas_sger(const enum CBLAS_ORDER order, const int M, const int N, const float alpha, const float *X, const int incX, const float *Y, const int incY, float *A, const int lda)

References cblas_sger(), CblasColMajor, and F77_sger().

Referenced by bl1_sger().

◆ bl1_zger()

void bl1_zger ( conj1_t  conjx,
conj1_t  conjy,
int  m,
int  n,
dcomplex alpha,
dcomplex x,
int  incx,
dcomplex y,
int  incy,
dcomplex a,
int  a_rs,
int  a_cs 
)
195{
196 int m_save = m;
197 int n_save = n;
198 dcomplex* a_save = a;
199 int a_rs_save = a_rs;
200 int a_cs_save = a_cs;
202 int incx_conj;
203 int lda, inca;
204
205 // Return early if possible.
206 if ( bl1_zero_dim2( m, n ) ) return;
207
208 // If necessary, allocate, initialize, and use a temporary contiguous
209 // copy of the matrix rather than the original matrix.
211 n,
213 &a, &a_rs, &a_cs );
214
215 // Initialize with values assuming column-major storage.
216 lda = a_cs;
217 inca = a_rs;
218
219 // If A is a row-major matrix, then we can use the underlying column-major
220 // BLAS implementation by fiddling with the parameters.
221 if ( bl1_is_row_storage( a_rs, a_cs ) )
222 {
223 bl1_swap_ints( m, n );
228 }
229
230 // Initialize with values assuming no conjugation of x.
231 x_conj = x;
232 incx_conj = incx;
233
234 // We need a temporary vector for the cases when x is conjugated.
235 if ( bl1_is_conj( conjx ) )
236 {
237 x_conj = bl1_zallocv( m );
238 incx_conj = 1;
239
241 m,
242 x, incx,
243 x_conj, incx_conj );
244 }
245
246 // Conjugation of y is supported in the BLAS.
247 if ( bl1_is_conj( conjy ) )
248 {
250 n,
251 alpha,
253 y, incy,
254 a, lda );
255 }
256 else
257 {
259 n,
260 alpha,
262 y, incy,
263 a, lda );
264 }
265
266 // Free the temporary conjugated x vector.
267 if ( bl1_is_conj( conjx ) )
268 bl1_zfree( x_conj );
269
270 // Free the temporary contiguous matrix.
272 n_save,
274 &a, &a_rs, &a_cs );
275}
void bl1_zcopyv(conj1_t conj, int m, dcomplex *x, int incx, dcomplex *y, int incy)
Definition bl1_copyv.c:63
void bl1_zgeru_blas(int m, int n, dcomplex *alpha, dcomplex *x, int incx, dcomplex *y, int incy, dcomplex *a, int lda)
Definition bl1_ger.c:389
void bl1_zgerc_blas(int m, int n, dcomplex *alpha, dcomplex *x, int incx, dcomplex *y, int incy, dcomplex *a, int lda)
Definition bl1_ger.c:367
dcomplex * bl1_zallocv(unsigned int n_elem)
Definition bl1_allocv.c:45
void bl1_zcreate_contigm(int m, int n, dcomplex *a_save, int a_rs_save, int a_cs_save, dcomplex **a, int *a_rs, int *a_cs)
Definition bl1_create_contigm.c:115
void bl1_zfree(dcomplex *p)
Definition bl1_free.c:45
void bl1_zfree_saved_contigm(int m, int n, dcomplex *a_save, int a_rs_save, int a_cs_save, dcomplex **a, int *a_rs, int *a_cs)
Definition bl1_free_saved_contigm.c:82
Definition blis_type_defs.h:138

References bl1_is_conj(), bl1_is_row_storage(), bl1_zallocv(), bl1_zcopyv(), bl1_zcreate_contigm(), bl1_zero_dim2(), bl1_zfree(), bl1_zfree_saved_contigm(), bl1_zgerc_blas(), bl1_zgeru_blas(), and BLIS1_CONJUGATE.

Referenced by FLA_Apply_H2_UT_l_opz_var1(), FLA_Apply_H2_UT_r_opz_var1(), FLA_Apply_HUD_UT_l_opz_var1(), FLA_Bidiag_UT_u_step_ofz_var3(), FLA_Bidiag_UT_u_step_opz_var2(), FLA_Bidiag_UT_u_step_opz_var3(), FLA_Eig_gest_il_opz_var3(), FLA_Eig_gest_il_opz_var4(), FLA_Eig_gest_iu_opz_var3(), FLA_Eig_gest_iu_opz_var4(), FLA_Eig_gest_nl_opz_var4(), FLA_Eig_gest_nu_opz_var4(), FLA_Ger_external(), FLA_Gerc_external(), FLA_Hess_UT_step_ofz_var2(), FLA_Hess_UT_step_ofz_var3(), FLA_Hess_UT_step_ofz_var4(), FLA_Hess_UT_step_opz_var2(), FLA_Hess_UT_step_opz_var3(), FLA_Hess_UT_step_opz_var4(), FLA_LU_nopiv_opz_var5(), FLA_LU_piv_opz_var5(), FLA_Lyap_h_opz_var2(), FLA_Lyap_n_opz_var2(), FLA_SA_LU_unb(), FLA_Trinv_ln_opz_var3(), FLA_Trinv_ln_opz_var4(), FLA_Trinv_lu_opz_var3(), FLA_Trinv_lu_opz_var4(), FLA_Trinv_un_opz_var3(), FLA_Trinv_un_opz_var4(), FLA_Trinv_uu_opz_var3(), and FLA_Trinv_uu_opz_var4().

◆ bl1_zgerc_blas()

void bl1_zgerc_blas ( int  m,
int  n,
dcomplex alpha,
dcomplex x,
int  incx,
dcomplex y,
int  incy,
dcomplex a,
int  lda 
)
368{
369#ifdef BLIS1_ENABLE_CBLAS_INTERFACES
371
373 m,
374 n,
375 alpha,
376 x, incx,
377 y, incy,
378 a, lda );
379#else
380 F77_zgerc ( &m,
381 &n,
382 alpha,
383 x, &incx,
384 y, &incy,
385 a, &lda );
386#endif
387}
void F77_zgerc(int *m, int *n, dcomplex *alpha, dcomplex *x, int *incx, dcomplex *y, int *incy, dcomplex *a, int *lda)
void cblas_zgerc(const enum CBLAS_ORDER order, const int M, const int N, const void *alpha, const void *X, const int incX, const void *Y, const int incY, void *A, const int lda)

References cblas_zgerc(), CblasColMajor, and F77_zgerc().

Referenced by bl1_zger().

◆ bl1_zgeru_blas()

void bl1_zgeru_blas ( int  m,
int  n,
dcomplex alpha,
dcomplex x,
int  incx,
dcomplex y,
int  incy,
dcomplex a,
int  lda 
)
390{
391#ifdef BLIS1_ENABLE_CBLAS_INTERFACES
393
395 m,
396 n,
397 alpha,
398 x, incx,
399 y, incy,
400 a, lda );
401#else
402 F77_zgeru ( &m,
403 &n,
404 alpha,
405 x, &incx,
406 y, &incy,
407 a, &lda );
408#endif
409}
void F77_zgeru(int *m, int *n, dcomplex *alpha, dcomplex *x, int *incx, dcomplex *y, int *incy, dcomplex *a, int *lda)
void cblas_zgeru(const enum CBLAS_ORDER order, const int M, const int N, const void *alpha, const void *X, const int incX, const void *Y, const int incY, void *A, const int lda)

References cblas_zgeru(), CblasColMajor, and F77_zgeru().

Referenced by bl1_zger().