14 const void *alpha,
const void *A,
const int lda,
15 const void *X,
const int incX,
const void *beta,
16 void *Y,
const int incY)
34 int n=0, i=0, incx=incX;
35 const float *xx= (
const float *)X;
36 float ALPHA[2],BETA[2];
38 float *x=(
float *)X, *y=(
float *)Y, *st=0, *tx=0;
53 cblas_xerbla(2,
"cblas_cgemv",
"Illegal TransA setting, %d\n", TransA);
59 F77_TA = C2F_CHAR(&TA);
61 F77_cgemv(F77_TA, &F77_M, &F77_N, alpha, A, &F77_lda, X, &F77_incX,
72 ALPHA[0]= *( (
const float *) alpha );
73 ALPHA[1]= -( *( (
const float *) alpha+1) );
74 BETA[0]= *( (
const float *) beta );
75 BETA[1]= -( *( (
const float *) beta+1 ) );
80 x = malloc(n*
sizeof(
float));
125 else stx = (
const float *)X;
129 cblas_xerbla(2,
"cblas_cgemv",
"Illegal TransA setting, %d\n", TransA);
135 F77_TA = C2F_CHAR(&TA);
138 F77_cgemv(F77_TA, &F77_N, &F77_M, ALPHA, A, &F77_lda, stx,
139 &F77_incX, BETA, Y, &F77_incY);
141 F77_cgemv(F77_TA, &F77_N, &F77_M, alpha, A, &F77_lda, x,
142 &F77_incX, beta, Y, &F77_incY);
146 if (x != (
const float *)X) free(x);
158 else cblas_xerbla(1,
"cblas_cgemv",
"Illegal layout setting, %d\n", layout);
void cblas_cgemv(const CBLAS_LAYOUT layout, const CBLAS_TRANSPOSE TransA, const int M, const int N, const void *alpha, const void *A, const int lda, const void *X, const int incX, const void *beta, void *Y, const int incY)
void cblas_xerbla(int p, const char *rout, const char *form,...)