12 #include "cblas_f77.h" 13 void cblas_dspmv(
const CBLAS_LAYOUT layout,
14 const CBLAS_UPLO Uplo,
const CBLAS_INT N,
15 const double alpha,
const double *AP,
16 const double *X,
const CBLAS_INT incX,
const double beta,
17 double *Y,
const CBLAS_INT incY)
26 F77_INT F77_N=N, F77_incX=incX, F77_incY=incY;
32 extern int CBLAS_CallFromC;
33 extern int RowMajorStrg;
37 if (layout == CblasColMajor)
39 if (Uplo == CblasUpper) UL =
'U';
40 else if (Uplo == CblasLower) UL =
'L';
43 cblas_xerbla(2,
"cblas_dspmv",
"Illegal Uplo setting, %d\n",Uplo );
49 F77_UL = C2F_CHAR(&UL);
51 F77_dspmv(F77_UL, &F77_N, &alpha, AP, X,
52 &F77_incX, &beta, Y, &F77_incY);
54 else if (layout == CblasRowMajor)
57 if (Uplo == CblasUpper) UL =
'L';
58 else if (Uplo == CblasLower) UL =
'U';
61 cblas_xerbla(2,
"cblas_dspmv",
"Illegal Uplo setting, %d\n", Uplo);
67 F77_UL = C2F_CHAR(&UL);
69 F77_dspmv(F77_UL, &F77_N, &alpha,
70 AP, X,&F77_incX, &beta, Y, &F77_incY);
72 else cblas_xerbla(1,
"cblas_dspmv",
"Illegal layout setting, %d\n", layout);