10 #include "cblas_f77.h" 11 void cblas_dgbmv(
const CBLAS_LAYOUT layout,
12 const CBLAS_TRANSPOSE TransA,
const CBLAS_INT M,
const CBLAS_INT N,
13 const CBLAS_INT KL,
const CBLAS_INT KU,
14 const double alpha,
const double *A,
const CBLAS_INT lda,
15 const double *X,
const CBLAS_INT incX,
const double beta,
16 double *Y,
const CBLAS_INT incY)
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;
36 extern int CBLAS_CallFromC;
37 extern int RowMajorStrg;
41 if (layout == CblasColMajor)
43 if (TransA == CblasNoTrans) TA =
'N';
44 else if (TransA == CblasTrans) TA =
'T';
45 else if (TransA == CblasConjTrans) TA =
'C';
48 cblas_xerbla(2,
"cblas_dgbmv",
"Illegal TransA setting, %d\n", TransA);
54 F77_TA = C2F_CHAR(&TA);
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);
59 else if (layout == CblasRowMajor)
62 if (TransA == CblasNoTrans) TA =
'T';
63 else if (TransA == CblasTrans) TA =
'N';
64 else if (TransA == CblasConjTrans) TA =
'N';
67 cblas_xerbla(2,
"cblas_dgbmv",
"Illegal TransA setting, %d\n", TransA);
73 F77_TA = C2F_CHAR(&TA);
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);
78 else cblas_xerbla(1,
"cblas_dgbmv",
"Illegal layout setting, %d\n", layout);