mirror of
https://git.ffmpeg.org/ffmpeg.git
synced 2024-09-21 22:06:40 +00:00
x86: ABS2: port to cpuflags
This commit is contained in:
parent
171f1446f0
commit
51969a652c
@ -151,15 +151,12 @@ cglobal ac3_max_msb_abs_int16, 2,2,5, src, len
|
|||||||
%endmacro
|
%endmacro
|
||||||
|
|
||||||
INIT_MMX mmx
|
INIT_MMX mmx
|
||||||
%define ABS2 ABS2_MMX
|
|
||||||
AC3_MAX_MSB_ABS_INT16 or_abs
|
AC3_MAX_MSB_ABS_INT16 or_abs
|
||||||
INIT_MMX mmxext
|
INIT_MMX mmxext
|
||||||
%define ABS2 ABS2_MMXEXT
|
|
||||||
AC3_MAX_MSB_ABS_INT16 min_max
|
AC3_MAX_MSB_ABS_INT16 min_max
|
||||||
INIT_XMM sse2
|
INIT_XMM sse2
|
||||||
AC3_MAX_MSB_ABS_INT16 min_max
|
AC3_MAX_MSB_ABS_INT16 min_max
|
||||||
INIT_XMM ssse3
|
INIT_XMM ssse3
|
||||||
%define ABS2 ABS2_SSSE3
|
|
||||||
AC3_MAX_MSB_ABS_INT16 or_abs
|
AC3_MAX_MSB_ABS_INT16 or_abs
|
||||||
|
|
||||||
;-----------------------------------------------------------------------------
|
;-----------------------------------------------------------------------------
|
||||||
|
@ -263,7 +263,6 @@ INIT_MMX mmxext
|
|||||||
HADAMARD8_DIFF
|
HADAMARD8_DIFF
|
||||||
|
|
||||||
INIT_XMM sse2
|
INIT_XMM sse2
|
||||||
%define ABS2 ABS2_MMXEXT
|
|
||||||
%if ARCH_X86_64
|
%if ARCH_X86_64
|
||||||
%define ABS_SUM_8x8 ABS_SUM_8x8_64
|
%define ABS_SUM_8x8 ABS_SUM_8x8_64
|
||||||
%else
|
%else
|
||||||
@ -272,7 +271,6 @@ INIT_XMM sse2
|
|||||||
HADAMARD8_DIFF 10
|
HADAMARD8_DIFF 10
|
||||||
|
|
||||||
INIT_XMM ssse3
|
INIT_XMM ssse3
|
||||||
%define ABS2 ABS2_SSSE3
|
|
||||||
%define ABS_SUM_8x8 ABS_SUM_8x8_64
|
%define ABS_SUM_8x8 ABS_SUM_8x8_64
|
||||||
HADAMARD8_DIFF 9
|
HADAMARD8_DIFF 9
|
||||||
|
|
||||||
|
@ -187,7 +187,18 @@
|
|||||||
%endif
|
%endif
|
||||||
%endmacro
|
%endmacro
|
||||||
|
|
||||||
%macro ABS2_MMX 4 ; a, b, tmp0, tmp1
|
%macro ABS2 4
|
||||||
|
%if cpuflag(ssse3)
|
||||||
|
pabsw %1, %1
|
||||||
|
pabsw %2, %2
|
||||||
|
%elif cpuflag(mmxext) ; a, b, tmp0, tmp1
|
||||||
|
pxor %3, %3
|
||||||
|
pxor %4, %4
|
||||||
|
psubw %3, %1
|
||||||
|
psubw %4, %2
|
||||||
|
pmaxsw %1, %3
|
||||||
|
pmaxsw %2, %4
|
||||||
|
%else ; a, b, tmp0, tmp1
|
||||||
pxor %3, %3
|
pxor %3, %3
|
||||||
pxor %4, %4
|
pxor %4, %4
|
||||||
pcmpgtw %3, %1
|
pcmpgtw %3, %1
|
||||||
@ -196,20 +207,7 @@
|
|||||||
pxor %2, %4
|
pxor %2, %4
|
||||||
psubw %1, %3
|
psubw %1, %3
|
||||||
psubw %2, %4
|
psubw %2, %4
|
||||||
%endmacro
|
%endif
|
||||||
|
|
||||||
%macro ABS2_MMXEXT 4 ; a, b, tmp0, tmp1
|
|
||||||
pxor %3, %3
|
|
||||||
pxor %4, %4
|
|
||||||
psubw %3, %1
|
|
||||||
psubw %4, %2
|
|
||||||
pmaxsw %1, %3
|
|
||||||
pmaxsw %2, %4
|
|
||||||
%endmacro
|
|
||||||
|
|
||||||
%macro ABS2_SSSE3 4
|
|
||||||
pabsw %1, %1
|
|
||||||
pabsw %2, %2
|
|
||||||
%endmacro
|
%endmacro
|
||||||
|
|
||||||
%macro ABSB_MMX 2
|
%macro ABSB_MMX 2
|
||||||
@ -252,7 +250,6 @@
|
|||||||
ABS2 %3, %4, %5, %6
|
ABS2 %3, %4, %5, %6
|
||||||
%endmacro
|
%endmacro
|
||||||
|
|
||||||
%define ABS2 ABS2_MMX
|
|
||||||
%define ABSB ABSB_MMX
|
%define ABSB ABSB_MMX
|
||||||
%define ABSB2 ABSB2_MMX
|
%define ABSB2 ABSB2_MMX
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user