diff options
author | Bill Wendling <isanbard@gmail.com> | 2012-07-06 19:12:31 +0000 |
---|---|---|
committer | Bill Wendling <isanbard@gmail.com> | 2012-07-06 19:12:31 +0000 |
commit | 2da1a1621fd8ea40b143dc44812a0e97e6ef5c59 (patch) | |
tree | 5164ec3091ac9079080712947acdc9b244d63773 | |
parent | 9fdb7c085312b01924dd2d990b457cd58df2e63b (diff) |
Add a print method to the ObjC property object.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159848 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | include/llvm/DebugInfo.h | 2 | ||||
-rw-r--r-- | lib/VMCore/DebugInfo.cpp | 11 |
2 files changed, 13 insertions, 0 deletions
diff --git a/include/llvm/DebugInfo.h b/include/llvm/DebugInfo.h index fdbafd69f2..618220fcb0 100644 --- a/include/llvm/DebugInfo.h +++ b/include/llvm/DebugInfo.h @@ -754,6 +754,8 @@ namespace llvm { }; class DIObjCProperty : public DIDescriptor { + friend class DIDescriptor; + void printInternal(raw_ostream &OS) const; public: explicit DIObjCProperty(const MDNode *N) : DIDescriptor(N) { } diff --git a/lib/VMCore/DebugInfo.cpp b/lib/VMCore/DebugInfo.cpp index d7144adcb0..bb700a9481 100644 --- a/lib/VMCore/DebugInfo.cpp +++ b/lib/VMCore/DebugInfo.cpp @@ -1018,6 +1018,8 @@ void DIDescriptor::print(raw_ostream &OS) const { DIGlobalVariable(DbgNode).printInternal(OS); } else if (this->isVariable()) { DIVariable(DbgNode).printInternal(OS); + } else if (this->isObjCProperty()) { + DIObjCProperty(DbgNode).printInternal(OS); } } @@ -1121,6 +1123,15 @@ void DIVariable::printInternal(raw_ostream &OS) const { OS << " [line " << getLineNumber() << ']'; } +void DIObjCProperty::printInternal(raw_ostream &OS) const { + StringRef Name = getObjCPropertyName(); + if (!Name.empty()) + OS << " [" << Name << ']'; + + OS << " [line " << getLineNumber() + << ", properties " << getUnsignedField(6) << ']'; +} + static void printDebugLoc(DebugLoc DL, raw_ostream &CommentOS, const LLVMContext &Ctx) { if (!DL.isUnknown()) { // Print source line info. |