[FFmpeg-devel] [Ffmpeg-devel] [PATCH] detect support for 10 operands in configure

Loren Merritt lorenm
Fri Feb 13 19:53:45 CET 2009

On Fri, 13 Feb 2009, Diego Biurrun wrote:
> On Thu, Feb 12, 2009 at 07:13:24PM +0000, Loren Merritt wrote:
>> Oops, I saw one of the asm blocks replaced and didn't notice the other
>> one.
>> However, it is not a question of HAVE_TEN_OPERANDS. That asm used only 5
>> operands, and the problem was that gcc<4 failed to find 5 registers for
>> them. (Because it doesn't know how to spill ebx or ebp, nor does it know
>> how to spill one operand to free up a temp register to compute another.)
>> I could put fft_3dn under (HAVE_7REGS || GCC4).
>> I could write the loop part in inline asm, and put fft_3dn under HAVE_7REGS.
>> I could force-disable frame-pointer and pic on fft_3dn.
>> I could move the loop to yasm, which isn't all that different insofar as
>> it also ignores frame-pointer and pic.
>> Or I could laugh at x86 for having too few registers, and ignore it.
> Hmmm, I have no problem compiling either fft_3dn.c nor fft_3dn2.c with
> any gcc I tested: 2.95.4, 3.3, 3.4, 4.1...

Did you revert r5964 before testing? If so, I don't know what's up. I 
never reproduced the original bug after all, I only committed the kludge.

--Loren Merritt

More information about the ffmpeg-devel mailing list