37 #ifndef TEMPLATE_BLAS_GEMV_HEADER
38 #define TEMPLATE_BLAS_GEMV_HEADER
44 alpha,
const Treal *a,
const integer *lda,
const Treal *x,
const integer *incx,
45 const Treal *beta, Treal *y,
const integer *incy)
48 integer a_dim1, a_offset, i__1, i__2;
54 #define a_ref(a_1,a_2) a[(a_2)*a_dim1 + a_1]
125 a_offset = 1 + a_dim1 * 1;
140 }
else if (*incx == 0) {
142 }
else if (*incy == 0) {
150 if (*m == 0 || *n == 0 || (*alpha == 0. && *beta == 1.) ) {
165 kx = 1 - (lenx - 1) * *incx;
170 ky = 1 - (leny - 1) * *incy;
179 for (i__ = 1; i__ <= i__1; ++i__) {
185 for (i__ = 1; i__ <= i__1; ++i__) {
186 y[i__] = *beta * y[i__];
194 for (i__ = 1; i__ <= i__1; ++i__) {
201 for (i__ = 1; i__ <= i__1; ++i__) {
202 y[iy] = *beta * y[iy];
217 for (j = 1; j <= i__1; ++j) {
219 temp = *alpha * x[jx];
221 for (i__ = 1; i__ <= i__2; ++i__) {
222 y[i__] += temp *
a_ref(i__, j);
231 for (j = 1; j <= i__1; ++j) {
233 temp = *alpha * x[jx];
236 for (i__ = 1; i__ <= i__2; ++i__) {
237 y[iy] += temp *
a_ref(i__, j);
251 for (j = 1; j <= i__1; ++j) {
254 for (i__ = 1; i__ <= i__2; ++i__) {
255 temp +=
a_ref(i__, j) * x[i__];
258 y[jy] += *alpha * temp;
264 for (j = 1; j <= i__1; ++j) {
268 for (i__ = 1; i__ <= i__2; ++i__) {
269 temp +=
a_ref(i__, j) * x[ix];
273 y[jy] += *alpha * temp;