Commit 6955e884 authored by Martin Vignali's avatar Martin Vignali

avcodec/huffyuvdsp : reorganize add_int16 asm

parent 7f9b67bc
...@@ -26,21 +26,32 @@ SECTION .text ...@@ -26,21 +26,32 @@ SECTION .text
%include "libavcodec/x86/huffyuvdsp_template.asm" %include "libavcodec/x86/huffyuvdsp_template.asm"
%if ARCH_X86_32 ;------------------------------------------------------------------------------
INIT_MMX mmx ; void (*add_int16)(uint16_t *dst, const uint16_t *src, unsigned mask, int w);
cglobal add_int16, 4,4,5, dst, src, mask, w, tmp ;------------------------------------------------------------------------------
INT16_LOOP a, add
%endif
INIT_XMM sse2 %macro ADD_INT16 0
cglobal add_int16, 4,4,5, dst, src, mask, w, tmp cglobal add_int16, 4,4,5, dst, src, mask, w, tmp
%if mmsize > 8
test srcq, mmsize-1 test srcq, mmsize-1
jnz .unaligned jnz .unaligned
test dstq, mmsize-1 test dstq, mmsize-1
jnz .unaligned jnz .unaligned
%endif
INT16_LOOP a, add INT16_LOOP a, add
%if mmsize > 8
.unaligned: .unaligned:
INT16_LOOP u, add INT16_LOOP u, add
%endif
%endmacro
%if ARCH_X86_32
INIT_MMX mmx
ADD_INT16
%endif
INIT_XMM sse2
ADD_INT16
; void add_hfyu_left_pred_bgr32(uint8_t *dst, const uint8_t *src, ; void add_hfyu_left_pred_bgr32(uint8_t *dst, const uint8_t *src,
; intptr_t w, uint8_t *left) ; intptr_t w, uint8_t *left)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment