11 #include "cblas_f77.h" 12 void cblas_cherk(
const CBLAS_LAYOUT layout,
const CBLAS_UPLO Uplo,
13 const CBLAS_TRANSPOSE Trans,
const CBLAS_INT N,
const CBLAS_INT K,
14 const float alpha,
const void *A,
const CBLAS_INT lda,
15 const float beta,
void *C,
const CBLAS_INT ldc)
19 F77_CHAR F77_TR, F77_UL;
26 F77_INT F77_N=N, F77_K=K, F77_lda=lda;
35 extern int CBLAS_CallFromC;
36 extern int RowMajorStrg;
40 if( layout == CblasColMajor )
42 if( Uplo == CblasUpper) UL=
'U';
43 else if ( Uplo == CblasLower ) UL=
'L';
46 cblas_xerbla(2,
"cblas_cherk",
"Illegal Uplo setting, %d\n", Uplo);
52 if( Trans == CblasTrans) TR =
'T';
53 else if ( Trans == CblasConjTrans ) TR=
'C';
54 else if ( Trans == CblasNoTrans ) TR=
'N';
57 cblas_xerbla(3,
"cblas_cherk",
"Illegal Trans setting, %d\n", Trans);
64 F77_UL = C2F_CHAR(&UL);
65 F77_TR = C2F_CHAR(&TR);
68 F77_cherk(F77_UL, F77_TR, &F77_N, &F77_K, &alpha, A, &F77_lda,
70 }
else if (layout == CblasRowMajor)
73 if( Uplo == CblasUpper) UL=
'L';
74 else if ( Uplo == CblasLower ) UL=
'U';
77 cblas_xerbla(3,
"cblas_cherk",
"Illegal Uplo setting, %d\n", Uplo);
82 if( Trans == CblasTrans) TR =
'N';
83 else if ( Trans == CblasConjTrans ) TR=
'N';
84 else if ( Trans == CblasNoTrans ) TR=
'C';
87 cblas_xerbla(3,
"cblas_cherk",
"Illegal Trans setting, %d\n", Trans);
94 F77_UL = C2F_CHAR(&UL);
95 F77_SD = C2F_CHAR(&SD);
98 F77_cherk(F77_UL, F77_TR, &F77_N, &F77_K, &alpha, A, &F77_lda,
101 else cblas_xerbla(1,
"cblas_cherk",
"Illegal layout setting, %d\n", layout);