v0.9.0
Macros | Functions
cblas_dgbmv.c File Reference
#include "cblas.h"
#include "cblas_f77.h"

Go to the source code of this file.

Macros

#define F77_TA   &TA
 
#define F77_M   M
 
#define F77_N   N
 
#define F77_lda   lda
 
#define F77_KL   KL
 
#define F77_KU   KU
 
#define F77_incX   incX
 
#define F77_incY   incY
 

Functions

void cblas_dgbmv (const enum CBLAS_ORDER order, const enum CBLAS_TRANSPOSE TransA, const int M, const int N, const int KL, const int KU, const double alpha, const double *A, const int lda, const double *X, const int incX, const double beta, double *Y, const int incY)
 

Macro Definition Documentation

◆ F77_incX

#define F77_incX   incX

◆ F77_incY

#define F77_incY   incY

◆ F77_KL

#define F77_KL   KL

◆ F77_KU

#define F77_KU   KU

◆ F77_lda

#define F77_lda   lda

◆ F77_M

#define F77_M   M

◆ F77_N

#define F77_N   N

◆ F77_TA

#define F77_TA   &TA

Function Documentation

◆ cblas_dgbmv()

void cblas_dgbmv ( const enum CBLAS_ORDER  order,
const enum CBLAS_TRANSPOSE  TransA,
const int  M,
const int  N,
const int  KL,
const int  KU,
const double  alpha,
const double A,
const int  lda,
const double X,
const int  incX,
const double  beta,
double Y,
const int  incY 
)

Definition at line 11 of file cblas_dgbmv.c.

17 {
18  char TA;
19 #ifdef F77_CHAR
20  F77_CHAR F77_TA;
21 #else
22  #define F77_TA &TA
23 #endif
24 #ifdef F77_INT
25  F77_INT F77_M=M, F77_N=N, F77_lda=lda, F77_incX=incX, F77_incY=incY;
26  F77_INT F77_KL=KL,F77_KU=KU;
27 #else
28  #define F77_M M
29  #define F77_N N
30  #define F77_lda lda
31  #define F77_KL KL
32  #define F77_KU KU
33  #define F77_incX incX
34  #define F77_incY incY
35 #endif
36  extern int CBLAS_CallFromC;
37  extern int RowMajorStrg;
38  RowMajorStrg = 0;
39 
40  CBLAS_CallFromC = 1;
41  if (order == CblasColMajor)
42  {
43  if (TransA == CblasNoTrans) TA = 'N';
44  else if (TransA == CblasTrans) TA = 'T';
45  else if (TransA == CblasConjTrans) TA = 'C';
46  else
47  {
48  cblas_xerbla(2, "cblas_dgbmv","Illegal TransA setting, %d\n", TransA);
49  CBLAS_CallFromC = 0;
50  RowMajorStrg = 0;
51  return;
52  }
53  #ifdef F77_CHAR
54  F77_TA = C2F_CHAR(&TA);
55  #endif
56  F77_dgbmv(F77_TA, &F77_M, &F77_N, &F77_KL, &F77_KU, &alpha,
57  A, &F77_lda, X, &F77_incX, &beta, Y, &F77_incY);
58  }
59  else if (order == CblasRowMajor)
60  {
61  RowMajorStrg = 1;
62  if (TransA == CblasNoTrans) TA = 'T';
63  else if (TransA == CblasTrans) TA = 'N';
64  else if (TransA == CblasConjTrans) TA = 'N';
65  else
66  {
67  cblas_xerbla(2, "cblas_dgbmv","Illegal TransA setting, %d\n", TransA);
68  CBLAS_CallFromC = 0;
69  RowMajorStrg = 0;
70  return;
71  }
72  #ifdef F77_CHAR
73  F77_TA = C2F_CHAR(&TA);
74  #endif
75  F77_dgbmv(F77_TA, &F77_N, &F77_M, &F77_KU, &F77_KL, &alpha,
76  A ,&F77_lda, X,&F77_incX, &beta, Y, &F77_incY);
77  }
78  else cblas_xerbla(1, "cblas_dgbmv", "Illegal Order setting, %d\n", order);
79  CBLAS_CallFromC = 0;
80  RowMajorStrg = 0;
81 }
#define F77_N
#define F77_incX
#define F77_KL
#define F77_incY
int CBLAS_CallFromC
Definition: cblas_globals.c:1
void cblas_xerbla(int p, const char *rout, const char *form,...)
Definition: cblas_xerbla.c:8
#define F77_M
#define F77_KU
#define F77_lda
const int N
Definition: speed_test.cpp:3
#define F77_TA
void F77_dgbmv(FCHAR, FINT, FINT, FINT, FINT, const double *, const double *, FINT, const double *, FINT, const double *, double *, FINT)
int RowMajorStrg
Definition: cblas_globals.c:2