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

David Chisnall csdavec at swansea.ac.uk
Fri Sep 18 03:53:57 PDT 2009

It hasn't gone in yet.  I've modified my local copy to set flag 1<<30  
on blocks that have this metadata attached to them, but I was waiting  
for confirmation that this wouldn't break anything for Apple before I  
committed it.


On 18 Sep 2009, at 10:32, Daniel Dunbar wrote:

> Ping?
> It seems like non consensus was reached, but the code went in. Should
> we pull it for now?
> - Daniel
> On Fri, Sep 11, 2009 at 6:25 AM, David Chisnall  
> <csdavec at swansea.ac.uk> wrote:
>> On 10 Sep 2009, at 22:43, Blaine Garst wrote:
>>> Changing the ABI is very painful - we were unable to move the invoke
>>> function into the descriptor structure as we had originally intended
>>> for example, so I also advise caution.
>> In the interests of future compatibility, may we use one of the bits
>> in the flags field to indicate the presence of this type encoding
>> (e.g. (2<<30))?  Then we can easily switch block runtimes in existing
>> code and just keep the accessor function for the type encoding (or
>> compute it on-the-fly if that flag is not present but the information
>> is there in some other way).
>> Longer term, we'd probably like to deprecate our blocks runtime and
>> use the one from compiler-rt, but looking at that code it seems that
>> it will take a bit of effort to make it compile on platforms other
>> than Windows and Darwin, and to integrate with the GNU Objective-C
>> runtime.
>> David
>> _______________________________________________
>> 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