libflame  revision_anchor
Functions
FLA_Apply_G_lf_blk_var3.c File Reference

(r)

Functions

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 
)

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

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 }
dim_t FLA_Obj_row_stride(FLA_Obj obj)
Definition: FLA_Query.c:167
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_Datatype FLA_Obj_datatype(FLA_Obj obj)
Definition: FLA_Query.c:13
dim_t FLA_Obj_width(FLA_Obj obj)
Definition: FLA_Query.c:123
Definition: blis_type_defs.h:132
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
int FLA_Datatype
Definition: FLA_type_defs.h:49
dim_t FLA_Obj_col_stride(FLA_Obj obj)
Definition: FLA_Query.c:174
dim_t FLA_Obj_length(FLA_Obj obj)
Definition: FLA_Query.c:116
Definition: blis_type_defs.h:137