[Mplayer-advusers] compilation fails again in postprocess_template.c

Michael Niedermayer michaelni at gmx.at
Thu Oct 31 11:21:57 CET 2002


Hi

On Thursday 31 October 2002 03:15, Dominik Mierzejewski wrote:
> On Thursday, 31 October 2002, Michael Niedermayer wrote:
> > Hi
> >
> > On Thursday 31 October 2002 01:38, Dominik Mierzejewski wrote:
> > [...]
> >
> > > postprocess_template.c:896: can't find a register in class
> > > `GENERAL_REGS'
> >
> > [...]
> >
> > > At first I thought it could be my setting CFLAGS in RPM build process,
> > > so I allowed MPlayer's configure to choose it's own, but to no avail.
> > > And I thought I reported something similar recently and someone said it
> > > was fixed...
> >
> > it was, thats another one, and its fixed too now
>
> Just updated from CVS. Sorry, it's still broken. :-(
> gcc3 -c -O4 -march=i486 -mcpu=i686 -pipe -ffast-math -fomit-frame-pointer
> -D_REENTRANT -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64  -I. -I.. 
> -fomit-frame-pointer -fPIC -DPIC -o postprocess_pic.o postprocess.c
> postprocess.c: In function `postProcess_MMX':
> postprocess_template.c:2505: can't find a register in class `GENERAL_REGS'
> while reloading `asm' postprocess_template.c:2588: can't find a register in
> class `GENERAL_REGS' while reloading `asm' postprocess_template.c:2505:
> can't find a register in class `GENERAL_REGS' while reloading `asm'
> postprocess_template.c:2588: can't find a register in class `GENERAL_REGS'
> while reloading `asm' make[1]: *** [postprocess_pic.o] Error 1
> make[1]: Leaving directory
> `/usr/local/share/builder/pkg/BUILD/MPlayer-20021031/postproc' make: ***
> [postproc/libswscale.a] Error 2
>
> [...]
>
> > > Checking for gcc3 version ... 3.1, ok
> >
> > hmm 3.2 is not an option i guess ...
>
> Sorry, no. I couldn't find any gcc3-3.2 packages that would install on my
> RH7.3 box. I tried to build some myself using gcc3-3.1 and gcc-3.2 source
> RPMs and failed. If you have some reproducible bugs in RH's gcc3-3.1 I'd
> be happy to report them through bugzilla.redhat.com, because this gcc3 is
> supported by RH.
it depends upon the definition of a bug, (gcc 3.2 seems to have no problem 
with the pp code, but gcc 3.1 seems to have troubble with it, its not 
strictly a bug as noone ever said that if there are 6 registers available 
(esp is the stack pointer and ebx is that stupid PIC pointer, they arent 
available) that gcc must be able to use 6 in an asm()

anyway i disabled the .so compilation now, if no --enable-shared-pp is used so 
this should be solved allthough dont expect to be able to compile 
libpostproc.so with gcc 3.1
and changing all code to use fewer registers isnt really possible

Michael



More information about the MPlayer-advusers mailing list