mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-03-23 04:24:35 +02:00
x86: ABS1: port to cpuflags
This commit is contained in:
parent
de16f08e48
commit
5b4dfbffc2
@ -257,11 +257,9 @@ hadamard8_16_wrapper 0, 14
|
|||||||
%endmacro
|
%endmacro
|
||||||
|
|
||||||
INIT_MMX mmx
|
INIT_MMX mmx
|
||||||
%define ABS1 ABS1_MMX
|
|
||||||
HADAMARD8_DIFF
|
HADAMARD8_DIFF
|
||||||
|
|
||||||
INIT_MMX mmxext
|
INIT_MMX mmxext
|
||||||
%define ABS1 ABS1_MMXEXT
|
|
||||||
HADAMARD8_DIFF
|
HADAMARD8_DIFF
|
||||||
|
|
||||||
INIT_XMM sse2
|
INIT_XMM sse2
|
||||||
|
@ -172,11 +172,19 @@
|
|||||||
psignw %1, %2
|
psignw %1, %2
|
||||||
%endmacro
|
%endmacro
|
||||||
|
|
||||||
%macro ABS1_MMX 2 ; a, tmp
|
%macro ABS1 2
|
||||||
|
%if cpuflag(ssse3)
|
||||||
|
pabsw %1, %1
|
||||||
|
%elif cpuflag(mmxext) ; a, tmp
|
||||||
|
pxor %2, %2
|
||||||
|
psubw %2, %1
|
||||||
|
pmaxsw %1, %2
|
||||||
|
%else ; a, tmp
|
||||||
pxor %2, %2
|
pxor %2, %2
|
||||||
pcmpgtw %2, %1
|
pcmpgtw %2, %1
|
||||||
pxor %1, %2
|
pxor %1, %2
|
||||||
psubw %1, %2
|
psubw %1, %2
|
||||||
|
%endif
|
||||||
%endmacro
|
%endmacro
|
||||||
|
|
||||||
%macro ABS2_MMX 4 ; a, b, tmp0, tmp1
|
%macro ABS2_MMX 4 ; a, b, tmp0, tmp1
|
||||||
@ -190,12 +198,6 @@
|
|||||||
psubw %2, %4
|
psubw %2, %4
|
||||||
%endmacro
|
%endmacro
|
||||||
|
|
||||||
%macro ABS1_MMXEXT 2 ; a, tmp
|
|
||||||
pxor %2, %2
|
|
||||||
psubw %2, %1
|
|
||||||
pmaxsw %1, %2
|
|
||||||
%endmacro
|
|
||||||
|
|
||||||
%macro ABS2_MMXEXT 4 ; a, b, tmp0, tmp1
|
%macro ABS2_MMXEXT 4 ; a, b, tmp0, tmp1
|
||||||
pxor %3, %3
|
pxor %3, %3
|
||||||
pxor %4, %4
|
pxor %4, %4
|
||||||
@ -205,10 +207,6 @@
|
|||||||
pmaxsw %2, %4
|
pmaxsw %2, %4
|
||||||
%endmacro
|
%endmacro
|
||||||
|
|
||||||
%macro ABS1_SSSE3 2
|
|
||||||
pabsw %1, %1
|
|
||||||
%endmacro
|
|
||||||
|
|
||||||
%macro ABS2_SSSE3 4
|
%macro ABS2_SSSE3 4
|
||||||
pabsw %1, %1
|
pabsw %1, %1
|
||||||
pabsw %2, %2
|
pabsw %2, %2
|
||||||
@ -254,7 +252,6 @@
|
|||||||
ABS2 %3, %4, %5, %6
|
ABS2 %3, %4, %5, %6
|
||||||
%endmacro
|
%endmacro
|
||||||
|
|
||||||
%define ABS1 ABS1_MMX
|
|
||||||
%define ABS2 ABS2_MMX
|
%define ABS2 ABS2_MMX
|
||||||
%define ABSB ABSB_MMX
|
%define ABSB ABSB_MMX
|
||||||
%define ABSB2 ABSB2_MMX
|
%define ABSB2 ABSB2_MMX
|
||||||
|
Loading…
x
Reference in New Issue
Block a user