diff options
Diffstat (limited to 'numpy')
-rw-r--r-- | numpy/core/src/multiarray/array_assign.c | 3 | ||||
-rw-r--r-- | numpy/core/src/multiarray/array_assign_scalar.c | 6 |
2 files changed, 5 insertions, 4 deletions
diff --git a/numpy/core/src/multiarray/array_assign.c b/numpy/core/src/multiarray/array_assign.c index 6467b6cfd..fa764d758 100644 --- a/numpy/core/src/multiarray/array_assign.c +++ b/numpy/core/src/multiarray/array_assign.c @@ -22,6 +22,7 @@ #include "array_assign.h" #include "common.h" +#include "lowlevel_strided_loops.h" /* See array_assign.h for parameter documentation */ NPY_NO_EXPORT int @@ -92,7 +93,7 @@ raw_array_is_aligned(int ndim, char *data, npy_intp *strides, int alignment) align_check |= strides[idim]; } - return ((align_check & (alignment - 1)) == 0); + return npy_is_aligned((void *)align_check, alignment); } else { return 1; diff --git a/numpy/core/src/multiarray/array_assign_scalar.c b/numpy/core/src/multiarray/array_assign_scalar.c index 2c1154264..df7facad6 100644 --- a/numpy/core/src/multiarray/array_assign_scalar.c +++ b/numpy/core/src/multiarray/array_assign_scalar.c @@ -48,7 +48,7 @@ raw_array_assign_scalar(int ndim, npy_intp *shape, /* Check alignment */ aligned = raw_array_is_aligned(ndim, dst_data, dst_strides, dst_dtype->alignment); - if (((npy_intp)src_data & (src_dtype->alignment - 1)) != 0) { + if (!npy_is_aligned(src_data, src_dtype->alignment)) { aligned = 0; } @@ -119,7 +119,7 @@ raw_array_wheremasked_assign_scalar(int ndim, npy_intp *shape, /* Check alignment */ aligned = raw_array_is_aligned(ndim, dst_data, dst_strides, dst_dtype->alignment); - if (((npy_intp)src_data & (src_dtype->alignment - 1)) != 0) { + if (!npy_is_aligned(src_data, src_dtype->alignment)) { aligned = 0; } @@ -220,7 +220,7 @@ PyArray_AssignRawScalar(PyArrayObject *dst, * we also skip this if 'dst' has an object dtype. */ if ((!PyArray_EquivTypes(PyArray_DESCR(dst), src_dtype) || - ((npy_intp)src_data & (src_dtype->alignment - 1)) != 0) && + !npy_is_aligned(src_data, src_dtype->alignment)) && PyArray_SIZE(dst) > 1 && !PyDataType_REFCHK(PyArray_DESCR(dst))) { char *tmp_src_data; |