Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008 #include "cblas.h"
00009 #include "cblas_f77.h"
00010 void cblas_cgeru(const enum CBLAS_ORDER order, const int M, const int N,
00011 const void *alpha, const void *X, const int incX,
00012 const void *Y, const int incY, void *A, const int lda)
00013 {
00014 #ifdef F77_INT
00015 F77_INT F77_M=M, F77_N=N, F77_lda=lda, F77_incX=incX, F77_incY=incY;
00016 #else
00017 #define F77_M M
00018 #define F77_N N
00019 #define F77_incX incX
00020 #define F77_incY incY
00021 #define F77_lda lda
00022 #endif
00023
00024 extern int CBLAS_CallFromC;
00025 extern int RowMajorStrg;
00026 RowMajorStrg = 0;
00027
00028 CBLAS_CallFromC = 1;
00029
00030 if (order == CblasColMajor)
00031 {
00032 F77_cgeru( &F77_M, &F77_N, alpha, X, &F77_incX, Y, &F77_incY, A,
00033 &F77_lda);
00034 }
00035 else if (order == CblasRowMajor)
00036 {
00037 RowMajorStrg = 1;
00038 F77_cgeru( &F77_N, &F77_M, alpha, Y, &F77_incY, X, &F77_incX, A,
00039 &F77_lda);
00040 }
00041 else cblas_xerbla(1, "cblas_cgeru","Illegal Order setting, %d\n", order);
00042 CBLAS_CallFromC = 0;
00043 RowMajorStrg = 0;
00044 return;
00045 }