2020# define KERNEL_PLATFORM KernelSve128
2121#endif
2222
23- #if defined(UNPACK_PLATFORM)
23+ #if !defined(UNPACK_PLATFORM)
24+ # error "This file must be compiled with a known SIMD micro architecture"
25+ #endif
2426
25- # include < xsimd/xsimd.hpp>
27+ #include < xsimd/xsimd.hpp>
2628
27- # include " arrow/util/bpacking_dispatch_internal.h"
28- # include " arrow/util/bpacking_simd_internal.h"
29- # include " arrow/util/bpacking_simd_kernel_internal.h"
29+ #include " arrow/util/bpacking_dispatch_internal.h"
30+ #include " arrow/util/bpacking_simd_internal.h"
31+ #include " arrow/util/bpacking_simd_kernel_internal.h"
3032
3133namespace arrow ::internal::bpacking {
3234
3335template <typename UnpackedUint, int kPackedBitSize >
34- using KERNEL_PLATFORM = Kernel<UnpackedUint, kPackedBitSize , xsimd::default_arch >;
36+ using KERNEL_PLATFORM = Kernel<UnpackedUint, kPackedBitSize , xsimd::detail::sve< 128 > >;
3537
3638template <typename Uint>
3739void UNPACK_PLATFORM (const uint8_t * in, Uint* out, const UnpackOptions& opts) {
38- static_assert (std::is_same_v<xsimd::default_arch, xsimd::detail::sve<128 >>);
3940 return unpack_jump<KERNEL_PLATFORM>(in, out, opts);
4041}
4142
@@ -47,5 +48,4 @@ template void UNPACK_PLATFORM<uint64_t>(const uint8_t*, uint64_t*, const UnpackO
4748
4849} // namespace arrow::internal::bpacking
4950
50- # undef UNPACK_PLATFORM
51- #endif // UNPACK_PLATFORM
51+ #undef UNPACK_PLATFORM
0 commit comments