[FFmpeg-devel] fft_mmx.asm yasm 64bit build broken
vmrsss
vmrsss
Sat Aug 16 18:17:43 CEST 2008
On 16 Aug 2008, at 16:17, M?ns Rullg?rd wrote:
> This is an Apple problem. Since the same code works on the same
> hardware under Linux, it follows that it must be an Apple problem if
> it doesn't work in MacOS. In fact, code like this used to work just
> fine with older versions of the Apple linker. Sorry, but you're
> barking up the wrong tree.
M?ns, inded I might be barking up the wrong tree. Yet it seems to me
that yasm stops while generating 64bit code, so I don't understand why
you talk of linker problems. There is no linker involved here. The
code compiles well and links well at 32bits (and builds well at 64bits
with ELF format, but of course it then does not link). It fails with -
f macho64 complaining about 32 bit absolute relocation in 64 bit mode
and suggesting to use some specific assembly forms:
> "[_symbol wrt rip]" for mem access, "qword" and "dq _foo" for
> pointers.
Let me also add all the rest of the asm code builds perfectly, which
seems to me to confirm a problem with the specific file.
In conclusion, it looks as though some addressing mode is legal for
64bit in ELF object format, and illegal with MACHO format (unless this
is a yasm limitation). It may be Loren knows how to fix it, which was
my original hope, or perhaps he does not; it may be this needs
"special" macosx code, but to just say "ask Apple" seems a just a bit
too quick to me...
Cheers,
vmrsss
More information about the ffmpeg-devel
mailing list