clang tries to follow gcc's implementation for message dispatch
(which is based on the document list below). Note that, gcc's  
implementation may have
since diverted from the document (gcc-4.2 on Leopard).
If you find cases that does notmatch from that (or is plain wrong),  
please file bug report.

- Thanks, Fariborz

On Apr 29, 2009, at 2:32 PM, Eli Friedman wrote:

> On Wed, Apr 29, 2009 at 1:54 PM, Fariborz Jahanian <[email protected] 
> > wrote:
>> It is not needed for 32bit code gen of  objc_msgSend. But when
>> objc_msgSend is used in 64bit API (something I have done locally),
>> it is necessary for the lower byte of %rax register to get set to  
>> 0. I
>> thought that I set this unconditionally
>> for now.
>
> I assume you don't mean that %rax *always* gets set to 0?  It should
> depend on the number of floating-point arguments.
>
> On a side note, the handling for floating-point return values looks
> seriously broken; see
> http://lists.apple.com/archives/cocoa-dev/2008/Feb/msg02338.html .
>
> -Eli

_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to