14{
20
23
30
32
33 switch( datatype_A ){
34
35 case FLA_FLOAT:
36 {
37 float *buff_A = ( float * ) FLA_FLOAT_PTR( A );
38 float *buff_alpha = ( float * ) FLA_FLOAT_PTR( alpha );
39
41 0,
42 m_A,
43 n_A,
44 buff_alpha,
45 buff_A, rs_A, cs_A );
46
47 break;
48 }
49 case FLA_DOUBLE:
50 {
51 double *buff_A = ( double * ) FLA_DOUBLE_PTR( A );
52 double *buff_alpha = ( double * ) FLA_DOUBLE_PTR( alpha );
53
55 0,
56 m_A,
57 n_A,
58 buff_alpha,
59 buff_A, rs_A, cs_A );
60
61 break;
62 }
63
64 case FLA_COMPLEX:
65 {
66 if ( datatype_alpha == FLA_COMPLEX )
67 {
70
72 0,
73 m_A,
74 n_A,
75 buff_alpha,
76 buff_A, rs_A, cs_A );
77 }
78 else
79 {
81 float *buff_alpha = ( float * ) FLA_FLOAT_PTR( alpha );
82
84 0,
85 m_A,
86 n_A,
87 buff_alpha,
88 buff_A, rs_A, cs_A );
89 }
90
91 break;
92 }
93
94 case FLA_DOUBLE_COMPLEX:
95 {
96 if ( datatype_alpha == FLA_DOUBLE_COMPLEX )
97 {
100
102 0,
103 m_A,
104 n_A,
105 buff_alpha,
106 buff_A, rs_A, cs_A );
107 }
108 else
109 {
111 double *buff_alpha = ( double * ) FLA_DOUBLE_PTR( alpha );
112
114 0,
115 m_A,
116 n_A,
117 buff_alpha,
118 buff_A, rs_A, cs_A );
119 }
120
121 break;
122 }
123
124 }
125
126 return FLA_SUCCESS;
127}
FLA_Error FLA_Scale_diag_check(FLA_Conj conj, FLA_Obj alpha, FLA_Obj A)
Definition FLA_Scale_diag_check.c:13
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
unsigned int FLA_Check_error_level(void)
Definition FLA_Check.c:18
void FLA_Param_map_flame_to_blis_conj(FLA_Conj conj, conj1_t *blis_conj)
Definition FLA_Param.c:269
FLA_Datatype FLA_Obj_datatype(FLA_Obj obj)
Definition FLA_Query.c:13
int FLA_Datatype
Definition FLA_type_defs.h:49
unsigned long dim_t
Definition FLA_type_defs.h:71
void bl1_zdscalediag(conj1_t conj, int offset, int m, int n, double *sigma, dcomplex *a, int a_rs, int a_cs)
Definition bl1_scalediag.c:77
void bl1_cscalediag(conj1_t conj, int offset, int m, int n, scomplex *sigma, scomplex *a, int a_rs, int a_cs)
Definition bl1_scalediag.c:99
void bl1_dscalediag(conj1_t conj, int offset, int m, int n, double *sigma, double *a, int a_rs, int a_cs)
Definition bl1_scalediag.c:34
void bl1_csscalediag(conj1_t conj, int offset, int m, int n, float *sigma, scomplex *a, int a_rs, int a_cs)
Definition bl1_scalediag.c:55
void bl1_zscalediag(conj1_t conj, int offset, int m, int n, dcomplex *sigma, dcomplex *a, int a_rs, int a_cs)
Definition bl1_scalediag.c:123
void bl1_sscalediag(conj1_t conj, int offset, int m, int n, float *sigma, float *a, int a_rs, int a_cs)
Definition bl1_scalediag.c:13
conj1_t
Definition blis_type_defs.h:80
Definition blis_type_defs.h:138
Definition blis_type_defs.h:133