libflame revision_anchor
Functions
FLA_Ttmm_l_opt_var1.c File Reference

(r)

Functions

FLA_Error FLA_Ttmm_l_opt_var1 (FLA_Obj A)
 
FLA_Error FLA_Ttmm_l_ops_var1 (int mn_A, float *buff_A, int rs_A, int cs_A)
 
FLA_Error FLA_Ttmm_l_opd_var1 (int mn_A, double *buff_A, int rs_A, int cs_A)
 
FLA_Error FLA_Ttmm_l_opc_var1 (int mn_A, scomplex *buff_A, int rs_A, int cs_A)
 
FLA_Error FLA_Ttmm_l_opz_var1 (int mn_A, dcomplex *buff_A, int rs_A, int cs_A)
 

Function Documentation

◆ FLA_Ttmm_l_opc_var1()

FLA_Error FLA_Ttmm_l_opc_var1 ( int  mn_A,
scomplex buff_A,
int  rs_A,
int  cs_A 
)
160{
161 float* buff_1 = FLA_FLOAT_PTR( FLA_ONE );
162 int i;
163
164 for ( i = 0; i < mn_A; ++i )
165 {
166 scomplex* A00 = buff_A + (0 )*cs_A + (0 )*rs_A;
167 scomplex* a10t = buff_A + (0 )*cs_A + (i )*rs_A;
168 scomplex* alpha11 = buff_A + (i )*cs_A + (i )*rs_A;
169
170 int mn_behind = i;
171
172 /*------------------------------------------------------------*/
173
174 // FLA_Herc_external( FLA_LOWER_TRIANGULAR, FLA_ONE, a10t, A00 );
177 mn_behind,
178 buff_1,
179 a10t, cs_A,
180 A00, rs_A, cs_A );
181
182 // FLA_Scal_external( alpha11, a10t );
184 mn_behind,
185 alpha11,
186 a10t, cs_A );
187
188 // FLA_Absolute_square( alpha11 );
190
191 /*------------------------------------------------------------*/
192
193 }
194
195 return FLA_SUCCESS;
196}
FLA_Obj FLA_ONE
Definition FLA_Init.c:18
int i
Definition bl1_axmyv2.c:145
void bl1_cher(uplo1_t uplo, conj1_t conj, int m, float *alpha, scomplex *x, int incx, scomplex *a, int a_rs, int a_cs)
Definition bl1_her.c:31
void bl1_cscalv(conj1_t conj, int n, scomplex *alpha, scomplex *x, int incx)
Definition bl1_scalv.c:46
@ BLIS1_LOWER_TRIANGULAR
Definition blis_type_defs.h:62
@ BLIS1_CONJUGATE
Definition blis_type_defs.h:82
@ BLIS1_NO_CONJUGATE
Definition blis_type_defs.h:81
Definition blis_type_defs.h:133

References bl1_cher(), bl1_cscalv(), BLIS1_CONJUGATE, BLIS1_LOWER_TRIANGULAR, BLIS1_NO_CONJUGATE, FLA_ONE, and i.

Referenced by FLA_Ttmm_l_opt_var1().

◆ FLA_Ttmm_l_opd_var1()

FLA_Error FLA_Ttmm_l_opd_var1 ( int  mn_A,
double buff_A,
int  rs_A,
int  cs_A 
)
119{
120 double* buff_1 = FLA_DOUBLE_PTR( FLA_ONE );
121 int i;
122
123 for ( i = 0; i < mn_A; ++i )
124 {
125 double* A00 = buff_A + (0 )*cs_A + (0 )*rs_A;
126 double* a10t = buff_A + (0 )*cs_A + (i )*rs_A;
127 double* alpha11 = buff_A + (i )*cs_A + (i )*rs_A;
128
129 int mn_behind = i;
130
131 /*------------------------------------------------------------*/
132
133 // FLA_Herc_external( FLA_LOWER_TRIANGULAR, FLA_ONE, a10t, A00 );
135 mn_behind,
136 buff_1,
137 a10t, cs_A,
138 A00, rs_A, cs_A );
139
140 // FLA_Scal_external( alpha11, a10t );
142 mn_behind,
143 alpha11,
144 a10t, cs_A );
145
146 // FLA_Absolute_square( alpha11 );
148
149 /*------------------------------------------------------------*/
150
151 }
152
153 return FLA_SUCCESS;
154}
void bl1_dscalv(conj1_t conj, int n, double *alpha, double *x, int incx)
Definition bl1_scalv.c:24
void bl1_dsyr(uplo1_t uplo, int m, double *alpha, double *x, int incx, double *a, int a_rs, int a_cs)
Definition bl1_syr.c:57

References bl1_dscalv(), bl1_dsyr(), BLIS1_LOWER_TRIANGULAR, BLIS1_NO_CONJUGATE, FLA_ONE, and i.

Referenced by FLA_Ttmm_l_opt_var1().

◆ FLA_Ttmm_l_ops_var1()

FLA_Error FLA_Ttmm_l_ops_var1 ( int  mn_A,
float buff_A,
int  rs_A,
int  cs_A 
)
78{
79 float* buff_1 = FLA_FLOAT_PTR( FLA_ONE );
80 int i;
81
82 for ( i = 0; i < mn_A; ++i )
83 {
84 float* A00 = buff_A + (0 )*cs_A + (0 )*rs_A;
85 float* a10t = buff_A + (0 )*cs_A + (i )*rs_A;
86 float* alpha11 = buff_A + (i )*cs_A + (i )*rs_A;
87
88 int mn_behind = i;
89
90 /*------------------------------------------------------------*/
91
92 // FLA_Herc_external( FLA_LOWER_TRIANGULAR, FLA_ONE, a10t, A00 );
95 buff_1,
96 a10t, cs_A,
97 A00, rs_A, cs_A );
98
99 // FLA_Scal_external( alpha11, a10t );
101 mn_behind,
102 alpha11,
103 a10t, cs_A );
104
105 // FLA_Absolute_square( alpha11 );
107
108 /*------------------------------------------------------------*/
109
110 }
111
112 return FLA_SUCCESS;
113}
void bl1_sscalv(conj1_t conj, int n, float *alpha, float *x, int incx)
Definition bl1_scalv.c:13
void bl1_ssyr(uplo1_t uplo, int m, float *alpha, float *x, int incx, float *a, int a_rs, int a_cs)
Definition bl1_syr.c:13

References bl1_sscalv(), bl1_ssyr(), BLIS1_LOWER_TRIANGULAR, BLIS1_NO_CONJUGATE, FLA_ONE, and i.

Referenced by FLA_Ttmm_l_opt_var1().

◆ FLA_Ttmm_l_opt_var1()

FLA_Error FLA_Ttmm_l_opt_var1 ( FLA_Obj  A)
16{
17 FLA_Datatype datatype;
18 int mn_A;
19 int rs_A, cs_A;
20
21 datatype = FLA_Obj_datatype( A );
22
26
27
28 switch ( datatype )
29 {
30 case FLA_FLOAT:
31 {
32 float* buff_A = FLA_FLOAT_PTR( A );
33
35 buff_A, rs_A, cs_A );
36
37 break;
38 }
39
40 case FLA_DOUBLE:
41 {
42 double* buff_A = FLA_DOUBLE_PTR( A );
43
45 buff_A, rs_A, cs_A );
46
47 break;
48 }
49
50 case FLA_COMPLEX:
51 {
53
55 buff_A, rs_A, cs_A );
56
57 break;
58 }
59
61 {
63
65 buff_A, rs_A, cs_A );
66
67 break;
68 }
69 }
70
71 return FLA_SUCCESS;
72}
FLA_Error FLA_Ttmm_l_opc_var1(int mn_A, scomplex *buff_A, int rs_A, int cs_A)
Definition FLA_Ttmm_l_opt_var1.c:158
FLA_Error FLA_Ttmm_l_opz_var1(int mn_A, dcomplex *buff_A, int rs_A, int cs_A)
Definition FLA_Ttmm_l_opt_var1.c:200
FLA_Error FLA_Ttmm_l_opd_var1(int mn_A, double *buff_A, int rs_A, int cs_A)
Definition FLA_Ttmm_l_opt_var1.c:117
FLA_Error FLA_Ttmm_l_ops_var1(int mn_A, float *buff_A, int rs_A, int cs_A)
Definition FLA_Ttmm_l_opt_var1.c:76
dim_t FLA_Obj_row_stride(FLA_Obj obj)
Definition FLA_Query.c:167
dim_t FLA_Obj_length(FLA_Obj obj)
Definition FLA_Query.c:116
dim_t FLA_Obj_col_stride(FLA_Obj obj)
Definition FLA_Query.c:174
FLA_Datatype FLA_Obj_datatype(FLA_Obj obj)
Definition FLA_Query.c:13
int FLA_Datatype
Definition FLA_type_defs.h:49
Definition blis_type_defs.h:138

References FLA_Obj_col_stride(), FLA_Obj_datatype(), FLA_Obj_length(), FLA_Obj_row_stride(), FLA_Ttmm_l_opc_var1(), FLA_Ttmm_l_opd_var1(), FLA_Ttmm_l_ops_var1(), FLA_Ttmm_l_opz_var1(), and i.

Referenced by FLA_Ttmm_l().

◆ FLA_Ttmm_l_opz_var1()

FLA_Error FLA_Ttmm_l_opz_var1 ( int  mn_A,
dcomplex buff_A,
int  rs_A,
int  cs_A 
)
202{
203 double* buff_1 = FLA_DOUBLE_PTR( FLA_ONE );
204 int i;
205
206 for ( i = 0; i < mn_A; ++i )
207 {
208 dcomplex* A00 = buff_A + (0 )*cs_A + (0 )*rs_A;
209 dcomplex* a10t = buff_A + (0 )*cs_A + (i )*rs_A;
210 dcomplex* alpha11 = buff_A + (i )*cs_A + (i )*rs_A;
211
212 int mn_behind = i;
213
214 /*------------------------------------------------------------*/
215
216 // FLA_Herc_external( FLA_LOWER_TRIANGULAR, FLA_ONE, a10t, A00 );
219 mn_behind,
220 buff_1,
221 a10t, cs_A,
222 A00, rs_A, cs_A );
223
224 // FLA_Scal_external( alpha11, a10t );
226 mn_behind,
227 alpha11,
228 a10t, cs_A );
229
230 // FLA_Absolute_square( alpha11 );
232
233 /*------------------------------------------------------------*/
234
235 }
236
237 return FLA_SUCCESS;
238}
void bl1_zher(uplo1_t uplo, conj1_t conj, int m, double *alpha, dcomplex *x, int incx, dcomplex *a, int a_rs, int a_cs)
Definition bl1_her.c:101
void bl1_zscalv(conj1_t conj, int n, dcomplex *alpha, dcomplex *x, int incx)
Definition bl1_scalv.c:72

References bl1_zher(), bl1_zscalv(), BLIS1_CONJUGATE, BLIS1_LOWER_TRIANGULAR, BLIS1_NO_CONJUGATE, FLA_ONE, and i.

Referenced by FLA_Ttmm_l_opt_var1().