diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2013-10-06 11:24:54 +0200 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2013-10-06 11:25:22 +0200 |
commit | d0b27036763fca5d1bc0286dc52237fdab4050ee (patch) | |
tree | 60085bf3f2f74ce7974a92d151062633240bc86b | |
parent | 90cecd3c9b6bf4a18f9b3f19fa5e3e2f7c1e24d9 (diff) | |
parent | 0b8b2ae5e93d616c2ece59f7175f483154cff918 (diff) | |
download | ffmpeg-d0b27036763fca5d1bc0286dc52237fdab4050ee.tar.gz |
Merge commit '0b8b2ae5e93d616c2ece59f7175f483154cff918'
* commit '0b8b2ae5e93d616c2ece59f7175f483154cff918':
x86: xviddct: Employ more specific ifdefs
Merged-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r-- | libavcodec/dct-test.c | 8 | ||||
-rw-r--r-- | libavcodec/x86/idct_mmx_xvid.c | 32 | ||||
-rw-r--r-- | libavcodec/x86/idct_sse2_xvid.c | 4 |
3 files changed, 28 insertions, 16 deletions
diff --git a/libavcodec/dct-test.c b/libavcodec/dct-test.c index 364733693b..4809124254 100644 --- a/libavcodec/dct-test.c +++ b/libavcodec/dct-test.c @@ -84,7 +84,11 @@ static const struct algo fdct_tab[] = { #if HAVE_MMX_INLINE { "MMX", ff_fdct_mmx, NO_PERM, AV_CPU_FLAG_MMX }, +#endif +#if HAVE_MMXEXT_INLINE { "MMXEXT", ff_fdct_mmxext, NO_PERM, AV_CPU_FLAG_MMXEXT }, +#endif +#if HAVE_SSE2_INLINE { "SSE2", ff_fdct_sse2, NO_PERM, AV_CPU_FLAG_SSE2 }, #endif @@ -125,7 +129,11 @@ static const struct algo idct_tab[] = { #if HAVE_MMX_INLINE { "SIMPLE-MMX", ff_simple_idct_mmx, MMX_SIMPLE_PERM, AV_CPU_FLAG_MMX }, { "XVID-MMX", ff_idct_xvid_mmx, NO_PERM, AV_CPU_FLAG_MMX, 1 }, +#endif +#if HAVE_MMXEXT_INLINE { "XVID-MMXEXT", ff_idct_xvid_mmxext, NO_PERM, AV_CPU_FLAG_MMXEXT, 1 }, +#endif +#if HAVE_SSE2_INLINE { "XVID-SSE2", ff_idct_xvid_sse2, SSE2_PERM, AV_CPU_FLAG_SSE2, 1 }, #if ARCH_X86_64 && HAVE_YASM { "PR-SSE2", ff_prores_idct_put_10_sse2_wrap, TRANSPOSE_PERM, AV_CPU_FLAG_SSE2, 1 }, diff --git a/libavcodec/x86/idct_mmx_xvid.c b/libavcodec/x86/idct_mmx_xvid.c index f66519b642..4cd6de101c 100644 --- a/libavcodec/x86/idct_mmx_xvid.c +++ b/libavcodec/x86/idct_mmx_xvid.c @@ -47,7 +47,7 @@ #include "dsputil_x86.h" #include "idct_xvid.h" -#if HAVE_INLINE_ASM +#if HAVE_MMX_INLINE //============================================================================= // Macros and other preprocessor constants @@ -507,6 +507,22 @@ __asm__ volatile( :: "r"(block), "r"(rounder_0), "r"(tab_i_04_mmx), "r"(tg_1_16)); } +void ff_idct_xvid_mmx_put(uint8_t *dest, int line_size, int16_t *block) +{ + ff_idct_xvid_mmx(block); + ff_put_pixels_clamped_mmx(block, dest, line_size); +} + +void ff_idct_xvid_mmx_add(uint8_t *dest, int line_size, int16_t *block) +{ + ff_idct_xvid_mmx(block); + ff_add_pixels_clamped_mmx(block, dest, line_size); +} + +#endif /* HAVE_MMX_INLINE */ + +#if HAVE_MMXEXT_INLINE + //----------------------------------------------------------------------------- // void idct_xmm(uint16_t block[64]); //----------------------------------------------------------------------------- @@ -531,18 +547,6 @@ __asm__ volatile( :: "r"(block), "r"(rounder_0), "r"(tab_i_04_xmm), "r"(tg_1_16)); } -void ff_idct_xvid_mmx_put(uint8_t *dest, int line_size, int16_t *block) -{ - ff_idct_xvid_mmx(block); - ff_put_pixels_clamped_mmx(block, dest, line_size); -} - -void ff_idct_xvid_mmx_add(uint8_t *dest, int line_size, int16_t *block) -{ - ff_idct_xvid_mmx(block); - ff_add_pixels_clamped_mmx(block, dest, line_size); -} - void ff_idct_xvid_mmxext_put(uint8_t *dest, int line_size, int16_t *block) { ff_idct_xvid_mmxext(block); @@ -555,4 +559,4 @@ void ff_idct_xvid_mmxext_add(uint8_t *dest, int line_size, int16_t *block) ff_add_pixels_clamped_mmx(block, dest, line_size); } -#endif /* HAVE_INLINE_ASM */ +#endif /* HAVE_MMXEXT_INLINE */ diff --git a/libavcodec/x86/idct_sse2_xvid.c b/libavcodec/x86/idct_sse2_xvid.c index ee2a08d73a..af4790ca92 100644 --- a/libavcodec/x86/idct_sse2_xvid.c +++ b/libavcodec/x86/idct_sse2_xvid.c @@ -43,7 +43,7 @@ #include "idct_xvid.h" #include "dsputil_x86.h" -#if HAVE_INLINE_ASM +#if HAVE_SSE2_INLINE /** * @file @@ -404,4 +404,4 @@ void ff_idct_xvid_sse2_add(uint8_t *dest, int line_size, short *block) ff_add_pixels_clamped_mmx(block, dest, line_size); } -#endif /* HAVE_INLINE_ASM */ +#endif /* HAVE_SSE2_INLINE */ |