libflame  revision_anchor
Functions
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().