11 #include "cblas_f77.h" 12 void cblas_ssyrk(
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 float *A,
const CBLAS_INT lda,
15 const float beta,
float *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 )
43 if( Uplo == CblasUpper) UL=
'U';
44 else if ( Uplo == CblasLower ) UL=
'L';
47 cblas_xerbla(2,
"cblas_ssyrk",
48 "Illegal Uplo setting, %d\n", Uplo);
54 if( Trans == CblasTrans) TR =
'T';
55 else if ( Trans == CblasConjTrans ) TR=
'C';
56 else if ( Trans == CblasNoTrans ) TR=
'N';
59 cblas_xerbla(3,
"cblas_ssyrk",
60 "Illegal Trans setting, %d\n", Trans);
68 F77_UL = C2F_CHAR(&UL);
69 F77_TR = C2F_CHAR(&TR);
72 F77_ssyrk(F77_UL, F77_TR, &F77_N, &F77_K, &alpha, A, &F77_lda, &beta, C, &F77_ldc);
73 }
else if (layout == CblasRowMajor)
76 if( Uplo == CblasUpper) UL=
'L';
77 else if ( Uplo == CblasLower ) UL=
'U';
80 cblas_xerbla(3,
"cblas_ssyrk",
81 "Illegal Uplo setting, %d\n", Uplo);
86 if( Trans == CblasTrans) TR =
'N';
87 else if ( Trans == CblasConjTrans ) TR=
'N';
88 else if ( Trans == CblasNoTrans ) TR=
'T';
91 cblas_xerbla(3,
"cblas_ssyrk",
92 "Illegal Trans setting, %d\n", Trans);
99 F77_UL = C2F_CHAR(&UL);
100 F77_TR = C2F_CHAR(&TR);
103 F77_ssyrk(F77_UL, F77_TR, &F77_N, &F77_K, &alpha, A, &F77_lda, &beta, C, &F77_ldc);
104 }
else cblas_xerbla(1,
"cblas_ssyrk",
105 "Illegal layout setting, %d\n", layout);