269  {
  271  float *A, *B, *C;
  274 
  277 
  280        LDA = *k+1;
  281        LDB = *k+1;
  282        A   = ( float* )malloc( (*n)*LDA*sizeof( float ) );
  283        B   = ( float* )malloc( (*n)*LDB*sizeof( float ) );
  284        for( i=0; i<*n; i++ )
  285           for( j=0; j<*k; j++ ) {
  286              A[i*LDA+j]=a[j*(*lda)+i];
  287              B[i*LDB+j]=b[j*(*ldb)+i];
  288           }
  289     }
  290     else {
  291        LDA = *n+1;
  292        LDB = *n+1;
  293        A   = ( float* )malloc( LDA*(*k)*sizeof( float ) );
  294        B   = ( float* )malloc( LDB*(*k)*sizeof( float ) );
  295        for( i=0; i<*k; i++ )
  296           for( j=0; j<*n; j++ ){
  297              A[i*LDA+j]=a[j*(*lda)+i];
  298              B[i*LDB+j]=b[j*(*ldb)+i];
  299           }
  300     }
  301     LDC = *n+1;
  302     C   = ( float* )malloc( (*n)*LDC*sizeof( float ) );
  303     for( i=0; i<*n; i++ )
  304        for( j=0; j<*n; j++ )
  305           C[i*LDC+j]=c[j*(*ldc)+i];
  307                  B, LDB, *beta, C, LDC );
  308     for( j=0; j<*n; j++ )
  309        for( i=0; i<*n; i++ )
  310           c[j*(*ldc)+i]=C[i*LDC+j];
  311     free(A);
  312     free(B);
  313     free(C);
  314  }
  317                   b, *ldb, *beta, c, *ldc );
  318  else
  320                   b, *ldb, *beta, c, *ldc );
  321}
void cblas_ssyr2k(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, CBLAS_TRANSPOSE Trans, const CBLAS_INT N, const CBLAS_INT K, const float alpha, const float *A, const CBLAS_INT lda, const float *B, const CBLAS_INT ldb, const float beta, float *C, const CBLAS_INT ldc)
void get_uplo_type(char *type, CBLAS_UPLO *uplo)
void get_transpose_type(char *type, CBLAS_TRANSPOSE *trans)