mirror of
https://git.yoctoproject.org/poky
synced 2026-05-09 05:29:32 +00:00
gst-ffmpeg: Fix build with gcc 4.7
A cmp instruction with two constants is invalid, therefore 'g' constraint is not correct but must be "rm" instead. (From OE-Core rev: 1161c40a26146629613bd6a17b263175a492b751) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
@@ -0,0 +1,57 @@
|
||||
Backport http://git.videolan.org/?p=ffmpeg.git;a=commitdiff;h=5f654897e325349dacf2546674e0510bb72ecb50;hp=250cebeb3b348c3da71f9972eb500d6005dc01f1
|
||||
|
||||
Fixes these errors on x86
|
||||
|
||||
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
|
||||
|
||||
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
Upstream-status: Backport
|
||||
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"
|
||||
@@ -18,12 +18,13 @@ inherit autotools pkgconfig
|
||||
SRC_URI = "http://gstreamer.freedesktop.org/src/${BPN}/${BPN}-${PV}.tar.bz2 \
|
||||
file://lower-rank.diff \
|
||||
file://configure-fix.patch \
|
||||
file://h264_qpel_mmx.patch \
|
||||
"
|
||||
|
||||
SRC_URI[md5sum] = "7f5beacaf1312db2db30a026b36888c4"
|
||||
SRC_URI[sha256sum] = "76fca05b08e00134e3cb92fa347507f42cbd48ddb08ed3343a912def187fbb62"
|
||||
|
||||
PR = "r1"
|
||||
PR = "r2"
|
||||
|
||||
GSTREAMER_DEBUG ?= "--disable-debug"
|
||||
EXTRA_OECONF = "--with-ffmpeg-extra-configure=\"--target-os=linux\" ${GSTREAMER_DEBUG}"
|
||||
|
||||
Reference in New Issue
Block a user