[FFmpeg-devel] Question about -fPIC usage for some files

Michael Niedermayer michaelni
Fri Feb 8 16:26:46 CET 2008

On Fri, Feb 08, 2008 at 03:14:42PM +0100, Thorsten Jordan wrote:
> Michael Niedermayer schrieb:
> > On Fri, Feb 08, 2008 at 02:10:53PM +0100, Thorsten Jordan wrote:
> > [...]
> >> what about the idea of possible extension of the Makefile(s) for extra
> >> flags of libavcodec/i386/* ?
> > 
> > Why does it fail with pic for you?
> the same problem that was discussed several times on this list, gcc
> fails to generate the code because it runs out of registers (ebx is used
> with -fPIC):
> here are the errors (gcc compile line filtered out):
> In file included from i386/dsputil_mmx.c:30:
> i386/mmx.h:24:2: warning: #warning Everything in this header is
> deprecated, use plain asm()! New code using this header will be rejected.
> i386/h264dsp_mmx.c: In function ?put_h264_qpel4_h_lowpass_3dnow?:
> i386/h264dsp_mmx.c:1881: error: can't find a register in class
> ?GENERAL_REGS? while reloading ?asm?
> i386/cavsdsp_mmx.c: In function ?ff_put_cavs_qpel8_mc01_3dnow?:
> i386/cavsdsp_mmx.c:447: error: can't find a register in class
> ?GENERAL_REGS? while reloading ?asm?
> i386/flacdsp_mmx.c: In function ?ff_flac_compute_autocorr_sse2?:
> i386/flacdsp_mmx.c:87: error: can't find a register in class
> ?GENERAL_REGS? while reloading ?asm?

if any of them need ebx they should be under HAVE_EBX_AVAILABLE
if any of them needs 7 registers they should be under HAVE_7REGS
the remaining cases are gcc bugs and should be reported to the gcc devels
(why do i think they all fall in the same category ...)

Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

I know you won't believe me, but the highest form of Human Excellence is
to question oneself and others. -- Socrates
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20080208/3fcd5dae/attachment.pgp>

More information about the ffmpeg-devel mailing list