swr: rewrite resample_common/linear_float_sse/avx in yasm.
Linear interpolation goes from 63 (llvm) or 58 (gcc) to 48 (yasm)
cycles/sample on 64bit, or from 66 (llvm/gcc) to 52 (yasm) cycles/
sample on 32bit. Bon-linear goes from 43 (llvm) or 38 (gcc) to
32 (yasm) cycles/sample on 64bit, or from 46 (llvm) or 44 (gcc) to
38 (yasm) cycles/sample on 32bit (all testing on OSX 10.9.2, llvm
5.1 and gcc 4.8/9).
Signed-off-by:
Michael Niedermayer <michaelni@gmx.at>
Showing
- configure 1 addition, 2 deletionsconfigure
- libswresample/resample_template.c 1 addition, 11 deletionslibswresample/resample_template.c
- libswresample/x86/Makefile 1 addition, 0 deletionslibswresample/x86/Makefile
- libswresample/x86/resample.asm 462 additions, 0 deletionslibswresample/x86/resample.asm
- libswresample/x86/resample_mmx.h 0 additions, 118 deletionslibswresample/x86/resample_mmx.h
- libswresample/x86/resample_x86_dsp.c 16 additions, 18 deletionslibswresample/x86/resample_x86_dsp.c
libswresample/x86/resample.asm
0 → 100644
Please register or sign in to comment