19bool mnlsame(
const char *,
const char *);
22int Mndspmv(
const char *uplo,
unsigned int n,
double alpha,
const double *ap,
const double *
x,
int incx,
double beta,
32 int kk, ix, iy, jx, jy, kx, ky;
144 else if (incx == 0) {
146 }
else if (incy == 0) {
156 if ((
n == 0) || (alpha == 0. && beta == 1.)) {
165 kx = 1 - (
n - 1) * incx;
170 ky = 1 - (
n - 1) * incy;
182 for (i__ = 1; i__ <= i__1; ++i__) {
188 for (i__ = 1; i__ <= i__1; ++i__) {
189 y[i__] = beta *
y[i__];
197 for (i__ = 1; i__ <= i__1; ++i__) {
204 for (i__ = 1; i__ <= i__1; ++i__) {
205 y[iy] = beta *
y[iy];
220 if (incx == 1 && incy == 1) {
222 for (j = 1; j <= i__1; ++j) {
223 temp1 = alpha *
x[j];
227 for (i__ = 1; i__ <= i__2; ++i__) {
228 y[i__] += temp1 * ap[k];
229 temp2 += ap[k] *
x[i__];
233 y[j] =
y[j] + temp1 * ap[kk + j - 1] + alpha * temp2;
241 for (j = 1; j <= i__1; ++j) {
242 temp1 = alpha *
x[jx];
247 for (k = 0; k <= i__2 - kk; ++k) {
248 y[iy] += temp1 * ap[k + kk];
249 temp2 += ap[k + kk] *
x[ix];
254 y[jy] =
y[jy] + temp1 * ap[kk + j - 1] + alpha * temp2;
265 if (incx == 1 && incy == 1) {
267 for (j = 1; j <= i__1; ++j) {
268 temp1 = alpha *
x[j];
270 y[j] += temp1 * ap[kk];
273 for (i__ = j + 1; i__ <= i__2; ++i__) {
274 y[i__] += temp1 * ap[k];
275 temp2 += ap[k] *
x[i__];
279 y[j] += alpha * temp2;
287 for (j = 1; j <= i__1; ++j) {
288 temp1 = alpha *
x[jx];
290 y[jy] += temp1 * ap[kk];
294 for (k = kk + 1; k <= i__2; ++k) {
297 y[iy] += temp1 * ap[k];
298 temp2 += ap[k] *
x[ix];
301 y[jy] += alpha * temp2;
bool mnlsame(const char *, const char *)
int mnxerbla(const char *, int)
int Mndspmv(const char *, unsigned int, double, const double *, const double *, int, double, double *, int)
tbb::task_arena is an alias of tbb::interface7::task_arena, which doesn't allow to forward declare tb...