libflame revision_anchor
FLA_Apply_G_lf.h File Reference

(r)

Go to the source code of this file.

Functions

FLA_Error FLA_Apply_G_lf_opt_var1 (FLA_Obj G, FLA_Obj A)
 
FLA_Error FLA_Apply_G_lf_blk_var3 (FLA_Obj G, FLA_Obj A, dim_t b_alg)
 

Function Documentation

◆ FLA_Apply_G_lf_blk_var3()

FLA_Error FLA_Apply_G_lf_blk_var3 ( FLA_Obj G,
FLA_Obj A,
dim_t b_alg )
14{
15 FLA_Datatype datatype;
16 int k_G, m_A, n_A;
17 int rs_G, cs_G;
18 int rs_A, cs_A;
19
20 datatype = FLA_Obj_datatype( A );
21
22 k_G = FLA_Obj_width( G );
23 rs_G = FLA_Obj_row_stride( G );
24 cs_G = FLA_Obj_col_stride( G );
25
26 n_A = FLA_Obj_length( A );
27 m_A = FLA_Obj_width( A );
28 cs_A = FLA_Obj_row_stride( A );
29 rs_A = FLA_Obj_col_stride( A );
30
31 switch ( datatype )
32 {
33 case FLA_FLOAT:
34 {
35 scomplex* buff_G = ( scomplex* ) FLA_COMPLEX_PTR( G );
36 float* buff_A = ( float* ) FLA_FLOAT_PTR( A );
37
39 m_A,
40 n_A,
41 buff_G, rs_G, cs_G,
42 buff_A, rs_A, cs_A,
43 b_alg );
44
45 break;
46 }
47
48 case FLA_DOUBLE:
49 {
50 dcomplex* buff_G = ( dcomplex* ) FLA_DOUBLE_COMPLEX_PTR( G );
51 double* buff_A = ( double* ) FLA_DOUBLE_PTR( A );
52
54 m_A,
55 n_A,
56 buff_G, rs_G, cs_G,
57 buff_A, rs_A, cs_A,
58 b_alg );
59
60 break;
61 }
62
63 case FLA_COMPLEX:
64 {
65 scomplex* buff_G = ( scomplex* ) FLA_COMPLEX_PTR( G );
66 scomplex* buff_A = ( scomplex* ) FLA_COMPLEX_PTR( A );
67
69 m_A,
70 n_A,
71 buff_G, rs_G, cs_G,
72 buff_A, rs_A, cs_A,
73 b_alg );
74
75 break;
76 }
77
78 case FLA_DOUBLE_COMPLEX:
79 {
80 dcomplex* buff_G = ( dcomplex* ) FLA_DOUBLE_COMPLEX_PTR( G );
81 dcomplex* buff_A = ( dcomplex* ) FLA_DOUBLE_COMPLEX_PTR( A );
82
84 m_A,
85 n_A,
86 buff_G, rs_G, cs_G,
87 buff_A, rs_A, cs_A,
88 b_alg );
89
90 break;
91 }
92 }
93
94 return FLA_SUCCESS;
95}
FLA_Error FLA_Apply_G_rf_blz_var3(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, int b_alg)
Definition FLA_Apply_G_rf_blk_var3.c:186
FLA_Error FLA_Apply_G_rf_bld_var3(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, int b_alg)
Definition FLA_Apply_G_rf_blk_var3.c:128
FLA_Error FLA_Apply_G_rf_blc_var3(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, int b_alg)
Definition FLA_Apply_G_rf_blk_var3.c:157
FLA_Error FLA_Apply_G_rf_bls_var3(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, int b_alg)
Definition FLA_Apply_G_rf_blk_var3.c:99
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_blc_var3(), FLA_Apply_G_rf_bld_var3(), FLA_Apply_G_rf_bls_var3(), FLA_Apply_G_rf_blz_var3(), FLA_Obj_col_stride(), FLA_Obj_datatype(), FLA_Obj_length(), FLA_Obj_row_stride(), and FLA_Obj_width().

◆ 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

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().