File indexing completed on 2025-08-28 09:11:40
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012 #ifndef XSIMD_NEON64_REGISTER_HPP
0013 #define XSIMD_NEON64_REGISTER_HPP
0014
0015 #include "xsimd_neon_register.hpp"
0016
0017 namespace xsimd
0018 {
0019
0020
0021
0022
0023
0024 struct neon64 : neon
0025 {
0026 static constexpr bool supported() noexcept { return XSIMD_WITH_NEON64; }
0027 static constexpr bool available() noexcept { return true; }
0028 static constexpr bool requires_alignment() noexcept { return true; }
0029 static constexpr std::size_t alignment() noexcept { return 16; }
0030 static constexpr char const* name() noexcept { return "arm64+neon"; }
0031 };
0032
0033 #if XSIMD_WITH_NEON64
0034
0035 namespace types
0036 {
0037 XSIMD_DECLARE_SIMD_REGISTER_ALIAS(neon64, neon);
0038 XSIMD_DECLARE_SIMD_REGISTER(double, neon64, float64x2_t);
0039
0040 template <class T>
0041 struct get_bool_simd_register<T, neon64>
0042 : detail::neon_bool_simd_register<T, neon64>
0043 {
0044 };
0045 }
0046
0047 #endif
0048
0049 }
0050
0051 #endif