88{
90
91 if( in == NULL || out == NULL ) return ;
92
97
102
103 return;
104 }
105
106
114
115
116 if( front ) {
117 if( lower && m > n ) {
118 rect_in_offset = tri_n * ( !colmaj ? ldin : 1 );
119 rect_out_offset = tri_n * ( colmaj ? ldout : 1 );
120 } else if( !lower && n > m ) {
121 rect_in_offset = tri_n * ( colmaj ? ldin : 1 );
122 rect_out_offset = tri_n * ( !colmaj ? ldout : 1 );
123 }
124 } else {
125 if( m > n ) {
126 tri_in_offset = rect_m * ( !colmaj ? ldin : 1 );
127 tri_out_offset = rect_m * ( colmaj ? ldout : 1 );
128 if( !lower ) {
129 rect_in_offset = 0;
130 rect_out_offset = 0;
131 }
132 } else if( n > m ) {
133 tri_in_offset = rect_n * ( colmaj ? ldin : 1 );
134 tri_out_offset = rect_n * ( !colmaj ? ldout : 1 );
135 if( lower ) {
136 rect_in_offset = 0;
137 rect_out_offset = 0;
138 }
139 }
140 }
141
142
143 if( rect_in_offset >= 0 && rect_out_offset >= 0 ) {
145 &in[rect_in_offset], ldin,
146 &out[rect_out_offset], ldout );
147 }
148
149
151 &in[tri_in_offset], ldin,
152 &out[tri_out_offset], ldout );
153}
lapack_logical LAPACKE_lsame(char ca, char cb)
void LAPACKE_ctr_trans(int matrix_layout, char uplo, char diag, lapack_int n, const lapack_complex_float *in, lapack_int ldin, lapack_complex_float *out, lapack_int ldout)
void LAPACKE_cge_trans(int matrix_layout, lapack_int m, lapack_int n, const lapack_complex_float *in, lapack_int ldin, lapack_complex_float *out, lapack_int ldout)