[Ffmpeg-devel] trunk liba52 using non compatible assembly with x86_64

Aaron Williams aaronw
Tue Nov 7 03:02:59 CET 2006


Hi,

On Mon, 6 Nov 2006, Aaron Williams wrote:

> Hi,
>
> Christian Casteyde wrote:
> > ffmpeg doesn't compile with liba52 enabled on the trunk SVN version,
> > apparently due to assembly code in resample_mmx.c that is not compatible
> > on x86_64 arch / GCC 3.4.6 / as 2.16.92 20060416 (from slamd 64 11).
> >
> > I get the following:
> > svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg
> > cd ffmpeg
> > ./configure --enable-gpl --enable-a52 --enable-static --disable-shared
> > make
> >
> > make -C libavutil   all
> > make[1]: Entering directory `/home/christian/tmp/ffmpeg/libavutil'
> > make[1]: Nothing to be done for `all'.
> > make[1]: Leaving directory `/home/christian/tmp/ffmpeg/libavutil'
> > make -C libavcodec  all
> > make[1]: Entering directory `/home/christian/tmp/ffmpeg/libavcodec'
> > gcc -I/home/christian/tmp/ffmpeg/libswscale   -DHAVE_AV_CONFIG_H
> > -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_ISOC9X_SOURCE
> > -I/home/christian/tmp/ffmpeg -I/home/christian/tmp/ffmpeg
> > -I/home/christian/tmp/ffmpeg/libavutil -fomit-frame-pointer -g
> > -Wdeclaration-after-statement -Wall -Wno-switch -Wdisabled-optimization
> > -Wpointer-arith -Wredundant-decls -Winline -O3  -c -o liba52/resample.o
> > liba52/resample.c
> > /tmp/ccAJGD7h.s: Assembler messages:
> > /tmp/ccAJGD7h.s:1108: Error: `(%rax,%esi,2)' is not a valid base/index
> > expression
> > /tmp/ccAJGD7h.s:1109: Error: `8(%rax,%esi,2)' is not a valid base/index
> > expression
> > /tmp/ccAJGD7h.s:1117: Error: `(%rdx,%edi)' is not a valid base/index
> > expression
> > /tmp/ccAJGD7h.s:1118: Error: `8(%rdx,%edi)' is not a valid base/index
> > expression
> > /tmp/ccAJGD7h.s:1120: Error: `12(%rdx,%edi)' is not a valid base/index
> > expression
> > /tmp/ccAJGD7h.s:1121: Error: `16(%rdx,%edi)' is not a valid base/index
> > expression
> > /tmp/ccAJGD7h.s:1123: Error: `20(%rdx,%edi)' is not a valid base/index
> > expression
> > /tmp/ccAJGD7h.s:1124: Error: `24(%rdx,%edi)' is not a valid base/index
> > expression
> >
> > ...
> >
> > /tmp/ccAJGD7h.s:1580: Error: `8(%rdx,%edi)' is not a valid base/index
> > expression
> > /tmp/ccAJGD7h.s:1581: Error: `16(%rdx,%edi)' is not a valid base/index
> > expression
> > make[1]: *** [liba52/resample.o] Error 1
> > make[1]: Leaving directory `/home/christian/tmp/ffmpeg/libavcodec'
> > make: *** [lib] Error 2
> >
> > ffmpeg-20060610 (the last version I checked) builds cleanly.
> >
> > _______________________________________________
> > ffmpeg-devel mailing list
> > ffmpeg-devel at mplayerhq.hu
> > http://lists.mplayerhq.hu/mailman/listinfo/ffmpeg-devel
> >
> >
> I was experiencing the same problem for a while with gcc 4.1.0 on SuSE
> Linux (x86_64).  I tried doing all sorts of things to try and resolve
> the problem, but somehow it managed to resolve itself after forcing
> everything to recompile.  I never did find out the cause of it.  Funny
> enough, moving to earlier revisions of ffmpeg did not solve the problem,
> but when I switched back to the latest revision the problem disappeared.
>
> -Aaron
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at mplayerhq.hu
> http://lists.mplayerhq.hu/mailman/listinfo/ffmpeg-devel
>

I hate responding to my own post, but it looks like the problem has
returned with this latest SVN.

-Aaron




More information about the ffmpeg-devel mailing list