libflame  revision_anchor
Functions
FLA_Ttmm_unb_external.c File Reference

(r)

Functions

FLA_Error FLA_Ttmm_unb_external (FLA_Uplo uplo, FLA_Obj A)
 
FLA_Error FLA_Ttmm_l_unb_ext (FLA_Obj A)
 
FLA_Error FLA_Ttmm_u_unb_ext (FLA_Obj A)
 

Function Documentation

◆ FLA_Ttmm_l_unb_ext()

FLA_Error FLA_Ttmm_l_unb_ext ( FLA_Obj  A)
93 {
94  return FLA_Ttmm_unb_external( FLA_LOWER_TRIANGULAR, A );
95 }
FLA_Error FLA_Ttmm_unb_external(FLA_Uplo uplo, FLA_Obj A)
Definition: FLA_Ttmm_unb_external.c:13

References FLA_Ttmm_unb_external().

Referenced by FLA_Ttmm_l().

◆ FLA_Ttmm_u_unb_ext()

FLA_Error FLA_Ttmm_u_unb_ext ( FLA_Obj  A)
98 {
99  return FLA_Ttmm_unb_external( FLA_UPPER_TRIANGULAR, A );
100 }

References FLA_Ttmm_unb_external().

Referenced by FLA_Ttmm_u().

◆ FLA_Ttmm_unb_external()

FLA_Error FLA_Ttmm_unb_external ( FLA_Uplo  uplo,
FLA_Obj  A 
)
14 {
15  int info = 0;
16 #ifdef FLA_ENABLE_EXTERNAL_LAPACK_INTERFACES
17  FLA_Datatype datatype;
18  int m_A, cs_A;
19  char blas_uplo;
20 
21  if ( FLA_Check_error_level() == FLA_FULL_ERROR_CHECKING )
22  FLA_Ttmm_check( uplo, A );
23 
24  if ( FLA_Obj_has_zero_dim( A ) ) return FLA_SUCCESS;
25 
26  datatype = FLA_Obj_datatype( A );
27 
28  m_A = FLA_Obj_length( A );
29  cs_A = FLA_Obj_col_stride( A );
30 
31  FLA_Param_map_flame_to_netlib_uplo( uplo, &blas_uplo );
32 
33 
34  switch( datatype ){
35 
36  case FLA_FLOAT:
37  {
38  float *buff_A = ( float * ) FLA_FLOAT_PTR( A );
39 
40  F77_slauu2( &blas_uplo,
41  &m_A,
42  buff_A, &cs_A,
43  &info );
44 
45  break;
46  }
47 
48  case FLA_DOUBLE:
49  {
50  double *buff_A = ( double * ) FLA_DOUBLE_PTR( A );
51 
52  F77_dlauu2( &blas_uplo,
53  &m_A,
54  buff_A, &cs_A,
55  &info );
56 
57  break;
58  }
59 
60  case FLA_COMPLEX:
61  {
62  scomplex *buff_A = ( scomplex * ) FLA_COMPLEX_PTR( A );
63 
64  F77_clauu2( &blas_uplo,
65  &m_A,
66  buff_A, &cs_A,
67  &info );
68 
69  break;
70  }
71 
72  case FLA_DOUBLE_COMPLEX:
73  {
74  dcomplex *buff_A = ( dcomplex * ) FLA_DOUBLE_COMPLEX_PTR( A );
75 
76  F77_zlauu2( &blas_uplo,
77  &m_A,
78  buff_A, &cs_A,
79  &info );
80 
81  break;
82  }
83 
84  }
85 #else
86  FLA_Check_error_code( FLA_EXTERNAL_LAPACK_NOT_IMPLEMENTED );
87 #endif
88 
89  return info;
90 }
FLA_Error FLA_Ttmm_check(FLA_Uplo uplo, FLA_Obj A)
Definition: FLA_Ttmm_check.c:13
int F77_slauu2(char *uplo, int *n, float *a, int *lda, int *info)
int F77_dlauu2(char *uplo, int *n, double *a, int *lda, int *info)
int F77_clauu2(char *uplo, int *n, scomplex *a, int *lda, int *info)
int F77_zlauu2(char *uplo, int *n, dcomplex *a, int *lda, int *info)
FLA_Bool FLA_Obj_has_zero_dim(FLA_Obj A)
Definition: FLA_Query.c:400
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_netlib_uplo(FLA_Uplo uplo, void *blas_uplo)
Definition: FLA_Param.c:47
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 F77_clauu2(), F77_dlauu2(), F77_slauu2(), F77_zlauu2(), FLA_Check_error_level(), FLA_Obj_col_stride(), FLA_Obj_datatype(), FLA_Obj_has_zero_dim(), FLA_Obj_length(), FLA_Param_map_flame_to_netlib_uplo(), and FLA_Ttmm_check().

Referenced by FLA_Ttmm_l_unb_ext(), and FLA_Ttmm_u_unb_ext().