mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-01-03 05:10:03 +02:00
avcodec/huffyuvdsp : reorganize add_int16 asm
This commit is contained in:
parent
7f9b67bcb6
commit
6955e8842e
@ -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)
|
||||||
|
Loading…
Reference in New Issue
Block a user