11#error This header is for ARM64 only
16#ifndef DUMMYNEONSTRUCT
17#define DUMMYNEONSTRUCT s
20#if defined(__cplusplus)
31typedef union __declspec(intrin_type) __n8
85 unsigned __int8 n128_u8[16];
133#pragma intrinsic(_CopyInt32FromFloat)
610#define vld1_s8(p) neon_ld1m_8((const __int8 *)(p))
611#define vst1_s8(p, v) neon_st1m_8((__int8 *)(p), (v))
612#define vld1_dup_s8(p) neon_ld1r_8((const __int8 *)(p))
613#define vld1_lane_s8(p, v, lane) neon_ld1s_8((const __int8 *)(p), (v), (lane))
614#define vst1_lane_s8(p, v, lane) neon_st1s_8((__int8 *)(p), (v), (lane))
615#define vld1q_s8(p) neon_ld1m_q8((const __int8 *)(p))
616#define vst1q_s8(p, v) neon_st1m_q8((__int8 *)(p), (v))
617#define vld1q_dup_s8(p) neon_ld1r_q8((const __int8 *)(p))
618#define vld1q_lane_s8(p, v, lane) neon_ld1s_q8((const __int8 *)(p), (v), (lane))
619#define vst1q_lane_s8(p, v, lane) neon_st1s_q8((__int8 *)(p), (v), (lane))
620#define vld1_s16(p) neon_ld1m_16((const __int16 *)(p))
621#define vst1_s16(p, v) neon_st1m_16((__int16 *)(p), (v))
622#define vld1_dup_s16(p) neon_ld1r_16((const __int16 *)(p))
623#define vld1_lane_s16(p, v, lane) neon_ld1s_16((const __int16 *)(p), (v), (lane))
624#define vst1_lane_s16(p, v, lane) neon_st1s_16((__int16 *)(p), (v), (lane))
625#define vld1q_s16(p) neon_ld1m_q16((const __int16 *)(p))
626#define vst1q_s16(p, v) neon_st1m_q16((__int16 *)(p), (v))
627#define vld1q_dup_s16(p) neon_ld1r_q16((const __int16 *)(p))
628#define vld1q_lane_s16(p, v, lane) neon_ld1s_q16((const __int16 *)(p), (v), (lane))
629#define vst1q_lane_s16(p, v, lane) neon_st1s_q16((__int16 *)(p), (v), (lane))
630#define vld1_s32(p) neon_ld1m_32((const __int32 *)(p))
631#define vst1_s32(p, v) neon_st1m_32((__int32 *)(p), (v))
632#define vld1_dup_s32(p) neon_ld1r_32((const __int32 *)(p))
633#define vld1_lane_s32(p, v, lane) neon_ld1s_32((const __int32 *)(p), (v), (lane))
634#define vst1_lane_s32(p, v, lane) neon_st1s_32((__int32 *)(p), (v), (lane))
635#define vld1q_s32(p) neon_ld1m_q32((const __int32 *)(p))
636#define vst1q_s32(p, v) neon_st1m_q32((__int32 *)(p), (v))
637#define vld1q_dup_s32(p) neon_ld1r_q32((const __int32 *)(p))
638#define vld1q_lane_s32(p, v, lane) neon_ld1s_q32((const __int32 *)(p), (v), (lane))
639#define vst1q_lane_s32(p, v, lane) neon_st1s_q32((__int32 *)(p), (v), (lane))
640#define vld1_s64(p) neon_ld1m_64((const __int64 *)(p))
641#define vst1_s64(p, v) neon_st1m_64((__int64 *)(p), (v))
642#define vld1_dup_s64(p) neon_ld1r_64((const __int64 *)(p))
643#define vld1_lane_s64(p, v, lane) neon_ld1s_64((const __int64 *)(p), (v), (lane))
644#define vst1_lane_s64(p, v, lane) neon_st1s_64((__int64 *)(p), (v), (lane))
645#define vld1q_s64(p) neon_ld1m_q64((const __int64 *)(p))
646#define vst1q_s64(p, v) neon_st1m_q64((__int64 *)(p), (v))
647#define vld1q_dup_s64(p) neon_ld1r_q64((const __int64 *)(p))
648#define vld1q_lane_s64(p, v, lane) neon_ld1s_q64((const __int64 *)(p), (v), (lane))
649#define vst1q_lane_s64(p, v, lane) neon_st1s_q64((__int64 *)(p), (v), (lane))
650#define vld1_u8(p) neon_ld1m_8((const __int8 *)(p))
651#define vst1_u8(p, v) neon_st1m_8((__int8 *)(p), (v))
652#define vld1_dup_u8(p) neon_ld1r_8((const __int8 *)(p))
653#define vld1_lane_u8(p, v, lane) neon_ld1s_8((const __int8 *)(p), (v), (lane))
654#define vst1_lane_u8(p, v, lane) neon_st1s_8((__int8 *)(p), (v), (lane))
655#define vld1q_u8(p) neon_ld1m_q8((const __int8 *)(p))
656#define vst1q_u8(p, v) neon_st1m_q8((__int8 *)(p), (v))
657#define vld1q_dup_u8(p) neon_ld1r_q8((const __int8 *)(p))
658#define vld1q_lane_u8(p, v, lane) neon_ld1s_q8((const __int8 *)(p), (v), (lane))
659#define vst1q_lane_u8(p, v, lane) neon_st1s_q8((__int8 *)(p), (v), (lane))
660#define vld1_u16(p) neon_ld1m_16((const __int16 *)(p))
661#define vst1_u16(p, v) neon_st1m_16((__int16 *)(p), (v))
662#define vld1_dup_u16(p) neon_ld1r_16((const __int16 *)(p))
663#define vld1_lane_u16(p, v, lane) neon_ld1s_16((const __int16 *)(p), (v), (lane))
664#define vst1_lane_u16(p, v, lane) neon_st1s_16((__int16 *)(p), (v), (lane))
665#define vld1q_u16(p) neon_ld1m_q16((const __int16 *)(p))
666#define vst1q_u16(p, v) neon_st1m_q16((__int16 *)(p), (v))
667#define vld1q_dup_u16(p) neon_ld1r_q16((const __int16 *)(p))
668#define vld1q_lane_u16(p, v, lane) neon_ld1s_q16((const __int16 *)(p), (v), (lane))
669#define vst1q_lane_u16(p, v, lane) neon_st1s_q16((__int16 *)(p), (v), (lane))
670#define vld1_u32(p) neon_ld1m_32((const __int32 *)(p))
671#define vst1_u32(p, v) neon_st1m_32((__int32 *)(p), (v))
672#define vld1_dup_u32(p) neon_ld1r_32((const __int32 *)(p))
673#define vld1_lane_u32(p, v, lane) neon_ld1s_32((const __int32 *)(p), (v), (lane))
674#define vst1_lane_u32(p, v, lane) neon_st1s_32((__int32 *)(p), (v), (lane))
675#define vld1q_u32(p) neon_ld1m_q32((const __int32 *)(p))
676#define vst1q_u32(p, v) neon_st1m_q32((__int32 *)(p), (v))
677#define vld1q_dup_u32(p) neon_ld1r_q32((const __int32 *)(p))
678#define vld1q_lane_u32(p, v, lane) neon_ld1s_q32((const __int32 *)(p), (v), (lane))
679#define vst1q_lane_u32(p, v, lane) neon_st1s_q32((__int32 *)(p), (v), (lane))
680#define vld1_u64(p) neon_ld1m_64((const __int64 *)(p))
681#define vst1_u64(p, v) neon_st1m_64((__int64 *)(p), (v))
682#define vld1_dup_u64(p) neon_ld1r_64((const __int64 *)(p))
683#define vld1_lane_u64(p, v, lane) neon_ld1s_64((const __int64 *)(p), (v), (lane))
684#define vst1_lane_u64(p, v, lane) neon_st1s_64((__int64 *)(p), (v), (lane))
685#define vld1q_u64(p) neon_ld1m_q64((const __int64 *)(p))
686#define vst1q_u64(p, v) neon_st1m_q64((__int64 *)(p), (v))
687#define vld1q_dup_u64(p) neon_ld1r_q64((const __int64 *)(p))
688#define vld1q_lane_u64(p, v, lane) neon_ld1s_q64((const __int64 *)(p), (v), (lane))
689#define vst1q_lane_u64(p, v, lane) neon_st1s_q64((__int64 *)(p), (v), (lane))
690#define vld1_f32(p) neon_ld1m_32((const __int32 *)(p))
691#define vst1_f32(p, v) neon_st1m_32((__int32 *)(p), (v))
692#define vld1_dup_f32(p) neon_ld1r_32((const __int32 *)(p))
693#define vld1_lane_f32(p, v, lane) neon_ld1s_32((const __int32 *)(p), (v), (lane))
694#define vst1_lane_f32(p, v, lane) neon_st1s_32((__int32 *)(p), (v), (lane))
695#define vld1q_f32(p) neon_ld1m_q32((const __int32 *)(p))
696#define vst1q_f32(p, v) neon_st1m_q32((__int32 *)(p), (v))
697#define vld1q_dup_f32(p) neon_ld1r_q32((const __int32 *)(p))
698#define vld1q_lane_f32(p, v, lane) neon_ld1s_q32((const __int32 *)(p), (v), (lane))
699#define vst1q_lane_f32(p, v, lane) neon_st1s_q32((__int32 *)(p), (v), (lane))
700#define vld1_f64(p) neon_ld1m_64((const __int64 *)(p))
701#define vst1_f64(p, v) neon_st1m_64((__int64 *)(p), (v))
702#define vld1_dup_f64(p) neon_ld1r_64((const __int64 *)(p))
703#define vld1_lane_f64(p, v, lane) neon_ld1s_64((const __int64 *)(p), (v), (lane))
704#define vst1_lane_f64(p, v, lane) neon_st1s_64((__int64 *)(p), (v), (lane))
705#define vld1q_f64(p) neon_ld1m_q64((const __int64 *)(p))
706#define vst1q_f64(p, v) neon_st1m_q64((__int64 *)(p), (v))
707#define vld1q_dup_f64(p) neon_ld1r_q64((const __int64 *)(p))
708#define vld1q_lane_f64(p, v, lane) neon_ld1s_q64((const __int64 *)(p), (v), (lane))
709#define vst1q_lane_f64(p, v, lane) neon_st1s_q64((__int64 *)(p), (v), (lane))
710#define vld1_p8(p) neon_ld1m_8((const __int8 *)(p))
711#define vst1_p8(p, v) neon_st1m_8((__int8 *)(p), (v))
712#define vld1_dup_p8(p) neon_ld1r_8((const __int8 *)(p))
713#define vld1_lane_p8(p, v, lane) neon_ld1s_8((const __int8 *)(p), (v), (lane))
714#define vst1_lane_p8(p, v, lane) neon_st1s_8((__int8 *)(p), (v), (lane))
715#define vld1q_p8(p) neon_ld1m_q8((const __int8 *)(p))
716#define vst1q_p8(p, v) neon_st1m_q8((__int8 *)(p), (v))
717#define vld1q_dup_p8(p) neon_ld1r_q8((const __int8 *)(p))
718#define vld1q_lane_p8(p, v, lane) neon_ld1s_q8((const __int8 *)(p), (v), (lane))
719#define vst1q_lane_p8(p, v, lane) neon_st1s_q8((__int8 *)(p), (v), (lane))
720#define vld1_p16(p) neon_ld1m_16((const __int16 *)(p))
721#define vst1_p16(p, v) neon_st1m_16((__int16 *)(p), (v))
722#define vld1_dup_p16(p) neon_ld1r_16((const __int16 *)(p))
723#define vld1_lane_p16(p, v, lane) neon_ld1s_16((const __int16 *)(p), (v), (lane))
724#define vst1_lane_p16(p, v, lane) neon_st1s_16((__int16 *)(p), (v), (lane))
725#define vld1q_p16(p) neon_ld1m_q16((const __int16 *)(p))
726#define vst1q_p16(p, v) neon_st1m_q16((__int16 *)(p), (v))
727#define vld1q_dup_p16(p) neon_ld1r_q16((const __int16 *)(p))
728#define vld1q_lane_p16(p, v, lane) neon_ld1s_q16((const __int16 *)(p), (v), (lane))
729#define vst1q_lane_p16(p, v, lane) neon_st1s_q16((__int16 *)(p), (v), (lane))
730#define vld1_p64(p) neon_ld1m_64((const __int64 *)(p))
731#define vst1_p64(p, v) neon_st1m_64((__int64 *)(p), (v))
732#define vld1_dup_p64(p) neon_ld1r_64((const __int64 *)(p))
733#define vld1_lane_p64(p, v, lane) neon_ld1s_64((const __int64 *)(p), (v), (lane))
734#define vst1_lane_p64(p, v, lane) neon_st1s_64((__int64 *)(p), (v), (lane))
735#define vld1q_p64(p) neon_ld1m_q64((const __int64 *)(p))
736#define vst1q_p64(p, v) neon_st1m_q64((__int64 *)(p), (v))
737#define vld1q_dup_p64(p) neon_ld1r_q64((const __int64 *)(p))
738#define vld1q_lane_p64(p, v, lane) neon_ld1s_q64((const __int64 *)(p), (v), (lane))
739#define vst1q_lane_p64(p, v, lane) neon_st1s_q64((__int64 *)(p), (v), (lane))
740#define vadd_s8(a, b) neon_add8((a), (b))
741#define vaddq_s8(a, b) neon_addq8((a), (b))
742#define vadd_s16(a, b) neon_add16((a), (b))
743#define vaddq_s16(a, b) neon_addq16((a), (b))
744#define vadd_s32(a, b) neon_add32((a), (b))
745#define vaddq_s32(a, b) neon_addq32((a), (b))
746#define vadd_s64(a, b) neon_adds64((a), (b))
747#define vaddq_s64(a, b) neon_addq64((a), (b))
748#define vadd_u8(a, b) neon_add8((a), (b))
749#define vaddq_u8(a, b) neon_addq8((a), (b))
750#define vadd_u16(a, b) neon_add16((a), (b))
751#define vaddq_u16(a, b) neon_addq16((a), (b))
752#define vadd_u32(a, b) neon_add32((a), (b))
753#define vaddq_u32(a, b) neon_addq32((a), (b))
754#define vadd_u64(a, b) neon_adds64((a), (b))
755#define vaddq_u64(a, b) neon_addq64((a), (b))
756#define vadd_f32(a, b) neon_fadd32((a), (b))
757#define vaddq_f32(a, b) neon_faddq32((a), (b))
758#define vadd_f64(a, b) neon_fadd64((a), (b))
759#define vaddq_f64(a, b) neon_faddq64((a), (b))
760#define vsub_s8(a, b) neon_sub8((a), (b))
761#define vsubq_s8(a, b) neon_subq8((a), (b))
762#define vsub_s16(a, b) neon_sub16((a), (b))
763#define vsubq_s16(a, b) neon_subq16((a), (b))
764#define vsub_s32(a, b) neon_sub32((a), (b))
765#define vsubq_s32(a, b) neon_subq32((a), (b))
766#define vsub_s64(a, b) neon_subs64((a), (b))
767#define vsubq_s64(a, b) neon_subq64((a), (b))
768#define vsub_u8(a, b) neon_sub8((a), (b))
769#define vsubq_u8(a, b) neon_subq8((a), (b))
770#define vsub_u16(a, b) neon_sub16((a), (b))
771#define vsubq_u16(a, b) neon_subq16((a), (b))
772#define vsub_u32(a, b) neon_sub32((a), (b))
773#define vsubq_u32(a, b) neon_subq32((a), (b))
774#define vsub_u64(a, b) neon_subs64((a), (b))
775#define vsubq_u64(a, b) neon_subq64((a), (b))
776#define vsub_f32(a, b) neon_fsub32((a), (b))
777#define vsubq_f32(a, b) neon_fsubq32((a), (b))
778#define vsub_f64(a, b) neon_fsub64((a), (b))
779#define vsubq_f64(a, b) neon_fsubq64((a), (b))
780#define vmul_s8(a, b) neon_mul8((a), (b))
781#define vmulq_s8(a, b) neon_mulq8((a), (b))
782#define vmul_s16(a, b) neon_mul16((a), (b))
783#define vmulq_s16(a, b) neon_mulq16((a), (b))
784#define vmul_s32(a, b) neon_mul32((a), (b))
785#define vmulq_s32(a, b) neon_mulq32((a), (b))
786#define vmul_u8(a, b) neon_mul8((a), (b))
787#define vmulq_u8(a, b) neon_mulq8((a), (b))
788#define vmul_u16(a, b) neon_mul16((a), (b))
789#define vmulq_u16(a, b) neon_mulq16((a), (b))
790#define vmul_u32(a, b) neon_mul32((a), (b))
791#define vmulq_u32(a, b) neon_mulq32((a), (b))
792#define vmul_f32(a, b) neon_fmul32((a), (b))
793#define vmulq_f32(a, b) neon_fmulq32((a), (b))
794#define vmul_f64(a, b) neon_fmul64((a), (b))
795#define vmulq_f64(a, b) neon_fmulq64((a), (b))
796#define vmla_s8(a, b, c) neon_mla8((a), (b), (c))
797#define vmlaq_s8(a, b, c) neon_mlaq8((a), (b), (c))
798#define vmla_s16(a, b, c) neon_mla16((a), (b), (c))
799#define vmlaq_s16(a, b, c) neon_mlaq16((a), (b), (c))
800#define vmla_s32(a, b, c) neon_mla32((a), (b), (c))
801#define vmlaq_s32(a, b, c) neon_mlaq32((a), (b), (c))
802#define vmla_u8(a, b, c) neon_mla8((a), (b), (c))
803#define vmlaq_u8(a, b, c) neon_mlaq8((a), (b), (c))
804#define vmla_u16(a, b, c) neon_mla16((a), (b), (c))
805#define vmlaq_u16(a, b, c) neon_mlaq16((a), (b), (c))
806#define vmla_u32(a, b, c) neon_mla32((a), (b), (c))
807#define vmlaq_u32(a, b, c) neon_mlaq32((a), (b), (c))
808#define vmls_s8(a, b, c) neon_mls8((a), (b), (c))
809#define vmlsq_s8(a, b, c) neon_mlsq8((a), (b), (c))
810#define vmls_s16(a, b, c) neon_mls16((a), (b), (c))
811#define vmlsq_s16(a, b, c) neon_mlsq16((a), (b), (c))
812#define vmls_s32(a, b, c) neon_mls32((a), (b), (c))
813#define vmlsq_s32(a, b, c) neon_mlsq32((a), (b), (c))
814#define vmls_u8(a, b, c) neon_mls8((a), (b), (c))
815#define vmlsq_u8(a, b, c) neon_mlsq8((a), (b), (c))
816#define vmls_u16(a, b, c) neon_mls16((a), (b), (c))
817#define vmlsq_u16(a, b, c) neon_mlsq16((a), (b), (c))
818#define vmls_u32(a, b, c) neon_mls32((a), (b), (c))
819#define vmlsq_u32(a, b, c) neon_mlsq32((a), (b), (c))
820#define vmull_s8(a, b) neon_smull_8((a), (b))
821#define vmull_high_s8(a, b) neon_smull2_8((a), (b))
822#define vmull_s16(a, b) neon_smull_16((a), (b))
823#define vmull_high_s16(a, b) neon_smull2_16((a), (b))
824#define vmull_s32(a, b) neon_smull_32((a), (b))
825#define vmull_high_s32(a, b) neon_smull2_32((a), (b))
826#define vmull_u8(a, b) neon_umull_8((a), (b))
827#define vmull_high_u8(a, b) neon_umull2_8((a), (b))
828#define vmull_u16(a, b) neon_umull_16((a), (b))
829#define vmull_high_u16(a, b) neon_umull2_16((a), (b))
830#define vmull_u32(a, b) neon_umull_32((a), (b))
831#define vmull_high_u32(a, b) neon_umull2_32((a), (b))
832#define vmull_p8(a, b) neon_pmull_8((a), (b))
833#define vmull_high_p8(a, b) neon_pmull2_8((a), (b))
834#define vmull_p64(a, b) neon_pmull_64((a), (b))
835#define vmull_high_p64(a, b) neon_pmull2_64((a), (b))
836#define vmlal_s8(a, b, c) neon_smlal_8((a), (b), (c))
837#define vmlal_high_s8(a, b, c) neon_smlal2_8((a), (b), (c))
838#define vmlal_s16(a, b, c) neon_smlal_16((a), (b), (c))
839#define vmlal_high_s16(a, b, c) neon_smlal2_16((a), (b), (c))
840#define vmlal_s32(a, b, c) neon_smlal_32((a), (b), (c))
841#define vmlal_high_s32(a, b, c) neon_smlal2_32((a), (b), (c))
842#define vmlal_u8(a, b, c) neon_umlal_8((a), (b), (c))
843#define vmlal_high_u8(a, b, c) neon_umlal2_8((a), (b), (c))
844#define vmlal_u16(a, b, c) neon_umlal_16((a), (b), (c))
845#define vmlal_high_u16(a, b, c) neon_umlal2_16((a), (b), (c))
846#define vmlal_u32(a, b, c) neon_umlal_32((a), (b), (c))
847#define vmlal_high_u32(a, b, c) neon_umlal2_32((a), (b), (c))
848#define vmlsl_s8(a, b, c) neon_smlsl_8((a), (b), (c))
849#define vmlsl_high_s8(a, b, c) neon_smlsl2_8((a), (b), (c))
850#define vmlsl_s16(a, b, c) neon_smlsl_16((a), (b), (c))
851#define vmlsl_high_s16(a, b, c) neon_smlsl2_16((a), (b), (c))
852#define vmlsl_s32(a, b, c) neon_smlsl_32((a), (b), (c))
853#define vmlsl_high_s32(a, b, c) neon_smlsl2_32((a), (b), (c))
854#define vmlsl_u8(a, b, c) neon_umlsl_8((a), (b), (c))
855#define vmlsl_high_u8(a, b, c) neon_umlsl2_8((a), (b), (c))
856#define vmlsl_u16(a, b, c) neon_umlsl_16((a), (b), (c))
857#define vmlsl_high_u16(a, b, c) neon_umlsl2_16((a), (b), (c))
858#define vmlsl_u32(a, b, c) neon_umlsl_32((a), (b), (c))
859#define vmlsl_high_u32(a, b, c) neon_umlsl2_32((a), (b), (c))
860#define vand_s8(a, b) neon_and((a), (b))
861#define vandq_s8(a, b) neon_andq((a), (b))
862#define vand_s16(a, b) neon_and((a), (b))
863#define vandq_s16(a, b) neon_andq((a), (b))
864#define vand_s32(a, b) neon_and((a), (b))
865#define vandq_s32(a, b) neon_andq((a), (b))
866#define vand_s64(a, b) neon_and((a), (b))
867#define vandq_s64(a, b) neon_andq((a), (b))
868#define vand_u8(a, b) neon_and((a), (b))
869#define vandq_u8(a, b) neon_andq((a), (b))
870#define vand_u16(a, b) neon_and((a), (b))
871#define vandq_u16(a, b) neon_andq((a), (b))
872#define vand_u32(a, b) neon_and((a), (b))
873#define vandq_u32(a, b) neon_andq((a), (b))
874#define vand_u64(a, b) neon_and((a), (b))
875#define vandq_u64(a, b) neon_andq((a), (b))
876#define vorr_s8(a, b) neon_orr((a), (b))
877#define vorrq_s8(a, b) neon_orrq((a), (b))
878#define vorr_s16(a, b) neon_orr((a), (b))
879#define vorrq_s16(a, b) neon_orrq((a), (b))
880#define vorr_s32(a, b) neon_orr((a), (b))
881#define vorrq_s32(a, b) neon_orrq((a), (b))
882#define vorr_s64(a, b) neon_orr((a), (b))
883#define vorrq_s64(a, b) neon_orrq((a), (b))
884#define vorr_u8(a, b) neon_orr((a), (b))
885#define vorrq_u8(a, b) neon_orrq((a), (b))
886#define vorr_u16(a, b) neon_orr((a), (b))
887#define vorrq_u16(a, b) neon_orrq((a), (b))
888#define vorr_u32(a, b) neon_orr((a), (b))
889#define vorrq_u32(a, b) neon_orrq((a), (b))
890#define vorr_u64(a, b) neon_orr((a), (b))
891#define vorrq_u64(a, b) neon_orrq((a), (b))
892#define veor_s8(a, b) neon_eor((a), (b))
893#define veorq_s8(a, b) neon_eorq((a), (b))
894#define veor_s16(a, b) neon_eor((a), (b))
895#define veorq_s16(a, b) neon_eorq((a), (b))
896#define veor_s32(a, b) neon_eor((a), (b))
897#define veorq_s32(a, b) neon_eorq((a), (b))
898#define veor_s64(a, b) neon_eor((a), (b))
899#define veorq_s64(a, b) neon_eorq((a), (b))
900#define veor_u8(a, b) neon_eor((a), (b))
901#define veorq_u8(a, b) neon_eorq((a), (b))
902#define veor_u16(a, b) neon_eor((a), (b))
903#define veorq_u16(a, b) neon_eorq((a), (b))
904#define veor_u32(a, b) neon_eor((a), (b))
905#define veorq_u32(a, b) neon_eorq((a), (b))
906#define veor_u64(a, b) neon_eor((a), (b))
907#define veorq_u64(a, b) neon_eorq((a), (b))
908#define vbic_s8(a, b) neon_bic((a), (b))
909#define vbicq_s8(a, b) neon_bicq((a), (b))
910#define vbic_s16(a, b) neon_bic((a), (b))
911#define vbicq_s16(a, b) neon_bicq((a), (b))
912#define vbic_s32(a, b) neon_bic((a), (b))
913#define vbicq_s32(a, b) neon_bicq((a), (b))
914#define vbic_s64(a, b) neon_bic((a), (b))
915#define vbicq_s64(a, b) neon_bicq((a), (b))
916#define vbic_u8(a, b) neon_bic((a), (b))
917#define vbicq_u8(a, b) neon_bicq((a), (b))
918#define vbic_u16(a, b) neon_bic((a), (b))
919#define vbicq_u16(a, b) neon_bicq((a), (b))
920#define vbic_u32(a, b) neon_bic((a), (b))
921#define vbicq_u32(a, b) neon_bicq((a), (b))
922#define vbic_u64(a, b) neon_bic((a), (b))
923#define vbicq_u64(a, b) neon_bicq((a), (b))
924#define vorn_s8(a, b) neon_orn((a), (b))
925#define vornq_s8(a, b) neon_ornq((a), (b))
926#define vorn_s16(a, b) neon_orn((a), (b))
927#define vornq_s16(a, b) neon_ornq((a), (b))
928#define vorn_s32(a, b) neon_orn((a), (b))
929#define vornq_s32(a, b) neon_ornq((a), (b))
930#define vorn_s64(a, b) neon_orn((a), (b))
931#define vornq_s64(a, b) neon_ornq((a), (b))
932#define vorn_u8(a, b) neon_orn((a), (b))
933#define vornq_u8(a, b) neon_ornq((a), (b))
934#define vorn_u16(a, b) neon_orn((a), (b))
935#define vornq_u16(a, b) neon_ornq((a), (b))
936#define vorn_u32(a, b) neon_orn((a), (b))
937#define vornq_u32(a, b) neon_ornq((a), (b))
938#define vorn_u64(a, b) neon_orn((a), (b))
939#define vornq_u64(a, b) neon_ornq((a), (b))
940#define vmvn_s8(a) neon_not((a))
941#define vmvnq_s8(a) neon_notq((a))
942#define vmvn_s16(a) neon_not((a))
943#define vmvnq_s16(a) neon_notq((a))
944#define vmvn_s32(a) neon_not((a))
945#define vmvnq_s32(a) neon_notq((a))
946#define vmvn_u8(a) neon_not((a))
947#define vmvnq_u8(a) neon_notq((a))
948#define vmvn_u16(a) neon_not((a))
949#define vmvnq_u16(a) neon_notq((a))
950#define vmvn_u32(a) neon_not((a))
951#define vmvnq_u32(a) neon_notq((a))
952#define vmvn_p8(a) neon_not((a))
953#define vmvnq_p8(a) neon_notq((a))
954#define vceq_s8(a, b) neon_cmeq8((a), (b))
955#define vceqq_s8(a, b) neon_cmeqq8((a), (b))
956#define vceq_s16(a, b) neon_cmeq16((a), (b))
957#define vceqq_s16(a, b) neon_cmeqq16((a), (b))
958#define vceq_s32(a, b) neon_cmeq32((a), (b))
959#define vceqq_s32(a, b) neon_cmeqq32((a), (b))
960#define vceq_s64(a, b) neon_cmeq64((a), (b))
961#define vceqq_s64(a, b) neon_cmeqq64((a), (b))
962#define vceq_u8(a, b) neon_cmeq8((a), (b))
963#define vceqq_u8(a, b) neon_cmeqq8((a), (b))
964#define vceq_u16(a, b) neon_cmeq16((a), (b))
965#define vceqq_u16(a, b) neon_cmeqq16((a), (b))
966#define vceq_u32(a, b) neon_cmeq32((a), (b))
967#define vceqq_u32(a, b) neon_cmeqq32((a), (b))
968#define vceq_u64(a, b) neon_cmeq64((a), (b))
969#define vceqq_u64(a, b) neon_cmeqq64((a), (b))
970#define vceq_f32(a, b) neon_fcmeq32((a), (b))
971#define vceqq_f32(a, b) neon_fcmeqq32((a), (b))
972#define vceq_f64(a, b) neon_fcmeq64((a), (b))
973#define vceqq_f64(a, b) neon_fcmeqq64((a), (b))
974#define vcgt_s8(a, b) neon_cmgt8((a), (b))
975#define vcgtq_s8(a, b) neon_cmgtq8((a), (b))
976#define vcgt_s16(a, b) neon_cmgt16((a), (b))
977#define vcgtq_s16(a, b) neon_cmgtq16((a), (b))
978#define vcgt_s32(a, b) neon_cmgt32((a), (b))
979#define vcgtq_s32(a, b) neon_cmgtq32((a), (b))
980#define vcgt_s64(a, b) neon_cmgt64((a), (b))
981#define vcgtq_s64(a, b) neon_cmgtq64((a), (b))
982#define vcgt_u8(a, b) neon_cmhi8((a), (b))
983#define vcgtq_u8(a, b) neon_cmhiq8((a), (b))
984#define vcgt_u16(a, b) neon_cmhi16((a), (b))
985#define vcgtq_u16(a, b) neon_cmhiq16((a), (b))
986#define vcgt_u32(a, b) neon_cmhi32((a), (b))
987#define vcgtq_u32(a, b) neon_cmhiq32((a), (b))
988#define vcgt_u64(a, b) neon_cmhi64((a), (b))
989#define vcgtq_u64(a, b) neon_cmhiq64((a), (b))
990#define vcgt_f32(a, b) neon_fcmgt32((a), (b))
991#define vcgtq_f32(a, b) neon_fcmgtq32((a), (b))
992#define vcgt_f64(a, b) neon_fcmgt64((a), (b))
993#define vcgtq_f64(a, b) neon_fcmgtq64((a), (b))
994#define vcge_s8(a, b) neon_cmge8((a), (b))
995#define vcgeq_s8(a, b) neon_cmgeq8((a), (b))
996#define vcge_s16(a, b) neon_cmge16((a), (b))
997#define vcgeq_s16(a, b) neon_cmgeq16((a), (b))
998#define vcge_s32(a, b) neon_cmge32((a), (b))
999#define vcgeq_s32(a, b) neon_cmgeq32((a), (b))
1000#define vcge_s64(a, b) neon_cmge64((a), (b))
1001#define vcgeq_s64(a, b) neon_cmgeq64((a), (b))
1002#define vcge_u8(a, b) neon_cmhs8((a), (b))
1003#define vcgeq_u8(a, b) neon_cmhsq8((a), (b))
1004#define vcge_u16(a, b) neon_cmhs16((a), (b))
1005#define vcgeq_u16(a, b) neon_cmhsq16((a), (b))
1006#define vcge_u32(a, b) neon_cmhs32((a), (b))
1007#define vcgeq_u32(a, b) neon_cmhsq32((a), (b))
1008#define vcge_u64(a, b) neon_cmhs64((a), (b))
1009#define vcgeq_u64(a, b) neon_cmhsq64((a), (b))
1010#define vcge_f32(a, b) neon_fcmge32((a), (b))
1011#define vcgeq_f32(a, b) neon_fcmgeq32((a), (b))
1012#define vcge_f64(a, b) neon_fcmge64((a), (b))
1013#define vcgeq_f64(a, b) neon_fcmgeq64((a), (b))
1014#define vclt_s8(a, b) neon_cmgt8((b), (a))
1015#define vcltq_s8(a, b) neon_cmgtq8((b), (a))
1016#define vclt_s16(a, b) neon_cmgt16((b), (a))
1017#define vcltq_s16(a, b) neon_cmgtq16((b), (a))
1018#define vclt_s32(a, b) neon_cmgt32((b), (a))
1019#define vcltq_s32(a, b) neon_cmgtq32((b), (a))
1020#define vclt_s64(a, b) neon_cmgt64((b), (a))
1021#define vcltq_s64(a, b) neon_cmgtq64((b), (a))
1022#define vclt_u8(a, b) neon_cmhi8((b), (a))
1023#define vcltq_u8(a, b) neon_cmhiq8((b), (a))
1024#define vclt_u16(a, b) neon_cmhi16((b), (a))
1025#define vcltq_u16(a, b) neon_cmhiq16((b), (a))
1026#define vclt_u32(a, b) neon_cmhi32((b), (a))
1027#define vcltq_u32(a, b) neon_cmhiq32((b), (a))
1028#define vclt_u64(a, b) neon_cmhi64((b), (a))
1029#define vcltq_u64(a, b) neon_cmhiq64((b), (a))
1030#define vclt_f32(a, b) neon_fcmgt32((b), (a))
1031#define vcltq_f32(a, b) neon_fcmgtq32((b), (a))
1032#define vclt_f64(a, b) neon_fcmgt64((b), (a))
1033#define vcltq_f64(a, b) neon_fcmgtq64((b), (a))
1034#define vcle_s8(a, b) neon_cmge8((b), (a))
1035#define vcleq_s8(a, b) neon_cmgeq8((b), (a))
1036#define vcle_s16(a, b) neon_cmge16((b), (a))
1037#define vcleq_s16(a, b) neon_cmgeq16((b), (a))
1038#define vcle_s32(a, b) neon_cmge32((b), (a))
1039#define vcleq_s32(a, b) neon_cmgeq32((b), (a))
1040#define vcle_s64(a, b) neon_cmge64((b), (a))
1041#define vcleq_s64(a, b) neon_cmgeq64((b), (a))
1042#define vcle_u8(a, b) neon_cmhs8((b), (a))
1043#define vcleq_u8(a, b) neon_cmhsq8((b), (a))
1044#define vcle_u16(a, b) neon_cmhs16((b), (a))
1045#define vcleq_u16(a, b) neon_cmhsq16((b), (a))
1046#define vcle_u32(a, b) neon_cmhs32((b), (a))
1047#define vcleq_u32(a, b) neon_cmhsq32((b), (a))
1048#define vcle_u64(a, b) neon_cmhs64((b), (a))
1049#define vcleq_u64(a, b) neon_cmhsq64((b), (a))
1050#define vcle_f32(a, b) neon_fcmge32((b), (a))
1051#define vcleq_f32(a, b) neon_fcmgeq32((b), (a))
1052#define vcle_f64(a, b) neon_fcmge64((b), (a))
1053#define vcleq_f64(a, b) neon_fcmgeq64((b), (a))
1054#define vceqz_s8(a) neon_cmeqz8((a))
1055#define vceqzq_s8(a) neon_cmeqzq8((a))
1056#define vceqz_s16(a) neon_cmeqz16((a))
1057#define vceqzq_s16(a) neon_cmeqzq16((a))
1058#define vceqz_s32(a) neon_cmeqz32((a))
1059#define vceqzq_s32(a) neon_cmeqzq32((a))
1060#define vceqz_s64(a) neon_cmeqz64((a))
1061#define vceqzq_s64(a) neon_cmeqzq64((a))
1062#define vceqz_f32(a) neon_fcmeqz32((a))
1063#define vceqzq_f32(a) neon_fcmeqzq32((a))
1064#define vceqz_f64(a) neon_fcmeqz64((a))
1065#define vceqzq_f64(a) neon_fcmeqzq64((a))
1066#define vceqz_u8(a) neon_cmeqz8((a))
1067#define vceqzq_u8(a) neon_cmeqzq8((a))
1068#define vceqz_u16(a) neon_cmeqz16((a))
1069#define vceqzq_u16(a) neon_cmeqzq16((a))
1070#define vceqz_u32(a) neon_cmeqz32((a))
1071#define vceqzq_u32(a) neon_cmeqzq32((a))
1072#define vceqz_u64(a) neon_cmeqz64((a))
1073#define vceqzq_u64(a) neon_cmeqzq64((a))
1074#define vcgtz_s8(a) neon_cmgtz8((a))
1075#define vcgtzq_s8(a) neon_cmgtzq8((a))
1076#define vcgtz_s16(a) neon_cmgtz16((a))
1077#define vcgtzq_s16(a) neon_cmgtzq16((a))
1078#define vcgtz_s32(a) neon_cmgtz32((a))
1079#define vcgtzq_s32(a) neon_cmgtzq32((a))
1080#define vcgtz_s64(a) neon_cmgtz64((a))
1081#define vcgtzq_s64(a) neon_cmgtzq64((a))
1082#define vcgtz_f32(a) neon_fcmgtz32((a))
1083#define vcgtzq_f32(a) neon_fcmgtzq32((a))
1084#define vcgtz_f64(a) neon_fcmgtz64((a))
1085#define vcgtzq_f64(a) neon_fcmgtzq64((a))
1086#define vcgez_s8(a) neon_cmgez8((a))
1087#define vcgezq_s8(a) neon_cmgezq8((a))
1088#define vcgez_s16(a) neon_cmgez16((a))
1089#define vcgezq_s16(a) neon_cmgezq16((a))
1090#define vcgez_s32(a) neon_cmgez32((a))
1091#define vcgezq_s32(a) neon_cmgezq32((a))
1092#define vcgez_s64(a) neon_cmgez64((a))
1093#define vcgezq_s64(a) neon_cmgezq64((a))
1094#define vcgez_f32(a) neon_fcmgez32((a))
1095#define vcgezq_f32(a) neon_fcmgezq32((a))
1096#define vcgez_f64(a) neon_fcmgez64((a))
1097#define vcgezq_f64(a) neon_fcmgezq64((a))
1098#define vcltz_s8(a) neon_cmltz8((a))
1099#define vcltzq_s8(a) neon_cmltzq8((a))
1100#define vcltz_s16(a) neon_cmltz16((a))
1101#define vcltzq_s16(a) neon_cmltzq16((a))
1102#define vcltz_s32(a) neon_cmltz32((a))
1103#define vcltzq_s32(a) neon_cmltzq32((a))
1104#define vcltz_s64(a) neon_cmltz64((a))
1105#define vcltzq_s64(a) neon_cmltzq64((a))
1106#define vcltz_f32(a) neon_fcmltz32((a))
1107#define vcltzq_f32(a) neon_fcmltzq32((a))
1108#define vcltz_f64(a) neon_fcmltz64((a))
1109#define vcltzq_f64(a) neon_fcmltzq64((a))
1110#define vclez_s8(a) neon_cmlez8((a))
1111#define vclezq_s8(a) neon_cmlezq8((a))
1112#define vclez_s16(a) neon_cmlez16((a))
1113#define vclezq_s16(a) neon_cmlezq16((a))
1114#define vclez_s32(a) neon_cmlez32((a))
1115#define vclezq_s32(a) neon_cmlezq32((a))
1116#define vclez_s64(a) neon_cmlez64((a))
1117#define vclezq_s64(a) neon_cmlezq64((a))
1118#define vclez_f32(a) neon_fcmlez32((a))
1119#define vclezq_f32(a) neon_fcmlezq32((a))
1120#define vclez_f64(a) neon_fcmlez64((a))
1121#define vclezq_f64(a) neon_fcmlezq64((a))
1122#define vshl_n_s8(a, n) neon_shli8((a), (n))
1123#define vshr_n_s8(a, n) neon_sshri8((a), (n))
1124#define vshlq_n_s8(a, n) neon_shliq8((a), (n))
1125#define vshrq_n_s8(a, n) neon_sshriq8((a), (n))
1126#define vshl_n_s16(a, n) neon_shli16((a), (n))
1127#define vshr_n_s16(a, n) neon_sshri16((a), (n))
1128#define vshlq_n_s16(a, n) neon_shliq16((a), (n))
1129#define vshrq_n_s16(a, n) neon_sshriq16((a), (n))
1130#define vshl_n_s32(a, n) neon_shli32((a), (n))
1131#define vshr_n_s32(a, n) neon_sshri32((a), (n))
1132#define vshlq_n_s32(a, n) neon_shliq32((a), (n))
1133#define vshrq_n_s32(a, n) neon_sshriq32((a), (n))
1134#define vshl_n_s64(a, n) neon_shlis64((a), (n))
1135#define vshr_n_s64(a, n) neon_sshris64((a), (n))
1136#define vshlq_n_s64(a, n) neon_shliq64((a), (n))
1137#define vshrq_n_s64(a, n) neon_sshriq64((a), (n))
1138#define vshl_n_u8(a, n) neon_shli8((a), (n))
1139#define vshr_n_u8(a, n) neon_ushri8((a), (n))
1140#define vshlq_n_u8(a, n) neon_shliq8((a), (n))
1141#define vshrq_n_u8(a, n) neon_ushriq8((a), (n))
1142#define vshl_n_u16(a, n) neon_shli16((a), (n))
1143#define vshr_n_u16(a, n) neon_ushri16((a), (n))
1144#define vshlq_n_u16(a, n) neon_shliq16((a), (n))
1145#define vshrq_n_u16(a, n) neon_ushriq16((a), (n))
1146#define vshl_n_u32(a, n) neon_shli32((a), (n))
1147#define vshr_n_u32(a, n) neon_ushri32((a), (n))
1148#define vshlq_n_u32(a, n) neon_shliq32((a), (n))
1149#define vshrq_n_u32(a, n) neon_ushriq32((a), (n))
1150#define vshl_n_u64(a, n) neon_shlis64((a), (n))
1151#define vshr_n_u64(a, n) neon_ushris64((a), (n))
1152#define vshlq_n_u64(a, n) neon_shliq64((a), (n))
1153#define vshrq_n_u64(a, n) neon_ushriq64((a), (n))
1154#define vdup_n_s8(x) neon_dupr8((x))
1155#define vmov_n_s8(x) neon_dupr8((x))
1156#define vdupq_n_s8(x) neon_dupqr8((x))
1157#define vmovq_n_s8(x) neon_dupqr8((x))
1158#define vget_low_s8(a) neon_dups64q((a), 0)
1159#define vget_high_s8(a) neon_dups64q((a), 1)
1160#define vcombine_s8(lo, hi) neon_combine((lo), (hi))
1161#define vget_lane_s8(a, lane) neon_smov8((a), (lane))
1162#define vset_lane_s8(x, a, lane) neon_insr8((a), (lane), (x))
1163#define vext_s8(a, b, n) neon_ext8((a), (b), (n))
1164#define vgetq_lane_s8(a, lane) neon_smovq8((a), (lane))
1165#define vsetq_lane_s8(x, a, lane) neon_insqr8((a), (lane), (x))
1166#define vextq_s8(a, b, n) neon_extq8((a), (b), (n))
1167#define vdup_n_s16(x) neon_dupr16((x))
1168#define vmov_n_s16(x) neon_dupr16((x))
1169#define vdupq_n_s16(x) neon_dupqr16((x))
1170#define vmovq_n_s16(x) neon_dupqr16((x))
1171#define vget_low_s16(a) neon_dups64q((a), 0)
1172#define vget_high_s16(a) neon_dups64q((a), 1)
1173#define vcombine_s16(lo, hi) neon_combine((lo), (hi))
1174#define vget_lane_s16(a, lane) neon_smov16((a), (lane))
1175#define vset_lane_s16(x, a, lane) neon_insr16((a), (lane), (x))
1176#define vext_s16(a, b, n) neon_ext16((a), (b), (n))
1177#define vgetq_lane_s16(a, lane) neon_smovq16((a), (lane))
1178#define vsetq_lane_s16(x, a, lane) neon_insqr16((a), (lane), (x))
1179#define vextq_s16(a, b, n) neon_extq16((a), (b), (n))
1180#define vdup_n_s32(x) neon_dupr32((x))
1181#define vmov_n_s32(x) neon_dupr32((x))
1182#define vdupq_n_s32(x) neon_dupqr32((x))
1183#define vmovq_n_s32(x) neon_dupqr32((x))
1184#define vget_low_s32(a) neon_dups64q((a), 0)
1185#define vget_high_s32(a) neon_dups64q((a), 1)
1186#define vcombine_s32(lo, hi) neon_combine((lo), (hi))
1187#define vget_lane_s32(a, lane) neon_smov32((a), (lane))
1188#define vset_lane_s32(x, a, lane) neon_insr32((a), (lane), (x))
1189#define vext_s32(a, b, n) neon_ext32((a), (b), (n))
1190#define vgetq_lane_s32(a, lane) neon_smovq32((a), (lane))
1191#define vsetq_lane_s32(x, a, lane) neon_insqr32((a), (lane), (x))
1192#define vextq_s32(a, b, n) neon_extq32((a), (b), (n))
1193#define vdup_n_s64(x) neon_dupr64((x))
1194#define vmov_n_s64(x) neon_dupr64((x))
1195#define vdupq_n_s64(x) neon_dupqr64((x))
1196#define vmovq_n_s64(x) neon_dupqr64((x))
1197#define vget_low_s64(a) neon_dups64q((a), 0)
1198#define vget_high_s64(a) neon_dups64q((a), 1)
1199#define vcombine_s64(lo, hi) neon_combine((lo), (hi))
1200#define vget_lane_s64(a, lane) neon_smov64((a), (lane))
1201#define vset_lane_s64(x, a, lane) neon_insr64((a), (lane), (x))
1202#define vext_s64(a, b, n) neon_ext64((a), (b), (n))
1203#define vgetq_lane_s64(a, lane) neon_smovq64((a), (lane))
1204#define vsetq_lane_s64(x, a, lane) neon_insqr64((a), (lane), (x))
1205#define vextq_s64(a, b, n) neon_extq64((a), (b), (n))
1206#define vdup_n_u8(x) neon_dupr8((x))
1207#define vmov_n_u8(x) neon_dupr8((x))
1208#define vdupq_n_u8(x) neon_dupqr8((x))
1209#define vmovq_n_u8(x) neon_dupqr8((x))
1210#define vget_low_u8(a) neon_dups64q((a), 0)
1211#define vget_high_u8(a) neon_dups64q((a), 1)
1212#define vcombine_u8(lo, hi) neon_combine((lo), (hi))
1213#define vget_lane_u8(a, lane) neon_umov8((a), (lane))
1214#define vset_lane_u8(x, a, lane) neon_insr8((a), (lane), (x))
1215#define vext_u8(a, b, n) neon_ext8((a), (b), (n))
1216#define vgetq_lane_u8(a, lane) neon_umovq8((a), (lane))
1217#define vsetq_lane_u8(x, a, lane) neon_insqr8((a), (lane), (x))
1218#define vextq_u8(a, b, n) neon_extq8((a), (b), (n))
1219#define vdup_n_u16(x) neon_dupr16((x))
1220#define vmov_n_u16(x) neon_dupr16((x))
1221#define vdupq_n_u16(x) neon_dupqr16((x))
1222#define vmovq_n_u16(x) neon_dupqr16((x))
1223#define vget_low_u16(a) neon_dups64q((a), 0)
1224#define vget_high_u16(a) neon_dups64q((a), 1)
1225#define vcombine_u16(lo, hi) neon_combine((lo), (hi))
1226#define vget_lane_u16(a, lane) neon_umov16((a), (lane))
1227#define vset_lane_u16(x, a, lane) neon_insr16((a), (lane), (x))
1228#define vext_u16(a, b, n) neon_ext16((a), (b), (n))
1229#define vgetq_lane_u16(a, lane) neon_umovq16((a), (lane))
1230#define vsetq_lane_u16(x, a, lane) neon_insqr16((a), (lane), (x))
1231#define vextq_u16(a, b, n) neon_extq16((a), (b), (n))
1232#define vdup_n_u32(x) neon_dupr32((x))
1233#define vmov_n_u32(x) neon_dupr32((x))
1234#define vdupq_n_u32(x) neon_dupqr32((x))
1235#define vmovq_n_u32(x) neon_dupqr32((x))
1236#define vget_low_u32(a) neon_dups64q((a), 0)
1237#define vget_high_u32(a) neon_dups64q((a), 1)
1238#define vcombine_u32(lo, hi) neon_combine((lo), (hi))
1239#define vget_lane_u32(a, lane) neon_umov32((a), (lane))
1240#define vset_lane_u32(x, a, lane) neon_insr32((a), (lane), (x))
1241#define vext_u32(a, b, n) neon_ext32((a), (b), (n))
1242#define vgetq_lane_u32(a, lane) neon_umovq32((a), (lane))
1243#define vsetq_lane_u32(x, a, lane) neon_insqr32((a), (lane), (x))
1244#define vextq_u32(a, b, n) neon_extq32((a), (b), (n))
1245#define vdup_n_u64(x) neon_dupr64((x))
1246#define vmov_n_u64(x) neon_dupr64((x))
1247#define vdupq_n_u64(x) neon_dupqr64((x))
1248#define vmovq_n_u64(x) neon_dupqr64((x))
1249#define vget_low_u64(a) neon_dups64q((a), 0)
1250#define vget_high_u64(a) neon_dups64q((a), 1)
1251#define vcombine_u64(lo, hi) neon_combine((lo), (hi))
1252#define vget_lane_u64(a, lane) neon_umov64((a), (lane))
1253#define vset_lane_u64(x, a, lane) neon_insr64((a), (lane), (x))
1254#define vext_u64(a, b, n) neon_ext64((a), (b), (n))
1255#define vgetq_lane_u64(a, lane) neon_umovq64((a), (lane))
1256#define vsetq_lane_u64(x, a, lane) neon_insqr64((a), (lane), (x))
1257#define vextq_u64(a, b, n) neon_extq64((a), (b), (n))
1258#define vdup_n_f32(x) neon_duprf32((x))
1259#define vmov_n_f32(x) neon_duprf32((x))
1260#define vdupq_n_f32(x) neon_dupqrf32((x))
1261#define vmovq_n_f32(x) neon_dupqrf32((x))
1262#define vget_low_f32(a) neon_dups64q((a), 0)
1263#define vget_high_f32(a) neon_dups64q((a), 1)
1264#define vcombine_f32(lo, hi) neon_combine((lo), (hi))
1265#define vget_lane_f32(a, lane) neon_dups32((a), (lane))
1266#define vset_lane_f32(x, a, lane) neon_insrf32((a), (lane), (x))
1267#define vext_f32(a, b, n) neon_ext32((a), (b), (n))
1268#define vgetq_lane_f32(a, lane) neon_dups32q((a), (lane))
1269#define vsetq_lane_f32(x, a, lane) neon_insqrf32((a), (lane), (x))
1270#define vextq_f32(a, b, n) neon_extq32((a), (b), (n))
1271#define vdup_n_f64(x) neon_duprf64((x))
1272#define vmov_n_f64(x) neon_duprf64((x))
1273#define vdupq_n_f64(x) neon_dupqrf64((x))
1274#define vmovq_n_f64(x) neon_dupqrf64((x))
1275#define vget_low_f64(a) neon_dups64q((a), 0)
1276#define vget_high_f64(a) neon_dups64q((a), 1)
1277#define vcombine_f64(lo, hi) neon_combine((lo), (hi))
1278#define vget_lane_f64(a, lane) neon_dups64((a), (lane)).n64_f64[0]
1279#define vset_lane_f64(x, a, lane) neon_insrf64((a), (lane), (x))
1280#define vext_f64(a, b, n) neon_ext64((a), (b), (n))
1281#define vgetq_lane_f64(a, lane) neon_dups64q((a), (lane)).n64_f64[0]
1282#define vsetq_lane_f64(x, a, lane) neon_insqrf64((a), (lane), (x))
1283#define vextq_f64(a, b, n) neon_extq64((a), (b), (n))
1284#define vdup_n_p8(x) neon_dupr8((x))
1285#define vmov_n_p8(x) neon_dupr8((x))
1286#define vdupq_n_p8(x) neon_dupqr8((x))
1287#define vmovq_n_p8(x) neon_dupqr8((x))
1288#define vget_low_p8(a) neon_dups64q((a), 0)
1289#define vget_high_p8(a) neon_dups64q((a), 1)
1290#define vcombine_p8(lo, hi) neon_combine((lo), (hi))
1291#define vget_lane_p8(a, lane) neon_umov8((a), (lane))
1292#define vset_lane_p8(x, a, lane) neon_insr8((a), (lane), (x))
1293#define vext_p8(a, b, n) neon_ext8((a), (b), (n))
1294#define vgetq_lane_p8(a, lane) neon_umovq8((a), (lane))
1295#define vsetq_lane_p8(x, a, lane) neon_insqr8((a), (lane), (x))
1296#define vextq_p8(a, b, n) neon_extq8((a), (b), (n))
1297#define vdup_n_p16(x) neon_dupr16((x))
1298#define vmov_n_p16(x) neon_dupr16((x))
1299#define vdupq_n_p16(x) neon_dupqr16((x))
1300#define vmovq_n_p16(x) neon_dupqr16((x))
1301#define vget_low_p16(a) neon_dups64q((a), 0)
1302#define vget_high_p16(a) neon_dups64q((a), 1)
1303#define vcombine_p16(lo, hi) neon_combine((lo), (hi))
1304#define vget_lane_p16(a, lane) neon_umov16((a), (lane))
1305#define vset_lane_p16(x, a, lane) neon_insr16((a), (lane), (x))
1306#define vext_p16(a, b, n) neon_ext16((a), (b), (n))
1307#define vgetq_lane_p16(a, lane) neon_umovq16((a), (lane))
1308#define vsetq_lane_p16(x, a, lane) neon_insqr16((a), (lane), (x))
1309#define vextq_p16(a, b, n) neon_extq16((a), (b), (n))
1310#define vdup_n_p64(x) neon_dupr64((x))
1311#define vdupq_n_p64(x) neon_dupqr64((x))
1312#define vget_low_p64(a) neon_dups64q((a), 0)
1313#define vget_high_p64(a) neon_dups64q((a), 1)
1314#define vcombine_p64(lo, hi) neon_combine((lo), (hi))
1315#define vget_lane_p64(a, lane) neon_umov64((a), (lane))
1316#define vset_lane_p64(x, a, lane) neon_insr64((a), (lane), (x))
1317#define vext_p64(a, b, n) neon_ext64((a), (b), (n))
1318#define vgetq_lane_p64(a, lane) neon_umovq64((a), (lane))
1319#define vsetq_lane_p64(x, a, lane) neon_insqr64((a), (lane), (x))
1320#define vextq_p64(a, b, n) neon_extq64((a), (b), (n))
1321#define vmax_s8(a, b) neon_smax8((a), (b))
1322#define vmaxq_s8(a, b) neon_smaxq8((a), (b))
1323#define vmax_s16(a, b) neon_smax16((a), (b))
1324#define vmaxq_s16(a, b) neon_smaxq16((a), (b))
1325#define vmax_s32(a, b) neon_smax32((a), (b))
1326#define vmaxq_s32(a, b) neon_smaxq32((a), (b))
1327#define vmax_u8(a, b) neon_umax8((a), (b))
1328#define vmaxq_u8(a, b) neon_umaxq8((a), (b))
1329#define vmax_u16(a, b) neon_umax16((a), (b))
1330#define vmaxq_u16(a, b) neon_umaxq16((a), (b))
1331#define vmax_u32(a, b) neon_umax32((a), (b))
1332#define vmaxq_u32(a, b) neon_umaxq32((a), (b))
1333#define vmax_f32(a, b) neon_fmax32((a), (b))
1334#define vmaxq_f32(a, b) neon_fmaxq32((a), (b))
1335#define vmax_f64(a, b) neon_fmax64((a), (b))
1336#define vmaxq_f64(a, b) neon_fmaxq64((a), (b))
1337#define vmin_s8(a, b) neon_smin8((a), (b))
1338#define vminq_s8(a, b) neon_sminq8((a), (b))
1339#define vmin_s16(a, b) neon_smin16((a), (b))
1340#define vminq_s16(a, b) neon_sminq16((a), (b))
1341#define vmin_s32(a, b) neon_smin32((a), (b))
1342#define vminq_s32(a, b) neon_sminq32((a), (b))
1343#define vmin_u8(a, b) neon_umin8((a), (b))
1344#define vminq_u8(a, b) neon_uminq8((a), (b))
1345#define vmin_u16(a, b) neon_umin16((a), (b))
1346#define vminq_u16(a, b) neon_uminq16((a), (b))
1347#define vmin_u32(a, b) neon_umin32((a), (b))
1348#define vminq_u32(a, b) neon_uminq32((a), (b))
1349#define vmin_f32(a, b) neon_fmin32((a), (b))
1350#define vminq_f32(a, b) neon_fminq32((a), (b))
1351#define vmin_f64(a, b) neon_fmin64((a), (b))
1352#define vminq_f64(a, b) neon_fminq64((a), (b))
1353#define vmaxv_s8(a) neon_smaxv8((a)).n8_i8[0]
1354#define vmaxvq_s8(a) neon_smaxvq8((a)).n8_i8[0]
1355#define vmaxv_s16(a) neon_smaxv16((a)).n16_i16[0]
1356#define vmaxvq_s16(a) neon_smaxvq16((a)).n16_i16[0]
1357#define vmaxv_s32(a) neon_smaxp32((a), (a)).n64_i32[0]
1358#define vmaxvq_s32(a) _CopyInt32FromFloat(neon_smaxvq32((a)))
1359#define vmaxv_u8(a) neon_umaxv8((a)).n8_u8[0]
1360#define vmaxvq_u8(a) neon_umaxvq8((a)).n8_u8[0]
1361#define vmaxv_u16(a) neon_umaxv16((a)).n16_u16[0]
1362#define vmaxvq_u16(a) neon_umaxvq16((a)).n16_u16[0]
1363#define vmaxv_u32(a) neon_umaxp32((a), (a)).n64_u32[0]
1364#define vmaxvq_u32(a) (unsigned __int32)_CopyInt32FromFloat(neon_umaxvq32((a)))
1365#define vminv_s8(a) neon_sminv8((a)).n8_i8[0]
1366#define vminvq_s8(a) neon_sminvq8((a)).n8_i8[0]
1367#define vminv_s16(a) neon_sminv16((a)).n16_i16[0]
1368#define vminvq_s16(a) neon_sminvq16((a)).n16_i16[0]
1369#define vminv_s32(a) neon_sminp32((a), (a)).n64_i32[0]
1370#define vminvq_s32(a) _CopyInt32FromFloat(neon_sminvq32((a)))
1371#define vminv_u8(a) neon_uminv8((a)).n8_u8[0]
1372#define vminvq_u8(a) neon_uminvq8((a)).n8_u8[0]
1373#define vminv_u16(a) neon_uminv16((a)).n16_u16[0]
1374#define vminvq_u16(a) neon_uminvq16((a)).n16_u16[0]
1375#define vminv_u32(a) neon_uminp32((a), (a)).n64_u32[0]
1376#define vminvq_u32(a) (unsigned __int32)_CopyInt32FromFloat(neon_uminvq32((a)))
1377#define vaddv_s8(a) neon_addv8((a)).n8_i8[0]
1378#define vaddvq_s8(a) neon_addvq8((a)).n8_i8[0]
1379#define vaddv_s16(a) neon_addv16((a)).n16_i16[0]
1380#define vaddvq_s16(a) neon_addvq16((a)).n16_i16[0]
1381#define vaddv_s32(a) neon_addp32((a), (a)).n64_i32[0]
1382#define vaddvq_s32(a) _CopyInt32FromFloat(neon_addvq32((a)))
1383#define vaddv_u8(a) neon_addv8((a)).n8_u8[0]
1384#define vaddvq_u8(a) neon_addvq8((a)).n8_u8[0]
1385#define vaddv_u16(a) neon_addv16((a)).n16_u16[0]
1386#define vaddvq_u16(a) neon_addvq16((a)).n16_u16[0]
1387#define vaddv_u32(a) neon_addp32((a), (a)).n64_u32[0]
1388#define vaddvq_u32(a) (unsigned __int32)_CopyInt32FromFloat(neon_addvq32((a)))
1389#define vmaxv_f32(a) neon_fmaxps32((a))
1390#define vmaxvq_f32(a) neon_fmaxv((a))
1391#define vmaxvq_f64(a) neon_fmaxps64((a))
1392#define vminv_f32(a) neon_fminps32((a))
1393#define vminvq_f32(a) neon_fminv((a))
1394#define vminvq_f64(a) neon_fminps64((a))
1395#define vaddv_f32(a) neon_faddps32((a))
1396#define vaddvq_f32(a) neon_faddpsq32((a), (a))
1397#define vaddvq_f64(a) neon_faddpsq64((a)).n64_f64[0]
1398#define vaddvq_s64(a) neon_addps64((a)).n64_i64[0]
1399#define vaddvq_u64(a) neon_addps64((a)).n64_u64[0]
1400#define vrev64_s8(a) neon_rev64_8((a))
1401#define vrev64q_s8(a) neon_rev64q_8((a))
1402#define vrev64_s16(a) neon_rev64_16((a))
1403#define vrev64q_s16(a) neon_rev64q_16((a))
1404#define vrev64_s32(a) neon_rev64_32((a))
1405#define vrev64q_s32(a) neon_rev64q_32((a))
1406#define vrev64_u8(a) neon_rev64_8((a))
1407#define vrev64q_u8(a) neon_rev64q_8((a))
1408#define vrev64_u16(a) neon_rev64_16((a))
1409#define vrev64q_u16(a) neon_rev64q_16((a))
1410#define vrev64_u32(a) neon_rev64_32((a))
1411#define vrev64q_u32(a) neon_rev64q_32((a))
1412#define vrev64_f32(a) neon_rev64_32((a))
1413#define vrev64q_f32(a) neon_rev64q_32((a))
1414#define vrev64_p8(a) neon_rev64_8((a))
1415#define vrev64q_p8(a) neon_rev64q_8((a))
1416#define vrev64_p16(a) neon_rev64_16((a))
1417#define vrev64q_p16(a) neon_rev64q_16((a))
1418#define vrev32_s8(a) neon_rev32_8((a))
1419#define vrev32q_s8(a) neon_rev32q_8((a))
1420#define vrev32_s16(a) neon_rev32_16((a))
1421#define vrev32q_s16(a) neon_rev32q_16((a))
1422#define vrev32_u8(a) neon_rev32_8((a))
1423#define vrev32q_u8(a) neon_rev32q_8((a))
1424#define vrev32_u16(a) neon_rev32_16((a))
1425#define vrev32q_u16(a) neon_rev32q_16((a))
1426#define vrev32_p8(a) neon_rev32_8((a))
1427#define vrev32q_p8(a) neon_rev32q_8((a))
1428#define vrev32_p16(a) neon_rev32_16((a))
1429#define vrev32q_p16(a) neon_rev32q_16((a))
1430#define vrev16_s8(a) neon_rev16((a))
1431#define vrev16q_s8(a) neon_rev16q((a))
1432#define vrev16_u8(a) neon_rev16((a))
1433#define vrev16q_u8(a) neon_rev16q((a))
1434#define vrev16_p8(a) neon_rev16((a))
1435#define vrev16q_p8(a) neon_rev16q((a))
1436#define vzip1_s8(a, b) neon_zip1_8((a), (b))
1437#define vzip1q_s8(a, b) neon_zip1_q8((a), (b))
1438#define vzip1_s16(a, b) neon_zip1_16((a), (b))
1439#define vzip1q_s16(a, b) neon_zip1_q16((a), (b))
1440#define vzip1_s32(a, b) neon_zip1_32((a), (b))
1441#define vzip1q_s32(a, b) neon_zip1_q32((a), (b))
1442#define vzip1q_s64(a, b) neon_zip1_q64((a), (b))
1443#define vzip1_u8(a, b) neon_zip1_8((a), (b))
1444#define vzip1q_u8(a, b) neon_zip1_q8((a), (b))
1445#define vzip1_u16(a, b) neon_zip1_16((a), (b))
1446#define vzip1q_u16(a, b) neon_zip1_q16((a), (b))
1447#define vzip1_u32(a, b) neon_zip1_32((a), (b))
1448#define vzip1q_u32(a, b) neon_zip1_q32((a), (b))
1449#define vzip1q_u64(a, b) neon_zip1_q64((a), (b))
1450#define vzip1_f32(a, b) neon_zip1_32((a), (b))
1451#define vzip1q_f32(a, b) neon_zip1_q32((a), (b))
1452#define vzip1q_f64(a, b) neon_zip1_q64((a), (b))
1453#define vzip1_p8(a, b) neon_zip1_8((a), (b))
1454#define vzip1q_p8(a, b) neon_zip1_q8((a), (b))
1455#define vzip1_p16(a, b) neon_zip1_16((a), (b))
1456#define vzip1q_p16(a, b) neon_zip1_q16((a), (b))
1457#define vzip1q_p64(a, b) neon_zip1_q64((a), (b))
1458#define vzip2_s8(a, b) neon_zip2_8((a), (b))
1459#define vzip2q_s8(a, b) neon_zip2_q8((a), (b))
1460#define vzip2_s16(a, b) neon_zip2_16((a), (b))
1461#define vzip2q_s16(a, b) neon_zip2_q16((a), (b))
1462#define vzip2_s32(a, b) neon_zip2_32((a), (b))
1463#define vzip2q_s32(a, b) neon_zip2_q32((a), (b))
1464#define vzip2q_s64(a, b) neon_zip2_q64((a), (b))
1465#define vzip2_u8(a, b) neon_zip2_8((a), (b))
1466#define vzip2q_u8(a, b) neon_zip2_q8((a), (b))
1467#define vzip2_u16(a, b) neon_zip2_16((a), (b))
1468#define vzip2q_u16(a, b) neon_zip2_q16((a), (b))
1469#define vzip2_u32(a, b) neon_zip2_32((a), (b))
1470#define vzip2q_u32(a, b) neon_zip2_q32((a), (b))
1471#define vzip2q_u64(a, b) neon_zip2_q64((a), (b))
1472#define vzip2_f32(a, b) neon_zip2_32((a), (b))
1473#define vzip2q_f32(a, b) neon_zip2_q32((a), (b))
1474#define vzip2q_f64(a, b) neon_zip2_q64((a), (b))
1475#define vzip2_p8(a, b) neon_zip2_8((a), (b))
1476#define vzip2q_p8(a, b) neon_zip2_q8((a), (b))
1477#define vzip2_p16(a, b) neon_zip2_16((a), (b))
1478#define vzip2q_p16(a, b) neon_zip2_q16((a), (b))
1479#define vzip2q_p64(a, b) neon_zip2_q64((a), (b))
1480#define vuzp1_s8(a, b) neon_uzp1_8((a), (b))
1481#define vuzp1q_s8(a, b) neon_uzp1_q8((a), (b))
1482#define vuzp1_s16(a, b) neon_uzp1_16((a), (b))
1483#define vuzp1q_s16(a, b) neon_uzp1_q16((a), (b))
1484#define vuzp1_s32(a, b) neon_uzp1_32((a), (b))
1485#define vuzp1q_s32(a, b) neon_uzp1_q32((a), (b))
1486#define vuzp1q_s64(a, b) neon_uzp1_q64((a), (b))
1487#define vuzp1_u8(a, b) neon_uzp1_8((a), (b))
1488#define vuzp1q_u8(a, b) neon_uzp1_q8((a), (b))
1489#define vuzp1_u16(a, b) neon_uzp1_16((a), (b))
1490#define vuzp1q_u16(a, b) neon_uzp1_q16((a), (b))
1491#define vuzp1_u32(a, b) neon_uzp1_32((a), (b))
1492#define vuzp1q_u32(a, b) neon_uzp1_q32((a), (b))
1493#define vuzp1q_u64(a, b) neon_uzp1_q64((a), (b))
1494#define vuzp1_f32(a, b) neon_uzp1_32((a), (b))
1495#define vuzp1q_f32(a, b) neon_uzp1_q32((a), (b))
1496#define vuzp1q_f64(a, b) neon_uzp1_q64((a), (b))
1497#define vuzp1_p8(a, b) neon_uzp1_8((a), (b))
1498#define vuzp1q_p8(a, b) neon_uzp1_q8((a), (b))
1499#define vuzp1_p16(a, b) neon_uzp1_16((a), (b))
1500#define vuzp1q_p16(a, b) neon_uzp1_q16((a), (b))
1501#define vuzp1q_p64(a, b) neon_uzp1_q64((a), (b))
1502#define vuzp2_s8(a, b) neon_uzp2_8((a), (b))
1503#define vuzp2q_s8(a, b) neon_uzp2_q8((a), (b))
1504#define vuzp2_s16(a, b) neon_uzp2_16((a), (b))
1505#define vuzp2q_s16(a, b) neon_uzp2_q16((a), (b))
1506#define vuzp2_s32(a, b) neon_uzp2_32((a), (b))
1507#define vuzp2q_s32(a, b) neon_uzp2_q32((a), (b))
1508#define vuzp2q_s64(a, b) neon_uzp2_q64((a), (b))
1509#define vuzp2_u8(a, b) neon_uzp2_8((a), (b))
1510#define vuzp2q_u8(a, b) neon_uzp2_q8((a), (b))
1511#define vuzp2_u16(a, b) neon_uzp2_16((a), (b))
1512#define vuzp2q_u16(a, b) neon_uzp2_q16((a), (b))
1513#define vuzp2_u32(a, b) neon_uzp2_32((a), (b))
1514#define vuzp2q_u32(a, b) neon_uzp2_q32((a), (b))
1515#define vuzp2q_u64(a, b) neon_uzp2_q64((a), (b))
1516#define vuzp2_f32(a, b) neon_uzp2_32((a), (b))
1517#define vuzp2q_f32(a, b) neon_uzp2_q32((a), (b))
1518#define vuzp2q_f64(a, b) neon_uzp2_q64((a), (b))
1519#define vuzp2_p8(a, b) neon_uzp2_8((a), (b))
1520#define vuzp2q_p8(a, b) neon_uzp2_q8((a), (b))
1521#define vuzp2_p16(a, b) neon_uzp2_16((a), (b))
1522#define vuzp2q_p16(a, b) neon_uzp2_q16((a), (b))
1523#define vuzp2q_p64(a, b) neon_uzp2_q64((a), (b))
1524#define vtrn1_s8(a, b) neon_trn1_8((a), (b))
1525#define vtrn1q_s8(a, b) neon_trn1_q8((a), (b))
1526#define vtrn1_s16(a, b) neon_trn1_16((a), (b))
1527#define vtrn1q_s16(a, b) neon_trn1_q16((a), (b))
1528#define vtrn1_s32(a, b) neon_trn1_32((a), (b))
1529#define vtrn1q_s32(a, b) neon_trn1_q32((a), (b))
1530#define vtrn1q_s64(a, b) neon_trn1_q64((a), (b))
1531#define vtrn1_u8(a, b) neon_trn1_8((a), (b))
1532#define vtrn1q_u8(a, b) neon_trn1_q8((a), (b))
1533#define vtrn1_u16(a, b) neon_trn1_16((a), (b))
1534#define vtrn1q_u16(a, b) neon_trn1_q16((a), (b))
1535#define vtrn1_u32(a, b) neon_trn1_32((a), (b))
1536#define vtrn1q_u32(a, b) neon_trn1_q32((a), (b))
1537#define vtrn1q_u64(a, b) neon_trn1_q64((a), (b))
1538#define vtrn1_f32(a, b) neon_trn1_32((a), (b))
1539#define vtrn1q_f32(a, b) neon_trn1_q32((a), (b))
1540#define vtrn1q_f64(a, b) neon_trn1_q64((a), (b))
1541#define vtrn1_p8(a, b) neon_trn1_8((a), (b))
1542#define vtrn1q_p8(a, b) neon_trn1_q8((a), (b))
1543#define vtrn1_p16(a, b) neon_trn1_16((a), (b))
1544#define vtrn1q_p16(a, b) neon_trn1_q16((a), (b))
1545#define vtrn1q_p64(a, b) neon_trn1_q64((a), (b))
1546#define vtrn2_s8(a, b) neon_trn2_8((a), (b))
1547#define vtrn2q_s8(a, b) neon_trn2_q8((a), (b))
1548#define vtrn2_s16(a, b) neon_trn2_16((a), (b))
1549#define vtrn2q_s16(a, b) neon_trn2_q16((a), (b))
1550#define vtrn2_s32(a, b) neon_trn2_32((a), (b))
1551#define vtrn2q_s32(a, b) neon_trn2_q32((a), (b))
1552#define vtrn2q_s64(a, b) neon_trn2_q64((a), (b))
1553#define vtrn2_u8(a, b) neon_trn2_8((a), (b))
1554#define vtrn2q_u8(a, b) neon_trn2_q8((a), (b))
1555#define vtrn2_u16(a, b) neon_trn2_16((a), (b))
1556#define vtrn2q_u16(a, b) neon_trn2_q16((a), (b))
1557#define vtrn2_u32(a, b) neon_trn2_32((a), (b))
1558#define vtrn2q_u32(a, b) neon_trn2_q32((a), (b))
1559#define vtrn2q_u64(a, b) neon_trn2_q64((a), (b))
1560#define vtrn2_f32(a, b) neon_trn2_32((a), (b))
1561#define vtrn2q_f32(a, b) neon_trn2_q32((a), (b))
1562#define vtrn2q_f64(a, b) neon_trn2_q64((a), (b))
1563#define vtrn2_p8(a, b) neon_trn2_8((a), (b))
1564#define vtrn2q_p8(a, b) neon_trn2_q8((a), (b))
1565#define vtrn2_p16(a, b) neon_trn2_16((a), (b))
1566#define vtrn2q_p16(a, b) neon_trn2_q16((a), (b))
1567#define vtrn2q_p64(a, b) neon_trn2_q64((a), (b))
1568#define vtbl1_s8(a, b) neon_tbl1_8((a), (b))
1569#define vqtbl1_s8(a, b) neon_tbl1_q8((a), (b))
1570#define vqtbl1q_s8(a, b) neon_tbl1_qq8((a), (b))
1571#define vtbl1_u8(a, b) neon_tbl1_8((a), (b))
1572#define vqtbl1_u8(a, b) neon_tbl1_q8((a), (b))
1573#define vqtbl1q_u8(a, b) neon_tbl1_qq8((a), (b))
1574#define vtbl1_p8(a, b) neon_tbl1_8((a), (b))
1575#define vqtbl1_p8(a, b) neon_tbl1_q8((a), (b))
1576#define vqtbl1q_p8(a, b) neon_tbl1_qq8((a), (b))
1577#define vaeseq_u8(a, b) neon_aese((a), (b))
1578#define vaesdq_u8(a, b) neon_aesd((a), (b))
1579#define vaesmcq_u8(a) neon_aesmc((a))
1580#define vaesimcq_u8(a) neon_aesimc((a))
1581#define vsha1cq_u32(abcd, e, wk) neon_sha1cui((abcd), (e), (wk))
1582#define vsha1pq_u32(abcd, e, wk) neon_sha1pui((abcd), (e), (wk))
1583#define vsha1mq_u32(abcd, e, wk) neon_sha1mui((abcd), (e), (wk))
1584#define vsha1h_u32(e) neon_sha1hui((e))
1585#define vsha1su0q_u32(a, b, c) neon_sha1su0((a), (b), (c))
1586#define vsha1su1q_u32(a, b) neon_sha1su1((a), (b))
1587#define vsha256hq_u32(a, b, c) neon_sha256h((a), (b), (c))
1588#define vsha256h2q_u32(a, b, c) neon_sha256h2((a), (b), (c))
1589#define vsha256su1q_u32(a, b, c) neon_sha256su1((a), (b), (c))
1590#define vsha256su0q_u32(a, b) neon_sha256su0((a), (b))
1591#define vsha512hq_u64(a, b, c) neon_sha512h((a), (b), (c))
1592#define vsha512h2q_u64(a, b, c) neon_sha512h2((a), (b), (c))
1593#define vsha512su1q_u64(a, b, c) neon_sha512su1((a), (b), (c))
1594#define vsha512su0q_u64(a, b) neon_sha512su0((a), (b))
1595#define vreinterpret_s8_s16(a) (a)
1596#define vreinterpret_s8_s32(a) (a)
1597#define vreinterpret_s8_s64(a) (a)
1598#define vreinterpret_s8_u8(a) (a)
1599#define vreinterpret_s8_u16(a) (a)
1600#define vreinterpret_s8_u32(a) (a)
1601#define vreinterpret_s8_u64(a) (a)
1602#define vreinterpret_s8_f32(a) (a)
1603#define vreinterpret_s8_f64(a) (a)
1604#define vreinterpret_s8_p8(a) (a)
1605#define vreinterpret_s8_p16(a) (a)
1606#define vreinterpret_s8_p64(a) (a)
1607#define vreinterpret_s16_s8(a) (a)
1608#define vreinterpret_s16_s32(a) (a)
1609#define vreinterpret_s16_s64(a) (a)
1610#define vreinterpret_s16_u8(a) (a)
1611#define vreinterpret_s16_u16(a) (a)
1612#define vreinterpret_s16_u32(a) (a)
1613#define vreinterpret_s16_u64(a) (a)
1614#define vreinterpret_s16_f32(a) (a)
1615#define vreinterpret_s16_f64(a) (a)
1616#define vreinterpret_s16_p8(a) (a)
1617#define vreinterpret_s16_p16(a) (a)
1618#define vreinterpret_s16_p64(a) (a)
1619#define vreinterpret_s32_s8(a) (a)
1620#define vreinterpret_s32_s16(a) (a)
1621#define vreinterpret_s32_s64(a) (a)
1622#define vreinterpret_s32_u8(a) (a)
1623#define vreinterpret_s32_u16(a) (a)
1624#define vreinterpret_s32_u32(a) (a)
1625#define vreinterpret_s32_u64(a) (a)
1626#define vreinterpret_s32_f32(a) (a)
1627#define vreinterpret_s32_f64(a) (a)
1628#define vreinterpret_s32_p8(a) (a)
1629#define vreinterpret_s32_p16(a) (a)
1630#define vreinterpret_s32_p64(a) (a)
1631#define vreinterpret_s64_s8(a) (a)
1632#define vreinterpret_s64_s16(a) (a)
1633#define vreinterpret_s64_s32(a) (a)
1634#define vreinterpret_s64_u8(a) (a)
1635#define vreinterpret_s64_u16(a) (a)
1636#define vreinterpret_s64_u32(a) (a)
1637#define vreinterpret_s64_u64(a) (a)
1638#define vreinterpret_s64_f32(a) (a)
1639#define vreinterpret_s64_f64(a) (a)
1640#define vreinterpret_s64_p8(a) (a)
1641#define vreinterpret_s64_p16(a) (a)
1642#define vreinterpret_s64_p64(a) (a)
1643#define vreinterpret_u8_s8(a) (a)
1644#define vreinterpret_u8_s16(a) (a)
1645#define vreinterpret_u8_s32(a) (a)
1646#define vreinterpret_u8_s64(a) (a)
1647#define vreinterpret_u8_u16(a) (a)
1648#define vreinterpret_u8_u32(a) (a)
1649#define vreinterpret_u8_u64(a) (a)
1650#define vreinterpret_u8_f32(a) (a)
1651#define vreinterpret_u8_f64(a) (a)
1652#define vreinterpret_u8_p8(a) (a)
1653#define vreinterpret_u8_p16(a) (a)
1654#define vreinterpret_u8_p64(a) (a)
1655#define vreinterpret_u16_s8(a) (a)
1656#define vreinterpret_u16_s16(a) (a)
1657#define vreinterpret_u16_s32(a) (a)
1658#define vreinterpret_u16_s64(a) (a)
1659#define vreinterpret_u16_u8(a) (a)
1660#define vreinterpret_u16_u32(a) (a)
1661#define vreinterpret_u16_u64(a) (a)
1662#define vreinterpret_u16_f32(a) (a)
1663#define vreinterpret_u16_f64(a) (a)
1664#define vreinterpret_u16_p8(a) (a)
1665#define vreinterpret_u16_p16(a) (a)
1666#define vreinterpret_u16_p64(a) (a)
1667#define vreinterpret_u32_s8(a) (a)
1668#define vreinterpret_u32_s16(a) (a)
1669#define vreinterpret_u32_s32(a) (a)
1670#define vreinterpret_u32_s64(a) (a)
1671#define vreinterpret_u32_u8(a) (a)
1672#define vreinterpret_u32_u16(a) (a)
1673#define vreinterpret_u32_u64(a) (a)
1674#define vreinterpret_u32_f32(a) (a)
1675#define vreinterpret_u32_f64(a) (a)
1676#define vreinterpret_u32_p8(a) (a)
1677#define vreinterpret_u32_p16(a) (a)
1678#define vreinterpret_u32_p64(a) (a)
1679#define vreinterpret_u64_s8(a) (a)
1680#define vreinterpret_u64_s16(a) (a)
1681#define vreinterpret_u64_s32(a) (a)
1682#define vreinterpret_u64_s64(a) (a)
1683#define vreinterpret_u64_u8(a) (a)
1684#define vreinterpret_u64_u16(a) (a)
1685#define vreinterpret_u64_u32(a) (a)
1686#define vreinterpret_u64_f32(a) (a)
1687#define vreinterpret_u64_f64(a) (a)
1688#define vreinterpret_u64_p8(a) (a)
1689#define vreinterpret_u64_p16(a) (a)
1690#define vreinterpret_u64_p64(a) (a)
1691#define vreinterpret_f32_s8(a) (a)
1692#define vreinterpret_f32_s16(a) (a)
1693#define vreinterpret_f32_s32(a) (a)
1694#define vreinterpret_f32_s64(a) (a)
1695#define vreinterpret_f32_u8(a) (a)
1696#define vreinterpret_f32_u16(a) (a)
1697#define vreinterpret_f32_u32(a) (a)
1698#define vreinterpret_f32_u64(a) (a)
1699#define vreinterpret_f32_f64(a) (a)
1700#define vreinterpret_f32_p8(a) (a)
1701#define vreinterpret_f32_p16(a) (a)
1702#define vreinterpret_f32_p64(a) (a)
1703#define vreinterpret_f64_s8(a) (a)
1704#define vreinterpret_f64_s16(a) (a)
1705#define vreinterpret_f64_s32(a) (a)
1706#define vreinterpret_f64_s64(a) (a)
1707#define vreinterpret_f64_u8(a) (a)
1708#define vreinterpret_f64_u16(a) (a)
1709#define vreinterpret_f64_u32(a) (a)
1710#define vreinterpret_f64_u64(a) (a)
1711#define vreinterpret_f64_f32(a) (a)
1712#define vreinterpret_f64_p8(a) (a)
1713#define vreinterpret_f64_p16(a) (a)
1714#define vreinterpret_f64_p64(a) (a)
1715#define vreinterpret_p8_s8(a) (a)
1716#define vreinterpret_p8_s16(a) (a)
1717#define vreinterpret_p8_s32(a) (a)
1718#define vreinterpret_p8_s64(a) (a)
1719#define vreinterpret_p8_u8(a) (a)
1720#define vreinterpret_p8_u16(a) (a)
1721#define vreinterpret_p8_u32(a) (a)
1722#define vreinterpret_p8_u64(a) (a)
1723#define vreinterpret_p8_f32(a) (a)
1724#define vreinterpret_p8_f64(a) (a)
1725#define vreinterpret_p8_p16(a) (a)
1726#define vreinterpret_p8_p64(a) (a)
1727#define vreinterpret_p16_s8(a) (a)
1728#define vreinterpret_p16_s16(a) (a)
1729#define vreinterpret_p16_s32(a) (a)
1730#define vreinterpret_p16_s64(a) (a)
1731#define vreinterpret_p16_u8(a) (a)
1732#define vreinterpret_p16_u16(a) (a)
1733#define vreinterpret_p16_u32(a) (a)
1734#define vreinterpret_p16_u64(a) (a)
1735#define vreinterpret_p16_f32(a) (a)
1736#define vreinterpret_p16_f64(a) (a)
1737#define vreinterpret_p16_p8(a) (a)
1738#define vreinterpret_p16_p64(a) (a)
1739#define vreinterpret_p64_s8(a) (a)
1740#define vreinterpret_p64_s16(a) (a)
1741#define vreinterpret_p64_s32(a) (a)
1742#define vreinterpret_p64_s64(a) (a)
1743#define vreinterpret_p64_u8(a) (a)
1744#define vreinterpret_p64_u16(a) (a)
1745#define vreinterpret_p64_u32(a) (a)
1746#define vreinterpret_p64_u64(a) (a)
1747#define vreinterpret_p64_f32(a) (a)
1748#define vreinterpret_p64_f64(a) (a)
1749#define vreinterpret_p64_p8(a) (a)
1750#define vreinterpret_p64_p16(a) (a)
1751#define vreinterpretq_s8_s16(a) (a)
1752#define vreinterpretq_s8_s32(a) (a)
1753#define vreinterpretq_s8_s64(a) (a)
1754#define vreinterpretq_s8_u8(a) (a)
1755#define vreinterpretq_s8_u16(a) (a)
1756#define vreinterpretq_s8_u32(a) (a)
1757#define vreinterpretq_s8_u64(a) (a)
1758#define vreinterpretq_s8_f32(a) (a)
1759#define vreinterpretq_s8_f64(a) (a)
1760#define vreinterpretq_s8_p8(a) (a)
1761#define vreinterpretq_s8_p16(a) (a)
1762#define vreinterpretq_s8_p64(a) (a)
1763#define vreinterpretq_s16_s8(a) (a)
1764#define vreinterpretq_s16_s32(a) (a)
1765#define vreinterpretq_s16_s64(a) (a)
1766#define vreinterpretq_s16_u8(a) (a)
1767#define vreinterpretq_s16_u16(a) (a)
1768#define vreinterpretq_s16_u32(a) (a)
1769#define vreinterpretq_s16_u64(a) (a)
1770#define vreinterpretq_s16_f32(a) (a)
1771#define vreinterpretq_s16_f64(a) (a)
1772#define vreinterpretq_s16_p8(a) (a)
1773#define vreinterpretq_s16_p16(a) (a)
1774#define vreinterpretq_s16_p64(a) (a)
1775#define vreinterpretq_s32_s8(a) (a)
1776#define vreinterpretq_s32_s16(a) (a)
1777#define vreinterpretq_s32_s64(a) (a)
1778#define vreinterpretq_s32_u8(a) (a)
1779#define vreinterpretq_s32_u16(a) (a)
1780#define vreinterpretq_s32_u32(a) (a)
1781#define vreinterpretq_s32_u64(a) (a)
1782#define vreinterpretq_s32_f32(a) (a)
1783#define vreinterpretq_s32_f64(a) (a)
1784#define vreinterpretq_s32_p8(a) (a)
1785#define vreinterpretq_s32_p16(a) (a)
1786#define vreinterpretq_s32_p64(a) (a)
1787#define vreinterpretq_s64_s8(a) (a)
1788#define vreinterpretq_s64_s16(a) (a)
1789#define vreinterpretq_s64_s32(a) (a)
1790#define vreinterpretq_s64_u8(a) (a)
1791#define vreinterpretq_s64_u16(a) (a)
1792#define vreinterpretq_s64_u32(a) (a)
1793#define vreinterpretq_s64_u64(a) (a)
1794#define vreinterpretq_s64_f32(a) (a)
1795#define vreinterpretq_s64_f64(a) (a)
1796#define vreinterpretq_s64_p8(a) (a)
1797#define vreinterpretq_s64_p16(a) (a)
1798#define vreinterpretq_s64_p64(a) (a)
1799#define vreinterpretq_u8_s8(a) (a)
1800#define vreinterpretq_u8_s16(a) (a)
1801#define vreinterpretq_u8_s32(a) (a)
1802#define vreinterpretq_u8_s64(a) (a)
1803#define vreinterpretq_u8_u16(a) (a)
1804#define vreinterpretq_u8_u32(a) (a)
1805#define vreinterpretq_u8_u64(a) (a)
1806#define vreinterpretq_u8_f32(a) (a)
1807#define vreinterpretq_u8_f64(a) (a)
1808#define vreinterpretq_u8_p8(a) (a)
1809#define vreinterpretq_u8_p16(a) (a)
1810#define vreinterpretq_u8_p64(a) (a)
1811#define vreinterpretq_u16_s8(a) (a)
1812#define vreinterpretq_u16_s16(a) (a)
1813#define vreinterpretq_u16_s32(a) (a)
1814#define vreinterpretq_u16_s64(a) (a)
1815#define vreinterpretq_u16_u8(a) (a)
1816#define vreinterpretq_u16_u32(a) (a)
1817#define vreinterpretq_u16_u64(a) (a)
1818#define vreinterpretq_u16_f32(a) (a)
1819#define vreinterpretq_u16_f64(a) (a)
1820#define vreinterpretq_u16_p8(a) (a)
1821#define vreinterpretq_u16_p16(a) (a)
1822#define vreinterpretq_u16_p64(a) (a)
1823#define vreinterpretq_u32_s8(a) (a)
1824#define vreinterpretq_u32_s16(a) (a)
1825#define vreinterpretq_u32_s32(a) (a)
1826#define vreinterpretq_u32_s64(a) (a)
1827#define vreinterpretq_u32_u8(a) (a)
1828#define vreinterpretq_u32_u16(a) (a)
1829#define vreinterpretq_u32_u64(a) (a)
1830#define vreinterpretq_u32_f32(a) (a)
1831#define vreinterpretq_u32_f64(a) (a)
1832#define vreinterpretq_u32_p8(a) (a)
1833#define vreinterpretq_u32_p16(a) (a)
1834#define vreinterpretq_u32_p64(a) (a)
1835#define vreinterpretq_u64_s8(a) (a)
1836#define vreinterpretq_u64_s16(a) (a)
1837#define vreinterpretq_u64_s32(a) (a)
1838#define vreinterpretq_u64_s64(a) (a)
1839#define vreinterpretq_u64_u8(a) (a)
1840#define vreinterpretq_u64_u16(a) (a)
1841#define vreinterpretq_u64_u32(a) (a)
1842#define vreinterpretq_u64_f32(a) (a)
1843#define vreinterpretq_u64_f64(a) (a)
1844#define vreinterpretq_u64_p8(a) (a)
1845#define vreinterpretq_u64_p16(a) (a)
1846#define vreinterpretq_u64_p64(a) (a)
1847#define vreinterpretq_f32_s8(a) (a)
1848#define vreinterpretq_f32_s16(a) (a)
1849#define vreinterpretq_f32_s32(a) (a)
1850#define vreinterpretq_f32_s64(a) (a)
1851#define vreinterpretq_f32_u8(a) (a)
1852#define vreinterpretq_f32_u16(a) (a)
1853#define vreinterpretq_f32_u32(a) (a)
1854#define vreinterpretq_f32_u64(a) (a)
1855#define vreinterpretq_f32_f64(a) (a)
1856#define vreinterpretq_f32_p8(a) (a)
1857#define vreinterpretq_f32_p16(a) (a)
1858#define vreinterpretq_f32_p64(a) (a)
1859#define vreinterpretq_f64_s8(a) (a)
1860#define vreinterpretq_f64_s16(a) (a)
1861#define vreinterpretq_f64_s32(a) (a)
1862#define vreinterpretq_f64_s64(a) (a)
1863#define vreinterpretq_f64_u8(a) (a)
1864#define vreinterpretq_f64_u16(a) (a)
1865#define vreinterpretq_f64_u32(a) (a)
1866#define vreinterpretq_f64_u64(a) (a)
1867#define vreinterpretq_f64_f32(a) (a)
1868#define vreinterpretq_f64_p8(a) (a)
1869#define vreinterpretq_f64_p16(a) (a)
1870#define vreinterpretq_f64_p64(a) (a)
1871#define vreinterpretq_p8_s8(a) (a)
1872#define vreinterpretq_p8_s16(a) (a)
1873#define vreinterpretq_p8_s32(a) (a)
1874#define vreinterpretq_p8_s64(a) (a)
1875#define vreinterpretq_p8_u8(a) (a)
1876#define vreinterpretq_p8_u16(a) (a)
1877#define vreinterpretq_p8_u32(a) (a)
1878#define vreinterpretq_p8_u64(a) (a)
1879#define vreinterpretq_p8_f32(a) (a)
1880#define vreinterpretq_p8_f64(a) (a)
1881#define vreinterpretq_p8_p16(a) (a)
1882#define vreinterpretq_p8_p64(a) (a)
1883#define vreinterpretq_p16_s8(a) (a)
1884#define vreinterpretq_p16_s16(a) (a)
1885#define vreinterpretq_p16_s32(a) (a)
1886#define vreinterpretq_p16_s64(a) (a)
1887#define vreinterpretq_p16_u8(a) (a)
1888#define vreinterpretq_p16_u16(a) (a)
1889#define vreinterpretq_p16_u32(a) (a)
1890#define vreinterpretq_p16_u64(a) (a)
1891#define vreinterpretq_p16_f32(a) (a)
1892#define vreinterpretq_p16_f64(a) (a)
1893#define vreinterpretq_p16_p8(a) (a)
1894#define vreinterpretq_p16_p64(a) (a)
1895#define vreinterpretq_p64_s8(a) (a)
1896#define vreinterpretq_p64_s16(a) (a)
1897#define vreinterpretq_p64_s32(a) (a)
1898#define vreinterpretq_p64_s64(a) (a)
1899#define vreinterpretq_p64_u8(a) (a)
1900#define vreinterpretq_p64_u16(a) (a)
1901#define vreinterpretq_p64_u32(a) (a)
1902#define vreinterpretq_p64_u64(a) (a)
1903#define vreinterpretq_p64_f32(a) (a)
1904#define vreinterpretq_p64_f64(a) (a)
1905#define vreinterpretq_p64_p8(a) (a)
1906#define vreinterpretq_p64_p16(a) (a)
1908#if defined(__cplusplus)
__n128 neon_umull2_16(__n128, __n128)
__n64 neon_fsub32(__n64, __n64)
__n128 neon_andq(__n128, __n128)
unsigned __int64 neon_umovq64(__n128, const __int32)
float neon_fmaxps32(__n64)
__n128 neon_fcmltzq64(__n128)
__n128 neon_cmgezq32(__n128)
__n64 neon_umaxp32(__n64, __n64)
__n128 neon_subq8(__n128, __n128)
__n64 neon_cmgez64(__n64)
__n128 neon_cmltzq8(__n128)
__n64 neon_uzp1_8(__n64, __n64)
__n128 neon_ornq(__n128, __n128)
__n128 neon_umlsl_16(__n128, __n64, __n64)
__n64 neon_umax32(__n64, __n64)
__n128 neon_mlsq16(__n128, __n128, __n128)
__n128 neon_umaxq8(__n128, __n128)
__n128 neon_fsubq64(__n128, __n128)
void neon_st1s_8(__int8 *, __n64, const __int32)
__n128 neon_mlaq32(__n128, __n128, __n128)
__n128 neon_cmgtzq8(__n128)
__n64 neon_sub16(__n64, __n64)
__n128 neon_ld1m_q32(const __int32 *)
__n64 neon_smax16(__n64, __n64)
__n64 neon_ld1r_32(const __int32 *)
__n64 neon_trn2_16(__n64, __n64)
__n64 neon_orn(__n64, __n64)
__n128 neon_ld1m_q64(const __int64 *)
__n128 neon_sha1mui(__n128, unsigned __int32, __n128)
unsigned __int8 neon_umov8(__n64, const __int32)
__n64 neon_faddpsq64(__n128)
__n64 neon_ext32(__n64, __n64, const __int32)
__n64 neon_mla8(__n64, __n64, __n64)
__n128 neon_uzp2_q64(__n128, __n128)
__n128 neon_uzp1_q64(__n128, __n128)
__n64 neon_zip2_16(__n64, __n64)
__n128 neon_cmgeq8(__n128, __n128)
__n64 neon_cmeq8(__n64, __n64)
__n64 neon_cmgtz32(__n64)
__n64 neon_cmltz16(__n64)
__n128 neon_umaxq16(__n128, __n128)
__n128 neon_smlal_32(__n128, __n64, __n64)
__n128 neon_cmeqq16(__n128, __n128)
__n128 neon_trn2_q8(__n128, __n128)
__n64 neon_duprf32(float)
__n128 neon_aesd(__n128, __n128)
__n128 neon_uzp2_q16(__n128, __n128)
__n128 neon_mlsq8(__n128, __n128, __n128)
__n128 neon_sha256su0(__n128, __n128)
__n64 neon_rev64_16(__n64)
__n64 neon_fcmeq64(__n64, __n64)
__n64 neon_cmltz32(__n64)
__n128 neon_fcmgezq64(__n128)
__n128 neon_sha512h(__n128, __n128, __n128)
__n128 neon_dupqr64(__int64)
__n64 neon_add16(__n64, __n64)
__n128 neon_cmgtzq16(__n128)
void neon_st1s_q32(__int32 *, __n128, const __int32)
__n128 neon_extq8(__n128, __n128, const __int32)
__n128 neon_sshriq32(__n128, const __int32)
__n128 neon_insqrf64(__n128, const __int32, double)
__n128 neon_smull_16(__n64, __n64)
__n128 neon_smull2_32(__n128, __n128)
void neon_st1m_q32(__int32 *, __n128)
__n64 neon_shlis64(__n64, const __int32)
unsigned __int16 poly16_t
__n64 neon_mls32(__n64, __n64, __n64)
__n64 neon_eor(__n64, __n64)
__n128 neon_cmgezq8(__n128)
__n128 neon_smaxq16(__n128, __n128)
__n128 neon_cmgeq64(__n128, __n128)
__n128 neon_cmlezq16(__n128)
__n64 neon_insrf64(__n64, const __int32, double)
__n128 neon_cmhsq8(__n128, __n128)
__n64 neon_ushri32(__n64, const __int32)
__n64 neon_fcmgtz32(__n64)
__n64 neon_sshri8(__n64, const __int32)
__n128 neon_ld1s_q64(const __int64 *, __n128, const __int32)
__n64 neon_uminp32(__n64, __n64)
unsigned __int32 poly32_t
__n64 neon_cmgt8(__n64, __n64)
__n64 neon_adds64(__n64, __n64)
__n128 neon_cmhsq64(__n128, __n128)
__n128 neon_ld1m_q16(const __int16 *)
__n128 neon_sha1cui(__n128, unsigned __int32, __n128)
__n64 neon_fsub64(__n64, __n64)
__n64 neon_fmax32(__n64, __n64)
__n8 neon_uminvq8(__n128)
__n64 neon_rev64_32(__n64)
__n16 neon_umaxv16(__n64)
__n128 neon_aese(__n128, __n128)
__n64 neon_fadd32(__n64, __n64)
__n128 neon_sha512su1(__n128, __n128, __n128)
void neon_st1m_32(__int32 *, __n64)
__n128 neon_cmgezq64(__n128)
__n128 neon_extq64(__n128, __n128, const __int32)
__n64 neon_dups64(__n64, const __int32)
__n128 neon_ushriq16(__n128, const __int32)
__n128 neon_cmhiq64(__n128, __n128)
__n64 neon_umin32(__n64, __n64)
__n64 neon_rev32_16(__n64)
__n64 neon_ld1r_64(const __int64 *)
__n128 neon_uzp2_q32(__n128, __n128)
__n64 neon_cmhi8(__n64, __n64)
__n128 neon_fcmeqq32(__n128, __n128)
__n64 neon_insr64(__n64, const __int32, __int64)
__n64 neon_mul32(__n64, __n64)
__n128 neon_uzp1_q8(__n128, __n128)
__n64 neon_uzp1_32(__n64, __n64)
__n128 neon_subq32(__n128, __n128)
__n128 neon_sshriq64(__n128, const __int32)
__n128 neon_ld1r_q32(const __int32 *)
void neon_st1s_16(__int16 *, __n64, const __int32)
__n128 neon_cmeqzq16(__n128)
__n128 neon_smull2_8(__n128, __n128)
__n128 neon_trn1_q16(__n128, __n128)
__n128 neon_pmull_8(__n64, __n64)
__n64 neon_insrf32(__n64, const __int32, float)
__n64 neon_shli16(__n64, const __int32)
__n8 neon_umaxvq8(__n128)
__n128 neon_cmgeq32(__n128, __n128)
__n128 neon_cmltzq32(__n128)
__n128 neon_dupqr8(__int32)
__n64 neon_uzp2_8(__n64, __n64)
__n128 neon_uzp1_q16(__n128, __n128)
__n128 neon_cmhsq32(__n128, __n128)
__n128 neon_zip2_q64(__n128, __n128)
__n128 neon_orrq(__n128, __n128)
__n128 neon_fcmgezq32(__n128)
unsigned __int16 neon_umov16(__n64, const __int32)
__n64 neon_cmlez16(__n64)
__n128 neon_dupqr32(__int32)
__n64 neon_mls16(__n64, __n64, __n64)
__n64 neon_sshri16(__n64, const __int32)
__n64 neon_dupr16(__int32)
__n128 neon_cmltzq16(__n128)
__n64 neon_umin16(__n64, __n64)
__n16 neon_addvq16(__n128)
__n64 neon_tbl1_q8(__n128, __n64)
float neon_addvq32(__n128)
__n64 neon_trn2_8(__n64, __n64)
__n64 neon_insr16(__n64, const __int32, __int32)
__n64 neon_fcmge32(__n64, __n64)
__n64 neon_ext64(__n64, __n64, const __int32)
__n8 neon_smaxvq8(__n128)
__n128 neon_ushriq64(__n128, const __int32)
__n64 neon_zip1_32(__n64, __n64)
float neon_dups32(__n64, const __int32)
float neon_faddpsq32(__n128, __n128)
__n128 neon_cmgezq16(__n128)
__n128 neon_rev16q(__n128)
__n128 neon_rev32q_8(__n128)
__n128 neon_addq32(__n128, __n128)
__n128 neon_insqr8(__n128, const __int32, __int32)
__n128 neon_bicq(__n128, __n128)
__n64 neon_sminp32(__n64, __n64)
__n128 neon_insqr64(__n128, const __int32, __int64)
__int16 neon_smov16(__n64, const __int32)
__n64 neon_mla16(__n64, __n64, __n64)
void neon_st1m_q16(__int16 *, __n128)
__n64 neon_cmgt64(__n64, __n64)
__n64 neon_cmhs16(__n64, __n64)
__n128 neon_cmgtq64(__n128, __n128)
__n128 neon_umlal_32(__n128, __n64, __n64)
__n128 neon_sha256h(__n128, __n128, __n128)
__n128 neon_umull2_8(__n128, __n128)
__n64 neon_zip1_8(__n64, __n64)
__n128 neon_cmlezq64(__n128)
__n128 neon_sha512su0(__n128, __n128)
__n64 neon_trn2_32(__n64, __n64)
__n64 neon_cmltz64(__n64)
__n64 neon_uzp1_16(__n64, __n64)
__n128 neon_shliq16(__n128, const __int32)
__n64 neon_cmeqz16(__n64)
__n64 neon_fmax64(__n64, __n64)
__n64 neon_add8(__n64, __n64)
__n128 neon_mlaq16(__n128, __n128, __n128)
__n64 neon_sub8(__n64, __n64)
__n128 neon_eorq(__n128, __n128)
__n128 neon_aesimc(__n128)
__n64 neon_zip2_8(__n64, __n64)
__n64 neon_duprf64(double)
__n128 neon_umlsl2_8(__n128, __n128, __n128)
__n16 neon_smaxvq16(__n128)
__n128 neon_cmhsq16(__n128, __n128)
void neon_st1m_16(__int16 *, __n64)
unsigned __int16 neon_umovq16(__n128, const __int32)
__n128 neon_fcmeqq64(__n128, __n128)
__n128 neon_sminq8(__n128, __n128)
unsigned __int8 neon_umovq8(__n128, const __int32)
__n64 neon_cmge64(__n64, __n64)
float neon_dups32q(__n128, const __int32)
__n64 neon_umax16(__n64, __n64)
__n64 neon_mls8(__n64, __n64, __n64)
__n64 neon_cmeq32(__n64, __n64)
__n64 neon_subs64(__n64, __n64)
__n128 neon_dupqr16(__int32)
__n64 neon_addps64(__n128)
__n64 neon_rev64_8(__n64)
float neon_uminvq32(__n128)
__n128 neon_smlsl_16(__n128, __n64, __n64)
__n128 neon_umlsl_8(__n128, __n64, __n64)
__n128 neon_umull_16(__n64, __n64)
double neon_fminps64(__n128)
__n64 neon_dupr8(__int32)
void neon_st1s_32(__int32 *, __n64, const __int32)
__n128 neon_combine(__n64, __n64)
__n64 neon_fadd64(__n64, __n64)
__n64 neon_fcmeqz32(__n64)
__n128 neon_mulq8(__n128, __n128)
__n128 neon_faddq64(__n128, __n128)
__n128 neon_fsubq32(__n128, __n128)
__n64 neon_fcmeq32(__n64, __n64)
__n128 neon_zip2_q8(__n128, __n128)
__n64 neon_cmgt16(__n64, __n64)
__n128 neon_smull_32(__n64, __n64)
__n64 neon_dups64q(__n128, const __int32)
__n128 neon_uzp1_q32(__n128, __n128)
__n128 neon_trn2_q16(__n128, __n128)
__n128 neon_umlsl2_16(__n128, __n128, __n128)
void neon_st1m_64(__int64 *, __n64)
__n128 neon_trn1_q8(__n128, __n128)
__n64 neon_mul16(__n64, __n64)
__n128 neon_fcmgtzq64(__n128)
__n64 neon_fcmgt32(__n64, __n64)
__n128 neon_ld1s_q8(const __int8 *, __n128, const __int32)
__n64 neon_ext16(__n64, __n64, const __int32)
__n64 neon_smax32(__n64, __n64)
void neon_st1s_64(__int64 *, __n64, const __int32)
__n64 neon_fcmlez64(__n64)
__n64 neon_fcmltz32(__n64)
__n64 neon_zip2_32(__n64, __n64)
float neon_umaxvq32(__n128)
__n128 neon_ld1m_q8(const __int8 *)
__n64 neon_addp32(__n64, __n64)
__n128 neon_fmaxq32(__n128, __n128)
__n128 neon_rev32q_16(__n128)
__n64 neon_cmgt32(__n64, __n64)
__n128 neon_ld1r_q64(const __int64 *)
__n64 neon_cmge16(__n64, __n64)
__n64 neon_ushris64(__n64, const __int32)
__n64 neon_fcmltz64(__n64)
__n128 neon_dupqrf64(double)
__n128 neon_fcmeqzq32(__n128)
__n64 neon_ld1s_64(const __int64 *, __n64, const __int32)
__n128 neon_rev64q_32(__n128)
__n64 neon_cmlez64(__n64)
unsigned __int32 neon_sha1hui(unsigned __int32)
__n128 neon_addq8(__n128, __n128)
__int64 neon_smov64(__n64, const __int32)
__n128 neon_fcmeqzq64(__n128)
__n64 neon_sub32(__n64, __n64)
__n128 neon_ushriq8(__n128, const __int32)
__int16 neon_smovq16(__n128, const __int32)
__n128 neon_cmltzq64(__n128)
__n128 neon_cmeqq64(__n128, __n128)
__n16 neon_sminvq16(__n128)
__n128 neon_fcmlezq32(__n128)
__n64 neon_insr8(__n64, const __int32, __int32)
__n64 neon_fmul64(__n64, __n64)
__n128 neon_fminq64(__n128, __n128)
__n128 neon_umlal2_8(__n128, __n128, __n128)
__n128 neon_cmhiq8(__n128, __n128)
__n64 neon_sshri32(__n64, const __int32)
__n128 neon_ld1r_q16(const __int16 *)
__n128 neon_smlal_16(__n128, __n64, __n64)
__n128 neon_cmgtzq64(__n128)
__int32 _CopyInt32FromFloat(float)
__n128 neon_cmgtq8(__n128, __n128)
__n64 neon_and(__n64, __n64)
__n64 neon_ld1r_8(const __int8 *)
__n128 neon_extq32(__n128, __n128, const __int32)
__n128 neon_umlal_8(__n128, __n64, __n64)
__n128 neon_addq64(__n128, __n128)
__n64 neon_cmge8(__n64, __n64)
__n64 neon_ushri8(__n64, const __int32)
__n128 neon_cmeqq32(__n128, __n128)
__n16 neon_smaxv16(__n64)
__n128 neon_smlsl_8(__n128, __n64, __n64)
__n128 neon_zip1_q64(__n128, __n128)
__n128 neon_umull_8(__n64, __n64)
__n64 neon_cmge32(__n64, __n64)
__n128 neon_tbl1_qq8(__n128, __n128)
__n64 neon_fcmgez64(__n64)
__n128 neon_zip1_q8(__n128, __n128)
float neon_faddps32(__n64)
void neon_st1s_q8(__int8 *, __n128, const __int32)
__n128 neon_trn2_q32(__n128, __n128)
__n64 neon_cmhs64(__n64, __n64)
void neon_st1m_q64(__int64 *, __n128)
__n128 neon_cmeqzq32(__n128)
__n128 neon_uminq16(__n128, __n128)
__n128 neon_fminq32(__n128, __n128)
__n128 neon_umlsl_32(__n128, __n64, __n64)
__n128 neon_zip1_q16(__n128, __n128)
__n64 neon_shli32(__n64, const __int32)
__n128 neon_faddq32(__n128, __n128)
__n64 neon_rev32_8(__n64)
void neon_st1m_q8(__int8 *, __n128)
__n128 neon_dupqrf32(float)
__n64 neon_fmul32(__n64, __n64)
__n128 neon_umull2_32(__n128, __n128)
void neon_st1s_q64(__int64 *, __n128, const __int32)
__n128 neon_umlal2_16(__n128, __n128, __n128)
__n128 neon_cmgtq32(__n128, __n128)
__n128 neon_sha1pui(__n128, unsigned __int32, __n128)
__n128 neon_smlal2_8(__n128, __n128, __n128)
__n128 neon_sha1su1(__n128, __n128)
__n64 neon_cmhs32(__n64, __n64)
__n64 neon_fcmeqz64(__n64)
__n64 neon_cmeqz64(__n64)
__n128 neon_smaxq32(__n128, __n128)
__n16 neon_uminvq16(__n128)
__n128 neon_pmull2_64(__n128, __n128)
__n128 neon_cmgeq16(__n128, __n128)
__n64 neon_cmgez16(__n64)
__n128 neon_shliq8(__n128, const __int32)
__n64 neon_tbl1_8(__n64, __n64)
__n64 neon_cmeq64(__n64, __n64)
__n64 neon_ext8(__n64, __n64, const __int32)
__n64 neon_cmeqz32(__n64)
__n128 neon_fcmgeq64(__n128, __n128)
__n128 neon_uminq8(__n128, __n128)
__int64 neon_smovq64(__n128, const __int32)
__n16 neon_sminv16(__n64)
__n128 neon_mlaq8(__n128, __n128, __n128)
void neon_st1m_8(__int8 *, __n64)
__n128 neon_extq16(__n128, __n128, const __int32)
__n128 neon_umull_32(__n64, __n64)
__n128 neon_cmgtzq32(__n128)
__n64 neon_umax8(__n64, __n64)
float neon_sminvq32(__n128)
__n128 neon_subq16(__n128, __n128)
__n128 neon_smlal2_32(__n128, __n128, __n128)
__n64 neon_cmhs8(__n64, __n64)
__n64 neon_umin8(__n64, __n64)
__n128 neon_smlsl2_16(__n128, __n128, __n128)
__n128 neon_ld1r_q8(const __int8 *)
__n64 neon_cmgtz64(__n64)
__n128 neon_rev64q_8(__n128)
__n64 neon_ld1m_8(const __int8 *)
__n128 neon_sha1su0(__n128, __n128, __n128)
__n128 neon_sshriq16(__n128, const __int32)
__n128 neon_uzp2_q8(__n128, __n128)
__n128 neon_fmulq32(__n128, __n128)
__n64 neon_dupr32(__int32)
__n64 neon_sshris64(__n64, const __int32)
__n128 neon_smull_8(__n64, __n64)
__n128 neon_pmull2_8(__n128, __n128)
__n128 neon_insqr32(__n128, const __int32, __int32)
__n128 neon_aesmc(__n128)
__n128 neon_sshriq8(__n128, const __int32)
__n64 neon_cmhi32(__n64, __n64)
__n64 neon_fcmlez32(__n64)
__n128 neon_addq16(__n128, __n128)
__n64 neon_ld1s_32(const __int32 *, __n64, const __int32)
__n64 neon_fcmgez32(__n64)
__n64 neon_mul8(__n64, __n64)
__n128 neon_trn1_q32(__n128, __n128)
__int32 neon_smov32(__n64, const __int32)
__n128 neon_fcmgtzq32(__n128)
__n128 neon_insqr16(__n128, const __int32, __int32)
__n64 neon_smin32(__n64, __n64)
__n128 neon_cmhiq16(__n128, __n128)
__n128 neon_smlal_8(__n128, __n64, __n64)
__n128 neon_cmgtq16(__n128, __n128)
__n128 neon_fcmgtq32(__n128, __n128)
__int32 neon_smovq32(__n128, const __int32)
__n64 neon_zip1_16(__n64, __n64)
__n64 neon_add32(__n64, __n64)
__n128 neon_smlal2_16(__n128, __n128, __n128)
__n128 neon_cmeqzq8(__n128)
__n128 neon_sminq16(__n128, __n128)
__n64 neon_dupr64(__int64)
__n64 neon_cmgtz16(__n64)
void neon_st1s_q16(__int16 *, __n128, const __int32)
__n64 neon_trn1_16(__n64, __n64)
__n64 neon_uzp2_16(__n64, __n64)
unsigned __int32 neon_umov32(__n64, const __int32)
__n128 neon_mlsq32(__n128, __n128, __n128)
__n16 neon_uminv16(__n64)
__n128 neon_sminq32(__n128, __n128)
__n128 neon_fmulq64(__n128, __n128)
__n128 neon_cmeqzq64(__n128)
__n128 neon_smlsl_32(__n128, __n64, __n64)
__n128 neon_zip2_q16(__n128, __n128)
double neon_fmaxps64(__n128)
__n128 neon_smaxq8(__n128, __n128)
__n64 neon_ld1m_32(const __int32 *)
__n128 neon_mulq16(__n128, __n128)
__n64 neon_trn1_32(__n64, __n64)
unsigned __int32 neon_umovq32(__n128, const __int32)
__n64 neon_ld1r_16(const __int16 *)
__n64 neon_mla32(__n64, __n64, __n64)
__n64 neon_insr32(__n64, const __int32, __int32)
__n64 neon_ld1m_16(const __int16 *)
__n128 neon_shliq32(__n128, const __int32)
__n128 neon_smlsl2_8(__n128, __n128, __n128)
__n8 neon_sminvq8(__n128)
__n64 neon_orr(__n64, __n64)
__n64 neon_shli8(__n64, const __int32)
__n64 neon_uzp2_32(__n64, __n64)
__n64 neon_smax8(__n64, __n64)
__n128 neon_rev64q_16(__n128)
__n64 neon_smaxp32(__n64, __n64)
__int8 neon_smov8(__n64, const __int32)
__n128 neon_pmull_64(__n64, __n64)
__n64 neon_trn1_8(__n64, __n64)
__n128 neon_fcmltzq32(__n128)
__n128 neon_smlsl2_32(__n128, __n128, __n128)
__n128 neon_smull2_16(__n128, __n128)
__n64 neon_cmhi64(__n64, __n64)
__n128 neon_sha256h2(__n128, __n128, __n128)
__n64 neon_smin16(__n64, __n64)
__n128 neon_umlal_16(__n128, __n64, __n64)
__n128 neon_uminq32(__n128, __n128)
__n128 neon_trn2_q64(__n128, __n128)
__n128 neon_shliq64(__n128, const __int32)
__n64 neon_cmhi16(__n64, __n64)
__n64 neon_fcmge64(__n64, __n64)
__n64 neon_ld1m_64(const __int64 *)
__n128 neon_umlal2_32(__n128, __n128, __n128)
__n128 neon_umaxq32(__n128, __n128)
__n64 neon_ld1s_8(const __int8 *, __n64, const __int32)
__n128 neon_sha256su1(__n128, __n128, __n128)
__n128 neon_subq64(__n128, __n128)
__n128 neon_sha512h2(__n128, __n128, __n128)
__int8 neon_smovq8(__n128, const __int32)
__n64 neon_cmlez32(__n64)
__n128 neon_umlsl2_32(__n128, __n128, __n128)
__n16 neon_umaxvq16(__n128)
__n64 neon_ushri16(__n64, const __int32)
__n128 neon_fmaxq64(__n128, __n128)
__n64 neon_smin8(__n64, __n64)
__n128 neon_ushriq32(__n128, const __int32)
__n64 neon_fmin64(__n64, __n64)
__n128 neon_mulq32(__n128, __n128)
__n64 neon_bic(__n64, __n64)
__n128 neon_ld1s_q16(const __int16 *, __n128, const __int32)
float neon_fminps32(__n64)
unsigned __int64 neon_umov64(__n64, const __int32)
__n64 neon_cmeq16(__n64, __n64)
__n64 neon_cmgez32(__n64)
__n64 neon_fcmgtz64(__n64)
__n128 neon_zip2_q32(__n128, __n128)
__n64 neon_ld1s_16(const __int16 *, __n64, const __int32)
__n128 neon_trn1_q64(__n128, __n128)
__n128 neon_cmlezq32(__n128)
__n128 neon_cmlezq8(__n128)
__n128 neon_cmhiq32(__n128, __n128)
__n128 neon_fcmgtq64(__n128, __n128)
__n128 neon_ld1s_q32(const __int32 *, __n128, const __int32)
__n128 neon_insqrf32(__n128, const __int32, float)
__n128 neon_fcmgeq32(__n128, __n128)
__n64 neon_fmin32(__n64, __n64)
__n128 neon_fcmlezq64(__n128)
__n128 neon_cmeqq8(__n128, __n128)
__n64 neon_fcmgt64(__n64, __n64)
__n128 neon_zip1_q32(__n128, __n128)
unsigned __int64 poly64_t
float neon_smaxvq32(__n128)
void __declspec(noinline) __cdecl _free_base(void *const block)
static size_t align(size_t addr, size_t alignment)