diff options
author | maxim-yurchuk <maxim-yurchuk@yandex-team.com> | 2024-10-09 12:29:46 +0300 |
---|---|---|
committer | maxim-yurchuk <maxim-yurchuk@yandex-team.com> | 2024-10-09 13:14:22 +0300 |
commit | 9731d8a4bb7ee2cc8554eaf133bb85498a4c7d80 (patch) | |
tree | a8fb3181d5947c0d78cf402aa56e686130179049 /contrib/python/numpy/py3/patches/12-arrch64.patch | |
parent | a44b779cd359f06c3ebbef4ec98c6b38609d9d85 (diff) | |
download | ydb-9731d8a4bb7ee2cc8554eaf133bb85498a4c7d80.tar.gz |
publishFullContrib: true for ydb
<HIDDEN_URL>
commit_hash:c82a80ac4594723cebf2c7387dec9c60217f603e
Diffstat (limited to 'contrib/python/numpy/py3/patches/12-arrch64.patch')
-rw-r--r-- | contrib/python/numpy/py3/patches/12-arrch64.patch | 327 |
1 files changed, 327 insertions, 0 deletions
diff --git a/contrib/python/numpy/py3/patches/12-arrch64.patch b/contrib/python/numpy/py3/patches/12-arrch64.patch new file mode 100644 index 0000000000..4c1cf87244 --- /dev/null +++ b/contrib/python/numpy/py3/patches/12-arrch64.patch @@ -0,0 +1,327 @@ +--- contrib/python/numpy/py3/numpy/core/src/_simd/_simd.dispatch.h (index) ++++ contrib/python/numpy/py3/numpy/core/src/_simd/_simd.dispatch.h (working tree) +@@ -10,8 +10,13 @@ + #undef NPY__CPU_DISPATCH_CALL + #define NPY__CPU_DISPATCH_BASELINE_CALL(CB, ...) \ + NPY__CPU_DISPATCH_EXPAND_(CB(__VA_ARGS__)) ++#if defined(__x86_64__) || defined(_M_X64) + #define NPY__CPU_DISPATCH_CALL(CHK, CB, ...) \ + NPY__CPU_DISPATCH_EXPAND_(CB((CHK(AVX512_SKX)), AVX512_SKX, __VA_ARGS__)) \ + NPY__CPU_DISPATCH_EXPAND_(CB((CHK(AVX512F)), AVX512F, __VA_ARGS__)) \ + NPY__CPU_DISPATCH_EXPAND_(CB((CHK(AVX)&&CHK(F16C)&&CHK(FMA3)&&CHK(AVX2)), FMA3__AVX2, __VA_ARGS__)) \ + NPY__CPU_DISPATCH_EXPAND_(CB((CHK(SSE)&&CHK(SSE2)&&CHK(SSE3)&&CHK(SSSE3)&&CHK(SSE41)&&CHK(POPCNT)&&CHK(SSE42)), SSE42, __VA_ARGS__)) ++#elif defined(__aarch64__) ++#define NPY__CPU_DISPATCH_CALL(CHK, CB, ...) \ ++ ++#endif +--- contrib/python/numpy/py3/numpy/core/src/umath/_umath_tests.dispatch.h (index) ++++ contrib/python/numpy/py3/numpy/core/src/umath/_umath_tests.dispatch.h (working tree) +@@ -10,6 +10,11 @@ + #undef NPY__CPU_DISPATCH_CALL + #define NPY__CPU_DISPATCH_BASELINE_CALL(CB, ...) \ + NPY__CPU_DISPATCH_EXPAND_(CB(__VA_ARGS__)) ++#if defined(__x86_64__) || defined(_M_X64) + #define NPY__CPU_DISPATCH_CALL(CHK, CB, ...) \ + NPY__CPU_DISPATCH_EXPAND_(CB((CHK(AVX)&&CHK(F16C)&&CHK(AVX2)), AVX2, __VA_ARGS__)) \ + NPY__CPU_DISPATCH_EXPAND_(CB((CHK(SSE)&&CHK(SSE2)&&CHK(SSE3)&&CHK(SSSE3)&&CHK(SSE41)), SSE41, __VA_ARGS__)) ++#elif defined(__aarch64__) ++#define NPY__CPU_DISPATCH_CALL(CHK, CB, ...) \ ++ NPY__CPU_DISPATCH_EXPAND_(CB((CHK(ASIMD)&&CHK(ASIMDHP)), ASIMDHP, __VA_ARGS__)) ++#endif +--- contrib/python/numpy/py3/numpy/core/src/umath/loops_arithm_fp.dispatch.h (index) ++++ contrib/python/numpy/py3/numpy/core/src/umath/loops_arithm_fp.dispatch.h (working tree) +@@ -10,5 +10,10 @@ + #undef NPY__CPU_DISPATCH_CALL + #define NPY__CPU_DISPATCH_BASELINE_CALL(CB, ...) \ + NPY__CPU_DISPATCH_EXPAND_(CB(__VA_ARGS__)) ++#if defined(__x86_64__) || defined(_M_X64) + #define NPY__CPU_DISPATCH_CALL(CHK, CB, ...) \ + NPY__CPU_DISPATCH_EXPAND_(CB((CHK(AVX)&&CHK(F16C)&&CHK(FMA3)&&CHK(AVX2)), FMA3__AVX2, __VA_ARGS__)) ++#elif defined(__aarch64__) ++#define NPY__CPU_DISPATCH_CALL(CHK, CB, ...) \ ++ ++#endif +--- contrib/python/numpy/py3/numpy/core/src/umath/loops_arithmetic.dispatch.h (index) ++++ contrib/python/numpy/py3/numpy/core/src/umath/loops_arithmetic.dispatch.h (working tree) +@@ -10,8 +10,13 @@ + #undef NPY__CPU_DISPATCH_CALL + #define NPY__CPU_DISPATCH_BASELINE_CALL(CB, ...) \ + NPY__CPU_DISPATCH_EXPAND_(CB(__VA_ARGS__)) ++#if defined(__x86_64__) || defined(_M_X64) + #define NPY__CPU_DISPATCH_CALL(CHK, CB, ...) \ + NPY__CPU_DISPATCH_EXPAND_(CB((CHK(AVX512_SKX)), AVX512_SKX, __VA_ARGS__)) \ + NPY__CPU_DISPATCH_EXPAND_(CB((CHK(AVX512F)), AVX512F, __VA_ARGS__)) \ + NPY__CPU_DISPATCH_EXPAND_(CB((CHK(AVX)&&CHK(F16C)&&CHK(AVX2)), AVX2, __VA_ARGS__)) \ + NPY__CPU_DISPATCH_EXPAND_(CB((CHK(SSE)&&CHK(SSE2)&&CHK(SSE3)&&CHK(SSSE3)&&CHK(SSE41)), SSE41, __VA_ARGS__)) ++#elif defined(__aarch64__) ++#define NPY__CPU_DISPATCH_CALL(CHK, CB, ...) \ ++ ++#endif +--- contrib/python/numpy/py3/numpy/core/src/umath/loops_exponent_log.dispatch.h (index) ++++ contrib/python/numpy/py3/numpy/core/src/umath/loops_exponent_log.dispatch.h (working tree) +@@ -10,7 +10,12 @@ + #undef NPY__CPU_DISPATCH_CALL + #define NPY__CPU_DISPATCH_BASELINE_CALL(CB, ...) \ + NPY__CPU_DISPATCH_EXPAND_(CB(__VA_ARGS__)) ++#if defined(__x86_64__) || defined(_M_X64) + #define NPY__CPU_DISPATCH_CALL(CHK, CB, ...) \ + NPY__CPU_DISPATCH_EXPAND_(CB((CHK(AVX512_SKX)), AVX512_SKX, __VA_ARGS__)) \ + NPY__CPU_DISPATCH_EXPAND_(CB((CHK(AVX512F)), AVX512F, __VA_ARGS__)) \ + NPY__CPU_DISPATCH_EXPAND_(CB((CHK(AVX)&&CHK(F16C)&&CHK(FMA3)&&CHK(AVX2)), FMA3__AVX2, __VA_ARGS__)) ++#elif defined(__aarch64__) ++#define NPY__CPU_DISPATCH_CALL(CHK, CB, ...) \ ++ ++#endif +--- contrib/python/numpy/py3/numpy/core/src/umath/loops_trigonometric.dispatch.h (index) ++++ contrib/python/numpy/py3/numpy/core/src/umath/loops_trigonometric.dispatch.h (working tree) +@@ -10,6 +10,11 @@ + #undef NPY__CPU_DISPATCH_CALL + #define NPY__CPU_DISPATCH_BASELINE_CALL(CB, ...) \ + NPY__CPU_DISPATCH_EXPAND_(CB(__VA_ARGS__)) ++#if defined(__x86_64__) || defined(_M_X64) + #define NPY__CPU_DISPATCH_CALL(CHK, CB, ...) \ + NPY__CPU_DISPATCH_EXPAND_(CB((CHK(AVX512F)), AVX512F, __VA_ARGS__)) \ + NPY__CPU_DISPATCH_EXPAND_(CB((CHK(AVX)&&CHK(F16C)&&CHK(FMA3)&&CHK(AVX2)), FMA3__AVX2, __VA_ARGS__)) ++#elif defined(__aarch64__) ++#define NPY__CPU_DISPATCH_CALL(CHK, CB, ...) \ ++ ++#endif +--- contrib/python/numpy/py3/numpy/core/src/umath/loops_umath_fp.dispatch.h (index) ++++ contrib/python/numpy/py3/numpy/core/src/umath/loops_umath_fp.dispatch.h (working tree) +@@ -10,5 +10,10 @@ + #undef NPY__CPU_DISPATCH_CALL + #define NPY__CPU_DISPATCH_BASELINE_CALL(CB, ...) \ + NPY__CPU_DISPATCH_EXPAND_(CB(__VA_ARGS__)) ++#if defined(__x86_64__) || defined(_M_X64) + #define NPY__CPU_DISPATCH_CALL(CHK, CB, ...) \ + NPY__CPU_DISPATCH_EXPAND_(CB((CHK(AVX512_SKX)), AVX512_SKX, __VA_ARGS__)) ++#elif defined(__aarch64__) ++#define NPY__CPU_DISPATCH_CALL(CHK, CB, ...) \ ++ ++#endif +--- contrib/python/numpy/py3/numpy/core/src/umath/loops_unary_fp.dispatch.h (index) ++++ contrib/python/numpy/py3/numpy/core/src/umath/loops_unary_fp.dispatch.h (working tree) +@@ -10,5 +10,10 @@ + #undef NPY__CPU_DISPATCH_CALL + #define NPY__CPU_DISPATCH_BASELINE_CALL(CB, ...) \ + NPY__CPU_DISPATCH_EXPAND_(CB(__VA_ARGS__)) ++#if defined(__x86_64__) || defined(_M_X64) + #define NPY__CPU_DISPATCH_CALL(CHK, CB, ...) \ + NPY__CPU_DISPATCH_EXPAND_(CB((CHK(SSE)&&CHK(SSE2)&&CHK(SSE3)&&CHK(SSSE3)&&CHK(SSE41)), SSE41, __VA_ARGS__)) ++#elif defined(__aarch64__) ++#define NPY__CPU_DISPATCH_CALL(CHK, CB, ...) \ ++ ++#endif +--- contrib/python/numpy/py3/numpy/core/src/multiarray/argfunc.dispatch.h (index) ++++ contrib/python/numpy/py3/numpy/core/src/multiarray/argfunc.dispatch.h (working tree) +@@ -10,7 +10,12 @@ + #undef NPY__CPU_DISPATCH_CALL + #define NPY__CPU_DISPATCH_BASELINE_CALL(CB, ...) \ + NPY__CPU_DISPATCH_EXPAND_(CB(__VA_ARGS__)) ++#if defined(__x86_64__) || defined(_M_X64) + #define NPY__CPU_DISPATCH_CALL(CHK, CB, ...) \ + NPY__CPU_DISPATCH_EXPAND_(CB((CHK(AVX512_SKX)), AVX512_SKX, __VA_ARGS__)) \ + NPY__CPU_DISPATCH_EXPAND_(CB((CHK(AVX)&&CHK(F16C)&&CHK(AVX2)), AVX2, __VA_ARGS__)) \ + NPY__CPU_DISPATCH_EXPAND_(CB((CHK(SSE)&&CHK(SSE2)&&CHK(SSE3)&&CHK(SSSE3)&&CHK(SSE41)&&CHK(POPCNT)&&CHK(SSE42)), SSE42, __VA_ARGS__)) ++#elif defined(__aarch64__) ++#define NPY__CPU_DISPATCH_CALL(CHK, CB, ...) \ ++ ++#endif +--- contrib/python/numpy/py3/numpy/core/src/umath/loops_hyperbolic.dispatch.h (index) ++++ contrib/python/numpy/py3/numpy/core/src/umath/loops_hyperbolic.dispatch.h (working tree) +@@ -10,6 +10,11 @@ + #undef NPY__CPU_DISPATCH_CALL + #define NPY__CPU_DISPATCH_BASELINE_CALL(CB, ...) \ + NPY__CPU_DISPATCH_EXPAND_(CB(__VA_ARGS__)) ++#if defined(__x86_64__) || defined(_M_X64) + #define NPY__CPU_DISPATCH_CALL(CHK, CB, ...) \ + NPY__CPU_DISPATCH_EXPAND_(CB((CHK(AVX512_SKX)), AVX512_SKX, __VA_ARGS__)) \ + NPY__CPU_DISPATCH_EXPAND_(CB((CHK(AVX)&&CHK(F16C)&&CHK(FMA3)&&CHK(AVX2)), FMA3__AVX2, __VA_ARGS__)) ++#elif defined(__aarch64__) ++#define NPY__CPU_DISPATCH_CALL(CHK, CB, ...) \ ++ ++#endif +--- contrib/python/numpy/py3/numpy/core/src/umath/loops_minmax.dispatch.h (index) ++++ contrib/python/numpy/py3/numpy/core/src/umath/loops_minmax.dispatch.h (working tree) +@@ -10,6 +10,11 @@ + #undef NPY__CPU_DISPATCH_CALL + #define NPY__CPU_DISPATCH_BASELINE_CALL(CB, ...) \ + NPY__CPU_DISPATCH_EXPAND_(CB(__VA_ARGS__)) ++#if defined(__x86_64__) || defined(_M_X64) + #define NPY__CPU_DISPATCH_CALL(CHK, CB, ...) \ + NPY__CPU_DISPATCH_EXPAND_(CB((CHK(AVX512_SKX)), AVX512_SKX, __VA_ARGS__)) \ + NPY__CPU_DISPATCH_EXPAND_(CB((CHK(AVX)&&CHK(F16C)&&CHK(AVX2)), AVX2, __VA_ARGS__)) ++#elif defined(__aarch64__) ++#define NPY__CPU_DISPATCH_CALL(CHK, CB, ...) \ ++ ++#endif +--- contrib/python/numpy/py3/numpy/core/src/umath/loops_comparison.dispatch.h (index) ++++ contrib/python/numpy/py3/numpy/core/src/umath/loops_comparison.dispatch.h (working tree) +@@ -10,8 +10,13 @@ + #undef NPY__CPU_DISPATCH_CALL + #define NPY__CPU_DISPATCH_BASELINE_CALL(CB, ...) \ + NPY__CPU_DISPATCH_EXPAND_(CB(__VA_ARGS__)) ++#if defined(__x86_64__) || defined(_M_X64) + #define NPY__CPU_DISPATCH_CALL(CHK, CB, ...) \ + NPY__CPU_DISPATCH_EXPAND_(CB((CHK(AVX512_SKX)), AVX512_SKX, __VA_ARGS__)) \ + NPY__CPU_DISPATCH_EXPAND_(CB((CHK(AVX512F)), AVX512F, __VA_ARGS__)) \ + NPY__CPU_DISPATCH_EXPAND_(CB((CHK(AVX)&&CHK(F16C)&&CHK(AVX2)), AVX2, __VA_ARGS__)) \ + NPY__CPU_DISPATCH_EXPAND_(CB((CHK(SSE)&&CHK(SSE2)&&CHK(SSE3)&&CHK(SSSE3)&&CHK(SSE41)&&CHK(POPCNT)&&CHK(SSE42)), SSE42, __VA_ARGS__)) ++#elif defined(__aarch64__) ++#define NPY__CPU_DISPATCH_CALL(CHK, CB, ...) \ ++ ++#endif +--- contrib/python/numpy/py3/numpy/core/src/umath/_umath_tests.dispatch.asimdhp.c (index) ++++ contrib/python/numpy/py3/numpy/core/src/umath/_umath_tests.dispatch.asimdhp.c (working tree) +@@ -0,0 +1,12 @@ ++/** ++ * AUTOGENERATED DON'T EDIT ++ * Please make changes to the code generator (distutils/ccompiler_opt.py) ++ */ ++#define NPY__CPU_TARGET_MODE ++#define NPY__CPU_TARGET_CURRENT ASIMDHP ++#define NPY__CPU_TARGET_NEON ++#define NPY__CPU_TARGET_NEON_FP16 ++#define NPY__CPU_TARGET_NEON_VFPV4 ++#define NPY__CPU_TARGET_ASIMD ++#define NPY__CPU_TARGET_ASIMDHP ++#include "_umath_tests.dispatch.c" +--- contrib/python/numpy/py3/numpy/distutils/include/npy_cpu_dispatch_config.aarch64.h (index) ++++ contrib/python/numpy/py3/numpy/distutils/include/npy_cpu_dispatch_config.aarch64.h (working tree) +@@ -0,0 +1,42 @@ ++/* ++ * AUTOGENERATED DON'T EDIT ++ * Please make changes to the code generator (distutils/ccompiler_opt.py) ++*/ ++#define NPY_WITH_CPU_BASELINE "NEON NEON_FP16 NEON_VFPV4 ASIMD" ++#define NPY_WITH_CPU_DISPATCH "ASIMDHP ASIMDDP ASIMDFHM" ++#define NPY_WITH_CPU_BASELINE_N 4 ++#define NPY_WITH_CPU_DISPATCH_N 3 ++#define NPY_WITH_CPU_EXPAND_(X) X ++#define NPY_WITH_CPU_BASELINE_CALL(MACRO_TO_CALL, ...) \ ++ NPY_WITH_CPU_EXPAND_(MACRO_TO_CALL(NEON, __VA_ARGS__)) \ ++ NPY_WITH_CPU_EXPAND_(MACRO_TO_CALL(NEON_FP16, __VA_ARGS__)) \ ++ NPY_WITH_CPU_EXPAND_(MACRO_TO_CALL(NEON_VFPV4, __VA_ARGS__)) \ ++ NPY_WITH_CPU_EXPAND_(MACRO_TO_CALL(ASIMD, __VA_ARGS__)) ++#define NPY_WITH_CPU_DISPATCH_CALL(MACRO_TO_CALL, ...) \ ++ NPY_WITH_CPU_EXPAND_(MACRO_TO_CALL(ASIMDHP, __VA_ARGS__)) \ ++ NPY_WITH_CPU_EXPAND_(MACRO_TO_CALL(ASIMDDP, __VA_ARGS__)) \ ++ NPY_WITH_CPU_EXPAND_(MACRO_TO_CALL(ASIMDFHM, __VA_ARGS__)) ++/******* baseline features *******/ ++ /** NEON **/ ++ #define NPY_HAVE_NEON 1 ++ #include <arm_neon.h> ++ /** NEON_FP16 **/ ++ #define NPY_HAVE_NEON_FP16 1 ++ /** NEON_VFPV4 **/ ++ #define NPY_HAVE_NEON_VFPV4 1 ++ /** ASIMD **/ ++ #define NPY_HAVE_ASIMD 1 ++ ++/******* dispatch features *******/ ++#ifdef NPY__CPU_TARGET_ASIMDHP ++ /** ASIMDHP **/ ++ #define NPY_HAVE_ASIMDHP 1 ++#endif /*NPY__CPU_TARGET_ASIMDHP*/ ++#ifdef NPY__CPU_TARGET_ASIMDDP ++ /** ASIMDDP **/ ++ #define NPY_HAVE_ASIMDDP 1 ++#endif /*NPY__CPU_TARGET_ASIMDDP*/ ++#ifdef NPY__CPU_TARGET_ASIMDFHM ++ /** ASIMDFHM **/ ++ #define NPY_HAVE_ASIMDFHM 1 ++#endif /*NPY__CPU_TARGET_ASIMDFHM*/ +--- contrib/python/numpy/py3/numpy/core/src/npysort/simd_qsort.dispatch.h (index) ++++ contrib/python/numpy/py3/numpy/core/src/npysort/simd_qsort.dispatch.h (working tree) +@@ -10,5 +10,10 @@ + #undef NPY__CPU_DISPATCH_CALL + #define NPY__CPU_DISPATCH_BASELINE_CALL(CB, ...) \ + ++#if defined(__x86_64__) || defined(_M_X64) + #define NPY__CPU_DISPATCH_CALL(CHK, CB, ...) \ + NPY__CPU_DISPATCH_EXPAND_(CB((CHK(AVX512_SKX)), AVX512_SKX, __VA_ARGS__)) ++#elif defined(__aarch64__) ++#define NPY__CPU_DISPATCH_CALL(CHK, CB, ...) \ ++ ++#endif +--- contrib/python/numpy/py3/numpy/core/src/npysort/simd_qsort_16bit.dispatch.h (index) ++++ contrib/python/numpy/py3/numpy/core/src/npysort/simd_qsort_16bit.dispatch.h (working tree) +@@ -10,5 +10,10 @@ + #undef NPY__CPU_DISPATCH_CALL + #define NPY__CPU_DISPATCH_BASELINE_CALL(CB, ...) \ + ++#if defined(__x86_64__) || defined(_M_X64) + #define NPY__CPU_DISPATCH_CALL(CHK, CB, ...) \ + NPY__CPU_DISPATCH_EXPAND_(CB((CHK(AVX512_ICL)), AVX512_ICL, __VA_ARGS__)) ++#elif defined(__aarch64__) ++#define NPY__CPU_DISPATCH_CALL(CHK, CB, ...) \ ++ ++#endif +--- contrib/python/numpy/py3/numpy/core/src/umath/loops_autovec.dispatch.h (index) ++++ contrib/python/numpy/py3/numpy/core/src/umath/loops_autovec.dispatch.h (working tree) +@@ -10,5 +10,10 @@ + #undef NPY__CPU_DISPATCH_CALL + #define NPY__CPU_DISPATCH_BASELINE_CALL(CB, ...) \ + NPY__CPU_DISPATCH_EXPAND_(CB(__VA_ARGS__)) ++#if defined(__x86_64__) || defined(_M_X64) + #define NPY__CPU_DISPATCH_CALL(CHK, CB, ...) \ + NPY__CPU_DISPATCH_EXPAND_(CB((CHK(AVX)&&CHK(F16C)&&CHK(AVX2)), AVX2, __VA_ARGS__)) ++#elif defined(__aarch64__) ++#define NPY__CPU_DISPATCH_CALL(CHK, CB, ...) \ ++ ++#endif +--- contrib/python/numpy/py3/numpy/core/src/umath/loops_logical.dispatch.h (index) ++++ contrib/python/numpy/py3/numpy/core/src/umath/loops_logical.dispatch.h (working tree) +@@ -10,6 +10,11 @@ + #undef NPY__CPU_DISPATCH_CALL + #define NPY__CPU_DISPATCH_BASELINE_CALL(CB, ...) \ + NPY__CPU_DISPATCH_EXPAND_(CB(__VA_ARGS__)) ++#if defined(__x86_64__) || defined(_M_X64) + #define NPY__CPU_DISPATCH_CALL(CHK, CB, ...) \ + NPY__CPU_DISPATCH_EXPAND_(CB((CHK(AVX512_SKX)), AVX512_SKX, __VA_ARGS__)) \ + NPY__CPU_DISPATCH_EXPAND_(CB((CHK(AVX)&&CHK(F16C)&&CHK(AVX2)), AVX2, __VA_ARGS__)) ++#elif defined(__aarch64__) ++#define NPY__CPU_DISPATCH_CALL(CHK, CB, ...) \ ++ ++#endif +--- contrib/python/numpy/py3/numpy/core/src/umath/loops_unary.dispatch.h (index) ++++ contrib/python/numpy/py3/numpy/core/src/umath/loops_unary.dispatch.h (working tree) +@@ -10,6 +10,11 @@ + #undef NPY__CPU_DISPATCH_CALL + #define NPY__CPU_DISPATCH_BASELINE_CALL(CB, ...) \ + NPY__CPU_DISPATCH_EXPAND_(CB(__VA_ARGS__)) ++#if defined(__x86_64__) || defined(_M_X64) + #define NPY__CPU_DISPATCH_CALL(CHK, CB, ...) \ + NPY__CPU_DISPATCH_EXPAND_(CB((CHK(AVX512_SKX)), AVX512_SKX, __VA_ARGS__)) \ + NPY__CPU_DISPATCH_EXPAND_(CB((CHK(AVX)&&CHK(F16C)&&CHK(AVX2)), AVX2, __VA_ARGS__)) ++#elif defined(__aarch64__) ++#define NPY__CPU_DISPATCH_CALL(CHK, CB, ...) \ ++ ++#endif +--- contrib/python/numpy/py3/numpy/core/src/umath/loops_unary_complex.dispatch.h (index) ++++ contrib/python/numpy/py3/numpy/core/src/umath/loops_unary_complex.dispatch.h (working tree) +@@ -10,6 +10,11 @@ + #undef NPY__CPU_DISPATCH_CALL + #define NPY__CPU_DISPATCH_BASELINE_CALL(CB, ...) \ + NPY__CPU_DISPATCH_EXPAND_(CB(__VA_ARGS__)) ++#if defined(__x86_64__) || defined(_M_X64) + #define NPY__CPU_DISPATCH_CALL(CHK, CB, ...) \ + NPY__CPU_DISPATCH_EXPAND_(CB((CHK(AVX512F)), AVX512F, __VA_ARGS__)) \ + NPY__CPU_DISPATCH_EXPAND_(CB((CHK(AVX)&&CHK(F16C)&&CHK(FMA3)&&CHK(AVX2)), FMA3__AVX2, __VA_ARGS__)) ++#elif defined(__aarch64__) ++#define NPY__CPU_DISPATCH_CALL(CHK, CB, ...) \ ++ ++#endif +--- contrib/python/numpy/py3/numpy/core/src/umath/loops_unary_fp_le.dispatch.h (index) ++++ contrib/python/numpy/py3/numpy/core/src/umath/loops_unary_fp_le.dispatch.h (working tree) +@@ -10,5 +10,10 @@ + #undef NPY__CPU_DISPATCH_CALL + #define NPY__CPU_DISPATCH_BASELINE_CALL(CB, ...) \ + NPY__CPU_DISPATCH_EXPAND_(CB(__VA_ARGS__)) ++#if defined(__x86_64__) || defined(_M_X64) + #define NPY__CPU_DISPATCH_CALL(CHK, CB, ...) \ + NPY__CPU_DISPATCH_EXPAND_(CB((CHK(SSE)&&CHK(SSE2)&&CHK(SSE3)&&CHK(SSSE3)&&CHK(SSE41)), SSE41, __VA_ARGS__)) ++#elif defined(__aarch64__) ++#define NPY__CPU_DISPATCH_CALL(CHK, CB, ...) \ ++ ++#endif |