diff options
| author | Devang Patel <dpatel@apple.com> | 2011-05-12 19:06:16 +0000 |
|---|---|---|
| committer | Devang Patel <dpatel@apple.com> | 2011-05-12 19:06:16 +0000 |
| commit | 2409e7843b714c83570c537a12f41fbe99c2e165 (patch) | |
| tree | e80fcdaae0e9d754e4793f614a11fa0617d02844 /llvm/include | |
| parent | e106c3481784ecfda9cb014cb2cfea5b3d13bbc9 (diff) | |
| download | bcm5719-llvm-2409e7843b714c83570c537a12f41fbe99c2e165.tar.gz bcm5719-llvm-2409e7843b714c83570c537a12f41fbe99c2e165.zip | |
Let Objective-C front-end identify class extension, in dwarf output, using an attribute DW_AT_APPLE_objc_class_extension.
llvm-svn: 131238
Diffstat (limited to 'llvm/include')
| -rw-r--r-- | llvm/include/llvm/Analysis/DebugInfo.h | 22 | ||||
| -rw-r--r-- | llvm/include/llvm/Support/Dwarf.h | 1 |
2 files changed, 14 insertions, 9 deletions
diff --git a/llvm/include/llvm/Analysis/DebugInfo.h b/llvm/include/llvm/Analysis/DebugInfo.h index c6cc8f7665e..a01b5a3a86b 100644 --- a/llvm/include/llvm/Analysis/DebugInfo.h +++ b/llvm/include/llvm/Analysis/DebugInfo.h @@ -49,15 +49,16 @@ namespace llvm { class DIDescriptor { public: enum { - FlagPrivate = 1 << 0, - FlagProtected = 1 << 1, - FlagFwdDecl = 1 << 2, - FlagAppleBlock = 1 << 3, - FlagBlockByrefStruct = 1 << 4, - FlagVirtual = 1 << 5, - FlagArtificial = 1 << 6, - FlagExplicit = 1 << 7, - FlagPrototyped = 1 << 8 + FlagPrivate = 1 << 0, + FlagProtected = 1 << 1, + FlagFwdDecl = 1 << 2, + FlagAppleBlock = 1 << 3, + FlagBlockByrefStruct = 1 << 4, + FlagVirtual = 1 << 5, + FlagArtificial = 1 << 6, + FlagExplicit = 1 << 7, + FlagPrototyped = 1 << 8, + FlagObjcClassExtension = 1 << 9 }; protected: const MDNode *DbgNode; @@ -271,6 +272,9 @@ namespace llvm { bool isArtificial() const { return (getFlags() & FlagArtificial) != 0; } + bool isObjcClassExtension() const { + return (getFlags() & FlagObjcClassExtension) != 0; + } bool isValid() const { return DbgNode && (isBasicType() || isDerivedType() || isCompositeType()); } diff --git a/llvm/include/llvm/Support/Dwarf.h b/llvm/include/llvm/Support/Dwarf.h index f6d680b8b9d..7fecf6f5f0f 100644 --- a/llvm/include/llvm/Support/Dwarf.h +++ b/llvm/include/llvm/Support/Dwarf.h @@ -235,6 +235,7 @@ enum dwarf_constants { DW_AT_APPLE_property_getter = 0x3fe9, DW_AT_APPLE_property_setter = 0x3fea, DW_AT_APPLE_property_attribute = 0x3feb, + DW_AT_APPLE_objc_class_extension = 0x3fec, // Attribute form encodings DW_FORM_addr = 0x01, |

