diff options
author | Adrian Oanca <adrian.oanca@enea.com> | 2018-02-23 16:27:41 +0100 |
---|---|---|
committer | Damjan Marion <dmarion.lists@gmail.com> | 2018-02-26 22:28:50 +0000 |
commit | 22ac59b59157af057d5e1cade2f888341b92d6c0 (patch) | |
tree | ffd5cc6ab195833b166c8578f4d0bee341f025fa /src/vppinfra/vector_neon.h | |
parent | 200fa32213fce6824bcb75c907989ef8daba4a29 (diff) |
Added u8x16,u32x4,u64x2 variants of _zero_byte_mask(x) for ARM/NEON platform. VPP-1129
Change-Id: I954acb56d901e42976e71534317f38d7c4359bcf
Signed-off-by: Adrian Oanca <adrian.oanca@enea.com>
Diffstat (limited to 'src/vppinfra/vector_neon.h')
-rw-r--r-- | src/vppinfra/vector_neon.h | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/vppinfra/vector_neon.h b/src/vppinfra/vector_neon.h index 331b8ed6f5d..3ed78360296 100644 --- a/src/vppinfra/vector_neon.h +++ b/src/vppinfra/vector_neon.h @@ -86,6 +86,26 @@ u16x8_zero_byte_mask (u16x8 input) return (u32) (vgetq_lane_u64 (merge3, 1) << 8) + vgetq_lane_u64 (merge3, 0); } +always_inline u32 +u8x16_zero_byte_mask (u8x16 input) +{ + return u16x8_zero_byte_mask ((u16x8) input); +} + +always_inline u32 +u32x4_zero_byte_mask (u32x4 input) +{ + return u16x8_zero_byte_mask ((u16x8) input); +} + +always_inline u32 +u64x2_zero_byte_mask (u64x2 input) +{ + return u16x8_zero_byte_mask ((u16x8) input); +} + + + #endif /* included_vector_neon_h */ /* |