aboutsummaryrefslogtreecommitdiff
path: root/include/libmath/blas.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/libmath/blas.h')
-rw-r--r--include/libmath/blas.h46
1 files changed, 26 insertions, 20 deletions
diff --git a/include/libmath/blas.h b/include/libmath/blas.h
index 83acb2c..b8930a8 100644
--- a/include/libmath/blas.h
+++ b/include/libmath/blas.h
@@ -10,8 +10,6 @@ enum
blas·LeftSide = 16u,
};
-typedef uint32 blas·Flag;
-
/*
* Floats
*/
@@ -31,17 +29,21 @@ int blas·fargmax(int len, float *x, int inc);
int blas·fargmin(int len, float *x, int inc);
// level 2
-void blas·tpmvf(blas·Flag f, int n, float *m, float *x);
-error blas·gemvf(int nrow, int ncol, float a, float *m, int incm, float *x, int incx, float b, float *y, int incy) ;
-void blas·tpsvf(blas·Flag f, int n, float *m, float *x);
-void blas·gerf(int nrow, int ncol, float a, float *x, int incx, float *y, int incy, float *m, int incm);
-void blas·herf(int n, float a, float *x, float *m);
-void blas·syrf(int nrow, int ncol, float a, float *x, float *m);
+error blas·fgemv(uint f, int nrow, int ncol, float a, float *m, int incm, float *x, int incx, float b, float *y, int incy);
+void blas·fsymv(uint f, int n, float a, float* m, int incm, float *x, int incx, float b, float *y, int incy);
+void blas·fspmv(uint f, int n, float a, float* m, float *x, int incx, float b, float *y, int incm);
+void blas·ftrmv(uint f, int n, float* m, int incm, float *x, int incx);
+void blas·ftpmv(uint f, int n, float *m, float *x, int incx);
+void blas·ftrsv(uint f, int n, float *m, int incm, float *x, int incx);
+void blas·ftpsv(uint f, int n, float *m, float *x, int incx);
+void blas·fger(int nrow, int ncol, float a, float *x, int incx, float *y, int incy, float *m, int incm);
+void blas·fsyr(uint f, int n, float a, float *x, int incx, float *m, int incm);
+void blas·fspr(uint f, int n, float a, float *x, int incx, float *m);
// level 3
-void blas·gemmf(int n1, int n2, int n3, float a, float *m1, float *m2, float b, float *m3);
-void blas·trmmf(blas·Flag f, int nrow, int ncol, float a, float *m1, float *m2);
-void blas·trsmf(blas·Flag f, int nrow, int ncol, float a, float *m1, float *m2);
+void blas·fgemm(uint tr1, uint tr2, int n1, int n2, int n3, float a, float *m1, int inc1, float *m2, int inc2, float b, float *m3, int inc3);
+void blas·ftrmm(uint f, int nrow, int ncol, float a, float *m1, float *m2);
+void blas·ftrsm(uint f, int nrow, int ncol, float a, float *m1, float *m2);
/*
* Doubles
@@ -62,17 +64,21 @@ int blas·dargmax(int len, double *x, int inc);
int blas·dargmin(int len, double *x, int inc);
// level 2
-void blas·tpmvd(blas·Flag f, int n, double *m, double *x);
-error blas·gemvd(int nrow, int ncol, double a, double *m, int incm, double *x, int incx, double b, double *y, int incy) ;
-void blas·tpsvd(blas·Flag f, int n, double *m, double *x);
-void blas·gerd(int nrow, int ncol, double a, double *x, int incx, double *y, int incy, double *m, int incm);
-void blas·herd(int n, double a, double *x, double *m);
-void blas·syrd(int nrow, int ncol, double a, double *x, double *m);
+error blas·dgemv(uint f, int nrow, int ncol, double a, double *m, int incm, double *x, int incx, double b, double *y, int incy);
+void blas·dsymv(uint f, int n, double a, double* m, int incm, double *x, int incx, double b, double *y, int incy);
+void blas·dspmv(uint f, int n, double a, double* m, double *x, int incx, double b, double *y, int incy);
+void blas·dtrmv(uint f, int n, double *m, int incm, double *x, int incx);
+void blas·dtpmv(uint f, int n, double *m, double *x, int incx);
+void blas·dtrsv(uint f, int n, double *m, int incm, double *x, int incx);
+void blas·dtpsv(uint f, int n, double *m, double *x, int incx);
+void blas·dger(int nrow, int ncol, double a, double *x, int incx, double *y, int incy, double *m, int incm);
+void blas·dsyr(uint flag, int n, double a, double *x, int incx, double *m, int incm);
+void blas·dspr(uint flag, int n, double a, double *x, int incx, double *m);
// level 3
-void blas·gemmd(int n1, int n2, int n3, double a, double *m1, double *m2, double b, double *m3);
-void blas·trmmd(blas·Flag f, int nrow, int ncol, double a, double *m1, double *m2);
-void blas·trsmd(blas·Flag f, int nrow, int ncol, double a, double *m1, double *m2);
+void blas·dgemm(uint tr1, uint tr2, int n1, int n2, int n3, double a, double *m1, int inc1, double *m2, int inc2, double b, double *m3, int inc3);
+void blas·dtrmm(uint f, int nrow, int ncol, double a, double *m1, double *m2);
+void blas·dtrsm(uint f, int nrow, int ncol, double a, double *m1, double *m2);
/*
* TODO: Complex