/* SPDX-License-Identifier: MIT OR Apache-2.0 */ /* Copyright (c) 2023 Kal Conley * Copyright (c) 2026 Filip Leonarski, Paul Scherrer Institute * * Arm NEON port of bitshuf_decode_block() from bitshuffle.h - see bitshuffle_neon.c. */ #ifndef BITSHUFFLE_NEON_H_ #define BITSHUFFLE_NEON_H_ #include #if defined(__cplusplus) extern "C" { #endif /* Same contract as bitshuf_decode_block() (bitshuffle.h), for elem_size 1, 2 and 4 only; any other * element size returns -1. Defined only on aarch64 with NEON. */ int bitshuf_decode_block_neon(char* out, const char* in, char* scratch, size_t size, size_t elem_size); #if defined(__cplusplus) } /* extern "C" */ #endif #endif /* BITSHUFFLE_NEON_H_ */