[FFmpeg-cvslog] Fix compilation with yasm-0.6.2

Carl Eugen Hoyos git at videolan.org
Thu Jan 12 16:36:41 CET 2012


ffmpeg | branch: master | Carl Eugen Hoyos <cehoyos at ag.or.at> | Thu Jan 12 16:35:49 2012 +0100| [ef3a19d5950ebe8a07c4e31b65ecf95e03fd85f5] | committer: Carl Eugen Hoyos

Fix compilation with yasm-0.6.2

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

 libavcodec/x86/imdct36_sse.asm |    4 ++++
 libavcodec/x86/proresdsp.asm   |    2 ++
 libavcodec/x86/v210-init.c     |    4 ++--
 libavcodec/x86/v210.asm        |    4 ++++
 libswscale/x86/input.asm       |    2 ++
 libswscale/x86/output.asm      |    4 ++++
 libswscale/x86/swscale_mmx.c   |    2 +-
 7 files changed, 19 insertions(+), 3 deletions(-)

diff --git a/libavcodec/x86/imdct36_sse.asm b/libavcodec/x86/imdct36_sse.asm
index 2908459..ffca353 100644
--- a/libavcodec/x86/imdct36_sse.asm
+++ b/libavcodec/x86/imdct36_sse.asm
@@ -371,8 +371,10 @@ DEFINE_IMDCT
 INIT_XMM ssse3
 DEFINE_IMDCT
 
+%ifdef HAVE_AVX
 INIT_XMM avx
 DEFINE_IMDCT
+%endif
 
 INIT_XMM sse
 
@@ -717,5 +719,7 @@ cglobal four_imdct36_float, 5,5,8, out, buf, in, win, tmp
 INIT_XMM sse
 DEFINE_FOUR_IMDCT
 
+%ifdef HAVE_AVX
 INIT_XMM avx
 DEFINE_FOUR_IMDCT
+%endif
diff --git a/libavcodec/x86/proresdsp.asm b/libavcodec/x86/proresdsp.asm
index d674308..f733bdf 100644
--- a/libavcodec/x86/proresdsp.asm
+++ b/libavcodec/x86/proresdsp.asm
@@ -306,7 +306,9 @@ INIT_XMM
 idct_put_fn sse2, 16
 INIT_XMM
 idct_put_fn sse4, 16
+%ifdef HAVE_AVX
 INIT_AVX
 idct_put_fn avx,  16
+%endif
 
 %endif
diff --git a/libavcodec/x86/v210-init.c b/libavcodec/x86/v210-init.c
index 4dd6d6d..425c628 100644
--- a/libavcodec/x86/v210-init.c
+++ b/libavcodec/x86/v210-init.c
@@ -34,14 +34,14 @@ av_cold void v210_x86_init(V210DecContext *s)
         if (cpu_flags & AV_CPU_FLAG_SSSE3)
             s->unpack_frame = ff_v210_planar_unpack_aligned_ssse3;
 
-        if (cpu_flags & AV_CPU_FLAG_AVX)
+        if (HAVE_AVX && cpu_flags & AV_CPU_FLAG_AVX)
             s->unpack_frame = ff_v210_planar_unpack_aligned_avx;
     }
     else {
         if (cpu_flags & AV_CPU_FLAG_SSSE3)
             s->unpack_frame = ff_v210_planar_unpack_unaligned_ssse3;
 
-        if (cpu_flags & AV_CPU_FLAG_AVX)
+        if (HAVE_AVX && cpu_flags & AV_CPU_FLAG_AVX)
             s->unpack_frame = ff_v210_planar_unpack_unaligned_avx;
     }
 #endif
diff --git a/libavcodec/x86/v210.asm b/libavcodec/x86/v210.asm
index 344bed0..9ce17c2 100644
--- a/libavcodec/x86/v210.asm
+++ b/libavcodec/x86/v210.asm
@@ -76,10 +76,14 @@ cglobal v210_planar_unpack_%1_%2, 5, 5
 
 INIT_XMM
 v210_planar_unpack unaligned, ssse3
+%ifdef HAVE_AVX
 INIT_AVX
 v210_planar_unpack unaligned, avx
+%endif
 
 INIT_XMM
 v210_planar_unpack aligned, ssse3
+%ifdef HAVE_AVX
 INIT_AVX
 v210_planar_unpack aligned, avx
+%endif
diff --git a/libswscale/x86/input.asm b/libswscale/x86/input.asm
index 0e54522..b1ee82c 100644
--- a/libswscale/x86/input.asm
+++ b/libswscale/x86/input.asm
@@ -233,6 +233,7 @@ YUYV_TO_UV_FN 3, uyvy
 NVXX_TO_UV_FN 5, nv12
 NVXX_TO_UV_FN 5, nv21
 
+%ifdef HAVE_AVX
 INIT_XMM avx
 ; in theory, we could write a yuy2-to-y using vpand (i.e. AVX), but
 ; that's not faster in practice
@@ -240,3 +241,4 @@ YUYV_TO_UV_FN 3, yuyv
 YUYV_TO_UV_FN 3, uyvy, 1
 NVXX_TO_UV_FN 5, nv12
 NVXX_TO_UV_FN 5, nv21
+%endif
diff --git a/libswscale/x86/output.asm b/libswscale/x86/output.asm
index 0ec2038..ff72677 100644
--- a/libswscale/x86/output.asm
+++ b/libswscale/x86/output.asm
@@ -265,10 +265,12 @@ yuv2planeX_fn sse4,  9,  7, 5
 yuv2planeX_fn sse4, 10,  7, 5
 yuv2planeX_fn sse4, 16,  8, 5
 
+%ifdef HAVE_AVX
 INIT_AVX
 yuv2planeX_fn avx,   8, 10, 7
 yuv2planeX_fn avx,   9,  7, 5
 yuv2planeX_fn avx,  10,  7, 5
+%endif
 
 ; %1=outout-bpc, %2=alignment (u/a)
 %macro yuv2plane1_mainloop 2
@@ -402,8 +404,10 @@ yuv2plane1_fn 16, 6, 3
 INIT_XMM sse4
 yuv2plane1_fn 16, 5, 3
 
+%ifdef HAVE_AVX
 INIT_XMM avx
 yuv2plane1_fn  8, 5, 5
 yuv2plane1_fn  9, 5, 3
 yuv2plane1_fn 10, 5, 3
 yuv2plane1_fn 16, 5, 3
+%endif
diff --git a/libswscale/x86/swscale_mmx.c b/libswscale/x86/swscale_mmx.c
index 66c4f69..d0bb861 100644
--- a/libswscale/x86/swscale_mmx.c
+++ b/libswscale/x86/swscale_mmx.c
@@ -465,7 +465,7 @@ switch(c->dstBpc){ \
             c->yuv2plane1 = ff_yuv2plane1_16_sse4;
     }
 
-    if (cpu_flags & AV_CPU_FLAG_AVX) {
+    if (HAVE_AVX && cpu_flags & AV_CPU_FLAG_AVX) {
         ASSIGN_VSCALEX_FUNC(c->yuv2planeX, avx,);
         ASSIGN_VSCALE_FUNC(c->yuv2plane1, avx, avx, 1);
 



More information about the ffmpeg-cvslog mailing list