42{
48
49 LAPACK_zlarfb( &side, &trans, &direct, &storev, &m, &
n, &k, v, &ldv, t,
50 &ldt, c, &ldc, work, &ldwork );
51 if( info < 0 ) {
52 info = info - 1;
53 }
67 ldv_t =
MAX(1,nrows_v);
68
70 info = -14;
72 return info;
73 }
74 if( ldt < k ) {
75 info = -12;
77 return info;
78 }
79 if( ldv < ncols_v ) {
80 info = -10;
82 return info;
83 }
84
87 ldv_t *
MAX(1,ncols_v) );
88 if( v_t == NULL ) {
90 goto exit_level_0;
91 }
94 if( t_t == NULL ) {
96 goto exit_level_1;
97 }
100 if( c_t == NULL ) {
102 goto exit_level_2;
103 }
104
108 &v_t[k], ldv_t );
111 if( k > nrows_v ) {
113 return -8;
114 }
116 ldv, &v_t[nrows_v-k], ldv_t );
118 ldv_t );
123 &v_t[k*ldv_t], ldv_t );
126 if( k > ncols_v ) {
128 return -8;
129 }
131 &v_t[(ncols_v-k)*ldv_t], ldv_t );
133 ldv_t );
134 }
137
138 LAPACK_zlarfb( &side, &trans, &direct, &storev, &m, &
n, &k, v_t, &ldv_t,
139 t_t, &ldt_t, c_t, &ldc_t, work, &ldwork );
140 info = 0;
141
143
145exit_level_2:
147exit_level_1:
149exit_level_0:
152 }
153 } else {
154 info = -1;
156 }
157 return info;
158}
#define LAPACK_zlarfb(...)
#define lapack_complex_double
#define LAPACKE_malloc(size)
#define LAPACK_TRANSPOSE_MEMORY_ERROR
lapack_logical LAPACKE_lsame(char ca, char cb)
void LAPACKE_xerbla(const char *name, lapack_int info)
void LAPACKE_zge_trans(int matrix_layout, lapack_int m, lapack_int n, const lapack_complex_double *in, lapack_int ldin, lapack_complex_double *out, lapack_int ldout)
void LAPACKE_ztr_trans(int matrix_layout, char uplo, char diag, lapack_int n, const lapack_complex_double *in, lapack_int ldin, lapack_complex_double *out, lapack_int ldout)