* qatar/master: (24 commits) flvdec: remove incomplete, disabled seeking code mem: add support for _aligned_malloc() as found on Windows lavc: Extend the documentation for avcodec_init_packet flvdec: remove incomplete, disabled seeking code http: replace atoll() with strtoll() mpegts: remove unused/incomplete/broken seeking code af_amix: allow float planar sample format as input af_amix: use AVFloatDSPContext.vector_fmac_scalar() float_dsp: add x86-optimized functions for vector_fmac_scalar() float_dsp: Move vector_fmac_scalar() from libavcodec to libavutil lavr: Add x86-optimized function for flt to s32 conversion lavr: Add x86-optimized function for flt to s16 conversion lavr: Add x86-optimized functions for s32 to flt conversion lavr: Add x86-optimized functions for s32 to s16 conversion lavr: Add x86-optimized functions for s16 to flt conversion lavr: Add x86-optimized function for s16 to s32 conversion rtpenc: Support packetizing iLBC rtpdec: Add a depacketizer for iLBC Implement the iLBC storage file format mov: Support muxing/demuxing iLBC ... Conflicts: Changelog configure libavcodec/avcodec.h libavcodec/dsputil.c libavcodec/version.h libavformat/movenc.c libavformat/mpegts.c libavformat/version.h libavutil/mem.c
Showing the changes to libavcodec/arm (2 of 44 files). Show all
Unified · Split
| @@ -154,8 +154,6 @@ void ff_vector_fmul_window_neon(float *dst, const float *src0, · 153 unmodified lines | |||
| 154 | const float *src1, const float *win, int len); | 154 | const float *src1, const float *win, int len); |
| 155 | void ff_vector_fmul_scalar_neon(float *dst, const float *src, float mul, | 155 | void ff_vector_fmul_scalar_neon(float *dst, const float *src, float mul, |
| 156 | int len); | 156 | int len); |
| 157 | void ff_vector_fmac_scalar_neon(float *dst, const float *src, float mul, | ||
| 158 | int len); | ||
| 159 | void ff_butterflies_float_neon(float *v1, float *v2, int len); | 157 | void ff_butterflies_float_neon(float *v1, float *v2, int len); |
| 160 | float ff_scalarproduct_float_neon(const float *v1, const float *v2, int len); | 158 | float ff_scalarproduct_float_neon(const float *v1, const float *v2, int len); |
| 161 | void ff_vector_fmul_reverse_neon(float *dst, const float *src0, | 159 | void ff_vector_fmul_reverse_neon(float *dst, const float *src0, |
| @@ -329,7 +327,6 @@ void ff_dsputil_init_neon(DSPContext *c, AVCodecContext *avctx) · 167 unmodified lines | |||
| 329 | 327 | ||
| 330 | c->vector_fmul_window = ff_vector_fmul_window_neon; | 328 | c->vector_fmul_window = ff_vector_fmul_window_neon; |
| 331 | c->vector_fmul_scalar = ff_vector_fmul_scalar_neon; | 329 | c->vector_fmul_scalar = ff_vector_fmul_scalar_neon; |
| 332 | c->vector_fmac_scalar = ff_vector_fmac_scalar_neon; | ||
| 333 | c->butterflies_float = ff_butterflies_float_neon; | 330 | c->butterflies_float = ff_butterflies_float_neon; |
| 334 | c->scalarproduct_float = ff_scalarproduct_float_neon; | 331 | c->scalarproduct_float = ff_scalarproduct_float_neon; |
| 335 | c->vector_fmul_reverse = ff_vector_fmul_reverse_neon; | 332 | c->vector_fmul_reverse = ff_vector_fmul_reverse_neon; |
| @@ -682,54 +682,6 @@ NOVFP vdup.32 q8, r2 · 681 unmodified lines | |||
| 682 | .unreq len | 682 | .unreq len |
| 683 | endfunc | 683 | endfunc |
| 684 | 684 | ||
| 685 | function ff_vector_fmac_scalar_neon, export=1 | ||
| 686 | VFP len .req r2 | ||
| 687 | VFP acc .req r3 | ||
| 688 | NOVFP len .req r3 | ||
| 689 | NOVFP acc .req r2 | ||
| 690 | VFP vdup.32 q15, d0[0] | ||
| 691 | NOVFP vdup.32 q15, r2 | ||
| 692 | bics r12, len, #15 | ||
| 693 | mov acc, r0 | ||
| 694 | beq 3f | ||
| 695 | vld1.32 {q0}, [r1,:128]! | ||
| 696 | vld1.32 {q8}, [acc,:128]! | ||
| 697 | vld1.32 {q1}, [r1,:128]! | ||
| 698 | vld1.32 {q9}, [acc,:128]! | ||
| 699 | 1: vmla.f32 q8, q0, q15 | ||
| 700 | vld1.32 {q2}, [r1,:128]! | ||
| 701 | vld1.32 {q10}, [acc,:128]! | ||
| 702 | vmla.f32 q9, q1, q15 | ||
| 703 | vld1.32 {q3}, [r1,:128]! | ||
| 704 | vld1.32 {q11}, [acc,:128]! | ||
| 705 | vmla.f32 q10, q2, q15 | ||
| 706 | vst1.32 {q8}, [r0,:128]! | ||
| 707 | vmla.f32 q11, q3, q15 | ||
| 708 | vst1.32 {q9}, [r0,:128]! | ||
| 709 | subs r12, r12, #16 | ||
| 710 | beq 2f | ||
| 711 | vld1.32 {q0}, [r1,:128]! | ||
| 712 | vld1.32 {q8}, [acc,:128]! | ||
| 713 | vst1.32 {q10}, [r0,:128]! | ||
| 714 | vld1.32 {q1}, [r1,:128]! | ||
| 715 | vld1.32 {q9}, [acc,:128]! | ||
| 716 | vst1.32 {q11}, [r0,:128]! | ||
| 717 | b 1b | ||
| 718 | 2: vst1.32 {q10}, [r0,:128]! | ||
| 719 | vst1.32 {q11}, [r0,:128]! | ||
| 720 | ands len, len, #15 | ||
| 721 | it eq | ||
| 722 | bxeq lr | ||
| 723 | 3: vld1.32 {q0}, [r1,:128]! | ||
| 724 | vld1.32 {q8}, [acc,:128]! | ||
| 725 | vmla.f32 q8, q0, q15 | ||
| 726 | vst1.32 {q8}, [r0,:128]! | ||
| 727 | subs len, len, #4 | ||
| 728 | bgt 3b | ||
| 729 | bx lr | ||
| 730 | .unreq len | ||
| 731 | endfunc | ||
| 732 | |||
| 733 | function ff_butterflies_float_neon, export=1 | 685 | function ff_butterflies_float_neon, export=1 |
| 734 | 1: vld1.32 {q0},[r0,:128] | 686 | 1: vld1.32 {q0},[r0,:128] |
| 735 | vld1.32 {q1},[r1,:128] | 687 | vld1.32 {q1},[r1,:128] |