[cfe-dev] Block introspection and GNU runtime new ABI support

David Chisnall csdavec at swansea.ac.uk
Wed Sep 9 18:39:31 PDT 2009


Hi everyone,

I've attached two diffs, which can be reviewed separately by probably  
don't apply cleanly in isolation because they modify the same files in  
a couple of places.

One adds support for the new (hopefully finalised this time...) GNU  
non-fragile ABI.  This also removes the -fsender-aware-dispatch flag  
as the relevant features have been folded into the non-fragile ABI.   
I've updated the relevant test.  I may have accidentally reverted some  
of the reindenting that was done since I started modifying this file  
and svn decided to get very confused about how merging was meant to  
work; I've tried to manually merge everything, but I may have missed a  
spot or two.

The other patch adds a -fblock-introspection flag.  When this is  
specified, or when -fgnu-runtime is specified, an extra field is added  
to the block structure that contains an Objective-C type encoding of  
the block function.  I've also updated one of the block tests to  
ensure that this field is only being emitted when the flag is provided.

All tests pass with both patches applied.

David

-------------- next part --------------
A non-text attachment was scrubbed...
Name: gnu_nonfragile.diff
Type: application/octet-stream
Size: 34901 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20090910/a60dc856/attachment.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: block_introspection.diff
Type: application/octet-stream
Size: 13447 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20090910/a60dc856/attachment-0001.obj>


More information about the cfe-dev mailing list