00001 #include "blas.h"
00002
00003
00004
00005
00006 int icopy_(long* n, int* ix, long* incx, int* iy, long* incy)
00007 {
00008 register int* ixp;
00009 register int* iyp;
00010 register long i;
00011 for(i = 1, ixp = ix, iyp = iy; i <= *n; i++, ixp+=(*incx), iyp+=(*incy))
00012 *iyp = *ixp;
00013
00014 return 0;
00015 }
00016 int lcopy_(long* n, long* ix, long* incx, long* iy, long* incy)
00017 {
00018 register long* ixp;
00019 register long* iyp;
00020 register long i;
00021 for(i = 1, ixp = ix, iyp = iy; i <= *n;i++, ixp+=(*incx), iyp+=(*incy))
00022 *iyp = *ixp;
00023 return 0;
00024 };
00025 int scopy_(long* n, float* ix, long* incx, float* iy, long* incy)
00026 {
00027 register float* ixp;
00028 register float* iyp;
00029 register long i;
00030 for(i = 1, ixp = ix, iyp = iy; i <= *n;i++, ixp+=(*incx), iyp+=(*incy))
00031 *iyp = *ixp;
00032 return 0;
00033 };
00034
00035
00036
00037 int iscal_(long* n, int* ia, int* ix, long* incx)
00038 {
00039 register int* ixp;
00040 register int a = *ia;
00041 register long i;
00042 for(i = 1, ixp = ix; i <= *n; i++ , ixp+=(*incx))
00043 *ixp *= a;
00044 return 0;
00045 }
00046 int lscal_(long* n, long* la, long* ix, long* incx)
00047 {
00048 register long* ixp;
00049 register long a = *la;
00050 register long i;
00051 for(i = 1, ixp = ix; i <= *n; i++ , ixp+=(*incx))
00052 *ixp *= a;
00053 return 0;
00054 };
00055 int sscal_(long* n, float* sa, float* ix, long* incx)
00056 {
00057 register float* ixp;
00058 register float a = *sa;
00059 register long i;
00060 for(i = 1, ixp = ix; i <= *n; i++ , ixp+=(*incx))
00061 *ixp *= a;
00062 return 0;
00063 };
00064
00065
00066 int iaxpy_(long* n, int* ia, int* ix, long* incx, int* iy, long* incy)
00067 {
00068 register int* ixp;
00069 register int* iyp;
00070 register int a = *ia;
00071 register long i;
00072 for(i = 1, ixp = ix, iyp = iy; i <= *n; i++, ixp+=(*incx), iyp+=(*incy))
00073 *iyp += a*(*ixp);
00074 return 0;
00075 }
00076 int laxpy_(long* n, long* la, long* ix, long* incx, long* iy, long* incy)
00077 {
00078 register long* ixp;
00079 register long* iyp;
00080 register long a = *la;
00081 register long i;
00082 for(i = 1, ixp = ix, iyp = iy; i <= *n; i++, ixp+=(*incx), iyp+=(*incy))
00083 *iyp += a*(*ixp);
00084 return 0;
00085 };
00086 int saxpy_(long* n, float* sa, float* ix, long* incx, float* iy, long* incy)
00087 {
00088 register float* ixp;
00089 register float* iyp;
00090 register float a = *sa;
00091 register long i;
00092 for(i = 1, ixp = ix, iyp = iy; i <= *n; i++, ixp+=(*incx), iyp+=(*incy))
00093 *iyp += a*(*ixp);
00094 return 0;
00095 };
00096
00097
00098
00099
00100
00101
00102
00103
00104
00105
00106
00107
00108
00109
00110
00111
00112
00113
00114
00115
00116
00117
00118
00119
00120
00121
00122
00123
00124
00125
00126
00127
00128
00129
00130
00131
00132
00133
00134
00135
00136
00137
00138