mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
rv34: port x86 SIMD to cpuflags.
This commit is contained in:
parent
158744a4cd
commit
76888c64b0
@ -46,7 +46,7 @@ SECTION .text
|
|||||||
%endmacro
|
%endmacro
|
||||||
|
|
||||||
%macro rv34_idct 1
|
%macro rv34_idct 1
|
||||||
cglobal rv34_idct_%1_mmx2, 1, 2, 0
|
cglobal rv34_idct_%1, 1, 2, 0
|
||||||
movsx r1, word [r0]
|
movsx r1, word [r0]
|
||||||
IDCT_DC r1
|
IDCT_DC r1
|
||||||
movd m0, r1
|
movd m0, r1
|
||||||
@ -58,14 +58,15 @@ cglobal rv34_idct_%1_mmx2, 1, 2, 0
|
|||||||
REP_RET
|
REP_RET
|
||||||
%endmacro
|
%endmacro
|
||||||
|
|
||||||
INIT_MMX
|
INIT_MMX mmx2
|
||||||
%define IDCT_DC IDCT_DC_ROUND
|
%define IDCT_DC IDCT_DC_ROUND
|
||||||
rv34_idct dc
|
rv34_idct dc
|
||||||
%define IDCT_DC IDCT_DC_NOROUND
|
%define IDCT_DC IDCT_DC_NOROUND
|
||||||
rv34_idct dc_noround
|
rv34_idct dc_noround
|
||||||
|
|
||||||
; ff_rv34_idct_dc_add_mmx(uint8_t *dst, int stride, int dc);
|
; ff_rv34_idct_dc_add_mmx(uint8_t *dst, int stride, int dc);
|
||||||
cglobal rv34_idct_dc_add_mmx, 3, 3
|
INIT_MMX mmx
|
||||||
|
cglobal rv34_idct_dc_add, 3, 3
|
||||||
; calculate DC
|
; calculate DC
|
||||||
IDCT_DC_ROUND r2
|
IDCT_DC_ROUND r2
|
||||||
pxor m1, m1
|
pxor m1, m1
|
||||||
@ -167,8 +168,8 @@ cglobal rv34_idct_add, 3,3,0, d, s, b
|
|||||||
ret
|
ret
|
||||||
|
|
||||||
; ff_rv34_idct_dc_add_sse4(uint8_t *dst, int stride, int dc);
|
; ff_rv34_idct_dc_add_sse4(uint8_t *dst, int stride, int dc);
|
||||||
INIT_XMM
|
INIT_XMM sse4
|
||||||
cglobal rv34_idct_dc_add_sse4, 3, 3, 6
|
cglobal rv34_idct_dc_add, 3, 3, 6
|
||||||
; load data
|
; load data
|
||||||
IDCT_DC_ROUND r2
|
IDCT_DC_ROUND r2
|
||||||
pxor m1, m1
|
pxor m1, m1
|
||||||
|
Loading…
Reference in New Issue
Block a user