libflame  revision_anchor
Functions
bl1_free_contigm.c File Reference

(r)

Functions

void bl1_sfree_contigm (float *a_save, int a_rs_save, int a_cs_save, float **a, int *a_rs, int *a_cs)
 
void bl1_dfree_contigm (double *a_save, int a_rs_save, int a_cs_save, double **a, int *a_rs, int *a_cs)
 
void bl1_cfree_contigm (scomplex *a_save, int a_rs_save, int a_cs_save, scomplex **a, int *a_rs, int *a_cs)
 
void bl1_zfree_contigm (dcomplex *a_save, int a_rs_save, int a_cs_save, dcomplex **a, int *a_rs, int *a_cs)
 

Function Documentation

◆ bl1_cfree_contigm()

void bl1_cfree_contigm ( scomplex a_save,
int  a_rs_save,
int  a_cs_save,
scomplex **  a,
int *  a_rs,
int *  a_cs 
)

References bl1_cfree(), and bl1_is_gen_storage().

Referenced by bl1_cgemm(), bl1_cgemv(), bl1_chemm(), bl1_chemv(), bl1_cher2k(), bl1_cherk(), bl1_csymm(), bl1_csymv(), bl1_csyr2k(), bl1_csyrk(), bl1_ctrmm(), bl1_ctrmmsx(), bl1_ctrmv(), bl1_ctrmvsx(), bl1_ctrsm(), bl1_ctrsmsx(), bl1_ctrsv(), and bl1_ctrsvsx().

46 {
47  if ( bl1_is_gen_storage( a_rs_save, a_cs_save ) )
48  {
49  // Free the temporary contiguous storage for the matrix.
50  bl1_cfree( *a );
51 
52  // Restore the original matrix address.
53  *a = a_save;
54 
55  // Restore the original row and column strides.
56  *a_rs = a_rs_save;
57  *a_cs = a_cs_save;
58  }
59 }
int bl1_is_gen_storage(int rs, int cs)
Definition: bl1_is.c:100
void bl1_cfree(scomplex *p)
Definition: bl1_free.c:40

◆ bl1_dfree_contigm()

void bl1_dfree_contigm ( double *  a_save,
int  a_rs_save,
int  a_cs_save,
double **  a,
int *  a_rs,
int *  a_cs 
)

References bl1_dfree(), and bl1_is_gen_storage().

Referenced by bl1_dgemm(), bl1_dgemv(), bl1_dsymm(), bl1_dsymv(), bl1_dsyr2k(), bl1_dsyrk(), bl1_dtrmm(), bl1_dtrmmsx(), bl1_dtrmv(), bl1_dtrmvsx(), bl1_dtrsm(), bl1_dtrsmsx(), bl1_dtrsv(), and bl1_dtrsvsx().

30 {
31  if ( bl1_is_gen_storage( a_rs_save, a_cs_save ) )
32  {
33  // Free the temporary contiguous storage for the matrix.
34  bl1_dfree( *a );
35 
36  // Restore the original matrix address.
37  *a = a_save;
38 
39  // Restore the original row and column strides.
40  *a_rs = a_rs_save;
41  *a_cs = a_cs_save;
42  }
43 }
void bl1_dfree(double *p)
Definition: bl1_free.c:35
int bl1_is_gen_storage(int rs, int cs)
Definition: bl1_is.c:100

◆ bl1_sfree_contigm()

void bl1_sfree_contigm ( float *  a_save,
int  a_rs_save,
int  a_cs_save,
float **  a,
int *  a_rs,
int *  a_cs 
)

References bl1_is_gen_storage(), and bl1_sfree().

Referenced by bl1_sgemm(), bl1_sgemv(), bl1_ssymm(), bl1_ssymv(), bl1_ssyr2k(), bl1_ssyrk(), bl1_strmm(), bl1_strmmsx(), bl1_strmv(), bl1_strmvsx(), bl1_strsm(), bl1_strsmsx(), bl1_strsv(), and bl1_strsvsx().

14 {
15  if ( bl1_is_gen_storage( a_rs_save, a_cs_save ) )
16  {
17  // Free the temporary contiguous storage for the matrix.
18  bl1_sfree( *a );
19 
20  // Restore the original matrix address.
21  *a = a_save;
22 
23  // Restore the original row and column strides.
24  *a_rs = a_rs_save;
25  *a_cs = a_cs_save;
26  }
27 }
void bl1_sfree(float *p)
Definition: bl1_free.c:30
int bl1_is_gen_storage(int rs, int cs)
Definition: bl1_is.c:100

◆ bl1_zfree_contigm()

void bl1_zfree_contigm ( dcomplex a_save,
int  a_rs_save,
int  a_cs_save,
dcomplex **  a,
int *  a_rs,
int *  a_cs 
)

References bl1_is_gen_storage(), and bl1_zfree().

Referenced by bl1_zgemm(), bl1_zgemv(), bl1_zhemm(), bl1_zhemv(), bl1_zher2k(), bl1_zherk(), bl1_zsymm(), bl1_zsymv(), bl1_zsyr2k(), bl1_zsyrk(), bl1_ztrmm(), bl1_ztrmmsx(), bl1_ztrmv(), bl1_ztrmvsx(), bl1_ztrsm(), bl1_ztrsmsx(), bl1_ztrsv(), and bl1_ztrsvsx().

62 {
63  if ( bl1_is_gen_storage( a_rs_save, a_cs_save ) )
64  {
65  // Free the temporary contiguous storage for the matrix.
66  bl1_zfree( *a );
67 
68  // Restore the original matrix address.
69  *a = a_save;
70 
71  // Restore the original row and column strides.
72  *a_rs = a_rs_save;
73  *a_cs = a_cs_save;
74  }
75 }
void bl1_zfree(dcomplex *p)
Definition: bl1_free.c:45
int bl1_is_gen_storage(int rs, int cs)
Definition: bl1_is.c:100