[FFmpeg-devel] [PATCH] Fix compilation of FASTDIV() with llvm-gcc on x86_64

Måns Rullgård mans
Mon Jul 5 18:42:31 CEST 2010


Loren Merritt <lorenm at u.washington.edu> writes:

> On Mon, 5 Jul 2010, M?ns Rullg?rd wrote:
>> Michael Niedermayer <michaelni at gmx.at> writes:
>>> On Mon, Jul 05, 2010 at 02:54:09PM +0100, Mans Rullgard wrote:
>>>
>>>> LLVM requires matching input and output asm parameters to have the
>>>> same type.  For the FASTDIV macro, an (int) cast on the input fixes
>>>> this trivially.
>>>
>>> if asm as "specified" by gcc can handle it anything that cannot
>>> is not compatible and they likely want to fix it to be compatible.
>>
>> I think the llvm error is perfectly reasonable.  How can an operand
>> have two types at the same time?
>
> They're not the same operand, they're just asking for the same
> location. And they're not at the same time either; one is input and
> the other is output.

So you're claiming the asm has the magical ability to resize registers?

-- 
M?ns Rullg?rd
mans at mansr.com



More information about the ffmpeg-devel mailing list