Commit d06dfaa5 authored by Diego Biurrun's avatar Diego Biurrun

x86: huffyuv: Use EXTERNAL_SSSE3_FAST convenience macro where appropriate

parent 8e9cd81d
...@@ -146,8 +146,8 @@ cglobal add_hfyu_left_pred, 3,3,7, dst, src, w, left ...@@ -146,8 +146,8 @@ cglobal add_hfyu_left_pred, 3,3,7, dst, src, w, left
psllq m0, 56 psllq m0, 56
ADD_HFYU_LEFT_LOOP 1, 1 ADD_HFYU_LEFT_LOOP 1, 1
INIT_XMM sse4 INIT_XMM ssse3
cglobal add_hfyu_left_pred, 3,3,7, dst, src, w, left cglobal add_hfyu_left_pred_unaligned, 3,3,7, dst, src, w, left
mova m5, [pb_f] mova m5, [pb_f]
mova m6, [pb_zzzzzzzz77777777] mova m6, [pb_zzzzzzzz77777777]
mova m4, [pb_zzzz3333zzzzbbbb] mova m4, [pb_zzzz3333zzzzbbbb]
......
...@@ -31,8 +31,8 @@ void ff_add_hfyu_median_pred_mmxext(uint8_t *dst, const uint8_t *top, ...@@ -31,8 +31,8 @@ void ff_add_hfyu_median_pred_mmxext(uint8_t *dst, const uint8_t *top,
int ff_add_hfyu_left_pred_ssse3(uint8_t *dst, const uint8_t *src, int ff_add_hfyu_left_pred_ssse3(uint8_t *dst, const uint8_t *src,
int w, int left); int w, int left);
int ff_add_hfyu_left_pred_sse4(uint8_t *dst, const uint8_t *src, int ff_add_hfyu_left_pred_unaligned_ssse3(uint8_t *dst, const uint8_t *src,
int w, int left); int w, int left);
#if HAVE_INLINE_ASM #if HAVE_INLINE_ASM
...@@ -124,7 +124,9 @@ av_cold void ff_huffyuvdsp_init_x86(HuffYUVDSPContext *c) ...@@ -124,7 +124,9 @@ av_cold void ff_huffyuvdsp_init_x86(HuffYUVDSPContext *c)
if (EXTERNAL_SSSE3(cpu_flags)) { if (EXTERNAL_SSSE3(cpu_flags)) {
c->add_hfyu_left_pred = ff_add_hfyu_left_pred_ssse3; c->add_hfyu_left_pred = ff_add_hfyu_left_pred_ssse3;
if (cpu_flags & AV_CPU_FLAG_SSE4) // not really SSE4, just slow on Conroe }
c->add_hfyu_left_pred = ff_add_hfyu_left_pred_sse4;
if (EXTERNAL_SSSE3_FAST(cpu_flags)) {
c->add_hfyu_left_pred = ff_add_hfyu_left_pred_unaligned_ssse3;
} }
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment