[cfe-commits] r69797 - in /cfe/trunk/lib/CodeGen: CGObjCMac.cpp CodeGenModule.cpp CodeGenTypes.cpp CodeGenTypes.h

Daniel Dunbar daniel at zuster.org
Wed Apr 22 17:53:30 PDT 2009


No particular reason, really. Using an opaque type was a nice way to make
sure no unexpected uses of the type crept in, and we may want to name them
still? If we don't care about names, I'm fine switching this to {}*.

 - Daniel

p.s. What are the TBAA rules for Objective-C? :)

On Wed, Apr 22, 2009 at 2:31 PM, Chris Lattner <clattner at apple.com> wrote:

>
> On Apr 22, 2009, at 3:28 AM, Daniel Dunbar wrote:
>
>
>> +  /// The opaque type map for Objective-C interfaces. All direct
>> +  /// manipulation is done by the runtime interfaces, which are
>> +  /// responsible for coercing to the appropriate type; these opaque
>> +  /// types are never refined.
>> +  llvm::DenseMap<const ObjCInterfaceType*, const llvm::Type *>
>> InterfaceTypes;
>> +
>>
>
> This is cool daniel, but why use an opaque type pointer here?  Why not just
> compile all interface pointer types to i8* or {}* or something?
>
> -Chris
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20090422/816f6be2/attachment.html>


More information about the cfe-commits mailing list