libflame revision_anchor
Functions
bli_param_map.c File Reference

(r)

Functions

void bli_param_map_to_netlib_trans (char blis_trans, void *blas_trans)
void bli_param_map_to_netlib_uplo (char blis_uplo, void *blas_uplo)
void bli_param_map_to_netlib_side (char blis_side, void *blas_side)
void bli_param_map_to_netlib_diag (char blis_diag, void *blas_diag)

Function Documentation

void bli_param_map_to_netlib_diag ( char  blis_diag,
void *  blas_diag 
)

References bli_abort_msg(), bli_is_nonunit_diag(), bli_is_unit_diag(), CblasNonUnit, and CblasUnit.

Referenced by bli_ctrmm_blas(), bli_ctrmv_blas(), bli_ctrsm_blas(), bli_ctrsv_blas(), bli_dtrmm_blas(), bli_dtrmv_blas(), bli_dtrsm_blas(), bli_dtrsv_blas(), bli_strmm_blas(), bli_strmv_blas(), bli_strsm_blas(), bli_strsv_blas(), bli_ztrmm_blas(), bli_ztrmv_blas(), bli_ztrsm_blas(), and bli_ztrsv_blas().

{
    if ( bli_is_nonunit_diag( blis_diag ) )
    {
#ifdef FLA_ENABLE_CBLAS_INTERFACES
        *( ( enum CBLAS_DIAG* ) blas_diag ) = CblasNonUnit;
#else
        *( ( char*            ) blas_diag ) = 'N';
#endif
    }
    else if ( bli_is_unit_diag( blis_diag ) )
    {
#ifdef FLA_ENABLE_CBLAS_INTERFACES
        *( ( enum CBLAS_DIAG* ) blas_diag ) = CblasUnit;
#else
        *( ( char*            ) blas_diag ) = 'U';
#endif
    }
    else
    {
        bli_abort_msg( "Invalid BLIS diag value to map." );
    }
}
void bli_param_map_to_netlib_side ( char  blis_side,
void *  blas_side 
)

References bli_abort_msg(), bli_is_left(), bli_is_right(), CblasLeft, and CblasRight.

Referenced by bli_chemm_blas(), bli_csymm_blas(), bli_csymv_blas(), bli_ctrmm_blas(), bli_ctrsm_blas(), bli_dsymm_blas(), bli_dtrmm_blas(), bli_dtrsm_blas(), bli_ssymm_blas(), bli_strmm_blas(), bli_strsm_blas(), bli_zhemm_blas(), bli_zsymm_blas(), bli_zsymv_blas(), bli_ztrmm_blas(), and bli_ztrsm_blas().

{
    if ( bli_is_left( blis_side ) )
    {
#ifdef FLA_ENABLE_CBLAS_INTERFACES
        *( ( enum CBLAS_SIDE* ) blas_side ) = CblasLeft;
#else
        *( ( char*            ) blas_side ) = 'L';
#endif
    }
    else if ( bli_is_right( blis_side ) )
    {
#ifdef FLA_ENABLE_CBLAS_INTERFACES
        *( ( enum CBLAS_SIDE* ) blas_side ) = CblasRight;
#else
        *( ( char*            ) blas_side ) = 'R';
#endif
    }
    else
    {
        bli_abort_msg( "Invalid BLIS side value to map." );
    }
}
void bli_param_map_to_netlib_trans ( char  blis_trans,
void *  blas_trans 
)

References bli_abort_msg(), bli_is_conjnotrans(), bli_is_conjtrans(), bli_is_notrans(), bli_is_trans(), CblasConjTrans, CblasNoTrans, and CblasTrans.

Referenced by bli_cgemm_blas(), bli_cgemv_blas(), bli_cher2k_blas(), bli_cherk_blas(), bli_csyr2_blas(), bli_csyr2k_blas(), bli_csyr_blas(), bli_csyrk_blas(), bli_ctrmm_blas(), bli_ctrmv_blas(), bli_ctrsm_blas(), bli_ctrsv_blas(), bli_dgemm_blas(), bli_dgemv_blas(), bli_dsyr2k_blas(), bli_dsyrk_blas(), bli_dtrmm_blas(), bli_dtrmv_blas(), bli_dtrsm_blas(), bli_dtrsv_blas(), bli_sgemm_blas(), bli_sgemv_blas(), bli_ssyr2k_blas(), bli_ssyrk_blas(), bli_strmm_blas(), bli_strmv_blas(), bli_strsm_blas(), bli_strsv_blas(), bli_zgemm_blas(), bli_zgemv_blas(), bli_zher2k_blas(), bli_zherk_blas(), bli_zsyr2_blas(), bli_zsyr2k_blas(), bli_zsyr_blas(), bli_zsyrk_blas(), bli_ztrmm_blas(), bli_ztrmv_blas(), bli_ztrsm_blas(), and bli_ztrsv_blas().

{
    if ( bli_is_notrans( blis_trans ) || bli_is_conjnotrans( blis_trans ) )
    {
#ifdef FLA_ENABLE_CBLAS_INTERFACES
        *( ( enum CBLAS_TRANSPOSE* ) blas_trans ) = CblasNoTrans;
#else
        *( ( char*                 ) blas_trans ) = 'N';
#endif
    }
    else if ( bli_is_trans( blis_trans ) )
    {
#ifdef FLA_ENABLE_CBLAS_INTERFACES
        *( ( enum CBLAS_TRANSPOSE* ) blas_trans ) = CblasTrans;
#else
        *( ( char*                 ) blas_trans ) = 'T';
#endif
    }
    else if ( bli_is_conjtrans( blis_trans ))
    {
#ifdef FLA_ENABLE_CBLAS_INTERFACES
        *( ( enum CBLAS_TRANSPOSE* ) blas_trans ) = CblasConjTrans;
#else
        *( ( char*                 ) blas_trans ) = 'C';
#endif
    }
    else
    {
        bli_abort_msg( "Invalid BLIS trans value to map." );
    }
}
void bli_param_map_to_netlib_uplo ( char  blis_uplo,
void *  blas_uplo 
)