libflame revision_anchor
FLA_Apply_G_lf_opt_var1.c File Reference

(r)

Functions

FLA_Error FLA_Apply_G_lf_opt_var1 (FLA_Obj G, FLA_Obj A)
 

Function Documentation

◆ FLA_Apply_G_lf_opt_var1()

FLA_Error FLA_Apply_G_lf_opt_var1 ( FLA_Obj G,
FLA_Obj A )
31{
32 FLA_Datatype datatype;
33 int k_G, m_A, n_A;
34 int rs_G, cs_G;
35 int rs_A, cs_A;
36
37 datatype = FLA_Obj_datatype( A );
38
39 k_G = FLA_Obj_width( G );
40 rs_G = FLA_Obj_row_stride( G );
41 cs_G = FLA_Obj_col_stride( G );
42
43 // Swap dimensions of A.
44 n_A = FLA_Obj_length( A );
45 m_A = FLA_Obj_width( A );
46 cs_A = FLA_Obj_row_stride( A );
47 rs_A = FLA_Obj_col_stride( A );
48
49 switch ( datatype )
50 {
51 case FLA_FLOAT:
52 {
53 scomplex* buff_G = ( scomplex* ) FLA_COMPLEX_PTR( G );
54 float* buff_A = ( float* ) FLA_FLOAT_PTR( A );
55
57 m_A,
58 n_A,
59 buff_G, rs_G, cs_G,
60 buff_A, rs_A, cs_A );
61
62 break;
63 }
64
65 case FLA_DOUBLE:
66 {
67 dcomplex* buff_G = ( dcomplex* ) FLA_DOUBLE_COMPLEX_PTR( G );
68 double* buff_A = ( double* ) FLA_DOUBLE_PTR( A );
69
71 m_A,
72 n_A,
73 buff_G, rs_G, cs_G,
74 buff_A, rs_A, cs_A );
75
76 break;
77 }
78
79 case FLA_COMPLEX:
80 {
81 scomplex* buff_G = ( scomplex* ) FLA_COMPLEX_PTR( G );
82 scomplex* buff_A = ( scomplex* ) FLA_COMPLEX_PTR( A );
83
85 m_A,
86 n_A,
87 buff_G, rs_G, cs_G,
88 buff_A, rs_A, cs_A );
89
90 break;
91 }
92
93 case FLA_DOUBLE_COMPLEX:
94 {
95 dcomplex* buff_G = ( dcomplex* ) FLA_DOUBLE_COMPLEX_PTR( G );
96 dcomplex* buff_A = ( dcomplex* ) FLA_DOUBLE_COMPLEX_PTR( A );
97
99 m_A,
100 n_A,
101 buff_G, rs_G, cs_G,
102 buff_A, rs_A, cs_A );
103
104 break;
105 }
106 }
107
108 return FLA_SUCCESS;
109}
FLA_Error FLA_Apply_G_rf_opc_var1(int k_G, int m_A, int n_A, scomplex *buff_G, int rs_G, int cs_G, scomplex *buff_A, int rs_A, int cs_A)
Definition FLA_Apply_G_rf_opt_var1.c:215
FLA_Error FLA_Apply_G_rf_ops_var1(int k_G, int m_A, int n_A, scomplex *buff_G, int rs_G, int cs_G, float *buff_A, int rs_A, int cs_A)
Definition FLA_Apply_G_rf_opt_var1.c:113
FLA_Error FLA_Apply_G_rf_opd_var1(int k_G, int m_A, int n_A, dcomplex *buff_G, int rs_G, int cs_G, double *buff_A, int rs_A, int cs_A)
Definition FLA_Apply_G_rf_opt_var1.c:164
FLA_Error FLA_Apply_G_rf_opz_var1(int k_G, int m_A, int n_A, dcomplex *buff_G, int rs_G, int cs_G, dcomplex *buff_A, int rs_A, int cs_A)
Definition FLA_Apply_G_rf_opt_var1.c:267
dim_t FLA_Obj_width(FLA_Obj obj)
Definition FLA_Query.c:123
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
Definition blis_type_defs.h:133

References FLA_Apply_G_rf_opc_var1(), FLA_Apply_G_rf_opd_var1(), FLA_Apply_G_rf_ops_var1(), FLA_Apply_G_rf_opz_var1(), FLA_Obj_col_stride(), FLA_Obj_datatype(), FLA_Obj_length(), FLA_Obj_row_stride(), and FLA_Obj_width().

Referenced by FLA_Apply_G_internal().