%endmacro
INIT_MMX mmxext
-%define PALIGNR PALIGNR_MMX
PRED8x8L_TOP_DC
INIT_MMX ssse3
-%define PALIGNR PALIGNR_SSSE3
PRED8x8L_TOP_DC
;-----------------------------------------------------------------------------
%endmacro
INIT_MMX mmxext
-%define PALIGNR PALIGNR_MMX
PRED8x8L_DC
INIT_MMX ssse3
-%define PALIGNR PALIGNR_SSSE3
PRED8x8L_DC
;-----------------------------------------------------------------------------
%endmacro
INIT_MMX mmxext
-%define PALIGNR PALIGNR_MMX
PRED8x8L_HORIZONTAL
INIT_MMX ssse3
-%define PALIGNR PALIGNR_SSSE3
PRED8x8L_HORIZONTAL
;-----------------------------------------------------------------------------
%endmacro
INIT_MMX mmxext
-%define PALIGNR PALIGNR_MMX
PRED8x8L_VERTICAL
INIT_MMX ssse3
-%define PALIGNR PALIGNR_SSSE3
PRED8x8L_VERTICAL
;-----------------------------------------------------------------------------
;-----------------------------------------------------------------------------
INIT_MMX mmxext
-%define PALIGNR PALIGNR_MMX
cglobal pred8x8l_down_left_8, 4,5
sub r0, r3
movq mm0, [r0-8]
%endmacro
INIT_MMX sse2
-%define PALIGNR PALIGNR_MMX
PRED8x8L_DOWN_LEFT
INIT_MMX ssse3
-%define PALIGNR PALIGNR_SSSE3
PRED8x8L_DOWN_LEFT
;-----------------------------------------------------------------------------
;-----------------------------------------------------------------------------
INIT_MMX mmxext
-%define PALIGNR PALIGNR_MMX
cglobal pred8x8l_down_right_8, 4,5
sub r0, r3
lea r4, [r0+r3*2]
%endmacro
INIT_MMX sse2
-%define PALIGNR PALIGNR_MMX
PRED8x8L_DOWN_RIGHT
INIT_MMX ssse3
-%define PALIGNR PALIGNR_SSSE3
PRED8x8L_DOWN_RIGHT
;-----------------------------------------------------------------------------
;-----------------------------------------------------------------------------
INIT_MMX mmxext
-%define PALIGNR PALIGNR_MMX
cglobal pred8x8l_vertical_right_8, 4,5
sub r0, r3
lea r4, [r0+r3*2]
%endmacro
INIT_MMX sse2
-%define PALIGNR PALIGNR_MMX
PRED8x8L_VERTICAL_RIGHT
INIT_MMX ssse3
-%define PALIGNR PALIGNR_SSSE3
PRED8x8L_VERTICAL_RIGHT
;-----------------------------------------------------------------------------
%endmacro
INIT_MMX sse2
-%define PALIGNR PALIGNR_MMX
PRED8x8L_VERTICAL_LEFT
INIT_MMX ssse3
-%define PALIGNR PALIGNR_SSSE3
PRED8x8L_VERTICAL_LEFT
;-----------------------------------------------------------------------------
%endmacro
INIT_MMX mmxext
-%define PALIGNR PALIGNR_MMX
PRED8x8L_HORIZONTAL_UP
INIT_MMX ssse3
-%define PALIGNR PALIGNR_SSSE3
PRED8x8L_HORIZONTAL_UP
;-----------------------------------------------------------------------------
;-----------------------------------------------------------------------------
INIT_MMX mmxext
-%define PALIGNR PALIGNR_MMX
cglobal pred8x8l_horizontal_down_8, 4,5
sub r0, r3
lea r4, [r0+r3*2]
%endmacro
INIT_MMX sse2
-%define PALIGNR PALIGNR_MMX
PRED8x8L_HORIZONTAL_DOWN
INIT_MMX ssse3
-%define PALIGNR PALIGNR_SSSE3
PRED8x8L_HORIZONTAL_DOWN
;-----------------------------------------------------------------------------
;-----------------------------------------------------------------------------
INIT_MMX mmxext
-%define PALIGNR PALIGNR_MMX
cglobal pred4x4_horizontal_down_8, 3,3
sub r0, r2
lea r1, [r0+r2*2]
;-----------------------------------------------------------------------------
INIT_MMX mmxext
-%define PALIGNR PALIGNR_MMX
cglobal pred4x4_vertical_right_8, 3,3
sub r0, r2
lea r1, [r0+r2*2]
;-----------------------------------------------------------------------------
INIT_MMX mmxext
-%define PALIGNR PALIGNR_MMX
cglobal pred4x4_down_right_8, 3,3
sub r0, r2
lea r1, [r0+r2*2]
%endmacro
INIT_XMM sse2
-%define PALIGNR PALIGNR_MMX
PRED4x4_DR
INIT_XMM ssse3
-%define PALIGNR PALIGNR_SSSE3
PRED4x4_DR
%if HAVE_AVX_EXTERNAL
INIT_XMM avx
%endmacro
INIT_XMM sse2
-%define PALIGNR PALIGNR_MMX
PRED4x4_VR
INIT_XMM ssse3
-%define PALIGNR PALIGNR_SSSE3
PRED4x4_VR
%if HAVE_AVX_EXTERNAL
INIT_XMM avx
%endmacro
INIT_XMM sse2
-%define PALIGNR PALIGNR_MMX
PRED4x4_HD
INIT_XMM ssse3
-%define PALIGNR PALIGNR_SSSE3
PRED4x4_HD
%if HAVE_AVX_EXTERNAL
INIT_XMM avx
%endmacro
INIT_XMM sse2
-%define PALIGNR PALIGNR_MMX
PRED8x8L_HORIZONTAL
INIT_XMM ssse3
-%define PALIGNR PALIGNR_SSSE3
PRED8x8L_HORIZONTAL
%if HAVE_AVX_EXTERNAL
INIT_XMM avx
%endmacro
INIT_XMM sse2
-%define PALIGNR PALIGNR_MMX
PRED8x8L_DOWN_LEFT
INIT_XMM ssse3
-%define PALIGNR PALIGNR_SSSE3
PRED8x8L_DOWN_LEFT
%if HAVE_AVX_EXTERNAL
INIT_XMM avx
%endmacro
INIT_XMM sse2
-%define PALIGNR PALIGNR_MMX
PRED8x8L_DOWN_RIGHT
INIT_XMM ssse3
-%define PALIGNR PALIGNR_SSSE3
PRED8x8L_DOWN_RIGHT
%if HAVE_AVX_EXTERNAL
INIT_XMM avx
%endmacro
INIT_XMM sse2
-%define PALIGNR PALIGNR_MMX
PRED8x8L_VERTICAL_RIGHT
INIT_XMM ssse3
-%define PALIGNR PALIGNR_SSSE3
PRED8x8L_VERTICAL_RIGHT
%if HAVE_AVX_EXTERNAL
INIT_XMM avx
%endmacro
INIT_XMM sse2
-%define PALIGNR PALIGNR_MMX
PRED8x8L_HORIZONTAL_UP
INIT_XMM ssse3
-%define PALIGNR PALIGNR_SSSE3
PRED8x8L_HORIZONTAL_UP
%if HAVE_AVX_EXTERNAL
INIT_XMM avx