gst-ffmpeg libav: Fixes compiling gst-ffmpeg with gcc-4.7 Fetch from: http://www.slackware.com/~alien/slackbuilds/gst-plugins-ffmpeg/build/gst-ffmpeg-0.10.13_gcc47.patch Signed-off-by: Bernd Kuhls --- Submitted By: Andrew Benton Date: 2012-06-15 Initial Package Version: 0.10.13 Upstream Status: From upstream Origin: http://git.videolan.org/?p=ffmpeg.git;a=patch;h=5f654897e325349dacf2546674e0510bb72ecb50 Description: Fixes compiling gst-ffmpeg with gcc-4.7 libavcodec/x86/h264_qpel_mmx.c: Assembler messages: libavcodec/x86/h264_qpel_mmx.c:1294: Error: operand type mismatch for `cmp' libavcodec/x86/h264_qpel_mmx.c:1294: Error: operand type mismatch for `cmp' libavcodec/x86/h264_qpel_mmx.c:1298: Error: operand type mismatch for `cmp' libavcodec/x86/h264_qpel_mmx.c:1298: Error: operand type mismatch for `cmp' libavcodec/x86/h264_qpel_mmx.c:964: Error: operand type mismatch for `cmp' libavcodec/x86/h264_qpel_mmx.c:964: Error: operand type mismatch for `cmp' libavcodec/x86/h264_qpel_mmx.c:964: Error: operand type mismatch for `cmp' make[5]: *** [libavcodec/x86/dsputil_mmx.o] Error 1 Index: gst-ffmpeg-0.10.13/gst-libs/ext/libav/libavcodec/x86/h264_qpel_mmx.c =================================================================== --- gst-ffmpeg-0.10.13.orig/gst-libs/ext/libav/libavcodec/x86/h264_qpel_mmx.c 2012-03-30 11:39:41.324522051 -0700 +++ gst-ffmpeg-0.10.13/gst-libs/ext/libav/libavcodec/x86/h264_qpel_mmx.c 2012-03-30 11:54:08.152564075 -0700 @@ -398,7 +398,7 @@ "2: \n\t"\ \ : "+a"(src), "+c"(dst)\ - : "S"((x86_reg)srcStride), "D"((x86_reg)dstStride), "g"(h)\ + : "S"((x86_reg)srcStride), "D"((x86_reg)dstStride), "rm"(h)\ : "memory"\ );\ src += 4-(h+5)*srcStride;\ @@ -446,7 +446,7 @@ QPEL_H264HV(%%mm3, %%mm4, %%mm5, %%mm0, %%mm1, %%mm2, 15*48)\ "2: \n\t"\ : "+a"(src)\ - : "c"(tmp), "S"((x86_reg)srcStride), "g"(size)\ + : "c"(tmp), "S"((x86_reg)srcStride), "rm"(size)\ : "memory"\ );\ tmp += 4;\ @@ -823,7 +823,7 @@ "2: \n\t"\ \ : "+a"(src), "+c"(dst)\ - : "S"((x86_reg)srcStride), "D"((x86_reg)dstStride), "g"(h)\ + : "S"((x86_reg)srcStride), "D"((x86_reg)dstStride), "rm"(h)\ : XMM_CLOBBERS("%xmm0", "%xmm1", "%xmm2", "%xmm3", \ "%xmm4", "%xmm5", "%xmm6", "%xmm7",)\ "memory"\ @@ -878,7 +878,7 @@ QPEL_H264HV_XMM(%%xmm3, %%xmm4, %%xmm5, %%xmm0, %%xmm1, %%xmm2, 15*48) "2: \n\t" : "+a"(src) - : "c"(tmp), "S"((x86_reg)srcStride), "g"(size) + : "c"(tmp), "S"((x86_reg)srcStride), "rm"(size) : XMM_CLOBBERS("%xmm0", "%xmm1", "%xmm2", "%xmm3", "%xmm4", "%xmm5", "%xmm6", "%xmm7",) "memory"