[cfe-dev] [PATCH] mark need for struct return ABI in block header

Fariborz Jahanian fjahanian at apple.com
Wed Mar 3 17:57:26 PST 2010


Two comments.

Please remove comments in source referring to SnowLeopard.
Generally, to avoid test failures on some unknown platforms, try to  
avoid dependency on
include files (stdbool.h etc.).
OK with these changes.

- fariborz

On Mar 3, 2010, at 5:44 PM, Blaine Garst wrote:

> There are runtime clients of blocks that need to introspect and  
> invoke a block "by hand".  On x86 large structures are passed as an  
> address of a stack local as the first parameter.  "Blind" clients of  
> a void* block API, like runtimes, need to know the difference.
>
> This patch gathers the appropriate info and marks the block header  
> for both global and local blocks.  The ABI history of the flags is  
> introduced in a comment.  The new feature is marked with what  
> amounts as a combo of the reintroduced (1<<29) field and the just  
> introduced block signature marker (1<<30).
>
> Unfortunately in my last patch I forgot to rename the macro that  
> marks the signature field, so the macro name changes from the last  
> patch to name its actual use but nothing else.
>
> A unit test is attached which tests both i386 and x86_64.
>
> <clang-1.patch>
>
> <blockstret.c>
>
> Blaine_______________________________________________
> cfe-dev mailing list
> cfe-dev at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev




More information about the cfe-dev mailing list