91 #ifndef __CONDITIONALMACROS__
108 #if PRAGMA_STRUCT_ALIGN
109 #pragma options align = power
110 #elif PRAGMA_STRUCT_PACKPUSH
111 #pragma pack(push, 2)
112 #elif PRAGMA_STRUCT_PACK
116 #if PRAGMA_ENUM_ALWAYSINT
117 #if defined(__fourbyteints__) && !__fourbyteints__
118 #define __VBLAS__RESTORE_TWOBYTEINTS
119 #pragma fourbyteints on
121 #pragma enumsalwaysint on
122 #elif PRAGMA_ENUM_OPTIONS
123 #pragma option enum =int
124 #elif PRAGMA_ENUM_PACK
125 #if __option(pack_enums)
126 #define __VBLAS__RESTORE_PACKED_ENUMS
127 #pragma options(!pack_enums)
150 typedef enum CBLAS_TRANSPOSE CBLAS_TRANSPOSE;
157 typedef enum CBLAS_UPLO CBLAS_UPLO;
164 typedef enum CBLAS_DIAG CBLAS_DIAG;
171 typedef enum CBLAS_SIDE CBLAS_SIDE;
180 #define IsAlignedCount(n) ((n > 0) && ((n & 3L) == 0))
181 #define IsAlignedAddr(a) (((long)a & 15L) == 0)
206 cblas_sdot(
int N,
const float *X,
int incX,
const float *Y,
int incY);
272 cblas_saxpy(
int N,
float alpha,
const float *X,
int incX,
float *Y,
int incY);
283 cblas_srot(
int N,
float *X,
int incX,
float *Y,
int incY,
float c,
float s);
328 float alpha,
const float *A,
int lda,
const float *X,
int incX,
329 float beta,
float *Y,
int incY);
363 int M,
int N,
int K,
float alpha,
const float *A,
int lda,
364 const float *B,
int ldb,
float beta,
float *C,
int ldc);
411 typedef vector
float ConstVectorFloat;
421 vMultVecMat_4x4(ConstVectorFloat X[1], ConstVectorFloat A[4][1],
433 vMultMatVec_4x4(ConstVectorFloat A[4][1], ConstVectorFloat X[1],
445 vMultMatMat_4x4(ConstVectorFloat A[4][1], ConstVectorFloat B[4][1],
446 vector
float C[4][1]);
457 vMultVecMat_8x8(ConstVectorFloat X[2], ConstVectorFloat A[8][2],
469 vMultMatVec_8x8(ConstVectorFloat A[8][2], ConstVectorFloat X[2],
481 vMultMatMat_8x8(ConstVectorFloat A[8][2], ConstVectorFloat B[8][2],
482 vector
float C[8][2]);
493 vMultVecMat_16x16(ConstVectorFloat X[4], ConstVectorFloat A[16][4],
505 vMultMatVec_16x16(ConstVectorFloat A[16][4], ConstVectorFloat X[4],
517 vMultMatMat_16x16(ConstVectorFloat A[16][4], ConstVectorFloat B[16][4],
518 vector
float C[16][4]);
529 vMultVecMat_32x32(ConstVectorFloat X[8], ConstVectorFloat A[32][8],
541 vMultMatVec_32x32(ConstVectorFloat A[32][8], ConstVectorFloat X[8],
553 vMultMatMat_32x32(ConstVectorFloat A[32][8], ConstVectorFloat B[32][8],
554 vector
float C[32][8]);
586 const char *paramName,
588 const int *paramValue);
602 #if PRAGMA_ENUM_ALWAYSINT
603 #pragma enumsalwaysint reset
604 #ifdef __VBLAS__RESTORE_TWOBYTEINTS
605 #pragma fourbyteints off
607 #elif PRAGMA_ENUM_OPTIONS
608 #pragma option enum =reset
609 #elif defined(__VBLAS__RESTORE_PACKED_ENUMS)
610 #pragma options(pack_enums)
613 #if PRAGMA_STRUCT_ALIGN
614 #pragma options align = reset
615 #elif PRAGMA_STRUCT_PACKPUSH
617 #elif PRAGMA_STRUCT_PACK
621 #ifdef PRAGMA_IMPORT_OFF
Set up for compiler independent conditionals.
void cblas_srot(int N, float *X, int incX, float *Y, int incY, float c, float s)
float cblas_snrm2(int N, const float *X, int incX)
void cblas_sscal(int N, float alpha, float *X, int incX)
float cblas_sasum(int N, const float *X, int incX)
CBLAS_ORDER
Definition: vBLAS.h:138
void cblas_sgemm(CBLAS_ORDER order, CBLAS_TRANSPOSE transA, CBLAS_TRANSPOSE transB, int M, int N, int K, float alpha, const float *A, int lda, const float *B, int ldb, float beta, float *C, int ldc)
float cblas_sdot(int N, const float *X, int incX, const float *Y, int incY)
typedef CALLBACK_API_C(void, BLASParamErrorProc)(const char *funcName
void SetBLASParamErrorProc(BLASParamErrorProc ErrorProc)
void cblas_sgemv(CBLAS_ORDER order, CBLAS_TRANSPOSE transA, int M, int N, float alpha, const float *A, int lda, const float *X, int incX, float beta, float *Y, int incY)
void cblas_saxpy(int N, float alpha, const float *X, int incX, float *Y, int incY)
void cblas_sswap(int N, float *X, int incX, float *Y, int incY)
void cblas_scopy(int N, const float *X, int incX, float *Y, int incY)
int cblas_isamax(int N, const float *X, int incX)