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

Michael Niedermayer michaelni
Mon Jul 5 19:22:55 CEST 2010


On Mon, Jul 05, 2010 at 05:42:31PM +0100, M?ns Rullg?rd wrote:
> 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?

change rax and eax changes too
change eax and rax magically contains the zero extended value from eax
its a fantastic design ;)

[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

While the State exists there can be no freedom; when there is freedom there
will be no State. -- Vladimir Lenin
-------------- 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/20100705/6d78ce51/attachment.pgp>



More information about the ffmpeg-devel mailing list