Måns Rullgård <[email protected]> writes: > "Ronald S. Bultje" <[email protected]> writes: > >> From: "Ronald S. Bultje" <[email protected]> >> >> --- >> libswscale/swscale.c | 4 ++-- >> libswscale/utils.c | 10 +++++----- >> 2 files changed, 7 insertions(+), 7 deletions(-) >> >> @@ -661,7 +661,7 @@ static int swScale(SwsContext *c, const uint8_t *src[], >> if (isPlanar(dstFormat) && isALPHA(dstFormat) && !alpPixBuf) >> fillPlane(dst[3], dstStride[3], dstW, dstY - lastDstY, lastDstY, >> 255); >> >> -#if HAVE_MMX2 >> +#if HAVE_MMX2 && HAVE_INLINE_ASM >> if (av_get_cpu_flags() & AV_CPU_FLAG_MMX2) >> __asm__ volatile ("sfence" ::: "memory"); >> #endif > > Is there any way this bit of inline asm could be moved out of generic code?
And why is it there at all? I don't see why pure data-processing code should ever need a memory barrier. -- Måns Rullgård [email protected] _______________________________________________ libav-devel mailing list [email protected] https://lists.libav.org/mailman/listinfo/libav-devel
