X-Git-Url: https://git.piment-noir.org/?p=deb_ffmpeg.git;a=blobdiff_plain;f=ffmpeg%2Flibavcodec%2Fx86%2Flossless_audiodsp.asm;h=39395fecca4c3c5ce02d2c054da1d8d2452ee6ff;hp=64b769f7d4f555e8b6f19ab8c10f62d1ce200916;hb=f6fa7814ccfe3e76514b36cf04f5cd3cb657c8cf;hpb=2ba45a602cbfa7b771effba9b11bb4245c21bc00 diff --git a/ffmpeg/libavcodec/x86/lossless_audiodsp.asm b/ffmpeg/libavcodec/x86/lossless_audiodsp.asm index 64b769f..39395fe 100644 --- a/ffmpeg/libavcodec/x86/lossless_audiodsp.asm +++ b/ffmpeg/libavcodec/x86/lossless_audiodsp.asm @@ -26,6 +26,12 @@ SECTION_TEXT ; int ff_scalarproduct_and_madd_int16(int16_t *v1, int16_t *v2, int16_t *v3, ; int order, int mul) cglobal scalarproduct_and_madd_int16, 4,4,8, v1, v2, v3, order, mul +%if mmsize == 16 + test orderq, 8 + jnz scalarproduct_and_madd_int16_fallback +%else + scalarproduct_and_madd_int16_fallback +%endif shl orderq, 1 movd m7, mulm %if mmsize == 16 @@ -117,6 +123,8 @@ align 16 ; int order, int mul) INIT_XMM ssse3 cglobal scalarproduct_and_madd_int16, 4,5,10, v1, v2, v3, order, mul + test orderq, 8 + jnz scalarproduct_and_madd_int16_fallback shl orderq, 1 movd m7, mulm pshuflw m7, m7, 0