diff options
Diffstat (limited to 'ffmpeg/libswscale/x86/yuv2rgb.c')
| -rw-r--r-- | ffmpeg/libswscale/x86/yuv2rgb.c | 37 |
1 files changed, 21 insertions, 16 deletions
diff --git a/ffmpeg/libswscale/x86/yuv2rgb.c b/ffmpeg/libswscale/x86/yuv2rgb.c index 3938e6b..e4315ef 100644 --- a/ffmpeg/libswscale/x86/yuv2rgb.c +++ b/ffmpeg/libswscale/x86/yuv2rgb.c @@ -27,7 +27,6 @@ #include <stdio.h> #include <stdlib.h> #include <inttypes.h> -#include <assert.h> #include "config.h" #include "libswscale/rgb2rgb.h" @@ -54,7 +53,7 @@ DECLARE_ASM_CONST(8, uint64_t, pb_07) = 0x0707070707070707ULL; #undef RENAME #undef COMPILE_TEMPLATE_MMXEXT #define COMPILE_TEMPLATE_MMXEXT 0 -#define RENAME(a) a ## _MMX +#define RENAME(a) a ## _mmx #include "yuv2rgb_template.c" #endif /* HAVE_MMX_INLINE */ @@ -63,24 +62,24 @@ DECLARE_ASM_CONST(8, uint64_t, pb_07) = 0x0707070707070707ULL; #undef RENAME #undef COMPILE_TEMPLATE_MMXEXT #define COMPILE_TEMPLATE_MMXEXT 1 -#define RENAME(a) a ## _MMXEXT +#define RENAME(a) a ## _mmxext #include "yuv2rgb_template.c" #endif /* HAVE_MMXEXT_INLINE */ #endif /* HAVE_INLINE_ASM */ -av_cold SwsFunc ff_yuv2rgb_init_mmx(SwsContext *c) +av_cold SwsFunc ff_yuv2rgb_init_x86(SwsContext *c) { -#if HAVE_INLINE_ASM +#if HAVE_MMX_INLINE int cpu_flags = av_get_cpu_flags(); #if HAVE_MMXEXT_INLINE if (cpu_flags & AV_CPU_FLAG_MMXEXT) { switch (c->dstFormat) { case AV_PIX_FMT_RGB24: - return yuv420_rgb24_MMXEXT; + return yuv420_rgb24_mmxext; case AV_PIX_FMT_BGR24: - return yuv420_bgr24_MMXEXT; + return yuv420_bgr24_mmxext; } } #endif @@ -90,24 +89,30 @@ av_cold SwsFunc ff_yuv2rgb_init_mmx(SwsContext *c) case AV_PIX_FMT_RGB32: if (c->srcFormat == AV_PIX_FMT_YUVA420P) { #if HAVE_7REGS && CONFIG_SWSCALE_ALPHA - return yuva420_rgb32_MMX; + return yuva420_rgb32_mmx; #endif break; - } else return yuv420_rgb32_MMX; + } else + return yuv420_rgb32_mmx; case AV_PIX_FMT_BGR32: if (c->srcFormat == AV_PIX_FMT_YUVA420P) { #if HAVE_7REGS && CONFIG_SWSCALE_ALPHA - return yuva420_bgr32_MMX; + return yuva420_bgr32_mmx; #endif break; - } else return yuv420_bgr32_MMX; - case AV_PIX_FMT_RGB24: return yuv420_rgb24_MMX; - case AV_PIX_FMT_BGR24: return yuv420_bgr24_MMX; - case AV_PIX_FMT_RGB565: return yuv420_rgb16_MMX; - case AV_PIX_FMT_RGB555: return yuv420_rgb15_MMX; + } else + return yuv420_bgr32_mmx; + case AV_PIX_FMT_RGB24: + return yuv420_rgb24_mmx; + case AV_PIX_FMT_BGR24: + return yuv420_bgr24_mmx; + case AV_PIX_FMT_RGB565: + return yuv420_rgb16_mmx; + case AV_PIX_FMT_RGB555: + return yuv420_rgb15_mmx; } } -#endif /* HAVE_INLINE_ASM */ +#endif /* HAVE_MMX_INLINE */ return NULL; } |
