37 #ifndef TEMPLATE_BLAS_TPMV_HEADER 38 #define TEMPLATE_BLAS_TPMV_HEADER 43 const Treal *ap, Treal *x,
const integer *incx)
133 }
else if (*incx == 0) {
148 kx = 1 - (*n - 1) * *incx;
149 }
else if (*incx != 1) {
160 for (j = 1; j <= i__1; ++j) {
165 for (i__ = 1; i__ <= i__2; ++i__) {
166 x[i__] += temp * ap[k];
171 x[j] *= ap[kk + j - 1];
180 for (j = 1; j <= i__1; ++j) {
185 for (k = kk; k <= i__2; ++k) {
186 x[ix] += temp * ap[k];
191 x[jx] *= ap[kk + j - 1];
200 kk = *n * (*n + 1) / 2;
202 for (j = *n; j >= 1; --j) {
207 for (i__ = *n; i__ >= i__1; --i__) {
208 x[i__] += temp * ap[k];
213 x[j] *= ap[kk - *n + j];
220 kx += (*n - 1) * *incx;
222 for (j = *n; j >= 1; --j) {
226 i__1 = kk - (*n - (j + 1));
227 for (k = kk; k >= i__1; --k) {
228 x[ix] += temp * ap[k];
233 x[jx] *= ap[kk - *n + j];
245 kk = *n * (*n + 1) / 2;
247 for (j = *n; j >= 1; --j) {
253 for (i__ = j - 1; i__ >= 1; --i__) {
254 temp += ap[k] * x[i__];
263 jx = kx + (*n - 1) * *incx;
264 for (j = *n; j >= 1; --j) {
271 for (k = kk - 1; k >= i__1; --k) {
273 temp += ap[k] * x[ix];
286 for (j = 1; j <= i__1; ++j) {
293 for (i__ = j + 1; i__ <= i__2; ++i__) {
294 temp += ap[k] * x[i__];
305 for (j = 1; j <= i__1; ++j) {
312 for (k = kk + 1; k <= i__2; ++k) {
314 temp += ap[k] * x[ix];
int template_blas_tpmv(const char *uplo, const char *trans, const char *diag, const integer *n, const Treal *ap, Treal *x, const integer *incx)
Definition: template_blas_tpmv.h:42
int integer
Definition: template_blas_common.h:40
int template_blas_erbla(const char *srname, integer *info)
Definition: template_blas_common.cc:146
bool logical
Definition: template_blas_common.h:41
logical template_blas_lsame(const char *ca, const char *cb)
Definition: template_blas_common.cc:46