• Yi-Yen Chung's avatar
    NEON: more fp16 using intrinsics supported by architecture v7 (skip version) (#1081) · 5634cec0
    Yi-Yen Chung authored
    * [NEON] Add vabal_{s/u}{8/16/32}
    
    * [NEON] Add vabal_high_{s/u}{8/16/32}
    
    * [NEON] Add all vcale* intrinsics (9)
    
    * [NEON] Add all vcalt intrinsics (9)
    
    * [NEON] Add vcreate_f16
    
    * [NEON] Add vreinterpret_u64_f16
    
    * [NEON] Add vcvth_f16_s16 and vcvth_f16_u16
    
    * [NEON] Add vduph_lane_f16, vdup_lane_f16, and vdupq_lane_f16
    
    * [NEON] Add vext_f16
    
    * [NEON] Add 16 vcvt{q}_n_* intrinsics
    
    * [Fix] Correct function input parameters
    
    * [NEON] Add 6 vcvtn_{s/u}{16/32/64}_f{*} intrinsics
    
    * [Fix] Correct vdup_lane_f16 and vdupq_lane_f16.
    
    * [Fix] Correct function input parameters.
    
    * [NEON] Add 24 vcvt{q}_n_* intrinsics
    
    * [NEON] Add all vcvtn* intrinsics
    
    * [NEON] Add vfmah_f16 and vfma_f16
    
    * [NEON] Add vfma_n_f16 and vfmaq_n_f16
    
    * [NEON] Add vmulh_f16
    
    * [NEON] Add fma_lane related intrinsics.
    
    * [NEON] Add 5 vmul* related intrinsics
    vmulh_lane_f16, vmulh_laneq_f16, vmul_lane_f16,
    vmul_laneq_f16, vmulq_laneq_f16.
    
    * [NEON] Add neg related intrinsics.
    
    * [NEON] Add all fms, fms_n, and fms_lane intrinsics
    
    * [NEON] Add types float16x{4/8}x{2/3/4}
    
    * [NEON] Add 9 vld1 related intrinsics
    
    * [Fix] Modified wrong rounding implementation.
    Modified wrong implementation "Ties to Away" to "rounding to nearest
    with ties to Away"
    add.h: Remove redundant code.
    
    * [Fix] Fix wrong intrinsic alias names.
    
    * [Refactor] Remove redundant functions.
    
    * [NEON] Add 45 ld2 related intrinsics
    one ld2_f16, twenty-two ld2_lane series, and twenty-two ld2_dup series.
    
    * [NEON] Add ld3_dup, ld3_lane, and ld4_dup
    
    * [NEON] Add vld3_f16 and vld4_f16.
    
    * [NEON] Add vld{3/4}_{dup/lane} series intrinsics
    
    * [NEON] Add mla_{high}_lane series intrinsics
    
    * [NEON] Add qdmlal_{high}_{lane} series intrinsics.
    
    * [NEON] Add qdmlal_lane and qdmlal_n series intrinsics
    
    * [NEON] Add mls_lane and mlsl_high_lane series intrinsics
    
    * [NEON] Add 22 qdmlsl series intrinsics
    
    * [NEON] Add 10 qdmull_* series intrinsics
    
    * [NEON] Add 3 qdmulh series intrinsics
    
    * [Fix] Fix wrong function name.
    
    * [Fix] Correct the wrong alias function name.
    
    * [NEON] Add qdmullh_lane{q}_s{16/32} related intrinsics
    
    * [NEON] Add qdmull_n and qdmull_high_lane series intrinsics
    
    * [Fix] Add conditions for fp16 intrinsics
    
    * [Hack] Skip functions that trigger compiler bugs.
    5634cec0
ld2.h 24.3 KB