11 #include "cblas_f77.h" 12 void cblas_zher2(
const CBLAS_LAYOUT layout,
const CBLAS_UPLO Uplo,
13 const CBLAS_INT N,
const void *alpha,
const void *X,
const CBLAS_INT incX,
14 const void *Y,
const CBLAS_INT incY,
void *A,
const CBLAS_INT lda)
24 F77_INT F77_N=N, F77_lda=lda, F77_incX=incX, F77_incY=incY;
31 CBLAS_INT n, i, j, tincx, tincy, incx=incX, incy=incY;
32 double *x=(
double *)X, *xx=(
double *)X, *y=(
double *)Y,
33 *yy=(
double *)Y, *tx, *ty, *stx, *sty;
35 extern int CBLAS_CallFromC;
36 extern int RowMajorStrg;
40 if (layout == CblasColMajor)
42 if (Uplo == CblasLower) UL =
'L';
43 else if (Uplo == CblasUpper) UL =
'U';
46 cblas_xerbla(2,
"cblas_zher2",
"Illegal Uplo setting, %d\n",Uplo );
52 F77_UL = C2F_CHAR(&UL);
55 F77_zher2(F77_UL, &F77_N, alpha, X, &F77_incX,
56 Y, &F77_incY, A, &F77_lda);
58 }
else if (layout == CblasRowMajor)
61 if (Uplo == CblasUpper) UL =
'L';
62 else if (Uplo == CblasLower) UL =
'U';
65 cblas_xerbla(2,
"cblas_zher2",
"Illegal Uplo setting, %d\n", Uplo);
71 F77_UL = C2F_CHAR(&UL);
76 x = malloc(n*
sizeof(
double));
77 y = malloc(n*
sizeof(
double));
135 F77_zher2(F77_UL, &F77_N, alpha, y, &F77_incY, x,
136 &F77_incX, A, &F77_lda);
140 cblas_xerbla(1,
"cblas_zher2",
"Illegal layout setting, %d\n", layout);