[FFmpeg-cvslog] swscale: Provide the right alignment for external mmx asm

Martin Storsjö git at videolan.org
Sun Sep 9 13:30:56 CEST 2012


ffmpeg | branch: master | Martin Storsjö <martin at martin.st> | Sun Sep  9 01:43:53 2012 +0300| [75c37c5ace6271dc9dc996a61b799bcd2fc1b30d] | committer: Martin Storsjö

swscale: Provide the right alignment for external mmx asm

This reverts parts of e0c6cce4472. There is external mmx asm that
requires this alignment.

This fixes crashes when using swscale in builds with external mmx,
without inline assembly.

Signed-off-by: Martin Storsjö <martin at martin.st>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=75c37c5ace6271dc9dc996a61b799bcd2fc1b30d
---

 libswscale/utils.c |    6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/libswscale/utils.c b/libswscale/utils.c
index 34e4744..0002e17 100644
--- a/libswscale/utils.c
+++ b/libswscale/utils.c
@@ -1050,7 +1050,8 @@ av_cold int sws_init_context(SwsContext *c, SwsFilter *srcFilter,
         } else
 #endif /* HAVE_MMXEXT_INLINE */
         {
-            const int filterAlign = INLINE_MMX(cpu_flags)  ? 4 :
+            const int filterAlign =
+                (HAVE_MMX && cpu_flags & AV_CPU_FLAG_MMX) ? 4 :
                 (HAVE_ALTIVEC && cpu_flags & AV_CPU_FLAG_ALTIVEC) ? 8 :
                 1;
 
@@ -1073,7 +1074,8 @@ av_cold int sws_init_context(SwsContext *c, SwsFilter *srcFilter,
 
     /* precalculate vertical scaler filter coefficients */
     {
-        const int filterAlign = INLINE_MMX(cpu_flags)  ? 2 :
+        const int filterAlign =
+            (HAVE_MMX && cpu_flags & AV_CPU_FLAG_MMX) ? 2 :
             (HAVE_ALTIVEC && cpu_flags & AV_CPU_FLAG_ALTIVEC) ? 8 :
             1;
 



More information about the ffmpeg-cvslog mailing list