GHOST  1.1.2
General, Hybrid, and Optimized Sparse Toolkit
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros
blas_mangle.h File Reference

Macros to "de-mangle" BLAS routines and includes and allow generic calls to them in the code. More...

#include <strings.h>
#include <cblas.h>
Include dependency graph for blas_mangle.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define blas_order(order)   order==GHOST_DENSEMAT_COLMAJOR?CblasColMajor:CblasRowMajor
 
#define blas_trans(trans)   trans[0]=='N'?CblasNoTrans:(trans[0]=='C'?CblasConjTrans:CblasTrans)
 
#define sgemm(order, transa, transb, m, n, k, alpha, a, lda, b, ldb, beta, c, ldc)   cblas_sgemm(blas_order(order),blas_trans(transa),blas_trans(transb),*m,*n,*k,*alpha,a,*lda,b,*ldb,*beta,c,*ldc)
 
#define dgemm(order, transa, transb, m, n, k, alpha, a, lda, b, ldb, beta, c, ldc)   cblas_dgemm(blas_order(order),blas_trans(transa),blas_trans(transb),*m,*n,*k,*alpha,a,*lda,b,*ldb,*beta,c,*ldc)
 
#define cgemm(order, transa, transb, m, n, k, alpha, a, lda, b, ldb, beta, c, ldc)   cblas_cgemm(blas_order(order),blas_trans(transa),blas_trans(transb),*m,*n,*k,alpha,a,*lda,b,*ldb,beta,c,*ldc)
 
#define zgemm(order, transa, transb, m, n, k, alpha, a, lda, b, ldb, beta, c, ldc)   cblas_zgemm(blas_order(order),blas_trans(transa),blas_trans(transb),*m,*n,*k,alpha,a,*lda,b,*ldb,beta,c,*ldc)
 

Detailed Description

Macros to "de-mangle" BLAS routines and includes and allow generic calls to them in the code.

Author
Moritz Kreutzer morit.nosp@m.z.kr.nosp@m.eutze.nosp@m.r@fa.nosp@m.u.de

Macro Definition Documentation

#define blas_order (   order)    order==GHOST_DENSEMAT_COLMAJOR?CblasColMajor:CblasRowMajor
#define blas_trans (   trans)    trans[0]=='N'?CblasNoTrans:(trans[0]=='C'?CblasConjTrans:CblasTrans)
#define cgemm (   order,
  transa,
  transb,
  m,
  n,
  k,
  alpha,
  a,
  lda,
  b,
  ldb,
  beta,
  c,
  ldc 
)    cblas_cgemm(blas_order(order),blas_trans(transa),blas_trans(transb),*m,*n,*k,alpha,a,*lda,b,*ldb,beta,c,*ldc)
#define dgemm (   order,
  transa,
  transb,
  m,
  n,
  k,
  alpha,
  a,
  lda,
  b,
  ldb,
  beta,
  c,
  ldc 
)    cblas_dgemm(blas_order(order),blas_trans(transa),blas_trans(transb),*m,*n,*k,*alpha,a,*lda,b,*ldb,*beta,c,*ldc)
#define sgemm (   order,
  transa,
  transb,
  m,
  n,
  k,
  alpha,
  a,
  lda,
  b,
  ldb,
  beta,
  c,
  ldc 
)    cblas_sgemm(blas_order(order),blas_trans(transa),blas_trans(transb),*m,*n,*k,*alpha,a,*lda,b,*ldb,*beta,c,*ldc)
#define zgemm (   order,
  transa,
  transb,
  m,
  n,
  k,
  alpha,
  a,
  lda,
  b,
  ldb,
  beta,
  c,
  ldc 
)    cblas_zgemm(blas_order(order),blas_trans(transa),blas_trans(transb),*m,*n,*k,alpha,a,*lda,b,*ldb,beta,c,*ldc)