[FFmpeg-cvslog] r29011 - in trunk/libswscale: swscale.c swscale_internal.h swscale_template.c

Gwenole Beauchesne gbeauchesne
Mon Mar 23 09:33:40 CET 2009


On Fri, 20 Mar 2009, Reimar D?ffinger wrote:

>> >> I don't think this would change anything, %rbx is not the PIC register on 
>> >> x86_64. The GOT is %rip relative, that was the goal. ;-)
>> >
>> > Quoted from FATE:
>> >> /Users/melanson/fate/source/libswscale/swscale_template.c:1247: error: PIC register ?%rbx? clobbered in ?asm?
>> >
>> > Either you are wrong or gcc is wrong. I guess you are because you
>> > actually don't know the OSX x86_64 ABI.
>> 
>> Mmmm, Mach-O was already a gross hack on 32-bit x86... I wonder what they 
>> use the %rip register for then.
>
> I have no idea and not much interest and would not exclude a compiler
> bug, but it might well be a provision intended to allow combining 32 and
> 64 bit code, preserving the PIC pointer in rbx for use as ebx by any 32
> bit code.

This is not possible. On some ancient x86_64 implementation, it was 
(unofficially) possible to mix both but the engineers later on discouraged 
this as the actual implementation was to be changed. I am talking of the 
implementation (processor), the specs clearly forbids this.



More information about the ffmpeg-cvslog mailing list