1
      2
      3
      4
      5
      6
      7
      8
      9
     10
     11
     12
     13
     14
     15
     16
     17
     18
     19
     20
     21
#ifndef HPC_ULMBLAS_SCAL_H
#define HPC_ULMBLAS_SCAL_H 1

namespace hpc { namespace ulmblas {

template <typename Index, typename Alpha, typename TX>
void
scal(Index n,
     const Alpha &alpha,
     TX *x, Index incX)
{
    if (alpha!=Alpha(1)) {
        for (Index i=0; i<n; ++i) {
            x[i*incX] *= alpha;
        }
    }
}

} } // namespace ulmblas, hpc

#endif // HPC_ULMBLAS_SCAL_H