Originally committed as revision 12 to svn://svn.ffmpeg.org/ffmpeg/trunk
#include "avcodec.h"
#include "dsputil.h"
-#ifdef HAVE_MMX
-int mm_flags; /* multimedia extension flags */
-#endif
-
void (*get_pixels)(DCTELEM *block, const UINT8 *pixels, int line_size);
void (*put_pixels_clamped)(const DCTELEM *block, UINT8 *pixels, int line_size);
void (*add_pixels_clamped)(const DCTELEM *block, UINT8 *pixels, int line_size);
static inline void emms(void)
{
- asm volatile ("emms;");
+ __asm __volatile ("emms;":::"memory");
+}
+
+#define emms_c() \
+{\
+ if (mm_flags & MM_MMX)\
+ emms();\
}
#define __align8 __attribute__ ((aligned (8)))
#else
+#define emms_c()
+
#define __align8
#endif
dmin = phods_motion_search(s, &mx, &my, range / 2, xmin, ymin, xmax, ymax);
break;
}
-#ifdef HAVE_MMX
- if (mm_flags & MM_MMX)
- emms();
-#endif
+ emms_c();
/* intra / predictive decision */
xx = mb_x * 16;