mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-03-28 12:32:17 +02:00
x86: Add PAVGB macro to abstract pavgb/pavgusb instruction via cpuflags
This commit is contained in:
parent
23098bbd50
commit
dae1d507af
@ -427,11 +427,11 @@ cglobal %1_%2_chroma_mc2, 6, 7, 0
|
|||||||
%macro NOTHING 2-3
|
%macro NOTHING 2-3
|
||||||
%endmacro
|
%endmacro
|
||||||
%macro DIRECT_AVG 2
|
%macro DIRECT_AVG 2
|
||||||
PAVG %1, %2
|
PAVGB %1, %2
|
||||||
%endmacro
|
%endmacro
|
||||||
%macro COPY_AVG 3
|
%macro COPY_AVG 3
|
||||||
movd %2, %3
|
movd %2, %3
|
||||||
PAVG %1, %2
|
PAVGB %1, %2
|
||||||
%endmacro
|
%endmacro
|
||||||
|
|
||||||
INIT_MMX mmx
|
INIT_MMX mmx
|
||||||
@ -448,7 +448,6 @@ chroma_mc2_mmx_func put, h264
|
|||||||
|
|
||||||
%define CHROMAMC_AVG DIRECT_AVG
|
%define CHROMAMC_AVG DIRECT_AVG
|
||||||
%define CHROMAMC_AVG4 COPY_AVG
|
%define CHROMAMC_AVG4 COPY_AVG
|
||||||
%define PAVG pavgb
|
|
||||||
chroma_mc8_mmx_func avg, h264, _rnd
|
chroma_mc8_mmx_func avg, h264, _rnd
|
||||||
chroma_mc8_mmx_func avg, vc1, _nornd
|
chroma_mc8_mmx_func avg, vc1, _nornd
|
||||||
chroma_mc8_mmx_func avg, rv40
|
chroma_mc8_mmx_func avg, rv40
|
||||||
@ -456,7 +455,6 @@ chroma_mc4_mmx_func avg, h264
|
|||||||
chroma_mc4_mmx_func avg, rv40
|
chroma_mc4_mmx_func avg, rv40
|
||||||
chroma_mc2_mmx_func avg, h264
|
chroma_mc2_mmx_func avg, h264
|
||||||
|
|
||||||
%define PAVG pavgusb
|
|
||||||
INIT_MMX 3dnow
|
INIT_MMX 3dnow
|
||||||
chroma_mc8_mmx_func avg, h264, _rnd
|
chroma_mc8_mmx_func avg, h264, _rnd
|
||||||
chroma_mc8_mmx_func avg, vc1, _nornd
|
chroma_mc8_mmx_func avg, vc1, _nornd
|
||||||
@ -673,7 +671,6 @@ INIT_MMX ssse3
|
|||||||
chroma_mc4_ssse3_func put, h264
|
chroma_mc4_ssse3_func put, h264
|
||||||
|
|
||||||
%define CHROMAMC_AVG DIRECT_AVG
|
%define CHROMAMC_AVG DIRECT_AVG
|
||||||
%define PAVG pavgb
|
|
||||||
INIT_XMM ssse3
|
INIT_XMM ssse3
|
||||||
chroma_mc8_ssse3_func avg, h264, _rnd
|
chroma_mc8_ssse3_func avg, h264, _rnd
|
||||||
chroma_mc8_ssse3_func avg, vc1, _nornd
|
chroma_mc8_ssse3_func avg, vc1, _nornd
|
||||||
|
@ -301,6 +301,14 @@
|
|||||||
%endif
|
%endif
|
||||||
%endmacro
|
%endmacro
|
||||||
|
|
||||||
|
%macro PAVGB 2
|
||||||
|
%if cpuflag(mmxext)
|
||||||
|
pavgb %1, %2
|
||||||
|
%elif cpuflag(3dnow)
|
||||||
|
pavgusb %1, %2
|
||||||
|
%endif
|
||||||
|
%endmacro
|
||||||
|
|
||||||
%macro PSHUFLW 1+
|
%macro PSHUFLW 1+
|
||||||
%if mmsize == 8
|
%if mmsize == 8
|
||||||
pshufw %1
|
pshufw %1
|
||||||
|
Loading…
x
Reference in New Issue
Block a user