Set a special flag in class metadata when an Objective-C class
authorJohn McCall <rjmccall@apple.com>
Wed, 17 Oct 2012 04:53:31 +0000 (04:53 +0000)
committerJohn McCall <rjmccall@apple.com>
Wed, 17 Oct 2012 04:53:31 +0000 (04:53 +0000)
commit0d54a17b52bfb5cd20ac39e8d9e5b0533f4aa08c
tree294032f34e34e9e41f292efdc74eac565b80e282
parentef19dbb62031b20798badebc9d11ae0fa369a3c0
Set a special flag in class metadata when an Objective-C class
has ivars that require destruction, but none that require anything
except zero-initialization.  This is common in ARC and (when true
throughout a class hierarchy) permits the elimination of an
unnecessary message-send during allocation.

llvm-svn: 166088
clang/include/clang/AST/DeclObjC.h
clang/lib/CodeGen/CGObjCMac.cpp
clang/lib/CodeGen/CodeGenModule.cpp
clang/lib/Serialization/ASTReaderDecl.cpp
clang/lib/Serialization/ASTWriterDecl.cpp
clang/test/CodeGenObjC/arc.m