diff options
-rw-r--r-- | libmpeg2/idct.c | 7 | ||||
-rw-r--r-- | libmpeg2/motion_comp.c | 12 |
2 files changed, 14 insertions, 5 deletions
diff --git a/libmpeg2/idct.c b/libmpeg2/idct.c index 75b07c8915..46ecec8a68 100644 --- a/libmpeg2/idct.c +++ b/libmpeg2/idct.c @@ -239,12 +239,15 @@ static void mpeg2_idct_add_c (const int last, int16_t * block, void mpeg2_idct_init (uint32_t accel) { -#if defined(ARCH_X86) || defined(ARCH_X86_64) +#ifdef HAVE_MMX2 if (accel & MPEG2_ACCEL_X86_MMXEXT) { mpeg2_idct_copy = mpeg2_idct_copy_mmxext; mpeg2_idct_add = mpeg2_idct_add_mmxext; mpeg2_idct_mmx_init (); - } else if (accel & MPEG2_ACCEL_X86_MMX) { + } else +#endif +#ifdef HAVE_MMX + if (accel & MPEG2_ACCEL_X86_MMX) { mpeg2_idct_copy = mpeg2_idct_copy_mmx; mpeg2_idct_add = mpeg2_idct_add_mmx; mpeg2_idct_mmx_init (); diff --git a/libmpeg2/motion_comp.c b/libmpeg2/motion_comp.c index 3cbca6fefe..b6cc4bfcb9 100644 --- a/libmpeg2/motion_comp.c +++ b/libmpeg2/motion_comp.c @@ -37,12 +37,18 @@ mpeg2_mc_t mpeg2_mc; void mpeg2_mc_init (uint32_t accel) { -#if defined(ARCH_X86) || defined(ARCH_X86_64) +#ifdef HAVE_MMX2 if (accel & MPEG2_ACCEL_X86_MMXEXT) mpeg2_mc = mpeg2_mc_mmxext; - else if (accel & MPEG2_ACCEL_X86_3DNOW) + else +#endif +#ifdef HAVE_3DNOW + if (accel & MPEG2_ACCEL_X86_3DNOW) mpeg2_mc = mpeg2_mc_3dnow; - else if (accel & MPEG2_ACCEL_X86_MMX) + else +#endif +#ifdef HAVE_MMX + if (accel & MPEG2_ACCEL_X86_MMX) mpeg2_mc = mpeg2_mc_mmx; else #endif |