diff options
author | Gengxin Xie <gengxin.xie@intel.com> | 2020-06-11 09:59:35 +0800 |
---|---|---|
committer | Gengxin Xie <gengxin.xie@intel.com> | 2020-06-11 10:18:02 +0800 |
commit | 72ac535491d62c440715efd90a10346d056cd06f (patch) | |
tree | 9a1eddbca9b8f6cc1a84ea5cba901eaf314ba3d1 | |
parent | 68ebc2bad1ad6a99e9939eff205a1a6d936cf4fd (diff) | |
download | numpy-72ac535491d62c440715efd90a10346d056cd06f.tar.gz |
BUG: fix sin/cos bug when input is strided
-rw-r--r-- | numpy/core/src/umath/simd.inc.src | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/numpy/core/src/umath/simd.inc.src b/numpy/core/src/umath/simd.inc.src index 48e89915c..e6414e29e 100644 --- a/numpy/core/src/umath/simd.inc.src +++ b/numpy/core/src/umath/simd.inc.src @@ -2698,17 +2698,17 @@ static NPY_GCC_OPT_3 NPY_GCC_TARGET_@ISA@ void /* process elements using glibc for large elements */ if (my_trig_op == npy_compute_cos) { - for (int ii = 0; iglibc_mask != 0; ii++) { + for (int ii = 0, jj = 0; iglibc_mask != 0; ii++, jj += stride) { if (iglibc_mask & 0x01) { - op[ii] = npy_cosf(ip[ii]); + op[ii] = npy_cosf(ip[jj]); } iglibc_mask = iglibc_mask >> 1; } } else { - for (int ii = 0; iglibc_mask != 0; ii++) { + for (int ii = 0, jj = 0; iglibc_mask != 0; ii++, jj += stride) { if (iglibc_mask & 0x01) { - op[ii] = npy_sinf(ip[ii]); + op[ii] = npy_sinf(ip[jj]); } iglibc_mask = iglibc_mask >> 1; } |