summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRonald S. Bultje <rsbultje@gmail.com>2011-05-24 13:04:46 -0400
committerRonald S. Bultje <rsbultje@gmail.com>2011-05-24 14:48:49 -0400
commitc4fd283a467031fdbde5bca0963b20d5911eca91 (patch)
tree0f9be8a809aa76b423a046e13b5a95e646090695
parente9735572113ab903b92cc0a7931eb894e7177f6e (diff)
swscale: use emms_c().
-rw-r--r--libswscale/utils.c6
-rw-r--r--libswscale/x86/swscale_template.c2
2 files changed, 3 insertions, 5 deletions
diff --git a/libswscale/utils.c b/libswscale/utils.c
index b49ec89be8..29fc975046 100644
--- a/libswscale/utils.c
+++ b/libswscale/utils.c
@@ -193,8 +193,7 @@ static int initFilter(int16_t **outFilter, int16_t **filterPos, int *outFilterSi
const int64_t fone= 1LL<<54;
int ret= -1;
- if (HAVE_MMX && cpu_flags & AV_CPU_FLAG_MMX)
- __asm__ volatile("emms\n\t"::: "memory"); //FIXME this should not be required but it IS (even for non-MMX versions)
+ emms_c(); //FIXME this should not be required but it IS (even for non-MMX versions)
// NOTE: the +1 is for the MMX scaler which reads over the end
FF_ALLOC_OR_GOTO(NULL, *filterPos, (dstW+1)*sizeof(int16_t), fail);
@@ -757,8 +756,7 @@ int sws_init_context(SwsContext *c, SwsFilter *srcFilter, SwsFilter *dstFilter)
cpu_flags = av_get_cpu_flags();
flags = c->flags;
- if (HAVE_MMX && cpu_flags & AV_CPU_FLAG_MMX)
- __asm__ volatile("emms\n\t"::: "memory");
+ emms_c();
if (!rgb15to16) sws_rgb2rgb_init();
unscaled = (srcW == dstW && srcH == dstH);
diff --git a/libswscale/x86/swscale_template.c b/libswscale/x86/swscale_template.c
index e03fbd44e2..576e22c082 100644
--- a/libswscale/x86/swscale_template.c
+++ b/libswscale/x86/swscale_template.c
@@ -2494,7 +2494,7 @@ static int RENAME(swScale)(SwsContext *c, const uint8_t* src[], int srcStride[],
fillPlane(dst[3], dstStride[3], dstW, dstY-lastDstY, lastDstY, 255);
if (COMPILE_TEMPLATE_MMX2) __asm__ volatile("sfence":::"memory");
- __asm__ volatile("emms" :::"memory");
+ emms_c();
/* store changed local vars back in the context */
c->dstY= dstY;