diff --git a/libavcodec/x86/vp8dsp-init.c b/libavcodec/x86/vp8dsp-init.c index f830459534..d77ab4178e 100644 --- a/libavcodec/x86/vp8dsp-init.c +++ b/libavcodec/x86/vp8dsp-init.c @@ -96,6 +96,7 @@ static void ff_put_vp8_epel8_ ## TAPTYPE ## _ ## OPT(uint8_t *dst, \ height, mx, my); \ } +#if HAVE_YASM TAP_W8 (mmxext, h4) TAP_W8 (mmxext, h6) TAP_W16(mmxext, h6) @@ -108,6 +109,7 @@ TAP_W16(sse2, v6) TAP_W16(ssse3, h6) TAP_W16(ssse3, v6) +#endif #define HVTAP(OPT, ALIGN, TAPNUMX, TAPNUMY, SIZE, MAXHEIGHT) \ static void ff_put_vp8_epel ## SIZE ## _h ## TAPNUMX ## v ## TAPNUMY ## _ ## OPT \ @@ -131,21 +133,25 @@ static void ff_put_vp8_epel ## SIZE ## _h ## TAPNUMX ## v ## TAPNUMY ## _ ## OPT HVTAP(mmxext, 8, x, y, 4, 8) \ HVTAP(mmxext, 8, x, y, 8, 16) +#if HAVE_YASM HVTAPMMX(4, 4) HVTAPMMX(4, 6) HVTAPMMX(6, 4) HVTAPMMX(6, 6) HVTAP(mmxext, 8, 6, 6, 16, 16) +#endif #define HVTAPSSE2(x, y, w) \ HVTAP(sse2, 16, x, y, w, 16) \ HVTAP(ssse3, 16, x, y, w, 16) +#if HAVE_YASM HVTAPSSE2(4, 4, 8) HVTAPSSE2(4, 6, 8) HVTAPSSE2(6, 4, 8) HVTAPSSE2(6, 6, 8) HVTAPSSE2(6, 6, 16) +#endif extern void ff_vp8_idct_dc_add_mmx(uint8_t *dst, DCTELEM block[16], int stride); extern void ff_vp8_idct_dc_add_sse4(uint8_t *dst, DCTELEM block[16], int stride); @@ -154,6 +160,7 @@ av_cold void ff_vp8dsp_init_x86(VP8DSPContext* c) { mm_flags = mm_support(); +#if HAVE_YASM if (mm_flags & FF_MM_MMX) { c->vp8_idct_dc_add = ff_vp8_idct_dc_add_mmx; } @@ -213,4 +220,5 @@ av_cold void ff_vp8dsp_init_x86(VP8DSPContext* c) if (mm_flags & FF_MM_SSE4) { c->vp8_idct_dc_add = ff_vp8_idct_dc_add_sse4; } +#endif }