24 #ifndef ARM_COMPUTE_WRAPPER_DUP_N_H 25 #define ARM_COMPUTE_WRAPPER_DUP_N_H 35 #define VDUP_N_IMPL(stype, vtype, prefix, postfix, tag) \ 36 inline vtype vdup_n(stype value, tag) \ 38 return prefix##_##postfix(value); \ 43 VDUP_N_IMPL(uint16_t, uint16x4_t, vdup_n, u16, traits::vector_64_tag)
44 VDUP_N_IMPL(int16_t, int16x4_t, vdup_n, s16, traits::vector_64_tag)
45 VDUP_N_IMPL(uint32_t, uint32x2_t, vdup_n, u32, traits::vector_64_tag)
46 VDUP_N_IMPL(int32_t, int32x2_t, vdup_n, s32, traits::vector_64_tag)
47 VDUP_N_IMPL(
float, float32x2_t, vdup_n, f32, traits::vector_64_tag)
48 #ifdef __ARM_FEATURE_FP16_VECTOR_ARITHMETIC 50 #endif // __ARM_FEATURE_FP16_VECTOR_ARITHMETIC 53 VDUP_N_IMPL(int8_t, int8x16_t, vdupq_n, s8, traits::vector_128_tag)
54 VDUP_N_IMPL(uint16_t, uint16x8_t, vdupq_n, u16, traits::vector_128_tag)
55 VDUP_N_IMPL(int16_t, int16x8_t, vdupq_n, s16, traits::vector_128_tag)
56 VDUP_N_IMPL(uint32_t, uint32x4_t, vdupq_n, u32, traits::vector_128_tag)
57 VDUP_N_IMPL(int32_t, int32x4_t, vdupq_n, s32, traits::vector_128_tag)
58 VDUP_N_IMPL(
float, float32x4_t, vdupq_n, f32, traits::vector_128_tag)
59 #ifdef __ARM_FEATURE_FP16_VECTOR_ARITHMETIC 61 #endif // __ARM_FEATURE_FP16_VECTOR_ARITHMETIC Traits defined on Arm® Neon™ vectors.
#define VDUP_N_IMPL(stype, vtype, prefix, postfix, tag)
Copyright (c) 2017-2023 Arm Limited.
uint8x8_t vdup_n(uint8_t value, traits::vector_64_tag)